ReactOS  0.4.15-dev-1068-g467feb9
charmap.c File Reference
#include "precomp.h"
#include <commctrl.h>
#include <richedit.h>
#include <winnls.h>
Include dependency graph for charmap.c:

Go to the source code of this file.

Macros

#define ID_ABOUT   0x1
 

Functions

static VOID FillCharacterSetComboList (HWND hwndCombo)
 
static VOID FillGroupByComboList (HWND hwndCombo)
 
static int CALLBACK EnumFontNames (ENUMLOGFONTEXW *lpelfe, NEWTEXTMETRICEXW *lpntme, DWORD FontType, LPARAM lParam)
 
static VOID FillFontStyleComboList (HWND hwndCombo)
 
VOID ChangeMapFont (HWND hDlg)
 
static void CopyCharacters (HWND hDlg)
 
static BYTE GetFontMetrics (HWND hWnd, HFONT hFont)
 
static VOID AddCharToSelection (HWND hDlg, WCHAR ch)
 
static void UpdateSettings (HWND hDlg)
 
VOID UpdateStatusBar (WCHAR wch)
 
static void ChangeView (HWND hWnd)
 
static INT_PTR CALLBACK CharMapDlgProc (HWND hDlg, UINT Message, WPARAM wParam, LPARAM lParam)
 
static INT_PTR CALLBACK AdvancedDlgProc (HWND hDlg, UINT Message, WPARAM wParam, LPARAM lParam)
 
static int PanelOnCreate (HWND hWnd, WPARAM wParam, LPARAM lParam)
 
static LRESULT CALLBACK PanelWndProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
 
static HWND InitInstance (HINSTANCE hInst)
 
INT WINAPI wWinMain (HINSTANCE hInst, HINSTANCE hPrev, LPWSTR Cmd, int iCmd)
 

Variables

HINSTANCE hInstance
 
HWND hAdvancedDlg
 
HWND hCharmapDlg
 
HWND hStatusWnd
 
HICON hSmIcon
 
HICON hBgIcon
 
SETTINGS Settings
 

Macro Definition Documentation

◆ ID_ABOUT

#define ID_ABOUT   0x1

Definition at line 18 of file charmap.c.

Function Documentation

◆ AddCharToSelection()

static VOID AddCharToSelection ( HWND  hDlg,
WCHAR  ch 
)
static

Definition at line 251 of file charmap.c.

252 {
253  HWND hMap = GetDlgItem(hDlg, IDC_FONTMAP);
254  HWND hText = GetDlgItem(hDlg, IDC_TEXTBOX);
255  HFONT hFont;
256  LOGFONT lFont;
257  CHARFORMAT cf;
258 
259  // Retrieve current character selected
260  if (ch == 0)
261  {
262  ch = (WCHAR) SendMessageW(hMap, FM_GETCHAR, 0, 0);
263  if (!ch)
264  return;
265  }
266 
267  // Retrieve current selected font
268  hFont = (HFONT)SendMessage(hMap, FM_GETHFONT, 0, 0);
269 
270  // Recover LOGFONT structure from hFont
271  if (!GetObject(hFont, sizeof(LOGFONT), &lFont))
272  return;
273 
274  // Recover font properties of Richedit control
275  ZeroMemory(&cf, sizeof(cf));
276  cf.cbSize = sizeof(cf);
278 
279  // Apply properties of the new font
280  cf.bCharSet = GetFontMetrics(hText, hFont);
281 
282  // Update font name
283  wcscpy(cf.szFaceName, lFont.lfFaceName);
284 
285  // Update font properties
287 
288  // Send selected character to Richedit
289  SendMessage(hText, WM_CHAR, (WPARAM)ch, 0);
290 }
static IClassFactory * cf
#define WM_CHAR
Definition: winuser.h:1699
#define IDC_TEXTBOX
Definition: resource.h:15
#define ZeroMemory
Definition: winbase.h:1648
UINT_PTR WPARAM
Definition: windef.h:207
HFONT hFont
Definition: main.c:53
#define EM_SETCHARFORMAT
Definition: richedit.h:101
LONG_PTR LPARAM
Definition: windef.h:208
#define FM_GETHFONT
Definition: precomp.h:25
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define GetObject
Definition: wingdi.h:4467
_CRTIMP wchar_t *__cdecl wcscpy(_Out_writes_z_(_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
#define FM_GETCHAR
Definition: precomp.h:23
#define EM_GETCHARFORMAT
Definition: richedit.h:91
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
#define SendMessage
Definition: winuser.h:5818
#define SCF_SELECTION
Definition: richedit.h:235
CHAR lfFaceName[LF_FACESIZE]
Definition: dimm.idl:55
static BYTE GetFontMetrics(HWND hWnd, HFONT hFont)
Definition: charmap.c:233
#define IDC_FONTMAP
Definition: resource.h:14

Referenced by CharMapDlgProc().

◆ AdvancedDlgProc()

static INT_PTR CALLBACK AdvancedDlgProc ( HWND  hDlg,
UINT  Message,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 481 of file charmap.c.

485 {
486  switch(Message)
487  {
488  case WM_INITDIALOG:
489  return TRUE;
490 
491  case WM_COMMAND:
492  {
493  switch (LOWORD(wParam))
494  {
495  case IDC_COMBO_CHARSET:
496  if (HIWORD(wParam) == CBN_SELCHANGE)
497  {
499  CB_GETCURSEL,
500  0, 0);
503  idx, 0);
504 
506  }
507  break;
508  }
509  }
510 
511  default:
512  return FALSE;
513  }
514 
515  return FALSE;
516 }
#define TRUE
Definition: types.h:120
#define INT
Definition: polytest.cpp:20
int32_t INT
Definition: typedefs.h:58
#define CB_GETCURSEL
Definition: winuser.h:1925
WPARAM wParam
Definition: combotst.c:138
#define IDC_COMBO_CHARSET
Definition: resource.h:21
#define FALSE
Definition: types.h:117
#define FM_SETCHARMAP
Definition: precomp.h:26
unsigned int idx
Definition: utils.c:41
#define IDC_EDIT_UNICODE
Definition: resource.h:25
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
CHAR Message[80]
Definition: alive.c:5
#define WM_COMMAND
Definition: winuser.h:1722
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
HWND hCharmapDlg
Definition: charmap.c:22
#define CBN_SELCHANGE
Definition: winuser.h:1961
#define HIWORD(l)
Definition: typedefs.h:247
HWND hAdvancedDlg
Definition: charmap.c:21
#define WM_INITDIALOG
Definition: winuser.h:1721
LPARAM lParam
Definition: combotst.c:139
#define LOWORD(l)
Definition: pedump.c:82
#define IDC_FONTMAP
Definition: resource.h:14

Referenced by Applet1(), MainWindowProc(), and PanelOnCreate().

◆ ChangeMapFont()

VOID ChangeMapFont ( HWND  hDlg)

Definition at line 162 of file charmap.c.

163 {
164  HWND hCombo;
165  HWND hMap;
166  LPWSTR lpFontName;
167  INT Len;
168 
169  hCombo = GetDlgItem(hDlg, IDC_FONTCOMBO);
170 
171  Len = GetWindowTextLengthW(hCombo);
172 
173  if (Len != 0)
174  {
175  lpFontName = HeapAlloc(GetProcessHeap(),
176  0,
177  (Len + 1) * sizeof(WCHAR));
178 
179  if (lpFontName)
180  {
181  SendMessageW(hCombo,
182  WM_GETTEXT,
183  Len + 1,
184  (LPARAM)lpFontName);
185 
186  hMap = GetDlgItem(hDlg, IDC_FONTMAP);
187 
188  SendMessageW(hMap,
189  FM_SETFONT,
190  0,
191  (LPARAM)lpFontName);
192  }
193 
195  0,
196  lpFontName);
197  }
198 }
#define WM_GETTEXT
Definition: winuser.h:1600
int32_t INT
Definition: typedefs.h:58
#define FM_SETFONT
Definition: precomp.h:22
LONG_PTR LPARAM
Definition: windef.h:208
#define GetProcessHeap()
Definition: compat.h:484
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
__wchar_t WCHAR
Definition: xmlstorage.h:180
int WINAPI GetWindowTextLengthW(_In_ HWND)
#define Len
Definition: deflate.h:82
#define IDC_FONTCOMBO
Definition: resource.h:12
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
WCHAR * LPWSTR
Definition: xmlstorage.h:184
#define HeapFree(x, y, z)
Definition: compat.h:483
#define IDC_FONTMAP
Definition: resource.h:14

