ReactOS  0.4.15-dev-5618-g8866b9d
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 17 of file charmap.c.

Function Documentation

◆ AddCharToSelection()

static VOID AddCharToSelection ( HWND  hDlg,
WCHAR  ch 
)
static

Definition at line 250 of file charmap.c.

251 {
252  HWND hMap = GetDlgItem(hDlg, IDC_FONTMAP);
253  HWND hText = GetDlgItem(hDlg, IDC_TEXTBOX);
254  HFONT hFont;
255  LOGFONT lFont;
256  CHARFORMAT cf;
257 
258  // Retrieve current character selected
259  if (ch == 0)
260  {
261  ch = (WCHAR) SendMessageW(hMap, FM_GETCHAR, 0, 0);
262  if (!ch)
263  return;
264  }
265 
266  // Retrieve current selected font
267  hFont = (HFONT)SendMessage(hMap, FM_GETHFONT, 0, 0);
268 
269  // Recover LOGFONT structure from hFont
270  if (!GetObject(hFont, sizeof(LOGFONT), &lFont))
271  return;
272 
273  // Recover font properties of Richedit control
274  ZeroMemory(&cf, sizeof(cf));
275  cf.cbSize = sizeof(cf);
277 
278  // Apply properties of the new font
279  cf.bCharSet = GetFontMetrics(hText, hFont);
280 
281  // Update font name
282  wcscpy(cf.szFaceName, lFont.lfFaceName);
283 
284  // Update font properties
286 
287  // Send selected character to Richedit
288  SendMessage(hText, WM_CHAR, (WPARAM)ch, 0);
289 }
static IClassFactory * cf
#define WM_CHAR
Definition: winuser.h:1707
#define IDC_TEXTBOX
Definition: resource.h:15
#define ZeroMemory
Definition: winbase.h:1670
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:4468
_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:5833
#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:232
#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 480 of file charmap.c.

484 {
485  switch(Message)
486  {
487  case WM_INITDIALOG:
488  return TRUE;
489 
490  case WM_COMMAND:
491  {
492  switch (LOWORD(wParam))
493  {
494  case IDC_COMBO_CHARSET:
495  if (HIWORD(wParam) == CBN_SELCHANGE)
496  {
498  CB_GETCURSEL,
499  0, 0);
502  idx, 0);
503 
505  }
506  break;
507  }
508  }
509 
510  default:
511  return FALSE;
512  }
513 
514  return FALSE;
515 }
#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:1933
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:1730
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
HWND hCharmapDlg
Definition: charmap.c:21
#define CBN_SELCHANGE
Definition: winuser.h:1969
#define HIWORD(l)
Definition: typedefs.h:247
HWND hAdvancedDlg
Definition: charmap.c:20
#define WM_INITDIALOG
Definition: winuser.h:1729
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 161 of file charmap.c.

162 {
163  HWND hCombo;
164  HWND hMap;
165  LPWSTR lpFontName;
166  INT Len;
167 
168  hCombo = GetDlgItem(hDlg, IDC_FONTCOMBO);
169 
170  Len = GetWindowTextLengthW(hCombo);
171 
172  if (Len != 0)
173  {
174  lpFontName = HeapAlloc(GetProcessHeap(),
175  0,
176  (Len + 1) * sizeof(WCHAR));
177 
178  if (lpFontName)
179  {
180  SendMessageW(hCombo,
181  WM_GETTEXT,
182  Len + 1,
183  (LPARAM)lpFontName);
184 
185  hMap = GetDlgItem(hDlg, IDC_FONTMAP);
186 
187  SendMessageW(hMap,
188  FM_SETFONT,
189  0,
190  (LPARAM)lpFontName);
191  }
192 
194  0,
195  lpFontName);
196  }
197 }
#define WM_GETTEXT
Definition: winuser.h:1608
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:736
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:735
#define IDC_FONTMAP
Definition: resource.h:14

Referenced by CharMapDlgProc(), and LoadSettings().

◆ ChangeView()

static void ChangeView ( HWND  hWnd)
static

Definition at line 322 of file charmap.c.

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

Referenced by CharMapDlgProc(), and PanelOnCreate().

◆ CharMapDlgProc()

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

