Componentes.Terceros.jvcl/official/3.36/examples/JvVersionControlActions/JvVersionControlActionsMain.pas

174 lines
6.4 KiB
ObjectPascal
Raw Normal View History

unit JvVersionControlActionsMain;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, FileCtrl, JvVersionControlActions, ActnList,
JvVersionControlActionsEngine, Menus, Buttons, ImgList, JvActionsEngine;
type
TjvVersionControlActionMemoEngine = class(TjvVersionControlActionEngine)
private
protected
public
function GetFilename(aActionComponent: TComponent): string; override;
function SupportsComponent(aActionComponent: TComponent): Boolean; override;
function SupportsGetFileName(aActionComponent: TComponent): Boolean; override;
end;
TForm1 = class(TForm)
DirectoryListBox1: TDirectoryListBox;
FileListBox1: TFileListBox;
DriveComboBox1: TDriveComboBox;
Memo1: TMemo;
Label1: TLabel;
MainMenu1: TMainMenu;
VersionControl1: TMenuItem;
UpdateMenu: TMenuItem;
CommitSandboxMenu: TMenuItem;
CommitMenu: TMenuItem;
UpdateSandboxMenu: TMenuItem;
N1: TMenuItem;
t1menu: TMenuItem;
t2menu: TMenuItem;
CommitButton: TBitBtn;
ImageList1: TImageList;
JvVersionControlActionList: TJvVersionControlActionList;
JvVersionControlAddAction1: TJvVersionControlAddAction;
JvVersionControlAddSandboxAction1: TJvVersionControlAddSandboxAction;
JvVersionControlExploreAction1: TJvVersionControlExploreAction;
JvVersionControlDiffAction1: TJvVersionControlDiffAction;
JvVersionControlContextMenuAction1: TJvVersionControlContextMenuAction;
JvVersionControlCommitSandboxAction1: TJvVersionControlCommitSandboxAction;
JvVersionControlCommitAction1: TJvVersionControlCommitAction;
JvVersionControlCheckoutSandboxAction1: TJvVersionControlCheckoutSandboxAction;
JvVersionControlBranchSandboxAction1: TJvVersionControlBranchSandboxAction;
JvVersionControlBranchAction1: TJvVersionControlBranchAction;
JvVersionControlBlameAction1: TJvVersionControlBlameAction;
JvVersionControlGraphAction1: TJvVersionControlGraphAction;
JvVersionControlLogAction1: TJvVersionControlLogAction;
JvVersionControlLogSandboxAction1: TJvVersionControlLogSandboxAction;
JvVersionControlExploreSandboxAction1: TJvVersionControlExploreSandboxAction;
JvVersionControlLockAction1: TJvVersionControlLockAction;
JvVersionControlRenameAction1: TJvVersionControlRenameAction;
JvVersionControlRepoBrowserAction1: TJvVersionControlRepoBrowserAction;
JvVersionControlRevertAction1: TJvVersionControlRevertAction;
JvVersionControlStatusAction1: TJvVersionControlStatusAction;
JvVersionControlTagAction1: TJvVersionControlTagAction;
JvVersionControlUnlockAction1: TJvVersionControlUnlockAction;
JvVersionControlUpdateToAction1: TJvVersionControlUpdateToAction;
JvVersionControlUpdateAction1: TJvVersionControlUpdateAction;
JvVersionControlMergeAction1: TJvVersionControlMergeAction;
JvVersionControlPropertiesAction1: TJvVersionControlPropertiesAction;
JvVersionControlLockSandboxAction1: TJvVersionControlLockSandboxAction;
JvVersionControlMergeSandboxAction1: TJvVersionControlMergeSandboxAction;
JvVersionControlPropertiesSandboxAction1: TJvVersionControlPropertiesSandboxAction;
JvVersionControlRenameSandboxAction1: TJvVersionControlRenameSandboxAction;
JvVersionControlRevertSandboxAction1: TJvVersionControlRevertSandboxAction;
JvVersionControlStatusSandboxAction1: TJvVersionControlStatusSandboxAction;
JvVersionControlTagSandboxAction1: TJvVersionControlTagSandboxAction;
JvVersionControlUpdateSandboxAction1: TJvVersionControlUpdateSandboxAction;
JvVersionControlUnlockSandboxAction1: TJvVersionControlUnlockSandboxAction;
JvVersionControlUpdateSandboxToAction1: TJvVersionControlUpdateSandboxToAction;
Branch1: TMenuItem;
Checkout1: TMenuItem;
Commit1: TMenuItem;
Commit2: TMenuItem;
ContextMenurightclick1: TMenuItem;
Diff1: TMenuItem;
Explore1: TMenuItem;
Explore2: TMenuItem;
RevisionGraph1: TMenuItem;
Lock1: TMenuItem;
Lock2: TMenuItem;
Log1: TMenuItem;
Log2: TMenuItem;
Merge1: TMenuItem;
Merge2: TMenuItem;
Properties1: TMenuItem;
Properties2: TMenuItem;
Rename1: TMenuItem;
RenameSandbox1: TMenuItem;
RepositoryBrowser1: TMenuItem;
Revert1: TMenuItem;
Revert2: TMenuItem;
Status1: TMenuItem;
Status2: TMenuItem;
ag1: TMenuItem;
ag2: TMenuItem;
Unlock1: TMenuItem;
Unlock2: TMenuItem;
Update1: TMenuItem;
Updateto1: TMenuItem;
Updateto2: TMenuItem;
Updateto3: TMenuItem;
CommitSandboxButton: TBitBtn;
UpdateButton: TBitBtn;
UpdateSandboxButton: TBitBtn;
procedure DirectoryListBox1Change(Sender: TObject);
procedure DriveComboBox1Change(Sender: TObject);
procedure FileListBox1Change(Sender: TObject);
private
{ Private declarations }
protected
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses JclVersionControl,JclVersionCtrlSVNImpl,
JclVersionCtrlcvsImpl,
JvVersionControlActionsEngineFileListBox;
{$R *.dfm}
procedure TForm1.DirectoryListBox1Change(Sender: TObject);
begin
FileListBox1.Directory := DirectoryListBox1.Directory;
end;
procedure TForm1.DriveComboBox1Change(Sender: TObject);
begin
DirectoryListBox1.Drive := DriveComboBox1.Drive;
FileListBox1.Drive := DriveComboBox1.Drive;
FileListBox1.Directory := DirectoryListBox1.Directory;
end;
procedure TForm1.FileListBox1Change(Sender: TObject);
begin
if FileExists(FileListBox1.FileName) and (ExtractFileExt (FileListBox1.FileName) = '.pas') then
Memo1.Lines.LoadFromFile(FileListBox1.FileName)
else
Memo1.Clear;
if Assigned(JvVersionControlActionList) and Assigned(JvVersionControlActionList.Images) then
Label1.Caption := 'Count : '+Inttostr(JvVersionControlActionList.Images.Count)
else
Label1.Caption := 'Not Assigned';
end;
function TjvVersionControlActionMemoEngine.SupportsComponent(aActionComponent:
TComponent): Boolean;
begin
Result := aActionComponent is TFilelistBox;
end;
function TjvVersionControlActionMemoEngine.GetFilename(aActionComponent:
TComponent): string;
begin
Result := TFilelistBox(aActionComponent).FileName;
end;
function TjvVersionControlActionMemoEngine.SupportsGetFileName(
aActionComponent: TComponent): Boolean;
begin
Result := True;
end;
end.