| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 | //----------------------------------------------------------------------------#ifndef OpenDirectoryH#define OpenDirectoryH//----------------------------------------------------------------------------#include "HistoryComboBox.hpp"#include <System.Classes.hpp>#include <Vcl.ComCtrls.hpp>#include <Vcl.Controls.hpp>#include <Vcl.StdCtrls.hpp>#include <FileOperationProgress.h>#include <Terminal.h>#include <WinInterface.h>#include <Bookmarks.h>#include <PasTools.hpp>#include <ComCtrls.hpp>#include <Vcl.ExtCtrls.hpp>#include <Vcl.Imaging.pngimage.hpp>//----------------------------------------------------------------------------class TOpenDirectoryDialog : public TForm{__published:  TButton *OKBtn;  TButton *CancelBtn;  THistoryComboBox *RemoteDirectoryEdit;  THistoryComboBox *LocalDirectoryEdit;  TLabel *EditLabel;  TPageControl *PageControl;  TButton *LocalDirectoryBrowseButton;  TButton *SwitchButton;  TButton *HelpButton;  TTabSheet *SessionBookmarksSheet;  TListBox *SessionBookmarksList;  TButton *AddSessionBookmarkButton;  TButton *RemoveSessionBookmarkButton;  TButton *UpSessionBookmarkButton;  TButton *DownSessionBookmarkButton;  TListBox *SharedBookmarksList;  TButton *AddSharedBookmarkButton;  TButton *RemoveSharedBookmarkButton;  TButton *UpSharedBookmarkButton;  TButton *DownSharedBookmarkButton;  TTabSheet *SharedBookmarksSheet;  TButton *ShortCutSharedBookmarkButton;  TImage *Image;  void __fastcall ControlChange(TObject *Sender);  void __fastcall AddBookmarkButtonClick(TObject *Sender);  void __fastcall RemoveBookmarkButtonClick(TObject *Sender);  void __fastcall BookmarksListClick(TObject *Sender);  void __fastcall BookmarkButtonClick(TObject *Sender);  void __fastcall BookmarksListStartDrag(TObject *Sender,          TDragObject *&DragObject);  void __fastcall BookmarksListDragOver(TObject *Sender, TObject *Source,          int X, int Y, TDragState State, bool &Accept);  void __fastcall BookmarksListDragDrop(TObject *Sender, TObject *Source,          int X, int Y);  void __fastcall DirectoryEditChange(TObject *Sender);  void __fastcall BookmarksListDblClick(TObject *Sender);  void __fastcall FormShow(TObject *Sender);  void __fastcall BookmarksListKeyDown(TObject *Sender, WORD &Key,          TShiftState Shift);  void __fastcall LocalDirectoryBrowseButtonClick(TObject *Sender);  void __fastcall SwitchButtonClick(TObject *Sender);  void __fastcall HelpButtonClick(TObject *Sender);  void __fastcall BookmarksListEndDrag(TObject *Sender, TObject *Target,          int X, int Y);  void __fastcall ShortCutBookmarkButtonClick(TObject *Sender);  void __fastcall PageControlChange(TObject *Sender);public:  __fastcall TOpenDirectoryDialog(TComponent* AOwner);  virtual __fastcall ~TOpenDirectoryDialog();  bool __fastcall Execute();  __property UnicodeString Directory = { read = GetDirectory, write = SetDirectory };  __property TOperationSide OperationSide = { read = FOperationSide, write = SetOperationSide };  __property TStrings * Directories  = { read=GetDirectories, write=SetDirectories };  __property TOpenDirectoryMode Mode = { read = FMode, write = SetMode };  __property TTerminal * Terminal = { read = FTerminal, write = FTerminal };  __property bool AllowSwitch = { read = FAllowSwitch, write = FAllowSwitch };protected:  bool __fastcall AllowBookmarkDrag(TObject * Sender, int X, int Y);  void __fastcall BookmarkMove(TObject * Sender, int Source, int Dest);  Integer __fastcall FindBookmark(TListBox * BookmarksList, const UnicodeString Bookmark);  void __fastcall UpdateControls(bool ListBoxUpdate = false);  void __fastcall AddAsBookmark(TObject * Sender);  void __fastcall RemoveBookmark(TObject * Sender);  __property TWinControl * CurrentEdit = { read = GetCurrentEdit };private:  TOperationSide FOperationSide;  TTerminal * FTerminal;  int FBookmarkDragSource, FBookmarkDragDest;  TOpenDirectoryMode FMode;  TBookmarkList * FSessionBookmarkList;  TBookmarkList * FSharedBookmarkList;  bool FAllowSwitch;  TListBoxScrollOnDragOver * FSessionScrollOnDragOver;  TListBoxScrollOnDragOver * FSharedScrollOnDragOver;  bool FBookmarkSelected;  void __fastcall SetDirectory(UnicodeString value);  UnicodeString __fastcall GetDirectory();  TWinControl * __fastcall GetCurrentEdit();  void __fastcall SetOperationSide(TOperationSide value);  void __fastcall SetDirectories(TStrings * value);  TStrings * __fastcall GetDirectories();  void __fastcall SetMode(TOpenDirectoryMode value);  void __fastcall LoadBookmarks(TListBox * ListBox,    TBookmarkList * BookmarkList, TBookmarkList * Source);  TListBox * GetBookmarksList(TObject * Sender);  TBookmarkList * GetBookmarkList(TObject * Sender);  TListBoxScrollOnDragOver * GetScrollOnDragOver(TObject * Sender);  void __fastcall SelectBookmark(TListBox * BookmarksList);  void __fastcall UpdateBookmarkControls(    TButton * AddBookmarkButton, TButton * RemoveBookmarkButton,    TButton * ShortCutBookmarkButton,    TButton * UpBookmarkButton, TButton * DownBookmarkButton,    TListBox * BookmarksList, bool ListBoxUpdate);  void __fastcall BookmarkSelected(TObject * Sender);  UnicodeString __fastcall BookmarkDirectory(TBookmark * Bookmark);  UnicodeString __fastcall BookmarkText(TBookmark * Bookmark);  inline TBookmark * __fastcall GetBookmark(TListBox * BookmarksList, int Index);  INTERFACE_HOOK;};//----------------------------------------------------------------------------#endif
 |