#ifndef _DEXPOT_CONSTANTS_H_
#define _DEXPOT_CONSTANTS_H_

#define DEXPOTTITLE             _T("Dexpot - Main Menu")
#define DEXPOTCLASS             _T("ThunderRT6FormDC")
#define DEXPOTCLASS2            _T("ThunderFormDC")

#define WM_HOOXPOTRUFT				1802

#define DEX_SWITCHDESKTOP			(WM_HOOXPOTRUFT + 1)
#define DEX_DEXPOTCOMMAND			(WM_HOOXPOTRUFT + 2)

#define DEX_MOVEICONS				(WM_HOOXPOTRUFT + 13)
#define DEX_COPYICONS				(WM_HOOXPOTRUFT + 14)
#define DEX_REMOVEICONS				(WM_HOOXPOTRUFT + 15)

#define DEX_REGISTERPLUGIN			(WM_HOOXPOTRUFT + 200)
#define DEX_UNREGISTERPLUGIN		(WM_HOOXPOTRUFT + 217)
#define DEX_SETFILEMAP				(WM_HOOXPOTRUFT + 218)

#define DEX_REGISTERHOTKEY			(WM_HOOXPOTRUFT + 211)
#define DEX_LOADSETTINGS			(WM_HOOXPOTRUFT + 212)
#define DEX_REGISTEROPTION			(WM_HOOXPOTRUFT + 213)
#define DEX_SETOPTIONVALUE			(WM_HOOXPOTRUFT + 214)
#define DEX_SETHOTKEYVALUE			(WM_HOOXPOTRUFT + 215)
#define DEX_SAVESETTINGS			(WM_HOOXPOTRUFT + 216)

#define DEX_GETSCREENSHOT			(WM_HOOXPOTRUFT + 201)
#define DEX_GETDESKTOPWIDTH			(WM_HOOXPOTRUFT + 202)
#define DEX_GETDESKTOPHEIGHT		(WM_HOOXPOTRUFT + 203)
#define DEX_GETCURRENTDESKTOP		(WM_HOOXPOTRUFT + 204)
#define DEX_GETDESKTOPCOUNT			(WM_HOOXPOTRUFT + 205)
#define DEX_SETSWITCHINGEXCEPTION	(WM_HOOXPOTRUFT + 206)
#define DEX_GETSWITCHINGEXCEPTION	(WM_HOOXPOTRUFT + 207)
#define DEX_SETMINANIMATION			(WM_HOOXPOTRUFT + 208)
#define DEX_DEBUGOUTPUT				(WM_HOOXPOTRUFT + 209)
#define DEX_GETDEBUGMODE			(WM_HOOXPOTRUFT + 210)
#define DEX_GETLANGUAGEFILE			(WM_HOOXPOTRUFT + 219)
#define DEX_INSERTMAINMENUITEM		(WM_HOOXPOTRUFT + 220)
#define DEX_GETDESKTOPTITLE			(WM_HOOXPOTRUFT + 221)
#define DEX_GETDESKTOPWALLPAPER		(WM_HOOXPOTRUFT + 222)
#define DEX_ISPORTABLE				(WM_HOOXPOTRUFT + 223)
#define DEX_GETDEXPOTHOME			(WM_HOOXPOTRUFT + 224)
#define DEX_GETAPPDATAPATH			(WM_HOOXPOTRUFT + 225)
#define DEX_GETTRAYICONMODE			(WM_HOOXPOTRUFT + 226)
#define DEX_SETTRAYICONMODE			(WM_HOOXPOTRUFT + 227)
#define DEX_GATHERWINDOWS			(WM_HOOXPOTRUFT + 228)
#define DEX_MOVEWINDOW				(WM_HOOXPOTRUFT + 229)
#define DEX_COPYWINDOW				(WM_HOOXPOTRUFT + 230)
#define DEX_SETFOREGROUNDWINDOW		(WM_HOOXPOTRUFT + 231)
#define DEX_ASSIGNWINDOW			(WM_HOOXPOTRUFT + 232)
#define DEX_SWITCHTOWINDOW			(WM_HOOXPOTRUFT + 233)
#define DEX_SHOWWINDOW				(WM_HOOXPOTRUFT + 234)
#define DEX_UPDATESCREENSHOT		(WM_HOOXPOTRUFT + 235)
#define DEX_REMOVEMAINMENUITEM		(WM_HOOXPOTRUFT + 236)
#define DEX_SUBSCRIBEHOOXPOT		(WM_HOOXPOTRUFT + 237)
#define DEX_UNSUBSCRIBEHOOXPOT		(WM_HOOXPOTRUFT + 238)
#define DEX_GETACTIVEWINDOW			(WM_HOOXPOTRUFT + 239)
#define DEX_GETWINDOWSONDESKTOP		(WM_HOOXPOTRUFT + 240)
#define DEX_OPENWINDOWMENU			(WM_HOOXPOTRUFT + 241)
#define DEX_OPENMAINMENU			(WM_HOOXPOTRUFT + 242)

