UPDATE project files
[openwide.git] / openwidedll.h
blobf316ea56b3c953e719b7f8ece065ff29d50b50f3
1 /*
2 * Openwide -- control Windows common dialog
3 *
4 * Copyright (c) 2000 Luke Hudson
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2
9 * of the License, or (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
23 #ifndef C__Data_Code_C_openwide_openwidedll_proto_h_H
24 /**
25 * @author Luke Hudson
26 * @licence GPL2
29 #define C__Data_Code_C_openwide_openwidedll_proto_h_H
30 #pragma once
32 #include <windows.h>
34 #define DLLEXPORT __declspec(dllexport)
36 // Different view and focus options for the Open/Save dialogs
37 enum ViewMode {V_LGICONS, V_SMICONS, V_LIST, V_DETAILS, V_THUMBS, V_TILES, V_MAX};
39 enum FocusMode {F_DIRLIST, F_FNAME, F_FTYPE, F_PLACES, F_LOOKIN, F_MAX};
41 enum CtrlIDs2k
43 CID_DIRLIST = 0x1,
44 CID_TOOLBAR = 0x1,
45 CID_FNAME = 0x47C,
46 CID_FTYPE = 0x470,
47 CID_PLACES = 0x4A0,
48 CID_LOOKIN = 0x471,
49 CID_DIRLISTPARENT = 0x461,
52 enum CommandIDs2k
54 CMD_2K_LGICONS = 28713,
55 CMD_2K_SMICONS = 28714,
56 CMD_2K_LIST = 28715,
57 CMD_2K_DETAILS = 28716,
58 CMD_2K_THUMBS = 28721,
61 enum CommandIDsXP
63 CMD_XP_DETAILS = CMD_2K_DETAILS,//30978,
64 CMD_XP_LIST = CMD_2K_LIST,//30979,
65 CMD_XP_LGICONS = CMD_2K_LGICONS,//30980,
66 CMD_XP_TILES = 28718,//30981,
67 CMD_XP_THUMBS = 28717,//30982,
71 enum OW_COMMANDS {
72 OW_ABOUT_CMDID = 0x1010,
73 OW_EXPLORE_CMDID = 0x1020,
74 OW_TBUTTON_CMDID = 0x1030,
75 OW_ADDFAV_CMDID = 0x1040,
76 OW_FAVOURITE_CMDID = 0x1050,
77 OW_SHOWDESK_CMDID = 0x1060,
80 #define PACKVERSION(major,minor) MAKELONG(minor,major)
82 #define OW_MATCH_STYLE 0x82CC20C4
83 #define OW_MATCH_EXSTYLE 0x00010501
85 #define OW_SHARED_FILE_MAPPING ("openwidedll_shared_memfile")
86 #define OW_MUTEX_NAME ("openwidedll_mem_mutex")
87 #define OW_PROP_NAME ("openwidedll_window_property")
88 #define OW_OVERLAY_CLASS ("openwidedll_overlay_window_class")
90 #define OW_REGKEY_NAME ("Software\\Lingo\\OpenWide")
91 #define OW_REGKEY_EXCLUDES_NAME ("Software\\Lingo\\OpenWide\\Excludes")
93 #define OW_2K_MINWIDTH 565
94 #define OW_2K_MINHEIGHT 349
96 #define OW_XP_MINWIDTH 563
97 #define OW_XP_MINHEIGHT 419
99 #define OW_LISTVIEW_STYLE (LVS_EX_FULLROWSELECT)
102 // functions from file C:\Data\Code\C\openwide\openwidedll.c //
103 int rmvHook(void);
104 int setHook(void);
106 DWORD GetDllVersion(LPCTSTR lpszDllName);
107 BOOL isWinXP(void);
114 typedef struct OWSharedData
116 HWND hwListener;
117 POINT ptOrg;
118 SIZE szDim;
120 int iView;
121 int iFocus;
123 BOOL bStartMin : 1;
124 BOOL bDisable : 1;
125 BOOL bShowIcon : 1;
126 BOOL bPadding : 29;
128 // HHOOK hHook;
129 int refCount;
130 int iCloseMsg;
131 } OWSharedData, *POWSharedData;
142 #endif // C__Data_Code_C_openwide_openwidedll_proto_h