display "log off" dialog, add "terminate" menu entry Modified: trunk/reactos/subsys/system/explorer/explorer-jp.rc Modified: trunk/reactos/subsys/system/explorer/explorer_intres.h Modified: trunk/reactos/subsys/system/explorer/explorer_intres.rc Modified: trunk/reactos/subsys/system/explorer/make_explorer.dsp Modified: trunk/reactos/subsys/system/explorer/taskbar/desktopbar.h Modified: trunk/reactos/subsys/system/explorer/taskbar/startmenu.cpp Modified: trunk/reactos/subsys/system/explorer/taskbar/startmenu.h _____
Modified: trunk/reactos/subsys/system/explorer/explorer-jp.rc (Binary files differ) _____
Modified: trunk/reactos/subsys/system/explorer/explorer_intres.h --- trunk/reactos/subsys/system/explorer/explorer_intres.h 2005-04-03 10:46:08 UTC (rev 14468) +++ trunk/reactos/subsys/system/explorer/explorer_intres.h 2005-04-03 11:23:03 UTC (rev 14469) @@ -46,6 +46,7 @@
#define IDS_NOTIFY_AUTOHIDE 42 #define IDS_SHOW_HIDDEN_ICONS 43 #define IDS_HIDE_ICONS 44 +#define IDS_TERMINATE 45 #define IDI_REACTOS 100 #define IDI_EXPLORER 101 #define IDI_STARTMENU 102 _____
Modified: trunk/reactos/subsys/system/explorer/explorer_intres.rc --- trunk/reactos/subsys/system/explorer/explorer_intres.rc 2005-04-03 10:46:08 UTC (rev 14468) +++ trunk/reactos/subsys/system/explorer/explorer_intres.rc 2005-04-03 11:23:03 UTC (rev 14469) @@ -126,6 +126,7 @@
IDS_TITLE "ReactOS Explorer" IDS_START "?ncepe" IDS_LOGOFF "?nchide sesiunea ..." + IDS_TERMINATE "?nchide sesiunea" IDS_SHUTDOWN "Oprire calculator ..." IDS_LAUNCH "Pornire ..." IDS_START_HELP "Ajutor" @@ -583,6 +584,7 @@ IDS_TITLE "Reactos Explorer" IDS_START "Start" IDS_LOGOFF "Abmelden..." + IDS_TERMINATE "ROS Explorer beenden" IDS_SHUTDOWN "Herunterfahren..." IDS_LAUNCH "Starten..." IDS_START_HELP "Hilfe" @@ -1075,6 +1077,7 @@ IDS_TITLE "Reactos Explorer" IDS_START "Start" IDS_LOGOFF "Log Off..." + IDS_TERMINATE "Terminate ROS Explorer" IDS_SHUTDOWN "Turn Off..." IDS_LAUNCH "Run..." IDS_START_HELP "Help" @@ -1538,6 +1541,7 @@ IDS_TITLE "Reactos Explorer" IDS_START "Iniciar" IDS_LOGOFF "Salir..." + IDS_TERMINATE "Salir" IDS_SHUTDOWN "Apagar..." IDS_LAUNCH "Ejecutar..." IDS_START_HELP "Ayuda" @@ -1708,6 +1712,7 @@ IDS_TITLE "Explorateur Reactos" IDS_START "DÚmarrer" IDS_LOGOFF "DÚconnexion ..." + IDS_TERMINATE "DÚconnexion" IDS_SHUTDOWN "ArrÛter..." IDS_LAUNCH "ExÚcuter..." IDS_START_HELP "Aide" @@ -1921,6 +1926,7 @@ IDS_TITLE "Explorador do Reactos" IDS_START "Iniciar" IDS_LOGOFF "Terminar sessÒo..." + IDS_TERMINATE "Terminar" IDS_SHUTDOWN "Desligar..." IDS_LAUNCH "Executar..." IDS_START_HELP "Ajuda" @@ -2412,6 +2418,7 @@ IDS_TITLE "Reactos Explorer" IDS_START "Start" IDS_LOGOFF "Logga ut..." + IDS_TERMINATE "Logga ut" IDS_SHUTDOWN "Stõng av..." IDS_LAUNCH "K÷r..." IDS_START_HELP "Hjõlp" _____
Modified: trunk/reactos/subsys/system/explorer/make_explorer.dsp --- trunk/reactos/subsys/system/explorer/make_explorer.dsp 2005-04-03 10:46:08 UTC (rev 14468) +++ trunk/reactos/subsys/system/explorer/make_explorer.dsp 2005-04-03 11:23:03 UTC (rev 14469) @@ -183,10 +183,6 @@
# Begin Source File
-SOURCE=......\ChangeLog -# End Source File -# Begin Source File - SOURCE=.\Jamfile # End Source File # Begin Source File _____
Modified: trunk/reactos/subsys/system/explorer/taskbar/desktopbar.h --- trunk/reactos/subsys/system/explorer/taskbar/desktopbar.h 2005-04-03 10:46:08 UTC (rev 14468) +++ trunk/reactos/subsys/system/explorer/taskbar/desktopbar.h 2005-04-03 11:23:03 UTC (rev 14469) @@ -56,6 +56,7 @@
#define IDC_BROWSE 0x1014 #define IDC_SEARCH_PROGRAM 0x1015 #define IDC_SEARCH 0x1016 +#define IDC_TERMINATE 0x1017
#define IDC_FIRST_MENU 0x3000
_____
Modified: trunk/reactos/subsys/system/explorer/taskbar/startmenu.cpp --- trunk/reactos/subsys/system/explorer/taskbar/startmenu.cpp 2005-04-03 10:46:08 UTC (rev 14468) +++ trunk/reactos/subsys/system/explorer/taskbar/startmenu.cpp 2005-04-03 11:23:03 UTC (rev 14469) @@ -1690,6 +1690,9 @@
AddButton(ResString(IDS_SHUTDOWN), ICID_LOGOFF, false, IDC_SHUTDOWN);
+ AddButton(ResString(IDS_TERMINATE), ICID_LOGOFF, false, IDC_TERMINATE); + + #ifdef __MINGW32__ RegCloseKey(hkeyAdv); RegCloseKey(hkey); @@ -1830,9 +1833,11 @@ break;
case IDC_LOGOFF: - /* The shell32 Dialog prompts about some system setting change. This is not what we want to display here. CloseStartMenu(id); - ShowRestartDialog(g_Globals._hwndDesktopBar, EWX_LOGOFF);*/ + ShowLogoffDialog(g_Globals._hwndDesktopBar, EWX_LOGOFF); + break; + + case IDC_TERMINATE: DestroyWindow(GetParent(_hwnd)); break;
@@ -1974,24 +1979,29 @@ } }
-void StartMenuHandler::ShowRestartDialog(HWND hwndOwner, UINT flags) +void StartMenuHandler::ShowLogoffDialog(HWND hwndOwner, UINT flags) { - static DynamicFct<RESTARTWINDOWSDLG> RestartDlg(TEXT("SHELL32"), 59); + static DynamicFct<LOGOFFWINDOWSDIALOG> LogoffWindowsDialog(TEXT("SHELL32"), 54); +// static DynamicFct<RESTARTWINDOWSDLG> RestartDialog(TEXT("SHELL32"), 59);
- if (RestartDlg) - (*RestartDlg)(hwndOwner, (LPWSTR)L"You selected <Log Off>.\n\n", flags); ///@todo ANSI string conversion if needed + if (LogoffWindowsDialog) + (*LogoffWindowsDialog)(0); +/* The RestartDialog function prompts about some system setting change. This is not what we want to display here. + else if (RestartDialog) + return (*RestartDialog)(hwndOwner, (LPWSTR)L"You selected <Log Off>.\n\n", flags) == 1; ///@todo ANSI string conversion if needed +*/ else - MessageBox(hwndOwner, TEXT("RestartDlg() not yet implemented in SHELL32"), ResString(IDS_TITLE), MB_OK); + MessageBox(hwndOwner, TEXT("LogoffWindowsDialog() not yet implemented in SHELL32"), ResString(IDS_TITLE), MB_OK); }
void ShowExitWindowsDialog(HWND hwndOwner) { - static DynamicFct<EXITWINDOWSDLG> ExitWindowsDlg(TEXT("SHELL32"), 60); + static DynamicFct<EXITWINDOWSDLG> ExitWindowsDialog(TEXT("SHELL32"), 60);
- if (ExitWindowsDlg) - (*ExitWindowsDlg)(hwndOwner); + if (ExitWindowsDialog) + (*ExitWindowsDialog)(hwndOwner); else - MessageBox(hwndOwner, TEXT("ExitWindowsDlg() not yet implemented in SHELL32"), ResString(IDS_TITLE), MB_OK); + MessageBox(hwndOwner, TEXT("ExitWindowsDialog() not yet implemented in SHELL32"), ResString(IDS_TITLE), MB_OK); }
_____
Modified: trunk/reactos/subsys/system/explorer/taskbar/startmenu.h --- trunk/reactos/subsys/system/explorer/taskbar/startmenu.h 2005-04-03 10:46:08 UTC (rev 14468) +++ trunk/reactos/subsys/system/explorer/taskbar/startmenu.h 2005-04-03 11:23:03 UTC (rev 14469) @@ -321,9 +321,11 @@
#define RFF_NOSEPARATEMEM 0x20 // Removes the Separate Memory Space check box (Windows NT only).
- // declare more undocumented shell32 functions + // declare more previously undocumented shell32 functions typedef void (WINAPI* EXITWINDOWSDLG)(HWND hwndOwner); +typedef int (WINAPI* LOGOFFWINDOWSDIALOG)(UINT flags); typedef int (WINAPI* RESTARTWINDOWSDLG)(HWND hwndOwner, LPCWSTR reason, UINT flags); +typedef int (WINAPI* RESTARTWINDOWSDLGEX)(HWND hWndOwner, LPCWSTR lpwstrReason, DWORD uFlags, DWORD uReason); typedef BOOL (WINAPI* SHFINDFILES)(LPCITEMIDLIST pidlRoot, LPCITEMIDLIST pidlSavedSearch); typedef BOOL (WINAPI* SHFINDCOMPUTER)(LPCITEMIDLIST pidlRoot, LPCITEMIDLIST pidlSavedSearch);
@@ -347,7 +349,7 @@ int Command(int id, int code);
static void ShowLaunchDialog(HWND hwndOwner); - static void ShowRestartDialog(HWND hwndOwner, UINT flags); + static void ShowLogoffDialog(HWND hwndOwner, UINT flags); static void ShowSearchDialog(); static void ShowSearchComputer(); };