#define DEX_SWITCHING					(WM_HOOXPOTRUFT + 100)
#define DEX_SWITCHED					(WM_HOOXPOTRUFT + 101)
#define DEX_SHUTDOWN					(WM_HOOXPOTRUFT + 102)
#define DEX_LOAD						(WM_HOOXPOTRUFT + 103)
#define DEX_HOTKEY						(WM_HOOXPOTRUFT + 104)
#define DEX_SETOPTION					(WM_HOOXPOTRUFT + 105)
#define DEX_CONFIGURE					(WM_HOOXPOTRUFT + 106)
#define DEX_MENUCOMMAND					(WM_HOOXPOTRUFT + 107)
#define DEX_SWITCHREQUEST				(WM_HOOXPOTRUFT + 108)
#define DEX_DESKTOPCOUNTCHANGED			(WM_HOOXPOTRUFT + 109)
#define DEX_DESKTOPCONTENTCHANGED		(WM_HOOXPOTRUFT + 111)
#define DEX_DESKTOPCONFIGURATIONCHANGED	(WM_HOOXPOTRUFT + 112)
#define DEX_DEXPOTSETTINGSCHANGED		(WM_HOOXPOTRUFT + 113)

#define DEX_SWITCH_NOSCREENSHOT		0x0001
#define DEX_SWITCH_DONTSWITCH		0x0002
#define DEX_SWITCH_NOANIMATION		0x0004

#define DEX_OPTION_TYPE_INTEGER		1
#define DEX_OPTION_TYPE_STRING		2

#define DEX_COMMAND_SETTINGS			1
#define DEX_COMMAND_DESKTOPWINDOWS		2
#define DEX_COMMAND_MANAGER				3
#define DEX_COMMAND_CONFIGUREDESKTOPS	4
#define DEX_COMMAND_PREVIEW				6
#define DEX_COMMAND_RULES				7
#define DEX_COMMAND_ABOUT				8
#define DEX_COMMAND_EXIT				9
#define DEX_COMMAND_QUICKEXIT			10
#define DEX_COMMAND_FULLSCREENPREVIEW	11
#define DEX_COMMAND_WINDOWCATALOG		12
#define DEX_COMMAND_APPLYRULES			13

#define DEX_TRAYICON_NONE			0
#define DEX_TRAYICON_NORMAL			1
#define DEX_TRAYICON_CURRENTDESKTOP	2
#define DEX_TRAYICON_NEXTPREVIOUS	3
#define DEX_TRAYICON_ONEPERDESKTOP	4

#define DEX_EXCEPTION_UNKNOWN	0
#define DEX_EXCEPTION_NORMAL	1
#define DEX_EXCEPTION_MOVE		2
#define DEX_EXCEPTION_STICKY	3
#define DEX_EXCEPTION_CLOSE		6
#define DEX_EXCEPTION_IGNORE	4
#define DEX_EXCEPTION_HIDE		5
#define DEX_EXCEPTION_DONTMOVE	7

#define DEX_DEBUG_LOGFILE	0x0001
#define DEX_DEBUG_IMAGING	0x0002
#define DEX_DEBUG_TASKBAR	0x0004
#define DEX_DEBUG_RECOVERY	0x0008

#endif