5 modified files
reactos/subsys/system/explorer
diff -u -r1.55.4.6 -r1.55.4.7
--- explorer.cpp 20 Mar 2004 13:55:55 -0000 1.55.4.6
+++ explorer.cpp 9 Apr 2004 19:02:58 -0000 1.55.4.7
@@ -610,9 +610,49 @@
BOOL any_desktop_running = IsAnyDesktopRunning();
- // create desktop window and task bar only, if there is no other shell and we are
- // the first explorer instance
- BOOL startup_desktop = !any_desktop_running;
+ BOOL startup_desktop;
+
+ // command line option "-install" to replace previous shell application with ROS Explorer
+ if (_tcsstr(lpCmdLine,TEXT("-install"))) {
+ // install ROS Explorer into the registry
+ TCHAR path[MAX_PATH];
+
+ int l = GetModuleFileName(0, path, MAX_PATH);
+ if (l) {
+ HKEY hkey;
+
+ if (!RegOpenKey(HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon"), &hkey)) {
+
+ ///@todo save previous shell application in config file
+
+ RegSetValueEx(hkey, TEXT("Shell"), 0, REG_SZ, (LPBYTE)path, l*sizeof(TCHAR));
+ RegCloseKey(hkey);
+ }
+ }
+
+ HWND shellWindow = GetShellWindow();
+
+ if (shellWindow) {
+ DWORD pid;
+
+ // terminate shell process for NT like systems
+ GetWindowThreadProcessId(shellWindow, &pid);
+ HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pid);
+
+ // On Win 9x it's sufficient to destroy the shell window.
+ DestroyWindow(shellWindow);
+
+ if (TerminateProcess(hProcess, 0))
+ WaitForSingleObject(hProcess, INFINITE);
+
+ CloseHandle(hProcess);
+ }
+
+ startup_desktop = TRUE;
+ } else
+ // create desktop window and task bar only, if there is no other shell and we are
+ // the first explorer instance
+ startup_desktop = !any_desktop_running;
bool autostart = !any_desktop_running;
reactos/subsys/system/explorer
diff -u -r1.43.4.7 -r1.43.4.8
--- explorer_intres.h 28 Mar 2004 20:32:22 -0000 1.43.4.7
+++ explorer_intres.h 9 Apr 2004 19:02:58 -0000 1.43.4.8
@@ -110,6 +110,24 @@
#define ID_EXPLORE 40011
#define ID_TASKMGR 40012
#define ID_BROWSE_UP 40013
+
+#define ID_EDIT_UNDO 40019
+#define ID_EDIT_COPY 40020
+#define ID_EDIT_CUt 40021
+#define ID_TOOLS_MAP 40022
+#define ID_EDIT_PASTE 40023
+#define ID_EDIT_PASTE_SHORTCUT 40024
+#define ID_TOOLS_OPTIONS 40025
+#define ID_TOOLS_DISCONNECT 40026
+#define ID_EDIT_COPY_FOLDER 40027
+#define ID_EDIT_MOVE_TO_FOLDER 40028
+#define ID_EDIT_SELECT_ALL 40029
+#define ID_EDIT_INVERT_SELECTION 40030
+#define ID_FILE_CREATESHORTCUT 40031
+#define ID_FILE_DELETE 40032
+#define ID_FILE_RENAME 40033
+#define ID_FILE_PROPERTIES 40034
+
#define ID_SWITCH_DESKTOP_1 50000
#define ID_WINDOW_NEW 0xE130
#define ID_EDIT_PROPERTIES 57656
reactos/subsys/system/explorer
diff -u -r1.58.4.8 -r1.58.4.9
--- explorer_intres.rc 28 Mar 2004 20:32:22 -0000 1.58.4.8
+++ explorer_intres.rc 9 Apr 2004 19:02:58 -0000 1.58.4.9
@@ -383,7 +383,31 @@
BEGIN
POPUP "&File"
BEGIN
- MENUITEM "E&xit", ID_FILE_EXIT
+ MENUITEM "Create Shortcut", ID_FILE_CREATESHORTCUT
+ , GRAYED
+ MENUITEM "Delete", ID_FILE_DELETE, GRAYED
+ MENUITEM "Rename", ID_FILE_RENAME, GRAYED
+ MENUITEM "Properties", ID_FILE_PROPERTIES, GRAYED
+ MENUITEM SEPARATOR
+ MENUITEM "Close", ID_FILE_EXIT
+ END
+ POPUP "&Edit"
+ BEGIN
+ MENUITEM "Undo", ID_EDIT_UNDO, GRAYED
+ MENUITEM SEPARATOR
+ MENUITEM "&Cut", ID_EDIT_CUt, GRAYED
+ MENUITEM "&Copy", ID_EDIT_COPY, GRAYED
+ MENUITEM "&Paste", ID_EDIT_PASTE, GRAYED
+ MENUITEM "&Paste Shortcut", ID_EDIT_PASTE_SHORTCUT
+ , GRAYED
+ MENUITEM SEPARATOR
+ MENUITEM "Copy to Folder", ID_EDIT_COPY_FOLDER, GRAYED
+ MENUITEM "Move to Folder", ID_EDIT_MOVE_TO_FOLDER
+ , GRAYED
+ MENUITEM SEPARATOR
+ MENUITEM "Select All", ID_EDIT_SELECT_ALL, GRAYED
+ MENUITEM "Invert Selection", ID_EDIT_INVERT_SELECTION
+ , GRAYED
END
POPUP "&View"
BEGIN
@@ -395,6 +419,13 @@
MENUITEM "New &Window", ID_WINDOW_NEW
MENUITEM "&Refresh\tF5", ID_REFRESH
END
+ POPUP "&Tools"
+ BEGIN
+ MENUITEM "Map Network Drive", ID_TOOLS_MAP, GRAYED
+ MENUITEM "Disconnect Network Drive...", ID_TOOLS_DISCONNECT, GRAYED
+ MENUITEM SEPARATOR
+ MENUITEM "Folder Options...", ID_TOOLS_OPTIONS, GRAYED
+ END
POPUP "&Help"
BEGIN
MENUITEM "Explorer &FAQ...", ID_EXPLORER_FAQ
reactos/subsys/system/explorer/taskbar
diff -u -r1.33.4.4 -r1.33.4.5
--- traynotify.cpp 20 Mar 2004 13:55:57 -0000 1.33.4.4
+++ traynotify.cpp 9 Apr 2004 19:02:59 -0000 1.33.4.5
@@ -129,15 +129,9 @@
ClientRect clnt(hwndParent);
-#ifndef _ROS_
return Window::Create(WINDOW_CREATOR(NotifyArea), WS_EX_STATICEDGE,
wcTrayNotify, TITLE_TRAYNOTIFY, WS_CHILD|WS_VISIBLE,
clnt.right-(NOTIFYAREA_WIDTH_DEF+1), 1, NOTIFYAREA_WIDTH_DEF, clnt.bottom-2, hwndParent);
-#else
- return Window::Create(WINDOW_CREATOR(NotifyArea), 0,
- wcTrayNotify, TITLE_TRAYNOTIFY, WS_CHILD|WS_VISIBLE,
- clnt.right-(NOTIFYAREA_WIDTH_DEF+1), 1, NOTIFYAREA_WIDTH_DEF, clnt.bottom-2, hwndParent);
-#endif
}
LRESULT NotifyArea::WndProc(UINT nmsg, WPARAM wparam, LPARAM lparam)
@@ -295,13 +289,9 @@
// first fill with the background color
FillRect(canvas, &canvas.rcPaint, GetSysColorBrush(COLOR_BTNFACE));
-#ifdef _ROS_
- DrawEdge(canvas, ClientRect(_hwnd), BDR_SUNKENOUTER, BF_RECT);
-#endif
-
// draw icons
int x = 2;
- int y = 2;
+ int y = 3;
for(NotifyIconSet::const_iterator it=_sorted_icons.begin(); it!=_sorted_icons.end(); ++it) {
DrawIconEx(canvas, x, y, it->_hIcon, 16, 16, 0, 0, DI_NORMAL);
@@ -444,10 +434,6 @@
{
PaintCanvas canvas(_hwnd);
-#ifdef _ROS_
- DrawEdge(canvas, ClientRect(_hwnd), BDR_SUNKENOUTER, BF_TOP|BF_RIGHT);
-#endif
-
BkMode bkmode(canvas, TRANSPARENT);
FontSelection font(canvas, GetStockFont(ANSI_VAR_FONT));
reactos/subsys/system/explorer/utility
diff -u -r1.16.4.3 -r1.16.4.4
--- utility.cpp 28 Mar 2004 20:32:23 -0000 1.16.4.3
+++ utility.cpp 9 Apr 2004 19:02:59 -0000 1.16.4.4
@@ -207,7 +207,7 @@
#endif
-/* search for already running win[e]files */
+/* search for already running explorers */
static int g_foundPrevInstance = 0;
CVSspam 0.2.8