ReactOS 0.4.17-dev-684-ga6524ef
scrnsave.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define idsIsPassword   1000
 
#define idsIniFile   1001
 
#define idsScreenSaver   1002
 
#define idsPassword   1003
 
#define idsDifferentPW   1004
 
#define idsChangePW   1005
 
#define idsBadOldPW   1006
 
#define idsAppName   1007
 
#define idsNoHelpMemory   1008
 
#define idsHelpFile   1009
 
#define idsDefKeyword   1010
 
#define DLG_SCRNSAVECONFIGURE   2003
 
#define IDS_DESCRIPTION   1
 
#define ID_APP   100
 
#define WS_GT   (WS_GROUP | WS_TABSTOP)
 
#define MAXFILELEN   13
 
#define TITLEBARNAMELEN   40
 
#define APPNAMEBUFFERLEN   40
 
#define BUFFLEN   255
 

Functions

BOOL WINAPI ScreenSaverConfigureDialog (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
BOOL WINAPI RegisterDialogClasses (HANDLE hInst)
 
LRESULT WINAPI ScreenSaverProc (HWND, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
LRESULT WINAPI DefScreenSaverProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
 

Variables

HINSTANCE hMainInstance
 
HWND hMainWindow
 
BOOL fChildPreview
 
TCHAR szName []
 
TCHAR szAppName []
 
TCHAR szIniFile []
 
TCHAR szScreenSaver []
 
TCHAR szHelpFile []
 
TCHAR szNoHelpMemory []
 
UINT MyHelpMessage
 

Macro Definition Documentation

◆ APPNAMEBUFFERLEN

#define APPNAMEBUFFERLEN   40

Definition at line 38 of file scrnsave.h.

◆ BUFFLEN

#define BUFFLEN   255

Definition at line 39 of file scrnsave.h.

◆ DLG_SCRNSAVECONFIGURE

#define DLG_SCRNSAVECONFIGURE   2003

Definition at line 30 of file scrnsave.h.

◆ ID_APP

#define ID_APP   100

Definition at line 33 of file scrnsave.h.

◆ IDS_DESCRIPTION

#define IDS_DESCRIPTION   1

Definition at line 32 of file scrnsave.h.

◆ idsAppName

#define idsAppName   1007

Definition at line 24 of file scrnsave.h.

◆ idsBadOldPW

#define idsBadOldPW   1006

Definition at line 23 of file scrnsave.h.

◆ idsChangePW

#define idsChangePW   1005

Definition at line 22 of file scrnsave.h.

◆ idsDefKeyword

#define idsDefKeyword   1010

Definition at line 27 of file scrnsave.h.

◆ idsDifferentPW

#define idsDifferentPW   1004

Definition at line 21 of file scrnsave.h.

◆ idsHelpFile

#define idsHelpFile   1009

Definition at line 26 of file scrnsave.h.

◆ idsIniFile

#define idsIniFile   1001

Definition at line 18 of file scrnsave.h.

◆ idsIsPassword

#define idsIsPassword   1000

Definition at line 17 of file scrnsave.h.

◆ idsNoHelpMemory

#define idsNoHelpMemory   1008

Definition at line 25 of file scrnsave.h.

◆ idsPassword

#define idsPassword   1003

Definition at line 20 of file scrnsave.h.

◆ idsScreenSaver

#define idsScreenSaver   1002

Definition at line 19 of file scrnsave.h.

◆ MAXFILELEN

#define MAXFILELEN   13

Definition at line 36 of file scrnsave.h.

◆ TITLEBARNAMELEN

#define TITLEBARNAMELEN   40

Definition at line 37 of file scrnsave.h.

◆ WS_GT

#define WS_GT   (WS_GROUP | WS_TABSTOP)

Definition at line 35 of file scrnsave.h.

Function Documentation

◆ DefScreenSaverProc()

LRESULT WINAPI DefScreenSaverProc ( HWND  hWnd,
UINT  msg,
WPARAM  wParam,
LPARAM  lParam 
)

Definition at line 92 of file scrnsave.c.

93{
94 // Don't do any special processing when in preview mode
95 if (fChildPreview)
96 return DefWindowProc(hWnd, uMsg, wParam, lParam);
97
98 switch (uMsg)
99 {
100 case WM_NCACTIVATE:
101 case WM_ACTIVATE:
102 case WM_ACTIVATEAPP:
103 if (!wParam)
104 {
105 // wParam is FALSE, so the screen saver is losing the focus.
106 PostMessage(hWnd, WM_CLOSE, 0, 0);
107 }
108 break;
109
110 case WM_MOUSEMOVE:
111 {
112 POINT pt;
114
115 if (!pt_init)
116 {
117 pt_orig = pt;
118 pt_init = TRUE;
119 break;
120 }
121
122 if (abs(pt.x-pt_orig.x) > 10 || abs(pt.y-pt_orig.y) > 10)
123 PostMessage(hWnd, WM_CLOSE, 0, 0);
124 break;
125 }
126
127 case WM_LBUTTONDOWN:
128 case WM_MBUTTONDOWN:
129 case WM_RBUTTONDOWN:
130 case WM_XBUTTONDOWN:
131 case WM_KEYDOWN:
132 case WM_KEYUP:
133 case WM_SYSKEYDOWN:
134 // Send a WM_CLOSE to close the screen saver (allows
135 // the screen saver to perform clean-up tasks)
136 PostMessage(hWnd, WM_CLOSE, 0, 0);
137 break;
138
139 case WM_SETCURSOR:
141 return TRUE;
142 }
143
144 return DefWindowProc(hWnd, uMsg, wParam, lParam);
145}
HWND hWnd
Definition: settings.c:17
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
#define NULL
Definition: types.h:112
#define TRUE
Definition: types.h:120
#define pt(x, y)
Definition: drawing.c:79
#define abs(i)
Definition: fconv.c:206
#define DefWindowProc
Definition: ros2win.h:31
static POINT pt_orig
Definition: scrnsave.c:36
BOOL fChildPreview
Definition: scrnsave.c:25
static BOOL pt_init
Definition: scrnsave.c:37
long y
Definition: polytest.cpp:48
long x
Definition: polytest.cpp:48
#define WM_CLOSE
Definition: winuser.h:1649
#define WM_KEYUP
Definition: winuser.h:1744
BOOL WINAPI GetCursorPos(_Out_ LPPOINT)
Definition: cursoricon.c:3064
HCURSOR WINAPI SetCursor(_In_opt_ HCURSOR)
#define WM_MOUSEMOVE
Definition: winuser.h:1803
#define WM_LBUTTONDOWN
Definition: winuser.h:1804
#define WM_ACTIVATE
Definition: winuser.h:1640
#define WM_RBUTTONDOWN
Definition: winuser.h:1807
#define WM_NCACTIVATE
Definition: winuser.h:1716
#define PostMessage
Definition: winuser.h:5998
#define WM_SETCURSOR
Definition: winuser.h:1664
#define WM_ACTIVATEAPP
Definition: winuser.h:1660
#define WM_KEYDOWN
Definition: winuser.h:1743
#define WM_SYSKEYDOWN
Definition: winuser.h:1747
#define WM_MBUTTONDOWN
Definition: winuser.h:1810

Referenced by ScreenSaverProc().

◆ RegisterDialogClasses()

BOOL WINAPI RegisterDialogClasses ( HANDLE  hInst)

Definition at line 420 of file 3dtext.c.

421{
422 return TRUE;
423}

Referenced by LaunchConfig().

◆ ScreenSaverConfigureDialog()

BOOL WINAPI ScreenSaverConfigureDialog ( HWND  hDlg,
UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)

Definition at line 384 of file 3dtext.c.

385{
386 switch (uMsg)
387 {
388 case WM_INITDIALOG:
389 LoadSettings();
392 return TRUE;
393
394 case WM_COMMAND:
395 switch (LOWORD(wParam))
396 {
397 case IDOK:
399 SaveSettings();
400
401 /* Fall through */
402
403 case IDCANCEL:
404 EndDialog(hDlg, IDCANCEL);
405 break;
406 }
407 return FALSE;
408
409 case WM_CLOSE:
410 EndDialog(hDlg, 0);
411 break;
412
413 default:
414 return FALSE;
415 }
416
417 return TRUE;
418}
TCHAR g_Text[MAX_TEXT_LENGTH+1]
Definition: settings.c:25
void SaveSettings(void)
Definition: settings.c:115
void LoadSettings(void)
Definition: settings.c:53
#define IDC_MESSAGE_TEXT
Definition: resource.h:5
#define FALSE
Definition: types.h:117
#define ARRAYSIZE(array)
Definition: filtermapper.c:47
#define LOWORD(l)
Definition: pedump.c:82
#define EM_LIMITTEXT
Definition: winuser.h:2029
#define IDCANCEL
Definition: winuser.h:842
#define GetDlgItemText
Definition: winuser.h:5951
#define WM_COMMAND
Definition: winuser.h:1768
#define WM_INITDIALOG
Definition: winuser.h:1767
#define IDOK
Definition: winuser.h:841
#define SendDlgItemMessage
Definition: winuser.h:6008
#define SetDlgItemText
Definition: winuser.h:6015
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)

Referenced by LaunchConfig().

◆ ScreenSaverProc()

LRESULT WINAPI ScreenSaverProc ( HWND  hWnd,
UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)

Definition at line 246 of file 3dtext.c.

247{
248 RECT Screen; // Used Later On To Get The Size Of The Window
249 GLuint PixelFormat; // Pixel Format Storage
250 static PIXELFORMATDESCRIPTOR pfd= // Pixel Format Descriptor
251 {
252 sizeof(PIXELFORMATDESCRIPTOR), // Size Of This Pixel Format Descriptor
253 1, // Version Number (?)
254 PFD_DRAW_TO_WINDOW | // Format Must Support Window
255 PFD_SUPPORT_OPENGL | // Format Must Support OpenGL
256 PFD_DOUBLEBUFFER, // Must Support Double Buffering
257 PFD_TYPE_RGBA, // Request An RGBA Format
258 16, // Select A 16Bit Color Depth
259 0, 0, 0, 0, 0, 0, // Color Bits Ignored (?)
260 0, // No Alpha Buffer
261 0, // Shift Bit Ignored (?)
262 0, // No Accumulation Buffer
263 0, 0, 0, 0, // Accumulation Bits Ignored (?)
264 16, // 16Bit Z-Buffer (Depth Buffer)
265 0, // No Stencil Buffer
266 0, // No Auxiliary Buffer (?)
267 PFD_MAIN_PLANE, // Main Drawing Layer
268 0, // Reserved (?)
269 0, 0, 0 // Layer Masks Ignored (?)
270 };
271
272 switch (message)
273 {
274 case WM_CREATE:
275 LoadSettings();
276
277 // Gets A Device Context For The Window
278 hDC = GetDC(hWnd);
279
280 // Finds The Closest Match To The Pixel Format We Set Above
282
283 // No Matching Pixel Format?
284 if (!PixelFormat)
285 {
286 MessageBox(0, _TEXT("Can't Find A Suitable PixelFormat."), _TEXT("Error"),MB_OK | MB_ICONERROR);
287
288 // This Sends A 'Message' Telling The Program To Quit
290 break;
291 }
292
293 // Can We Set The Pixel Mode?
295 {
296 MessageBox(0, _TEXT("Can't Set The PixelFormat."), _TEXT("Error"), MB_OK | MB_ICONERROR);
297
298 // This Sends A 'Message' Telling The Program To Quit
300 break;
301 }
302
303 // Grab A Rendering Context
305
306 // Did We Get One?
307 if (!hRC)
308 {
309 MessageBox(0, _TEXT("Can't Create A GL Rendering Context."), _TEXT("Error"), MB_OK | MB_ICONERROR);
310
311 // This Sends A 'Message' Telling The Program To Quit
313 break;
314 }
315
316 // Can We Make The RC Active?
317 if (!wglMakeCurrent(hDC, hRC))
318 {
319 MessageBox(0, _TEXT("Can't Activate GLRC."), _TEXT("Error"), MB_OK | MB_ICONERROR);
320
321 // This Sends A 'Message' Telling The Program To Quit
323 break;
324 }
325
326 // Grab Screen Info For The Current Window
328
329 // Initialize The GL Screen Using Screen Info
330 InitGL(Screen.right, Screen.bottom);
331
332 // Create Graphics update timer
334 break;
335
336 case WM_DESTROY:
337 // Disable Fullscreen Mode
338 ChangeDisplaySettings(NULL, 0);
339
340 // Delete the Update Timer
342
343 // Deletes The Character Display Lists
345
346 // Make The DC Current
348
349 // Kill The RC
351
352 // Free The DC
354 break;
355
356 case WM_PAINT:
357 DrawGLScene();
359 // Mark this window as updated, so the OS won't ask us to update it again.
361 break;
362
363 case WM_SIZE: // Resizing The Screen
364 // Resize To The New Window Size
366 break;
367
368 case WM_TIMER:
369 // Used to update graphic based on timer udpate interval
371 break;
372
373 default:
374 // Pass Windows Messages to the default screensaver window procedure
376 }
377
378 return 0;
379}
GLvoid InitGL(GLsizei Width, GLsizei Height)
Definition: 3dtext.c:131
GLvoid ReSizeGLScene(GLsizei Width, GLsizei Height)
Definition: 3dtext.c:174
#define APP_TIMER_INTERVAL
Definition: 3dtext.c:47
static HDC hDC
Definition: 3dtext.c:33
static HGLRC hRC
Definition: 3dtext.c:32
GLvoid DrawGLScene(GLvoid)
Definition: 3dtext.c:200
#define APP_TIMER
Definition: 3dtext.c:46
UINT uTimerID
Definition: 3dtext.c:45
GLvoid Delete3DCharacters(GLvoid)
Definition: 3dtext.c:111
@ Screen
Definition: console.h:34
INT PixelFormat
unsigned int GLuint
Definition: gl.h:159
#define _TEXT(x)
Definition: tchar.h:1535
LRESULT WINAPI DefScreenSaverProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
Definition: scrnsave.c:92
static PIXELFORMATDESCRIPTOR pfd
Definition: ssstars.c:67
Definition: tftpd.h:60
#define HIWORD(l)
Definition: typedefs.h:247
BOOL WINAPI wglDeleteContext(HGLRC hglrc)
Definition: wgl.c:516
HGLRC WINAPI wglCreateContext(HDC hdc)
Definition: wgl.c:383
BOOL WINAPI wglMakeCurrent(HDC hdc, HGLRC hglrc)
Definition: wgl.c:652
int WINAPI ChoosePixelFormat(_In_ HDC hdc, _In_ const PIXELFORMATDESCRIPTOR *ppfd)
BOOL WINAPI SetPixelFormat(_In_ HDC, _In_ int, _In_ const PIXELFORMATDESCRIPTOR *)
#define PFD_SUPPORT_OPENGL
Definition: wingdi.h:306
struct tagPIXELFORMATDESCRIPTOR PIXELFORMATDESCRIPTOR
BOOL WINAPI SwapBuffers(HDC)
Definition: wingl.c:187
#define PFD_DRAW_TO_WINDOW
Definition: wingdi.h:303
#define PFD_MAIN_PLANE
Definition: wingdi.h:298
#define PFD_TYPE_RGBA
Definition: wingdi.h:296
#define PFD_DOUBLEBUFFER
Definition: wingdi.h:301
#define WM_PAINT
Definition: winuser.h:1648
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
#define WM_CREATE
Definition: winuser.h:1636
__analysis_noreturn void WINAPI PostQuitMessage(_In_ int)
#define WM_SIZE
Definition: winuser.h:1639
BOOL WINAPI ValidateRect(_In_opt_ HWND, _In_opt_ LPCRECT)
UINT_PTR WINAPI SetTimer(_In_opt_ HWND, _In_ UINT_PTR, _In_ UINT, _In_opt_ TIMERPROC)
#define MB_ICONERROR
Definition: winuser.h:798
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
#define WM_TIMER
Definition: winuser.h:1770
HDC WINAPI GetDC(_In_opt_ HWND)
#define MB_OK
Definition: winuser.h:801
#define MessageBox
Definition: winuser.h:5988
#define WM_DESTROY
Definition: winuser.h:1637
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)
BOOL WINAPI KillTimer(_In_opt_ HWND, _In_ UINT_PTR)

