ReactOS  0.4.13-dev-66-gc714b7f
syslink.c File Reference
#include <windows.h>
#include <commctrl.h>
#include "wine/test.h"
#include "v6util.h"
#include "msg.h"
Include dependency graph for syslink.c:

Go to the source code of this file.

Macros

#define expect(expected, got)   ok(got == expected, "Expected %d, got %d\n", expected, got)
 
#define NUM_MSG_SEQUENCE   2
 
#define PARENT_SEQ_INDEX   0
 
#define SYSLINK_SEQ_INDEX   1
 

Functions

static void flush_events (void)
 
static LRESULT WINAPI parent_wnd_proc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
 
static BOOL register_parent_wnd_class (void)
 
static HWND create_parent_window (void)
 
static LRESULT WINAPI syslink_subclass_proc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
 
static HWND create_syslink (DWORD style, HWND parent)
 
static void test_create_syslink (void)
 
static void test_LM_GETIDEALHEIGHT (void)
 
static void test_LM_GETIDEALSIZE (void)
 
 START_TEST (syslink)
 

Variables

static HWND hWndParent
 
static struct msg_sequencesequences [NUM_MSG_SEQUENCE]
 
static const struct message empty_wnd_seq []
 
static const struct message parent_create_syslink_wnd_seq []
 
static const struct message visible_syslink_wnd_seq []
 
static const struct message parent_visible_syslink_wnd_seq []
 
static const WCHAR parentClassW [] = {'S','y','s','l','i','n','k',' ','t','e','s','t',' ','p','a','r','e','n','t',' ','c','l','a','s','s',0}
 
static WNDPROC syslink_oldproc
 

Macro Definition Documentation

◆ expect

#define expect (   expected,
  got 
)    ok(got == expected, "Expected %d, got %d\n", expected, got)

Definition at line 27 of file syslink.c.

◆ NUM_MSG_SEQUENCE

#define NUM_MSG_SEQUENCE   2

Definition at line 28 of file syslink.c.

◆ PARENT_SEQ_INDEX

#define PARENT_SEQ_INDEX   0

Definition at line 29 of file syslink.c.

◆ SYSLINK_SEQ_INDEX

#define SYSLINK_SEQ_INDEX   1

Definition at line 30 of file syslink.c.

Function Documentation

◆ create_parent_window()

static HWND create_parent_window ( void  )
static

Definition at line 128 of file syslink.c.