Referenced by CharMapDlgProc(), and LoadSettings().

◆ ChangeView()

static void ChangeView ( HWND  hWnd)
static

Definition at line 323 of file charmap.c.

324 {
325  RECT rcCharmap;
326 #ifndef REMOVE_ADVANCED
327  RECT rcAdvanced;
328 #else
329  RECT rcCopy;
330 #endif
331  RECT rcPanelExt;
332  RECT rcPanelInt;
333  RECT rcStatus;
334  UINT DeX, DeY;
335  LONG xPos, yPos;
336  UINT Width, Height;
337  UINT DeskTopWidth, DeskTopHeight;
338 #ifdef REMOVE_ADVANCED
339  HWND hCopy;
340 #endif
341 
342  GetClientRect(hCharmapDlg, &rcCharmap);
343 #ifndef REMOVE_ADVANCED
344  GetClientRect(hAdvancedDlg, &rcAdvanced);
345 #else
346  hCopy = GetDlgItem(hCharmapDlg, IDC_COPY);
347  GetClientRect(hCopy, &rcCopy);
348 #endif
349  GetWindowRect(hWnd, &rcPanelExt);
350  GetClientRect(hWnd, &rcPanelInt);
351  GetClientRect(hStatusWnd, &rcStatus);
352 
353  DeskTopWidth = GetSystemMetrics(SM_CXFULLSCREEN);
354  DeskTopHeight = GetSystemMetrics(SM_CYFULLSCREEN);
355 
356  DeX = (rcPanelExt.right - rcPanelExt.left) - rcPanelInt.right;
357  DeY = (rcPanelExt.bottom - rcPanelExt.top) - rcPanelInt.bottom;
358 
359  MoveWindow(hCharmapDlg, 0, 0, rcCharmap.right, rcCharmap.bottom, FALSE);
360 #ifndef REMOVE_ADVANCED
361  MoveWindow(hAdvancedDlg, 0, rcCharmap.bottom, rcAdvanced.right, rcAdvanced.bottom, FALSE);
363 #endif
364  xPos = rcPanelExt.left;
365  yPos = rcPanelExt.top;
366 
367  Width = DeX + rcCharmap.right;
368  Height = DeY + rcCharmap.bottom + rcStatus.bottom;
369 #ifndef REMOVE_ADVANCED
371  Height += rcAdvanced.bottom;
372 #else
373  /* The lack of advanced button leaves an empty gap at the bottom of the window.
374  Shrink the window height a bit here to accomodate for that lost control. */
375  Height = rcCharmap.bottom + rcCopy.bottom + 10;
376 #endif
377  // FIXME: This fails on multi monitor setups
378  if ((xPos + Width) > DeskTopWidth)
379  xPos = DeskTopWidth - Width;
380 
381  if ((yPos + Height) > DeskTopHeight)
382  yPos = DeskTopHeight - Height;
383 
385  xPos, yPos,
386  Width, Height,
387  TRUE);
388 }
HWND hStatusWnd
Definition: charmap.c:23
BOOL IsAdvancedView
Definition: precomp.h:71
#define TRUE
Definition: types.h:120
#define SW_HIDE
Definition: winuser.h:762
HWND hWnd
Definition: settings.c:17
LONG top
Definition: windef.h:307
LONG left
Definition: windef.h:306
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
LONG right
Definition: windef.h:308
#define FALSE
Definition: types.h:117
long LONG
Definition: pedump.c:60
#define SW_SHOW
Definition: winuser.h:769
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
#define IDC_COPY
Definition: resource.h:17
int WINAPI GetSystemMetrics(_In_ int)
SETTINGS Settings
Definition: charmap.c:26
BOOL WINAPI MoveWindow(_In_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ BOOL)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
unsigned int UINT
Definition: ndis.h:50
HWND hCharmapDlg
Definition: charmap.c:22
#define SM_CYFULLSCREEN
Definition: winuser.h:968
LONG bottom
Definition: windef.h:309
#define SM_CXFULLSCREEN
Definition: winuser.h:967
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
HWND hAdvancedDlg
Definition: charmap.c:21

Referenced by CharMapDlgProc(), and PanelOnCreate().

◆ CharMapDlgProc()

