www.pudn.com > Uconvert.zip > UCONVERT.H
/**************************************************************************\ * uconvert.h -- header file for uconvert program. * * Function prototypes, global variables, & preprocessor defines. \**************************************************************************/ /**************************************************************************\ * Function prototypes, window procedures first. \**************************************************************************/ LRESULT CALLBACK MainWndProc (HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK AboutProc (HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK SourceOptionsProc (HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK DestinationOptionsProc (HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK ConversionOptionsProc (HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK ViewSourceProc (HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK ViewDestinationProc (HWND, UINT, WPARAM, LPARAM); BOOL IsUnicode (PBYTE ); BOOL IsBOM (PBYTE ); BOOL IsRBOM (PBYTE ); VOID framechildwindow (HDC, HWND, HWND); VOID underlinechildwindow (HDC, HWND, HWND); VOID createwindows(PRECT, HWND, HWND*, HWND*, HWND*, HWND*, HWND*, HWND*); LPVOID ManageMemory (UINT, UINT, DWORD, LPVOID); LPTSTR LoadResourceString(UINT); /**************************************************************************\ * Global variables (declared in uconvert.c). \**************************************************************************/ /* Child windows appearing on the main frame window. */ extern HWND hwndLabel0, hwndLabel1; extern HWND hwndName0, hwndName1; extern HWND hwndSize0, hwndSize1; extern HWND hwndCodePage0, hwndCodePage1; extern HWND hwndByteOrder0, hwndByteOrder1; extern HWND hwndButton0, hwndButton1; /* Information specifying which is unicode and what the other code page is. */ extern int gTypeSource; extern UINT giSourceCodePage; extern UINT giDestinationCodePage; /* pointers to global source & destination data, and byte count. */ extern PBYTE pSourceData; extern PBYTE pDestinationData; extern int nBytesSource; extern int nBytesDestination; /* Conversion Options variables. */ extern DWORD gMBFlags; extern DWORD gWCFlags; extern char glpDefaultChar[]; extern BOOL gUsedDefaultChar; /**************************************************************************\ * Defined constants. \**************************************************************************/ /* Messages that can be send to ManageMemory() as first param */ #define MMALLOC 1 #define MMFREE 2 /* Messages that can be send to ManageMemory() as second param */ #define MMSOURCE 3 #define MMDESTINATION 4 /* Allowed values for the global variable gTypeSource */ #define TYPEUNKNOWN 0 #define TYPEUNICODE 1 #define TYPECODEPAGE 2 /* "user message." Used by main window. */ #define WMU_SETTYPESTRINGS WM_USER +1 #define WMU_ADJUSTFORNEWSOURCE WM_USER +2 /* menu IDs */ #define MID_OPEN 1001 #define MID_SAVEAS 1002 #define MID_EXIT 1010 #define MID_COPYDESTINATION 2001 #define MID_PASTESOURCE 2002 #define MID_CLEARSOURCE 2003 #define MID_CLEARDESTINATION 2004 #define MID_CONVERTNOW 3001 #define MID_SOURCEOPT 3002 #define MID_DESTINATIONOPT 3003 #define MID_CONVERSIONOPT 3004 #define MID_SWAPSOURCE 3005 #define MID_SWAPDESTINATION 3006 #define MID_INSTALLTABLES 3007 #define MID_HELP 4001 #define MID_ABOUT 4002 /* button IDs (should be disjoint from menu IDs) */ #define BID_VIEWSOURCE 59 #define BID_VIEWDESTINATION 60 /* dialog IDs */ #define DID_NAME 100 #define DID_TYPE 101 #define DID_FONT 102 #define DID_TEXT 103 #define DID_CODEPAGELIST 300 #define DID_RBUNICODE 301 #define DID_RBANSICP 302 #define DID_RBOEMCP 303 #define DID_RBOTHERCP 304 #define DID_CBBYTEORDER 305 #define DID_PRECOMPOSED 401 #define DID_COMPOSITE 402 #define DID_USEGLYPHCHARS 403 #define DID_COMPOSITECHECK 451 #define DID_DISCARDNS 452 #define DID_SEPCHARS 453 #define DID_DEFAULTCHAR 454 #define DID_EFDEFAULTCHAR 455 #define DID_USEDDEFAULTCHAR 456 /* Define a value for the LOGFONT.lfCharSet * This should be included in wingdi.h, but it * was removed because the font mapper is not * using it anyway in version 1.0. Currently * scheduled to be included in NT ver 1.1. */ #define UNICODE_CHARSET 1 /* string id */ #define IDS_SOURCE 501 #define IDS_DESTINATION 502 #define IDS_VIEW_SOURCE_BTN 503 #define IDS_VIEW_DESTINATION_BTN 504 #define IDS_FILE_FILTER_SPEC1 505 #define IDS_FILE_FILTER_SPEC2 506 #define IDS_FILE_FILTER_SPEC3 507 #define IDS_CODE_PAGE 508 #define IDS_OPEN_FILE_TITLE 509 #define IDS_OPEN_FILE_FAILED 510 #define IDS_FILE_TOO_BIG 511 #define IDS_READFILE_FAILED 512 #define IDS_SWAPPING_BYTE_ORDER 513 #define IDS_NOTEXT_TO_SAVE 514 #define IDS_SAVE_AS_TITLE 515 #define IDS_CREATEFILE_FAILED 516 #define IDS_WRITEFILE_FAILED 517 #define IDS_FROM_CLIPBOARD 518 #define IDS_LOAD_SOURCE_FILE 519 #define IDS_SOURCE_TYPE_UNKNOWN 520 #define IDS_DATA_NOT_SAVED 521 #define IDS_BYTES 522 #define IDS_BYTE_ORDER_REVERSED 533 #define IDS_APP_WARNING 534 #define IDS_INTERPRET_SOURCE_AS 535 #define IDS_CONVERT_DEST_TO 536 #define IDS_VIEW_SOURCE_TITLE 537 #define IDS_VIEW_DEST_TITLE 538 #define IDS_FILE_FILTER_SPEC4 539 #define IDS_TABLE_FILE_TITLE 540 #define IDS_INCORRECT_FILE_TYPE 541 #define IDS_FILENAME_OVERFLOW 542 #define IDS_LOGON_AS_ADMIN 543 #define IDS_ACCESS_DENIED 544 #define IDS_REGOPENKEYEX_FAILED 545 #define IDS_FILE_ALREADY_EXISTS 546 #define IDS_FILE_CP_FAILED_AGAIN 547 #define IDS_FILE_CP_FAILED 548 #define IDS_FILE_PARSE_FAILED 549 #define IDS_FIRSTCALL_FAILED 550