1 // TortoiseGit - a Windows shell extension for easy version control
3 // Copyright (C) 2008-2016, 2018 - 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.
25 // defaults are specified in ShellCache.h
29 { ShellMenuClone
, MENUCLONE
, IDI_CLONE
, IDS_MENUCLONE
, IDS_MENUDESCCLONE
,
30 {ITEMIS_FOLDER
, ITEMIS_INGIT
|ITEMIS_FOLDERINGIT
|ITEMIS_BAREREPO
}, {ITEMIS_FOLDER
|ITEMIS_IGNORED
, 0}, {ITEMIS_FOLDER
|ITEMIS_EXTENDED
, 0}, {0, 0} },
32 { ShellMenuPull
, MENUPULL
, IDI_PULL
, IDS_MENUPULL
, IDS_MENUDESCPULL
,
33 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_BISECT
|ITEMIS_MERGEACTIVE
}, {0, 0}, {0, 0}, {0, 0} },
35 { ShellMenuFetch
, MENUFETCH
, IDI_UPDATE
, IDS_MENUFETCH
, IDS_MENUDESCFETCH
,
36 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {ITEMIS_BAREREPO
, 0}, {0, 0}, {0, 0} },
38 { ShellMenuPush
, MENUPUSH
, IDI_PUSH
, IDS_MENUPUSH
, IDS_MENUDESCPUSH
,
39 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {ITEMIS_BAREREPO
, 0}, {0, 0}, {0, 0} },
41 { ShellMenuSync
, MENUSYNC
, IDI_RELOCATE
, IDS_MENUSYNC
, IDS_MENUDESCSYNC
,
42 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_BISECT
|ITEMIS_MERGEACTIVE
}, {0, 0}, {0, 0}, {0, 0} },
45 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
47 { ShellMenuCommit
, MENUCOMMIT
, IDI_COMMIT
, IDS_MENUCOMMIT
, IDS_MENUDESCCOMMIT
,
48 {ITEMIS_INGIT
, 0}, {ITEMIS_FOLDERINGIT
, 0}, {0, 0}, {0, 0} },
50 { ShellMenuGitSVNDCommit
, MENUSVNDCOMMIT
, IDI_COMMIT
, IDS_MENUSVNDCOMMIT
, IDS_MENUSVNDCOMMIT_DESC
,
51 {ITEMIS_INGIT
|ITEMIS_GITSVN
, ITEMIS_BISECT
|ITEMIS_MERGEACTIVE
}, {ITEMIS_FOLDERINGIT
|ITEMIS_GITSVN
, ITEMIS_BISECT
|ITEMIS_MERGEACTIVE
}, {0, 0}, {0, 0} },
53 { ShellMenuGitSVNRebase
, MENUSVNREBASE
, IDI_REBASE
, IDS_MENUSVNREBASE
, IDS_MENUSVNREBASE_DESC
,
54 {ITEMIS_FOLDERINGIT
|ITEMIS_GITSVN
|ITEMIS_ONLYONE
, ITEMIS_BISECT
|ITEMIS_MERGEACTIVE
}, {0, 0}, {0, 0}, {0, 0} },
56 { ShellMenuGitSVNDFetch
, MENUSVNFETCH
, IDI_UPDATE
, IDS_MENUSVNFETCH
, IDS_MENUDESCSVNFETCH
,
57 {ITEMIS_FOLDERINGIT
|ITEMIS_GITSVN
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0}, {0, 0} },
59 { ShellMenuGitSVNIgnore
, MENUSVNIGNORE
, IDI_IGNORE
, IDS_MENUSVNIGNORE
, IDS_MENUSVNIGNORE_DESC
,
60 {ITEMIS_FOLDERINGIT
|ITEMIS_GITSVN
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0}, {0, 0} },
62 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
64 { ShellMenuDiff
, MENUDIFF
, IDI_DIFF
, IDS_MENUDIFF
, IDS_MENUDESCDIFF
,
65 {ITEMIS_INGIT
|ITEMIS_ONLYONE
, 0}, {ITEMIS_TWO
, ITEMIS_FOLDER
}, {0, 0}, {0, 0} },
67 { ShellMenuDiffLater
, MENUDIFFLATER
, IDI_DIFF
, IDS_MENUDIFFLATER
, IDS_MENUDESCDIFFLATER
,
68 {ITEMIS_ONLYONE
, ITEMIS_FOLDER
}, {0, 0}, {0, 0}, {0, 0} },
70 { ShellMenuPrevDiff
, MENUPREVDIFF
, IDI_DIFF
, IDS_MENUPREVDIFF
, IDS_MENUDESCPREVDIFF
,
71 {ITEMIS_INGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {0, 0}, {0, 0}, {0, 0} },
73 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
75 { ShellMenuLog
, MENULOG
, IDI_LOG
, IDS_MENULOG
, IDS_MENUDESCLOG
,
76 {ITEMIS_INGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {ITEMIS_FOLDER
|ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {ITEMIS_BAREREPO
, 0} },
78 { ShellMenuLogSubmoduleFolder
, MENULOGSUBMODULE
, IDI_LOG
, IDS_MENULOGSUBMODULE
, IDS_MENUDESCLOG
,
79 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
|ITEMIS_WCROOT
|ITEMIS_SUBMODULE
, 0}, {0, 0}, {0, 0}, {0, 0} },
81 { ShellMenuRefLog
, MENUREFLOG
, IDI_LOG
, IDS_MENUREFLOG
, IDS_MENUDESCREFLOG
,
82 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {ITEMIS_BAREREPO
, 0}, {0, 0}, {0, 0} },
84 { ShellMenuRefBrowse
, MENUREFBROWSE
, IDI_REPOBROWSE
, IDS_MENUREFBROWSE
, IDS_MENUDESCREFBROWSE
,
85 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {ITEMIS_BAREREPO
, 0}, {0, 0}, {0, 0} },
87 { ShellMenuDaemon
, MENUDAEMON
, IDI_DAEMON
, IDS_MENUDAEMON
, IDS_MENUDESCDAEMON
,
88 {ITEMIS_INGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {ITEMIS_FOLDER
|ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {ITEMIS_BAREREPO
, 0} },
90 { ShellMenuRevisionGraph
, MENUREVISIONGRAPH
, IDI_REVISIONGRAPH
, IDS_MENUREVISIONGRAPH
, IDS_MENUDESCREVISIONGRAPH
,
91 {ITEMIS_INGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {ITEMIS_FOLDER
|ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_ADDED
}, {ITEMIS_BAREREPO
, 0} },
93 { ShellMenuRepoBrowse
, MENUREPOBROWSE
, IDI_REPOBROWSE
, IDS_MENUREPOBROWSE
, IDS_MENUDESCREPOBROWSE
,
94 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {ITEMIS_BAREREPO
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0} },
96 { ShellMenuShowChanged
, MENUSHOWCHANGED
, IDI_SHOWCHANGED
, IDS_MENUSHOWCHANGED
, IDS_MENUDESCSHOWCHANGED
,
97 {ITEMIS_INGIT
, 0}, {ITEMIS_FOLDER
|ITEMIS_FOLDERINGIT
, 0}, {0, 0}, {0, 0} },
99 { ShellMenuRebase
, MENUREBASE
, IDI_REBASE
, IDS_MENUREBASE
, IDS_MENUREBASE
,
100 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_BISECT
|ITEMIS_MERGEACTIVE
}, {0, 0}, {0, 0}, {0, 0} },
102 { ShellMenuStashSave
, MENUSTASHSAVE
, IDI_SHELVE
, IDS_MENUSTASHSAVE
, IDS_MENUSTASHSAVE
,
103 {ITEMIS_INGIT
|ITEMIS_ONLYONE
, ITEMIS_MERGEACTIVE
}, {0, 0}, {0, 0}, {0, 0} },
104 { ShellMenuStashApply
, MENUSTASHAPPLY
, IDI_UNSHELVE
, IDS_MENUSTASHAPPLY
, IDS_MENUSTASHAPPLY
,
105 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
|ITEMIS_STASH
, 0}, {0, 0}, {0, 0}, {0, 0} },
106 { ShellMenuStashPop
, MENUSTASHPOP
, IDI_UNSHELVE
, IDS_MENUSTASHPOP
, IDS_MENUSTASHPOP
,
107 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
|ITEMIS_STASH
, 0}, {0, 0}, {0, 0}, {0, 0} },
108 { ShellMenuStashList
, MENUSTASHLIST
, IDI_LOG
, IDS_MENUSTASHLIST
, IDS_MENUSTASHLIST
,
109 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
|ITEMIS_STASH
, 0}, {0, 0}, {0, 0}, {0, 0} },
111 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
113 { ShellMenuBisectStart
, MENUBISECT
, IDI_BISECT
, IDS_MENUBISECTSTART
, IDS_MENUDESCBISECTSTART
,
114 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_BISECT
|ITEMIS_MERGEACTIVE
}, {0, 0}, {0, 0}, {0, 0} },
116 { ShellMenuBisectGood
, MENUBISECT
, IDI_THUMB_UP
, IDS_MENUBISECTGOOD
, IDS_MENUDESCBISECTGOOD
,
117 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
|ITEMIS_BISECT
, 0}, {0, 0}, {0, 0}, {0, 0} },
119 { ShellMenuBisectBad
, MENUBISECT
, IDI_THUMB_DOWN
, IDS_MENUBISECTBAD
, IDS_MENUDESCBISECTBAD
,
120 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
|ITEMIS_BISECT
, 0}, {0, 0}, {0, 0}, {0, 0} },
122 { ShellMenuBisectSkip
, MENUBISECT
, IDI_BISECT
, IDS_MENUBISECTSKIP
, IDS_MENUDESCBISECTSKIP
,
123 { ITEMIS_FOLDERINGIT
| ITEMIS_ONLYONE
| ITEMIS_BISECT
, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } },
125 { ShellMenuBisectReset
, MENUBISECT
, IDI_BISECT_RESET
, IDS_MENUBISECTRESET
, IDS_MENUDESCBISECTRESET
,
126 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
|ITEMIS_BISECT
, 0}, {0, 0}, {0, 0}, {0, 0} },
128 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
130 { ShellMenuConflictEditor
, MENUCONFLICTEDITOR
, IDI_CONFLICT
, IDS_MENUCONFLICT
, IDS_MENUDESCCONFLICT
,
131 {ITEMIS_INGIT
|ITEMIS_CONFLICTED
, ITEMIS_FOLDER
}, {0, 0}, {0, 0}, {0, 0} },
133 { ShellMenuResolve
, MENURESOLVE
, IDI_RESOLVE
, IDS_MENURESOLVE
, IDS_MENUDESCRESOLVE
,
134 {ITEMIS_INGIT
|ITEMIS_CONFLICTED
, 0}, {ITEMIS_INGIT
|ITEMIS_FOLDER
, 0}, {ITEMIS_FOLDERINGIT
, 0}, {0, 0} },
136 { ShellMenuMergeAbort
, MENUMERGE
, IDI_MERGEABORT
, IDS_MENUMERGEABORT
, IDS_MENUDESCMERGEABORT
,
137 {ITEMIS_INGIT
|ITEMIS_MERGEACTIVE
, 0}, {ITEMIS_FOLDERINGIT
|ITEMIS_MERGEACTIVE
, 0}, {0, 0}, {0, 0} },
139 { ShellMenuRename
, MENURENAME
, IDI_RENAME
, IDS_MENURENAME
, IDS_MENUDESCRENAME
,
140 {ITEMIS_INGIT
|ITEMIS_ONLYONE
|ITEMIS_INVERSIONEDFOLDER
, ITEMIS_WCROOT
}, {0, 0}, {0, 0}, {0, 0} },
142 { ShellMenuRemove
, MENUREMOVE
, IDI_DELETE
, IDS_MENUREMOVE
, IDS_MENUDESCREMOVE
,
143 {ITEMIS_INGIT
|ITEMIS_INVERSIONEDFOLDER
, ITEMIS_ADDED
|ITEMIS_WCROOT
}, {ITEMIS_FOLDERINGIT
|ITEMIS_WCROOT
|ITEMIS_SUBMODULE
, 0}, {0, 0}, {0, 0} },
145 { ShellMenuRemoveKeep
, MENUREMOVEKEEP
, IDI_DELETE
, IDS_MENUREMOVEKEEP
, IDS_MENUDESCREMOVEKEEP
,
146 {ITEMIS_INGIT
|ITEMIS_INVERSIONEDFOLDER
, ITEMIS_ADDED
|ITEMIS_WCROOT
}, {0, 0}, {0, 0}, {0, 0} },
148 { ShellMenuRevert
, MENUREVERT
, IDI_REVERT
, IDS_MENUREVERT
, IDS_MENUDESCREVERT
,
149 {ITEMIS_INGIT
, ITEMIS_NORMAL
}, {ITEMIS_FOLDERINGIT
, 0}, {0, 0}, {0, 0} },
151 { ShellMenuCleanup
, MENUCLEANUP
, IDI_CLEANUP
, IDS_MENUCLEANUP
, IDS_MENUDESCCLEANUP
,
152 {ITEMIS_FOLDERINGIT
|ITEMIS_FOLDER
, 0}, {0, 0}, {0, 0}, {0, 0} },
154 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
156 // { ShellMenuCopy, MENUCOPY, IDI_COPY, IDS_MENUBRANCH, IDS_MENUDESCCOPY,
157 // ITEMIS_INGIT|ITEMIS_ONLYONE, ITEMIS_ADDED }, {ITEMIS_FOLDER|ITEMIS_FOLDERINGIT|ITEMIS_ONLYONE, 0}, {0, 0}, {0, 0} },
159 { ShellMenuSwitch
, MENUSWITCH
, IDI_SWITCH
, IDS_MENUSWITCH
, IDS_MENUDESCSWITCH
,
160 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0}, {0, 0} },
162 { ShellMenuMerge
, MENUMERGE
, IDI_MERGE
, IDS_MENUMERGE
, IDS_MENUDESCMERGE
,
163 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, ITEMIS_BISECT
|ITEMIS_MERGEACTIVE
}, {0, 0}, {0, 0}, {0, 0} },
165 { ShellMenuBranch
, MENUCOPY
, IDI_COPY
, IDS_MENUBRANCH
, IDS_MENUDESCCOPY
,
166 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0}, {0, 0} },
167 { ShellMenuTag
, MENUTAG
, IDI_TAG
, IDS_MENUTAG
, IDS_MENUDESCCOPY
,
168 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0}, {0, 0} },
170 { ShellMenuExport
, MENUEXPORT
, IDI_EXPORT
, IDS_MENUEXPORT
, IDS_MENUDESCEXPORT
,
171 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0}, {0, 0} },
173 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
175 { ShellMenuCreateRepos
, MENUCREATEREPOS
, IDI_CREATEREPOS
, IDS_MENUCREATEREPOS
, IDS_MENUDESCCREATEREPOS
,
176 {ITEMIS_FOLDER
, ITEMIS_INGIT
|ITEMIS_FOLDERINGIT
|ITEMIS_BAREREPO
}, {ITEMIS_FOLDER
|ITEMIS_IGNORED
, 0}, {ITEMIS_FOLDER
|ITEMIS_EXTENDED
, ITEMIS_INGIT
}, {0, 0} },
178 { ShellMenuAdd
, MENUADD
, IDI_ADD
, IDS_MENUADD
, IDS_MENUDESCADD
,
179 {ITEMIS_INVERSIONEDFOLDER
, ITEMIS_INGIT
}, {ITEMIS_INGIT
|ITEMIS_FOLDER
, 0}, {ITEMIS_IGNORED
, 0}, {ITEMIS_DELETED
, ITEMIS_FOLDER
|ITEMIS_ONLYONE
} },
181 { ShellMenuBlame
, MENUBLAME
, IDI_BLAME
, IDS_MENUBLAME
, IDS_MENUDESCBLAME
,
182 {ITEMIS_INGIT
|ITEMIS_ONLYONE
, ITEMIS_FOLDER
|ITEMIS_ADDED
}, {0, 0}, {0, 0}, {0, 0} },
184 { ShellMenuIgnoreSub
, MENUIGNORE
, IDI_IGNORE
, IDS_MENUIGNORE
, IDS_MENUDESCIGNORE
,
185 {ITEMIS_INVERSIONEDFOLDER
, ITEMIS_IGNORED
|ITEMIS_INGIT
|ITEMIS_WCROOT
}, {0, 0}, {0, 0}, {0, 0} },
187 { ShellMenuDeleteIgnoreSub
, MENUIGNORE
, IDI_IGNORE
, IDS_MENUDELETEIGNORE
, IDS_MENUDESCDELETEIGNORE
,
188 {ITEMIS_INVERSIONEDFOLDER
|ITEMIS_INGIT
, ITEMIS_IGNORED
|ITEMIS_WCROOT
}, {0, 0}, {0, 0}, {0, 0} },
190 // no support for this atm since we do not use "ignoredprops"-vector in ContextMenu.cpp
191 // { ShellMenuUnIgnoreSub, MENUIGNORE, IDI_IGNORE, IDS_MENUUNIGNORE, IDS_MENUDESCUNIGNORE,
192 // {ITEMIS_IGNORED, 0}, {0, 0}, {0, 0}, {0, 0} },
194 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
196 { ShellMenuSubAdd
, MENUSUBADD
, IDI_ADD
, IDS_MENUSUBADD
, IDS_MENUSUBADD
,
197 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0}, {0, 0} },
199 { ShellMenuUpdateExt
, MENUUPDATEEXT
, IDI_UPDATE
, IDS_MENUUPDATEEXT
, IDS_MENUDESCUPDATEEXT
,
200 {ITEMIS_FOLDERINGIT
|ITEMIS_SUBMODULECONTAINER
, 0}, {0, 0}, {0, 0}, {0, 0} },
202 { ShellMenuSubSync
, MENUSUBSYNC
, IDI_MENUSYNC
, IDS_MENUSUBSYNC
, IDS_MENUSUBSYNC
,
203 {ITEMIS_FOLDERINGIT
|ITEMIS_SUBMODULECONTAINER
, 0}, {0, 0}, {0, 0}, {0, 0} },
205 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
207 { ShellMenuFormatPatch
, MENUFORMATPATCH
, IDI_CREATEPATCH
, IDS_MENUFORMATPATCH
, IDS_MENUDESCCREATEPATCH
,
208 {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0}, {0, 0} },
210 // Really apply patch
211 { ShellMenuImportPatch
, MENUIMPORTPATCH
, IDI_PATCH
, IDS_MENUIMPORTPATCH
, IDS_MENUDESCIMPORTPATCH
,
212 {ITEMIS_PATCHFILE
, 0}, {ITEMIS_FOLDERINGIT
|ITEMIS_ONLYONE
, 0}, {0, 0}, {0, 0} },
215 { ShellMenuApplyPatch
, MENUAPPLYPATCH
, IDI_PATCH
, IDS_MENUAPPLYPATCH
, IDS_MENUDESCAPPLYPATCH
,
216 {ITEMIS_PATCHFILE
|ITEMIS_ONLYONE
, 0}, {ITEMIS_EXTENDED
|ITEMIS_ONLYONE
, ITEMIS_FOLDER
}, {0, 0}, {0, 0} },
218 { ShellMenuSendMail
, MENUSENDMAIL
, IDI_MENUSENDMAIL
, IDS_MENUSENDMAIL
, IDS_MENUDESSENDMAIL
,
219 {ITEMIS_PATCHFILE
, 0}, {ITEMIS_EXTENDED
, ITEMIS_FOLDER
}, {0, 0}, {0, 0} },
221 // we do not support paste atm
222 // { ShellSeparator, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
223 // { ShellMenuClipPaste, MENUCLIPPASTE, IDI_CLIPPASTE, IDS_MENUCLIPPASTE, IDS_MENUDESCCLIPPASTE,
224 // {ITEMIS_INGIT|ITEMIS_FOLDER|ITEMIS_PATHINCLIPBOARD, 0}, {0, 0}, {0, 0}, {0, 0} },
226 { ShellSeparator
, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, {0, 0} },
228 { ShellMenuSettings
, MENUSETTINGS
, IDI_SETTINGS
, IDS_MENUSETTINGS
, IDS_MENUDESCSETTINGS
,
229 {ITEMIS_FOLDER
, 0}, {0, ITEMIS_FOLDER
}, {0, 0}, {0, 0} },
230 { ShellMenuHelp
, MENUHELP
, IDI_HELP
, IDS_MENUHELP
, IDS_MENUDESCHELP
,
231 {ITEMIS_FOLDER
, 0}, {0, ITEMIS_FOLDER
}, {0, 0}, {0, 0} },
232 { ShellMenuAbout
, MENUABOUT
, IDI_ABOUT
, IDS_MENUABOUT
, IDS_MENUDESCABOUT
,
233 {ITEMIS_FOLDER
, 0}, {0, ITEMIS_FOLDER
}, {0, 0}, {0, 0} },
235 // the sub menus - they're not added like the the commands, therefore the menu ID is zero
236 // but they still need to be in here, because we use the icon and string information anyway.
237 { ShellSubMenu
, NULL
, IDI_APP
, IDS_MENUSUBMENU
, 0,
238 {0, 0}, {0, 0}, {0, 0}, {0, 0} },
239 { ShellSubMenuFile
, NULL
, IDI_MENUFILE
, IDS_MENUSUBMENU
, 0,
240 {0, 0}, {0, 0}, {0, 0}, {0, 0} },
241 { ShellSubMenuFolder
, NULL
, IDI_MENUFOLDER
, IDS_MENUSUBMENU
, 0,
242 {0, 0}, {0, 0}, {0, 0}, {0, 0} },
243 { ShellSubMenuLink
, NULL
, IDI_MENULINK
, IDS_MENUSUBMENU
, 0,
244 {0, 0}, {0, 0}, {0, 0}, {0, 0} },
245 { ShellSubMenuMultiple
, NULL
, IDI_MENUMULTIPLE
, IDS_MENUSUBMENU
, 0,
246 {0, 0}, {0, 0}, {0, 0}, {0, 0} },
247 // mark the last entry to tell the loop where to stop iterating over this array
248 { ShellMenuLastEntry
, 0, 0, 0, 0,
249 {0, 0}, {0, 0}, {0, 0}, {0, 0} },