Definition at line 392 of file charmap.c.

396 {
397  switch(Message)
398  {
399  case WM_INITDIALOG:
400  {
401  DWORD evMask;
402 #ifdef REMOVE_ADVANCED
403  HWND hAdv;
404 #endif
405 
407  IDC_FONTCOMBO));
408 
409  ChangeMapFont(hDlg);
410 
411  // Configure Richedit control for sending notification changes.
412  evMask = SendDlgItemMessage(hDlg, IDC_TEXTBOX, EM_GETEVENTMASK, 0, 0);
413  evMask |= ENM_CHANGE;
415 #ifdef REMOVE_ADVANCED
416  hAdv = GetDlgItem(hDlg, IDC_CHECK_ADVANCED);
417  ShowWindow(hAdv, SW_HIDE);
418 #endif
419  return TRUE;
420  }
421 
422  case WM_COMMAND:
423  {
424  switch(LOWORD(wParam))
425  {
426  case IDC_FONTMAP:
427  switch (HIWORD(wParam))
428  {
429  case FM_SETCHAR:
431  break;
432  }
433  break;
434 
435  case IDC_FONTCOMBO:
436  if (HIWORD(wParam) == CBN_SELCHANGE)
437  {
438  ChangeMapFont(hDlg);
439  }
440  break;
441 
442  case IDC_SELECT:
443  AddCharToSelection(hDlg, 0);
444  break;
445 
446  case IDC_TEXTBOX:
447  switch (HIWORD(wParam)) {
448  case EN_CHANGE:
449  if (GetWindowTextLength(GetDlgItem(hDlg, IDC_TEXTBOX)) == 0)
451  else
453  break;
454  }
455  break;
456 
457  case IDC_COPY:
458  CopyCharacters(hDlg);
459  break;
460 #ifndef REMOVE_ADVANCED
461  case IDC_CHECK_ADVANCED:
462  UpdateSettings(hDlg);
463  ChangeView(GetParent(hDlg));
464  break;
465 #endif
466  }
467  }
468  break;
469 
470  default:
471  break;
472  }
473 
474  return FALSE;
475 }
#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:322
#define SendDlgItemMessage
Definition: winuser.h:5832
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
WPARAM wParam
Definition: combotst.c:138
static VOID FillFontStyleComboList(HWND hwndCombo)
Definition: charmap.c:125
#define FALSE
Definition: types.h:117
static void CopyCharacters(HWND hDlg)
Definition: charmap.c:202
LONG_PTR LPARAM
Definition: windef.h:208
static void UpdateSettings(HWND hDlg)
Definition: charmap.c:294
#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:1730
#define IDC_FONTCOMBO
Definition: resource.h:12
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
VOID ChangeMapFont(HWND hDlg)
Definition: charmap.c:161
#define FM_SETCHAR
Definition: precomp.h:24
HWND WINAPI GetParent(_In_ HWND)
#define CBN_SELCHANGE
Definition: winuser.h:1969
#define IDC_SELECT
Definition: resource.h:16
#define HIWORD(l)
Definition: typedefs.h:247
#define GetWindowTextLength
Definition: winuser.h:5789
#define WM_INITDIALOG
Definition: winuser.h:1729
LPARAM lParam
Definition: combotst.c:139
#define LOWORD(l)
Definition: pedump.c:82
static VOID AddCharToSelection(HWND hDlg, WCHAR ch)
Definition: charmap.c:250
#define IDC_FONTMAP
Definition: resource.h:14
#define EN_CHANGE
Definition: winuser.h:2012

Referenced by PanelOnCreate().

◆ CopyCharacters()

static void CopyCharacters ( HWND  hDlg)
static

Definition at line 202 of file charmap.c.

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

Referenced by CharMapDlgProc().

◆ EnumFontNames()

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

Definition at line 80 of file charmap.c.

