| version 1.9, 2004/04/09 10:52:21 | version 1.13, 2005/03/20 13:12:49 | 
| Line 49  typedef struct { | Line 49  typedef struct { | 
 | typedef struct { | typedef struct { | 
 | int             posx; | int             posx; | 
 | int             posy; | int             posy; | 
| BYTE    mode; | UINT8   mode; | 
| BYTE    type; | UINT8   type; | 
 | } KDISPCFG; | } KDISPCFG; | 
 |  |  | 
 | static  KDISPWIN        kdispwin; | static  KDISPWIN        kdispwin; | 
 | static  KDISPCFG        kdispcfg; | static  KDISPCFG        kdispcfg; | 
 |  |  | 
| static const char kdispapp[] = "Key Display"; | static const TCHAR kdisptitle[] = _T("Key Display"); | 
| static const char kdispclass[] = "NP2-KeyDispWin"; | static const TCHAR kdispclass[] = _T("NP2-KeyDispWin"); | 
| static const char str_kdclose[] = "&Close"; | static const TCHAR str_kdclose[] = _T("&Close"); | 
 |  |  | 
 | static const UINT32 kdisppal[KEYDISP_PALS] = | static const UINT32 kdisppal[KEYDISP_PALS] = | 
 | {0x00000000, 0xffffffff, 0xf9ff0000}; | {0x00000000, 0xffffffff, 0xf9ff0000}; | 
 |  |  | 
| static const INITBL kdispini[] = { | #if defined(OSLANG_UTF8) | 
| {"WindposX", INITYPE_SINT32,    &kdispcfg.posx,                 0}, | static const OEMCHAR kdispapp[] = OEMTEXT("Key Display"); | 
| {"WindposY", INITYPE_SINT32,    &kdispcfg.posy,                 0}, | #else | 
| {"keydmode", INITYPE_UINT8,             &kdispcfg.mode,                 0}, | #define kdispapp        kdisptitle | 
| {"windtype", INITYPE_BOOL,              &kdispcfg.type,                 0}}; | #endif | 
|  | static const PFTBL kdispini[] = { | 
|  | PFVAL("WindposX", PFTYPE_SINT32,        &kdispcfg.posx), | 
|  | PFVAL("WindposY", PFTYPE_SINT32,        &kdispcfg.posy), | 
|  | PFVAL("keydmode", PFTYPE_UINT8,         &kdispcfg.mode), | 
|  | PFVAL("windtype", PFTYPE_BOOL,          &kdispcfg.type)}; | 
 |  |  | 
 |  |  | 
| static BYTE kdgetpal8(CMNPALFN *self, UINT num) { | static UINT8 kdgetpal8(CMNPALFN *self, UINT num) { | 
 |  |  | 
 | if (num < KEYDISP_PALS) { | if (num < KEYDISP_PALS) { | 
 | return(kdisppal[num] >> 24); | return(kdisppal[num] >> 24); | 
| Line 127  static void kdsetwinsize(void) { | Line 132  static void kdsetwinsize(void) { | 
 | winlocex_destroy(wlex); | winlocex_destroy(wlex); | 
 | } | } | 
 |  |  | 
| static void kdsetdispmode(BYTE mode) { | static void kdsetdispmode(UINT8 mode) { | 
 |  |  | 
 | HMENU   hmenu; | HMENU   hmenu; | 
 |  |  | 
| Line 305  BOOL kdispwin_initialize(HINSTANCE hPreI | Line 310  BOOL kdispwin_initialize(HINSTANCE hPreI | 
 | void kdispwin_create(void) { | void kdispwin_create(void) { | 
 |  |  | 
 | HWND            hwnd; | HWND            hwnd; | 
| BYTE            mode; | UINT8           mode; | 
 | CMNPALFN        palfn; | CMNPALFN        palfn; | 
 |  |  | 
 | if (kdispwin.hwnd != NULL) { | if (kdispwin.hwnd != NULL) { | 
 | return; | return; | 
 | } | } | 
 | ZeroMemory(&kdispwin, sizeof(kdispwin)); | ZeroMemory(&kdispwin, sizeof(kdispwin)); | 
| hwnd = CreateWindow(kdispclass, kdispapp, | hwnd = CreateWindow(kdispclass, kdisptitle, | 
 | WS_OVERLAPPED | WS_SYSMENU | WS_CAPTION | | WS_OVERLAPPED | WS_SYSMENU | WS_CAPTION | | 
 | WS_MINIMIZEBOX, | WS_MINIMIZEBOX, | 
 | kdispcfg.posx, kdispcfg.posy, | kdispcfg.posx, kdispcfg.posy, | 
| Line 368  HWND kdispwin_gethwnd(void) { | Line 373  HWND kdispwin_gethwnd(void) { | 
 | return(kdispwin.hwnd); | return(kdispwin.hwnd); | 
 | } | } | 
 |  |  | 
| void kdispwin_draw(BYTE cnt) { | void kdispwin_draw(UINT8 cnt) { | 
 |  |  | 
| BYTE    flag; | UINT8   flag; | 
 |  |  | 
 | if (kdispwin.hwnd) { | if (kdispwin.hwnd) { | 
 | if (!cnt) { | if (!cnt) { | 
| Line 386  void kdispwin_draw(BYTE cnt) { | Line 391  void kdispwin_draw(BYTE cnt) { | 
 |  |  | 
 | void kdispwin_readini(void) { | void kdispwin_readini(void) { | 
 |  |  | 
| char    path[MAX_PATH]; | OEMCHAR path[MAX_PATH]; | 
 |  |  | 
 | ZeroMemory(&kdispcfg, sizeof(kdispcfg)); | ZeroMemory(&kdispcfg, sizeof(kdispcfg)); | 
 | kdispcfg.posx = CW_USEDEFAULT; | kdispcfg.posx = CW_USEDEFAULT; | 
 | kdispcfg.posy = CW_USEDEFAULT; | kdispcfg.posy = CW_USEDEFAULT; | 
| initgetfile(path, sizeof(path)); | initgetfile(path, NELEMENTS(path)); | 
| ini_read(path, kdispapp, kdispini, sizeof(kdispini)/sizeof(INITBL)); | ini_read(path, kdispapp, kdispini, NELEMENTS(kdispini)); | 
 | } | } | 
 |  |  | 
 | void kdispwin_writeini(void) { | void kdispwin_writeini(void) { | 
 |  |  | 
| char    path[MAX_PATH]; | OEMCHAR path[MAX_PATH]; | 
 |  |  | 
| initgetfile(path, sizeof(path)); | initgetfile(path, NELEMENTS(path)); | 
| ini_write(path, kdispapp, kdispini, sizeof(kdispini)/sizeof(INITBL)); | ini_write(path, kdispapp, kdispini, NELEMENTS(kdispini)); | 
 | } | } | 
 | #endif | #endif | 
 |  |  | 
| Line 426  typedef struct { | Line 431  typedef struct { | 
 | static  MDBGWIN         mdbgwin; | static  MDBGWIN         mdbgwin; | 
 | static  MDBGCFG         mdbgcfg; | static  MDBGCFG         mdbgcfg; | 
 |  |  | 
| static const char mdbgapp[] = "Memory Map"; | static const TCHAR mdbgtitle[] = _T("Memory Map"); | 
| static const char mdbgclass[] = "NP2-MemDbgWin"; | static const TCHAR mdbgclass[] = _T("NP2-MemDbgWin"); | 
| static const INITBL mdbgini[] = { |  | 
| {"WindposX", INITYPE_SINT32,    &mdbgcfg.posx,                  0}, | #if defined(OSLANG_UTF8) | 
| {"WindposY", INITYPE_SINT32,    &mdbgcfg.posy,                  0}, | static const OEMCHAR mdbgapp[] = OEMTEXT("Memory Map"); | 
| {"windtype", INITYPE_BOOL,              &mdbgcfg.type,                  0}}; | #else | 
|  | #define mdbgapp         mdbgtitle | 
|  | #endif | 
|  | static const PFTBL mdbgini[] = { | 
|  | PFVAL("WindposX", PFTYPE_SINT32,        &mdbgcfg.posx), | 
|  | PFVAL("WindposY", PFTYPE_SINT32,        &mdbgcfg.posy), | 
|  | PFVAL("windtype", PFTYPE_BOOL,          &mdbgcfg.type)}; | 
 |  |  | 
 |  |  | 
 | static void mdpalcnv(CMNPAL *dst, const RGB32 *src, UINT pals, UINT bpp) { | static void mdpalcnv(CMNPAL *dst, const RGB32 *src, UINT pals, UINT bpp) { | 
| Line 597  void mdbgwin_create(void) { | Line 608  void mdbgwin_create(void) { | 
 | } | } | 
 | ZeroMemory(&mdbgwin, sizeof(mdbgwin)); | ZeroMemory(&mdbgwin, sizeof(mdbgwin)); | 
 | memdbg32_getsize(&mdbgwin.width, &mdbgwin.height); | memdbg32_getsize(&mdbgwin.width, &mdbgwin.height); | 
| hwnd = CreateWindow(mdbgclass, mdbgapp, | hwnd = CreateWindow(mdbgclass, mdbgtitle, | 
 | WS_OVERLAPPED | WS_SYSMENU | WS_CAPTION | | WS_OVERLAPPED | WS_SYSMENU | WS_CAPTION | | 
 | WS_MINIMIZEBOX, | WS_MINIMIZEBOX, | 
 | mdbgcfg.posx, mdbgcfg.posy, | mdbgcfg.posx, mdbgcfg.posy, | 
| Line 645  HWND mdbgwin_gethwnd(void) { | Line 656  HWND mdbgwin_gethwnd(void) { | 
 |  |  | 
 | void mdbgwin_readini(void) { | void mdbgwin_readini(void) { | 
 |  |  | 
| char    path[MAX_PATH]; | OEMCHAR path[MAX_PATH]; | 
 |  |  | 
 | mdbgcfg.posx = CW_USEDEFAULT; | mdbgcfg.posx = CW_USEDEFAULT; | 
 | mdbgcfg.posy = CW_USEDEFAULT; | mdbgcfg.posy = CW_USEDEFAULT; | 
| initgetfile(path, sizeof(path)); | initgetfile(path, NELEMENTS(path)); | 
| ini_read(path, mdbgapp, mdbgini, sizeof(mdbgini)/sizeof(INITBL)); | ini_read(path, mdbgapp, mdbgini, NELEMENTS(mdbgini)); | 
 | } | } | 
 |  |  | 
 | void mdbgwin_writeini(void) { | void mdbgwin_writeini(void) { | 
 |  |  | 
| char    path[MAX_PATH]; | OEMCHAR path[MAX_PATH]; | 
 |  |  | 
| initgetfile(path, sizeof(path)); | initgetfile(path, NELEMENTS(path)); | 
| ini_write(path, mdbgapp, mdbgini, sizeof(mdbgini)/sizeof(INITBL)); | ini_write(path, mdbgapp, mdbgini, NELEMENTS(mdbgini)); | 
 | } | } | 
 | #endif | #endif | 
 |  |  | 
| Line 683  typedef struct { | Line 694  typedef struct { | 
 | static  SKBDWIN         skbdwin; | static  SKBDWIN         skbdwin; | 
 | static  SKBDCFG         skbdcfg; | static  SKBDCFG         skbdcfg; | 
 |  |  | 
| static const char skbdapp[] = "Soft Keyboard"; | static const TCHAR skbdtitle[] = _T("Soft Keyboard"); | 
| static const char skbdclass[] = "NP2-SoftKBDWin"; | static const TCHAR skbdclass[] = _T("NP2-SoftKBDWin"); | 
| static const INITBL skbdini[] = { |  | 
| {"WindposX", INITYPE_SINT32,    &skbdcfg.posx,                  0}, | #if defined(OSLANG_UTF8) | 
| {"WindposY", INITYPE_SINT32,    &skbdcfg.posy,                  0}, | static const OEMCHAR skbdapp[] = OEMTEXT("Soft Keyboard"); | 
| {"windtype", INITYPE_BOOL,              &skbdcfg.type,                  0}}; | #else | 
|  | #define skbdapp         skbdtitle | 
|  | #endif | 
|  | static const PFTBL skbdini[] = { | 
|  | PFVAL("WindposX", PFTYPE_SINT32,        &skbdcfg.posx), | 
|  | PFVAL("WindposY", PFTYPE_SINT32,        &skbdcfg.posy), | 
|  | PFVAL("windtype", PFTYPE_BOOL,          &skbdcfg.type)}; | 
 |  |  | 
 | static void skpalcnv(CMNPAL *dst, const RGB32 *src, UINT pals, UINT bpp) { | static void skpalcnv(CMNPAL *dst, const RGB32 *src, UINT pals, UINT bpp) { | 
 |  |  | 
| Line 874  void skbdwin_create(void) { | Line 891  void skbdwin_create(void) { | 
 | if (softkbd_getsize(&skbdwin.width, &skbdwin.height) != SUCCESS) { | if (softkbd_getsize(&skbdwin.width, &skbdwin.height) != SUCCESS) { | 
 | return; | return; | 
 | } | } | 
| hwnd = CreateWindow(skbdclass, skbdapp, | hwnd = CreateWindow(skbdclass, skbdtitle, | 
 | WS_OVERLAPPED | WS_SYSMENU | WS_CAPTION | | WS_OVERLAPPED | WS_SYSMENU | WS_CAPTION | | 
 | WS_MINIMIZEBOX, | WS_MINIMIZEBOX, | 
 | skbdcfg.posx, skbdcfg.posy, | skbdcfg.posx, skbdcfg.posy, | 
| Line 922  void skbdwin_process(void) { | Line 939  void skbdwin_process(void) { | 
 |  |  | 
 | void skbdwin_readini(void) { | void skbdwin_readini(void) { | 
 |  |  | 
| char    path[MAX_PATH]; | OEMCHAR path[MAX_PATH]; | 
 |  |  | 
 | skbdcfg.posx = CW_USEDEFAULT; | skbdcfg.posx = CW_USEDEFAULT; | 
 | skbdcfg.posy = CW_USEDEFAULT; | skbdcfg.posy = CW_USEDEFAULT; | 
| initgetfile(path, sizeof(path)); | initgetfile(path, NELEMENTS(path)); | 
| ini_read(path, skbdapp, skbdini, sizeof(skbdini)/sizeof(INITBL)); | ini_read(path, skbdapp, skbdini, NELEMENTS(skbdini)); | 
 | } | } | 
 |  |  | 
 | void skbdwin_writeini(void) { | void skbdwin_writeini(void) { | 
 |  |  | 
| char    path[MAX_PATH]; | OEMCHAR path[MAX_PATH]; | 
 |  |  | 
| initgetfile(path, sizeof(path)); | initgetfile(path, NELEMENTS(path)); | 
| ini_write(path, skbdapp, skbdini, sizeof(skbdini)/sizeof(INITBL)); | ini_write(path, skbdapp, skbdini, NELEMENTS(skbdini)); | 
 | } | } | 
 | #endif | #endif | 
 |  |  |