packager: use ToolBar for buttons in the package editor

git-svn-id: trunk@20505 -
This commit is contained in:
paul 2009-06-08 04:38:07 +00:00
parent e55e302b7e
commit d24d8ac07f
5 changed files with 94 additions and 154 deletions

1
.gitattributes vendored
View File

@ -3545,6 +3545,7 @@ images/packages/pkg_files.png -text svneol=unset#image/png
images/packages/pkg_graph.png -text svneol=unset#image/png
images/packages/pkg_include.png -text svneol=unset#image/png
images/packages/pkg_inherited.png -text svneol=unset#image/png
images/packages/pkg_install.png -text svneol=unset#image/png
images/packages/pkg_installed.png -text svneol=unset#image/png
images/packages/pkg_issues.png -text svneol=unset#image/png
images/packages/pkg_lfm.png -text svneol=unset#image/png

View File

@ -9727,6 +9727,34 @@ LazarusResources.Add('pkg_inherited','PNG',[
+'.L|'#152#159'N'#254#160#248'#'#29#239#255#198'E'#155#29#189#195#193'c?/'#5#7
+#6#6#148'ry'#175#1'E'#135'Y'#19'+'#152''#24#0#0#0#0'IEND'#174'B`'#130
]);
LazarusResources.Add('pkg_install','PNG',[
#137'PNG'#13#10#26#10#0#0#0#13'IHDR'#0#0#0#16#0#0#0#16#8#6#0#0#0#31#243#255'a'
+#0#0#0#4'gAMA'#0#0#175#200'7'#5#138#233#0#0#0#25'tEXtSoftware'#0'Adobe Image'
+'Readyq'#201'e<'#0#0#2#12'IDAT8'#203#165'SKk'#19'Q'#20#254#146'Nf'#138'tZ'
+#171#129#130#150#148'b'#210#130#136#138#11#11#10'VqQ'#180#27#21'Q$'#205#202
+'?'#224#198#254#1#151#174#252#3'"'#130#160'+'#165#130'k]'#249'n'#235#162'h3)'
+'>'#16'1mF'#251#152'L'#166's'#231#158#235#153#155#166'Mk'#10#21#7#14#231#222
+#153#249#190#243#248#206'I('#165#240'?'#143#209'|q'#167#206#220'W'#164#10'1'
+#169'"'#2#136#189#172#159#181'5'#206#146#190#245#142'L'#246#253'E'#192#224'|'
+'W>'#246#128#140''#148#27#22'I'#248#149#183#8#150#28#175#1#222'DPy'#250
+#150'i'#231#146#224#192#194'}'#12'%"'#144#16'P'#161'@*}'#9#193#226#199#24','
+#25'l7'#7'MnD'#167#241#246#221'G '#253'O:'#154#18'uK'#165'/ '#244#190#163#182
+#232#128'$'#13'n'#237#129'&Xxs'#234'rjW'#198'D'#194#132#172#206'h'#2#146#17
+#218':'#142'q'#22'U'#142'^'#132'\]'#30#205#156#159#158'kI'#192#209#239'q'#250
+#12#172#178'Ek5GHZ'#25#212'~'#207#198#25#220#204#140'N?k'#165'B'#162#252#242
+#228'P'#155#153'~e'#247#158'CX'#153#0'q'#205#138'k'#167' '#128#217's'#17#174
+#243'@q'#215#195#134#2#164#155#171'm)7V'#234'1'#248#195#132'i'#15#240#11#1
+#163's'#132'}'#164'K'#0#11#161'"Bw'#223#149#132#138#132'UW'#131#224'-LrV'#142
+'OB'#158#208'*0'#171#229#253'x'#177#218#164#177#246#221#253'W'#173#224#243'#'
+'n'#203'~'#164#246#28#135#239#206#196'@'#200#176'v7W(]_/'#161#213'$~}z'#248
+'y'#231#190#179#195#134#185#151#179#16'X'#249#249#142#193#197'e&'#31#200#21
+#230#202#219'N'#226#186#164#146#134#13'+'#141#234#252#7#212#220'Y'#142#234
+#223#201#230#157#27'-'#155#184'5'#131'/O'#14'M'#181#219#217#163#138'x'#242
+#220#226'/&;'#200#224#242'v'#187#176#137#128#193#29'P'#201#149#184#15'R'#132
+#183#179#215#138#227#255#180'L'#12'|'#205#3'4'#207#254#0#131#189#29#173#163
+#222#188'5+='#28#28'j'#190#239#196#254#0'BJ'#140'd'#231't'#147'%'#0#0#0#0'IE'
+'ND'#174'B`'#130
]);
LazarusResources.Add('pkg_installed','PNG',[
#137'PNG'#13#10#26#10#0#0#0#13'IHDR'#0#0#0#16#0#0#0#16#8#6#0#0#0#31#243#255'a'
+#0#0#3'-IDATx^m'#147'_lSU'#28#199#191#189'k'#187'2'#215'm'#204'8M7'#209'd'

View File

@ -183,6 +183,7 @@ debugger/debugger_watches.png
packages/pkg_add.png
packages/pkg_graph.png
packages/pkg_inherited.png
packages/pkg_install.png
packages/pkg_installed.png
packages/pkg_open.png
packages/pkg_properties.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 634 B

View File

@ -102,16 +102,18 @@ type
{ TPackageEditorForm }
TPackageEditorForm = class(TBasePackageEditor)
// toolbar
ToolBar: TToolBar;
// buttons
SaveBitBtn: TBitBtn;
CompileBitBtn: TBitBtn;
AddBitBtn: TBitBtn;
RemoveBitBtn: TBitBtn;
InstallBitBtn: TBitBtn;
OptionsBitBtn: TBitBtn;
CompilerOptionsBitBtn: TBitBtn;
MoreBitBtn: TBitBtn;
HelpBitBtn: TBitBtn;
SaveBitBtn: TToolButton;
CompileBitBtn: TToolButton;
AddBitBtn: TToolButton;
RemoveBitBtn: TToolButton;
InstallBitBtn: TToolButton;
OptionsBitBtn: TToolButton;
CompilerOptionsBitBtn: TToolButton;
MoreBitBtn: TToolButton;
HelpBitBtn: TToolButton;
// items
FilesTreeView: TTreeView;
// properties
@ -151,7 +153,6 @@ type
procedure InstallBitBtnClick(Sender: TObject);
procedure MaxVersionEditChange(Sender: TObject);
procedure MinVersionEditChange(Sender: TObject);
procedure MoreBitBtnClick(Sender: TObject);
procedure MoveDependencyDownClick(Sender: TObject);
procedure MoveDependencyUpClick(Sender: TObject);
procedure MoveFileDownMenuItemClick(Sender: TObject);
@ -162,7 +163,6 @@ type
procedure OptionsBitBtnClick(Sender: TObject);
procedure PackageEditorFormClose(Sender: TObject; var CloseAction: TCloseAction);
procedure PackageEditorFormCloseQuery(Sender: TObject; var CanClose: boolean);
procedure PackageEditorFormResize(Sender: TObject);
procedure PublishClick(Sender: TObject);
procedure ReAddMenuItemClick(Sender: TObject);
procedure RegisteredListBoxDrawItem(Control: TWinControl; Index: Integer;
@ -367,45 +367,6 @@ end;
{ TPackageEditorForm }
procedure TPackageEditorForm.PackageEditorFormResize(Sender: TObject);
var
x: Integer;
y: Integer;
w: Integer;
h: Integer;
y1: Integer;
y2: Integer;
begin
x:=0;
y:=0;
w:=ClientWidth div 5;
h:=SaveBitBtn.Height;
y1:=y;
y2:=y1+h;
// first column of buttons
SaveBitBtn.SetBounds(x,y1,w,h);
CompileBitBtn.SetBounds(x,y2,w,h);
inc(x,w);
// second column of buttons
AddBitBtn.SetBounds(x,y1,w,h);
RemoveBitBtn.SetBounds(x,y2,w,h);
inc(x,w);
// third and forth column of buttons
OptionsBitBtn.SetBounds(x,y1,w,h);
CompilerOptionsBitBtn.SetBounds(x,y2,2*w,h);
inc(x,w);
InstallBitBtn.SetBounds(x,y1,w,h);
inc(x,w);
// fifth column of buttons
HelpBitBtn.SetBounds(x,y1,ClientWidth-x - 1,h);
MoreBitBtn.SetBounds(x,y2,ClientWidth-x - 1,h);
FilePropsGroupBox.Height:=120;
end;
procedure TPackageEditorForm.PublishClick(Sender: TObject);
begin
DoPublishProject;
@ -637,14 +598,6 @@ begin
UpdateApplyDependencyButton;
end;
procedure TPackageEditorForm.MoreBitBtnClick(Sender: TObject);
var
p: TPoint;
begin
p:=MoreBitBtn.ClientToScreen(Point(0,MoreBitBtn.Height));
FilesPopupMenu.Popup(p.x,p.y);
end;
procedure TPackageEditorForm.MoveDependencyUpClick(Sender: TObject);
var
CurDependency: TPkgDependency;
@ -1301,6 +1254,29 @@ begin
end;
procedure TPackageEditorForm.SetupComponents;
function CreateToolButton(AName, ACaption, AHint, AImageName: String; AOnClick: TNotifyEvent): TToolButton;
begin
Result := TToolButton.Create(Self);
Result.Name := AName;
Result.Caption := ACaption;
Result.Hint := AHint;
if AImageName <> '' then
Result.ImageIndex := IDEImages.LoadImage(16, AImageName);
Result.ShowHint := True;
Result.OnClick := AOnClick;
Result.AutoSize := True;
Result.Parent := ToolBar;
end;
function CreateDivider: TToolButton;
begin
Result := TToolButton.Create(Self);
Result.Style := tbsDivider;
Result.Width := 3;
Result.Parent := ToolBar;
end;
begin
ImageIndexFiles := IDEImages.LoadImage(16, 'pkg_files');
ImageIndexRemovedFiles := IDEImages.LoadImage(16, 'pkg_removedfiles');
@ -1316,102 +1292,37 @@ begin
ImageIndexBinary := IDEImages.LoadImage(16, 'pkg_binary');
ImageIndexConflict := IDEImages.LoadImage(16, 'pkg_conflict');
SaveBitBtn:=TBitBtn.Create(Self);
with SaveBitBtn do begin
Name:='SaveBitBtn';
Parent:=Self;
Caption:=lisMenuSave;
OnClick:=@SaveBitBtnClick;
Hint:=lisPckEditSavePackage;
ShowHint:=true;
ToolBar := TToolBar.Create(Self);
ToolBar.Name := 'ToolBar';
ToolBar.Images := IDEImages.Images_16;
ToolBar.ShowCaptions := True;
ToolBar.ButtonHeight := 46;
ToolBar.Height := 48;
ToolBar.AutoSize := True;
ToolBar.Parent := Self;
SaveBitBtn := CreateToolButton('SaveBitBtn', lisMenuSave, lisPckEditSavePackage, 'laz_save', @SaveBitBtnClick);
CompileBitBtn := CreateToolButton('CompileBitBtn', lisPckEditCompile, lisPckEditCompilePackage, 'pkg_compile', @CompileBitBtnClick);
InstallBitBtn := CreateToolButton('InstallBitBtn', lisPckEditInstall, lisPckEditInstallPackageInTheIDE, 'pkg_install', @InstallBitBtnClick);
CreateDivider;
AddBitBtn := CreateToolButton('AddBitBtn', lisCodeTemplAdd, lisPckEditAddAnItem, 'laz_add', @AddBitBtnClick);
RemoveBitBtn := CreateToolButton('RemoveBitBtn', lisExtToolRemove, lisPckEditRemoveSelectedItem, 'laz_delete', @RemoveBitBtnClick);
CreateDivider;
OptionsBitBtn := CreateToolButton('OptionsBitBtn', dlgFROpts, lisPckEditEditGeneralOptions, 'pkg_properties', @OptionsBitBtnClick);
CompilerOptionsBitBtn := CreateToolButton('CompilerOptionsBitBtn', lisPckEditCompOpts, lisPckEditEditOptionsToCompilePackage, 'menu_compiler_options', @CompilerOptionsBitBtnClick);
CreateDivider;
HelpBitBtn := CreateToolButton('HelpBitBtn', GetButtonCaption(idButtonHelp), lisPkgEdThereAreMoreFunctionsInThePopupmenu, 'menu_help', @HelpBitBtnClick);
MoreBitBtn := CreateToolButton('MoreBitBtn', lisPckEditMore, lisPkgEdThereAreMoreFunctionsInThePopupmenu, '', nil);
FilesPopupMenu := TPopupMenu.Create(Self);
with FilesPopupMenu do
begin
Name := 'FilesPopupMenu';
OnPopup := @FilesPopupMenuPopup;
end;
CompileBitBtn:=TBitBtn.Create(Self);
with CompileBitBtn do begin
Name:='CompileBitBtn';
Parent:=Self;
Caption:=lisPckEditCompile;
OnClick:=@CompileBitBtnClick;
Hint:=lisPckEditCompilePackage;
ShowHint:=true;
end;
AddBitBtn:=TBitBtn.Create(Self);
with AddBitBtn do begin
Name:='AddBitBtn';
Parent:=Self;
Caption:=lisCodeTemplAdd;
OnClick:=@AddBitBtnClick;
Hint:=lisPckEditAddAnItem;
ShowHint:=true;
end;
RemoveBitBtn:=TBitBtn.Create(Self);
with RemoveBitBtn do begin
Name:='RemoveBitBtn';
Parent:=Self;
Caption:=lisExtToolRemove;
OnClick:=@RemoveBitBtnClick;
Hint:=lisPckEditRemoveSelectedItem;
ShowHint:=true;
end;
InstallBitBtn:=TBitBtn.Create(Self);
with InstallBitBtn do begin
Name:='InstallBitBtn';
Parent:=Self;
Caption:=lisPckEditInstall;
OnClick:=@InstallBitBtnClick;
Hint:=lisPckEditInstallPackageInTheIDE;
ShowHint:=true;
end;
OptionsBitBtn:=TBitBtn.Create(Self);
with OptionsBitBtn do begin
Name:='OptionsBitBtn';
Parent:=Self;
Caption:=dlgFROpts;
OnClick:=@OptionsBitBtnClick;
Hint:=lisPckEditEditGeneralOptions;
ShowHint:=true;
end;
CompilerOptionsBitBtn:=TBitBtn.Create(Self);
with CompilerOptionsBitBtn do begin
Name:='CompilerOptionsBitBtn';
Parent:=Self;
Caption:=lisPckEditCompOpts;
OnClick:=@CompilerOptionsBitBtnClick;
Hint:=lisPckEditEditOptionsToCompilePackage;
ShowHint:=true;
end;
HelpBitBtn:=TBitBtn.Create(Self);
with HelpBitBtn do begin
Name:='HelpBitBtn';
Kind := bkHelp;
Parent:=Self;
OnClick:=@HelpBitBtnClick;
Hint:=lisPkgEdThereAreMoreFunctionsInThePopupmenu;
ShowHint:=true;
end;
MoreBitBtn:=TBitBtn.Create(Self);
with MoreBitBtn do begin
Name:='MoreBitBtn';
Parent:=Self;
Caption:=lisPckEditMore;
Enabled:=true;
OnClick:=@MoreBitBtnClick;
Hint:=lisPkgEdThereAreMoreFunctionsInThePopupmenu;
ShowHint:=true;
end;
FilesPopupMenu:=TPopupMenu.Create(Self);
with FilesPopupMenu do begin
Name:='FilesPopupMenu';
OnPopup:=@FilesPopupMenuPopup;
end;
//MoreBitBtn.Style := tbsDropDown;
MoreBitBtn.DropdownMenu := FilesPopupMenu;
FilesTreeView:=TTreeView.Create(Self);
with FilesTreeView do begin
@ -1533,7 +1444,7 @@ begin
FilePropsGroupBox.AnchorToNeighbour(akBottom,0,StatusBar);
FilePropsGroupBox.Height:=120;
FilesTreeView.AnchorToNeighbour(akTop,0,CompileBitBtn);
FilesTreeView.AnchorToNeighbour(akTop,0,ToolBar);
FilesTreeView.AnchorParallel(akLeft,0,Self);
FilesTreeView.AnchorParallel(akRight,0,Self);
FilesTreeView.AnchorToNeighbour(akBottom,0,FilePropsGroupBox);
@ -2079,7 +1990,6 @@ begin
inherited Create(TheOwner);
FPlugins:=TStringList.Create;
SetupComponents;
OnResize:=@PackageEditorFormResize;
OnCloseQuery:=@PackageEditorFormCloseQuery;
OnClose:=@PackageEditorFormClose;
end;