84 {
85  HWND hwndCombo = (HWND)lParam;
86  LPWSTR pszName = lpelfe->elfLogFont.lfFaceName;
87 
88  /* Skip rotated font */
89  if(pszName[0] == L'@') return 1;
90 
91  /* make sure font doesn't already exist in our list */
92  if(SendMessageW(hwndCombo,
94  0,
95  (LPARAM)pszName) == CB_ERR)
96  {
97  INT idx;
98  BOOL fFixed;
99  BOOL fTrueType;
100 
101  /* add the font */
102  idx = (INT)SendMessageW(hwndCombo,
103  CB_ADDSTRING,
104  0,
105  (LPARAM)pszName);
106 
107  /* record the font's attributes (Fixedwidth and Truetype) */
108  fFixed = (lpelfe->elfLogFont.lfPitchAndFamily & FIXED_PITCH) ? TRUE : FALSE;
109  fTrueType = (lpelfe->elfLogFont.lfOutPrecision == OUT_STROKE_PRECIS) ? TRUE : FALSE;
110 
111  /* store this information in the list-item's userdata area */
112  SendMessageW(hwndCombo,
114  idx,
115  MAKEWPARAM(fFixed, fTrueType));
116  }
117 
118  return 1;
119 }
#define CB_SETITEMDATA
Definition: winuser.h:1956
#define MAKEWPARAM(l, h)
Definition: winuser.h:3999
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 L(x)
Definition: ntvdm.h:50
#define FALSE
Definition: types.h:117
unsigned int BOOL
Definition: ntddk_ex.h:94
#define FIXED_PITCH
Definition: wingdi.h:444
unsigned int idx
Definition: utils.c:41
#define CB_ADDSTRING
Definition: winuser.h:1926
LONG_PTR LPARAM
Definition: windef.h:208
#define CB_ERR
Definition: winuser.h:2425
BYTE lfOutPrecision
Definition: dimm.idl:68
#define OUT_STROKE_PRECIS
Definition: wingdi.h:418
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
LOGFONTW elfLogFont
Definition: wingdi.h:2702
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:1930

Referenced by FillFontStyleComboList().

◆ FillCharacterSetComboList()

static VOID FillCharacterSetComboList ( HWND  hwndCombo)
static

Definition at line 29 of file charmap.c.

30 {
31  WCHAR szCharSetText[256];
32  LPWSTR trimmedName;
33  CPINFOEXW cpInfo;
34  INT i;
35 
36  if (LoadStringW(hInstance, IDS_UNICODE, szCharSetText, SIZEOF(szCharSetText)))
37  {
38  SendMessageW(hwndCombo,
40  0,
41  (LPARAM)szCharSetText);
42  }
43 
44  for (i = 0; i < SIZEOF(codePages); i++)
45  {
46  if (GetCPInfoExW(codePages[i], 0, &cpInfo))
47  {
48  trimmedName = wcschr(cpInfo.CodePageName, L'(');
49  if (!trimmedName)
50  trimmedName = cpInfo.CodePageName;
51 
52  SendMessageW(hwndCombo,
54  0,
55  (LPARAM)trimmedName);
56  }
57  }
58 
59  SendMessageW(hwndCombo, CB_SETCURSEL, 0, 0);
60 }
#define IDS_UNICODE
Definition: resource.h:31
WCHAR CodePageName[MAX_PATH]
Definition: winnls.h:599
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
HINSTANCE hInstance
Definition: charmap.c:19
#define L(x)
Definition: ntvdm.h:50
#define SIZEOF(_ar)
Definition: calc.h:97
#define CB_ADDSTRING
Definition: winuser.h:1926
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
#define CB_SETCURSEL
Definition: winuser.h:1951
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
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI GetCPInfoExW(UINT CodePage, DWORD dwFlags, LPCPINFOEXW lpCPInfoEx)
Definition: nls.c:2093
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 125 of file charmap.c.

126 {
127  HDC hdc;
128  LOGFONTW lf;
129 
130  /* FIXME: for fun, draw each font in its own style */
132  SendMessageW(hwndCombo,
133  WM_SETFONT,
134  (WPARAM)hFont,
135  0);
136 
137  ZeroMemory(&lf, sizeof(lf));
139 
140  hdc = GetDC(hwndCombo);
141 
142  /* store the list of fonts in the combo */
144  &lf,
146  (LPARAM)hwndCombo,
147  0);
148 
149  ReleaseDC(hwndCombo,
150  hdc);
151 
152  SendMessageW(hwndCombo,
153  CB_SETCURSEL,
154  0,
155  0);
156 }
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:1670
UINT_PTR WPARAM
Definition: windef.h:207
#define DEFAULT_CHARSET
Definition: wingdi.h:384
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:80
#define DEFAULT_GUI_FONT
Definition: wingdi.h:909
HDC hdc
Definition: main.c:9
#define CB_SETCURSEL
Definition: winuser.h:1951
FARPROC FONTENUMPROCW
Definition: wingdi.h:2897
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define WM_SETFONT
Definition: winuser.h:1640
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)