static INT_PTR CALLBACK CharMapDlgProc ( HWND  hDlg,
UINT  Message,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 393 of file charmap.c.

397 {
398  switch(Message)
399  {
400  case WM_INITDIALOG:
401  {
402  DWORD evMask;
403 #ifdef REMOVE_ADVANCED
404  HWND hAdv;
405 #endif
406 
408  IDC_FONTCOMBO));
409 
410  ChangeMapFont(hDlg);
411 
412  // Configure Richedit control for sending notification changes.
413  evMask = SendDlgItemMessage(hDlg, IDC_TEXTBOX, EM_GETEVENTMASK, 0, 0);
414  evMask |= ENM_CHANGE;
416 #ifdef REMOVE_ADVANCED
417  hAdv = GetDlgItem(hDlg, IDC_CHECK_ADVANCED);
418  ShowWindow(hAdv, SW_HIDE);
419 #endif
420  return TRUE;
421  }
422 
423  case WM_COMMAND:
424  {
425  switch(LOWORD(wParam))
426  {
427  case IDC_FONTMAP:
428  switch (HIWORD(wParam))
429  {
430  case FM_SETCHAR:
432  break;
433  }
434  break;
435 
436  case IDC_FONTCOMBO:
437  if (HIWORD(wParam) == CBN_SELCHANGE)
438  {
439  ChangeMapFont(hDlg);
440  }
441  break;
442 
443  case IDC_SELECT:
444  AddCharToSelection(hDlg, 0);
445  break;
446 
447  case IDC_TEXTBOX:
448  switch (HIWORD(wParam)) {
449  case EN_CHANGE:
450  if (GetWindowTextLength(GetDlgItem(hDlg, IDC_TEXTBOX)) == 0)
452  else
454  break;
455  }
456  break;
457 
458  case IDC_COPY:
459  CopyCharacters(hDlg);
460  break;
461 #ifndef REMOVE_ADVANCED
462  case IDC_CHECK_ADVANCED:
463  UpdateSettings(hDlg);
464  ChangeView(GetParent(hDlg));
465  break;
466 #endif
467  }
468  }
469  break;
470 
471  default:
472  break;
473  }
474 
475  return FALSE;
476 }
#define EM_GETEVENTMASK
Definition: richedit.h:92
#define IDC_CHECK_ADVANCED
Definition: resource.h:26
#define IDC_TEXTBOX
Definition: resource.h:15
#define TRUE
Definition: types.h:120
#define SW_HIDE
Definition: winuser.h:762
static void ChangeView(HWND hWnd)
Definition: charmap.c:323
#define SendDlgItemMessage
Definition: winuser.h:5817
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
WPARAM wParam
Definition: combotst.c:138
static VOID FillFontStyleComboList(HWND hwndCombo)
Definition: charmap.c:126
#define FALSE
Definition: types.h:117
static void CopyCharacters(HWND hDlg)
Definition: charmap.c:203
LONG_PTR LPARAM
Definition: windef.h:208
static void UpdateSettings(HWND hDlg)
Definition: charmap.c:295
#define EM_SETEVENTMASK
Definition: richedit.h:102
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
#define IDC_COPY
Definition: resource.h:17
unsigned long DWORD
Definition: ntddk_ex.h:95
CHAR Message[80]
Definition: alive.c:5
#define ENM_CHANGE
Definition: richedit.h:468
#define WM_COMMAND
Definition: winuser.h:1722
#define IDC_FONTCOMBO
Definition: resource.h:12
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
VOID ChangeMapFont(HWND hDlg)
Definition: charmap.c:162
#define FM_SETCHAR
Definition: precomp.h:24
HWND WINAPI GetParent(_In_ HWND)
#define CBN_SELCHANGE
Definition: winuser.h:1961
#define IDC_SELECT
Definition: resource.h:16
#define HIWORD(l)
Definition: typedefs.h:247
#define GetWindowTextLength
Definition: winuser.h:5774
#define WM_INITDIALOG
Definition: winuser.h:1721
LPARAM lParam
Definition: combotst.c:139
#define LOWORD(l)
Definition: pedump.c:82
static VOID AddCharToSelection(HWND hDlg, WCHAR ch)
Definition: charmap.c:251
#define IDC_FONTMAP
Definition: resource.h:14
#define EN_CHANGE
Definition: winuser.h:2004

Referenced by PanelOnCreate().

◆ CopyCharacters()

static void CopyCharacters ( HWND  hDlg)
static

Definition at line 203 of file charmap.c.

204 {
205  HWND hText = GetDlgItem(hDlg, IDC_TEXTBOX);
206  DWORD dwStart, dwEnd;
207 
208  // Acquire selection limits
209  SendMessage(hText, EM_GETSEL, (WPARAM)&dwStart, (LPARAM)&dwEnd);
210 
211  // Test if the whose text is unselected
212  if(dwStart == dwEnd) {
213 
214  // Select the whole text
215  SendMessageW(hText, EM_SETSEL, 0, -1);
216 
217  // Copy text
218  SendMessageW(hText, WM_COPY, 0, 0);
219 
220  // Restore previous values
221  SendMessageW(hText, EM_SETSEL, (WPARAM)dwStart, (LPARAM)dwEnd);
222 
223  } else {
224 
225  // Copy text
226  SendMessageW(hText, WM_COPY, 0, 0);
227  }
228 }
#define IDC_TEXTBOX
Definition: resource.h:15
UINT_PTR WPARAM
Definition: windef.h:207
#define EM_GETSEL
Definition: winuser.h:1979
#define WM_COPY
Definition: winuser.h:1844
LONG_PTR LPARAM
Definition: windef.h:208
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
#define EM_SETSEL
Definition: winuser.h:2000
unsigned long DWORD
Definition: ntddk_ex.h:95
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define SendMessage
Definition: winuser.h:5818

Referenced by CharMapDlgProc().

◆ EnumFontNames()

static int CALLBACK EnumFontNames ( ENUMLOGFONTEXW lpelfe,
NEWTEXTMETRICEXW lpntme,
DWORD  FontType,
LPARAM  lParam 
)
static

Definition at line 81 of file charmap.c.