Referenced by SysScreenSaverProc().

Variable Documentation

◆ fChildPreview

BOOL fChildPreview
extern

Definition at line 25 of file scrnsave.c.

Referenced by DefScreenSaverProc(), LaunchScreenSaver(), and SysScreenSaverProc().

◆ hMainInstance

HINSTANCE hMainInstance
extern

Definition at line 26 of file scrnsave.c.

Referenced by _tWinMain(), LaunchConfig(), LaunchScreenSaver(), and RegisterScreenSaverClass().

◆ hMainWindow

HWND hMainWindow
extern

Definition at line 24 of file scrnsave.c.

Referenced by LaunchScreenSaver().

◆ MyHelpMessage

UINT MyHelpMessage
extern

Definition at line 33 of file scrnsave.c.

◆ szAppName

◆ szHelpFile

TCHAR szHelpFile[]
extern

Definition at line 31 of file scrnsave.c.

Referenced by Control_LoadApplet(), and User32DoImeHelp().

◆ szIniFile

◆ szName

TCHAR szName[]
extern

Definition at line 104 of file fdi.c.

◆ szNoHelpMemory

TCHAR szNoHelpMemory[]
extern

Definition at line 32 of file scrnsave.c.

◆ szScreenSaver

TCHAR szScreenSaver[]
extern

Definition at line 30 of file scrnsave.c.