129 {
130  static const WCHAR titleW[] = {'S','y','s','l','i','n','k',' ','t','e','s','t',' ','p','a','r','e','n','t',' ','w','i','n','d','o','w',0};
132  return NULL;
133 
137  0, 0, 200, 100, GetDesktopWindow(),
139 }
smooth NULL
Definition: ftsmooth.c:416
HWND WINAPI GetDesktopWindow(void)
Definition: window.c:622
#define WS_MAXIMIZEBOX
Definition: pedump.c:632
#define WS_CAPTION
Definition: pedump.c:624
__wchar_t WCHAR
Definition: xmlstorage.h:180
static const WCHAR titleW[]
Definition: htmlelem.c:1067
HWND WINAPI CreateWindowExW(_In_ DWORD dwExStyle, _In_opt_ LPCWSTR lpClassName, _In_opt_ LPCWSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
#define WS_MINIMIZEBOX
Definition: pedump.c:631
HMODULE WINAPI GetModuleHandleW(LPCWSTR lpModuleName)
Definition: loader.c:845
#define WS_VISIBLE
Definition: pedump.c:620
#define WS_SYSMENU
Definition: pedump.c:629

Referenced by START_TEST().

◆ create_syslink()

static HWND create_syslink ( DWORD  style,
HWND  parent 
)
static

Definition at line 163 of file syslink.c.

164 {
165  HWND hWndSysLink;
166  static const WCHAR linkW[] = {'H','e','a','d',' ','<','a',' ','h','r','e','f','=','"','l','i','n','k','1','"','>','N','a','m','e','1','<','/','a','>',' ','M','i','d','d','l','e',' ','<','a',' ','h','r','e','f','=','"','l','i','n','k','2','"','>','N','a','m','e','2','<','/','a','>',' ','T','a','i','l',0};
167 
168  /* Only Unicode will do here */
169  hWndSysLink = CreateWindowExW(0, WC_LINK, linkW,
170  style, 0, 0, 150, 50,
172  if (!hWndSysLink) return NULL;
173 
174  if (GetWindowLongPtrW(hWndSysLink, GWLP_USERDATA))
175  /* On Windows XP SysLink takes GWLP_USERDATA for itself! */
176  trace("SysLink makes use of GWLP_USERDATA\n");
177 
179 
180  return hWndSysLink;
181 }
#define trace(...)
Definition: kmt_test.h:217
#define WC_LINK
Definition: commctrl.h:4708
#define GetWindowLongPtrW
Definition: winuser.h:4698
#define GWLP_USERDATA
Definition: treelist.c:63
smooth NULL
Definition: ftsmooth.c:416
r parent
Definition: btrfs.c:2659
__wchar_t WCHAR
Definition: xmlstorage.h:180
HWND WINAPI CreateWindowExW(_In_ DWORD dwExStyle, _In_opt_ LPCWSTR lpClassName, _In_opt_ LPCWSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
#define GWLP_WNDPROC
Definition: treelist.c:66
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
Definition: winuser.h:2859
__int3264 LONG_PTR
Definition: mstsclib_h.h:276
HMODULE WINAPI GetModuleHandleW(LPCWSTR lpModuleName)
Definition: loader.c:845
#define SetWindowLongPtrW
Definition: winuser.h:5215
Arabic default style
Definition: afstyles.h:93
static const WCHAR linkW[]
Definition: string.c:50

Referenced by test_create_syslink(), test_LM_GETIDEALHEIGHT(), and test_LM_GETIDEALSIZE().

◆ flush_events()

static void flush_events ( void  )
static

Definition at line 63 of file syslink.c.

64 {
65  MSG msg;
66  int diff = 200;
67  int min_timeout = 100;
68  DWORD time = GetTickCount() + diff;
69 
70  while (diff > 0)
71  {
72  if (MsgWaitForMultipleObjects( 0, NULL, FALSE, min_timeout, QS_ALLINPUT ) == WAIT_TIMEOUT) break;
73  while (PeekMessageA( &msg, 0, 0, 0, PM_REMOVE )) DispatchMessageA( &msg );
74  diff = time - GetTickCount();
75  }
76 }
LRESULT WINAPI DispatchMessageA(_In_ const MSG *)
TW_UINT32 TW_UINT16 TW_UINT16 MSG
Definition: twain.h:1827
DWORD WINAPI GetTickCount(VOID)
Definition: time.c:445
__u16 time
Definition: mkdosfs.c:366
BOOL WINAPI PeekMessageA(_Out_ LPMSG, _In_opt_ HWND, _In_ UINT, _In_ UINT, _In_ UINT)
smooth NULL
Definition: ftsmooth.c:416
unsigned long DWORD
Definition: ntddk_ex.h:95
#define WAIT_TIMEOUT
Definition: dderror.h:14
DWORD WINAPI MsgWaitForMultipleObjects(_In_ DWORD nCount, _In_reads_opt_(nCount) CONST HANDLE *pHandles, _In_ BOOL fWaitAll, _In_ DWORD dwMilliseconds, _In_ DWORD dwWakeMask)
#define QS_ALLINPUT
Definition: winuser.h:874
#define msg(x)
Definition: auth_time.c:54
#define PM_REMOVE
Definition: winuser.h:1182

Referenced by START_TEST(), and test_create_syslink().

◆ parent_wnd_proc()

static LRESULT WINAPI parent_wnd_proc ( HWND  hwnd,
UINT  message,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 78 of file syslink.c.

79 {
80  static LONG defwndproc_counter = 0;
81  LRESULT ret;
82  struct message msg;
83 
84  /* log system messages, except for painting */
85  if (message < WM_USER &&
86  message != WM_PAINT &&
88  message != WM_NCPAINT &&
89  message != WM_NCHITTEST &&
90  message != WM_GETTEXT &&
91  message != WM_GETICON &&
93  {
94  msg.message = message;
95  msg.flags = sent|wparam|lparam;
96  if (defwndproc_counter) msg.flags |= defwinproc;
97  msg.wParam = wParam;
98  msg.lParam = lParam;
100  }
101 
102  defwndproc_counter++;
104  defwndproc_counter--;
105 
106  return ret;
107 }
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
Definition: tftpd.h:59
#define WM_GETTEXT
Definition: winuser.h:1600
Definition: msg.h:39
GLenum GLuint GLenum GLsizei const GLchar * message
Definition: glext.h:5579
#define WM_NCHITTEST
Definition: winuser.h:1668
WPARAM wParam
Definition: combotst.c:138
LRESULT WINAPI DefWindowProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define WM_NCPAINT
Definition: winuser.h:1669
long LONG
Definition: pedump.c:60
static UINT WPARAM LPARAM lparam
Definition: combo.c:716
#define WM_PAINT
Definition: winuser.h:1602
int ret
Definition: msg.h:34
#define WM_USER
Definition: winuser.h:1856
#define add_message(msg)
Definition: msg.c:2142
#define WM_DEVICECHANGE
Definition: winuser.h:1787
#define msg(x)
Definition: auth_time.c:54
#define WM_ERASEBKGND
Definition: winuser.h:1607
LONG_PTR LRESULT
Definition: windef.h:209
LPARAM lParam
Definition: combotst.c:139
static UINT WPARAM wparam
Definition: combo.c:716

Referenced by register_parent_wnd_class().

◆ register_parent_wnd_class()

static BOOL register_parent_wnd_class ( void  )
static

Definition at line 111 of file syslink.c.

112 {
113  WNDCLASSW cls;
114 
115  cls.style = 0;
117  cls.cbClsExtra = 0;
118  cls.cbWndExtra = 0;
120  cls.hIcon = 0;
123  cls.lpszMenuName = NULL;
125  return RegisterClassW(&cls);
126 }
HGDIOBJ WINAPI GetStockObject(_In_ int)
UINT style
Definition: winuser.h:3129
LPCWSTR lpszMenuName
Definition: winuser.h:3137
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
int cbClsExtra
Definition: winuser.h:3131
#define WHITE_BRUSH
Definition: wingdi.h:901
ATOM WINAPI RegisterClassW(_In_ CONST WNDCLASSW *)
WNDPROC lpfnWndProc
Definition: winuser.h:3130
smooth NULL
Definition: ftsmooth.c:416
LPCWSTR lpszClassName
Definition: winuser.h:3138
int cbWndExtra
Definition: winuser.h:3132
HICON hIcon
Definition: winuser.h:3134
HCURSOR WINAPI LoadCursorW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
Definition: cursoricon.c:2074
HCURSOR hCursor
Definition: winuser.h:3135
HBRUSH hbrBackground
Definition: winuser.h:3136
HINSTANCE hInstance
Definition: winuser.h:3133
#define IDC_ARROW
Definition: winuser.h:682
HMODULE WINAPI GetModuleHandleW(LPCWSTR lpModuleName)
Definition: loader.c:845

Referenced by create_parent_window().

◆ START_TEST()

START_TEST ( syslink  )

Definition at line 245 of file syslink.c.

246 {
247  ULONG_PTR ctx_cookie;
249  POINT orig_pos;
250  HANDLE hCtx;
251 
252  if (!load_v6_module(&ctx_cookie, &hCtx))
253  return;
254 
255  /* LoadLibrary is needed. This file has no reference to functions in comctl32 */
256  hComctl32 = LoadLibraryA("comctl32.dll");
257  ok(hComctl32 != NULL, "Failed to load comctl32.dll.\n");
258 
259  /* Move the cursor off the parent window */
260  GetCursorPos(&orig_pos);
261  SetCursorPos(400, 400);
262 
264 
265  /* Create parent window */
267  ok(hWndParent != NULL, "Failed to create parent Window!\n");
268  flush_events();
269 
273 
275  unload_v6_module(ctx_cookie, hCtx);
276  SetCursorPos(orig_pos.x, orig_pos.y);
277 }
long y
Definition: polytest.cpp:48
long x
Definition: polytest.cpp:48
static void unload_v6_module(ULONG_PTR cookie, HANDLE hCtx)
Definition: v6util.h:63
BOOL WINAPI GetCursorPos(_Out_ LPPOINT)
Definition: cursoricon.c:2635
BOOL WINAPI DestroyWindow(_In_ HWND)
uint32_t ULONG_PTR
Definition: typedefs.h:63
static BOOL load_v6_module(ULONG_PTR *pcookie, HANDLE *hCtx)
Definition: v6util.h:71
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryA(LPCSTR lpLibFileName)
Definition: loader.c:111
#define ok(value,...)
static HMODULE hComctl32
Definition: misc.c:38
static void init_msg_sequences(struct msg_sequence **seq, int n)
Definition: msg.h:391
smooth NULL
Definition: ftsmooth.c:416
BOOL WINAPI SetCursorPos(_In_ int, _In_ int)
Definition: cursoricon.c:2627

◆ syslink_subclass_proc()

static LRESULT WINAPI syslink_subclass_proc ( HWND  hwnd,
UINT  message,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 143 of file syslink.c.

144 {
145  static LONG defwndproc_counter = 0;
146  struct message msg = { 0 };
147  LRESULT ret;
148 
149  msg.message = message;
150  msg.flags = sent|wparam|lparam;
151  if (defwndproc_counter) msg.flags |= defwinproc;
152  msg.wParam = wParam;
153  msg.lParam = lParam;
155 
156  defwndproc_counter++;
158  defwndproc_counter--;
159 
160  return ret;
161 }
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
Definition: tftpd.h:59
Definition: msg.h:39
GLenum GLuint GLenum GLsizei const GLchar * message
Definition: glext.h:5579
WPARAM wParam
Definition: combotst.c:138
long LONG
Definition: pedump.c:60
static UINT WPARAM LPARAM lparam
Definition: combo.c:716
int ret
Definition: msg.h:34
#define add_message(msg)
Definition: msg.c:2142
#define msg(x)
Definition: auth_time.c:54
LRESULT WINAPI CallWindowProcW(_In_ WNDPROC, _In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
LONG_PTR LRESULT
Definition: windef.h:209
LPARAM lParam
Definition: combotst.c:139
static UINT WPARAM wparam
Definition: combo.c:716

Referenced by create_syslink().

◆ test_create_syslink()

static void test_create_syslink ( void  )
static

Definition at line 183 of file syslink.c.

184 {
185  HWND hWndSysLink;
186  LONG oldstyle;
187 
188  /* Create an invisible SysLink control */
190  hWndSysLink = create_syslink(WS_CHILD | WS_TABSTOP, hWndParent);
191  ok(hWndSysLink != NULL, "Expected non NULL value (le %u)\n", GetLastError());
192  flush_events();
195 
196  /* Make the SysLink control visible */
198  oldstyle = GetWindowLongA(hWndSysLink, GWL_STYLE);
199  SetWindowLongA(hWndSysLink, GWL_STYLE, oldstyle | WS_VISIBLE);
200  RedrawWindow(hWndSysLink, NULL, NULL, RDW_INVALIDATE);
201  flush_events();
204 
205  DestroyWindow(hWndSysLink);
206 }
BOOL WINAPI RedrawWindow(_In_opt_ HWND, _In_opt_ LPCRECT, _In_opt_ HRGN, _In_ UINT)
#define TRUE
Definition: types.h:120
DWORD WINAPI GetLastError(VOID)
Definition: except.c:1059
#define WS_CHILD
Definition: pedump.c:617
BOOL WINAPI DestroyWindow(_In_ HWND)
LONG WINAPI GetWindowLongA(_In_ HWND, _In_ int)
long LONG
Definition: pedump.c:60
#define ok(value,...)
smooth NULL
Definition: ftsmooth.c:416
#define ok_sequence(seq, index, exp, contx, todo)
Definition: msg.h:387
#define WS_TABSTOP
Definition: pedump.c:634
#define GWL_STYLE
Definition: winuser.h:846
static void flush_sequences(struct msg_sequence **seq, int n)
Definition: msg.h:97
LONG WINAPI SetWindowLongA(_In_ HWND, _In_ int, _In_ LONG)
#define WS_VISIBLE
Definition: pedump.c:620
#define RDW_INVALIDATE
Definition: winuser.h:1200

Referenced by START_TEST().

◆ test_LM_GETIDEALHEIGHT()

static void test_LM_GETIDEALHEIGHT ( void  )
static

Definition at line 208 of file syslink.c.

209 {
210  HWND hwnd;
211  LONG ret;
212 
214  ok(hwnd != NULL, "Failed to create SysLink window.\n");
215 
217  ok(ret > 0, "Unexpected ideal height, %d.\n", ret);
218 
220 }
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
LRESULT WINAPI SendMessageA(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define WS_CHILD
Definition: pedump.c:617
BOOL WINAPI DestroyWindow(_In_ HWND)
long LONG
Definition: pedump.c:60
#define ok(value,...)
smooth NULL
Definition: ftsmooth.c:416
#define LM_GETIDEALHEIGHT
Definition: commctrl.h:4742
int ret
#define WS_TABSTOP
Definition: pedump.c:634
#define WS_VISIBLE
Definition: pedump.c:620

Referenced by START_TEST().

◆ test_LM_GETIDEALSIZE()

static void test_LM_GETIDEALSIZE ( void  )
static

Definition at line 222 of file syslink.c.

223 {
224  HWND hwnd;
225  LONG ret;
226  SIZE sz;
227 
229  ok(hwnd != NULL, "Failed to create SysLink window.\n");
230 
231  memset(&sz, 0, sizeof(sz));
233  ok(ret > 0, "Unexpected return value, %d.\n", ret);
234  if (sz.cy == 0)
235  win_skip("LM_GETIDEALSIZE is not supported.\n");
236  else
237  {
238  ok(sz.cx > 5, "Unexpected ideal width, %d.\n", sz.cx);
239  ok(sz.cy == ret, "Unexpected ideal height, %d.\n", sz.cy);
240  }
241 
243 }
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
LRESULT WINAPI SendMessageA(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define WS_CHILD
Definition: pedump.c:617
BOOL WINAPI DestroyWindow(_In_ HWND)
long LONG
Definition: pedump.c:60
#define ok(value,...)
smooth NULL
Definition: ftsmooth.c:416
LONG cx
Definition: windef.h:319
LONG_PTR LPARAM
Definition: windef.h:208
int ret
#define WS_TABSTOP
Definition: pedump.c:634
#define LM_GETIDEALSIZE
Definition: commctrl.h:4743
#define WS_VISIBLE
Definition: pedump.c:620
#define memset(x, y, z)
Definition: compat.h:39
LONG cy
Definition: windef.h:320
#define win_skip
Definition: test.h:141

Referenced by START_TEST().

Variable Documentation

◆ empty_wnd_seq

const struct message empty_wnd_seq[]
static
Initial value:
= {
{0}
}

Definition at line 36 of file syslink.c.

Referenced by test_create_syslink().

◆ hWndParent

HWND hWndParent
static

Definition at line 32 of file syslink.c.

Referenced by AdvPropGeneralDlgProc(), CenterWindow(), ChildWindowFromPoint(), ClbStyleW(), co_UserCreateWindowEx(), CListView::Create(), CToolbar<>::Create(), ATL::CWindow::Create(), CTooltips::Create(), ATL::CDialogImpl< CEditCompatModes >::Create(), ATL::CWindowImplBaseT< CToolbar< TASK_ITEM >, CControlWinTraits >::Create(), ATL::CWindowImpl< CShellBrowser, CWindow, CFrameWinTraits >::Create(), CreateDialogIndirectParamA(), CreateDialogIndirectParamAorW(), CreateDialogIndirectParamW(), CreateDialogParamA(), CreateDialogParamW(), CreateMDIWindowA(), CreateMDIWindowW(), CISFBand::CreateSimpleToolbar(), CreateWindowExA(), CreateWindowExW(), CTaskSwitchWnd_CreateInstance(), DeviceAdvancedPropertiesA(), DeviceAdvancedPropertiesW(), DeviceCreateHardwarePage(), DeviceCreateHardwarePageEx(), DeviceManager_ExecuteA(), DeviceManager_ExecuteW(), DeviceProblemWizardA(), DeviceProblemWizardW(), DeviceProperties_RunDLLA(), DeviceProperties_RunDLLW(), DevicePropertiesA(), DevicePropertiesExA(), DevicePropertiesExW(), DevicePropertiesW(), DevInstallW(), DialogBoxIndirectParamA(), DialogBoxIndirectParamAorW(), DialogBoxIndirectParamW(), DialogBoxParamA(), DialogBoxParamW(), DisplayAdvancedSettings(), DisplayDeviceAdvancedProperties(), ATL::CDialogImpl< CEditCompatModes >::DoModal(), EnumChildWindows(), EventLogProperties(), HardwareDlgProc(), CIconWatcher::Initialize(), CTrayClockWnd::Initialize(), CNotifyToolbar::Initialize(), CSysPagerWnd::Initialize(), CTaskToolbar::Initialize(), CTaskSwitchWnd::Initialize(), InstallDevInst(), InstallDevInstEx(), IsChild(), LaunchDeviceManager(), LaunchHardwareWizard(), NtUserCreateWindowEx(), NtUserFillWindow(), CBandSiteBase::SetDeskBarSite(), SHCreateWorkerWindowA(), SHCreateWorkerWindowW(), SHFind_InitMenuPopup(), ShowAboutDlg(), ShowDeviceProblemWizard(), SHSetParentHwnd(), START_TEST(), TbdInitializeDocks(), test_create_syslink(), test_CShellMenu(), test_CShellMenu_callbacks(), test_LM_GETIDEALHEIGHT(), test_LM_GETIDEALSIZE(), and User32CreateWindowEx().

◆ parent_create_syslink_wnd_seq

const struct message parent_create_syslink_wnd_seq[]
static
Initial value:
= {
{ WM_QUERYUISTATE, sent|optional},
{0}
}
#define WM_CTLCOLORSTATIC
Definition: winuser.h:1748
#define WM_PARENTNOTIFY
Definition: winuser.h:1779
#define WM_GETFONT
Definition: winuser.h:1633
Definition: msg.h:41
Definition: msg.h:34
#define WM_CREATE
Definition: winuser.h:1590
#define WM_NOTIFY
Definition: richedit.h:61
static UINT WPARAM wparam
Definition: combo.c:716

Definition at line 40 of file syslink.c.

Referenced by test_create_syslink().

◆ parent_visible_syslink_wnd_seq

const struct message parent_visible_syslink_wnd_seq[]
static
Initial value:
= {
{0}
}
#define WM_CTLCOLORSTATIC
Definition: winuser.h:1748
Definition: msg.h:34
#define WM_NOTIFY
Definition: richedit.h:61
static UINT WPARAM wparam
Definition: combo.c:716

Definition at line 56 of file syslink.c.

Referenced by test_create_syslink().

◆ parentClassW

const WCHAR parentClassW[] = {'S','y','s','l','i','n','k',' ','t','e','s','t',' ','p','a','r','e','n','t',' ','c','l','a','s','s',0}
static

Definition at line 109 of file syslink.c.

Referenced by create_parent_window(), and register_parent_wnd_class().

◆ sequences

struct msg_sequence* sequences[NUM_MSG_SEQUENCE]
static

Definition at line 34 of file syslink.c.

Referenced by parent_wnd_proc(), START_TEST(), syslink_subclass_proc(), and test_create_syslink().

◆ syslink_oldproc

WNDPROC syslink_oldproc
static

Definition at line 141 of file syslink.c.

Referenced by create_syslink(), and syslink_subclass_proc().

◆ visible_syslink_wnd_seq

const struct message visible_syslink_wnd_seq[]
static
Initial value:
= {
{ WM_STYLECHANGING, sent|wparam, GWL_STYLE},
{ WM_STYLECHANGED, sent|wparam, GWL_STYLE},
{0}
}
#define WM_PAINT
Definition: winuser.h:1602
Definition: msg.h:34
#define GWL_STYLE
Definition: winuser.h:846
static UINT WPARAM wparam
Definition: combo.c:716

Definition at line 49 of file syslink.c.

Referenced by test_create_syslink().