85 {
86  HWND hwndCombo = (HWND)lParam;
87  LPWSTR pszName = lpelfe->elfLogFont.lfFaceName;
88 
89  /* Skip rotated font */
90  if(pszName[0] == L'@') return 1;
91 
92  /* make sure font doesn't already exist in our list */
93  if(SendMessageW(hwndCombo,
95  0,
96  (LPARAM)pszName) == CB_ERR)
97  {
98  INT idx;
99  BOOL fFixed;
100  BOOL fTrueType;
101 
102  /* add the font */
103  idx = (INT)SendMessageW(hwndCombo,
104  CB_ADDSTRING,
105  0,
106  (LPARAM)pszName);
107 
108  /* record the font's attributes (Fixedwidth and Truetype) */
109  fFixed = (lpelfe->elfLogFont.lfPitchAndFamily & FIXED_PITCH) ? TRUE : FALSE;
110  fTrueType = (lpelfe->elfLogFont.lfOutPrecision == OUT_STROKE_PRECIS) ? TRUE : FALSE;
111 
112  /* store this information in the list-item's userdata area */
113  SendMessageW(hwndCombo,
115  idx,
116  MAKEWPARAM(fFixed, fTrueType));
117  }
118 
119  return 1;
120 }
#define CB_SETITEMDATA
Definition: winuser.h:1948
#define MAKEWPARAM(l, h)
Definition: winuser.h:3984
BYTE lfPitchAndFamily
Definition: dimm.idl:71
#define TRUE
Definition: types.h:120
#define INT
Definition: polytest.cpp:20
HANDLE HWND
Definition: compat.h:19
int32_t INT
Definition: typedefs.h:58
#define FALSE
Definition: types.h:117
unsigned int BOOL
Definition: ntddk_ex.h:94
#define FIXED_PITCH
Definition: wingdi.h:443
unsigned int idx
Definition: utils.c:41
#define CB_ADDSTRING
Definition: winuser.h:1918
LONG_PTR LPARAM
Definition: windef.h:208
#define CB_ERR
Definition: winuser.h:2410
BYTE lfOutPrecision
Definition: dimm.idl:68
#define OUT_STROKE_PRECIS
Definition: wingdi.h:417
static const WCHAR L[]
Definition: oid.c:1250
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
LOGFONTW elfLogFont
Definition: wingdi.h:2701
WCHAR lfFaceName[LF_FACESIZE]
Definition: dimm.idl:72
WCHAR * LPWSTR
Definition: xmlstorage.h:184
LPARAM lParam
Definition: combotst.c:139
#define CB_FINDSTRINGEXACT
Definition: winuser.h:1922

Referenced by FillFontStyleComboList().

◆ FillCharacterSetComboList()

static VOID FillCharacterSetComboList ( HWND  hwndCombo)
static

Definition at line 30 of file charmap.c.

31 {
32  WCHAR szCharSetText[256];
33  LPWSTR trimmedName;
34  CPINFOEXW cpInfo;
35  INT i;
36 
37  if (LoadStringW(hInstance, IDS_UNICODE, szCharSetText, SIZEOF(szCharSetText)))
38  {
39  SendMessageW(hwndCombo,
41  0,
42  (LPARAM)szCharSetText);
43  }
44 
45  for (i = 0; i < SIZEOF(codePages); i++)
46  {
47  if (GetCPInfoExW(codePages[i], 0, &cpInfo))
48  {
49  trimmedName = wcschr(cpInfo.CodePageName, L'(');
50  if (!trimmedName)
51  trimmedName = cpInfo.CodePageName;
52 
53  SendMessageW(hwndCombo,
55  0,
56  (LPARAM)trimmedName);
57  }
58  }
59 
60  SendMessageW(hwndCombo, CB_SETCURSEL, 0, 0);
61 }
#define IDS_UNICODE
Definition: resource.h:31
WCHAR CodePageName[MAX_PATH]
Definition: winnls.h:596
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
int32_t INT
Definition: typedefs.h:58
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
HINSTANCE hInstance
Definition: charmap.c:20
#define SIZEOF(_ar)
Definition: calc.h:97
#define CB_ADDSTRING
Definition: winuser.h:1918
LONG_PTR LPARAM
Definition: windef.h:208
_CONST_RETURN wchar_t *__cdecl wcschr(_In_z_ const wchar_t *_Str, wchar_t _Ch)
__wchar_t WCHAR
Definition: xmlstorage.h:180
static const WCHAR L[]
Definition: oid.c:1250
#define CB_SETCURSEL
Definition: winuser.h:1943
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI GetCPInfoExW(UINT CodePage, DWORD dwFlags, LPCPINFOEXW lpCPInfoEx)
Definition: nls.c:1969
static const UINT codePages[]
Definition: precomp.h:29
WCHAR * LPWSTR
Definition: xmlstorage.h:184

Referenced by PanelOnCreate().

◆ FillFontStyleComboList()

static VOID FillFontStyleComboList ( HWND  hwndCombo)
static

Definition at line 126 of file charmap.c.

127 {
128  HDC hdc;
129  LOGFONTW lf;
130 
131  /* FIXME: for fun, draw each font in its own style */
133  SendMessageW(hwndCombo,
134  WM_SETFONT,
135  (WPARAM)hFont,
136  0);
137 
138  ZeroMemory(&lf, sizeof(lf));
140 
141  hdc = GetDC(hwndCombo);
142 
143  /* store the list of fonts in the combo */
145  &lf,
147  (LPARAM)hwndCombo,
148  0);
149 
150  ReleaseDC(hwndCombo,
151  hdc);
152 
153  SendMessageW(hwndCombo,
154  CB_SETCURSEL,
155  0,
156  0);
157 }
HGDIOBJ WINAPI GetStockObject(_In_ int)
HDC WINAPI GetDC(_In_opt_ HWND)
int WINAPI EnumFontFamiliesExW(_In_ HDC, _In_ PLOGFONTW, _In_ FONTENUMPROCW, _In_ LPARAM, _In_ DWORD)
BYTE lfCharSet
Definition: dimm.idl:67
static HDC
Definition: imagelist.c:92
#define ZeroMemory
Definition: winbase.h:1648
UINT_PTR WPARAM
Definition: windef.h:207
#define DEFAULT_CHARSET
Definition: wingdi.h:383
HFONT hFont
Definition: main.c:53
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
LONG_PTR LPARAM
Definition: windef.h:208
static int CALLBACK EnumFontNames(ENUMLOGFONTEXW *lpelfe, NEWTEXTMETRICEXW *lpntme, DWORD FontType, LPARAM lParam)
Definition: charmap.c:81
#define DEFAULT_GUI_FONT
Definition: wingdi.h:908
HDC hdc
Definition: main.c:9
#define CB_SETCURSEL
Definition: winuser.h:1943
FARPROC FONTENUMPROCW
Definition: wingdi.h:2896
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define WM_SETFONT
Definition: winuser.h:1632
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)

Referenced by CharMapDlgProc(), and MainWndCreateToolbarClient().

◆ FillGroupByComboList()

static VOID FillGroupByComboList ( HWND  hwndCombo)
static

Definition at line 65 of file charmap.c.

