mirror of
https://github.com/reactos/reactos.git
synced 2025-06-06 18:00:41 +00:00
- Remove some global variables.
- Clean up the source code. - Display the names of the screen savers. - Sort the screen saver list by the screen saver names. - Disable setting controls when 'None' screen saver is selected. svn path=/trunk/; revision=24789
This commit is contained in:
parent
a919bba10c
commit
b49d1db6bf
15 changed files with 213 additions and 168 deletions
|
@ -31,7 +31,7 @@ BEGIN
|
||||||
LTEXT "Liste des écrans de veille:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Liste des écrans de veille:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "Paramè&tres...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "Paramè&tres...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "&Aperçu",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "&Aperçu",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -25,7 +25,7 @@ BEGIN
|
||||||
LTEXT "Screen saver installati:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Screen saver installati:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "&Impostazioni",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "&Impostazioni",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "&Prova",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "&Prova",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -29,7 +29,7 @@ BEGIN
|
||||||
LTEXT "スクリーン セーバーの一覧:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "スクリーン セーバーの一覧:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "設定(&T)...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "設定(&T)...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "プレビュー(&V)",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "プレビュー(&V)",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -28,7 +28,7 @@ BEGIN
|
||||||
LTEXT "Ñïèñîê çàñòàâîê:",IDC_STATIC,13,24,150,9
|
LTEXT "Ñïèñîê çàñòàâîê:",IDC_STATIC,13,24,150,9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_SHAREIMAGELISTS | LVS_NOCOLUMNHEADER |
|
LVS_SINGLESEL | LVS_SHAREIMAGELISTS | LVS_NOCOLUMNHEADER |
|
||||||
WS_BORDER | WS_TABSTOP,13,34,170,69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13,34,170,69
|
||||||
PUSHBUTTON "&Íàñòðîéêà...",IDC_SCREENS_SETTINGS,188,34,50,15,
|
PUSHBUTTON "&Íàñòðîéêà...",IDC_SCREENS_SETTINGS,188,34,50,15,
|
||||||
WS_GROUP
|
WS_GROUP
|
||||||
PUSHBUTTON "Ïðî&ñìîòð",IDC_SCREENS_TESTSC,188,52,50,15
|
PUSHBUTTON "Ïðî&ñìîòð",IDC_SCREENS_TESTSC,188,52,50,15
|
||||||
|
|
|
@ -33,7 +33,7 @@ BEGIN
|
||||||
LTEXT "Ñïèñîê çáåð³ãà÷³â åêðàíà:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Ñïèñîê çáåð³ãà÷³â åêðàíà:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "&Íàñòðîéêè",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "&Íàñòðîéêè",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "Ïåðå&ãëÿä",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "Ïåðå&ãëÿä",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -29,7 +29,7 @@ BEGIN
|
||||||
LTEXT "Seznam spoøièù:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Seznam spoøièù:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "&Nastavení...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "&Nastavení...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "&Ukázka",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "&Ukázka",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -25,7 +25,7 @@ BEGIN
|
||||||
LTEXT "Installierte Bildschrimschoner:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Installierte Bildschrimschoner:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "&Einstellungen",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "&Einstellungen",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "&Vorschau",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "&Vorschau",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -25,7 +25,7 @@ BEGIN
|
||||||
LTEXT "Installed screensavers:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Installed screensavers:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "Se&ttings",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "Se&ttings",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "Pre&view",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "Pre&view",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -36,7 +36,7 @@ BEGIN
|
||||||
LTEXT "Lista de protectores de pantalla:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Lista de protectores de pantalla:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "Configuración...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "Configuración...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "&Vista previa",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "&Vista previa",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -29,7 +29,7 @@ BEGIN
|
||||||
LTEXT "Ëßóôá ðñïöõëÜîåùí ïèüíçò:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Ëßóôá ðñïöõëÜîåùí ïèüíçò:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "Åðéëï&ãÝò...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "Åðéëï&ãÝò...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "Ðñï&âïëÞ",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "Ðñï&âïëÞ",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -23,8 +23,9 @@ BEGIN
|
||||||
GROUPBOX "&Képernyõvédõ",IDC_SCREENS_DUMMY, 5, 7, 238, 136
|
GROUPBOX "&Képernyõvédõ",IDC_SCREENS_DUMMY, 5, 7, 238, 136
|
||||||
|
|
||||||
LTEXT "Képernyõvédõk listája:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Képernyõvédõk listája:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "&Beállítások...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "&Beállítások...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "E&lõzetes nézet",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "E&lõzetes nézet",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -29,7 +29,7 @@ BEGIN
|
||||||
LTEXT "Lijst van de schermbeveiligingen:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Lijst van de schermbeveiligingen:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "&Instellingen...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "&Instellingen...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "V&oorbeeld",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "V&oorbeeld",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -30,7 +30,7 @@ BEGIN
|
||||||
LTEXT "Lista wygaszaczy ekranu:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Lista wygaszaczy ekranu:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "&Ustawienia...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "&Ustawienia...",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "&Podgl¹d",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "&Podgl¹d",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
|
@ -9,65 +9,51 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "desk.h"
|
#include "desk.h"
|
||||||
void SetScreenSaver();
|
|
||||||
|
|
||||||
#define MAX_SCREENSAVERS 100
|
#define MAX_SCREENSAVERS 100
|
||||||
|
|
||||||
void AddListViewItems2();
|
static VOID SetScreenSaver(VOID);
|
||||||
void CheckRegScreenSaverIsSecure();
|
static VOID AddListViewItems(HWND);
|
||||||
|
static VOID CheckRegScreenSaverIsSecure(HWND);
|
||||||
|
|
||||||
typedef struct {
|
typedef struct
|
||||||
|
{
|
||||||
BOOL bIsScreenSaver; /* Is this background a wallpaper */
|
BOOL bIsScreenSaver; /* Is this background a wallpaper */
|
||||||
TCHAR szFilename[MAX_PATH];
|
TCHAR szFilename[MAX_PATH];
|
||||||
TCHAR szDisplayName[256];
|
TCHAR szDisplayName[256];
|
||||||
} ScreenSaverItem;
|
} ScreenSaverItem;
|
||||||
|
|
||||||
int ImageListSelection = 0;
|
int ImageListSelection = -1;
|
||||||
ScreenSaverItem g_ScreenSaverItems[MAX_SCREENSAVERS];
|
ScreenSaverItem g_ScreenSaverItems[MAX_SCREENSAVERS];
|
||||||
|
|
||||||
HWND g_hScreenBackgroundPage = NULL;
|
|
||||||
HWND g_hScreengroundList = NULL;
|
|
||||||
HWND ControlScreenSaverIsSecure = NULL;
|
|
||||||
HMENU g_hPopupMenu = NULL;
|
HMENU g_hPopupMenu = NULL;
|
||||||
|
|
||||||
void ListViewItemAreChanged(int itemIndex)
|
VOID ListViewItemAreChanged(HWND hwndDlg, int itemIndex)
|
||||||
{
|
{
|
||||||
ScreenSaverItem *ScreenSaverItem = NULL;
|
BOOL bEnable;
|
||||||
|
LV_ITEM lvItem;
|
||||||
|
|
||||||
ImageListSelection = itemIndex;
|
lvItem.mask = LVIF_PARAM;
|
||||||
ScreenSaverItem = &g_ScreenSaverItems[ImageListSelection];
|
lvItem.iItem = itemIndex;
|
||||||
|
lvItem.iSubItem = 0;
|
||||||
|
|
||||||
PropSheet_Changed(GetParent(g_hScreenBackgroundPage), g_hScreenBackgroundPage);
|
if (!ListView_GetItem(GetDlgItem(hwndDlg, IDC_SCREENS_CHOICES), &lvItem))
|
||||||
|
return;
|
||||||
|
|
||||||
|
ImageListSelection = lvItem.lParam;
|
||||||
|
|
||||||
|
bEnable = (lvItem.lParam != 0);
|
||||||
|
|
||||||
|
EnableWindow(GetDlgItem(hwndDlg, IDC_SCREENS_SETTINGS), bEnable);
|
||||||
|
EnableWindow(GetDlgItem(hwndDlg, IDC_SCREENS_TESTSC), bEnable);
|
||||||
|
EnableWindow(GetDlgItem(hwndDlg, IDC_SCREENS_USEPASSCHK), bEnable);
|
||||||
|
EnableWindow(GetDlgItem(hwndDlg, IDC_SCREENS_TIMEDELAY), bEnable);
|
||||||
|
EnableWindow(GetDlgItem(hwndDlg, IDC_SCREENS_TIME), bEnable);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
VOID
|
||||||
ScreensaverConfig ()
|
ScreensaverConfig(HWND hwndDlg)
|
||||||
{
|
|
||||||
/*
|
|
||||||
/p:<hwnd> Run in preview
|
|
||||||
/s Run normal
|
|
||||||
/c:<hwnd> Run configuration, hwnd is handle of calling window
|
|
||||||
/a Run change password
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
WCHAR szCmdline[2048];
|
|
||||||
STARTUPINFO si;
|
|
||||||
PROCESS_INFORMATION pi;
|
|
||||||
swprintf(szCmdline, L"%s /c",g_ScreenSaverItems[ImageListSelection].szFilename);
|
|
||||||
|
|
||||||
ZeroMemory( &si, sizeof(si) );
|
|
||||||
si.cb = sizeof(si);
|
|
||||||
ZeroMemory( &pi, sizeof(pi) );
|
|
||||||
if(CreateProcess( NULL, szCmdline, NULL, NULL, FALSE, 0, NULL,NULL,&si, &pi ))
|
|
||||||
{
|
|
||||||
CloseHandle( pi.hProcess );
|
|
||||||
CloseHandle( pi.hThread );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
ScreensaverPreview ()
|
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
/p:<hwnd> Run in preview
|
/p:<hwnd> Run in preview
|
||||||
|
@ -79,17 +65,68 @@ ScreensaverPreview ()
|
||||||
WCHAR szCmdline[2048];
|
WCHAR szCmdline[2048];
|
||||||
STARTUPINFO si;
|
STARTUPINFO si;
|
||||||
PROCESS_INFORMATION pi;
|
PROCESS_INFORMATION pi;
|
||||||
swprintf(szCmdline, L"%s /p",g_ScreenSaverItems[ImageListSelection].szFilename);
|
|
||||||
|
if (ImageListSelection < 1)
|
||||||
|
return;
|
||||||
|
|
||||||
|
swprintf(szCmdline, L"%s /c:%u",
|
||||||
|
g_ScreenSaverItems[ImageListSelection].szFilename,
|
||||||
|
hwndDlg);
|
||||||
|
|
||||||
ZeroMemory( &si, sizeof(si) );
|
ZeroMemory( &si, sizeof(si) );
|
||||||
si.cb = sizeof(si);
|
si.cb = sizeof(si);
|
||||||
ZeroMemory( &pi, sizeof(pi) );
|
ZeroMemory( &pi, sizeof(pi) );
|
||||||
if(CreateProcess( NULL, szCmdline, NULL, NULL, FALSE, 0, NULL,NULL,&si, &pi ))
|
if(CreateProcess( NULL, szCmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi ))
|
||||||
{
|
{
|
||||||
CloseHandle( pi.hProcess );
|
CloseHandle( pi.hProcess );
|
||||||
CloseHandle( pi.hThread );
|
CloseHandle( pi.hThread );
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
ScreensaverPreview(HWND hwndDlg)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
/p:<hwnd> Run in preview
|
||||||
|
/s Run normal
|
||||||
|
/c:<hwnd> Run configuration, hwnd is handle of calling window
|
||||||
|
/a Run change password
|
||||||
|
*/
|
||||||
|
|
||||||
|
WCHAR szCmdline[2048];
|
||||||
|
STARTUPINFO si;
|
||||||
|
PROCESS_INFORMATION pi;
|
||||||
|
|
||||||
|
if (ImageListSelection < 1)
|
||||||
|
return;
|
||||||
|
|
||||||
|
swprintf(szCmdline, L"%s /p", g_ScreenSaverItems[ImageListSelection].szFilename);
|
||||||
|
|
||||||
|
ZeroMemory( &si, sizeof(si) );
|
||||||
|
si.cb = sizeof(si);
|
||||||
|
ZeroMemory( &pi, sizeof(pi) );
|
||||||
|
if(CreateProcess( NULL, szCmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi ))
|
||||||
|
{
|
||||||
|
CloseHandle( pi.hProcess );
|
||||||
|
CloseHandle( pi.hThread );
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
ScreensaverDelete(HWND hwndDlg)
|
||||||
|
{
|
||||||
|
SHFILEOPSTRUCT fos;
|
||||||
|
|
||||||
|
if (ImageListSelection < 1) // Can NOT delete anything :-)
|
||||||
|
return;
|
||||||
|
|
||||||
|
fos.hwnd = hwndDlg;
|
||||||
|
fos.wFunc = FO_DELETE;
|
||||||
|
fos.fFlags = 0;
|
||||||
|
fos.pFrom = g_ScreenSaverItems[ImageListSelection].szFilename;
|
||||||
|
|
||||||
|
SHFileOperationW(&fos);
|
||||||
|
}
|
||||||
|
|
||||||
INT_PTR
|
INT_PTR
|
||||||
CALLBACK
|
CALLBACK
|
||||||
|
@ -98,9 +135,8 @@ ScreenSaverPageProc(HWND hwndDlg,
|
||||||
WPARAM wParam,
|
WPARAM wParam,
|
||||||
LPARAM lParam)
|
LPARAM lParam)
|
||||||
{
|
{
|
||||||
g_hScreenBackgroundPage = hwndDlg;
|
switch (uMsg)
|
||||||
|
{
|
||||||
switch(uMsg) {
|
|
||||||
case WM_DESTROY:
|
case WM_DESTROY:
|
||||||
{
|
{
|
||||||
DestroyMenu(g_hPopupMenu);
|
DestroyMenu(g_hPopupMenu);
|
||||||
|
@ -108,14 +144,13 @@ ScreenSaverPageProc(HWND hwndDlg,
|
||||||
}
|
}
|
||||||
case WM_INITDIALOG:
|
case WM_INITDIALOG:
|
||||||
{
|
{
|
||||||
g_hScreengroundList = GetDlgItem(g_hScreenBackgroundPage, IDC_SCREENS_CHOICES);
|
SendDlgItemMessage(hwndDlg, IDC_SCREENS_TIME, UDM_SETRANGE, 0, MAKELONG ((short) 240, (short) 0));
|
||||||
SendMessage(GetDlgItem(g_hScreenBackgroundPage, IDC_SCREENS_TIME), UDM_SETRANGE, 0, MAKELONG ((short) 240, (short) 0));
|
AddListViewItems(hwndDlg);
|
||||||
AddListViewItems2();
|
|
||||||
|
|
||||||
g_hPopupMenu = LoadMenu(hApplet, MAKEINTRESOURCE(IDR_POPUP_MENU));
|
g_hPopupMenu = LoadMenu(hApplet, MAKEINTRESOURCE(IDR_POPUP_MENU));
|
||||||
g_hPopupMenu = GetSubMenu(g_hPopupMenu, 0);
|
g_hPopupMenu = GetSubMenu(g_hPopupMenu, 0);
|
||||||
|
|
||||||
CheckRegScreenSaverIsSecure();
|
CheckRegScreenSaverIsSecure(hwndDlg);
|
||||||
} break;
|
} break;
|
||||||
|
|
||||||
case WM_COMMAND:
|
case WM_COMMAND:
|
||||||
|
@ -126,44 +161,35 @@ ScreenSaverPageProc(HWND hwndDlg,
|
||||||
switch(controlId) {
|
switch(controlId) {
|
||||||
case IDC_SCREENS_POWER_BUTTON: // Start Powercfg.Cpl
|
case IDC_SCREENS_POWER_BUTTON: // Start Powercfg.Cpl
|
||||||
{
|
{
|
||||||
if(command == BN_CLICKED)
|
if (command == BN_CLICKED)
|
||||||
WinExec("rundll32 shell32.dll,Control_RunDLL powercfg.cpl,,",SW_SHOWNORMAL);
|
WinExec("rundll32 shell32.dll,Control_RunDLL powercfg.cpl,,",SW_SHOWNORMAL);
|
||||||
} break;
|
} break;
|
||||||
case IDC_SCREENS_TESTSC: // Screensaver Preview
|
case IDC_SCREENS_TESTSC: // Screensaver Preview
|
||||||
{
|
{
|
||||||
if(command == BN_CLICKED)
|
if(command == BN_CLICKED)
|
||||||
ScreensaverPreview();
|
ScreensaverPreview(hwndDlg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case ID_MENU_PREVIEW:
|
case ID_MENU_PREVIEW:
|
||||||
{
|
{
|
||||||
ScreensaverPreview();
|
ScreensaverPreview(hwndDlg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case ID_MENU_CONFIG:
|
case ID_MENU_CONFIG:
|
||||||
{
|
{
|
||||||
ScreensaverConfig();
|
ScreensaverConfig(hwndDlg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case ID_MENU_DELETE: // Delete Screensaver
|
case ID_MENU_DELETE: // Delete Screensaver
|
||||||
{
|
{
|
||||||
LPSHFILEOPSTRUCT fos = NULL;
|
|
||||||
|
|
||||||
if(command == BN_CLICKED) {
|
if(command == BN_CLICKED) {
|
||||||
if (ImageListSelection == 0) // Can NOT delete anything :-)
|
ScreensaverDelete(hwndDlg);
|
||||||
return FALSE;
|
|
||||||
|
|
||||||
fos->hwnd = hwndDlg;
|
|
||||||
fos->wFunc = FO_DELETE;
|
|
||||||
fos->fFlags = 0;
|
|
||||||
fos->pFrom = g_ScreenSaverItems[ImageListSelection].szFilename;
|
|
||||||
SHFileOperationW(fos);
|
|
||||||
}
|
}
|
||||||
} break;
|
} break;
|
||||||
case IDC_SCREENS_SETTINGS: // Screensaver Settings
|
case IDC_SCREENS_SETTINGS: // Screensaver Settings
|
||||||
{
|
{
|
||||||
if(command == BN_CLICKED)
|
if(command == BN_CLICKED)
|
||||||
ScreensaverConfig();
|
ScreensaverConfig(hwndDlg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case IDC_SCREENS_USEPASSCHK: // Screensaver Is Secure
|
case IDC_SCREENS_USEPASSCHK: // Screensaver Is Secure
|
||||||
|
@ -173,7 +199,7 @@ ScreenSaverPageProc(HWND hwndDlg,
|
||||||
} break;
|
} break;
|
||||||
case IDC_SCREENS_TIME: // Delay before show screensaver
|
case IDC_SCREENS_TIME: // Delay before show screensaver
|
||||||
{
|
{
|
||||||
} break;
|
}
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
} break;
|
} break;
|
||||||
|
@ -184,7 +210,8 @@ ScreenSaverPageProc(HWND hwndDlg,
|
||||||
LPNMITEMACTIVATE nmia = (LPNMITEMACTIVATE) lParam;
|
LPNMITEMACTIVATE nmia = (LPNMITEMACTIVATE) lParam;
|
||||||
RECT rc;
|
RECT rc;
|
||||||
|
|
||||||
switch(lpnm->code) {
|
switch(lpnm->code)
|
||||||
|
{
|
||||||
case PSN_APPLY:
|
case PSN_APPLY:
|
||||||
{
|
{
|
||||||
SetScreenSaver();
|
SetScreenSaver();
|
||||||
|
@ -192,7 +219,7 @@ ScreenSaverPageProc(HWND hwndDlg,
|
||||||
} break;
|
} break;
|
||||||
case NM_RCLICK:
|
case NM_RCLICK:
|
||||||
{
|
{
|
||||||
GetWindowRect(g_hScreengroundList, &rc);
|
GetWindowRect(GetDlgItem(hwndDlg, IDC_SCREENS_CHOICES), &rc);
|
||||||
TrackPopupMenuEx(g_hPopupMenu, TPM_RIGHTBUTTON,
|
TrackPopupMenuEx(g_hPopupMenu, TPM_RIGHTBUTTON,
|
||||||
rc.left + nmia->ptAction.x, rc.top + nmia->ptAction.y, hwndDlg, NULL);
|
rc.left + nmia->ptAction.x, rc.top + nmia->ptAction.y, hwndDlg, NULL);
|
||||||
break;
|
break;
|
||||||
|
@ -200,11 +227,11 @@ ScreenSaverPageProc(HWND hwndDlg,
|
||||||
case LVN_ITEMCHANGED:
|
case LVN_ITEMCHANGED:
|
||||||
{
|
{
|
||||||
LPNMLISTVIEW nm = (LPNMLISTVIEW)lParam;
|
LPNMLISTVIEW nm = (LPNMLISTVIEW)lParam;
|
||||||
if((nm->uNewState & LVIS_SELECTED) == 0)
|
if ((nm->uNewState & LVIS_SELECTED) == 0)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
ListViewItemAreChanged(nm->iItem);
|
ListViewItemAreChanged(hwndDlg, nm->iItem);
|
||||||
break;
|
break;
|
||||||
} break;
|
}
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -214,7 +241,7 @@ ScreenSaverPageProc(HWND hwndDlg,
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CheckRegScreenSaverIsSecure()
|
VOID CheckRegScreenSaverIsSecure(HWND hwndDlg)
|
||||||
{
|
{
|
||||||
HKEY hKey;
|
HKEY hKey;
|
||||||
TCHAR szBuffer[2];
|
TCHAR szBuffer[2];
|
||||||
|
@ -222,23 +249,26 @@ void CheckRegScreenSaverIsSecure()
|
||||||
DWORD varType = REG_SZ;
|
DWORD varType = REG_SZ;
|
||||||
LONG result;
|
LONG result;
|
||||||
|
|
||||||
ControlScreenSaverIsSecure = GetDlgItem(g_hScreenBackgroundPage, IDC_SCREENS_USEPASSCHK);
|
|
||||||
|
|
||||||
RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Control Panel\\Desktop"), 0, KEY_ALL_ACCESS, &hKey);
|
RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Control Panel\\Desktop"), 0, KEY_ALL_ACCESS, &hKey);
|
||||||
result = RegQueryValueEx(hKey, TEXT("ScreenSaverIsSecure"), 0, &varType, (LPBYTE)szBuffer, &bufferSize);
|
result = RegQueryValueEx(hKey, TEXT("ScreenSaverIsSecure"), 0, &varType, (LPBYTE)szBuffer, &bufferSize);
|
||||||
if(result == ERROR_SUCCESS)
|
|
||||||
if(_ttoi(szBuffer) == 1) {
|
|
||||||
SendMessage(ControlScreenSaverIsSecure, BM_SETCHECK, (WPARAM)BST_CHECKED, 0);
|
|
||||||
goto End;
|
|
||||||
}
|
|
||||||
SendMessage(ControlScreenSaverIsSecure, BM_SETCHECK, (WPARAM)BST_UNCHECKED, 0);
|
|
||||||
End:
|
|
||||||
RegCloseKey(hKey);
|
RegCloseKey(hKey);
|
||||||
|
|
||||||
|
if (result == ERROR_SUCCESS)
|
||||||
|
{
|
||||||
|
if(_ttoi(szBuffer) == 1)
|
||||||
|
{
|
||||||
|
SendDlgItemMessage(hwndDlg, IDC_SCREENS_USEPASSCHK, BM_SETCHECK, (WPARAM)BST_CHECKED, 0);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SendDlgItemMessage(hwndDlg, IDC_SCREENS_USEPASSCHK, BM_SETCHECK, (WPARAM)BST_UNCHECKED, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Add the bitmaps in the C:\ReactOS directory and the current wallpaper if any */
|
|
||||||
void AddListViewItems2()
|
VOID AddListViewItems(HWND hwndDlg)
|
||||||
{
|
{
|
||||||
|
HWND hwndScreenSaverList = GetDlgItem(hwndDlg, IDC_SCREENS_CHOICES);
|
||||||
WIN32_FIND_DATA fd;
|
WIN32_FIND_DATA fd;
|
||||||
HANDLE hFind;
|
HANDLE hFind;
|
||||||
TCHAR szSearchPath[MAX_PATH];
|
TCHAR szSearchPath[MAX_PATH];
|
||||||
|
@ -248,26 +278,27 @@ void AddListViewItems2()
|
||||||
//HKEY regKey;
|
//HKEY regKey;
|
||||||
SHFILEINFO sfi;
|
SHFILEINFO sfi;
|
||||||
HIMAGELIST himl;
|
HIMAGELIST himl;
|
||||||
HIMAGELIST g_hScreenShellImageList = NULL;
|
HIMAGELIST hScreenShellImageList = NULL;
|
||||||
//TCHAR wallpaperFilename[MAX_PATH];
|
//TCHAR wallpaperFilename[MAX_PATH];
|
||||||
//DWORD bufferSize = sizeof(wallpaperFilename);
|
//DWORD bufferSize = sizeof(wallpaperFilename);
|
||||||
//DWORD varType = REG_SZ;
|
//DWORD varType = REG_SZ;
|
||||||
//LONG result;
|
//LONG result;
|
||||||
UINT i = 0;
|
UINT i = 0;
|
||||||
int g_ScreenlistViewItemCount = 0;
|
int ScreenlistViewItemCount = 0;
|
||||||
ScreenSaverItem *ScreenSaverItem = NULL;
|
ScreenSaverItem *ScreenSaverItem = NULL;
|
||||||
|
HANDLE hModule = NULL;
|
||||||
|
|
||||||
GetClientRect(g_hScreengroundList, &clientRect);
|
GetClientRect(hwndScreenSaverList, &clientRect);
|
||||||
|
|
||||||
ZeroMemory(&dummy, sizeof(LV_COLUMN));
|
ZeroMemory(&dummy, sizeof(LV_COLUMN));
|
||||||
dummy.mask = LVCF_SUBITEM | LVCF_WIDTH;
|
dummy.mask = LVCF_SUBITEM | LVCF_WIDTH;
|
||||||
dummy.iSubItem = 0;
|
dummy.iSubItem = 0;
|
||||||
dummy.cx = (clientRect.right - clientRect.left) - GetSystemMetrics(SM_CXVSCROLL);
|
dummy.cx = (clientRect.right - clientRect.left) - GetSystemMetrics(SM_CXVSCROLL);
|
||||||
|
|
||||||
(void)ListView_InsertColumn(g_hScreengroundList, 0, &dummy);
|
(void)ListView_InsertColumn(hwndScreenSaverList, 0, &dummy);
|
||||||
|
|
||||||
/* Add the "None" item */
|
/* Add the "None" item */
|
||||||
ScreenSaverItem = &g_ScreenSaverItems[g_ScreenlistViewItemCount];
|
ScreenSaverItem = &g_ScreenSaverItems[ScreenlistViewItemCount];
|
||||||
|
|
||||||
ScreenSaverItem->bIsScreenSaver = FALSE;
|
ScreenSaverItem->bIsScreenSaver = FALSE;
|
||||||
|
|
||||||
|
@ -281,16 +312,16 @@ void AddListViewItems2()
|
||||||
listItem.state = LVIS_SELECTED;
|
listItem.state = LVIS_SELECTED;
|
||||||
listItem.pszText = ScreenSaverItem->szDisplayName;
|
listItem.pszText = ScreenSaverItem->szDisplayName;
|
||||||
listItem.iImage = -1;
|
listItem.iImage = -1;
|
||||||
listItem.iItem = g_ScreenlistViewItemCount;
|
listItem.iItem = ScreenlistViewItemCount;
|
||||||
listItem.lParam = g_ScreenlistViewItemCount;
|
listItem.lParam = ScreenlistViewItemCount;
|
||||||
|
|
||||||
(void)ListView_InsertItem(g_hScreengroundList, &listItem);
|
(void)ListView_InsertItem(hwndScreenSaverList, &listItem);
|
||||||
ListView_SetItemState(g_hScreengroundList, g_ScreenlistViewItemCount, LVIS_SELECTED, LVIS_SELECTED);
|
ListView_SetItemState(hwndScreenSaverList, ScreenlistViewItemCount, LVIS_SELECTED, LVIS_SELECTED);
|
||||||
|
|
||||||
g_ScreenlistViewItemCount++;
|
ScreenlistViewItemCount++;
|
||||||
|
|
||||||
/* Add current screensaver if any */
|
/* Add current screensaver if any */
|
||||||
/*
|
/*
|
||||||
RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Control Panel\\Desktop"), 0, KEY_ALL_ACCESS, ®Key);
|
RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Control Panel\\Desktop"), 0, KEY_ALL_ACCESS, ®Key);
|
||||||
|
|
||||||
result = RegQueryValueEx(regKey, TEXT("SCRNSAVE.EXE"), 0, &varType, (LPBYTE)wallpaperFilename, &bufferSize);
|
result = RegQueryValueEx(regKey, TEXT("SCRNSAVE.EXE"), 0, &varType, (LPBYTE)wallpaperFilename, &bufferSize);
|
||||||
|
@ -337,7 +368,7 @@ void AddListViewItems2()
|
||||||
|
|
||||||
|
|
||||||
RegCloseKey(regKey);
|
RegCloseKey(regKey);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Add all the screensavers in the C:\ReactOS\System32 directory. */
|
/* Add all the screensavers in the C:\ReactOS\System32 directory. */
|
||||||
|
|
||||||
|
@ -345,10 +376,10 @@ void AddListViewItems2()
|
||||||
_tcscat(szSearchPath, TEXT("\\*.scr"));
|
_tcscat(szSearchPath, TEXT("\\*.scr"));
|
||||||
|
|
||||||
hFind = FindFirstFile(szSearchPath, &fd);
|
hFind = FindFirstFile(szSearchPath, &fd);
|
||||||
while(hFind != INVALID_HANDLE_VALUE)
|
while (hFind != INVALID_HANDLE_VALUE)
|
||||||
{
|
{
|
||||||
/* Don't add any hidden screensavers */
|
/* Don't add any hidden screensavers */
|
||||||
if((fd.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN) == 0)
|
if ((fd.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN) == 0)
|
||||||
{
|
{
|
||||||
TCHAR filename[MAX_PATH];
|
TCHAR filename[MAX_PATH];
|
||||||
|
|
||||||
|
@ -364,22 +395,36 @@ void AddListViewItems2()
|
||||||
SHGFI_SYSICONINDEX | SHGFI_SMALLICON |
|
SHGFI_SYSICONINDEX | SHGFI_SMALLICON |
|
||||||
SHGFI_DISPLAYNAME);
|
SHGFI_DISPLAYNAME);
|
||||||
|
|
||||||
if(himl == NULL)
|
if (himl == NULL)
|
||||||
{
|
{
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(i++ == 0)
|
if (i++ == 0)
|
||||||
{
|
{
|
||||||
g_hScreenShellImageList = himl;
|
hScreenShellImageList = himl;
|
||||||
(void)ListView_SetImageList(g_hScreengroundList, himl, LVSIL_SMALL);
|
(VOID)ListView_SetImageList(hwndScreenSaverList, himl, LVSIL_SMALL);
|
||||||
}
|
}
|
||||||
|
|
||||||
ScreenSaverItem = &g_ScreenSaverItems[g_ScreenlistViewItemCount];
|
ScreenSaverItem = &g_ScreenSaverItems[ScreenlistViewItemCount];
|
||||||
|
|
||||||
ScreenSaverItem->bIsScreenSaver = TRUE;
|
ScreenSaverItem->bIsScreenSaver = TRUE;
|
||||||
|
|
||||||
|
hModule = LoadLibraryEx(filename, NULL, DONT_RESOLVE_DLL_REFERENCES);
|
||||||
|
if (hModule)
|
||||||
|
{
|
||||||
|
LoadString(hModule,
|
||||||
|
1,
|
||||||
|
ScreenSaverItem->szDisplayName,
|
||||||
|
sizeof(ScreenSaverItem->szDisplayName) / sizeof(TCHAR));
|
||||||
|
FreeLibrary(hModule);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
_tcscpy(ScreenSaverItem->szDisplayName, sfi.szDisplayName);
|
_tcscpy(ScreenSaverItem->szDisplayName, sfi.szDisplayName);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
_tcscpy(ScreenSaverItem->szFilename, filename);
|
_tcscpy(ScreenSaverItem->szFilename, filename);
|
||||||
|
|
||||||
ZeroMemory(&listItem, sizeof(LV_ITEM));
|
ZeroMemory(&listItem, sizeof(LV_ITEM));
|
||||||
|
@ -387,20 +432,20 @@ void AddListViewItems2()
|
||||||
listItem.pszText = ScreenSaverItem->szDisplayName;
|
listItem.pszText = ScreenSaverItem->szDisplayName;
|
||||||
listItem.state = 0;
|
listItem.state = 0;
|
||||||
listItem.iImage = sfi.iIcon;
|
listItem.iImage = sfi.iIcon;
|
||||||
listItem.iItem = g_ScreenlistViewItemCount;
|
listItem.iItem = ScreenlistViewItemCount;
|
||||||
listItem.lParam = g_ScreenlistViewItemCount;
|
listItem.lParam = ScreenlistViewItemCount;
|
||||||
|
|
||||||
(void)ListView_InsertItem(g_hScreengroundList, &listItem);
|
(VOID)ListView_InsertItem(hwndScreenSaverList, &listItem);
|
||||||
|
|
||||||
g_ScreenlistViewItemCount++;
|
ScreenlistViewItemCount++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!FindNextFile(hFind, &fd))
|
if (!FindNextFile(hFind, &fd))
|
||||||
hFind = INVALID_HANDLE_VALUE;
|
hFind = INVALID_HANDLE_VALUE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetScreenSaver()
|
VOID SetScreenSaver(VOID)
|
||||||
{
|
{
|
||||||
HKEY regKey;
|
HKEY regKey;
|
||||||
|
|
||||||
|
@ -423,4 +468,3 @@ void SetScreenSaver()
|
||||||
// SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, TEXT(""), SPIF_UPDATEINIFILE);
|
// SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, TEXT(""), SPIF_UPDATEINIFILE);
|
||||||
//}
|
//}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -32,7 +32,7 @@ BEGIN
|
||||||
LTEXT "Skärmsläckare:",IDC_STATIC,13, 24, 150, 9
|
LTEXT "Skärmsläckare:",IDC_STATIC,13, 24, 150, 9
|
||||||
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
CONTROL "",IDC_SCREENS_CHOICES,"SysListView32",LVS_REPORT |
|
||||||
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_SHAREIMAGELISTS |
|
||||||
WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP,13, 34, 170, 69
|
||||||
|
|
||||||
PUSHBUTTON "&Inställningar",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
PUSHBUTTON "&Inställningar",IDC_SCREENS_SETTINGS,188, 34, 50, 15,WS_GROUP
|
||||||
PUSHBUTTON "&Förhandsvisa",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
PUSHBUTTON "&Förhandsvisa",IDC_SCREENS_TESTSC,188, 52, 50, 15
|
||||||
|
|
Loading…
Reference in a new issue