123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- //----------------------------------------------------------------------------
- #ifndef LocationProfilesH
- #define LocationProfilesH
- //----------------------------------------------------------------------------
- #include "HistoryComboBox.hpp"
- #include <System.Classes.hpp>
- #include <Vcl.ComCtrls.hpp>
- #include <Vcl.Controls.hpp>
- #include <Vcl.ImgList.hpp>
- #include <Vcl.StdCtrls.hpp>
- #include <ComCtrls.hpp>
- #include <ImgList.hpp>
- #include "PngImageList.hpp"
- #include <Vcl.ExtCtrls.hpp>
- #include <Vcl.Imaging.pngimage.hpp>
- #include <Vcl.ExtCtrls.hpp>
- #include <FileOperationProgress.h>
- #include <Terminal.h>
- #include <WinInterface.h>
- #include <Bookmarks.h>
- #include <PasTools.hpp>
- #include <GUITools.h>
- #include <System.ImageList.hpp>
- //----------------------------------------------------------------------------
- class TLocationProfilesDialog : public TForm
- {
- __published:
- TButton *OKBtn;
- TButton *CancelBtn;
- TPageControl *PageControl;
- TTreeView *SessionProfilesView;
- TButton *AddSessionBookmarkButton;
- TButton *RemoveSessionBookmarkButton;
- TButton *DownSessionBookmarkButton;
- TButton *UpSessionBookmarkButton;
- TLabel *LocalDirectoryLabel;
- THistoryComboBox *RemoteDirectoryEdit;
- TButton *RenameSessionBookmarkButton;
- TLabel *RemoteDirectoryLabel;
- TButton *SessionBookmarkMoveToButton;
- TPngImageList *BookmarkImageList;
- THistoryComboBox *LocalDirectoryEdit;
- TButton *LocalDirectoryBrowseButton;
- TButton *SwitchButton;
- TButton *HelpButton;
- TTabSheet *SessionProfilesSheet;
- TTabSheet *SharedProfilesSheet;
- TTreeView *SharedProfilesView;
- TButton *AddSharedBookmarkButton;
- TButton *RemoveSharedBookmarkButton;
- TButton *RenameSharedBookmarkButton;
- TButton *SharedBookmarkMoveToButton;
- TButton *UpSharedBookmarkButton;
- TButton *DownSharedBookmarkButton;
- TButton *ShortCutSharedBookmarkButton;
- TImage *Image;
- TPngImageList *BookmarkImageList120;
- TPngImageList *BookmarkImageList144;
- TPngImageList *BookmarkImageList192;
- void __fastcall ControlChange(TObject *Sender);
- void __fastcall AddBookmarkButtonClick(TObject *Sender);
- void __fastcall RemoveBookmarkButtonClick(TObject *Sender);
- void __fastcall BookmarkButtonClick(TObject *Sender);
- void __fastcall ProfilesViewStartDrag(TObject *Sender,
- TDragObject *&DragObject);
- void __fastcall ProfilesViewDragOver(TObject *Sender, TObject *Source,
- int X, int Y, TDragState State, bool &Accept);
- void __fastcall ProfilesViewDragDrop(TObject *Sender, TObject *Source,
- int X, int Y);
- void __fastcall ProfilesViewDblClick(TObject *Sender);
- void __fastcall FormShow(TObject *Sender);
- void __fastcall ProfilesViewKeyDown(TObject *Sender, WORD &Key,
- TShiftState Shift);
- void __fastcall DirectoryEditChange(TObject *Sender);
- void __fastcall ProfilesViewChange(TObject *Sender, TTreeNode *Node);
- void __fastcall BookmarkMoveToButtonClick(TObject *Sender);
- void __fastcall RenameBookmarkButtonClick(TObject *Sender);
- void __fastcall ProfilesViewGetImageIndex(TObject *Sender,
- TTreeNode *Node);
- void __fastcall ProfilesViewGetSelectedIndex(TObject *Sender,
- TTreeNode *Node);
- void __fastcall LocalDirectoryBrowseButtonClick(TObject *Sender);
- void __fastcall SwitchButtonClick(TObject *Sender);
- void __fastcall HelpButtonClick(TObject *Sender);
- void __fastcall ProfilesViewCollapsed(TObject *Sender, TTreeNode *Node);
- void __fastcall ProfilesViewExpanded(TObject *Sender, TTreeNode *Node);
- void __fastcall ProfilesViewEdited(TObject * Sender, TTreeNode * Node,
- UnicodeString & S);
- void __fastcall ProfilesViewEditing(TObject * Sender, TTreeNode * Node,
- bool & AllowEdit);
- void __fastcall ProfilesViewEndDrag(TObject *Sender, TObject *Target,
- int X, int Y);
- void __fastcall ShortCutBookmarkButtonClick(TObject *Sender);
- public:
- __fastcall TLocationProfilesDialog(TComponent* AOwner);
- __fastcall ~TLocationProfilesDialog();
- bool __fastcall Execute();
- __property UnicodeString LocalDirectory = { read = GetLocalDirectory, write = SetLocalDirectory };
- __property UnicodeString RemoteDirectory = { read = GetRemoteDirectory, write = SetRemoteDirectory };
- __property TTerminal * Terminal = { read = FTerminal, write = FTerminal };
- __property TOperationSide OperationSide = { read = FOperationSide, write = FOperationSide };
- __property TStrings * RemoteDirectories = { read=GetRemoteDirectories, write=SetRemoteDirectories };
- __property TStrings * LocalDirectories = { read=GetLocalDirectories, write=SetLocalDirectories };
- __property TOpenDirectoryMode Mode = { read = FMode, write = FMode };
- protected:
- void __fastcall BookmarkMove(TObject * Sender, TTreeNode * Source, TTreeNode * Dest);
- void __fastcall UpdateControls();
- bool __fastcall AddAsBookmark(TObject * Sender, bool Initial);
- virtual void __fastcall UpdateActions();
- private:
- TOpenDirectoryMode FMode;
- TTerminal * FTerminal;
- TOperationSide FOperationSide;
- TStringList * FSessionFolders;
- TStringList * FSharedFolders;
- bool FChanging;
- TTreeNode * FBookmarkDragSource;
- TBookmarkList * FSessionBookmarkList;
- TBookmarkList * FSharedBookmarkList;
- UnicodeString FLocalDirectory;
- UnicodeString FRemoteDirectory;
- TTreeViewScrollOnDragOver * FSessionScrollOnDragOver;
- TTreeViewScrollOnDragOver * FSharedScrollOnDragOver;
- UnicodeString FSessionKey;
- bool FBookmarkSelected;
- #ifdef _DEBUG
- HWND FSessionProfilesViewHandle;
- HWND FSharedProfilesViewHandle;
- #endif
- void __fastcall SetLocalDirectory(UnicodeString value);
- UnicodeString __fastcall GetLocalDirectory();
- void __fastcall SetRemoteDirectory(UnicodeString value);
- UnicodeString __fastcall GetRemoteDirectory();
- void __fastcall SetOperationSide(TOperationSide value);
- void __fastcall FindProfile();
- void __fastcall SetRemoteDirectories(TStrings * value);
- TStrings * __fastcall GetRemoteDirectories();
- void __fastcall SetLocalDirectories(TStrings * value);
- TStrings * __fastcall GetLocalDirectories();
- void __fastcall FindProfile(TTreeView * ProfilesView);
- void __fastcall UpdateProfilesControls(
- TTreeView * ProfilesView,
- TButton * AddBookmarkButton, TButton * RemoveBookmarkButton,
- TButton * RenameBookmarkButton, TButton * BookmarkMoveToButton,
- TButton * ShortCutBookmarkButton,
- TButton * UpBookmarkButton, TButton * DownBookmarkButton);
- TBookmarkList * GetBookmarkList(TObject * Sender);
- TStringList * GetFolders(TObject * Sender);
- TTreeView * GetProfilesView(TObject * Sender);
- TTreeViewScrollOnDragOver * GetScrollOnDragOver(TObject * Sender);
- void __fastcall RenameBookmark(TObject * Sender);
- void __fastcall RemoveBookmark(TObject * Sender);
- TTabSheet * GetProfilesSheet();
- void __fastcall LoadBookmarks(
- TTreeView * ProfilesView, TStringList * Folders, TBookmarkList * BookmarkList,
- TBookmarkList * Source);
- bool __fastcall ProfileMatch(TTreeNode * Node);
- UnicodeString __fastcall BookmarkText(TBookmark * Bookmark);
- INTERFACE_HOOK
- };
- //----------------------------------------------------------------------------
- #endif
|