66 {
67  WCHAR szAllText[256];
68 
69  if (LoadStringW(hInstance, IDS_ALL, szAllText, SIZEOF(szAllText)))
70  {
71  SendMessageW(hwndCombo, CB_ADDSTRING, 0, (LPARAM)szAllText);
72  }
73 
74  SendMessageW(hwndCombo, CB_SETCURSEL, 0, 0);
75 }
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
HINSTANCE hInstance
Definition: charmap.c:20
#define SIZEOF(_ar)
Definition: calc.h:97
#define CB_ADDSTRING
Definition: winuser.h:1918
LONG_PTR LPARAM
Definition: windef.h:208
#define IDS_ALL
Definition: resource.h:32
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define CB_SETCURSEL
Definition: winuser.h:1943
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)

Referenced by PanelOnCreate().

◆ GetFontMetrics()

static BYTE GetFontMetrics ( HWND  hWnd,
HFONT  hFont 
)
static

Definition at line 233 of file charmap.c.

234 {
235  TEXTMETRIC tmFont;
236  HGDIOBJ hOldObj;
237  HDC hDC;
238 
239  hDC = GetDC(hWnd);
240  hOldObj = SelectObject(hDC, hFont);
241  GetTextMetrics(hDC, &tmFont);
242  SelectObject(hDC, hOldObj);
243  ReleaseDC(hWnd, hDC);
244 
245  return tmFont.tmCharSet;
246 }
HDC WINAPI GetDC(_In_opt_ HWND)
static HDC
Definition: imagelist.c:92
HWND hWnd
Definition: settings.c:17
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
Definition: dc.c:1499
#define GetTextMetrics
Definition: wingdi.h:4473
HFONT hFont
Definition: main.c:53
BYTE tmCharSet
Definition: wingdi.h:2379
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
static HDC hDC
Definition: 3dtext.c:33

Referenced by AddCharToSelection().

◆ InitInstance()

static HWND InitInstance ( HINSTANCE  hInst)
static

Definition at line 607 of file charmap.c.

608 {
609  WCHAR szClass[] = L"CharMap";
610  WCHAR szTitle[256];
611  WNDCLASSEXW wc;
612  HWND hWnd;
613 
615 
618  IMAGE_ICON,
619  16,
620  16,
621  0);
622 
625  IMAGE_ICON,
626  32,
627  32,
628  0);
629 
630  // Create workspace
631  ZeroMemory(&wc, sizeof(wc));
632 
633  wc.cbSize = sizeof(wc);
635  wc.hInstance = hInst;
636  wc.hIcon = hBgIcon;
639  wc.lpszMenuName = NULL;
640  wc.lpszClassName = szClass;
641  wc.hIconSm = hSmIcon;
642 
643  RegisterClassExW(&wc);
644 
646  szClass,
647  szTitle,
653  NULL,
654  NULL,
655  hInst,
656  NULL);
657 
658  if (hWnd != NULL)
659  {
660  LoadSettings();
663  }
664 
665  return hWnd;
666 }
HGDIOBJ WINAPI GetStockObject(_In_ int)
#define IDI_ICON
Definition: resource.h:5
#define MAKEINTRESOURCE
Definition: winuser.h:591
#define IMAGE_ICON
Definition: winuser.h:212
#define NULL_BRUSH
Definition: wingdi.h:900
HICON hSmIcon
Definition: charmap.c:24
BOOL WINAPI UpdateWindow(_In_ HWND)
HWND hWnd
Definition: settings.c:17
#define ZeroMemory
Definition: winbase.h:1648
HICON hIcon
Definition: winuser.h:3197
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
#define CreateWindowW(a, b, c, d, e, f, g, h, i, j, k)
Definition: winuser.h:4291
ATOM WINAPI RegisterClassExW(_In_ CONST WNDCLASSEXW *)
HINSTANCE hInstance
Definition: charmap.c:20
LPCWSTR lpszMenuName
Definition: winuser.h:3200
#define SIZEOF(_ar)
Definition: calc.h:97
void LoadSettings(void)
Definition: settings.c:53
#define CW_USEDEFAULT
Definition: winuser.h:225
smooth NULL
Definition: ftsmooth.c:416
#define SW_SHOW
Definition: winuser.h:769
LPCWSTR lpszClassName
Definition: winuser.h:3201
#define WS_CAPTION
Definition: pedump.c:624
static LRESULT CALLBACK PanelWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
Definition: charmap.c:574
#define IDS_TITLE
Definition: resource.h:30
__wchar_t WCHAR
Definition: xmlstorage.h:180
HBRUSH hbrBackground
Definition: winuser.h:3199
UINT cbSize
Definition: winuser.h:3191
HICON hBgIcon
Definition: charmap.c:25
TCHAR szTitle[MAX_LOADSTRING]
Definition: magnifier.c:35
HINSTANCE hInstance
Definition: winuser.h:3196
static const WCHAR L[]
Definition: oid.c:1250
HCURSOR hCursor
Definition: winuser.h:3198
#define LoadCursor
Definition: winuser.h:5787
WNDPROC lpfnWndProc
Definition: winuser.h:3193
HINSTANCE hInst
Definition: dxdiag.c:13
#define WS_MINIMIZEBOX
Definition: pedump.c:631
HICON hIconSm
Definition: winuser.h:3202
#define IDC_ARROW
Definition: winuser.h:682
#define LoadImage
Definition: winuser.h:5790
#define WS_SYSMENU
Definition: pedump.c:629

Referenced by wWinMain().

◆ PanelOnCreate()

