add allowwarnings ="true" so explore can be build with dgb=0 with gcc 3.4.4
[reactos.git] / reactos / subsys / system / explorer / explorer.h
1 /*
2 * Copyright 2003, 2004 Martin Fuchs
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 */
18
19
20 //
21 // Explorer clone
22 //
23 // explorer.h
24 //
25 // Martin Fuchs, 23.07.2003
26 //
27
28
29 #include "utility/shellclasses.h"
30
31 #include "shell/entries.h"
32
33 #include "shell/winfs.h"
34 #include "shell/shellfs.h"
35
36 #ifndef ROSSHELL
37 #include "shell/unixfs.h"
38 #endif
39
40 #include "utility/window.h"
41
42
43 #define IDW_STATUSBAR 0x100
44 #define IDW_TOOLBAR 0x101
45 #define IDW_EXTRABAR 0x102
46 #define IDW_DRIVEBAR 0x103
47 #define IDW_ADDRESSBAR 0x104
48 #define IDW_COMMANDBAR 0x105
49 #define IDW_SIDEBAR 0x106
50 #define IDW_FIRST_CHILD 0xC000 /*0x200*/
51
52
53 #define PM_GET_FILEWND_PTR (WM_APP+0x05)
54 #define PM_GET_SHELLBROWSER_PTR (WM_APP+0x06)
55
56 #define PM_GET_CONTROLWINDOW (WM_APP+0x16)
57
58 #define PM_RESIZE_CHILDREN (WM_APP+0x17)
59 #define PM_GET_WIDTH (WM_APP+0x18)
60
61 #define PM_REFRESH (WM_APP+0x1B)
62 #define PM_REFRESH_CONFIG (WM_APP+0x1C)
63
64
65 #define CLASSNAME_FRAME TEXT("CabinetWClass") // same class name for frame window as in MS Explorer
66
67 #define CLASSNAME_CHILDWND TEXT("WFS_Child")
68 #define CLASSNAME_WINEFILETREE TEXT("WFS_Tree")
69
70
71 #include "shell/pane.h"
72 #include "shell/filechild.h"
73 #include "shell/shellbrowser.h"
74
75
76 #ifndef ROSSHELL
77
78 /// Explorer command line parser
79 // for commands like "/e,/root,c:\"
80 // or "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{21EC2020-3AEA-1069-A2DD-08002B30309D}" (launch of control panel)
81 struct ExplorerCmd
82 {
83 ExplorerCmd()
84 : _flags(0),
85 _cmdShow(SW_SHOWNORMAL),
86 _mdi(false),
87 _valid_path(false)
88 {
89 }
90
91 ExplorerCmd(LPCTSTR url, bool mdi)
92 : _path(url),
93 _flags(0),
94 _cmdShow(SW_SHOWNORMAL),
95 _mdi(mdi),
96 _valid_path(true) //@@
97 {
98 }
99
100 bool ParseCmdLine(LPCTSTR lpCmdLine);
101 bool EvaluateOption(LPCTSTR option);
102 bool IsValidPath() const;
103
104 String _path;
105 int _flags; // OPEN_WINDOW_MODE
106 int _cmdShow;
107 bool _mdi;
108 bool _valid_path;
109 };
110
111 #include "shell/mainframe.h"
112
113 #endif