亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? toolkit.hpp

?? kaffe Java 解釋器語言,源碼,Java的子集系統,開放源代碼
?? HPP
字號:
/*** toolkit.hpp - ** Copyright (c) 1999*      Transvirtual Technologies, Inc.  All rights reserved.** See the file "license.terms" for information on usage and redistribution * of this file. */#ifndef __toolkit_h#define __toolkit_h#include "config.h"#include "config-std.h"#include "config-io.h"#include "config-mem.h"#include "jni.h"#include <tchar.h>#include "cmnwnd.hpp"extern "C" {#include "..\..\..\..\kaffe\kaffevm\gtypes.h"#include "..\..\..\..\kaffe\kaffevm\locks.h"#include "..\..\..\..\include\java_lang_Object.h"#include "..\..\..\..\kaffe\kaffevm\gc.h"#include "..\..\..\..\kaffe\kaffevm\debug.h"}extern "C" void kprintf( const char*, ...); // #define DBG(_topic,_msgSpec) printf _msgSpec// #define DBG_ACTION(_topic,__action)#define D_LOOP_MODE 1extern "C" LRESULT WINAPI WndProc( HWND, UINT, WPARAM, LPARAM);/******************************************************************************** image handling structures*/typedef struct _AlphaImage {       /* storage for full alpha channel images */	unsigned char *buf;	int           width, height;} AlphaImage;typedef struct _Image {	int	          trans;          /* transparent index */	int	          left, top;	int           width, height;  /* we need this in case we are a pixmap */		HBITMAP	      bmp;	HBITMAP	      mask;		HDC		      dcMask;	HDC		      dc;		int           latency;        /* between image flips, for "gif-movies" */	int			  frame;	struct _Image *next;          /* next movie-frame */} Image;/******************************************************************************** structure to store guessed and computed Frame/Dialog insets (titlebar, borders)*/typedef struct _DecoInset {	int           left;	int           top;	int           right;	int           bottom;	char          guess;} DecoInset;           /******************************************************************************** this is the master AWT structure (singleton object), glueing it al together*/typedef struct _Toolkit {	HDC	          display;	TCHAR         *buf;	unsigned int  nBuf;		HCURSOR		  cursors[14];		DecoInset     frameInsets;	DecoInset     dialogInsets;		KWnd          **windows;	int           nWindows;		HWND          lastHwnd;	KWnd          *lastWnd;			jobject		  jEvt;	int			  dspTid;		HWND          wakeUp;} Toolkit;/******************************************************************************** font struct*/typedef struct _Font {	HFONT fnt;	TEXTMETRIC fm;} Font;/******************************************************************************** global data def/decl*/#ifdef MAINToolkit   XTk;Toolkit   *X = &XTk;jclass    Tlk;JNIEnv    *JniEnv;#elseextern Toolkit  *X;extern jclass   Tlk;extern JNIEnv   *JniEnv;#endif/****************************************************************************************** heap wrapper macros*/#undef malloc#undef calloc#undef freestatic inline void* _awt_malloc_wrapper ( size_t size ){	void *adr = KMALLOC( size);	DBG( awt_mem, ("malloc: %d  -> %x\n", size, adr));	return adr;}static inline void* _awt_calloc_wrapper ( int n, size_t size ){	void *adr = KCALLOC( n, size);	DBG( awt_mem, ("calloc: %d,%d  -> %x\n", n, size, adr));	return adr;}static inline void _awt_free_wrapper ( void* adr ){	DBG( awt_mem, ("free: %x\n", adr));	KFREE( adr);}#define AWT_MALLOC(_n) \_awt_malloc_wrapper( _n)#define AWT_CALLOC(_n,_sz) \_awt_calloc_wrapper( _n, _sz)#define AWT_FREE(_adr) \_awt_free_wrapper( _adr);static inline void* getBuffer ( Toolkit* X, unsigned int nBytes ) {	if ( nBytes > X->nBuf ) {		if ( X->buf )			AWT_FREE( X->buf);		X->buf  = (TCHAR*)AWT_MALLOC( nBytes * sizeof(TCHAR));		X->nBuf = nBytes;	}	return X->buf;}static inline char* java2CString ( JNIEnv *env, Toolkit* X, jstring jstr ) {  jboolean isCopy;  register unsigned i;  unsigned      n = env->GetStringLength( jstr);  const jchar    *jc = env->GetStringChars( jstr, &isCopy);  char         *c;  if ( n >= X->nBuf ) {	if ( X->buf )	  AWT_FREE( X->buf);	X->buf = (TCHAR*) AWT_MALLOC( n+1);	X->nBuf = n+1;  }  for ( i=0, c=(char*)X->buf; i<n; i++ ) *c++ = (char) jc[i];  *c = 0;  env->ReleaseStringChars( jstr, jc);  return (char*)X->buf;}static inline TCHAR* java2WinString ( JNIEnv *env, Toolkit* X, jstring jstr ) {	jboolean isCopy;	UINT i, n;	const jchar *jc;		if ( ! jstr) {		X->buf[0] = 0;		return X->buf;	}		n = env->GetStringLength( jstr);    jc = env->GetStringChars( jstr, &isCopy);		getBuffer( X, n+1);		for ( i=0; i<n; i++ ) X->buf[i] = (TCHAR) jc[i];    X->buf[i] = 0;    env->ReleaseStringChars( jstr, jc);	    return X->buf;}static inline TCHAR* jbyte2WinString ( Toolkit* X, jbyte* jb, int len ) {	register int i;		getBuffer( X, len+1);		for ( i=0; i<len; i++ ) {		X->buf[i] = (TCHAR) jb[i];	}	X->buf[i] = 0;	return (X->buf);}static inline TCHAR* jchar2WinString ( Toolkit* X, jchar* jc, int len ) {	register int i;		getBuffer( X, len+1);		for ( i=0; i<len; i++ ) {		X->buf[i] = (TCHAR) jc[i];	}	X->buf[i] = 0;	return (X->buf);}static inline char* winString2UTF(Toolkit* X, TCHAR* str, int len) {#if !defined(_UNICODE)	return (str);#else	register int i;	char* buf;		getBuffer(X, len+1);	buf = (char*)X->buf;		for (i = 0; i < len; i++) {		buf[i] = (char)str[i];	}	buf[i] = 0;	return (buf);#endif}static inline HCURSOR getCursor ( jint jCursor ){	HCURSOR cursor;		if ( jCursor > 13 ) jCursor = 0;		if ( !(cursor = X->cursors[jCursor]) ){		LPCTSTR shape;#if defined(UNDER_CE)		shape = IDC_WAIT;#else		switch ( jCursor ) {		case  0: shape = IDC_ARROW; break;		/*  0: DEFAULT_CURSOR     */		case  1: shape = IDC_CROSS; break;		/*  1: CROSSHAIR_CURSOR   */		case  2: shape = IDC_IBEAM; break;		/*  2: TEXT_CURSOR        */		case  3: shape = IDC_WAIT; break;		/*  3: WAIT_CURSOR        */		case  4: shape = IDC_SIZENESW; break;	/*  4: SW_RESIZE_CURSOR   */		case  5: shape = IDC_SIZENWSE; break;	/*  5: SE_RESIZE_CURSOR   */		case  6: shape = IDC_SIZENWSE; break;	/*  6: NW_RESIZE_CURSOR   */		case  7: shape = IDC_SIZENESW; break;	/*  7: NE_RESIZE_CURSOR   */		case  8: shape = IDC_SIZENS; break;		/*  8: N_RESIZE_CURSOR    */		case  9: shape = IDC_SIZENS; break;		/*  9: S_RESIZE_CURSOR    */		case 10: shape = IDC_SIZEWE; break;		/* 10: W_RESIZE_CURSOR    */		case 11: shape = IDC_SIZEWE; break;		/* 11: E_RESIZE_CURSOR    */		case 12: shape = IDC_UPARROW; break;	/* 12: HAND_CURSOR        */		case 13: shape = IDC_SIZEALL; break;	/* 13: MOVE_CURSOR        */		default: shape = IDC_ARROW;		}#endif				cursor = X->cursors[jCursor] = LoadCursor( 0, shape);	}	return cursor;}static inline KWnd* getWnd ( HWND hwnd ){	if ( hwnd != X->lastHwnd ){		X->lastWnd = (KWnd*)GetWindowLong( hwnd, GWL_USERDATA);		X->lastHwnd = hwnd;	}	return X->lastWnd;}static inline void setWnd ( HWND hwnd, KWnd* wnd ){	X->lastWnd = wnd;	X->lastHwnd = hwnd;    SetWindowLong( hwnd, GWL_USERDATA, (long)wnd);}extern "C" {	jlong Java_java_awt_Toolkit_clrBright ( JNIEnv* env, jclass clazz, jint rgb );	jlong Java_java_awt_Toolkit_clrDark ( JNIEnv* env, jclass clazz, jint rgb );}static inline voidrgbValues ( Toolkit* X, unsigned long pixel, int* r, int* g, int* b ){	*r = GetRValue( pixel);	*g = GetGValue( pixel);	*b = GetBValue( pixel);}static inline intColorJ2N(int jrgb) {	return ( RGB( GetBValue( jrgb), GetGValue( jrgb), GetRValue( jrgb) ));}static inline intColorN2J(int nrgb) {	return ( RGB( GetBValue( nrgb), GetGValue( nrgb), GetRValue( nrgb) ));}static inline intColorN(int nrgb) {	return (nrgb & 0x00FFFFFF);}/****************************************************************************************** image functions*/Image* createImage ( int width, int height);void createMaskImage( Toolkit* X, Image* img);void createClrImage ( Toolkit* X, Image* img);void freeImage( Toolkit* X, Image* img);/****************************************************************************************** clipboard functions*/jobject selectionClear ( JNIEnv* env, Toolkit* X );jobject selectionRequest ( JNIEnv* env, Toolkit* X );/***************************************************************************************** * file io wrapper macros (for image production) */#define AWT_OPEN(_file)               open(_file, O_RDONLY|O_BINARY)#define AWT_REWIND(_fd)               lseek(_fd, 0, SEEK_SET)#define AWT_SETPOS(_fd,_off)          lseek(_fd, _off, SEEK_CUR)#define AWT_READ(_fd,_buf,_count)     read(_fd,_buf,_count)#define AWT_CLOSE(_fd)                close(_fd)/***************************************************************************************** * CE hacks */#if defined(UNDER_CE)#define GetMenu(X)              (CommandBar_GetMenu(this->hbar, 0))#define WS_THICKFRAME           0#define WS_OVERLAPPEDWINDOW     (WS_OVERLAPPED|WS_THICKFRAME|WS_CAPTION|WS_SYSMENU)#define WND_PROC				WNDPROC#define PIXEL(a,b,c,d)			SetPixel(a,b,c,d)#define GFLUSH()#define APPICON					(HICON)0#define BEEP()#else#define WND_PROC				FARPROC#define PIXEL(a,b,c,d)			SetPixelV(a,b,c,d)#define GFLUSH()				GdiFlush()#define APPICON					LoadIcon( 0, IDI_APPLICATION)#define BEEP()					Beep( 700, 70)#endif#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久亚洲精品石原莉奈| 成人免费毛片嘿嘿连载视频| 在线看国产一区二区| 亚洲日本一区二区| 色94色欧美sute亚洲线路一ni| 一区二区成人在线视频| 欧美日韩国产首页在线观看| 午夜成人在线视频| 欧美成人精精品一区二区频| 国产成人精品免费在线| 最新国产精品久久精品| 欧美色综合网站| 蜜桃一区二区三区在线| 国产免费观看久久| 在线视频国内自拍亚洲视频| 日本成人中文字幕| 国产欧美精品日韩区二区麻豆天美| 不卡大黄网站免费看| 亚洲午夜精品一区二区三区他趣| 91精品久久久久久久99蜜桃 | 国产精品色在线| 91网页版在线| 麻豆高清免费国产一区| 国产精品美女久久久久高潮| 欧美亚男人的天堂| 国产一区二三区好的| 一区二区三区在线播放| 国产日韩欧美a| 在线播放中文一区| 成人午夜视频在线| 日韩有码一区二区三区| 国产精品久久三区| 5566中文字幕一区二区电影| 成人黄色软件下载| 奇米精品一区二区三区在线观看| 中文字幕av一区二区三区免费看| 欧美午夜免费电影| 成人网男人的天堂| 美女一区二区久久| 亚洲一级二级三级| 欧美激情一二三区| 精品少妇一区二区三区在线播放| www.综合网.com| 精品一区二区免费在线观看| 亚洲一区精品在线| 中文子幕无线码一区tr| 欧美大尺度电影在线| 在线欧美小视频| 成人18视频在线播放| 精久久久久久久久久久| 水野朝阳av一区二区三区| 亚洲欧美乱综合| 国产日韩精品久久久| 精品免费日韩av| 91精品国产色综合久久ai换脸| 91丨九色丨蝌蚪富婆spa| 国产成人在线视频网址| 久久99精品国产麻豆不卡| 午夜视频一区二区| 亚洲一区中文日韩| 亚洲精品日产精品乱码不卡| 国产片一区二区| 久久精品欧美日韩精品 | 欧美一级欧美一级在线播放| 色一情一伦一子一伦一区| 成人免费高清视频| 丁香啪啪综合成人亚洲小说| 黑人巨大精品欧美黑白配亚洲| 日韩黄色片在线观看| 天天亚洲美女在线视频| 亚洲成人免费影院| 亚洲成av人片| 五月综合激情日本mⅴ| 亚洲国产精品天堂| 婷婷成人激情在线网| 午夜精品久久久久久久99樱桃| 一区二区免费在线| 亚洲国产视频一区| 五月天欧美精品| 蜜桃一区二区三区在线| 韩国精品免费视频| 国产精品88888| 国产成人aaa| 99视频一区二区| 欧美在线视频全部完| 精品视频全国免费看| 51精品久久久久久久蜜臀| 欧美一区二区视频免费观看| 精品国产亚洲在线| 久久九九久久九九| 亚洲婷婷在线视频| 亚洲高清不卡在线观看| 免费成人在线播放| 国产v综合v亚洲欧| 99精品欧美一区二区蜜桃免费| 91美女片黄在线观看91美女| 欧美日韩mp4| 精品99999| 欧美国产激情二区三区| 亚洲另类中文字| 99精品在线观看视频| 在线欧美一区二区| 欧美成va人片在线观看| 国产精品天天摸av网| 亚洲国产一区二区视频| 久久99热这里只有精品| 丁香六月综合激情| 欧美日韩免费电影| 久久久久久毛片| 亚洲人被黑人高潮完整版| 日韩—二三区免费观看av| 国产中文字幕一区| 欧美性生活久久| 久久综合九色综合97婷婷 | 91玉足脚交白嫩脚丫在线播放| 91国偷自产一区二区三区成为亚洲经典| 欧美日韩在线播放三区| 久久婷婷色综合| 亚洲一区二区视频在线观看| 久久福利视频一区二区| 91福利国产精品| 久久综合久久综合九色| 亚洲成人一区二区在线观看| 国产成人精品综合在线观看| 91成人免费电影| 久久男人中文字幕资源站| 一区二区三区小说| 国产成+人+日韩+欧美+亚洲| 欧美午夜电影网| 狠狠色综合播放一区二区| 91浏览器在线视频| 久久久精品中文字幕麻豆发布| 亚洲一区二区免费视频| 成人美女视频在线观看18| 欧美一区二区三区在线观看| 一区二区三区丝袜| 成人免费va视频| 欧美电影免费观看高清完整版在 | 亚洲一区二区精品久久av| 激情综合色丁香一区二区| 在线视频你懂得一区| 国产精品进线69影院| 韩国一区二区在线观看| 这里只有精品免费| 亚洲一区二区三区四区在线 | 精品一区二区三区欧美| 欧美日韩国产一级| 一区二区三区在线观看欧美 | 99视频国产精品| 久久久久9999亚洲精品| 九九久久精品视频| 欧美一区二区观看视频| 午夜激情久久久| 欧美性生活大片视频| 一区二区三区四区五区视频在线观看| 成人国产精品免费观看| 久久久99久久| 国产麻豆9l精品三级站| 亚洲精品一区二区精华| 麻豆成人综合网| 日韩一区二区视频在线观看| 水野朝阳av一区二区三区| 欧美日韩小视频| 午夜精品视频一区| 欧美精品123区| 视频一区中文字幕国产| 8x8x8国产精品| 日本不卡高清视频| 日韩欧美一区在线| 韩国v欧美v日本v亚洲v| 久久久三级国产网站| 美女一区二区三区| 欧美精品一区二区三区蜜桃| 黄页网站大全一区二区| 26uuu色噜噜精品一区| 国产一区二区三区视频在线播放| 欧美精品一区二区三区久久久| 狠狠色丁香婷综合久久| 欧美精品一区二区三区一线天视频 | 欧美日韩国产欧美日美国产精品| 亚洲综合视频网| 在线不卡中文字幕| 日本欧美久久久久免费播放网| 日韩欧美一区二区在线视频| 久久se精品一区精品二区| 久久精品亚洲一区二区三区浴池| 成人手机在线视频| 一区二区三区电影在线播| 欧美日本精品一区二区三区| 久久电影网电视剧免费观看| 国产欧美一区二区三区沐欲| 99国产精品99久久久久久| 亚洲一区二区三区四区在线| 日韩欧美一区二区视频| 懂色av一区二区三区免费观看 | 国产麻豆午夜三级精品| 最新国产の精品合集bt伙计| 91麻豆精品国产91久久久久| 国产主播一区二区| 一区二区三区电影在线播|