Referenced by CharMapDlgProc().

◆ FillGroupByComboList()

static VOID FillGroupByComboList ( HWND  hwndCombo)
static

Definition at line 64 of file charmap.c.

65 {
66  WCHAR szAllText[256];
67 
68  if (LoadStringW(hInstance, IDS_ALL, szAllText, SIZEOF(szAllText)))
69  {
70  SendMessageW(hwndCombo, CB_ADDSTRING, 0, (LPARAM)szAllText);
71  }
72 
73  SendMessageW(hwndCombo, CB_SETCURSEL, 0, 0);
74 }
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:19
#define SIZEOF(_ar)
Definition: calc.h:97
#define CB_ADDSTRING
Definition: winuser.h:1926
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:1951
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 232 of file charmap.c.

233 {
234  TEXTMETRIC tmFont;
235  HGDIOBJ hOldObj;
236  HDC hDC;
237 
238  hDC = GetDC(hWnd);
239  hOldObj = SelectObject(hDC, hFont);
240  GetTextMetrics(hDC, &tmFont);
241  SelectObject(hDC, hOldObj);
242  ReleaseDC(hWnd, hDC);
243 
244  return tmFont.tmCharSet;
245 }
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:1539
#define GetTextMetrics
Definition: wingdi.h:4474
HFONT hFont
Definition: main.c:53
BYTE tmCharSet
Definition: wingdi.h:2380
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 608 of file charmap.c.

609 {
610  WCHAR szClass[] = L"CharMap";
611  WCHAR szTitle[256];
612  WNDCLASSEXW wc;
613  HWND hWnd;
614 
616 
619  IMAGE_ICON,
620  16,
621  16,
622  0);
623 
626  IMAGE_ICON,
627  32,
628  32,
629  0);
630 
631  // Create workspace
632  ZeroMemory(&wc, sizeof(wc));
633 
634  wc.cbSize = sizeof(wc);
636  wc.hInstance = hInst;
637  wc.hIcon = hBgIcon;
640  wc.lpszMenuName = NULL;
641  wc.lpszClassName = szClass;
642  wc.hIconSm = hSmIcon;
643 
644  RegisterClassExW(&wc);
645 
647  szClass,
648  szTitle,
654  NULL,
655  NULL,
656  hInst,
657  NULL);
658 
659  if (hWnd != NULL)
660  {
661  LoadSettings();
664  }
665 
666  return hWnd;
667 }
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:901
HICON hSmIcon
Definition: charmap.c:23
BOOL WINAPI UpdateWindow(_In_ HWND)
HWND hWnd
Definition: settings.c:17
#define ZeroMemory
Definition: winbase.h:1670
HICON hIcon
Definition: winuser.h:3212
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:4306
ATOM WINAPI RegisterClassExW(_In_ CONST WNDCLASSEXW *)
HINSTANCE hInstance
Definition: charmap.c:19
#define L(x)
Definition: ntvdm.h:50
LPCWSTR lpszMenuName
Definition: winuser.h:3215
#define SIZEOF(_ar)
Definition: calc.h:97
void LoadSettings(void)
Definition: settings.c:53
#define CW_USEDEFAULT
Definition: winuser.h:225
#define SW_SHOW
Definition: winuser.h:769
LPCWSTR lpszClassName
Definition: winuser.h:3216
#define WS_CAPTION
Definition: pedump.c:624
static LRESULT CALLBACK PanelWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
Definition: charmap.c:575
#define IDS_TITLE
Definition: resource.h:30
__wchar_t WCHAR
Definition: xmlstorage.h:180
HBRUSH hbrBackground
Definition: winuser.h:3214
UINT cbSize
Definition: winuser.h:3206
HICON hBgIcon
Definition: charmap.c:24
TCHAR szTitle[MAX_LOADSTRING]
Definition: magnifier.c:35
HINSTANCE hInstance
Definition: winuser.h:3211
HCURSOR hCursor
Definition: winuser.h:3213
#define LoadCursor
Definition: winuser.h:5802
WNDPROC lpfnWndProc
Definition: winuser.h:3208
HINSTANCE hInst
Definition: dxdiag.c:13
#define WS_MINIMIZEBOX
Definition: pedump.c:631
#define NULL
Definition: types.h:112
HICON hIconSm
Definition: winuser.h:3217
#define IDC_ARROW
Definition: winuser.h:682
#define LoadImage
Definition: winuser.h:5805
#define WS_SYSMENU
Definition: pedump.c:629

