summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2019-09-16 07:59:23 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2019-09-16 07:59:23 (GMT)
commit487b808fa7ad1096e9ee4112a719c8ed3cd45ff8 (patch)
tree91ab786798803ba6ceb2719029759f2c87ccfd5f
parentb759c79faef78af4298e356f590b3d3a35b5ae01 (diff)
downloadtk-487b808fa7ad1096e9ee4112a719c8ed3cd45ff8.zip
tk-487b808fa7ad1096e9ee4112a719c8ed3cd45ff8.tar.gz
tk-487b808fa7ad1096e9ee4112a719c8ed3cd45ff8.tar.bz2
TCHAR -> WCHAR conversions, since our TCHAR is actually WCHAR when compiling everything in UNICODE mode on Windows.
-rw-r--r--generic/tkWindow.c4
-rw-r--r--win/tkWinButton.c8
-rw-r--r--win/tkWinClipboard.c2
-rw-r--r--win/tkWinCursor.c2
-rw-r--r--win/tkWinDialog.c79
-rw-r--r--win/tkWinEmbed.c6
-rw-r--r--win/tkWinFont.c34
-rw-r--r--win/tkWinInit.c12
-rw-r--r--win/tkWinInt.h4
-rw-r--r--win/tkWinKey.c6
-rw-r--r--win/tkWinMenu.c14
-rw-r--r--win/tkWinPixmap.c6
-rw-r--r--win/tkWinScrlbr.c2
-rw-r--r--win/tkWinTest.c6
-rw-r--r--win/tkWinWm.c12
-rw-r--r--win/tkWinX.c8
-rw-r--r--win/ttkWinMonitor.c4
-rw-r--r--win/ttkWinXPTheme.c2
18 files changed, 104 insertions, 107 deletions
diff --git a/generic/tkWindow.c b/generic/tkWindow.c
index 0cae5c0..518a5a4 100644
--- a/generic/tkWindow.c
+++ b/generic/tkWindow.c
@@ -2849,7 +2849,7 @@ TkCygwinMainEx(
* but before starting to execute commands. */
Tcl_Interp *interp)
{
- TCHAR name[MAX_PATH];
+ WCHAR name[MAX_PATH];
int len;
void (*tkmainex)(int, char **, Tcl_AppInitProc *, Tcl_Interp *);
@@ -2858,7 +2858,7 @@ TkCygwinMainEx(
name[len-2] = '.';
name[len-1] = name[len-5];
wcscpy(name+len, L".dll");
- memcpy(name+len-8, L"libtk8", 6 * sizeof(TCHAR));
+ memcpy(name+len-8, L"libtk8", 6 * sizeof(WCHAR));
tkcygwindll = LoadLibrary(name);
if (!tkcygwindll) {
diff --git a/win/tkWinButton.c b/win/tkWinButton.c
index 95b4fe4..ec8141c 100644
--- a/win/tkWinButton.c
+++ b/win/tkWinButton.c
@@ -131,7 +131,7 @@ InitBoxes(void)
ThreadSpecificData *tsdPtr = (ThreadSpecificData *)
Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData));
- hrsrc = FindResource(module, TEXT("buttons"), RT_BITMAP);
+ hrsrc = FindResource(module, L"buttons", RT_BITMAP);
if (hrsrc == NULL) {
Tcl_Panic("FindResource() failed for buttons bitmap resource, "
"resources in tk_base.rc must be linked into Tk dll or static executable");
@@ -242,15 +242,15 @@ CreateProc(
{
Window window;
HWND parent;
- const TCHAR *class;
+ const WCHAR *class;
WinButton *butPtr = (WinButton *)instanceData;
parent = Tk_GetHWND(parentWin);
if (butPtr->info.type == TYPE_LABEL) {
- class = TEXT("STATIC");
+ class = L"STATIC";
butPtr->style = SS_OWNERDRAW | WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS;
} else {
- class = TEXT("BUTTON");
+ class = L"BUTTON";
butPtr->style = BS_OWNERDRAW | WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS;
}
butPtr->hwnd = CreateWindow(class, NULL, butPtr->style,
diff --git a/win/tkWinClipboard.c b/win/tkWinClipboard.c
index 8c6a4a4..418b872 100644
--- a/win/tkWinClipboard.c
+++ b/win/tkWinClipboard.c
@@ -79,7 +79,7 @@ TkSelGetSelection(
goto error;
}
data = GlobalLock(handle);
- Tcl_WinTCharToUtf((TCHAR *)data, -1, &ds);
+ Tcl_WinTCharToUtf((WCHAR *)data, -1, &ds);
GlobalUnlock(handle);
} else if (IsClipboardFormatAvailable(CF_TEXT)) {
/*
diff --git a/win/tkWinCursor.c b/win/tkWinCursor.c
index 622ba4d..6a9dc75 100644
--- a/win/tkWinCursor.c
+++ b/win/tkWinCursor.c
@@ -41,7 +41,7 @@ typedef struct {
static struct CursorName {
const char *name;
- LPCTSTR id;
+ LPCWSTR id;
} cursorNames[] = {
{"starting", IDC_APPSTARTING},
{"arrow", IDC_ARROW},
diff --git a/win/tkWinDialog.c b/win/tkWinDialog.c
index 2701b82..23c7f46 100644
--- a/win/tkWinDialog.c
+++ b/win/tkWinDialog.c
@@ -143,8 +143,8 @@ static const struct {int type; int btnIds[3];} allowedTypes[] = {
*/
typedef struct {
- TCHAR initDir[MAX_PATH]; /* Initial folder to use */
- TCHAR retDir[MAX_PATH]; /* Returned folder to use */
+ WCHAR initDir[MAX_PATH]; /* Initial folder to use */
+ WCHAR retDir[MAX_PATH]; /* Returned folder to use */
Tcl_Interp *interp;
int mustExist; /* True if file must exist to return from
* callback */
@@ -161,7 +161,7 @@ typedef struct OFNData {
int dynFileBufferSize; /* Dynamic filename buffer size, stored to
* avoid shrinking and expanding the buffer
* when selection changes */
- TCHAR *dynFileBuffer; /* Dynamic filename buffer */
+ WCHAR *dynFileBuffer; /* Dynamic filename buffer */
} OFNData;
/*
@@ -180,12 +180,9 @@ typedef struct OFNOpts {
int confirmOverwrite; /* Confirm before overwriting */
int mustExist; /* Used only for */
int forceXPStyle; /* XXX - Force XP style even on newer systems */
- TCHAR file[TK_MULTI_MAX_PATH]; /* File name
+ WCHAR file[TK_MULTI_MAX_PATH]; /* File name
XXX - fixed size because it was so
historically. Why not malloc'ed ?
- XXX - also, TCHAR should really be WCHAR
- because TkWinGetUnicodeEncoding is always
- UCS2.
*/
} OFNOpts;
@@ -596,7 +593,7 @@ static UINT APIENTRY OFNHookProc(HWND hdlg, UINT uMsg, WPARAM wParam,
LPARAM lParam);
static LRESULT CALLBACK MsgBoxCBTProc(int nCode, WPARAM wParam, LPARAM lParam);
static void SetTkDialog(ClientData clientData);
-static const char *ConvertExternalFilename(TCHAR *filename,
+static const char *ConvertExternalFilename(WCHAR *filename,
Tcl_DString *dsPtr);
static void LoadShellProcs(void);
@@ -644,7 +641,7 @@ static void LoadShellProcs()
if (shell32_handle != NULL)
return; /* We have already been through here. */
- shell32_handle = GetModuleHandle(TEXT("shell32.dll"));
+ shell32_handle = GetModuleHandle(L"shell32.dll");
if (shell32_handle == NULL) /* Should never happen but check anyways. */
return;
@@ -797,7 +794,7 @@ Tk_ChooseColorObjCmd(
chooseColor.Flags = CC_RGBINIT | CC_FULLOPEN | CC_ENABLEHOOK;
chooseColor.lCustData = (LPARAM) NULL;
chooseColor.lpfnHook = (LPOFNHOOKPROC) ColorDlgHookProc;
- chooseColor.lpTemplateName = (LPTSTR) interp;
+ chooseColor.lpTemplateName = (LPWSTR) interp;
for (i = 1; i < objc; i += 2) {
int index;
@@ -1625,7 +1622,7 @@ static int GetFileNameXP(Tcl_Interp *interp, OFNOpts *optsPtr, enum OFNOper oper
*/
ofnData.dynFileBufferSize = 512;
- ofnData.dynFileBuffer = ckalloc(512 * sizeof(TCHAR));
+ ofnData.dynFileBuffer = ckalloc(512 * sizeof(WCHAR));
}
if (optsPtr->extObj != NULL) {
@@ -1633,12 +1630,12 @@ static int GetFileNameXP(Tcl_Interp *interp, OFNOpts *optsPtr, enum OFNOper oper
if (str[0] == '.')
++str;
Tcl_WinUtfToTChar(str, -1, &extString);
- ofn.lpstrDefExt = (TCHAR *) Tcl_DStringValue(&extString);
+ ofn.lpstrDefExt = (WCHAR *) Tcl_DStringValue(&extString);
}
Tcl_WinUtfToTChar(Tcl_DStringValue(&utfFilterString),
Tcl_DStringLength(&utfFilterString), &filterString);
- ofn.lpstrFilter = (TCHAR *) Tcl_DStringValue(&filterString);
+ ofn.lpstrFilter = (WCHAR *) Tcl_DStringValue(&filterString);
ofn.nFilterIndex = filterIndex;
if (Tcl_DStringValue(&optsPtr->utfDirString)[0] != '\0') {
@@ -1663,11 +1660,11 @@ static int GetFileNameXP(Tcl_Interp *interp, OFNOpts *optsPtr, enum OFNOper oper
}
Tcl_DStringFree(&cwd);
}
- ofn.lpstrInitialDir = (TCHAR *) Tcl_DStringValue(&dirString);
+ ofn.lpstrInitialDir = (WCHAR *) Tcl_DStringValue(&dirString);
if (optsPtr->titleObj != NULL) {
Tcl_WinUtfToTChar(Tcl_GetString(optsPtr->titleObj), -1, &titleString);
- ofn.lpstrTitle = (TCHAR *) Tcl_DStringValue(&titleString);
+ ofn.lpstrTitle = (WCHAR *) Tcl_DStringValue(&titleString);
}
/*
@@ -1732,7 +1729,7 @@ static int GetFileNameXP(Tcl_Interp *interp, OFNOpts *optsPtr, enum OFNOper oper
* first element is the directory path.
*/
- TCHAR *files = ofnData.dynFileBuffer;
+ WCHAR *files = ofnData.dynFileBuffer;
Tcl_Obj *returnList = Tcl_NewObj();
int count = 0;
@@ -1944,7 +1941,7 @@ OFNHookProc(
if (notifyPtr->hdr.code == CDN_FILEOK ||
notifyPtr->hdr.code == CDN_SELCHANGE) {
int dirsize, selsize;
- TCHAR *buffer;
+ WCHAR *buffer;
int buffersize;
/*
@@ -1968,7 +1965,7 @@ OFNHookProc(
if ((selsize > 1) && (dirsize > 0)) {
if (ofnData->dynFileBufferSize < buffersize) {
- buffer = ckrealloc(buffer, buffersize * sizeof(TCHAR));
+ buffer = ckrealloc(buffer, buffersize * sizeof(WCHAR));
ofnData->dynFileBufferSize = buffersize;
ofnData->dynFileBuffer = buffer;
}
@@ -1985,7 +1982,7 @@ OFNHookProc(
if (buffer[0] == '"') {
BOOL findquote = TRUE;
- TCHAR *tmp = buffer;
+ WCHAR *tmp = buffer;
while (*buffer != '\0') {
if (findquote) {
@@ -2014,7 +2011,7 @@ OFNHookProc(
if (TCL_PATH_ABSOLUTE ==
Tcl_GetPathType(Tcl_DStringValue(&tmpfile))) {
/* re-get the full path to the start of the buffer */
- buffer = (TCHAR *) ofnData->dynFileBuffer;
+ buffer = (WCHAR *) ofnData->dynFileBuffer;
SendMessage(hdlg, CDM_GETSPEC, selsize, (LPARAM) buffer);
} else {
*(buffer-1) = '\\';
@@ -2431,14 +2428,14 @@ Tk_ChooseDirectoryObjCmd(
int objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
- TCHAR path[MAX_PATH];
+ WCHAR path[MAX_PATH];
int oldMode, result;
LPCITEMIDLIST pidl; /* Returned by browser */
BROWSEINFO bInfo; /* Used by browser */
ChooseDir cdCBData; /* Structure to pass back and forth */
LPMALLOC pMalloc; /* Used by shell */
HWND hWnd;
- TCHAR saveDir[MAX_PATH];
+ WCHAR saveDir[MAX_PATH];
Tcl_DString titleString; /* Title */
Tcl_DString tempString; /* temporary */
Tcl_Obj *objPtr;
@@ -2466,16 +2463,16 @@ Tk_ChooseDirectoryObjCmd(
utfDir = Tcl_DStringValue(&ofnOpts.utfDirString);
if (utfDir[0] != '\0') {
- const TCHAR *uniStr;
+ const WCHAR *uniStr;
Tcl_WinUtfToTChar(Tcl_DStringValue(&ofnOpts.utfDirString), -1,
&tempString);
- uniStr = (TCHAR *) Tcl_DStringValue(&tempString);
+ uniStr = (WCHAR *) Tcl_DStringValue(&tempString);
/* Convert possible relative path to full path to keep dialog happy. */
GetFullPathName(uniStr, MAX_PATH, saveDir, NULL);
- _tcsncpy(cdCBData.initDir, saveDir, MAX_PATH);
+ wcsncpy(cdCBData.initDir, saveDir, MAX_PATH);
}
/* XXX - rest of this (original) code has no error checks at all. */
@@ -2494,16 +2491,16 @@ Tk_ChooseDirectoryObjCmd(
bInfo.hwndOwner = hWnd;
bInfo.pszDisplayName = path;
bInfo.pidlRoot = NULL;
- if (_tcslen(cdCBData.initDir) == 0) {
+ if (wcslen(cdCBData.initDir) == 0) {
GetCurrentDirectory(MAX_PATH, cdCBData.initDir);
}
bInfo.lParam = (LPARAM) &cdCBData;
if (ofnOpts.titleObj != NULL) {
Tcl_WinUtfToTChar(Tcl_GetString(ofnOpts.titleObj), -1, &titleString);
- bInfo.lpszTitle = (LPTSTR) Tcl_DStringValue(&titleString);
+ bInfo.lpszTitle = (LPWSTR) Tcl_DStringValue(&titleString);
} else {
- bInfo.lpszTitle = TEXT("Please choose a directory, then select OK.");
+ bInfo.lpszTitle = L"Please choose a directory, then select OK.";
}
/*
@@ -2563,8 +2560,8 @@ Tk_ChooseDirectoryObjCmd(
Tcl_SetErrorCode(interp, "TK", "DIRDIALOG", "PSEUDO", NULL);
}
pMalloc->lpVtbl->Free(pMalloc, (void *) pidl);
- } else if (_tcslen(cdCBData.retDir) > 0) {
- _tcscpy(path, cdCBData.retDir);
+ } else if (wcslen(cdCBData.retDir) > 0) {
+ wcscpy(path, cdCBData.retDir);
}
pMalloc->lpVtbl->Release(pMalloc);
}
@@ -2620,11 +2617,11 @@ ChooseDirectoryValidateProc(
LPARAM lParam,
LPARAM lpData)
{
- TCHAR selDir[MAX_PATH];
+ WCHAR selDir[MAX_PATH];
ChooseDir *chooseDirSharedData = (ChooseDir *) lpData;
Tcl_DString tempString;
Tcl_DString initDirString;
- TCHAR string[MAX_PATH];
+ WCHAR string[MAX_PATH];
ThreadSpecificData *tsdPtr =
Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData));
@@ -2644,7 +2641,7 @@ ChooseDirectoryValidateProc(
* like ~ are converted correctly.
*/
- Tcl_WinTCharToUtf((TCHAR *) lParam, -1, &initDirString);
+ Tcl_WinTCharToUtf((WCHAR *) lParam, -1, &initDirString);
if (Tcl_TranslateFileName(chooseDirSharedData->interp,
Tcl_DStringValue(&initDirString), &tempString) == NULL) {
/*
@@ -2658,7 +2655,7 @@ ChooseDirectoryValidateProc(
Tcl_DStringFree(&initDirString);
Tcl_WinUtfToTChar(Tcl_DStringValue(&tempString), -1, &initDirString);
Tcl_DStringFree(&tempString);
- _tcsncpy(string, (TCHAR *) Tcl_DStringValue(&initDirString),
+ wcsncpy(string, (WCHAR *) Tcl_DStringValue(&initDirString),
MAX_PATH);
Tcl_DStringFree(&initDirString);
@@ -2677,8 +2674,8 @@ ChooseDirectoryValidateProc(
* User HAS to select a valid directory.
*/
- wsprintf(selDir, TEXT("Directory '%s' does not exist,\n")
- TEXT("please select or enter an existing directory."),
+ wsprintf(selDir, L"Directory '%s' does not exist,\n"
+ L"please select or enter an existing directory.",
chooseDirSharedData->retDir);
MessageBox(NULL, selDir, NULL, MB_ICONEXCLAMATION|MB_OK);
chooseDirSharedData->retDir[0] = '\0';
@@ -2722,7 +2719,7 @@ ChooseDirectoryValidateProc(
* specified parameter.
*/
- TCHAR *initDir = chooseDirSharedData->initDir;
+ WCHAR *initDir = chooseDirSharedData->initDir;
SetCurrentDirectory(initDir);
@@ -2741,7 +2738,7 @@ ChooseDirectoryValidateProc(
ULONG ulCount, ulAttr;
if (SUCCEEDED(psfFolder->lpVtbl->ParseDisplayName(
- psfFolder, hwnd, NULL, (TCHAR *)
+ psfFolder, hwnd, NULL, (WCHAR *)
initDir, &ulCount,&pidlMain,&ulAttr))
&& (pidlMain != NULL)) {
SendMessage(hwnd, BFFM_SETSELECTION, FALSE,
@@ -3031,7 +3028,7 @@ SetTkDialog(
static const char *
ConvertExternalFilename(
- TCHAR *filename,
+ WCHAR *filename,
Tcl_DString *dsPtr)
{
char *p;
@@ -3161,7 +3158,7 @@ HookProc(
Tcl_WinUtfToTChar(Tcl_GetString(phd->titleObj), -1, &title);
if (Tcl_DStringLength(&title) > 0) {
- SetWindowText(hwndDlg, (LPCTSTR) Tcl_DStringValue(&title));
+ SetWindowText(hwndDlg, (LPCWSTR) Tcl_DStringValue(&title));
}
Tcl_DStringFree(&title);
}
@@ -3477,7 +3474,7 @@ FontchooserShowCmd(
fontPtr = (TkFont *) f;
cf.Flags |= CF_INITTOLOGFONTSTRUCT;
Tcl_WinUtfToTChar(fontPtr->fa.family, -1, &ds);
- _tcsncpy(lf.lfFaceName, (TCHAR *)Tcl_DStringValue(&ds),
+ wcsncpy(lf.lfFaceName, (WCHAR *)Tcl_DStringValue(&ds),
LF_FACESIZE-1);
Tcl_DStringFree(&ds);
lf.lfFaceName[LF_FACESIZE-1] = 0;
diff --git a/win/tkWinEmbed.c b/win/tkWinEmbed.c
index ca293fe..e22314f 100644
--- a/win/tkWinEmbed.c
+++ b/win/tkWinEmbed.c
@@ -303,10 +303,10 @@ TkpUseWindow(
* order to avoid bug 1096074 in future.
*/
- TCHAR msg[256];
+ WCHAR msg[256];
- wsprintf(msg, TEXT("Unable to get information of window \"%.40hs\". Attach to this\nwindow may have unpredictable results if it is not a valid container.\n\nPress Ok to proceed or Cancel to abort attaching."), string);
- if (IDCANCEL == MessageBox(hwnd, msg, TEXT("Tk Warning"),
+ wsprintf(msg, L"Unable to get information of window \"%.40hs\". Attach to this\nwindow may have unpredictable results if it is not a valid container.\n\nPress Ok to proceed or Cancel to abort attaching.", string);
+ if (IDCANCEL == MessageBox(hwnd, msg, L"Tk Warning",
MB_OKCANCEL | MB_ICONWARNING)) {
Tcl_SetObjResult(interp, Tcl_NewStringObj(
"Operation has been canceled", -1));
diff --git a/win/tkWinFont.c b/win/tkWinFont.c
index ad7738f..3b51073 100644
--- a/win/tkWinFont.c
+++ b/win/tkWinFont.c
@@ -50,11 +50,11 @@ typedef struct FontFamily {
int isSymbolFont; /* Non-zero if this is a symbol font. */
int isWideFont; /* 1 if this is a double-byte font, 0
* otherwise. */
- BOOL (WINAPI *textOutProc)(HDC hdc, int x, int y, TCHAR *str, int len);
+ BOOL (WINAPI *textOutProc)(HDC hdc, int x, int y, WCHAR *str, int len);
/* The procedure to use to draw text after it
* has been converted from UTF-8 to the
* encoding of this font. */
- BOOL (WINAPI *getTextExtentPoint32Proc)(HDC, TCHAR *, int, LPSIZE);
+ BOOL (WINAPI *getTextExtentPoint32Proc)(HDC, WCHAR *, int, LPSIZE);
/* The procedure to use to measure text after
* it has been converted from UTF-8 to the
* encoding of this font. */
@@ -446,7 +446,7 @@ TkWinSetupSystemFonts(
{
LOGFONT lfFixed = {
0, 0, 0, 0, FW_NORMAL, FALSE, FALSE, FALSE, DEFAULT_CHARSET,
- 0, 0, DEFAULT_QUALITY, FIXED_PITCH | FF_MODERN, TEXT("")
+ 0, 0, DEFAULT_QUALITY, FIXED_PITCH | FF_MODERN, L""
};
long pointSize, dpi;
HDC hdc = GetDC(NULL);
@@ -858,7 +858,7 @@ Tk_MeasureChars(
(int) (p - start), &runString);
size.cx = 0;
familyPtr->getTextExtentPoint32Proc(hdc,
- (TCHAR *)Tcl_DStringValue(&runString),
+ (WCHAR *)Tcl_DStringValue(&runString),
Tcl_DStringLength(&runString) >> familyPtr->isWideFont,
&size);
Tcl_DStringFree(&runString);
@@ -885,7 +885,7 @@ Tk_MeasureChars(
Tcl_UtfToExternalDString(familyPtr->encoding, start,
(int) (p - start), &runString);
size.cx = 0;
- familyPtr->getTextExtentPoint32Proc(hdc, (TCHAR *) Tcl_DStringValue(&runString),
+ familyPtr->getTextExtentPoint32Proc(hdc, (WCHAR *) Tcl_DStringValue(&runString),
Tcl_DStringLength(&runString) >> familyPtr->isWideFont,
&size);
Tcl_DStringFree(&runString);
@@ -919,7 +919,7 @@ Tk_MeasureChars(
Tcl_DStringAppend(&runString,buf,dstWrote);
size.cx = 0;
familyPtr->getTextExtentPoint32Proc(hdc,
- (TCHAR *) Tcl_DStringValue(&runString),
+ (WCHAR *) Tcl_DStringValue(&runString),
Tcl_DStringLength(&runString) >> familyPtr->isWideFont,
&size);
if ((curX+size.cx) > maxLength) {
@@ -1469,10 +1469,10 @@ MultiFontTextOut(
Tcl_UtfToExternalDString(familyPtr->encoding, source,
(int) (p - source), &runString);
familyPtr->textOutProc(hdc, x-(tm.tmOverhang/2), y,
- (TCHAR *)Tcl_DStringValue(&runString),
+ (WCHAR *)Tcl_DStringValue(&runString),
Tcl_DStringLength(&runString)>>familyPtr->isWideFont);
familyPtr->getTextExtentPoint32Proc(hdc,
- (TCHAR *)Tcl_DStringValue(&runString),
+ (WCHAR *)Tcl_DStringValue(&runString),
Tcl_DStringLength(&runString) >> familyPtr->isWideFont,
&size);
x += size.cx;
@@ -1490,7 +1490,7 @@ MultiFontTextOut(
Tcl_UtfToExternalDString(familyPtr->encoding, source,
(int) (p - source), &runString);
familyPtr->textOutProc(hdc, x-(tm.tmOverhang/2), y,
- (TCHAR *)Tcl_DStringValue(&runString),
+ (WCHAR *)Tcl_DStringValue(&runString),
Tcl_DStringLength(&runString) >> familyPtr->isWideFont);
Tcl_DStringFree(&runString);
}
@@ -1565,7 +1565,7 @@ InitFont(
Tcl_Encoding encoding;
Tcl_DString faceString;
TkFontAttributes *faPtr;
- TCHAR buf[LF_FACESIZE];
+ WCHAR buf[LF_FACESIZE];
window = Tk_WindowId(tkwin);
hwnd = (window == None) ? NULL : TkWinGetHWND(window);
@@ -1761,7 +1761,7 @@ AllocFontFamily(
FontFamily *familyPtr;
Tcl_DString faceString;
Tcl_Encoding encoding;
- TCHAR buf[LF_FACESIZE];
+ WCHAR buf[LF_FACESIZE];
ThreadSpecificData *tsdPtr =
Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData));
@@ -1825,15 +1825,15 @@ AllocFontFamily(
if (encoding == NULL) {
encoding = TkWinGetUnicodeEncoding();
familyPtr->textOutProc =
- (BOOL (WINAPI *)(HDC, int, int, TCHAR *, int)) TextOutW;
+ (BOOL (WINAPI *)(HDC, int, int, WCHAR *, int)) TextOutW;
familyPtr->getTextExtentPoint32Proc =
- (BOOL (WINAPI *)(HDC, TCHAR *, int, LPSIZE)) GetTextExtentPoint32W;
+ (BOOL (WINAPI *)(HDC, WCHAR *, int, LPSIZE)) GetTextExtentPoint32W;
familyPtr->isWideFont = 1;
} else {
familyPtr->textOutProc =
- (BOOL (WINAPI *)(HDC, int, int, TCHAR *, int)) TextOutA;
+ (BOOL (WINAPI *)(HDC, int, int, WCHAR *, int)) TextOutA;
familyPtr->getTextExtentPoint32Proc =
- (BOOL (WINAPI *)(HDC, TCHAR *, int, LPSIZE)) GetTextExtentPoint32A;
+ (BOOL (WINAPI *)(HDC, WCHAR *, int, LPSIZE)) GetTextExtentPoint32A;
familyPtr->isWideFont = 0;
}
@@ -2495,7 +2495,7 @@ GetScreenFont(
lf.lfPitchAndFamily = DEFAULT_PITCH | FF_DONTCARE;
Tcl_UtfToExternalDString(systemEncoding, faceName, -1, &ds);
- _tcsncpy(lf.lfFaceName, (TCHAR *)Tcl_DStringValue(&ds), LF_FACESIZE-1);
+ wcsncpy(lf.lfFaceName, (WCHAR *)Tcl_DStringValue(&ds), LF_FACESIZE-1);
Tcl_DStringFree(&ds);
lf.lfFaceName[LF_FACESIZE-1] = 0;
hFont = CreateFontIndirect(&lf);
@@ -2554,7 +2554,7 @@ FamilyExists(
* non-zero value.
*/
- result = EnumFontFamilies(hdc, (TCHAR*) Tcl_DStringValue(&faceString),
+ result = EnumFontFamilies(hdc, (WCHAR*) Tcl_DStringValue(&faceString),
(FONTENUMPROC) WinFontExistProc, 0);
Tcl_DStringFree(&faceString);
return (result == 0);
diff --git a/win/tkWinInit.c b/win/tkWinInit.c
index e3c75de..a94561c 100644
--- a/win/tkWinInit.c
+++ b/win/tkWinInit.c
@@ -178,8 +178,8 @@ Tcl_Obj*
TkWin32ErrorObj(
HRESULT hrError)
{
- LPTSTR lpBuffer = NULL, p = NULL;
- TCHAR sBuffer[30];
+ LPWSTR lpBuffer = NULL, p = NULL;
+ WCHAR sBuffer[30];
Tcl_Obj* errPtr = NULL;
#ifdef _UNICODE
Tcl_DString ds;
@@ -187,15 +187,15 @@ TkWin32ErrorObj(
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM
| FORMAT_MESSAGE_IGNORE_INSERTS, NULL, (DWORD)hrError,
- LANG_NEUTRAL, (LPTSTR)&lpBuffer, 0, NULL);
+ LANG_NEUTRAL, (LPWSTR)&lpBuffer, 0, NULL);
if (lpBuffer == NULL) {
lpBuffer = sBuffer;
- wsprintf(sBuffer, TEXT("Error Code: %08lX"), hrError);
+ wsprintf(sBuffer, L"Error Code: %08lX", hrError);
}
- if ((p = _tcsrchr(lpBuffer, TEXT('\r'))) != NULL) {
- *p = TEXT('\0');
+ if ((p = wcsrchr(lpBuffer, '\r')) != NULL) {
+ *p = '\0';
}
#ifdef _UNICODE
diff --git a/win/tkWinInt.h b/win/tkWinInt.h
index 9cd49cd..08c695f 100644
--- a/win/tkWinInt.h
+++ b/win/tkWinInt.h
@@ -117,8 +117,8 @@ typedef struct {
* The following macros define the class names for Tk Window types.
*/
-#define TK_WIN_TOPLEVEL_CLASS_NAME TEXT("TkTopLevel")
-#define TK_WIN_CHILD_CLASS_NAME TEXT("TkChild")
+#define TK_WIN_TOPLEVEL_CLASS_NAME L"TkTopLevel"
+#define TK_WIN_CHILD_CLASS_NAME L"TkChild"
/*
* The following variable is a translation table between X gc functions and
diff --git a/win/tkWinKey.c b/win/tkWinKey.c
index 8db34af..c1f9891 100644
--- a/win/tkWinKey.c
+++ b/win/tkWinKey.c
@@ -186,7 +186,7 @@ KeycodeToKeysym(
{
BYTE keys[256];
int result, deadkey, shift;
- TCHAR buf[4];
+ WCHAR buf[4];
unsigned int scancode = MapVirtualKey(keycode, 0);
/*
@@ -572,7 +572,7 @@ TkpSetKeycodeAndState(
}
}
if (keySym >= 0x20) {
- result = VkKeyScan((TCHAR) keySym);
+ result = VkKeyScan((WCHAR) keySym);
if (result != -1) {
shift = result >> 8;
if (shift & 1)
@@ -625,7 +625,7 @@ XKeysymToKeycode(
}
}
if (keysym >= 0x20) {
- result = VkKeyScan((TCHAR) keysym);
+ result = VkKeyScan((WCHAR) keysym);
if (result != -1) {
return (KeyCode) (result & 0xff);
}
diff --git a/win/tkWinMenu.c b/win/tkWinMenu.c
index 3aa8a61..5ee911a 100644
--- a/win/tkWinMenu.c
+++ b/win/tkWinMenu.c
@@ -19,8 +19,8 @@
* The class of the window for popup menus.
*/
-#define MENU_CLASS_NAME TEXT("MenuWindowClass")
-#define EMBEDDED_MENU_CLASS_NAME TEXT("EmbeddedMenuWindowClass")
+#define MENU_CLASS_NAME L"MenuWindowClass"
+#define EMBEDDED_MENU_CLASS_NAME L"EmbeddedMenuWindowClass"
/*
* Used to align a windows bitmap inside a rectangle
@@ -573,7 +573,7 @@ ReconfigureWindowsMenu(
TkMenuEntry *mePtr;
HMENU winMenuHdl = (HMENU) menuPtr->platformData;
char *itemText = NULL;
- const TCHAR *lpNewItem;
+ const WCHAR *lpNewItem;
UINT flags;
UINT itemID;
int i, count, systemMenu = 0, base;
@@ -610,10 +610,10 @@ ReconfigureWindowsMenu(
if ((menuPtr->menuType == MENUBAR)
|| (menuPtr->menuFlags & MENU_SYSTEM_MENU)) {
Tcl_WinUtfToTChar(itemText, -1, &translatedText);
- lpNewItem = (const TCHAR *) Tcl_DStringValue(&translatedText);
+ lpNewItem = (const WCHAR *) Tcl_DStringValue(&translatedText);
flags |= MF_STRING;
} else {
- lpNewItem = (LPCTSTR) mePtr;
+ lpNewItem = (LPCWSTR) mePtr;
flags |= MF_OWNERDRAW;
}
@@ -3482,7 +3482,7 @@ TkpMenuThreadInit(void)
ThreadSpecificData *tsdPtr =
Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData));
- tsdPtr->menuHWND = CreateWindow(MENU_CLASS_NAME, TEXT("MenuWindow"), WS_POPUP,
+ tsdPtr->menuHWND = CreateWindow(MENU_CLASS_NAME, L"MenuWindow", WS_POPUP,
0, 0, 10, 10, NULL, NULL, Tk_GetHINSTANCE(), NULL);
if (!tsdPtr->menuHWND) {
@@ -3490,7 +3490,7 @@ TkpMenuThreadInit(void)
}
tsdPtr->embeddedMenuHWND =
- CreateWindow(EMBEDDED_MENU_CLASS_NAME, TEXT("EmbeddedMenuWindow"),
+ CreateWindow(EMBEDDED_MENU_CLASS_NAME, L"EmbeddedMenuWindow",
WS_POPUP, 0, 0, 10, 10, NULL, NULL, Tk_GetHINSTANCE(), NULL);
if (!tsdPtr->embeddedMenuHWND) {
diff --git a/win/tkWinPixmap.c b/win/tkWinPixmap.c
index aa1ebde..9850e26 100644
--- a/win/tkWinPixmap.c
+++ b/win/tkWinPixmap.c
@@ -104,9 +104,9 @@ Tk_GetPixmap(
FORMAT_MESSAGE_FROM_SYSTEM|FORMAT_MESSAGE_IGNORE_INSERTS,
NULL, GetLastError(),
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
- (LPTSTR)&lpMsgBuf, 0, NULL)) {
- MessageBox(NULL, (LPTSTR) lpMsgBuf,
- TEXT("Tk_GetPixmap: Error from CreateDIBSection"),
+ (LPWSTR)&lpMsgBuf, 0, NULL)) {
+ MessageBox(NULL, (LPWSTR) lpMsgBuf,
+ L"Tk_GetPixmap: Error from CreateDIBSection",
MB_OK | MB_ICONINFORMATION);
LocalFree(lpMsgBuf);
}
diff --git a/win/tkWinScrlbr.c b/win/tkWinScrlbr.c
index 1b3717e..dc98dbd 100644
--- a/win/tkWinScrlbr.c
+++ b/win/tkWinScrlbr.c
@@ -223,7 +223,7 @@ CreateProc(
| SBS_HORZ;
}
- scrollPtr->hwnd = CreateWindow(TEXT("SCROLLBAR"), NULL, style,
+ scrollPtr->hwnd = CreateWindow(L"SCROLLBAR", NULL, style,
Tk_X(tkwin), Tk_Y(tkwin), Tk_Width(tkwin), Tk_Height(tkwin),
parent, NULL, Tk_GetHINSTANCE(), NULL);
diff --git a/win/tkWinTest.c b/win/tkWinTest.c
index 04ecb97..2cdea38 100644
--- a/win/tkWinTest.c
+++ b/win/tkWinTest.c
@@ -432,7 +432,7 @@ TestfindwindowObjCmd(
int objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument values. */
{
- const TCHAR *title = NULL, *class = NULL;
+ const WCHAR *title = NULL, *class = NULL;
Tcl_DString titleString, classString;
HWND hwnd = NULL;
int r = TCL_OK;
@@ -510,7 +510,7 @@ TestgetwindowinfoObjCmd(
long hwnd;
Tcl_Obj *dictObj = NULL, *classObj = NULL, *textObj = NULL;
Tcl_Obj *childrenObj = NULL;
- TCHAR buf[512];
+ WCHAR buf[512];
int cch, cchBuf = 256;
Tcl_DString ds;
@@ -539,7 +539,7 @@ TestgetwindowinfoObjCmd(
Tcl_DictObjPut(interp, dictObj, Tcl_NewStringObj("id", 2),
Tcl_NewLongObj(GetWindowLongA(INT2PTR(hwnd), GWL_ID)));
- cch = GetWindowText(INT2PTR(hwnd), (LPTSTR)buf, cchBuf);
+ cch = GetWindowText(INT2PTR(hwnd), (LPWSTR)buf, cchBuf);
Tcl_WinTCharToUtf(buf, cch * sizeof (WCHAR), &ds);
textObj = Tcl_NewStringObj(Tcl_DStringValue(&ds), Tcl_DStringLength(&ds));
Tcl_DStringFree(&ds);
diff --git a/win/tkWinWm.c b/win/tkWinWm.c
index 5bcf1ad..4cb0745 100644
--- a/win/tkWinWm.c
+++ b/win/tkWinWm.c
@@ -883,7 +883,7 @@ InitWindowClass(
class.lpszClassName = TK_WIN_TOPLEVEL_CLASS_NAME;
class.lpfnWndProc = WmProc;
if (titlebaricon == NULL) {
- class.hIcon = LoadIcon(Tk_GetHINSTANCE(), TEXT("tk"));
+ class.hIcon = LoadIcon(Tk_GetHINSTANCE(), L"tk");
} else {
class.hIcon = GetIcon(titlebaricon, ICON_BIG);
if (class.hIcon == NULL) {
@@ -1248,7 +1248,7 @@ ReadIconFromFile(
}
Tcl_WinUtfToTChar(file, -1, &ds2);
Tcl_DStringFree(&ds);
- res = (DWORD *)SHGetFileInfo((TCHAR *)Tcl_DStringValue(&ds2), 0, &sfiSM,
+ res = (DWORD *)SHGetFileInfo((WCHAR *)Tcl_DStringValue(&ds2), 0, &sfiSM,
sizeof(SHFILEINFO), SHGFI_SMALLICON|SHGFI_ICON);
if (res != 0) {
@@ -1256,7 +1256,7 @@ ReadIconFromFile(
unsigned size;
Tcl_ResetResult(interp);
- res = (DWORD *)SHGetFileInfo((TCHAR *)Tcl_DStringValue(&ds2), 0, &sfi,
+ res = (DWORD *)SHGetFileInfo((WCHAR *)Tcl_DStringValue(&ds2), 0, &sfi,
sizeof(SHFILEINFO), SHGFI_ICON);
/*
@@ -2131,7 +2131,7 @@ UpdateWrapper(
wmPtr->wrapper = CreateWindowEx(wmPtr->exStyle,
TK_WIN_TOPLEVEL_CLASS_NAME,
- (LPCTSTR) Tcl_DStringValue(&titleString),
+ (LPCWSTR) Tcl_DStringValue(&titleString),
wmPtr->style, x, y, width, height,
parentHWND, NULL, Tk_GetHINSTANCE(), NULL);
Tcl_DStringFree(&titleString);
@@ -5466,7 +5466,7 @@ WmTitleCmd(
}
if (objc == 3) {
if (wrapper) {
- TCHAR buf[256];
+ WCHAR buf[256];
Tcl_DString titleString;
int size = 256;
@@ -5493,7 +5493,7 @@ WmTitleCmd(
Tcl_DString titleString;
Tcl_WinUtfToTChar(wmPtr->title, -1, &titleString);
- SetWindowText(wrapper, (LPCTSTR) Tcl_DStringValue(&titleString));
+ SetWindowText(wrapper, (LPCWSTR) Tcl_DStringValue(&titleString));
Tcl_DStringFree(&titleString);
}
}
diff --git a/win/tkWinX.c b/win/tkWinX.c
index 7aa49ab..2ea5a95 100644
--- a/win/tkWinX.c
+++ b/win/tkWinX.c
@@ -138,7 +138,7 @@ TkGetServerInfo(
OSVERSIONINFOW os;
if (!buffer[0]) {
- HANDLE handle = GetModuleHandle(TEXT("NTDLL"));
+ HANDLE handle = GetModuleHandle(L"NTDLL");
int(__stdcall *getversion)(void *) =
(int(__stdcall *)(void *))GetProcAddress(handle, "RtlGetVersion");
os.dwOSVersionInfoSize = sizeof(OSVERSIONINFOW);
@@ -269,7 +269,7 @@ TkWinXInit(
if (GetLocaleInfo(LANGIDFROMLCID(PTR2INT(GetKeyboardLayout(0))),
LOCALE_IDEFAULTANSICODEPAGE | LOCALE_RETURN_NUMBER,
- (LPTSTR) &lpCP, sizeof(lpCP)/sizeof(TCHAR))
+ (LPWSTR) &lpCP, sizeof(lpCP)/sizeof(WCHAR))
&& TranslateCharsetInfo(INT2PTR(lpCP), &lpCs, TCI_SRCCODEPAGE)) {
UpdateInputLanguage((int) lpCs.ciCharset);
}
@@ -365,8 +365,8 @@ TkWinGetPlatformId(void)
if ((os.dwPlatformId == VER_PLATFORM_WIN32_NT) &&
(os.dwMajorVersion == 5 && os.dwMinorVersion == 1)) {
HKEY hKey;
- LPCTSTR szSubKey = TEXT("Control Panel\\Appearance");
- LPCTSTR szCurrent = TEXT("Current");
+ LPCWSTR szSubKey = L"Control Panel\\Appearance";
+ LPCWSTR szCurrent = L"Current";
DWORD dwSize = 200;
char pBuffer[200];
diff --git a/win/ttkWinMonitor.c b/win/ttkWinMonitor.c
index 6e46374..3060aa1 100644
--- a/win/ttkWinMonitor.c
+++ b/win/ttkWinMonitor.c
@@ -72,8 +72,8 @@ CreateThemeMonitorWindow(HINSTANCE hinst, Tcl_Interp *interp)
{
WNDCLASSEX wc;
HWND hwnd = NULL;
- TCHAR title[32] = TEXT("TtkMonitorWindow");
- TCHAR name[32] = TEXT("TtkMonitorClass");
+ WCHAR title[32] = L"TtkMonitorWindow";
+ WCHAR name[32] = L"TtkMonitorClass";
wc.cbSize = sizeof(WNDCLASSEX);
wc.style = CS_HREDRAW | CS_VREDRAW;
diff --git a/win/ttkWinXPTheme.c b/win/ttkWinXPTheme.c
index c19ed65..1633f2e 100644
--- a/win/ttkWinXPTheme.c
+++ b/win/ttkWinXPTheme.c
@@ -99,7 +99,7 @@ LoadXPThemeProcs(HINSTANCE *phlib)
* if we are running at least on Windows XP.
*/
HINSTANCE handle;
- *phlib = handle = LoadLibrary(TEXT("uxtheme.dll"));
+ *phlib = handle = LoadLibrary(L"uxtheme.dll");
if (handle != 0)
{
/*