mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 19:52:56 +00:00
- Remove much Win9x-specific stuff from the scrnsave library and make it more compatible to the MS version of the library
- Change the 3dtext screensaver to use the library - Reduce the amount of code in the blankscr screensaver to a minimum - Remove unneeded resources from both screensavers - Indentation fixes, MSVC build and warning fixes, small translation fixes, etc. for both screensavers and the library See issue #2966 for more details. svn path=/trunk/; revision=32437
This commit is contained in:
parent
793ebfdd18
commit
cfe2ae5fcf
35 changed files with 311 additions and 731 deletions
|
@ -19,6 +19,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
#include <scrnsave.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <GL/gl.h>
|
#include <GL/gl.h>
|
||||||
#include <GL/glu.h>
|
#include <GL/glu.h>
|
||||||
|
@ -27,11 +28,11 @@
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
#include "3dtext.h"
|
#include "3dtext.h"
|
||||||
|
|
||||||
static HGLRC hRC; // Permanent Rendering Context
|
static HGLRC hRC; // Permanent Rendering Context
|
||||||
static HDC hDC; // Private GDI Device Context
|
static HDC hDC; // Private GDI Device Context
|
||||||
|
|
||||||
GLuint base; // Base Display List For The Font Set
|
GLuint base; // Base Display List For The Font Set
|
||||||
GLfloat rot; // Used To Rotate The Text
|
GLfloat rot; // Used To Rotate The Text
|
||||||
GLfloat extentX = 0.0f;
|
GLfloat extentX = 0.0f;
|
||||||
GLfloat extentY = 0.0f;
|
GLfloat extentY = 0.0f;
|
||||||
|
|
||||||
|
@ -47,7 +48,7 @@ GLvoid BuildFont(GLvoid)
|
||||||
GLYPHMETRICSFLOAT gmf[256];
|
GLYPHMETRICSFLOAT gmf[256];
|
||||||
// Windows Font Handle
|
// Windows Font Handle
|
||||||
HFONT font;
|
HFONT font;
|
||||||
int i;
|
size_t i;
|
||||||
TCHAR c;
|
TCHAR c;
|
||||||
GLfloat cellOriginX = 0.0f;
|
GLfloat cellOriginX = 0.0f;
|
||||||
GLfloat stringOriginX;
|
GLfloat stringOriginX;
|
||||||
|
@ -58,31 +59,31 @@ GLvoid BuildFont(GLvoid)
|
||||||
base = glGenLists(256);
|
base = glGenLists(256);
|
||||||
|
|
||||||
font = CreateFont(-12,
|
font = CreateFont(-12,
|
||||||
0, // Width Of Font
|
0, // Width Of Font
|
||||||
0, // Angle Of Escapement
|
0, // Angle Of Escapement
|
||||||
0, // Orientation Angle
|
0, // Orientation Angle
|
||||||
FW_BOLD, // Font Weight
|
FW_BOLD, // Font Weight
|
||||||
FALSE, // Italic
|
FALSE, // Italic
|
||||||
FALSE, // Underline
|
FALSE, // Underline
|
||||||
FALSE, // Strikeout
|
FALSE, // Strikeout
|
||||||
DEFAULT_CHARSET, // Character Set Identifier
|
DEFAULT_CHARSET, // Character Set Identifier
|
||||||
OUT_TT_PRECIS, // Output Precision
|
OUT_TT_PRECIS, // Output Precision
|
||||||
CLIP_DEFAULT_PRECIS, // Clipping Precision
|
CLIP_DEFAULT_PRECIS, // Clipping Precision
|
||||||
ANTIALIASED_QUALITY, // Output Quality
|
ANTIALIASED_QUALITY, // Output Quality
|
||||||
FF_DONTCARE|DEFAULT_PITCH, // Family And Pitch
|
FF_DONTCARE|DEFAULT_PITCH, // Family And Pitch
|
||||||
_T("Tahoma")); // Font Name
|
_T("Tahoma")); // Font Name
|
||||||
|
|
||||||
// Selects The Font We Created
|
// Selects The Font We Created
|
||||||
SelectObject(hDC, font);
|
SelectObject(hDC, font);
|
||||||
|
|
||||||
wglUseFontOutlines(hDC, // Select The Current DC
|
wglUseFontOutlines(hDC, // Select The Current DC
|
||||||
0, // Starting Character
|
0, // Starting Character
|
||||||
255, // Number Of Display Lists To Build
|
255, // Number Of Display Lists To Build
|
||||||
base, // Starting Display Lists
|
base, // Starting Display Lists
|
||||||
0.0f, // Deviation From The True Outlines
|
0.0f, // Deviation From The True Outlines
|
||||||
0.2f, // Font Thickness In The Z Direction
|
0.2f, // Font Thickness In The Z Direction
|
||||||
WGL_FONT_POLYGONS, // Use Polygons, Not Lines
|
WGL_FONT_POLYGONS, // Use Polygons, Not Lines
|
||||||
gmf); // Address Of Buffer To Recieve Data
|
gmf); // Address Of Buffer To Recieve Data
|
||||||
|
|
||||||
// Calculate the string extent
|
// Calculate the string extent
|
||||||
for (i = 0; i < _tcslen(m_Text); i++)
|
for (i = 0; i < _tcslen(m_Text); i++)
|
||||||
|
@ -231,9 +232,9 @@ GLvoid DrawGLScene(GLvoid)
|
||||||
0.0f);
|
0.0f);
|
||||||
|
|
||||||
// Pulsing Colors Based On The Rotation
|
// Pulsing Colors Based On The Rotation
|
||||||
glColor3f((1.0f * (cos(rot / 20.0f))),
|
glColor3f((1.0f * (GLfloat)(cos(rot / 20.0f))),
|
||||||
(1.0f * (sin(rot / 25.0f))),
|
(1.0f * (GLfloat)(sin(rot / 25.0f))),
|
||||||
(1.0f - 0.5f * (cos(rot / 17.0f))));
|
(1.0f - 0.5f * (GLfloat)(cos(rot / 17.0f))));
|
||||||
|
|
||||||
// Print GL Text To The Screen
|
// Print GL Text To The Screen
|
||||||
glPrint(m_Text);
|
glPrint(m_Text);
|
||||||
|
@ -246,41 +247,37 @@ GLvoid DrawGLScene(GLvoid)
|
||||||
}
|
}
|
||||||
|
|
||||||
LRESULT CALLBACK
|
LRESULT CALLBACK
|
||||||
WndProc(HWND hWnd,
|
ScreenSaverProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
|
||||||
UINT message,
|
|
||||||
WPARAM wParam,
|
|
||||||
LPARAM lParam)
|
|
||||||
{
|
{
|
||||||
static POINT ptLast;
|
RECT Screen; // Used Later On To Get The Size Of The Window
|
||||||
static POINT ptCursor;
|
GLuint PixelFormat; // Pixel Format Storage
|
||||||
static BOOL fFirstTime = TRUE;
|
static PIXELFORMATDESCRIPTOR pfd= // Pixel Format Descriptor
|
||||||
RECT Screen; // Used Later On To Get The Size Of The Window
|
|
||||||
GLuint PixelFormat; // Pixel Format Storage
|
|
||||||
static PIXELFORMATDESCRIPTOR pfd= // Pixel Format Descriptor
|
|
||||||
{
|
{
|
||||||
sizeof(PIXELFORMATDESCRIPTOR), // Size Of This Pixel Format Descriptor
|
sizeof(PIXELFORMATDESCRIPTOR), // Size Of This Pixel Format Descriptor
|
||||||
1, // Version Number (?)
|
1, // Version Number (?)
|
||||||
PFD_DRAW_TO_WINDOW | // Format Must Support Window
|
PFD_DRAW_TO_WINDOW | // Format Must Support Window
|
||||||
PFD_SUPPORT_OPENGL | // Format Must Support OpenGL
|
PFD_SUPPORT_OPENGL | // Format Must Support OpenGL
|
||||||
PFD_DOUBLEBUFFER, // Must Support Double Buffering
|
PFD_DOUBLEBUFFER, // Must Support Double Buffering
|
||||||
PFD_TYPE_RGBA, // Request An RGBA Format
|
PFD_TYPE_RGBA, // Request An RGBA Format
|
||||||
16, // Select A 16Bit Color Depth
|
16, // Select A 16Bit Color Depth
|
||||||
0, 0, 0, 0, 0, 0, // Color Bits Ignored (?)
|
0, 0, 0, 0, 0, 0, // Color Bits Ignored (?)
|
||||||
0, // No Alpha Buffer
|
0, // No Alpha Buffer
|
||||||
0, // Shift Bit Ignored (?)
|
0, // Shift Bit Ignored (?)
|
||||||
0, // No Accumulation Buffer
|
0, // No Accumulation Buffer
|
||||||
0, 0, 0, 0, // Accumulation Bits Ignored (?)
|
0, 0, 0, 0, // Accumulation Bits Ignored (?)
|
||||||
16, // 16Bit Z-Buffer (Depth Buffer)
|
16, // 16Bit Z-Buffer (Depth Buffer)
|
||||||
0, // No Stencil Buffer
|
0, // No Stencil Buffer
|
||||||
0, // No Auxiliary Buffer (?)
|
0, // No Auxiliary Buffer (?)
|
||||||
PFD_MAIN_PLANE, // Main Drawing Layer
|
PFD_MAIN_PLANE, // Main Drawing Layer
|
||||||
0, // Reserved (?)
|
0, // Reserved (?)
|
||||||
0, 0, 0 // Layer Masks Ignored (?)
|
0, 0, 0 // Layer Masks Ignored (?)
|
||||||
};
|
};
|
||||||
|
|
||||||
switch (message)
|
switch (message)
|
||||||
{
|
{
|
||||||
case WM_CREATE:
|
case WM_CREATE:
|
||||||
|
LoadSettings();
|
||||||
|
|
||||||
// Gets A Device Context For The Window
|
// Gets A Device Context For The Window
|
||||||
hDC = GetDC(hWnd);
|
hDC = GetDC(hWnd);
|
||||||
|
|
||||||
|
@ -338,7 +335,6 @@ WndProc(HWND hWnd,
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WM_DESTROY:
|
case WM_DESTROY:
|
||||||
case WM_CLOSE:
|
|
||||||
// Disable Fullscreen Mode
|
// Disable Fullscreen Mode
|
||||||
ChangeDisplaySettings(NULL, 0);
|
ChangeDisplaySettings(NULL, 0);
|
||||||
|
|
||||||
|
@ -353,9 +349,6 @@ WndProc(HWND hWnd,
|
||||||
|
|
||||||
// Free The DC
|
// Free The DC
|
||||||
ReleaseDC(hWnd, hDC);
|
ReleaseDC(hWnd, hDC);
|
||||||
|
|
||||||
// Quit The Program
|
|
||||||
PostQuitMessage(0);
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WM_PAINT:
|
case WM_PAINT:
|
||||||
|
@ -363,157 +356,48 @@ WndProc(HWND hWnd,
|
||||||
SwapBuffers(hDC);
|
SwapBuffers(hDC);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WM_NOTIFY:
|
|
||||||
case WM_SYSKEYDOWN:
|
|
||||||
PostMessage(hWnd, WM_CLOSE, 0, 0);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case WM_LBUTTONDOWN:
|
|
||||||
case WM_LBUTTONUP:
|
|
||||||
case WM_RBUTTONDOWN:
|
|
||||||
case WM_RBUTTONUP:
|
|
||||||
case WM_MBUTTONDOWN:
|
|
||||||
case WM_MBUTTONUP:
|
|
||||||
case WM_MOUSEMOVE:
|
|
||||||
// If we've got a parent then we must be a preview
|
|
||||||
if (GetParent(hWnd) != 0)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
if (fFirstTime)
|
|
||||||
{
|
|
||||||
GetCursorPos(&ptLast);
|
|
||||||
fFirstTime = FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
GetCursorPos(&ptCursor);
|
|
||||||
|
|
||||||
// if the mouse has moved more than 3 pixels then exit
|
|
||||||
if (abs(ptCursor.x - ptLast.x) >= 3 || abs(ptCursor.y - ptLast.y) >= 3)
|
|
||||||
PostMessage(hWnd, WM_CLOSE, 0, 0);
|
|
||||||
|
|
||||||
ptLast = ptCursor;
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
case WM_SIZE: // Resizing The Screen
|
case WM_SIZE: // Resizing The Screen
|
||||||
// Resize To The New Window Size
|
// Resize To The New Window Size
|
||||||
ReSizeGLScene(LOWORD(lParam), HIWORD(lParam));
|
ReSizeGLScene(LOWORD(lParam), HIWORD(lParam));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
// Pass Windows Messages
|
// Pass Windows Messages to the default screensaver window procedure
|
||||||
return DefWindowProc(hWnd, message, wParam, lParam);
|
return DefScreenSaverProc(hWnd, message, wParam, lParam);
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID InitSaver(HWND hwndParent)
|
|
||||||
{
|
|
||||||
WNDCLASS wc;
|
|
||||||
|
|
||||||
ZeroMemory(&wc, sizeof(wc));
|
|
||||||
wc.style = CS_HREDRAW | CS_VREDRAW;
|
|
||||||
wc.lpfnWndProc = WndProc;
|
|
||||||
wc.lpszClassName = APPNAME;
|
|
||||||
RegisterClass(&wc);
|
|
||||||
|
|
||||||
if (hwndParent != 0)
|
|
||||||
{
|
|
||||||
RECT rect;
|
|
||||||
|
|
||||||
GetClientRect(hwndParent, &rect);
|
|
||||||
CreateWindow(APPNAME, APPNAME,
|
|
||||||
WS_VISIBLE | WS_CHILD,
|
|
||||||
0, 0,
|
|
||||||
rect.right,
|
|
||||||
rect.bottom,
|
|
||||||
hwndParent, 0,
|
|
||||||
hInstance, NULL);
|
|
||||||
fullscreen = FALSE;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
HWND hwnd;
|
|
||||||
hwnd = CreateWindow(APPNAME, APPNAME,
|
|
||||||
WS_VISIBLE | WS_POPUP | WS_EX_TOPMOST,
|
|
||||||
0, 0,
|
|
||||||
GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN),
|
|
||||||
HWND_DESKTOP, 0,
|
|
||||||
hInstance, NULL);
|
|
||||||
ShowWindow(hwnd, SW_SHOWMAXIMIZED);
|
|
||||||
ShowCursor(FALSE);
|
|
||||||
fullscreen = TRUE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// Look for any options Windows has passed to us:
|
|
||||||
//
|
|
||||||
// -a <hwnd> (set password)
|
|
||||||
// -s (screensave)
|
|
||||||
// -p <hwnd> (preview)
|
|
||||||
// -c <hwnd> (configure)
|
|
||||||
//
|
|
||||||
VOID ParseCommandLine(LPTSTR szCmdLine, UCHAR *chOption, HWND *hwndParent)
|
|
||||||
{
|
|
||||||
TCHAR ch = *szCmdLine++;
|
|
||||||
|
|
||||||
if (ch == _T('-') || ch == _T('/'))
|
|
||||||
ch = *szCmdLine++;
|
|
||||||
|
|
||||||
//convert to lower case
|
|
||||||
if (ch >= _T('A') && ch <= _T('Z'))
|
|
||||||
ch += _T('a') - _T('A');
|
|
||||||
|
|
||||||
*chOption = ch;
|
|
||||||
ch = *szCmdLine++;
|
|
||||||
|
|
||||||
if (ch == _T(':'))
|
|
||||||
ch = *szCmdLine++;
|
|
||||||
|
|
||||||
while (ch == _T(' ') || ch == _T('\t'))
|
|
||||||
ch = *szCmdLine++;
|
|
||||||
|
|
||||||
if (_istdigit(ch))
|
|
||||||
{
|
|
||||||
unsigned int i = _ttoi(szCmdLine - 1);
|
|
||||||
*hwndParent = (HWND)i;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
*hwndParent = NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Dialogbox procedure for Configuration window
|
// Dialogbox procedure for Configuration window
|
||||||
//
|
//
|
||||||
BOOL CALLBACK ConfigDlgProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
BOOL CALLBACK ScreenSaverConfigureDialog(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
switch (uMsg)
|
switch (uMsg)
|
||||||
{
|
{
|
||||||
case WM_INITDIALOG:
|
case WM_INITDIALOG:
|
||||||
SetDlgItemText(hwnd, IDC_MESSAGE_TEXT, m_Text);
|
LoadSettings();
|
||||||
|
SetDlgItemText(hDlg, IDC_MESSAGE_TEXT, m_Text);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
case WM_COMMAND:
|
case WM_COMMAND:
|
||||||
switch (LOWORD(wParam))
|
switch (LOWORD(wParam))
|
||||||
{
|
{
|
||||||
case IDOK:
|
case IDOK:
|
||||||
GetDlgItemText(hwnd, IDC_MESSAGE_TEXT, m_Text, MAX_PATH);
|
GetDlgItemText(hDlg, IDC_MESSAGE_TEXT, m_Text, MAX_PATH);
|
||||||
SaveSettings();
|
SaveSettings();
|
||||||
EndDialog(hwnd, IDOK);
|
|
||||||
break;
|
/* Fall through */
|
||||||
|
|
||||||
case IDCANCEL:
|
case IDCANCEL:
|
||||||
EndDialog(hwnd, IDCANCEL);
|
EndDialog(hDlg, IDCANCEL);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
case WM_CLOSE:
|
case WM_CLOSE:
|
||||||
EndDialog(hwnd, 0);
|
EndDialog(hDlg, 0);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
@ -523,46 +407,7 @@ BOOL CALLBACK ConfigDlgProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID Configure(VOID)
|
BOOL WINAPI RegisterDialogClasses(HANDLE hInst)
|
||||||
{
|
{
|
||||||
DialogBox(hInstance, MAKEINTRESOURCE(IDD_CONFIG), NULL , (DLGPROC)ConfigDlgProc);
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
INT CALLBACK
|
|
||||||
_tWinMain(HINSTANCE hInst,
|
|
||||||
HINSTANCE hPrev,
|
|
||||||
LPTSTR lpCmdLine,
|
|
||||||
INT iCmdShow)
|
|
||||||
{
|
|
||||||
HWND hwndParent = 0;
|
|
||||||
UCHAR chOption;
|
|
||||||
MSG Message;
|
|
||||||
|
|
||||||
hInstance = hInst;
|
|
||||||
|
|
||||||
ParseCommandLine(lpCmdLine, &chOption, &hwndParent);
|
|
||||||
|
|
||||||
LoadSettings();
|
|
||||||
|
|
||||||
switch (chOption)
|
|
||||||
{
|
|
||||||
case _T('s'):
|
|
||||||
InitSaver(0);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case _T('p'):
|
|
||||||
InitSaver(hwndParent);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case _T('c'):
|
|
||||||
default:
|
|
||||||
Configure();
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
while (GetMessage(&Message, 0, 0, 0))
|
|
||||||
DispatchMessage(&Message);
|
|
||||||
|
|
||||||
return Message.wParam;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
5
reactos/base/applications/screensavers/3dtext/3dtext.def
Normal file
5
reactos/base/applications/screensavers/3dtext/3dtext.def
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
NAME 3dtext.scr
|
||||||
|
|
||||||
|
EXPORTS
|
||||||
|
ScreenSaverProc
|
||||||
|
ScreenSaverConfigureDialog
|
|
@ -1,7 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!DOCTYPE module SYSTEM "../../../../tools/rbuild/project.dtd">
|
<!DOCTYPE module SYSTEM "../../../../tools/rbuild/project.dtd">
|
||||||
<module name="3dtext" type="win32scr" installbase="system32" installname="3dtext.scr" unicode="true">
|
<module name="3dtext" type="win32scr" installbase="system32" installname="3dtext.scr" unicode="yes">
|
||||||
<define name="__USE_W32API" />
|
<importlibrary definition="3dtext.def" />
|
||||||
|
<library>scrnsave</library>
|
||||||
<library>kernel32</library>
|
<library>kernel32</library>
|
||||||
<library>user32</library>
|
<library>user32</library>
|
||||||
<library>gdi32</library>
|
<library>gdi32</library>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
|
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME| DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME| DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Íàñòðîéêè íà åêðàííèÿ ïðåäïàçèòåë ""Òðèìåðåí òåêñò""."
|
CAPTION "Íàñòðîéêè íà åêðàííèÿ ïðåäïàçèòåë ""Òðèìåðåí òåêñò""."
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -8,12 +8,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "Äîáðå",IDOK,216,7,50,14
|
DEFPUSHBUTTON "Äîáðå",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Îòêàç",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Îòêàç",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Ñîáñòâåí òåêñò",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "Ñîáñòâåí òåêñò",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Åêðàíåí ïðåäïàçèòåë ""Òðèìåðåí òåêñò""."
|
IDS_DESCRIPTION "Åêðàíåí ïðåäïàçèòåë ""Òðèìåðåí òåêñò""."
|
||||||
IDS_TITLE "Çà"
|
|
||||||
IDS_TEXT "Íÿìà íóæäà îò íàñòðîéêè."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,19 +1,17 @@
|
||||||
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
|
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "3D Text Bildschirmschoner Einstellungen"
|
CAPTION "3D-Text Bildschirmschoner-Einstellungen"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
BEGIN
|
BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Abbrechen",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Abbrechen",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Eigener Text",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "Eigener Text:",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "3D Text Bildschirmschoner"
|
IDS_DESCRIPTION "3D Text Bildschirmschoner"
|
||||||
IDS_TITLE "Über"
|
|
||||||
IDS_TEXT "Keine Einstellungen nötig."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
|
LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Ñõèìßóåéò ÊåéìÝíïõ 3Ä"
|
CAPTION "Ñõèìßóåéò ÊåéìÝíïõ 3Ä"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -8,12 +8,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "¢êõñï",IDCANCEL,216,24,50,14
|
PUSHBUTTON "¢êõñï",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Προσαρμοσμένο κείμενο:",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "ÐñïóáñìïóìÝíï êåßìåíï:",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Ðñïöýëáîç ïèüíçò ìå êåßìåíï 3Ä"
|
IDS_DESCRIPTION "Ðñïöýëáîç ïèüíçò ìå êåßìåíï 3Ä"
|
||||||
IDS_TITLE "Περί"
|
|
||||||
IDS_TEXT "Αυτή η προφύλαξη οθόνης δε διαθέτει επιλογές τις οποίες μπορείτε να ορίσετε."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "3D Text Screensaver Settings"
|
CAPTION "3D Text Screensaver Settings"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -8,12 +8,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Cancel",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Cancel",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Custom text",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "Custom text",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "3D Text ScreenSaver"
|
IDS_DESCRIPTION "3D Text ScreenSaver"
|
||||||
IDS_TITLE "About"
|
|
||||||
IDS_TEXT "No options need to be set."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
|
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Configuración del Salvapantallas Texto en 3D"
|
CAPTION "Configuración del Salvapantallas Texto en 3D"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -8,12 +8,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "Aceptar",IDOK,216,7,50,14
|
DEFPUSHBUTTON "Aceptar",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Cancelar",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Cancelar",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Texto personalizado",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "Texto personalizado",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Salvapantallas Texto en 3D"
|
IDS_DESCRIPTION "Salvapantallas Texto en 3D"
|
||||||
IDS_TITLE "Acerca de.."
|
|
||||||
IDS_TEXT "Ninguna opción necesita ser configurada."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
|
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Paramètres de l'écran de veille Texte 3D"
|
CAPTION "Paramètres de l'écran de veille Texte 3D"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -8,12 +8,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Annuler",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Annuler",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Texte personnalisé",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "Texte personnalisé",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Écran de veille Texte 3D"
|
IDS_DESCRIPTION "Écran de veille Texte 3D"
|
||||||
IDS_TITLE "À propos de"
|
|
||||||
IDS_TEXT "Il n'y a aucune option à définir."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
|
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Impostazioni del salvaschermo 'Testo 3D'"
|
CAPTION "Impostazioni del salvaschermo 'Testo 3D'"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -8,12 +8,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Annulla",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Annulla",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Testo personalizzato",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "Testo personalizzato",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Salvaschermo 'Testo 3D'"
|
IDS_DESCRIPTION "Salvaschermo 'Testo 3D'"
|
||||||
IDS_TITLE "Informazioni"
|
|
||||||
IDS_TEXT "Nessuna impostazione da effettuare."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
LANGUAGE LANG_LITHUANIAN, SUBLANG_DEFAULT
|
LANGUAGE LANG_LITHUANIAN, SUBLANG_DEFAULT
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 136, 58
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 136, 58
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Ekrano uþsklandos nustatymai"
|
CAPTION "Ekrano uþsklandos nustatymai"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -17,12 +17,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,14,38,50,14
|
DEFPUSHBUTTON "OK",IDOK,14,38,50,14
|
||||||
PUSHBUTTON "Atðaukti",IDCANCEL,72,38,50,14
|
PUSHBUTTON "Atðaukti",IDCANCEL,72,38,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,6,18,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,6,18,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Pasirinktas tekstas",IDC_STATIC_TEXT,7,7,65,8
|
LTEXT "Pasirinktas tekstas",IDC_STATIC,7,7,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "3D tekstas"
|
IDS_DESCRIPTION "3D tekstas"
|
||||||
IDS_TITLE "Apie"
|
|
||||||
IDS_TEXT "Nëra keièiamø parametrø."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
|
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "3D Text Screensaver Settings"
|
CAPTION "3D Text Screensaver Settings"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -15,12 +15,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Anuluj",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Anuluj",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "W³asny tekst",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "W³asny tekst",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Wygaszacz ekranu Tekst 3d"
|
IDS_DESCRIPTION "Wygaszacz ekranu Tekst 3d"
|
||||||
IDS_TITLE "O programie"
|
|
||||||
IDS_TEXT "Brak opcji."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
|
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Ïàðàìåòðû çàñòàâêè"
|
CAPTION "Ïàðàìåòðû çàñòàâêè"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -8,12 +8,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Îòìåíà",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Îòìåíà",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Другой текст",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "Äðóãîé òåêñò",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Çàñòàâêà 3D-òåêñò"
|
IDS_DESCRIPTION "Çàñòàâêà 3D-òåêñò"
|
||||||
IDS_TITLE "О программе"
|
|
||||||
IDS_TEXT "Эта заставка не имеет настраиваемых параметров."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
|
LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Nastavenie šetrièa obrazovky 3D text"
|
CAPTION "Nastavenie šetrièa obrazovky 3D text"
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -12,12 +12,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Zruši<C5A1>",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Zruši<C5A1>",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Ľubovoľný text",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "¼ubovo¾ný text",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "3D text - šetriè obrazovky"
|
IDS_DESCRIPTION "3D text - šetriè obrazovky"
|
||||||
IDS_TITLE "Čo je ..."
|
|
||||||
IDS_TEXT "Nie sú potrebné žiadne nastavenia."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
|
|
||||||
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
|
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
|
||||||
|
|
||||||
IDD_CONFIG DIALOGEX 0, 0, 273, 178
|
DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178
|
||||||
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Ïàðàìåòðû çàñòàâêè ""Îá'ºìíèé òåêñò"""
|
CAPTION "Ïàðàìåòðû çàñòàâêè ""Îá'ºìíèé òåêñò"""
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||||
|
@ -16,12 +16,10 @@ BEGIN
|
||||||
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
DEFPUSHBUTTON "OK",IDOK,216,7,50,14
|
||||||
PUSHBUTTON "Ñêàñóâàòè",IDCANCEL,216,24,50,14
|
PUSHBUTTON "Ñêàñóâàòè",IDCANCEL,216,24,50,14
|
||||||
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
EDITTEXT IDC_MESSAGE_TEXT,18,28,122,14,ES_AUTOHSCROLL
|
||||||
LTEXT "Текст",IDC_STATIC_TEXT,18,17,65,8
|
LTEXT "Òåêñò",IDC_STATIC,18,17,65,8
|
||||||
END
|
END
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Çàñòàâêà ""Îá'ºìíèé òåêñò"""
|
IDS_DESCRIPTION "Çàñòàâêà ""Îá'ºìíèé òåêñò"""
|
||||||
IDS_TITLE "Про"
|
|
||||||
IDS_TEXT "Ця заставка не має налаштовуваних параметрів."
|
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,23 +1,2 @@
|
||||||
//{{NO_DEPENDENCIES}}
|
#define IDC_STATIC -1
|
||||||
// Microsoft Visual C++ generated include file.
|
#define IDC_MESSAGE_TEXT 1001
|
||||||
// Used by en-US.rc
|
|
||||||
//
|
|
||||||
#define IDD_CONFIG 9
|
|
||||||
#define IDD_DIALOG1 101
|
|
||||||
#define IDC_MESSAGE_TEXT 1001
|
|
||||||
#define IDC_STATIC_TEXT 1002
|
|
||||||
|
|
||||||
#define IDS_DESCRIPTION 1
|
|
||||||
#define IDS_TITLE 2
|
|
||||||
#define IDS_TEXT 3
|
|
||||||
|
|
||||||
// Next default values for new objects
|
|
||||||
//
|
|
||||||
#ifdef APSTUDIO_INVOKED
|
|
||||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
|
||||||
#define _APS_NEXT_RESOURCE_VALUE 102
|
|
||||||
#define _APS_NEXT_COMMAND_VALUE 40001
|
|
||||||
#define _APS_NEXT_CONTROL_VALUE 1003
|
|
||||||
#define _APS_NEXT_SYMED_VALUE 101
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
#include <scrnsave.h>
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
|
|
||||||
#define REACTOS_VERSION_DLL
|
#define REACTOS_VERSION_DLL
|
||||||
#define REACTOS_STR_FILE_DESCRIPTION "OpenGL 3DText ScreenSaver\0"
|
#define REACTOS_STR_FILE_DESCRIPTION "OpenGL 3DText ScreenSaver\0"
|
||||||
#define REACTOS_STR_INTERNAL_NAME "ss3dtext\0"
|
#define REACTOS_STR_INTERNAL_NAME "3dtext\0"
|
||||||
#define REACTOS_STR_ORIGINAL_FILENAME "ss3dtext.scr\0"
|
#define REACTOS_STR_ORIGINAL_FILENAME "3dtext.scr\0"
|
||||||
|
|
||||||
#include <reactos/version.rc>
|
#include <reactos/version.rc>
|
||||||
|
|
||||||
#include "lang/bg-BG.rc"
|
#include "lang/bg-BG.rc"
|
||||||
|
@ -19,6 +19,6 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
#include "lang/it-IT.rc"
|
#include "lang/it-IT.rc"
|
||||||
#include "lang/lt-LT.rc"
|
#include "lang/lt-LT.rc"
|
||||||
#include "lang/pl-PL.rc"
|
#include "lang/pl-PL.rc"
|
||||||
|
#include "lang/ru-RU.rc"
|
||||||
#include "lang/sk-SK.rc"
|
#include "lang/sk-SK.rc"
|
||||||
#include "lang/uk-UA.rc"
|
#include "lang/uk-UA.rc"
|
||||||
#include "lang/ru-RU.rc"
|
|
||||||
|
|
|
@ -1,78 +1,70 @@
|
||||||
/*
|
/*
|
||||||
Screen saver library by Anders Norlander <anorland@hem2.passagen.se>
|
* PROJECT: ReactOS Screen Saver Library
|
||||||
|
* LICENSE: GPL v2 or any later version
|
||||||
This library is (hopefully) compatible with Microsoft's
|
* FILE: include/psdk/scrnsave.h
|
||||||
screen saver library.
|
* PURPOSE: Header file for the library
|
||||||
|
* PROGRAMMERS: Anders Norlander <anorland@hem2.passagen.se>
|
||||||
This is public domain software.
|
* Colin Finck <mail@colinfinck.de>
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _SCRNSAVE_H
|
#ifndef _SCRNSAVE_H
|
||||||
#define _SCRNSAVE_H
|
#define _SCRNSAVE_H
|
||||||
#if __GNUC__ >=3
|
|
||||||
#pragma GCC system_header
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* configure dialog identifier */
|
#define idsIsPassword 1000
|
||||||
#define DLG_SCRNSAVECONFIGURE 2003
|
#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 idsIsPassword 1000
|
// If you add a configuration dialog for your screen saver, it must have this dialog ID.
|
||||||
#define idsIniFile 1001
|
#define DLG_SCRNSAVECONFIGURE 2003
|
||||||
#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 IDS_DESCRIPTION 1
|
#define IDS_DESCRIPTION 1
|
||||||
#define ID_APP 100
|
#define ID_APP 100
|
||||||
|
|
||||||
#define WS_GT (WS_GROUP | WS_TABSTOP)
|
#define WS_GT (WS_GROUP | WS_TABSTOP)
|
||||||
#define SCRM_VERIFYPW WM_APP
|
#define MAXFILELEN 13
|
||||||
#define MAXFILELEN 13
|
#define TITLEBARNAMELEN 40
|
||||||
#define TITLEBARNAMELEN 40
|
#define APPNAMEBUFFERLEN 40
|
||||||
#define APPNAMEBUFFERLEN 40
|
#define BUFFLEN 255
|
||||||
#define BUFFLEN 255
|
|
||||||
|
|
||||||
#ifndef RC_INVOKED
|
// The dialog procedure of the screen saver configure dialog (if any)
|
||||||
|
// If you don't have a configuration dialog, just implement a procedure that always returns FALSE.
|
||||||
|
BOOL WINAPI ScreenSaverConfigureDialog(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||||
|
|
||||||
/* functions provided by the aothor of the screen saver */
|
// Use this function if you want to register special classes before opening the configuration dialog.
|
||||||
BOOL WINAPI ScreenSaverConfigureDialog(HWND,UINT,WPARAM,LPARAM);
|
// Return TRUE here if the classes were registered successfully and the configuration dialog shall be opened.
|
||||||
BOOL WINAPI RegisterDialogClasses(HANDLE);
|
// If you return FALSE, no configuration dialog will be opened.
|
||||||
LONG WINAPI ScreenSaverProc(HWND,UINT,WPARAM,LPARAM);
|
BOOL WINAPI RegisterDialogClasses(HANDLE hInst);
|
||||||
|
|
||||||
/* Change name of function if we are using UNICODE */
|
// The screen saver window procedure
|
||||||
#ifdef UNICODE
|
LRESULT WINAPI ScreenSaverProc(HWND, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||||
#define DefScreenSaverProc DefScreenSaverProcW
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* default screen saver proc; call instead of DefWindowProc */
|
// The window procedure, which handles default tasks for screen savers.
|
||||||
LONG WINAPI DefScreenSaverProc(HWND,UINT,WPARAM,LPARAM);
|
// Use this instead of DefWindowProc.
|
||||||
|
LRESULT WINAPI DefScreenSaverProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||||
|
|
||||||
/* change password */
|
// These globals are defined in the screen saver library.
|
||||||
void WINAPI ScreenSaverChangePassword(HWND);
|
extern HINSTANCE hMainInstance;
|
||||||
|
extern HWND hMainWindow;
|
||||||
/* globals that may be used by screen saver */
|
extern BOOL fChildPreview;
|
||||||
extern HINSTANCE hMainInstance;
|
extern TCHAR szName[];
|
||||||
extern HWND hMainWindow;
|
extern TCHAR szAppName[];
|
||||||
extern BOOL fChildPreview;
|
extern TCHAR szIniFile[];
|
||||||
extern TCHAR szName[];
|
extern TCHAR szScreenSaver[];
|
||||||
extern TCHAR szAppName[];
|
extern TCHAR szHelpFile[];
|
||||||
extern TCHAR szIniFile[];
|
extern TCHAR szNoHelpMemory[];
|
||||||
extern TCHAR szScreenSaver[];
|
extern UINT MyHelpMessage;
|
||||||
extern TCHAR szHelpFile[];
|
|
||||||
extern TCHAR szNoHelpMemory[];
|
|
||||||
extern UINT MyHelpMessage;
|
|
||||||
|
|
||||||
#endif /* RC_INVOKED */
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,21 +1,20 @@
|
||||||
/*
|
/*
|
||||||
Screen saver library by Anders Norlander <anorland@hem2.passagen.se>
|
* PROJECT: ReactOS Screen Saver Library
|
||||||
|
* LICENSE: GPL v2 or any later version
|
||||||
This library is (hopefully) compatible with Microsoft's
|
* FILE: lib/sdk/scrnsave/scrnsave.c
|
||||||
screen saver library.
|
* PURPOSE: Library for writing screen savers, compatible with MS' scrnsave.lib
|
||||||
|
* PROGRAMMERS: Anders Norlander <anorland@hem2.passagen.se>
|
||||||
This is public domain software.
|
* Colin Finck <mail@colinfinck.de>
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
#include <tchar.h>
|
||||||
#include <scrnsave.h>
|
#include <scrnsave.h>
|
||||||
#include <regstr.h>
|
|
||||||
|
|
||||||
/* screen saver window class */
|
// Screen Saver window class
|
||||||
#define CLASS_SCRNSAVE TEXT("WindowsScreenSaverClass")
|
#define CLASS_SCRNSAVE TEXT("WindowsScreenSaverClass")
|
||||||
|
|
||||||
/* globals */
|
// Globals
|
||||||
HWND hMainWindow = NULL;
|
HWND hMainWindow = NULL;
|
||||||
BOOL fChildPreview = FALSE;
|
BOOL fChildPreview = FALSE;
|
||||||
HINSTANCE hMainInstance;
|
HINSTANCE hMainInstance;
|
||||||
|
@ -27,45 +26,21 @@ TCHAR szHelpFile[MAXFILELEN];
|
||||||
TCHAR szNoHelpMemory[BUFFLEN];
|
TCHAR szNoHelpMemory[BUFFLEN];
|
||||||
UINT MyHelpMessage;
|
UINT MyHelpMessage;
|
||||||
|
|
||||||
/* local house keeping */
|
// Local house keeping
|
||||||
static HINSTANCE hPwdLib = NULL;
|
|
||||||
static POINT pt_orig;
|
static POINT pt_orig;
|
||||||
static BOOL checking_pwd = FALSE;
|
|
||||||
static BOOL closing = FALSE;
|
|
||||||
static BOOL w95 = FALSE;
|
|
||||||
|
|
||||||
typedef BOOL (WINAPI *VERIFYPWDPROC)(HWND);
|
static int ISSPACE(TCHAR c)
|
||||||
typedef DWORD (WINAPI *CHPWDPROC)(LPCTSTR, HWND, DWORD, PVOID);
|
|
||||||
static VERIFYPWDPROC VerifyScreenSavePwd = NULL;
|
|
||||||
|
|
||||||
/* function names */
|
|
||||||
#define szVerifyPassword "VerifyScreenSavePwd"
|
|
||||||
|
|
||||||
#ifdef UNICODE
|
|
||||||
#define szPwdChangePassword "PwdChangePasswordW"
|
|
||||||
#else
|
|
||||||
#define szPwdChangePassword "PwdChangePasswordA"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static void TerminateScreenSaver(HWND hWnd);
|
|
||||||
static BOOL RegisterClasses(void);
|
|
||||||
static LRESULT WINAPI SysScreenSaverProc(HWND,UINT,WPARAM,LPARAM);
|
|
||||||
static int LaunchScreenSaver(HWND hParent);
|
|
||||||
static void LaunchConfig(void);
|
|
||||||
|
|
||||||
static int ISSPACE(char c)
|
|
||||||
{
|
{
|
||||||
return (c == ' ' || c == '\t');
|
return (c == ' ' || c == '\t');
|
||||||
}
|
}
|
||||||
|
|
||||||
#define ISNUM(c) ((c) >= '0' && c <= '9')
|
#define ISNUM(c) ((c) >= '0' && c <= '9')
|
||||||
|
|
||||||
static unsigned long
|
static unsigned long _toul(const TCHAR *s)
|
||||||
_toul(const char *s)
|
|
||||||
{
|
{
|
||||||
unsigned long res;
|
unsigned long res;
|
||||||
unsigned long n;
|
unsigned long n;
|
||||||
const char *p;
|
const TCHAR *p;
|
||||||
|
|
||||||
for (p = s; *p; p++)
|
for (p = s; *p; p++)
|
||||||
if (!ISNUM(*p))
|
if (!ISNUM(*p))
|
||||||
|
@ -80,138 +55,117 @@ _toul(const char *s)
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* screen saver entry point */
|
// This function takes care of *must* do tasks, like terminating screen saver
|
||||||
int APIENTRY WinMain(HINSTANCE hInst, HINSTANCE hPrevInst,
|
static LRESULT WINAPI SysScreenSaverProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
LPSTR CmdLine, int nCmdShow)
|
|
||||||
{
|
{
|
||||||
LPSTR p;
|
switch(uMsg)
|
||||||
OSVERSIONINFO vi;
|
|
||||||
|
|
||||||
/* initialize */
|
|
||||||
hMainInstance = hInst;
|
|
||||||
|
|
||||||
vi.dwOSVersionInfoSize = sizeof(vi);
|
|
||||||
GetVersionEx(&vi);
|
|
||||||
/* check if we are going to check for passwords */
|
|
||||||
if (vi.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS)
|
|
||||||
{
|
{
|
||||||
HKEY hKey;
|
case WM_CREATE:
|
||||||
/* we are using windows 95 */
|
// Mouse is not supposed to move from this position
|
||||||
w95 = TRUE;
|
GetCursorPos(&pt_orig);
|
||||||
if (RegOpenKey(HKEY_CURRENT_USER, REGSTR_PATH_SCREENSAVE ,&hKey) ==
|
break;
|
||||||
ERROR_SUCCESS)
|
|
||||||
{
|
|
||||||
DWORD check_pwd;
|
|
||||||
DWORD size = sizeof(DWORD);
|
|
||||||
DWORD type;
|
|
||||||
LONG res;
|
|
||||||
|
|
||||||
res = RegQueryValueEx(hKey, REGSTR_VALUE_USESCRPASSWORD,
|
case WM_DESTROY:
|
||||||
NULL, &type, (PBYTE) &check_pwd, &size);
|
PostQuitMessage(0);
|
||||||
|
break;
|
||||||
|
|
||||||
if (check_pwd && res == ERROR_SUCCESS)
|
case WM_SYSCOMMAND:
|
||||||
|
if (!fChildPreview)
|
||||||
{
|
{
|
||||||
hPwdLib = LoadLibrary(TEXT("PASSWORD.CPL"));
|
switch (wParam)
|
||||||
if (hPwdLib)
|
{
|
||||||
VerifyScreenSavePwd = GetProcAddress(hPwdLib, szVerifyPassword);
|
case SC_CLOSE:
|
||||||
|
case SC_SCREENSAVE:
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
RegCloseKey(hKey);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* parse arguments */
|
return ScreenSaverProc(hWnd, uMsg, wParam, lParam);
|
||||||
for (p = CmdLine; *p; p++)
|
}
|
||||||
|
|
||||||
|
LRESULT WINAPI DefScreenSaverProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
|
{
|
||||||
|
// Don't do any special processing when in preview mode
|
||||||
|
if (fChildPreview)
|
||||||
|
return DefWindowProc(hWnd, uMsg, wParam, lParam);
|
||||||
|
|
||||||
|
switch (uMsg)
|
||||||
{
|
{
|
||||||
switch (*p)
|
case WM_NCACTIVATE:
|
||||||
|
case WM_ACTIVATE:
|
||||||
|
case WM_ACTIVATEAPP:
|
||||||
|
if (!wParam)
|
||||||
|
{
|
||||||
|
// wParam is FALSE, so the screensaver is losing the focus.
|
||||||
|
PostMessage(hWnd, WM_CLOSE, 0, 0);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case WM_MOUSEMOVE:
|
||||||
{
|
{
|
||||||
case 'S':
|
POINT pt;
|
||||||
case 's':
|
GetCursorPos(&pt);
|
||||||
/* start screen saver */
|
if (pt.x == pt_orig.x && pt.y == pt_orig.y)
|
||||||
return LaunchScreenSaver(NULL);
|
|
||||||
|
|
||||||
case 'P':
|
|
||||||
case 'p':
|
|
||||||
{
|
|
||||||
/* start screen saver in preview window */
|
|
||||||
HWND hParent;
|
|
||||||
fChildPreview = TRUE;
|
|
||||||
|
|
||||||
while (ISSPACE(*++p));
|
|
||||||
hParent = (HWND) _toul(p);
|
|
||||||
|
|
||||||
if (hParent && IsWindow(hParent))
|
|
||||||
return LaunchScreenSaver(hParent);
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
case 'C':
|
|
||||||
case 'c':
|
|
||||||
/* display configure dialog */
|
|
||||||
LaunchConfig();
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
case 'A':
|
|
||||||
case 'a':
|
|
||||||
{
|
|
||||||
/* change screen saver password */
|
|
||||||
HWND hParent;
|
|
||||||
while (ISSPACE(*++p));
|
|
||||||
hParent = (HWND) _toul(p);
|
|
||||||
|
|
||||||
if (!hParent || !IsWindow(hParent))
|
|
||||||
hParent = GetForegroundWindow();
|
|
||||||
|
|
||||||
ScreenSaverChangePassword(hParent);
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
case '-':
|
|
||||||
case '/':
|
|
||||||
case ' ':
|
|
||||||
default:
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
// Fall through
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case WM_LBUTTONDOWN:
|
||||||
|
case WM_RBUTTONDOWN:
|
||||||
|
case WM_MBUTTONDOWN:
|
||||||
|
case WM_KEYDOWN:
|
||||||
|
case WM_KEYUP:
|
||||||
|
// Send a WM_CLOSE to close the screen saver (allows the screensaver author to do clean-up tasks)
|
||||||
|
PostMessage(hWnd, WM_CLOSE, 0, 0);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case WM_SETCURSOR:
|
||||||
|
SetCursor(NULL);
|
||||||
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
LaunchConfig();
|
return DefWindowProc(hWnd, uMsg, wParam, lParam);
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
// Registers the screen saver window class
|
||||||
|
static BOOL RegisterScreenSaverClass(void)
|
||||||
|
{
|
||||||
|
WNDCLASS cls = {0,};
|
||||||
|
|
||||||
|
cls.hIcon = LoadIcon(hMainInstance, MAKEINTATOM(ID_APP));
|
||||||
|
cls.lpszClassName = CLASS_SCRNSAVE;
|
||||||
|
cls.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);
|
||||||
|
cls.hInstance = hMainInstance;
|
||||||
|
cls.style = CS_VREDRAW | CS_HREDRAW | CS_SAVEBITS | CS_PARENTDC;
|
||||||
|
cls.lpfnWndProc = (WNDPROC)SysScreenSaverProc;
|
||||||
|
|
||||||
|
return RegisterClass(&cls) != 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void LaunchConfig(void)
|
static void LaunchConfig(void)
|
||||||
{
|
{
|
||||||
/* FIXME: should this be called */
|
// Only show the dialog if the RegisterDialogClasses function succeeded.
|
||||||
RegisterDialogClasses(hMainInstance);
|
// This is the same behaviour as MS' scrnsave.lib.
|
||||||
|
if( RegisterDialogClasses(hMainInstance) )
|
||||||
/* display configure dialog */
|
DialogBox(hMainInstance, MAKEINTRESOURCE(DLG_SCRNSAVECONFIGURE), GetForegroundWindow(), (DLGPROC) ScreenSaverConfigureDialog);
|
||||||
DialogBox(hMainInstance, MAKEINTRESOURCE(DLG_SCRNSAVECONFIGURE),
|
|
||||||
GetForegroundWindow(), (DLGPROC) ScreenSaverConfigureDialog);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int LaunchScreenSaver(HWND hParent)
|
static int LaunchScreenSaver(HWND hParent)
|
||||||
{
|
{
|
||||||
BOOL foo;
|
|
||||||
UINT style;
|
UINT style;
|
||||||
RECT rc;
|
RECT rc;
|
||||||
MSG msg;
|
MSG msg;
|
||||||
|
|
||||||
/* don't allow other tasks to get into the foreground */
|
if (!RegisterScreenSaverClass())
|
||||||
if (w95 && !fChildPreview)
|
|
||||||
SystemParametersInfo(SPI_SCREENSAVERRUNNING, TRUE, &foo, 0);
|
|
||||||
|
|
||||||
msg.wParam = 0;
|
|
||||||
|
|
||||||
/* register classes, both user defined and classes used by screen saver
|
|
||||||
library */
|
|
||||||
if (!RegisterClasses())
|
|
||||||
{
|
{
|
||||||
MessageBox(NULL, TEXT("RegisterClasses() failed"), NULL, MB_ICONHAND);
|
MessageBox(NULL, TEXT("RegisterClass() failed"), NULL, MB_ICONHAND);
|
||||||
goto restore;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* a slightly different approach needs to be used when displaying
|
// A slightly different approach needs to be used when displaying in a preview window
|
||||||
in a preview window */
|
|
||||||
if (hParent)
|
if (hParent)
|
||||||
{
|
{
|
||||||
style = WS_CHILD;
|
style = WS_CHILD;
|
||||||
|
@ -225,213 +179,71 @@ static int LaunchScreenSaver(HWND hParent)
|
||||||
style |= WS_VISIBLE;
|
style |= WS_VISIBLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* create main screen saver window */
|
// Create the main screen saver window
|
||||||
hMainWindow = CreateWindowEx(hParent ? 0 : WS_EX_TOPMOST, CLASS_SCRNSAVE,
|
hMainWindow = CreateWindowEx(hParent ? 0 : WS_EX_TOPMOST, CLASS_SCRNSAVE,
|
||||||
TEXT("SCREENSAVER"), style,
|
TEXT("SCREENSAVER"), style,
|
||||||
0, 0, rc.right, rc.bottom, hParent, NULL,
|
0, 0, rc.right, rc.bottom, hParent, NULL,
|
||||||
hMainInstance, NULL);
|
hMainInstance, NULL);
|
||||||
|
|
||||||
/* display window and start pumping messages */
|
// Display window and start pumping messages
|
||||||
if (hMainWindow)
|
if (hMainWindow)
|
||||||
{
|
{
|
||||||
UpdateWindow(hMainWindow);
|
|
||||||
ShowWindow(hMainWindow, SW_SHOW);
|
ShowWindow(hMainWindow, SW_SHOW);
|
||||||
|
|
||||||
while (GetMessage(&msg, NULL, 0, 0) == TRUE)
|
while (GetMessage(&msg, NULL, 0, 0))
|
||||||
{
|
|
||||||
TranslateMessage(&msg);
|
|
||||||
DispatchMessage(&msg);
|
DispatchMessage(&msg);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
restore:
|
|
||||||
/* restore system */
|
|
||||||
if (w95 && !fChildPreview)
|
|
||||||
SystemParametersInfo(SPI_SCREENSAVERRUNNING, FALSE, &foo, 0);
|
|
||||||
|
|
||||||
FreeLibrary(hPwdLib);
|
|
||||||
return msg.wParam;
|
return msg.wParam;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* this function takes care of *must* do tasks, like terminating
|
// Screen Saver entry point
|
||||||
screen saver */
|
int APIENTRY _tWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPTSTR CmdLine, int nCmdShow)
|
||||||
static LRESULT WINAPI SysScreenSaverProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|
||||||
{
|
{
|
||||||
switch (msg)
|
LPTSTR p;
|
||||||
|
|
||||||
|
hMainInstance = hInst;
|
||||||
|
|
||||||
|
// Parse the arguments
|
||||||
|
for (p = CmdLine; *p; p++)
|
||||||
{
|
{
|
||||||
case WM_CREATE:
|
switch (*p)
|
||||||
if (!fChildPreview)
|
{
|
||||||
SetCursor(NULL);
|
case 'S':
|
||||||
/* mouse is not supposed to move from this position */
|
case 's':
|
||||||
GetCursorPos(&pt_orig);
|
// Start the screen saver
|
||||||
break;
|
return LaunchScreenSaver(NULL);
|
||||||
|
|
||||||
case WM_DESTROY:
|
case 'P':
|
||||||
PostQuitMessage(0);
|
case 'p':
|
||||||
break;
|
|
||||||
|
|
||||||
case WM_TIMER:
|
|
||||||
if (closing)
|
|
||||||
return 0;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case WM_PAINT:
|
|
||||||
if (closing)
|
|
||||||
return DefWindowProc(hWnd, msg, wParam, lParam);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case WM_SYSCOMMAND:
|
|
||||||
if (!fChildPreview)
|
|
||||||
{
|
{
|
||||||
switch (wParam)
|
// Start the screen saver in preview mode
|
||||||
{
|
HWND hParent;
|
||||||
case SC_CLOSE:
|
fChildPreview = TRUE;
|
||||||
case SC_SCREENSAVE:
|
|
||||||
case SC_NEXTWINDOW:
|
while (ISSPACE(*++p));
|
||||||
case SC_PREVWINDOW:
|
hParent = (HWND) _toul(p);
|
||||||
return FALSE;
|
|
||||||
}
|
if (hParent && IsWindow(hParent))
|
||||||
|
return LaunchScreenSaver(hParent);
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
|
|
||||||
case WM_MOUSEMOVE:
|
|
||||||
case WM_LBUTTONDOWN:
|
|
||||||
case WM_RBUTTONDOWN:
|
|
||||||
case WM_MBUTTONDOWN:
|
|
||||||
case WM_KEYDOWN:
|
|
||||||
case WM_SYSKEYDOWN:
|
|
||||||
case WM_NCACTIVATE:
|
|
||||||
case WM_ACTIVATE:
|
|
||||||
case WM_ACTIVATEAPP:
|
|
||||||
if (closing)
|
|
||||||
return DefWindowProc(hWnd, msg, wParam, lParam);
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
return ScreenSaverProc(hWnd, msg, wParam, lParam);
|
|
||||||
}
|
|
||||||
|
|
||||||
LONG WINAPI DefScreenSaverProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|
||||||
{
|
|
||||||
/* don't do any special processing when in preview mode */
|
|
||||||
if (fChildPreview || closing)
|
|
||||||
return DefWindowProc(hWnd, msg, wParam, lParam);
|
|
||||||
|
|
||||||
switch (msg)
|
|
||||||
{
|
|
||||||
case WM_CLOSE:
|
|
||||||
TerminateScreenSaver(hWnd);
|
|
||||||
/* do NOT pass this to DefWindowProc; it will terminate even if
|
|
||||||
an invalid password was given.
|
|
||||||
*/
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case SCRM_VERIFYPW:
|
case 'C':
|
||||||
/* verify password or return TRUE if password checking is turned off */
|
case 'c':
|
||||||
if (VerifyScreenSavePwd)
|
// Display the configuration dialog
|
||||||
return VerifyScreenSavePwd(hWnd);
|
LaunchConfig();
|
||||||
else
|
return 0;
|
||||||
return TRUE;
|
|
||||||
|
|
||||||
case WM_SETCURSOR:
|
case '-':
|
||||||
if (checking_pwd)
|
case '/':
|
||||||
break;
|
case ' ':
|
||||||
SetCursor(NULL);
|
default:
|
||||||
return TRUE;
|
|
||||||
|
|
||||||
case WM_NCACTIVATE:
|
|
||||||
case WM_ACTIVATE:
|
|
||||||
case WM_ACTIVATEAPP:
|
|
||||||
if (wParam != FALSE)
|
|
||||||
break;
|
|
||||||
|
|
||||||
case WM_MOUSEMOVE:
|
|
||||||
{
|
|
||||||
POINT pt;
|
|
||||||
GetCursorPos(&pt);
|
|
||||||
if (pt.x == pt_orig.x && pt.y == pt_orig.y)
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case WM_LBUTTONDOWN:
|
|
||||||
case WM_RBUTTONDOWN:
|
|
||||||
case WM_MBUTTONDOWN:
|
|
||||||
case WM_KEYDOWN:
|
|
||||||
case WM_SYSKEYDOWN:
|
|
||||||
/* try to terminate screen saver */
|
|
||||||
if (!checking_pwd)
|
|
||||||
PostMessage(hWnd, WM_CLOSE, 0, 0);
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return DefWindowProc(hWnd, msg, wParam, lParam);
|
LaunchConfig();
|
||||||
}
|
|
||||||
|
return 0;
|
||||||
static void TerminateScreenSaver(HWND hWnd)
|
|
||||||
{
|
|
||||||
/* don't allow recursion */
|
|
||||||
if (checking_pwd || closing)
|
|
||||||
return;
|
|
||||||
|
|
||||||
/* verify password */
|
|
||||||
if (VerifyScreenSavePwd)
|
|
||||||
{
|
|
||||||
checking_pwd = TRUE;
|
|
||||||
closing = SendMessage(hWnd, SCRM_VERIFYPW, 0, 0);
|
|
||||||
checking_pwd = FALSE;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
closing = TRUE;
|
|
||||||
|
|
||||||
/* are we closing? */
|
|
||||||
if (closing)
|
|
||||||
{
|
|
||||||
DestroyWindow(hWnd);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
GetCursorPos(&pt_orig); /* if not: get new mouse position */
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
Register screen saver window class and call user
|
|
||||||
supplied hook.
|
|
||||||
*/
|
|
||||||
static BOOL RegisterClasses(void)
|
|
||||||
{
|
|
||||||
WNDCLASS cls;
|
|
||||||
ZeroMemory(&cls, sizeof(cls));
|
|
||||||
cls.hCursor = NULL;
|
|
||||||
cls.hIcon = LoadIcon(hMainInstance, MAKEINTATOM(ID_APP));
|
|
||||||
cls.lpszMenuName = NULL;
|
|
||||||
cls.lpszClassName = CLASS_SCRNSAVE;
|
|
||||||
cls.hbrBackground = NULL; //(HBRUSH)GetStockObject(BLACK_BRUSH);
|
|
||||||
cls.hInstance = hMainInstance;
|
|
||||||
cls.style = CS_VREDRAW | CS_HREDRAW | CS_SAVEBITS | CS_PARENTDC;
|
|
||||||
cls.lpfnWndProc = (WNDPROC) SysScreenSaverProc;
|
|
||||||
cls.cbWndExtra = 0;
|
|
||||||
cls.cbClsExtra = 0;
|
|
||||||
|
|
||||||
if (!RegisterClass(&cls))
|
|
||||||
return FALSE;
|
|
||||||
|
|
||||||
return RegisterDialogClasses(hMainInstance);
|
|
||||||
}
|
|
||||||
|
|
||||||
void WINAPI ScreenSaverChangePassword(HWND hParent)
|
|
||||||
{
|
|
||||||
/* load Master Password Router (MPR) */
|
|
||||||
HINSTANCE hMpr = LoadLibrary(TEXT("MPR.DLL"));
|
|
||||||
|
|
||||||
if (hMpr)
|
|
||||||
{
|
|
||||||
CHPWDPROC ChangePassword;
|
|
||||||
ChangePassword = (CHPWDPROC) GetProcAddress(hMpr, szPwdChangePassword);
|
|
||||||
|
|
||||||
/* change password for screen saver provider */
|
|
||||||
if (ChangePassword)
|
|
||||||
ChangePassword(TEXT("SCRSAVE"), hParent, 0, NULL);
|
|
||||||
|
|
||||||
FreeLibrary(hMpr);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!DOCTYPE group SYSTEM "../../../tools/rbuild/project.dtd">
|
<!DOCTYPE group SYSTEM "../../../tools/rbuild/project.dtd">
|
||||||
<group>
|
<group>
|
||||||
<module name="scrnsave" type="staticlibrary">
|
<module name="scrnsave" type="staticlibrary" unicode="yes">
|
||||||
<file>scrnsave.c</file>
|
<file>scrnsave.c</file>
|
||||||
</module>
|
</module>
|
||||||
</group>
|
</group>
|
|
@ -1,15 +1,11 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!DOCTYPE module SYSTEM "../../../../tools/rbuild/project.dtd">
|
<!DOCTYPE module SYSTEM "../../../../tools/rbuild/project.dtd">
|
||||||
<module name="blankscr" type="win32scr" installbase="system32" installname="scrnsave.scr">
|
<module name="blankscr" type="win32scr" installbase="system32" installname="scrnsave.scr" unicode="yes">
|
||||||
<importlibrary definition="scrnsave.def" />
|
<importlibrary definition="scrnsave.def" />
|
||||||
<library>scrnsave</library>
|
<library>scrnsave</library>
|
||||||
<library>kernel32</library>
|
<library>kernel32</library>
|
||||||
<library>user32</library>
|
<library>user32</library>
|
||||||
<library>gdi32</library>
|
<library>gdi32</library>
|
||||||
<library>opengl32</library>
|
|
||||||
<library>glu32</library>
|
|
||||||
<library>advapi32</library>
|
|
||||||
<library>shell32</library>
|
|
||||||
|
|
||||||
<file>scrnsave.c</file>
|
<file>scrnsave.c</file>
|
||||||
<file>scrnsave.rc</file>
|
<file>scrnsave.rc</file>
|
||||||
|
|
|
@ -3,6 +3,5 @@ LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Blank"
|
IDS_DESCRIPTION "Blank"
|
||||||
IDS_TITLE "Çà"
|
|
||||||
IDS_TEXT "Íÿìà âúçìîæíîñò çà íàñòðîéêè."
|
IDS_TEXT "Íÿìà âúçìîæíîñò çà íàñòðîéêè."
|
||||||
END
|
END
|
||||||
|
|
|
@ -2,7 +2,6 @@ LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Blank"
|
IDS_DESCRIPTION "Schwarzer Bildschirm"
|
||||||
IDS_TITLE "Über"
|
|
||||||
IDS_TEXT "Keinerlei Einstellungen notwendig."
|
IDS_TEXT "Keinerlei Einstellungen notwendig."
|
||||||
END
|
END
|
||||||
|
|
|
@ -2,7 +2,6 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Blank"
|
IDS_DESCRIPTION "Blank screen"
|
||||||
IDS_TITLE "About"
|
|
||||||
IDS_TEXT "No options need to be set."
|
IDS_TEXT "No options need to be set."
|
||||||
END
|
END
|
||||||
|
|
|
@ -3,6 +3,5 @@ LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "En blanco"
|
IDS_DESCRIPTION "En blanco"
|
||||||
IDS_TITLE "Acerca de"
|
|
||||||
IDS_TEXT "Ninguna opción necesita ser configurada."
|
IDS_TEXT "Ninguna opción necesita ser configurada."
|
||||||
END
|
END
|
||||||
|
|
|
@ -3,6 +3,5 @@ LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Vide"
|
IDS_DESCRIPTION "Vide"
|
||||||
IDS_TITLE "À propos de"
|
|
||||||
IDS_TEXT "Il n'y a aucune option à définir."
|
IDS_TEXT "Il n'y a aucune option à définir."
|
||||||
END
|
END
|
||||||
|
|
|
@ -12,6 +12,5 @@ LANGUAGE LANG_LITHUANIAN, SUBLANG_DEFAULT
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Tuðèias"
|
IDS_DESCRIPTION "Tuðèias"
|
||||||
IDS_TITLE "Apie"
|
|
||||||
IDS_TEXT "Nëra keièiamø parametrø."
|
IDS_TEXT "Nëra keièiamø parametrø."
|
||||||
END
|
END
|
||||||
|
|
|
@ -3,6 +3,5 @@ LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Blank"
|
IDS_DESCRIPTION "Blank"
|
||||||
IDS_TITLE "Informatie"
|
|
||||||
IDS_TEXT "Geen dingen om in te stellen."
|
IDS_TEXT "Geen dingen om in te stellen."
|
||||||
END
|
END
|
||||||
|
|
|
@ -10,6 +10,5 @@ LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Puste"
|
IDS_DESCRIPTION "Puste"
|
||||||
IDS_TITLE "O programie"
|
|
||||||
IDS_TEXT "Brak opcji do ustawiania."
|
IDS_TEXT "Brak opcji do ustawiania."
|
||||||
END
|
END
|
||||||
|
|
|
@ -7,6 +7,5 @@ LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Blank"
|
IDS_DESCRIPTION "Blank"
|
||||||
IDS_TITLE "Čo je ..."
|
|
||||||
IDS_TEXT "Nie sú potrebné žiadne nastavenia."
|
IDS_TEXT "Nie sú potrebné žiadne nastavenia."
|
||||||
END
|
END
|
||||||
|
|
|
@ -11,6 +11,5 @@ LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
IDS_DESCRIPTION "Ïîðîæíüî"
|
IDS_DESCRIPTION "Ïîðîæíüî"
|
||||||
IDS_TITLE "Ïðî"
|
|
||||||
IDS_TEXT "Öÿ çàñòàâêà íå ìຠíàëàøòîâóâàíèõ ïàðàìåòð³â."
|
IDS_TEXT "Öÿ çàñòàâêà íå ìຠíàëàøòîâóâàíèõ ïàðàìåòð³â."
|
||||||
END
|
END
|
||||||
|
|
|
@ -1,4 +1 @@
|
||||||
|
|
||||||
#define IDS_DESCRIPTION 1
|
|
||||||
#define IDS_TITLE 2
|
|
||||||
#define IDS_TEXT 3
|
#define IDS_TEXT 3
|
||||||
|
|
|
@ -21,38 +21,27 @@
|
||||||
#include <scrnsave.h>
|
#include <scrnsave.h>
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
LRESULT WINAPI ScreenSaverProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
|
LRESULT WINAPI ScreenSaverProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
static HDC hdc;
|
return DefScreenSaverProc(hwnd, uMsg, wParam, lParam);
|
||||||
static RECT rc;
|
|
||||||
|
|
||||||
switch(message)
|
|
||||||
{
|
|
||||||
case WM_CREATE:
|
|
||||||
break;
|
|
||||||
case WM_DESTROY:
|
|
||||||
PostQuitMessage(0);
|
|
||||||
break;
|
|
||||||
case WM_ERASEBKGND:
|
|
||||||
hdc = GetDC(hwnd);
|
|
||||||
GetClientRect (hwnd, &rc);
|
|
||||||
FillRect (hdc, &rc, GetStockObject(BLACK_BRUSH));
|
|
||||||
ReleaseDC(hwnd,hdc);
|
|
||||||
break;
|
|
||||||
case WM_PAINT:
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
return DefScreenSaverProc(hwnd, message, wParam, lParam);
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL WINAPI ScreenSaverConfigureDialog(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
|
BOOL WINAPI ScreenSaverConfigureDialog(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// This function is only called one time before opening the configuration dialog.
|
||||||
|
// Use it to show a message that no configuration is necesssary and return FALSE to indicate that no configuration dialog shall be opened.
|
||||||
BOOL WINAPI RegisterDialogClasses(HANDLE hInst)
|
BOOL WINAPI RegisterDialogClasses(HANDLE hInst)
|
||||||
{
|
{
|
||||||
return TRUE;
|
TCHAR szMessage[256];
|
||||||
|
TCHAR szTitle[25];
|
||||||
|
|
||||||
|
LoadString(hInst, IDS_TEXT, szMessage, sizeof(szMessage) / sizeof(TCHAR));
|
||||||
|
LoadString(hInst, IDS_DESCRIPTION, szTitle, sizeof(szTitle) / sizeof(TCHAR));
|
||||||
|
|
||||||
|
MessageBox(NULL, szMessage, szTitle, MB_OK | MB_ICONEXCLAMATION);
|
||||||
|
|
||||||
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
NAME blankscr.SCR
|
NAME blankscr.SCR
|
||||||
|
|
||||||
DESCRIPTION 'Blank screen saver'
|
|
||||||
|
|
||||||
EXPORTS
|
EXPORTS
|
||||||
ScreenSaverProc
|
ScreenSaverProc
|
||||||
ScreenSaverConfigureDialog
|
ScreenSaverConfigureDialog
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
#include <scrnsave.h>
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
|
@ -7,7 +8,6 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Default ScreenSaver\0"
|
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Default ScreenSaver\0"
|
||||||
#define REACTOS_STR_INTERNAL_NAME "scrnsave\0"
|
#define REACTOS_STR_INTERNAL_NAME "scrnsave\0"
|
||||||
#define REACTOS_STR_ORIGINAL_FILENAME "scrnsave.scr\0"
|
#define REACTOS_STR_ORIGINAL_FILENAME "scrnsave.scr\0"
|
||||||
|
|
||||||
#include <reactos/version.rc>
|
#include <reactos/version.rc>
|
||||||
|
|
||||||
#include "lang/bg-BG.rc"
|
#include "lang/bg-BG.rc"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue