Skip to content

Commit 9daae9b

Browse files
committed
adjusted structure project
1 parent 8d5754d commit 9daae9b

10 files changed

+729
-38
lines changed

DelphiDocker.Images.pas

Lines changed: 0 additions & 26 deletions
This file was deleted.

DelphiDocker.dpk

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package DelphiDocker;
2+
3+
{$R *.res}
4+
{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
5+
{$ALIGN 8}
6+
{$ASSERTIONS ON}
7+
{$BOOLEVAL OFF}
8+
{$DEBUGINFO OFF}
9+
{$EXTENDEDSYNTAX ON}
10+
{$IMPORTEDDATA ON}
11+
{$IOCHECKS ON}
12+
{$LOCALSYMBOLS ON}
13+
{$LONGSTRINGS ON}
14+
{$OPENSTRINGS ON}
15+
{$OPTIMIZATION OFF}
16+
{$OVERFLOWCHECKS OFF}
17+
{$RANGECHECKS OFF}
18+
{$REFERENCEINFO ON}
19+
{$SAFEDIVIDE OFF}
20+
{$STACKFRAMES ON}
21+
{$TYPEDADDRESS OFF}
22+
{$VARSTRINGCHECKS ON}
23+
{$WRITEABLECONST OFF}
24+
{$MINENUMSIZE 1}
25+
{$IMAGEBASE $400000}
26+
{$DEFINE DEBUG}
27+
{$ENDIF IMPLICITBUILDING}
28+
{$DESIGNONLY}
29+
{$IMPLICITBUILD ON}
30+
31+
requires
32+
rtl,
33+
designide;
34+
35+
contains
36+
OpenToolApi.LocalMenuItem in 'Src\OpenToolApi\OpenToolApi.LocalMenuItem.pas',
37+
OpenToolApi.Register in 'Src\OpenToolApi\OpenToolApi.Register.pas',
38+
OpenToolApi.ToolBarItem in 'Src\OpenToolApi\OpenToolApi.ToolBarItem.pas',
39+
OpenToolApi.Images in 'Src\OpenToolApi\OpenToolApi.Images.pas' {DataModuleImages: TDataModule};
40+
41+
end.

DelphiDocker.dproj

Lines changed: 568 additions & 0 deletions
Large diffs are not rendered by default.
Binary file not shown.
Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,16 +21,7 @@ procedure AddLocalMenuDocker;
2121
end;
2222

2323
procedure AddToolBarDocker;
24-
var
25-
LToolButton: TToolButton;
26-
LToolBarItem: TToolBar;
27-
begin
28-
DataModuleImages := TDataModuleImages.Create(nil);
29-
LToolBarItem := (BorlandIDEServices as INTAServices).ToolBar[sDebugToolBar];
30-
LToolButton := TToolButton.Create(LToolBarItem);
31-
LToolButton.Caption := 'Run With Docker';
32-
LToolButton.Parent := LToolBarItem;
33-
LToolButton.ImageIndex := (BorlandIDEServices as INTAServices).AddImages(DataModuleImages.ImageList1, 'docker');
24+
3425
end;
3526

3627
procedure Register;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ object DataModuleImages: TDataModuleImages
22
OldCreateOrder = False
33
Height = 150
44
Width = 215
5-
object ImageList1: TImageList
5+
object ImageListDocker: TImageList
66
Left = 88
77
Top = 56
88
Bitmap = {
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
unit OpenToolApi.Images;
2+
3+
interface
4+
5+
uses
6+
System.SysUtils, System.Classes, System.ImageList, Vcl.ImgList, Vcl.Controls;
7+
8+
type
9+
TDataModuleImages = class(TDataModule)
10+
ImageListDocker: TImageList;
11+
private
12+
FIndexDocker: Integer;
13+
class var FInstance: TDataModuleImages;
14+
public
15+
class function GetInstance: TDataModuleImages;
16+
class procedure Release;
17+
property IndexDocker: Integer read FIndexDocker write FIndexDocker;
18+
constructor Create; reintroduce;
19+
end;
20+
21+
implementation
22+
23+
uses
24+
ToolsAPI;
25+
26+
{%CLASSGROUP 'Vcl.Controls.TControl'}
27+
{$R *.dfm}
28+
29+
constructor TDataModuleImages.Create;
30+
begin
31+
inherited Create(nil);
32+
FIndexDocker := (BorlandIDEServices as INTAServices).AddImages(ImageListDocker, 'docker');
33+
end;
34+
35+
class function TDataModuleImages.GetInstance: TDataModuleImages;
36+
begin
37+
if not Assigned(FInstance) then
38+
FInstance := TDataModuleImages.Create;
39+
40+
Result := FInstance;
41+
end;
42+
43+
class procedure TDataModuleImages.Release;
44+
begin
45+
if Assigned(FInstance) then
46+
FInstance.Free;
47+
end;
48+
49+
initialization
50+
51+
finalization
52+
53+
TDataModuleImages.Release;
54+
55+
end.

DelphiDocker.LocalMenuItem.pas renamed to Src/OpenToolApi/OpenToolApi.LocalMenuItem.pas

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
unit DelphiDocker.LocalMenuItem;
1+
unit OpenToolApi.LocalMenuItem;
22
33
interface
44

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
unit OpenToolApi.Register;
2+
3+
interface
4+
5+
uses
6+
ToolsAPI, Vcl.ComCtrls, OpenToolApi.LocalMenuItem, OpenToolApi.ToolBarItem;
7+
8+
procedure Register;
9+
10+
implementation
11+
12+
procedure AddLocalMenuDocker;
13+
var
14+
LNotifierMenuIndex: Integer;
15+
begin
16+
LNotifierMenuIndex := (BorlandIDEServices as IOTAProjectManager).AddMenuItemCreatorNotifier
17+
(TNotifierLocalMenuItem.Create);
18+
end;
19+
20+
procedure AddToolBarDocker;
21+
var
22+
LToolButton: TToolButton;
23+
LToolBarItem: TToolBar;
24+
begin
25+
LToolBarItem := (BorlandIDEServices as INTAServices).ToolBar[sDebugToolBar];
26+
LToolButton := TToolBarItem.Create(LToolBarItem);
27+
LToolButton.Parent := LToolBarItem;
28+
end;
29+
30+
procedure Register;
31+
begin
32+
AddLocalMenuDocker;
33+
AddToolBarDocker;
34+
end;
35+
36+
end.
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
unit OpenToolApi.ToolBarItem;
2+
3+
interface
4+
5+
uses
6+
ToolsAPI, Vcl.ComCtrls, System.Classes, OpenToolApi.Images;
7+
8+
type
9+
10+
TToolBarItem = class(TToolButton)
11+
public
12+
constructor Create(AOwner: TComponent); reintroduce;
13+
end;
14+
15+
implementation
16+
17+
{ TToolBarItem }
18+
19+
constructor TToolBarItem.Create(AOwner: TComponent);
20+
begin
21+
inherited Create(AOwner);
22+
Caption := 'Run With Docker';
23+
ImageIndex := TDataModuleImages.GetInstance.IndexDocker;
24+
end;
25+
26+
end.

0 commit comments

Comments
 (0)