static int PanelOnCreate ( HWND  hWnd,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 520 of file charmap.c.

521 {
522  HMENU hSysMenu;
523  WCHAR lpAboutText[256];
524 
527  hWnd,
529 
530  // For now, the Help push button is disabled because of lacking of HTML Help support
532 
533 #ifndef REMOVE_ADVANCED
536  hWnd,
538 
540 
544 #endif
546  NULL,
548  0, 0, 0, 0,
549  hWnd,
551  hInstance,
552  NULL);
553 
554  // Set the status bar for multiple parts output
556 
557  ChangeView(hWnd);
558 
559  hSysMenu = GetSystemMenu(hWnd, FALSE);
560 
561  if (hSysMenu != NULL)
562  {
563  if (LoadStringW(hInstance, IDS_ABOUT, lpAboutText, SIZEOF(lpAboutText)))
564  {
565  AppendMenuW(hSysMenu, MF_SEPARATOR, 0, NULL);
566  AppendMenuW(hSysMenu, MF_STRING, ID_ABOUT, lpAboutText);
567  }
568  }
569 
570  return 0;
571 }
HWND hStatusWnd
Definition: charmap.c:23
#define MAKEINTRESOURCE
Definition: winuser.h:591
static INT_PTR CALLBACK CharMapDlgProc(HWND hDlg, UINT Message, WPARAM wParam, LPARAM lParam)
Definition: charmap.c:393
#define CreateWindow
Definition: winuser.h:5729
static VOID FillGroupByComboList(HWND hwndCombo)
Definition: charmap.c:65
#define MF_STRING
Definition: winuser.h:138
#define IDC_CMHELP
Definition: resource.h:13
HWND hWnd
Definition: settings.c:17
UINT_PTR WPARAM
Definition: windef.h:207
static void ChangeView(HWND hWnd)
Definition: charmap.c:323
#define WS_CHILD
Definition: pedump.c:617
#define STATUSCLASSNAME
Definition: commctrl.h:1935
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
#define IDC_COMBO_CHARSET
Definition: resource.h:21
BOOL WINAPI AppendMenuW(_In_ HMENU, _In_ UINT, _In_ UINT_PTR, _In_opt_ LPCWSTR)
#define IDS_ABOUT
Definition: resource.h:29
HINSTANCE hInstance
Definition: charmap.c:20
#define SIZEOF(_ar)
Definition: calc.h:97
#define FALSE
Definition: types.h:117
#define IDD_STATUSBAR
Definition: resource.h:9
#define SB_SIMPLE
Definition: commctrl.h:1954
HMENU WINAPI GetSystemMenu(_In_ HWND, _In_ BOOL)
smooth NULL
Definition: ftsmooth.c:416
#define MF_SEPARATOR
Definition: winuser.h:137
LONG_PTR LPARAM
Definition: windef.h:208
#define ID_ABOUT
Definition: charmap.c:18
#define IDC_COMBO_GROUPBY
Definition: resource.h:22
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
__wchar_t WCHAR
Definition: xmlstorage.h:180
static VOID FillCharacterSetComboList(HWND hwndCombo)
Definition: charmap.c:30
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
#define IDD_CHARMAP
Definition: resource.h:7
static INT_PTR CALLBACK AdvancedDlgProc(HWND hDlg, UINT Message, WPARAM wParam, LPARAM lParam)
Definition: charmap.c:481
HWND hCharmapDlg
Definition: charmap.c:22
#define SendMessage
Definition: winuser.h:5818
#define IDC_BUTTON_SEARCH
Definition: resource.h:23
HWND hAdvancedDlg
Definition: charmap.c:21
#define WS_VISIBLE
Definition: pedump.c:620
#define IDD_ADVANCED
Definition: resource.h:10
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:60
#define CreateDialog
Definition: winuser.h:5724

Referenced by PanelWndProc().

◆ PanelWndProc()