Referenced by wWinMain().

◆ PanelOnCreate()

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

Definition at line 519 of file charmap.c.

520 {
521  HMENU hSysMenu;
522  WCHAR lpAboutText[256];
523 
526  hWnd,
528 
529  // For now, the Help push button is disabled because of lacking of HTML Help support
531 
532 #ifndef REMOVE_ADVANCED
535  hWnd,
537 
539 
543 #endif
545  NULL,
547  0, 0, 0, 0,
548  hWnd,
550  hInstance,
551  NULL);
552 
553  // Set the status bar for multiple parts output
555 
556  ChangeView(hWnd);
557 
558  hSysMenu = GetSystemMenu(hWnd, FALSE);
559 
560  if (hSysMenu != NULL)
561  {
562  if (LoadStringW(hInstance, IDS_ABOUT, lpAboutText, SIZEOF(lpAboutText)))
563  {
564  AppendMenuW(hSysMenu, MF_SEPARATOR, 0, NULL);
565  AppendMenuW(hSysMenu, MF_STRING, ID_ABOUT, lpAboutText);
566  }
567  }
568 
570 
571  return 0;
572 }
HWND hStatusWnd
Definition: charmap.c:22
#define MAKEINTRESOURCE
Definition: winuser.h:591
static INT_PTR CALLBACK CharMapDlgProc(HWND hDlg, UINT Message, WPARAM wParam, LPARAM lParam)
Definition: charmap.c:392
#define CreateWindow
Definition: winuser.h:5744
static VOID FillGroupByComboList(HWND hwndCombo)
Definition: charmap.c:64
#define MF_STRING
Definition: winuser.h:138
#define IDC_CMHELP
Definition: resource.h:13
HWND hWnd
Definition: settings.c:17
HWND WINAPI SetFocus(_In_opt_ HWND)
UINT_PTR WPARAM
Definition: windef.h:207
static void ChangeView(HWND hWnd)
Definition: charmap.c:322
#define WS_CHILD
Definition: pedump.c:617
#define STATUSCLASSNAME
Definition: commctrl.h:1939
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:19
#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:1958
HMENU WINAPI GetSystemMenu(_In_ HWND, _In_ BOOL)
#define MF_SEPARATOR
Definition: winuser.h:137
LONG_PTR LPARAM
Definition: windef.h:208
#define ID_ABOUT
Definition: charmap.c:17
#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:29
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:480
#define NULL
Definition: types.h:112
HWND hCharmapDlg
Definition: charmap.c:21
#define SendMessage
Definition: winuser.h:5833
#define IDC_BUTTON_SEARCH
Definition: resource.h:23
HWND hAdvancedDlg
Definition: charmap.c:20
#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:5739

Referenced by PanelWndProc().

◆ PanelWndProc()

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

Definition at line 575 of file charmap.c.

