ScpCommander.h 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510
  1. //---------------------------------------------------------------------------
  2. #ifndef ScpCommanderH
  3. #define ScpCommanderH
  4. //---------------------------------------------------------------------------
  5. #include "CustomScpExplorer.h"
  6. #include <Classes.hpp>
  7. #include <Controls.hpp>
  8. #include <StdCtrls.hpp>
  9. #include <Forms.hpp>
  10. #include <CustomDirView.hpp>
  11. #include <CustomUnixDirView.hpp>
  12. #include <IEListView.hpp>
  13. #include <NortonLikeListView.hpp>
  14. #include <UnixDirView.h>
  15. #include <ComCtrls.hpp>
  16. #include <ExtCtrls.hpp>
  17. #include <ToolWin.hpp>
  18. #include <DirView.hpp>
  19. #include <CustomPathComboBox.hpp>
  20. #include <IEComboBox.hpp>
  21. #include <IEPathComboBox.hpp>
  22. #include <PathLabel.hpp>
  23. #include <UnixPathComboBox.h>
  24. #include <WinInterface.h>
  25. #include "HistoryComboBox.hpp"
  26. #include "CustomDriveView.hpp"
  27. #include "DriveView.hpp"
  28. #include "UnixDriveView.h"
  29. #include "TB2Dock.hpp"
  30. #include "TB2Item.hpp"
  31. #include "TB2Toolbar.hpp"
  32. #include "TBX.hpp"
  33. #include <Menus.hpp>
  34. #include "TB2ExtItems.hpp"
  35. #include "TBXExtItems.hpp"
  36. #include "TBXLists.hpp"
  37. #include "TBXStatusBars.hpp"
  38. #include "TBXToolPals.hpp"
  39. //---------------------------------------------------------------------------
  40. class TScpCommanderForm : public TCustomScpExplorerForm
  41. {
  42. __published:
  43. TSplitter *Splitter;
  44. TPanel *LocalPanel;
  45. TTBXStatusBar *LocalStatusBar;
  46. TDirView *LocalDirView;
  47. TPathLabel *LocalPathLabel;
  48. TPathLabel *RemotePathLabel;
  49. TTBXStatusBar *StatusBar;
  50. TPanel *CommandLinePanel;
  51. THistoryComboBox *CommandLineCombo;
  52. TPathLabel *CommandLineLabel;
  53. TLabel *CommandLinePromptLabel;
  54. TDriveView *LocalDriveView;
  55. TSplitter *LocalPanelSplitter;
  56. TTBXToolbar *SessionToolbar;
  57. TTBXItem *TBXItem123;
  58. TTBXSeparatorItem *TBXSeparatorItem34;
  59. TTBXComboBoxItem *SessionCombo;
  60. TTBXItem *TBXItem124;
  61. TTBXSeparatorItem *TBXSeparatorItem35;
  62. TTBXSubmenuItem *TBXSubmenuItem23;
  63. TTBXItem *TBXItem125;
  64. TTBXToolbar *PreferencesToolbar;
  65. TTBXItem *TBXItem126;
  66. TTBXSeparatorItem *TBXSeparatorItem36;
  67. TTBXItem *TBXItem127;
  68. TTBXSubmenuItem *TBXSubmenuItem24;
  69. TTBXItem *TBXItem128;
  70. TTBXItem *TBXItem129;
  71. TTBXItem *TBXItem130;
  72. TTBXToolbar *SelectionToolbar;
  73. TTBXItem *TBXItem131;
  74. TTBXItem *TBXItem132;
  75. TTBXSeparatorItem *TBXSeparatorItem37;
  76. TTBXItem *TBXItem133;
  77. TTBXItem *TBXItem134;
  78. TTBXItem *TBXItem135;
  79. TTBXToolbar *CommandToolbar;
  80. TTBXItem *TBXItem136;
  81. TTBXItem *TBXItem137;
  82. TTBXSeparatorItem *TBXSeparatorItem38;
  83. TTBXItem *TBXItem138;
  84. TTBXItem *TBXItem139;
  85. TTBXItem *TBXItem140;
  86. TTBXItem *TBXItem141;
  87. TTBXItem *TBXItem142;
  88. TTBXSeparatorItem *TBXSeparatorItem39;
  89. TTBXItem *TBXItem143;
  90. TTBXItem *TBXItem144;
  91. TTBXToolbar *SortToolbar;
  92. TTBXItem *TBXItem145;
  93. TTBXSeparatorItem *TBXSeparatorItem40;
  94. TTBXItem *TBXItem146;
  95. TTBXItem *TBXItem147;
  96. TTBXItem *TBXItem148;
  97. TTBXItem *TBXItem149;
  98. TTBXItem *TBXItem150;
  99. TTBXItem *TBXItem151;
  100. TTBXItem *TBXItem152;
  101. TTBXItem *TBXItem153;
  102. TTBXToolbar *CommandsToolbar;
  103. TTBXItem *TBXItem154;
  104. TTBXItem *TBXItem155;
  105. TTBXItem *TBXItem156;
  106. TTBXSeparatorItem *TBXSeparatorItem41;
  107. TTBXItem *TBXItem157;
  108. TTBXSeparatorItem *TBXSeparatorItem42;
  109. TTBXItem *TBXItem158;
  110. TTBXToolbar *MenuToolbar;
  111. TTBXSubmenuItem *LocalMenuButton;
  112. TTBXItem *TBXItem1;
  113. TTBXSeparatorItem *TBXSeparatorItem1;
  114. TTBXSubmenuItem *TBXSubmenuItem2;
  115. TTBXItem *TBXItem2;
  116. TTBXItem *TBXItem3;
  117. TTBXSeparatorItem *TBXSeparatorItem2;
  118. TTBXItem *TBXItem4;
  119. TTBXItem *TBXItem5;
  120. TTBXItem *TBXItem6;
  121. TTBXSeparatorItem *TBXSeparatorItem3;
  122. TTBXItem *TBXItem7;
  123. TTBXItem *TBXItem8;
  124. TTBXItem *TBXItem9;
  125. TTBXItem *TBXItem10;
  126. TTBXItem *TBXItem11;
  127. TTBXSeparatorItem *TBXSeparatorItem4;
  128. TTBXSubmenuItem *TBXSubmenuItem3;
  129. TTBXItem *TBXItem12;
  130. TTBXSeparatorItem *TBXSeparatorItem5;
  131. TTBXItem *TBXItem13;
  132. TTBXItem *TBXItem14;
  133. TTBXItem *TBXItem15;
  134. TTBXItem *TBXItem16;
  135. TTBXItem *TBXItem17;
  136. TTBXItem *TBXItem18;
  137. TTBXSubmenuItem *TBXSubmenuItem4;
  138. TTBXItem *TBXItem19;
  139. TTBXItem *TBXItem20;
  140. TTBXItem *TBXItem21;
  141. TTBXItem *TBXItem22;
  142. TTBXItem *TBXItem23;
  143. TTBXSubmenuItem *TBXSubmenuItem18;
  144. TTBXItem *TBXItem107;
  145. TTBXItem *TBXItem108;
  146. TTBXItem *TBXItem109;
  147. TTBXItem *TBXItem110;
  148. TTBXItem *TBXItem111;
  149. TTBXItem *TBXItem112;
  150. TTBXSubmenuItem *TBXSubmenuItem5;
  151. TTBXSeparatorItem *TBXSeparatorItem6;
  152. TTBXItem *TBXItem25;
  153. TTBXItem *TBXItem26;
  154. TTBXItem *TBXItem29;
  155. TTBXSeparatorItem *TBXSeparatorItem7;
  156. TTBXItem *TBXItem30;
  157. TTBXItem *TBXItem31;
  158. TTBXItem *TBXItem32;
  159. TTBXItem *TBXItem33;
  160. TTBXItem *TBXItem34;
  161. TTBXItem *TBXItem35;
  162. TTBXItem *TBXItem36;
  163. TTBXSeparatorItem *TBXSeparatorItem8;
  164. TTBXSubmenuItem *CustomCommandsMenu;
  165. TTBXSubmenuItem *TBXSubmenuItem6;
  166. TTBXItem *TBXItem37;
  167. TTBXItem *TBXItem38;
  168. TTBXItem *TBXItem39;
  169. TTBXItem *TBXItem40;
  170. TTBXSeparatorItem *TBXSeparatorItem9;
  171. TTBXItem *TBXItem41;
  172. TTBXSubmenuItem *TBXSubmenuItem7;
  173. TTBXItem *TBXItem42;
  174. TTBXItem *TBXItem43;
  175. TTBXItem *TBXItem44;
  176. TTBXItem *TBXItem45;
  177. TTBXSubmenuItem *TBXSubmenuItem8;
  178. TTBXItem *TBXItem46;
  179. TTBXSeparatorItem *TBXSeparatorItem10;
  180. TTBXItem *TBXItem47;
  181. TTBXItem *TBXItem48;
  182. TTBXItem *TBXItem49;
  183. TTBXSeparatorItem *TBXSeparatorItem11;
  184. TTBXItem *TBXItem50;
  185. TTBXItem *TBXItem51;
  186. TTBXSeparatorItem *TBXSeparatorItem12;
  187. TTBXItem *TBXItem52;
  188. TTBXItem *TBXItem53;
  189. TTBXSeparatorItem *TBXSeparatorItem13;
  190. TTBXItem *TBXItem54;
  191. TTBXItem *TBXItem55;
  192. TTBXSeparatorItem *TBXSeparatorItem14;
  193. TTBXItem *TBXItem56;
  194. TTBXItem *TBXItem57;
  195. TTBXSeparatorItem *TBXSeparatorItem15;
  196. TTBXItem *TBXItem58;
  197. TTBXSubmenuItem *TBXSubmenuItem19;
  198. TTBXItem *TBXItem113;
  199. TTBXSubmenuItem *TBXSubmenuItem20;
  200. TTBXSeparatorItem *TBXSeparatorItem29;
  201. TTBXSubmenuItem *TBXSubmenuItem21;
  202. TTBXItem *TBXItem114;
  203. TTBXItem *TBXItem115;
  204. TTBXSubmenuItem *TBXSubmenuItem9;
  205. TTBXSubmenuItem *TBXSubmenuItem10;
  206. TTBXItem *TBXItem59;
  207. TTBXItem *TBXItem60;
  208. TTBXItem *TBXItem61;
  209. TTBXItem *TBXItem62;
  210. TTBXItem *TBXItem63;
  211. TTBXItem *TBXItem64;
  212. TTBXSubmenuItem *TBXSubmenuItem11;
  213. TTBXItem *TBXItem65;
  214. TTBXItem *TBXItem66;
  215. TTBXSeparatorItem *TBXSeparatorItem16;
  216. TTBXItem *TBXItem67;
  217. TTBXSeparatorItem *TBXSeparatorItem17;
  218. TTBXItem *TBXItem68;
  219. TTBXSubmenuItem *TBXSubmenuItem12;
  220. TTBXItem *TBXItem69;
  221. TTBXItem *TBXItem70;
  222. TTBXSeparatorItem *TBXSeparatorItem18;
  223. TTBXItem *TBXItem71;
  224. TTBXSeparatorItem *TBXSeparatorItem19;
  225. TTBXItem *TBXItem72;
  226. TTBXSeparatorItem *TBXSeparatorItem20;
  227. TTBXItem *TBXItem73;
  228. TTBXItem *TBXItem74;
  229. TTBXItem *TBXItem75;
  230. TTBXItem *TBXItem76;
  231. TTBXSubmenuItem *TBXSubmenuItem14;
  232. TTBXItem *TBXItem77;
  233. TTBXItem *TBXItem78;
  234. TTBXItem *TBXItem79;
  235. TTBXSeparatorItem *TBXSeparatorItem21;
  236. TTBXItem *TBXItem80;
  237. TTBXSeparatorItem *TBXSeparatorItem22;
  238. TTBXItem *TBXItem81;
  239. TTBXSeparatorItem *TBXSeparatorItem23;
  240. TTBXItem *TBXItem82;
  241. TTBXSubmenuItem *RemoteMenuButton;
  242. TTBXItem *TBXItem83;
  243. TTBXSeparatorItem *TBXSeparatorItem24;
  244. TTBXSubmenuItem *TBXSubmenuItem15;
  245. TTBXItem *TBXItem84;
  246. TTBXSeparatorItem *TBXSeparatorItem25;
  247. TTBXItem *TBXItem85;
  248. TTBXItem *TBXItem86;
  249. TTBXItem *TBXItem87;
  250. TTBXSeparatorItem *TBXSeparatorItem26;
  251. TTBXItem *TBXItem88;
  252. TTBXItem *TBXItem89;
  253. TTBXItem *TBXItem90;
  254. TTBXItem *TBXItem91;
  255. TTBXItem *TBXItem92;
  256. TTBXSeparatorItem *TBXSeparatorItem27;
  257. TTBXSubmenuItem *TBXSubmenuItem16;
  258. TTBXItem *TBXItem93;
  259. TTBXSeparatorItem *TBXSeparatorItem28;
  260. TTBXItem *TBXItem94;
  261. TTBXItem *TBXItem95;
  262. TTBXItem *TBXItem96;
  263. TTBXItem *TBXItem97;
  264. TTBXItem *TBXItem98;
  265. TTBXItem *TBXItem99;
  266. TTBXItem *TBXItem100;
  267. TTBXSubmenuItem *TBXSubmenuItem17;
  268. TTBXItem *TBXItem101;
  269. TTBXItem *TBXItem102;
  270. TTBXItem *TBXItem103;
  271. TTBXItem *TBXItem104;
  272. TTBXItem *TBXItem105;
  273. TTBXItem *TBXItem106;
  274. TTBXSubmenuItem *TBXSubmenuItem22;
  275. TTBXItem *TBXItem116;
  276. TTBXSeparatorItem *TBXSeparatorItem30;
  277. TTBXItem *TBXItem117;
  278. TTBXItem *TBXItem118;
  279. TTBXItem *TBXItem119;
  280. TTBXSeparatorItem *TBXSeparatorItem31;
  281. TTBXItem *TBXItem120;
  282. TTBXSeparatorItem *TBXSeparatorItem32;
  283. TTBXItem *TBXItem121;
  284. TTBXSeparatorItem *TBXSeparatorItem33;
  285. TTBXItem *TBXItem122;
  286. TTBXDock *LocalTopDock;
  287. TTBXToolbar *LocalPathToolbar;
  288. TTBControlItem *TBControlItem1;
  289. TIEPathComboBox *LocalPathComboBox;
  290. TTBXToolbar *LocalHistoryToolbar;
  291. TTBXSubmenuItem *LocalBackButton;
  292. TTBXSubmenuItem *LocalForwardButton;
  293. TTBXToolbar *LocalNavigationToolbar;
  294. TTBXItem *TBXItem159;
  295. TTBXItem *TBXItem160;
  296. TTBXItem *TBXItem161;
  297. TTBXItem *TBXItem162;
  298. TTBXSeparatorItem *TBXSeparatorItem43;
  299. TTBXItem *TBXItem163;
  300. TTBXItem *TBXItem164;
  301. TTBXDock *LocalBottomDock;
  302. TTBXDock *RemoteTopDock;
  303. TTBXToolbar *RemotePathToolbar;
  304. TTBXToolbar *RemoteHistoryToolbar;
  305. TTBXSubmenuItem *RemoteBackButton;
  306. TTBXSubmenuItem *RemoteForwardButton;
  307. TTBXToolbar *RemoteNavigationToolbar;
  308. TTBXItem *TBXItem165;
  309. TTBXItem *TBXItem166;
  310. TTBXItem *TBXItem167;
  311. TTBXItem *TBXItem168;
  312. TTBXSeparatorItem *TBXSeparatorItem44;
  313. TTBXItem *TBXItem169;
  314. TTBXItem *TBXItem170;
  315. TTBControlItem *TBControlItem2;
  316. TUnixPathComboBox *RemotePathComboBox;
  317. TTBXDock *RemoteBottomDock;
  318. TTBXDock *BottomDock;
  319. TTBXToolbar *ToolbarToolbar;
  320. TTBXItem *TBXItem171;
  321. TTBXItem *TBXItem172;
  322. TTBXItem *TBXItem173;
  323. TTBXItem *TBXItem174;
  324. TTBXItem *TBXItem175;
  325. TTBXItem *TBXItem176;
  326. TTBXItem *TBXItem177;
  327. TTBXItem *TBXItem178;
  328. TTBXItem *TBXItem179;
  329. TTBXToolbar *UpdatesToolbar;
  330. TTBXSubmenuItem *TBXSubmenuItem1;
  331. TTBXItem *TBXItem180;
  332. TTBXItem *TBXItem181;
  333. TTBXItem *TBXItem182;
  334. TTBXSeparatorItem *TBXSeparatorItem45;
  335. TTBXItem *TBXItem183;
  336. TTBXItem *TBXItem184;
  337. TTBXSeparatorItem *TBXSeparatorItem46;
  338. TTBXItem *TBXItem185;
  339. TTBXItem *TBXItem186;
  340. TTBXItem *TBXItem187;
  341. TTBXToolbar *TransferToolbar;
  342. TTBXItem *TBXItem188;
  343. TTBXItem *TBXItem190;
  344. TTBXSeparatorItem *TBXSeparatorItem47;
  345. TTBXItem *TBXItem191;
  346. TTBXItem *TBXItem192;
  347. TTBXItem *TBXItem193;
  348. TTBXItem *TBXItem196;
  349. TTBXItem *TBXItem197;
  350. TTBXSeparatorItem *TBXSeparatorItem48;
  351. TTBXSubmenuItem *TBXSubmenuItem13;
  352. TTBXItem *TBXItem198;
  353. TTBXItem *TBXItem199;
  354. TTBXSubmenuItem *TBXSubmenuItem25;
  355. TTBXItem *TBXItem27;
  356. TTBXItem *TBXItem200;
  357. TTBXSubmenuItem *TBXSubmenuItem26;
  358. TTBXItem *TBXItem24;
  359. TTBXItem *TBXItem209;
  360. TTBXItem *TBXItem28;
  361. TTBXItem *TBXItem211;
  362. TTBXToolbar *UploadDownloadToolbar;
  363. TTBXItem *TBXItem212;
  364. TTBXItem *TBXItem213;
  365. TTBXItem *TBXItem214;
  366. TTBXToolbar *CustomCommandsToolbar;
  367. TTBXItem *TBXItem215;
  368. TTBXSeparatorItem *TBXSeparatorItem49;
  369. TTBXColorItem *ColorMenuItem;
  370. TTBXSeparatorItem *TBXSeparatorItem50;
  371. TTBXSeparatorItem *TBXSeparatorItem51;
  372. TTBXColorPalette *SessionColorPalette;
  373. TTBXDropDownItem *TransferDropDown;
  374. TTBXStringList *TransferList;
  375. TTBXLabelItem *TransferLabel;
  376. TTBXSeparatorItem *TBXSeparatorItem52;
  377. TTBXItem *TBXItem189;
  378. TTBXItem *TBXItem218;
  379. TTBXItem *TBXItem219;
  380. void __fastcall SplitterMoved(TObject *Sender);
  381. void __fastcall SplitterCanResize(TObject *Sender, int &NewSize,
  382. bool &Accept);
  383. void __fastcall SplitterDblClick(TObject *Sender);
  384. void __fastcall PanelSplitterDblClick(TObject * Sender);
  385. void __fastcall PathComboBoxCloseUp(TObject *Sender,
  386. bool Canceled);
  387. void __fastcall LocalDirViewExecFile(TObject *Sender, TListItem *Item,
  388. bool &AllowExec);
  389. void __fastcall LocalFileControlDDDragEnter(TObject *Sender,
  390. IDataObject *DataObj, int grfKeyState, TPoint &Point,
  391. int &dwEffect, bool &Accept);
  392. void __fastcall LocalFileControlDDDragOver(TObject *Sender, int grfKeyState,
  393. TPoint &Point, int &dwEffect);
  394. void __fastcall LocalFileControlDDFileOperation(TObject *Sender,
  395. int dwEffect, AnsiString SourcePath, AnsiString TargetPath,
  396. bool &DoOperation);
  397. void __fastcall RemoteFileControlDDFileOperationExecuted(TObject *Sender,
  398. int dwEffect, AnsiString SourcePath, AnsiString TargetPath);
  399. void __fastcall CommandLineComboKeyDown(TObject *Sender, WORD &Key,
  400. TShiftState Shift);
  401. void __fastcall CommandLineComboDropDown(TObject *Sender);
  402. void __fastcall CommandLineComboEnter(TObject *Sender);
  403. void __fastcall CommandLineComboExit(TObject *Sender);
  404. void __fastcall LocalDirViewDDTargetHasDropHandler(TObject *Sender,
  405. TListItem *Item, int &Effect, bool &DropHandler);
  406. void __fastcall LocalFileControlDDMenuPopup(TObject *Sender, HMENU AMenu,
  407. IDataObject *DataObj, int AMinCustCmd, int grfKeyState, TPoint &pt);
  408. void __fastcall PathLabelDblClick(TObject *Sender);
  409. void __fastcall LocalDirViewEnter(TObject *Sender);
  410. void __fastcall LocalPathLabelGetStatus(TCustomPathLabel *Sender,
  411. bool &Active);
  412. void __fastcall RemotePathLabelGetStatus(TCustomPathLabel *Sender,
  413. bool &Active);
  414. void __fastcall LocalDriveViewEnter(TObject *Sender);
  415. void __fastcall LocalPathLabelPathClick(TCustomPathLabel *Sender,
  416. AnsiString Path);
  417. void __fastcall RemotePathLabelPathClick(TCustomPathLabel *Sender,
  418. AnsiString Path);
  419. void __fastcall LocalDirViewFileIconForName(TObject *Sender,
  420. TListItem *Item, AnsiString &FileName);
  421. void __fastcall LocalDirViewUpdateStatusBar(TObject *Sender,
  422. const TStatusFileInfo &FileInfo);
  423. void __fastcall RemoteDirViewUpdateStatusBar(TObject *Sender,
  424. const TStatusFileInfo &FileInfo);
  425. void __fastcall LocalStatusBarClick(TObject *Sender);
  426. private:
  427. TCustomDirView * FDirViewToSelect;
  428. float FLastLeftPanelWidth;
  429. float FLeftPanelWidth;
  430. int FNormalPanelsWidth;
  431. int FLastWidth;
  432. bool FSynchronisingBrowse;
  433. TStrings * FInternalDDDownloadList;
  434. AnsiString FPrevPath[2];
  435. bool FFirstTerminal;
  436. AnsiString FDDExtTarget;
  437. bool FCommandLineComboPopulated;
  438. void __fastcall SetLeftPanelWidth(float value);
  439. float __fastcall GetLeftPanelWidth();
  440. inline TPanel * __fastcall Panel(bool Left);
  441. protected:
  442. virtual bool __fastcall CopyParamDialog(TTransferDirection Direction,
  443. TTransferType Type, bool Temp, TStrings * FileList,
  444. AnsiString & TargetDirectory, TGUICopyParamType & CopyParam, bool Confirm,
  445. bool DragDrop);
  446. virtual TCustomDirView * __fastcall DirView(TOperationSide Side);
  447. TControl * __fastcall GetComponent(Byte Component);
  448. virtual void __fastcall RestoreFormParams();
  449. virtual void __fastcall RestoreParams();
  450. virtual void __fastcall FixControlsPlacement();
  451. virtual void __fastcall TerminalChanged();
  452. virtual void __fastcall ConfigurationChanged();
  453. virtual bool __fastcall GetHasDirView(TOperationSide Side);
  454. virtual void __fastcall UpdateControls();
  455. virtual void __fastcall FileOperationProgress(
  456. TFileOperationProgressType & ProgressData, TCancelStatus & Cancel);
  457. virtual void __fastcall DoOpenDirectoryDialog(TOpenDirectoryMode Mode,
  458. TOperationSide Side);
  459. bool __fastcall InternalDDDownload(AnsiString & TargetDirectory);
  460. virtual void __fastcall DDGetTarget(AnsiString & Directory);
  461. virtual void __fastcall DDExtInitDrag(TFileList * FileList, bool & Created);
  462. virtual void __fastcall SideEnter(TOperationSide Side);
  463. void __fastcall SaveCommandLine();
  464. void __fastcall ExecuteCommandLine();
  465. virtual void __fastcall PanelExportStore(TOperationSide Side,
  466. TPanelExport Export, TPanelExportDestination Destination,
  467. TStringList * ExportData);
  468. void __fastcall CommandLinePopulate();
  469. virtual int __fastcall GetStaticComponentsHeight();
  470. DYNAMIC void __fastcall Resize();
  471. DYNAMIC void __fastcall DoShow();
  472. virtual void __fastcall SysResizing(unsigned int Cmd);
  473. virtual void __fastcall BatchStart(void *& Storage);
  474. virtual void __fastcall BatchEnd(void * Storage);
  475. virtual bool __fastcall IsFileControl(TObject * Control, TOperationSide Side);
  476. virtual void __fastcall ReloadLocalDirectory(const AnsiString Directory = "");
  477. virtual bool __fastcall PanelOperation(TOperationSide Side, bool DragDrop);
  478. virtual void __fastcall DoDirViewLoaded(TCustomDirView * Sender);
  479. virtual void __fastcall GetTransferPresetAutoSelectData(TCopyParamRuleData & Data);
  480. virtual void __fastcall UpdateSessionData(TSessionData * Data);
  481. public:
  482. __fastcall TScpCommanderForm(TComponent* Owner);
  483. virtual __fastcall ~TScpCommanderForm();
  484. virtual void __fastcall AddEditLink(bool Add);
  485. virtual bool __fastcall AllowedAction(TAction * Action, TActionAllowed Allowed);
  486. virtual void __fastcall ChangePath(TOperationSide Side);
  487. virtual void __fastcall CompareDirectories();
  488. virtual void __fastcall UpdateTerminal(TTerminal * Terminal);
  489. virtual void __fastcall SynchronizeDirectories();
  490. virtual void __fastcall FullSynchronizeDirectories();
  491. virtual void __fastcall StoreParams();
  492. virtual void __fastcall ExploreLocalDirectory();
  493. virtual void __fastcall GoToCommandLine();
  494. virtual void __fastcall GoToTree();
  495. virtual void __fastcall OpenConsole(AnsiString Command = "");
  496. virtual AnsiString __fastcall PathForCaption();
  497. virtual void __fastcall BeforeAction();
  498. __property float LeftPanelWidth = { read = GetLeftPanelWidth, write = SetLeftPanelWidth };
  499. };
  500. //---------------------------------------------------------------------------
  501. #endif