NonVisual.h 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745
  1. //---------------------------------------------------------------------------
  2. #ifndef NonVisualH
  3. #define NonVisualH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <Controls.hpp>
  7. #include <StdCtrls.hpp>
  8. #include <Forms.hpp>
  9. #include <ActnList.hpp>
  10. #include <Menus.hpp>
  11. #include <ImgList.hpp>
  12. #include <ExtCtrls.hpp>
  13. #include <Rights.h>
  14. #include "CustomScpExplorer.h"
  15. #include "TB2Item.hpp"
  16. #include "TBX.hpp"
  17. #include "TB2ExtItems.hpp"
  18. #include "TBXExtItems.hpp"
  19. #include <ShellAnimations.hpp>
  20. #include "TBXToolPals.hpp"
  21. #include <System.Actions.hpp>
  22. //---------------------------------------------------------------------------
  23. #define fcStatusBar 0x01
  24. #define fcToolBar2 0x02
  25. #define fcLocalStatusBar 0x12
  26. #define fcRemoteStatusBar 0x14
  27. #define fcRemotePopup 0x17
  28. #define fcCommandLinePanel 0x18
  29. #define fcQueueView 0x19
  30. #define fcQueueToolbar 0x1A
  31. #define fcLocalTree 0x1B
  32. #define fcRemoteTree 0x1C
  33. #define fcSessionToolbar 0x1E
  34. #define fcCustomCommandsBand 0x1F
  35. #define fcColorMenu 0x20
  36. #define fcTransferDropDown 0x22
  37. #define fcTransferList 0x23
  38. #define fcTransferLabel 0x24
  39. #define fcSessionsTabs 0x25
  40. #define fcLocalPopup 0x26
  41. #define fcRemotePathComboBox 0x27
  42. #define fcQueueFileList 0x28
  43. #define fcExplorerMenuBand 0x31
  44. #define fcExplorerAddressBand 0x32
  45. #define fcExplorerToolbarBand 0x33
  46. #define fcExplorerSelectionBand 0x34
  47. #define fcExplorerSessionBand 0x35
  48. #define fcExplorerPreferencesBand 0x36
  49. #define fcExplorerSortBand 0x37
  50. #define fcExplorerUpdatesBand 0x38
  51. #define fcExplorerTransferBand 0x39
  52. #define fcExplorerCustomCommandsBand 0x40
  53. #define fcCommanderMenuBand 0x51
  54. #define fcCommanderSessionBand 0x52
  55. #define fcCommanderPreferencesBand 0x53
  56. #define fcCommanderSortBand 0x56
  57. #define fcCommanderCommandsBand 0x57
  58. #define fcCommanderUpdatesBand 0x58
  59. #define fcCommanderTransferBand 0x59
  60. #define fcCommanderCustomCommandsBand 0x61
  61. #define fcCommanderLocalHistoryBand 0x71
  62. #define fcCommanderLocalNavigationBand 0x72
  63. #define fcCommanderLocalFileBand 0x73
  64. #define fcCommanderLocalSelectionBand 0x74
  65. #define fcCommanderRemoteHistoryBand 0x75
  66. #define fcCommanderRemoteNavigationBand 0x76
  67. #define fcCommanderRemoteFileBand 0x77
  68. #define fcCommanderRemoteSelectionBand 0x78
  69. //---------------------------------------------------------------------------
  70. class TNonVisualDataModule : public TDataModule
  71. {
  72. __published: // IDE-managed Components
  73. TAction *LocalSortByNameAction;
  74. TAction *LocalSortAscendingAction;
  75. TAction *LocalSortBySizeAction;
  76. TActionList *ExplorerActions;
  77. TAction *CurrentRenameAction;
  78. TAction *CurrentDeleteAction;
  79. TAction *CurrentCreateDirAction;
  80. TAction *CurrentCycleStyleAction;
  81. TAction *CurrentIconAction;
  82. TAction *CurrentSmallIconAction;
  83. TAction *CurrentReportAction;
  84. TAction *CurrentListAction;
  85. TAction *CurrentDeleteFocusedAction;
  86. TAction *CurrentPropertiesFocusedAction;
  87. TAction *CurrentPropertiesAction;
  88. TAction *RemoteBackAction;
  89. TAction *RemoteForwardAction;
  90. TAction *RemoteParentDirAction;
  91. TAction *RemoteRootDirAction;
  92. TAction *RemoteHomeDirAction;
  93. TAction *RemoteRefreshAction;
  94. TAction *AboutAction;
  95. TAction *StatusBarAction;
  96. TAction *SessionsTabsAction;
  97. TAction *ExplorerAddressBandAction;
  98. TAction *ExplorerMenuBandAction;
  99. TAction *ExplorerToolbarBandAction;
  100. TAction *RemoteOpenDirAction;
  101. TAction *SelectAction;
  102. TAction *UnselectAction;
  103. TAction *SelectAllAction;
  104. TAction *InvertSelectionAction;
  105. TAction *ExplorerSelectionBandAction;
  106. TAction *ClearSelectionAction;
  107. TTimer *SessionIdleTimer;
  108. TAction *NewSessionAction;
  109. TAction *SiteManagerAction;
  110. TAction *CloseSessionAction2;
  111. TAction *SavedSessionsAction2;
  112. TAction *WorkspacesAction;
  113. TAction *ExplorerSessionBandAction;
  114. TAction *PreferencesAction;
  115. TAction *ExplorerPreferencesBandAction;
  116. TAction *RemoteChangePathAction;
  117. TAction *LocalChangePathAction;
  118. TAction *LocalOpenDirAction;
  119. TAction *LocalBackAction;
  120. TAction *LocalForwardAction;
  121. TAction *LocalParentDirAction;
  122. TAction *LocalRootDirAction;
  123. TAction *LocalHomeDirAction;
  124. TAction *LocalRefreshAction;
  125. TAction *ToolBar2Action;
  126. TAction *CommanderMenuBandAction;
  127. TAction *CommanderSessionBandAction;
  128. TAction *CommanderPreferencesBandAction;
  129. TAction *CommanderLocalHistoryBandAction;
  130. TAction *CommanderLocalNavigationBandAction;
  131. TAction *CommanderRemoteHistoryBandAction;
  132. TAction *CommanderRemoteNavigationBandAction;
  133. TAction *LocalStatusBarAction;
  134. TAction *RemoteStatusBarAction;
  135. TAction *LocalSortByAttrAction;
  136. TAction *LocalSortByTypeAction;
  137. TAction *LocalSortByChangedAction;
  138. TAction *CommanderSortBandAction;
  139. TAction *RemoteSortAscendingAction;
  140. TAction *RemoteSortByNameAction;
  141. TAction *RemoteSortBySizeAction;
  142. TAction *RemoteSortByRightsAction;
  143. TAction *RemoteSortByChangedAction;
  144. TAction *RemoteSortByOwnerAction;
  145. TAction *RemoteSortByGroupAction;
  146. TAction *CurrentSortByTypeAction;
  147. TAction *CurrentSortAscendingAction;
  148. TAction *CurrentSortByNameAction;
  149. TAction *CurrentSortBySizeAction;
  150. TAction *CurrentSortByRightsAction;
  151. TAction *CurrentSortByChangedAction;
  152. TAction *CurrentSortByOwnerAction;
  153. TAction *CurrentSortByGroupAction;
  154. TAction *ExplorerSortBandAction;
  155. TAction *SortColumnAscendingAction;
  156. TAction *SortColumnDescendingAction;
  157. TAction *HomepageAction;
  158. TAction *HistoryPageAction;
  159. TAction *SaveCurrentSessionAction2;
  160. TAction *LocalSortByExtAction;
  161. TAction *RemoteSortByExtAction;
  162. TAction *CurrentSortByExtAction;
  163. TAction *ShowHideRemoteNameColumnAction;
  164. TAction *ShowHideRemoteExtColumnAction;
  165. TAction *ShowHideRemoteSizeColumnAction;
  166. TAction *ShowHideRemoteChangedColumnAction;
  167. TAction *ShowHideRemoteRightsColumnAction;
  168. TAction *ShowHideRemoteOwnerColumnAction;
  169. TAction *ShowHideRemoteGroupColumnAction;
  170. TAction *ShowHideLocalNameColumnAction;
  171. TAction *ShowHideLocalExtColumnAction;
  172. TAction *ShowHideLocalTypeColumnAction;
  173. TAction *ShowHideLocalSizeColumnAction;
  174. TAction *ShowHideLocalChangedColumnAction;
  175. TAction *ShowHideLocalAttrColumnAction;
  176. TAction *HideColumnAction;
  177. TAction *CompareDirectoriesAction;
  178. TAction *CommanderCommandsBandAction;
  179. TAction *SynchronizeAction;
  180. TAction *ForumPageAction;
  181. TAction *LocalAddBookmarkAction;
  182. TAction *RemoteAddBookmarkAction;
  183. TAction *ConsoleAction;
  184. TAction *LocalExploreDirectoryAction;
  185. TAction *CurrentEditAction;
  186. TAction *CurrentOpenAction;
  187. TAction *SynchronizeBrowsingAction;
  188. TAction *CurrentAddEditLinkAction;
  189. TAction *CloseApplicationAction;
  190. TAction *OpenedSessionsAction;
  191. TAction *CustomCommandsFileAction;
  192. TAction *CustomCommandsCustomizeAction;
  193. TAction *CheckForUpdatesAction;
  194. TAction *PuttyAction;
  195. TAction *DonatePageAction;
  196. TAction *FileSystemInfoAction;
  197. TAction *ClearCachesAction;
  198. TAction *FullSynchronizeAction;
  199. TAction *RemoteMoveToAction;
  200. TAction *RemoteMoveToFocusedAction;
  201. TAction *SelectOneAction;
  202. TAction *ShowHiddenFilesAction;
  203. TAction *FormatSizeBytesNoneAction;
  204. TAction *CommandLinePanelAction;
  205. TAction *LocalPathToClipboardAction;
  206. TAction *RemotePathToClipboardAction;
  207. TAction *GoToCommandLineAction;
  208. TAction *FileListToCommandLineAction;
  209. TAction *FileListToClipboardAction;
  210. TAction *FullFileListToClipboardAction;
  211. TAction *QueueItemQueryAction;
  212. TAction *QueueItemPromptAction;
  213. TAction *QueueItemErrorAction;
  214. TAction *QueueItemDeleteAction;
  215. TAction *QueueItemExecuteAction;
  216. TAction *QueueGoToAction;
  217. TAction *QueueItemUpAction;
  218. TAction *QueueItemDownAction;
  219. TAction *QueueToggleShowAction;
  220. TAction *QueueShowAction;
  221. TAction *QueueHideWhenEmptyAction;
  222. TAction *QueueHideAction;
  223. TAction *QueueToolbarAction;
  224. TAction *QueuePreferencesAction;
  225. TAction *PasteAction2;
  226. TAction *RemoteTreeAction;
  227. TAction *LocalTreeAction;
  228. TAction *GoToTreeAction;
  229. TAction *NewFileAction;
  230. TAction *RemoteCopyToFocusedAction;
  231. TAction *RemoteCopyToAction;
  232. TAction *FileGenerateUrlAction2;
  233. TAction *TableOfContentsAction;
  234. TTBXPopupMenu *CommanderBarPopup;
  235. TTBXItem *SessionButtons5;
  236. TTBXItem *PreferencesButtons4;
  237. TTBXItem *SortButtons2;
  238. TTBXItem *CommandsButtons2;
  239. TTBXSeparatorItem *N26;
  240. TTBXItem *CommandLine2;
  241. TTBXItem *CommandsToolbar1;
  242. TTBXItem *StatusBar8;
  243. TTBXSeparatorItem *N27;
  244. TTBXSubmenuItem *LocalPanel1;
  245. TTBXItem *HistoryButtons3;
  246. TTBXItem *NavigationButtons3;
  247. TTBXSeparatorItem *N23;
  248. TTBXItem *Tree7;
  249. TTBXSeparatorItem *N77;
  250. TTBXItem *StatusBar6;
  251. TTBXSubmenuItem *RemotePanel2;
  252. TTBXItem *HistoryButtons4;
  253. TTBXItem *NavigationButtons4;
  254. TTBXSeparatorItem *N25;
  255. TTBXItem *Tree8;
  256. TTBXSeparatorItem *N78;
  257. TTBXItem *StatusBar7;
  258. TTBXSubmenuItem *Options1;
  259. TTBXItem *Show5;
  260. TTBXItem *HidewhenEmpty5;
  261. TTBXItem *Hide4;
  262. TTBXSeparatorItem *N69;
  263. TTBXItem *Toolbar4;
  264. TTBXSeparatorItem *N68;
  265. TTBXItem *Customize4;
  266. TTBXPopupMenu *RemotePanelPopup;
  267. TTBXItem *CopyPathtoClipboard1;
  268. TTBXSeparatorItem *N51;
  269. TTBXItem *HistoryButtons5;
  270. TTBXItem *NavigationButtons5;
  271. TTBXSeparatorItem *N28;
  272. TTBXItem *Tree5;
  273. TTBXSeparatorItem *N75;
  274. TTBXItem *StatusBar9;
  275. TTBXPopupMenu *LocalPanelPopup;
  276. TTBXItem *CopyPathtoClipboard2;
  277. TTBXSeparatorItem *N52;
  278. TTBXItem *HistoryButtons6;
  279. TTBXItem *NavigationButtons6;
  280. TTBXSeparatorItem *N29;
  281. TTBXItem *Tree6;
  282. TTBXSeparatorItem *N76;
  283. TTBXItem *StatusBar10;
  284. TTBXPopupMenu *RemoteFilePopup;
  285. TTBXItem *RemoteOpenMenuItem;
  286. TTBXSubmenuItem *RemoteEditMenuItem;
  287. TTBXSubmenuItem *RemoteCopyMenuItem;
  288. TTBXItem *Duplicate3;
  289. TTBXItem *Moveto1;
  290. TTBXItem *Moveto6;
  291. TTBXItem *Delete1;
  292. TTBXItem *Rename1;
  293. TTBXSeparatorItem *N45;
  294. TTBXSubmenuItem *RemoteFilePopupCustomCommandsMenu;
  295. TTBXSubmenuItem *FileNames3;
  296. TTBXItem *InserttoCommandLine2;
  297. TTBXItem *CopytoClipboard3;
  298. TTBXItem *CopytoClipboardIncludePaths3;
  299. TTBXItem *CopyURLtoClipboard3;
  300. TTBXSeparatorItem *N1;
  301. TTBXItem *Properties1;
  302. TTBXPopupMenu *RemoteDirViewPopup;
  303. TTBXSubmenuItem *GoTo4;
  304. TTBXItem *OpenDirectoryBookmark3;
  305. TTBXSeparatorItem *N81;
  306. TTBXItem *ParentDirectory4;
  307. TTBXItem *RootDirectory4;
  308. TTBXItem *HomeDirectory4;
  309. TTBXSeparatorItem *N80;
  310. TTBXItem *Back4;
  311. TTBXItem *Forward4;
  312. TTBXItem *Refresh4;
  313. TTBXItem *AddToBookmarks4;
  314. TTBXItem *CopyPathtoClipboard6;
  315. TTBXSeparatorItem *N79;
  316. TTBXPopupMenu *LocalDirViewPopup;
  317. TTBXSubmenuItem *GoTo5;
  318. TTBXItem *OpenDirectoryBookmark4;
  319. TTBXItem *ExploreDirectory2;
  320. TTBXSeparatorItem *N84;
  321. TTBXItem *ParentDirectory5;
  322. TTBXItem *RootDirectory5;
  323. TTBXItem *HomeDirectory5;
  324. TTBXSeparatorItem *N83;
  325. TTBXItem *Back5;
  326. TTBXItem *Forward5;
  327. TTBXItem *Refresh5;
  328. TTBXItem *AddToBookmarks5;
  329. TTBXItem *CopyPathtoClipboard7;
  330. TTBXSeparatorItem *N82;
  331. TTBXPopupMenu *LocalDirViewColumnPopup;
  332. TTBXItem *SortAscending1;
  333. TTBXItem *SortDescending1;
  334. TTBXItem *Hidecolumn1;
  335. TTBXSeparatorItem *N37;
  336. TTBXSubmenuItem *Showcolumns3;
  337. TTBXItem *Name3;
  338. TTBXItem *Size3;
  339. TTBXItem *Type2;
  340. TTBXItem *Modification3;
  341. TTBXItem *Attributes3;
  342. TTBXPopupMenu *RemoteDirViewColumnPopup;
  343. TTBXItem *MenuItem1;
  344. TTBXItem *MenuItem2;
  345. TTBXItem *Hidecolumn2;
  346. TTBXSeparatorItem *N38;
  347. TTBXSubmenuItem *Showcolumns4;
  348. TTBXItem *Name4;
  349. TTBXItem *Size4;
  350. TTBXItem *Modification4;
  351. TTBXItem *Permissions1;
  352. TTBXItem *Owner2;
  353. TTBXItem *Group2;
  354. TTBXPopupMenu *SessionsPopup;
  355. TTBXPopupMenu *QueuePopup;
  356. TTBXItem *ShowQuery1;
  357. TTBXItem *ShowError1;
  358. TTBXItem *ShowPrompt1;
  359. TTBXSeparatorItem *N53;
  360. TTBXItem *ExecuteNow1;
  361. TTBXItem *Delete4;
  362. TTBXSeparatorItem *N54;
  363. TTBXItem *MoveUp1;
  364. TTBXItem *MoveDown1;
  365. TTBXItem *QueueEnableItem;
  366. TTBXSeparatorItem *N67;
  367. TTBXSubmenuItem *Queue2;
  368. TTBXItem *Show4;
  369. TTBXItem *HidewhenEmpty4;
  370. TTBXItem *Hide3;
  371. TTBXSeparatorItem *N66;
  372. TTBXItem *Toolbar3;
  373. TTBXSeparatorItem *N65;
  374. TTBXItem *Customize3;
  375. TTBXPopupMenu *ExplorerBarPopup;
  376. TTBXItem *Address2;
  377. TTBXItem *StandardButtons1;
  378. TTBXItem *SelectionButtons1;
  379. TTBXItem *SessionButtons2;
  380. TTBXItem *PreferencesButtons1;
  381. TTBXItem *SortButtons3;
  382. TTBXSeparatorItem *N5;
  383. TTBXItem *StatusBar2;
  384. TTBXSeparatorItem *N72;
  385. TTBXSubmenuItem *Queue7;
  386. TTBXItem *Show6;
  387. TTBXItem *HidewhenEmpty6;
  388. TTBXItem *Hide5;
  389. TTBXSeparatorItem *N71;
  390. TTBXItem *Toolbar5;
  391. TTBXSeparatorItem *N70;
  392. TTBXItem *Customize5;
  393. TTBXItem *Tree4;
  394. TTBXItem *RemoteSortByExtColumnPopupItem;
  395. TTBXItem *TBXItem67;
  396. TTBXItem *LocalSortByExtColumnPopupItem;
  397. TAction *FileListFromClipboardAction;
  398. TAction *ShowHideRemoteLinkTargetColumnAction;
  399. TTBXItem *TBXItem1;
  400. TAction *DownloadPageAction;
  401. TAction *CommanderUpdatesBandAction;
  402. TTBXItem *TBXItem2;
  403. TAction *UpdatesPreferencesAction;
  404. TAction *ExplorerUpdatesBandAction;
  405. TTBXItem *TBXItem3;
  406. TAction *ExplorerTransferBandAction;
  407. TAction *CommanderTransferBandAction;
  408. TTBXItem *TBXItem4;
  409. TTBXItem *TBXItem5;
  410. TAction *PresetsPreferencesAction;
  411. TAction *BestFitColumnAction;
  412. TAction *CustomCommandsEnterAction;
  413. TAction *LockToolbarsAction;
  414. TTBXItem *TBXItem6;
  415. TTBXItem *TBXItem7;
  416. TAction *ShowHideRemoteTypeColumnAction;
  417. TTBXItem *TBXItem8;
  418. TAction *RemoteSortByTypeAction;
  419. TAction *QueueItemPauseAction;
  420. TTBXItem *TBXItem9;
  421. TAction *QueueItemResumeAction;
  422. TTBXItem *TBXItem10;
  423. TAction *QueuePauseAllAction;
  424. TAction *QueueResumeAllAction;
  425. TAction *QueueDeleteAllDoneAction;
  426. TAction *QueueEnableAction;
  427. TTBXSubmenuItem *TBXSubmenuItem1;
  428. TTBXItem *TBXItem11;
  429. TTBXItem *TBXItem12;
  430. TAction *EditorListCustomizeAction;
  431. TAction *RestoreSelectionAction;
  432. TAction *CurrentEditFocusedAction;
  433. TAction *NewLinkAction;
  434. TAction *NewDirAction;
  435. TTBXSubmenuItem *TBXSubmenuItem26;
  436. TTBXItem *TBXItem135;
  437. TTBXItem *TBXItem136;
  438. TTBXItem *TBXItem209;
  439. TAction *QueueDisconnectOnceEmptyAction2;
  440. TTBXItem *TBXItem13;
  441. TAction *LocalCopyAction;
  442. TAction *RemoteCopyAction;
  443. TAction *ExplorerCustomCommandsBandAction;
  444. TAction *CommanderCustomCommandsBandAction;
  445. TTBXItem *TBXItem15;
  446. TTBXItem *TBXItem16;
  447. TAction *CustomCommandsBandAction;
  448. TAction *ColorMenuAction;
  449. TAction *AutoReadDirectoryAfterOpAction;
  450. TTBXPopupMenu *RemoteAddressPopup;
  451. TTBXSubmenuItem *TBXSubmenuItem2;
  452. TTBXItem *TBXItem17;
  453. TTBXSeparatorItem *TBXSeparatorItem1;
  454. TTBXItem *TBXItem18;
  455. TTBXItem *TBXItem19;
  456. TTBXItem *TBXItem20;
  457. TTBXSeparatorItem *TBXSeparatorItem2;
  458. TTBXItem *TBXItem21;
  459. TTBXItem *TBXItem22;
  460. TTBXItem *TBXItem24;
  461. TTBXItem *TBXItem25;
  462. TAction *DuplicateSessionAction;
  463. TAction *CustomCommandsLastAction;
  464. TAction *CustomCommandsLastFocusedAction;
  465. TAction *CustomCommandsEnterFocusedAction;
  466. TAction *CurrentAddEditLinkContextAction;
  467. TTBXItem *TBXItem23;
  468. TTBEditAction *QueueItemSpeedAction;
  469. TTBXComboBoxItem *QueuePopupSpeedComboBoxItem;
  470. TAction *CurrentDeleteAlternativeAction;
  471. TAction *CurrentEditWithAction;
  472. TAction *LocalFilterAction;
  473. TAction *RemoteFilterAction;
  474. TTBXItem *TBXItem26;
  475. TTBXItem *TBXItem27;
  476. TAction *QueueShutDownOnceEmptyAction2;
  477. TAction *QueueIdleOnceEmptyAction;
  478. TTBXSubmenuItem *TBXSubmenuItem3;
  479. TTBXItem *TBXItem28;
  480. TTBXItem *TBXItem29;
  481. TAction *QueueCycleOnceEmptyAction;
  482. TAction *RemoteFindFilesAction;
  483. TTBXItem *TBXItem30;
  484. TTBXItem *TBXItem31;
  485. TTBXItem *TBXItem32;
  486. TTBXItem *TBXItem33;
  487. TTBXItem *TBXItem34;
  488. TTBXItem *TBXItem35;
  489. TTBXItem *TBXItem36;
  490. TTBXItem *TBXItem37;
  491. TTBXItem *TBXItem38;
  492. TShellResources *ShellResources;
  493. TTBXColorItem *ColorMenuItem;
  494. TAction *CurrentEditInternalAction;
  495. TAction *SaveWorkspaceAction;
  496. TAction *LocalRenameAction;
  497. TAction *LocalEditAction;
  498. TAction *LocalMoveAction;
  499. TAction *LocalCreateDirAction2;
  500. TAction *LocalDeleteAction;
  501. TAction *LocalPropertiesAction;
  502. TAction *RemoteRenameAction;
  503. TAction *RemoteEditAction;
  504. TAction *RemoteMoveAction;
  505. TAction *RemoteCreateDirAction2;
  506. TAction *RemoteDeleteAction;
  507. TAction *RemotePropertiesAction;
  508. TAction *LocalAddEditLinkAction2;
  509. TAction *RemoteAddEditLinkAction2;
  510. TAction *CommanderLocalFileBandAction;
  511. TAction *CommanderRemoteFileBandAction;
  512. TTBXItem *TBXItem14;
  513. TTBXItem *TBXItem39;
  514. TTBXItem *TBXItem40;
  515. TTBXItem *TBXItem41;
  516. TAction *RemoteCopyFocusedAction;
  517. TAction *RemoteMoveFocusedAction;
  518. TAction *LocalSelectAction;
  519. TAction *LocalUnselectAction;
  520. TAction *LocalSelectAllAction;
  521. TAction *RemoteSelectAction;
  522. TAction *RemoteUnselectAction;
  523. TAction *RemoteSelectAllAction;
  524. TAction *CommanderLocalSelectionBandAction;
  525. TAction *CommanderRemoteSelectionBandAction;
  526. TTBXItem *TBXItem42;
  527. TTBXItem *TBXItem43;
  528. TTBXItem *TBXItem44;
  529. TTBXItem *TBXItem45;
  530. TAction *SelectiveToolbarTextAction;
  531. TTBXItem *TBXItem46;
  532. TTBXItem *TBXItem47;
  533. TTBXItem *TBXItem48;
  534. TTBXItem *TBXItem49;
  535. TTBXPopupMenu *LocalFilePopup;
  536. TTBXItem *LocalOpenMenuItem;
  537. TTBXSubmenuItem *LocalEditMenuItem;
  538. TTBXSubmenuItem *LocalCopyMenuItem;
  539. TTBXItem *TBXItem54;
  540. TTBXItem *TBXItem57;
  541. TTBXItem *TBXItem58;
  542. TTBXSeparatorItem *TBXSeparatorItem3;
  543. TTBXSubmenuItem *LocalFilePopupCustomCommandsMenu;
  544. TTBXSubmenuItem *TBXSubmenuItem5;
  545. TTBXItem *TBXItem59;
  546. TTBXItem *TBXItem60;
  547. TTBXItem *TBXItem61;
  548. TTBXItem *TBXItem62;
  549. TTBXSeparatorItem *TBXSeparatorItem4;
  550. TTBXItem *TBXItem63;
  551. TAction *LocalCopyFocusedAction;
  552. TAction *LocalMoveFocusedAction;
  553. TTBXItem *TBXItem50;
  554. TAction *CurrentSystemMenuFocusedAction;
  555. TTBXItem *TBXItem51;
  556. TTBXSeparatorItem *TBXSeparatorItem5;
  557. TTBXSeparatorItem *TBXSeparatorItem6;
  558. TTBXItem *TBXItem56;
  559. TAction *SessionGenerateUrlAction2;
  560. TTBXItem *TBXItem52;
  561. TAction *FormatSizeBytesKilobytesAction;
  562. TAction *FormatSizeBytesShortAction;
  563. TTBXSubmenuItem *RemoteFormatSizeBytesPopupItem;
  564. TTBXItem *TBXItem53;
  565. TTBXItem *TBXItem55;
  566. TTBXSeparatorItem *TBXSeparatorItem7;
  567. TTBXSeparatorItem *TBXSeparatorItem8;
  568. TTBXSubmenuItem *LocalFormatSizeBytesPopupItem;
  569. TTBXItem *TBXItem64;
  570. TTBXItem *TBXItem65;
  571. TTBXItem *TBXItem66;
  572. TAction *QueueSuspendOnceEmptyAction2;
  573. TTBXItem *TBXItem68;
  574. TAction *CurrentEditWithFocusedAction;
  575. TAction *CurrentEditInternalFocusedAction;
  576. TTBXSubmenuItem *TBXSubmenuItem7;
  577. TTBXItem *TBXItem70;
  578. TTBXItem *TBXItem71;
  579. TAction *QueueDeleteAllAction;
  580. TTBXItem *TBXItem142;
  581. TTBXItem *TBXItem72;
  582. TTBXItem *TBXItem73;
  583. TAction *LocalCopyFocusedQueueAction;
  584. TAction *LocalCopyQueueAction;
  585. TAction *RemoteCopyFocusedQueueAction;
  586. TAction *RemoteCopyQueueAction;
  587. TAction *LocalCopyFocusedNonQueueAction;
  588. TAction *LocalCopyNonQueueAction;
  589. TAction *RemoteCopyFocusedNonQueueAction;
  590. TAction *RemoteCopyNonQueueAction;
  591. TTBXItem *TBXItem69;
  592. TTBXSeparatorItem *TBXSeparatorItem9;
  593. TTBXItem *TBXItem74;
  594. TTBXSeparatorItem *TBXSeparatorItem10;
  595. TAction *SelectSameExtAction;
  596. TAction *UnselectSameExtAction;
  597. TAction *GoToAddressAction;
  598. TAction *LockAction;
  599. TAction *UnlockAction;
  600. TAction *TipsAction;
  601. TAction *CustomCommandsNonFileAction;
  602. TTBXSubmenuItem *RemoteDirViewPopupCustomCommandsMenu;
  603. TTBXItem *TBXItem75;
  604. TTBXItem *TBXItem76;
  605. TAction *ChangePasswordAction;
  606. TAction *RemoteNewFileAction;
  607. TAction *LocalNewFileAction;
  608. TTBXSubmenuItem *TBXItem77;
  609. TAction *CustomizeToolbarAction;
  610. TTBXSubmenuItem *TBXSubmenuItem4;
  611. TTBXSubmenuItem *TBXSubmenuItem6;
  612. TTBXSubmenuItem *TBXSubmenuItem9;
  613. TAction *PrivateKeyUploadAction;
  614. TAction *RenameSessionAction;
  615. TTBXItem *TBXItem78;
  616. TAction *CurrentCopyToClipboardAction;
  617. TAction *FileColorsPreferencesAction;
  618. TAction *DisconnectSessionAction;
  619. TTBXItem *TBXItem79;
  620. TAction *ReconnectSessionAction;
  621. TTBXItem *TBXItem80;
  622. TAction *CurrentCopyToClipboardFocusedAction;
  623. TTBXSeparatorItem *TBXSeparatorItem11;
  624. TTBXItem *TBXItem81;
  625. TTBXSeparatorItem *TBXSeparatorItem12;
  626. TTBXItem *TBXItem82;
  627. TAction *QueueFileListAction;
  628. TTBXItem *TBXItem83;
  629. TTBXItem *TBXItem84;
  630. TTBXItem *TBXItem85;
  631. TTBXSubmenuItem *TBXSubmenuItem8;
  632. TTBXItem *TBXItem86;
  633. TTBXSeparatorItem *TBXSeparatorItem13;
  634. TTBXItem *TBXItem87;
  635. TTBXItem *TBXItem88;
  636. TTBXItem *TBXItem89;
  637. TTBXSeparatorItem *TBXSeparatorItem14;
  638. TTBXItem *TBXItem90;
  639. TTBXItem *TBXItem91;
  640. TTBXSubmenuItem *TBXSubmenuItem10;
  641. TTBXItem *TBXItem92;
  642. TTBXItem *TBXItem93;
  643. TTBXSeparatorItem *TBXSeparatorItem15;
  644. TTBXItem *TBXItem94;
  645. TTBXItem *TBXItem95;
  646. TTBXItem *TBXItem96;
  647. TTBXSeparatorItem *TBXSeparatorItem16;
  648. TTBXItem *TBXItem97;
  649. TTBXItem *TBXItem98;
  650. void __fastcall ExplorerActionsUpdate(TBasicAction *Action, bool &Handled);
  651. void __fastcall ExplorerActionsExecute(TBasicAction *Action, bool &Handled);
  652. void __fastcall SessionIdleTimerTimer(TObject *Sender);
  653. void __fastcall QueuePopupPopup(TObject *Sender);
  654. void __fastcall QueuePopupSpeedComboBoxItemItemClick(TObject *Sender);
  655. void __fastcall QueueSpeedComboBoxItemAcceptText(TObject *Sender,
  656. UnicodeString &NewText, bool &Accept);
  657. void __fastcall FocusedEditMenuItemPopup(TTBCustomItem *Sender, bool FromLink);
  658. void __fastcall EditMenuItemPopup(TTBCustomItem *Sender, bool FromLink);
  659. void __fastcall QueuePopupSpeedComboBoxItemAdjustImageIndex(TTBXComboBoxItem *Sender,
  660. const UnicodeString AText, int AIndex, int &ImageIndex);
  661. UnicodeString __fastcall CustomCommandCaption(const TCustomCommandType * Command, bool Toolbar);
  662. UnicodeString __fastcall CustomCommandHint(const TCustomCommandType * Command);
  663. private:
  664. TListColumn * FListColumn;
  665. TCustomScpExplorerForm * FScpExplorer;
  666. bool FSessionIdleTimerExecuting;
  667. int FBusy;
  668. TTBCustomToolbar * FCustomizedToolbar;
  669. void __fastcall SetScpExplorer(TCustomScpExplorerForm * value);
  670. bool __fastcall GetBusy();
  671. protected:
  672. void __fastcall CreateSessionListMenu(TAction * Action);
  673. void __fastcall CreateSessionListMenuLevel(TTBCustomItem * Menu, int Index, int Level);
  674. void __fastcall CreateToolbarButtonsList();
  675. bool __fastcall IsToolbarCustomizable();
  676. UnicodeString __fastcall GetSessionFolderRoot(TSessionData * Data, int Level);
  677. void __fastcall CreateWorkspacesMenu(TAction * Action);
  678. void __fastcall WorkspaceItemClick(TObject * Sender);
  679. int __fastcall CreateCustomCommandsListMenu(TCustomCommandList * List, TTBCustomItem * Menu, bool OnFocused,
  680. bool Toolbar, TCustomCommandListType ListType, int Tag, TStrings * HiddenCommands);
  681. void __fastcall CreateCustomCommandsMenu(TAction * Action, TCustomCommandListType ListType);
  682. bool __fastcall CheckCustomCommandsToolbarList(TTBXToolbar * Toolbar, TCustomCommandList * List, int & Index);
  683. void __fastcall UpdateCustomCommandsToolbarList(TTBXToolbar * Toolbar, TCustomCommandList * List, int & Index);
  684. void __fastcall CreateSessionColorMenu(TAction * Action);
  685. void __fastcall SessionColorChange(TColor Color);
  686. void __fastcall CreateOpenedSessionListMenu(TAction * Action);
  687. TCustomDirView * __fastcall DirView(TOperationSide Side) { return ScpExplorer->DirView(Side); }
  688. bool __fastcall DirViewEnabled(TOperationSide Side) { return ScpExplorer->DirViewEnabled(Side); }
  689. void __fastcall SessionItemClick(TObject * Sender);
  690. void __fastcall SessionFolderItemClick(TObject * Sender);
  691. void __fastcall SessionFolderThisItemClick(TObject * Sender);
  692. void __fastcall OpenedSessionItemClick(TObject * Sender);
  693. void __fastcall CustomCommandClick(TObject * Sender);
  694. void __fastcall CreateEditorListMenu(TTBCustomItem * Menu, bool OnFocused);
  695. void __fastcall EditorItemClick(TObject * Sender);
  696. void __fastcall EditorItemClickFocused(TObject * Sender);
  697. void __fastcall DoEditorItemClick(TObject * Sender, bool OnFocused);
  698. void __fastcall DoIdle();
  699. inline void __fastcall ShowUpdatesUpdate();
  700. void __fastcall PreferencesDialog(TPreferencesMode APreferencesMode);
  701. void __fastcall CustomCommandsLastUpdate(TAction * Action);
  702. UnicodeString __fastcall QueueItemSpeed(const UnicodeString & Text,
  703. TTBXComboBoxItem * Item);
  704. void __fastcall CycleQueueOnceEmptyAction();
  705. void __fastcall SetQueueOnceEmptyAction(TAction * Action);
  706. TAction * __fastcall CurrentQueueOnceEmptyAction();
  707. void __fastcall CloneShortcuts();
  708. void __fastcall ToolbarButtonItemClick(TObject * Sender);
  709. public:
  710. __fastcall TNonVisualDataModule(TComponent * Owner);
  711. virtual __fastcall ~TNonVisualDataModule();
  712. void __fastcall CommanderShortcuts();
  713. void __fastcall ExplorerShortcuts();
  714. TShortCut __fastcall OpenSessionShortCut(int Index);
  715. void __fastcall UpdateNonVisibleActions();
  716. void __fastcall UpdateCustomCommandsToolbar(TTBXToolbar * Toolbar);
  717. void __fastcall QueueSpeedComboBoxItem(TTBXComboBoxItem * Item);
  718. void __fastcall QueueSpeedComboBoxItemUpdate(TTBXComboBoxItem * Item);
  719. void __fastcall CreateCustomCommandsMenu(TTBCustomItem * Menu, bool OnFocused,
  720. bool Toolbar, TCustomCommandListType ListType, TStrings * HiddenCommands);
  721. void __fastcall CreateCustomCommandsMenu(TAction * Action, bool OnFocused, TCustomCommandListType ListType);
  722. TOnceDoneOperation __fastcall CurrentQueueOnceEmptyOperation();
  723. void __fastcall ResetQueueOnceEmptyOperation();
  724. void __fastcall StartBusy();
  725. void __fastcall EndBusy();
  726. void __fastcall ControlContextPopup(TObject * Sender, const TPoint & MousePos);
  727. bool __fastcall IsCustomizableToolbarItem(TTBCustomItem * Item);
  728. __property TListColumn * ListColumn = { read = FListColumn, write = FListColumn };
  729. __property TCustomScpExplorerForm * ScpExplorer = { read = FScpExplorer, write = SetScpExplorer };
  730. __property bool Busy = { read = GetBusy };
  731. };
  732. //---------------------------------------------------------------------------
  733. extern PACKAGE TNonVisualDataModule *NonVisualDataModule;
  734. //---------------------------------------------------------------------------
  735. #endif