576 {
577  switch (msg) {
578  case WM_CREATE:
579  return PanelOnCreate(hWnd, wParam, lParam);
580 
581  case WM_CLOSE:
583  return 0;
584 
585  case WM_SIZE:
587  break;
588 
589  case WM_DESTROY:
590  SaveSettings();
591  PostQuitMessage(0);
592  return 0;
593 
594  case WM_SYSCOMMAND:
595  switch(wParam) {
596  case ID_ABOUT:
598  break;
599  }
600  break;
601 
602  }
603 
604  return DefWindowProc(hWnd, msg, wParam, lParam);
605 }
HWND hStatusWnd
Definition: charmap.c:22
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:17
#define DefWindowProc
Definition: ros2win.h:31
#define WM_DESTROY
Definition: winuser.h:1599
#define WM_SIZE
Definition: winuser.h:1601
#define WM_CLOSE
Definition: winuser.h:1611
static int PanelOnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
Definition: charmap.c:519
#define msg(x)
Definition: auth_time.c:54
#define SendMessage
Definition: winuser.h:5833
#define WM_CREATE
Definition: winuser.h:1598
#define WM_SYSCOMMAND
Definition: winuser.h:1731
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 294 of file charmap.c.

295 {
296  if (hDlg == hCharmapDlg)
297  {
298  Settings.IsAdvancedView =
300 
301  }
302 
303  if (hDlg == hAdvancedDlg)
304  {
305  }
306 }
#define IDC_CHECK_ADVANCED
Definition: resource.h:26
#define SendDlgItemMessage
Definition: winuser.h:5832
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_POWER_POLICY_IDLE_SETTINGS Settings
Definition: wdfdevice.h:2592
#define BM_GETCHECK
Definition: winuser.h:1908
HWND hCharmapDlg
Definition: charmap.c:21
HWND hAdvancedDlg
Definition: charmap.c:20

Referenced by CharMapDlgProc().

◆ UpdateStatusBar()

VOID UpdateStatusBar ( WCHAR  wch)

Definition at line 310 of file charmap.c.

311 {
313  WCHAR szDesc[MAX_PATH];
314 
315  GetUName(wch, szDesc);
316  wsprintfW(buff, L"U+%04X: %s", wch, szDesc);
318 }
int WINAPIV wsprintfW(_Out_ LPWSTR, _In_ _Printf_format_string_ LPCWSTR,...)
HWND hStatusWnd
Definition: charmap.c:22
#define L(x)
Definition: ntvdm.h:50
LONG_PTR LPARAM
Definition: windef.h:208
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define MAX_PATH
Definition: compat.h:34
#define SB_SETTEXT
Definition: commctrl.h:1949
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(), OnVScroll(), RowStackClickProc(), RowStackDropProc(), SetCaretXY(), SuitStackAddProc(), SuitStackDropProc(), and Undo().

◆ 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 671 of file charmap.c.

675 {
677  INT Ret = 1;
678  HMODULE hRichEd20;
679  MSG Msg;
680 
681  hInstance = hInst;
682 
683  /* Mirroring code for the titlebar */
684  switch (GetUserDefaultUILanguage())
685  {
688  break;
689 
690  default:
691  break;
692  }
693 
694  iccx.dwSize = sizeof(INITCOMMONCONTROLSEX);
695  iccx.dwICC = ICC_TAB_CLASSES;
696  InitCommonControlsEx(&iccx);
697 
699  {
700  hRichEd20 = LoadLibraryW(L"RICHED20.DLL");
701 
702  if (hRichEd20 != NULL)
703  {
705 
706  for (;;)
707  {
708  if (GetMessage(&Msg, NULL, 0, 0) <= 0)
709  {
710  Ret = Msg.wParam;
711  break;
712  }
713 
714  /* NOTE: CreateDialog needs IsDialogMessage call in message loop */
716  continue;
717 #ifndef REMOVE_ADVANCED
719  continue;
720 #endif
721 
724  }
725 
726  FreeLibrary(hRichEd20);
727  }
729  }
730 
731  return Ret;
732 }
#define DispatchMessage
Definition: winuser.h:5755
LANGID WINAPI GetUserDefaultUILanguage(void)
Definition: lang.c:810
BOOL WINAPI TranslateMessage(_In_ const MSG *)
#define LAYOUT_RTL
Definition: wingdi.h:1371
TW_UINT32 TW_UINT16 TW_UINT16 MSG
Definition: twain.h:1827
#define SUBLANG_DEFAULT
Definition: nls.h:168
#define IsDialogMessage
Definition: winuser.h:5799
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:608
HINSTANCE hInstance
Definition: charmap.c:19
#define L(x)
Definition: ntvdm.h:50
VOID UnregisterMapClasses(HINSTANCE hInstance)
Definition: map.c:875
#define LoadLibraryW(x)
Definition: compat.h:747
BOOL WINAPI SetProcessDefaultLayout(DWORD dwDefaultLayout)
Definition: window.c:1720
#define FreeLibrary(x)
Definition: compat.h:748
BOOL WINAPI InitCommonControlsEx(const INITCOMMONCONTROLSEX *lpInitCtrls)
Definition: commctrl.c:893
BOOL RegisterMapClasses(HINSTANCE hInstance)
Definition: map.c:849
HINSTANCE hInst
Definition: dxdiag.c:13
#define NULL
Definition: types.h:112
#define GetMessage
Definition: winuser.h:5780
HWND hCharmapDlg
Definition: charmap.c:21
#define MAKELANGID(p, s)
Definition: nls.h:15
HWND hAdvancedDlg
Definition: charmap.c:20
struct @1595 Msg[]
#define ICC_TAB_CLASSES
Definition: commctrl.h:61

