1
0
mirror of https://github.com/winscp/winscp.git synced 2026-10-24 02:28:55 +03:00
Files
winscp/source/forms/LocationProfiles.h
Martin Prikryl 71754fc61f Renaming pas to cpp and adding generated hpp as h to guide git in recognizing future translation to C++
(not compilable)

Source commit: a9468bbb15a8c5f9d4381cdc0299c378a2fbe90a
2025-11-06 07:34:54 +01:00

171 lines
7.1 KiB
C++

//----------------------------------------------------------------------------
#ifndef LocationProfilesH
#define LocationProfilesH
//----------------------------------------------------------------------------
#include "HistoryComboBox.h"
#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