Limit GUI updates the the main thread
[TortoiseGit.git] / src / TortoiseShell / Globals.h
blobf32cedefa21303bfd850c381294085a4e048230b
1 // TortoiseGit - a Windows shell extension for easy version control
3 // Copyright (C) 2008-2012 - TortoiseGit
4 // Copyright (C) 2003-2008 - TortoiseSVN
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 Foundation,
18 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 #pragma once
22 #define MENUSYNC 0x0000000000000002
23 #define MENUCOMMIT 0x0000000000000004
24 #define MENUADD 0x0000000000000008
25 #define MENUREVERT 0x0000000000000010
26 #define MENUCLEANUP 0x0000000000000020
27 #define MENURESOLVE 0x0000000000000040
28 #define MENUSWITCH 0x0000000000000080
29 #define MENUSENDMAIL 0x0000000000000100
30 #define MENUEXPORT 0x0000000000000200
31 #define MENUCREATEREPOS 0x0000000000000400
32 #define MENUCOPY 0x0000000000000800
33 #define MENUMERGE 0x0000000000001000
34 #define MENUREMOVE 0x0000000000002000
35 #define MENURENAME 0x0000000000004000
36 #define MENUUPDATEEXT 0x0000000000008000
37 #define MENUDIFF 0x0000000000010000
38 #define MENULOG 0x0000000000020000
39 #define MENUCONFLICTEDITOR 0x0000000000040000
40 #define MENUREFBROWSE 0x0000000000080000
41 #define MENUSHOWCHANGED 0x0000000000100000
42 #define MENUIGNORE 0x0000000000200000
43 #define MENUREFLOG 0x0000000000400000
44 #define MENUBLAME 0x0000000000800000
45 #define MENUREPOBROWSE 0x0000000001000000
46 #define MENUAPPLYPATCH 0x0000000002000000
47 #define MENUREMOVEKEEP 0x0000000004000000
48 #define MENUSVNREBASE 0x0000000008000000
49 #define MENUSVNDCOMMIT 0x0000000010000000
50 #define MENUSVNIGNORE 0x0000000040000000
51 #define MENULOGSUBMODULE 0x0000000100000000
52 #define MENUPREVDIFF 0x0000000200000000
53 #define MENUCLIPPASTE 0x0000000400000000
54 #define MENUPULL 0x0000000800000000
55 #define MENUPUSH 0x0000001000000000
56 #define MENUCLONE 0x0000002000000000
57 #define MENUTAG 0x0000004000000000
58 #define MENUFORMATPATCH 0x0000008000000000
59 #define MENUIMPORTPATCH 0x0000010000000000
60 #define MENUFETCH 0x0000040000000000
61 #define MENUREBASE 0x0000080000000000
62 #define MENUSTASHSAVE 0x0000100000000000
63 #define MENUSTASHAPPLY 0x0000200000000000
64 #define MENUSTASHLIST 0x0000400000000000
65 #define MENUSUBADD 0x0000800000000000
66 #define MENUSUBSYNC 0x0001000000000000
67 #define MENUSTASHPOP 0x0002000000000000
68 #define MENUDIFFTWO 0x0004000000000000
69 #define MENUBISECTSTART 0x0008000000000000
70 #define MENUBISECTGOOD 0x0010000000000000
71 #define MENUBISECTBAD 0x0020000000000000
72 #define MENUBISECTRESET 0x0040000000000000
73 #define MENUSVNFETCH 0x0080000000000000
74 #define MENUREVISIONGRAPH 0x0100000000000000
76 #define MENUSETTINGS 0x2000000000000000
77 #define MENUHELP 0x4000000000000000
78 #define MENUABOUT 0x8000000000000000
80 /**
81 * \ingroup TortoiseShell
82 * Since we need an own COM-object for every different
83 * Icon-Overlay implemented this enum defines which class
84 * is used.
86 enum FileState
88 FileStateUncontrolled,
89 FileStateVersioned,
90 FileStateModified,
91 FileStateConflict,
92 FileStateDeleted,
93 FileStateReadOnly,
94 FileStateLockedOverlay,
95 FileStateAddedOverlay,
96 FileStateIgnoredOverlay,
97 FileStateUnversionedOverlay,
98 FileStateDropHandler,
99 FileStateInvalid
102 #define ITEMIS_ONLYONE 0x00000001
103 #define ITEMIS_EXTENDED 0x00000002
104 #define ITEMIS_INGIT 0x00000004
105 #define ITEMIS_CONFLICTED 0x00000008
106 #define ITEMIS_FOLDER 0x00000010
107 #define ITEMIS_FOLDERINGIT 0x00000020
108 #define ITEMIS_NORMAL 0x00000040
109 #define ITEMIS_IGNORED 0x00000080
110 #define ITEMIS_INVERSIONEDFOLDER 0x00000100
111 #define ITEMIS_ADDED 0x00000200
112 #define ITEMIS_DELETED 0x00000400
113 #define ITEMIS_PATCHFILE 0x00001000
114 // #define ITEMIS_SHORTCUT 0x00002000 //unused
115 #define ITEMIS_PATCHINCLIPBOARD 0x00008000
116 #define ITEMIS_PATHINCLIPBOARD 0x00010000
117 #define ITEMIS_TWO 0x00020000
118 #define ITEMIS_SUBMODULECONTAINER 0x00040000
119 #define ITEMIS_GITSVN 0x00080000
120 #define ITEMIS_STASH 0x00100000
121 #define ITEMIS_WCROOT 0x00200000
122 #define ITEMIS_BISECT 0x00400000
123 #define ITEMIS_BAREREPO 0x00800000
124 #define ITEMIS_SUBMODULE 0x01000000