Variable Documentation

◆ hAdvancedDlg

HWND hAdvancedDlg

Definition at line 20 of file charmap.c.

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

◆ hBgIcon

HICON hBgIcon

Definition at line 24 of file charmap.c.

Referenced by InitInstance().

◆ hCharmapDlg

HWND hCharmapDlg

◆ hInstance

HINSTANCE hInstance

Definition at line 19 of file charmap.c.

Referenced by ATL::_AtlGetStringResourceImage(), FxWmiInstanceExternal::_Create(), _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(), 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(), DiskClassInstaller(), Display_InitClass(), DllMain(), DllRegisterServer(), DoCreate(), Window::DoCreateMainWnd(), DoDeleteService(), Window::DoRegisterClass(), DrawTextFromResource(), DuplicateIcon(), EditCurrentGlyph(), EnumJoysticks(), EnumProcessAndPrint(), error(), EventLogProperties(), explorer_main(), ExtractIconA(), ExtractIconW(), ExtractIconWrapW(), FillCharacterSetComboList(), FillGroupByComboList(), FilterInstanceClose(), FilterInstanceCreate(), FilterInstanceGetInformation(), ForceResetUserApiHook(), FormatString(), Bitmap::FromResource(), GdipCreateBitmapFromResource(), get_print_file_filter(), GetClassInfoA(), GetClassInfoExA(), GetClassInfoExW(), GetClassInfoW(), GetPredefinedClipboardFormatName(), GetUserDiskFreeSpace(), GPNotificationThreadProc(), if(), ExplorerGlobals::init(), init_oid_info(), init_preview(), InitApplication(), InitDialog(), InitEditGlyphWndClasses(), InitEditWindowImpl(), InitEditWnd(), InitFontBoxesWndClass(), InitFontWndClass(), Initialize(), InitializeAtlModule(), InitializeProfiles(), 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(), PrintHeader(), PrintJobDetails(), PrintMemory(), PrintResString(), promptdisk_init(), PropertySheetDialog::PropertySheetDialog(), PropSheetPage::PropSheetPage(), PropSheetThread(), ReadString(), RegisterBlankClass(), RegisterCheckListControl(), RegisterConWndClass(), RegisterHexEditorClass(), RegisterMapClasses(), RegisterMonitorSelectionControl(), RegisterMonthCalControl(), RegisterPreviewControl(), RegisterTestDialog(), RegisterWinPrevClass(), ReplaceRequiredButton(), 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(), ShowAudioPropertySheet(), ShowFullControlPanel(), START_TEST(), StartD3DTest(), StartDDTest(), StartWithDesktop(), STATIC_LoadIconA(), STATIC_LoadIconW(), StatusBarLoadAndFormatString(), CCharMapWindow::StatusBarLoadString(), CDeviceManager::StatusBarLoadString(), StatusBarLoadString(), taskdialog_add_control(), 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(), UnInitFontBoxesWndClass(), UnInitFontWndClass(), 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 23 of file charmap.c.

Referenced by InitInstance().

◆ hStatusWnd

◆ Settings

Definition at line 25 of file charmap.c.