static LRESULT CALLBACK PanelWndProc ( HWND  hWnd,
UINT  msg,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 574 of file charmap.c.

575 {
576  switch (msg) {
577  case WM_CREATE:
578  return PanelOnCreate(hWnd, wParam, lParam);
579 
580  case WM_CLOSE:
582  return 0;
583 
584  case WM_SIZE:
586  break;
587 
588  case WM_DESTROY:
589  SaveSettings();
590  PostQuitMessage(0);
591  return 0;
592 
593  case WM_SYSCOMMAND:
594  switch(wParam) {
595  case ID_ABOUT:
597  break;
598  }
599  break;
600 
601  }
602 
603  return DefWindowProc(hWnd, msg, wParam, lParam);
604 }
HWND hStatusWnd
Definition: charmap.c:23
VOID ShowAboutDlg(HWND hWndParent)
Definition: about.c:77
HWND hWnd
Definition: settings.c:17
BOOL WINAPI DestroyWindow(_In_ HWND)
WPARAM wParam
Definition: combotst.c:138
void SaveSettings(void)
Definition: settings.c:115
#define ID_ABOUT
Definition: charmap.c:18
#define DefWindowProc
Definition: ros2win.h:31
#define WM_DESTROY
Definition: winuser.h:1591
#define WM_SIZE
Definition: winuser.h:1593
#define WM_CLOSE
Definition: winuser.h:1603
static int PanelOnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
Definition: charmap.c:520
#define msg(x)
Definition: auth_time.c:54
#define SendMessage
Definition: winuser.h:5818
#define WM_CREATE
Definition: winuser.h:1590
#define WM_SYSCOMMAND
Definition: winuser.h:1723
LPARAM lParam
Definition: combotst.c:139
__analysis_noreturn void WINAPI PostQuitMessage(_In_ int)

Referenced by InitInstance().

◆ UpdateSettings()

static void UpdateSettings ( HWND  hDlg)
static

Definition at line 295 of file charmap.c.

296 {
297  if (hDlg == hCharmapDlg)
298  {
301 
302  }
303 
304  if (hDlg == hAdvancedDlg)
305  {
306  }
307 }
BOOL IsAdvancedView
Definition: precomp.h:71
#define IDC_CHECK_ADVANCED
Definition: resource.h:26
#define SendDlgItemMessage
Definition: winuser.h:5817
#define BM_GETCHECK
Definition: winuser.h:1900
SETTINGS Settings
Definition: charmap.c:26
HWND hCharmapDlg
Definition: charmap.c:22
HWND hAdvancedDlg
Definition: charmap.c:21

Referenced by CharMapDlgProc().

◆ UpdateStatusBar()

VOID UpdateStatusBar ( WCHAR  wch)

Definition at line 311 of file charmap.c.

312 {
314  WCHAR szDesc[MAX_PATH];
315 
316  GetUName(wch, szDesc);
317  wsprintfW(buff, L"U+%04X: %s", wch, szDesc);
319 }
int WINAPIV wsprintfW(_Out_ LPWSTR, _In_ _Printf_format_string_ LPCWSTR,...)
HWND hStatusWnd
Definition: charmap.c:23
LONG_PTR LPARAM
Definition: windef.h:208
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define MAX_PATH
Definition: compat.h:34
static const WCHAR L[]
Definition: oid.c:1250
#define SB_SETTEXT
Definition: commctrl.h:1945
int WINAPI GetUName(IN WORD wCharCode, OUT LPWSTR lpBuf)
Definition: getuname.c:17
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
static unsigned char buff[32768]
Definition: fatten.c:17

Referenced by DeckClickProc(), LrgCellWndProc(), NewGame(), RowStackClickProc(), RowStackDropProc(), SuitStackAddProc(), and SuitStackDropProc().

◆ wWinMain()

INT WINAPI wWinMain ( HINSTANCE  hInstance,
HINSTANCE  hPrevInstance,
LPWSTR  lpCmdLine,
int  nShowCmd 
)

This file has no copyright assigned and is placed in the Public Domain. This file is part of the w64 mingw-runtime package. No warranty is given; refer to the file DISCLAIMER.PD within this package.

Definition at line 670 of file charmap.c.

674 {
676  INT Ret = 1;
677  HMODULE hRichEd20;
678  MSG Msg;
679 
680  hInstance = hInst;
681 
682  /* Mirroring code for the titlebar */
683  switch (GetUserDefaultUILanguage())
684  {
687  break;
688 
689  default:
690  break;
691  }
692 
693  iccx.dwSize = sizeof(INITCOMMONCONTROLSEX);
694  iccx.dwICC = ICC_TAB_CLASSES;
695  InitCommonControlsEx(&iccx);
696 
698  {
699  hRichEd20 = LoadLibraryW(L"RICHED20.DLL");
700 
701  if (hRichEd20 != NULL)
702  {
704 
705  for (;;)
706  {
707  if (GetMessage(&Msg, NULL, 0, 0) <= 0)
708  {
709  Ret = Msg.wParam;
710  break;
711  }
712 
715  }
716 
717  FreeLibrary(hRichEd20);
718  }
720  }
721 
722  return Ret;
723 }
#define DispatchMessage
Definition: winuser.h:5740
LANGID WINAPI GetUserDefaultUILanguage(void)
Definition: lang.c:806
BOOL WINAPI TranslateMessage(_In_ const MSG *)
#define LAYOUT_RTL
Definition: wingdi.h:1370
TW_UINT32 TW_UINT16 TW_UINT16 MSG
Definition: twain.h:1827
#define SUBLANG_DEFAULT
Definition: nls.h:168
struct @1607 Msg[]
struct tagINITCOMMONCONTROLSEX INITCOMMONCONTROLSEX
int32_t INT
Definition: typedefs.h:58
#define LANG_HEBREW
Definition: nls.h:67
static HWND InitInstance(HINSTANCE hInst)
Definition: charmap.c:607
HINSTANCE hInstance
Definition: charmap.c:20
VOID UnregisterMapClasses(HINSTANCE hInstance)
Definition: map.c:741
#define LoadLibraryW(x)
Definition: compat.h:495
smooth NULL
Definition: ftsmooth.c:416
BOOL WINAPI SetProcessDefaultLayout(DWORD dwDefaultLayout)
Definition: window.c:1720
#define FreeLibrary(x)
Definition: compat.h:496
static const WCHAR L[]
Definition: oid.c:1250
BOOL WINAPI InitCommonControlsEx(const INITCOMMONCONTROLSEX *lpInitCtrls)
Definition: commctrl.c:893
BOOL RegisterMapClasses(HINSTANCE hInstance)
Definition: map.c:715
HINSTANCE hInst
Definition: dxdiag.c:13
#define GetMessage
Definition: winuser.h:5765
#define MAKELANGID(p, s)
Definition: nls.h:15
#define ICC_TAB_CLASSES
Definition: commctrl.h:61

Variable Documentation

◆ hAdvancedDlg

HWND hAdvancedDlg

Definition at line 21 of file charmap.c.

Referenced by AdvancedDlgProc(), ChangeView(), PanelOnCreate(), and UpdateSettings().

◆ hBgIcon

HICON hBgIcon

Definition at line 25 of file charmap.c.

Referenced by InitInstance().

◆ hCharmapDlg

HWND hCharmapDlg

◆ hInstance

HINSTANCE hInstance

Definition at line 20 of file charmap.c.

Referenced by ATL::_AtlGetStringResourceImage(), _GetClassAtom(), _GetClassAtomA(), _GetWndproc(), _GetWndprocA(), _RegisterClass(), _RegisterClassA(), _tWinMain(), AboutDialogProc(), AddTextButton(), AllocAndLoadString(), ANIMATE_OpenA(), ANIMATE_OpenW(), AssertFail(), ATL::AtlGetStringResourceImage(), Bitmap::Bitmap(), ChangeListViewText(), ClassTest(), ClearUserApiHook(), ATL::CAtlModule::CommonInitRegistrar(), Confirm(), ConResMsgPrintfEx(), ConResMsgPrintfExV(), ConResPagingEx(), ConResPrintfEx(), ConResPrintfExV(), ConResPutsEx(), CreateDialogIndirectParamA(), CreateDialogIndirectParamAorW(), CreateDialogIndirectParamW(), CreateDialogParamA(), CreateDialogParamTest(), CreateDialogParamW(), CreateDialogProc(), CreateEditWindow(), CreateEventDetailsCtrl(), CreateFontBoxesWindow(), CreateFontWindow(), CreateHelpDialogProc(), CreateImageEditWindow(), CreateLargeCell(), CreateListView(), CreateListViewColumns(), CreateMappedBitmap(), CreateMDIWindowA(), CreateMDIWindowW(), CreatePerfWindows(), CreatePropSheet(), CreateStandardProfile(), CreateStarBitmap(), CreateStopDependsDialog(), CreateSwitcherWindow(), CreateTestWindow(), CreateTreeListColumns(), CreateWindowExA(), CreateWindowExW(), CRYPT_FormatAltNameEntry(), CRYPT_FormatAuthorityInfoAccess(), CRYPT_FormatBasicConstraints2(), CRYPT_FormatCertIssuer(), CRYPT_FormatCRLDistPoints(), CRYPT_FormatEnhancedKeyUsage(), CRYPT_FormatHexStringWithPrefix(), CRYPT_FormatKeyUsage(), CRYPT_FormatNetscapeCertType(), CRYPT_FormatReason(), CRYPT_FormatSpcFinancialCriteria(), D3DTests(), DDTests(), DECLARE_INTERFACE_(), DeleteDialogProc(), device_tests(), DevInstallW(), DialogBoxIndirectParamA(), DialogBoxIndirectParamAorW(), DialogBoxIndirectParamW(), DialogBoxParamA(), DialogBoxParamW(), Display_InitClass(), DllMain(), DllRegisterServer(), DoCreate(), Window::DoCreateMainWnd(), DoDeleteService(), Window::DoRegisterClass(), DrawTextFromResource(), DuplicateIcon(), EditCurrentGlyph(), EnumJoysticks(), error(), EventLogProperties(), explorer_main(), ExtractIconA(), ExtractIconW(), ExtractIconWrapW(), FillCharacterSetComboList(), FillGroupByComboList(), FilterInstanceClose(), FilterInstanceCreate(), FilterInstanceGetInformation(), FloatToolbarCreateColorsGui(), FloatToolbarCreateHistoryGui(), FloatToolbarCreateToolsGui(), ForceResetUserApiHook(), FormatString(), Bitmap::FromResource(), GdipCreateBitmapFromResource(), get_print_file_filter(), GetClassInfoA(), GetClassInfoExA(), GetClassInfoExW(), GetClassInfoW(), GetPredefinedClipboardFormatName(), GetUserDiskFreeSpace(), GPNotificationThreadProc(), if(), ImageEditWndProc(), ExplorerGlobals::init(), init_oid_info(), init_preview(), InitApplication(), InitDialog(), InitEditGlyphWndClasses(), InitEditWindowImpl(), InitEditWnd(), InitFloatWndClass(), InitFontBoxesWndClass(), InitFontWndClass(), Initialize(), InitializeAtlModule(), InitializeProfiles(), InitImageEditWindowImpl(), InitImageList(), InitInstance(), InitInstance_wave(), InitListViewImage(), InitLogo(), InitPropSheetPage(), InitRecoveryPage(), InitToolbox(), InitUserApiHook(), InstallScreenSaverA(), InternetTransport_RegisterClass(), InternetTransport_UnregisterClass(), IntFindClass(), IntGetAndReferenceClass(), IntGetClassAtom(), joystick_tests(), K32LoadStringExW(), K32LoadStringW(), keyboard_tests(), LengthOfStrResource(), lineInitialize(), lineInitializeExA(), lineInitializeExW(), load_string(), LoadAcceleratorsA(), LoadAcceleratorsW(), LoadAllocStringW(), LoadAndFormatString(), LoadAndFormatStringsCat(), LoadBitmapA(), LoadBitmapW(), LoadConditionalResourceStringEx(), LoadCursorA(), LoadCursorW(), ATL::CImage::LoadFromResource(), LoadIconA(), LoadIconW(), LoadMenuA(), LoadMenuW(), LoadPopupMenu(), LoadResourceStringEx(), ATL::CStringT< BaseType, StringTraits >::LoadString(), LocalesEnumProc(), LsapGetResourceStringLengthEx(), LsapInitSids(), LsapLoadString(), LsapLoadStringEx(), LsarpLookupPrivilegeDisplayName(), MainWndProc(), MCIWndCreateA(), MCIWndCreateW(), MessageBoxRes(), mouse_tests(), MyRegisterClass(), MyRegisterClass_wave(), NewDocSelDlgProc(), NtUserCreateWindowEx(), NtUserGetClassInfo(), NtUserGetWOWClass(), NtUserUnregisterClass(), oid_init_localizednames(), OnCommandAbout(), OnInitDialog(), OpenRDPConnectDialog(), PanelOnCreate(), ParallelPortPropPageProvider(), phoneInitialize(), phoneInitializeExA(), phoneInitializeExW(), PrintAllJobs(), PrintJobDetails(), promptdisk_init(), PropertySheetDialog::PropertySheetDialog(), PropSheetPage::PropSheetPage(), PropSheetThread(), RegisterBlankClass(), RegisterCheckListControl(), RegisterConWndClass(), RegisterHexEditorClass(), RegisterMapClasses(), RegisterMonitorSelectionControl(), RegisterMonthCalControl(), RegisterPreviewControl(), RegisterTestDialog(), RegisterWinPrevClass(), ResetProgressDialog(), ResourceMessageBox(), RetrieveClipboardFormatName(), RichEditOleCallback_GetContextMenu(), RtlLoadUnicodeString(), RunActionWithProgress(), RunLiveCD(), SampInitializeSAM(), SampLoadString(), SedDiscretionaryAclEditor(), SedSystemAclEditor(), SedTakeOwnership(), SerialPortPropPageProvider(), CProgressDialog::SetAnimation(), SetServiceStatusText(), SetStartupType(), SetupControls(), SetupDiGetClassImageListExW(), SetupDiLoadClassIcon(), SetUpMDIChildWindowClass(), SetupPromptForDiskW(), ShellMessageBoxA(), ShellMessageBoxW(), ShellMessageBoxWrapW(), ShimLib_Init(), ShowAboutDlg(), START_TEST(), StartD3DTest(), StartDDTest(), StartWithDesktop(), STATIC_LoadIconA(), STATIC_LoadIconW(), StatusBarLoadAndFormatString(), CCharMapWindow::StatusBarLoadString(), CDeviceManager::StatusBarLoadString(), StatusBarLoadString(), taskdialog_add_control(), TbdCreateToolbarWnd(), TbdInitializeDocks(), TbdInitImpl(), TbdUninitImpl(), TdbInsertToolbar(), test_capture_4(), test_enum_feedback(), test_ime_processkey(), test_Input_unicode(), test_Input_whitebox(), test_menu_input(), test_pack_CREATESTRUCTA(), test_pack_CREATESTRUCTW(), test_pack_MSGBOXPARAMSA(), test_pack_MSGBOXPARAMSW(), test_pack_WNDCLASSA(), test_pack_WNDCLASSEXA(), test_pack_WNDCLASSEXW(), test_pack_WNDCLASSW(), TOOLBAR_AddStringA(), TOOLBAR_AddStringW(), TOOLBAR_LoadImages(), TreeListRegister(), TreeListUnregister(), TV1_AddDependantsToTree(), TV2_AddDependantsToTree(), U32LoadAccelerators(), UnInitEditGlyphWndClasses(), UninitEditWindowImpl(), UninitFloatWndImpl(), UnInitFontBoxesWndClass(), UnInitFontWndClass(), UninitImageEditWindowImpl(), UnregisterCheckListControl(), UnregisterClassA(), UnregisterClassW(), UnRegisterConWndClass(), UnregisterHexEditorClass(), UnregisterMapClasses(), UnregisterMonitorSelectionControl(), UnregisterMonthCalControl(), UnregisterPreviewControl(), UnRegisterWinPrevClass(), UpdateUsersShellFolderSettings(), User32CreateWindowEx(), UserGetClassInfo(), UserInstStubWrapperA(), UserInstStubWrapperW(), UserUnInstStubWrapperA(), UserUnInstStubWrapperW(), UserUnregisterClass(), warning(), WinMain(), and wWinMain().

◆ hSmIcon

HICON hSmIcon

Definition at line 24 of file charmap.c.

Referenced by InitInstance().

◆ hStatusWnd

◆ Settings