git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.DevExpressVCL@31 05c56307-c608-d34a-929d-697000501d7a
326 lines
10 KiB
ObjectPascal
326 lines
10 KiB
ObjectPascal
unit BackgroundDemoMain;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
|
|
Dialogs, StdCtrls, ExtCtrls, dxBar, ImgList, dxBarExtItems, ActnList,
|
|
Buttons, ExtDlgs, cxClasses, EBarsUtils;
|
|
|
|
type
|
|
TBackgroundDemoMainForm = class(TForm)
|
|
BarManagerStyle: TRadioGroup;
|
|
dxBarManager1: TdxBarManager;
|
|
dxBarSubItem1: TdxBarSubItem;
|
|
dxBarSubItem2: TdxBarSubItem;
|
|
dxBarSubItem3: TdxBarSubItem;
|
|
dxBarSubItem4: TdxBarSubItem;
|
|
dxBarSubItem5: TdxBarSubItem;
|
|
dxBarSubItem6: TdxBarSubItem;
|
|
dxBarButton1: TdxBarLargeButton;
|
|
dxBarButton3: TdxBarLargeButton;
|
|
dxBarButton4: TdxBarLargeButton;
|
|
dxBarButton5: TdxBarLargeButton;
|
|
dxBarButton6: TdxBarLargeButton;
|
|
dxBarButton7: TdxBarLargeButton;
|
|
dxBarButton8: TdxBarLargeButton;
|
|
dxBarButton9: TdxBarLargeButton;
|
|
dxBarButton10: TdxBarLargeButton;
|
|
dxBarButton11: TdxBarLargeButton;
|
|
dxBarLargeButton1: TdxBarLargeButton;
|
|
dxBarLargeButton2: TdxBarLargeButton;
|
|
dxBarLargeButton3: TdxBarLargeButton;
|
|
dxBarLargeButton4: TdxBarLargeButton;
|
|
dxBarLargeButton5: TdxBarLargeButton;
|
|
dxBarLargeButton6: TdxBarLargeButton;
|
|
dxBarLargeButton7: TdxBarLargeButton;
|
|
dxBarButton15: TdxBarButton;
|
|
dxBarColorCombo1: TdxBarColorCombo;
|
|
dxBarFontNameCombo1: TdxBarFontNameCombo;
|
|
dxBarDateCombo1: TdxBarDateCombo;
|
|
dxBarSpinEdit1: TdxBarSpinEdit;
|
|
dxBarProgressItem1: TdxBarProgressItem;
|
|
dxBarStatic1: TdxBarStatic;
|
|
dxBarPopupMenu1: TdxBarPopupMenu;
|
|
dxBarLargeButton8: TdxBarLargeButton;
|
|
dxBarLargeButton9: TdxBarLargeButton;
|
|
dxBarLargeButton10: TdxBarLargeButton;
|
|
dxBarLargeButton11: TdxBarLargeButton;
|
|
dxBarLargeButton12: TdxBarLargeButton;
|
|
dxBarLargeButton13: TdxBarLargeButton;
|
|
dxBarLargeButton14: TdxBarLargeButton;
|
|
gbBackgroundOptions: TGroupBox;
|
|
Label1: TLabel;
|
|
Label2: TLabel;
|
|
Label3: TLabel;
|
|
cbBar: TCheckBox;
|
|
cbSubMenu: TCheckBox;
|
|
cbBackgroundBitmap: TCheckBox;
|
|
cbBackgroundBitmapPM: TCheckBox;
|
|
gbImageDisplay: TGroupBox;
|
|
btnNewWindow: TdxBarLargeButton;
|
|
btnArrangeAll: TdxBarLargeButton;
|
|
btnSplit: TdxBarLargeButton;
|
|
btnNew: TdxBarLargeButton;
|
|
btnOpen: TdxBarLargeButton;
|
|
btnSave: TdxBarLargeButton;
|
|
btnClose: TdxBarLargeButton;
|
|
btnPrint: TdxBarLargeButton;
|
|
btnSaveAs: TdxBarLargeButton;
|
|
btnSaveAll: TdxBarLargeButton;
|
|
dxBarSubItem7: TdxBarSubItem;
|
|
sbBarBackgroud: TSpeedButton;
|
|
sbBarSubmenu: TSpeedButton;
|
|
sbSatusbarBackgroud: TSpeedButton;
|
|
sbPopupmenu: TSpeedButton;
|
|
lbBarBackgroud: TLabel;
|
|
lbBarSubmenu: TLabel;
|
|
lbSatusbarBackgroud: TLabel;
|
|
lbPopupmenu: TLabel;
|
|
OpenPictureDialog: TOpenPictureDialog;
|
|
btnRestoreDefaults: TButton;
|
|
Bevel1: TBevel;
|
|
cbShowImageCaptions: TCheckBox;
|
|
cbAssignHotImages: TCheckBox;
|
|
Label4: TLabel;
|
|
Panel1: TPanel;
|
|
dxBarLargeButton15: TdxBarLargeButton;
|
|
dxBarLargeButton16: TdxBarLargeButton;
|
|
ilLargeImages: TImageList;
|
|
ilDisabledImages: TImageList;
|
|
ilHotImages: TImageList;
|
|
pnlOptions: TPanel;
|
|
pnlMain: TPanel;
|
|
procedure BarManagerStyleClick(Sender: TObject);
|
|
procedure dxBarButton1Click(Sender: TObject);
|
|
procedure dxBarSpinEdit1CurChange(Sender: TObject);
|
|
procedure cbBarClick(Sender: TObject);
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure cbSubMenuClick(Sender: TObject);
|
|
procedure cbBackgroundBitmapClick(Sender: TObject);
|
|
procedure cbBackgroundBitmapPMClick(Sender: TObject);
|
|
procedure sbBarBackgroudClick(Sender: TObject);
|
|
procedure btnRestoreDefaultsClick(Sender: TObject);
|
|
procedure FormDestroy(Sender: TObject);
|
|
procedure cbShowImageCaptionsClick(Sender: TObject);
|
|
procedure cbAssignHotImagesClick(Sender: TObject);
|
|
private
|
|
FBarBackgroudBitmap, FBarSubmenuBitmap, FSatusbarBackgroudBitmap, FPopupmenuBitmap: TBitmap;
|
|
public
|
|
FPath: string;
|
|
end;
|
|
|
|
var
|
|
BackgroundDemoMainForm: TBackgroundDemoMainForm;
|
|
|
|
implementation
|
|
|
|
uses
|
|
BackgroundDemoAbout;
|
|
|
|
const
|
|
sCustomImage = '(custom image)';
|
|
sDefaultImage = '(default image)';
|
|
|
|
{$R *.dfm}
|
|
{$R windowsxp.res}
|
|
|
|
procedure TBackgroundDemoMainForm.BarManagerStyleClick(Sender: TObject);
|
|
begin
|
|
dxBarManager1.Style := TdxBarManagerStyle(BarManagerStyle.ItemIndex);
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.dxBarButton1Click(Sender: TObject);
|
|
begin
|
|
Close;
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.dxBarSpinEdit1CurChange(Sender: TObject);
|
|
begin
|
|
dxBarProgressItem1.Position := Trunc(dxBarSpinEdit1.curValue);
|
|
dxBarSpinEdit1.curValue := dxBarProgressItem1.Position;
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.FormCreate(Sender: TObject);
|
|
begin
|
|
dmCommonData.AboutFormClass := TBackgroundDemoAboutForm;
|
|
|
|
FPath := ExtractFilePath(Application.ExeName);
|
|
|
|
FBarBackgroudBitmap := TBitmap.Create;
|
|
FBarSubmenuBitmap := TBitmap.Create;
|
|
FSatusbarBackgroudBitmap := TBitmap.Create;
|
|
FPopupmenuBitmap := TBitmap.Create;
|
|
|
|
cbBarClick(nil);
|
|
cbSubMenuClick(nil);
|
|
cbBackgroundBitmapClick(nil);
|
|
cbBackgroundBitmapPMClick(nil);
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.FormDestroy(Sender: TObject);
|
|
begin
|
|
FBarBackgroudBitmap.Free;
|
|
FBarSubmenuBitmap.Free;
|
|
FSatusbarBackgroudBitmap.Free;
|
|
FPopupmenuBitmap.Free;
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.cbBarClick(Sender: TObject);
|
|
begin
|
|
if cbBar.Checked then
|
|
begin
|
|
if lbBarBackgroud.Caption = sDefaultImage then
|
|
dxBarManager1.Backgrounds.Bar.LoadFromFile(FPath + 'b01.bmp')
|
|
else
|
|
dxBarManager1.Backgrounds.Bar.Assign(FBarBackgroudBitmap);
|
|
lbBarBackgroud.Enabled := True;
|
|
sbBarBackgroud.Enabled := True;
|
|
end
|
|
else
|
|
begin
|
|
dxBarManager1.Backgrounds.Bar.Assign(nil);
|
|
lbBarBackgroud.Enabled := False;
|
|
sbBarBackgroud.Enabled := False;
|
|
end;
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.cbSubMenuClick(Sender: TObject);
|
|
begin
|
|
if cbSubMenu.Checked then
|
|
begin
|
|
if lbBarSubmenu.Caption = sDefaultImage then
|
|
dxBarManager1.Backgrounds.SubMenu.LoadFromFile(FPath + 'b02.bmp')
|
|
else
|
|
dxBarManager1.Backgrounds.SubMenu.Assign(FBarSubmenuBitmap);
|
|
lbBarSubmenu.Enabled := True;
|
|
sbBarSubmenu.Enabled := True;
|
|
end
|
|
else
|
|
begin
|
|
dxBarManager1.Backgrounds.SubMenu.Assign(nil);
|
|
lbBarSubmenu.Enabled := False;
|
|
sbBarSubmenu.Enabled := False;
|
|
end
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.cbBackgroundBitmapClick(Sender: TObject);
|
|
begin
|
|
if cbBackgroundBitmap.Checked then
|
|
begin
|
|
if lbSatusbarBackgroud.Caption = sDefaultImage then
|
|
dxBarManager1.Bars[4].BackgroundBitmap.LoadFromFile(FPath + 'b03.bmp')
|
|
else
|
|
dxBarManager1.Bars[4].BackgroundBitmap.Assign(FSatusbarBackgroudBitmap);
|
|
lbSatusbarBackgroud.Enabled := True;
|
|
sbSatusbarBackgroud.Enabled := True;
|
|
end
|
|
else
|
|
begin
|
|
dxBarManager1.Bars[4].BackgroundBitmap.Assign(nil);
|
|
lbSatusbarBackgroud.Enabled := False;
|
|
sbSatusbarBackgroud.Enabled := False;
|
|
end
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.cbBackgroundBitmapPMClick(Sender: TObject);
|
|
begin
|
|
if cbBackgroundBitmapPM.Checked then
|
|
begin
|
|
if lbPopupmenu.Caption = sDefaultImage then
|
|
dxBarPopupMenu1.BackgroundBitmap.LoadFromFile(FPath + 'b04.bmp')
|
|
else
|
|
dxBarPopupMenu1.BackgroundBitmap.Assign(FPopupmenuBitmap);
|
|
lbPopupmenu.Enabled := True;
|
|
sbPopupmenu.Enabled := True;
|
|
end
|
|
else
|
|
begin
|
|
lbPopupmenu.Enabled := False;
|
|
sbPopupmenu.Enabled := False;
|
|
dxBarPopupMenu1.BackgroundBitmap.Assign(nil);
|
|
end;
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.sbBarBackgroudClick(Sender: TObject);
|
|
begin
|
|
if OpenPictureDialog.Execute then
|
|
case TComponent(Sender).Tag of
|
|
0: begin
|
|
FBarBackgroudBitmap.LoadFromFile(OpenPictureDialog.FileName);
|
|
dxBarManager1.Backgrounds.Bar.Assign(FBarBackgroudBitmap);
|
|
lbBarBackgroud.Caption := sCustomImage;
|
|
end;
|
|
1: begin
|
|
FBarSubmenuBitmap.LoadFromFile(OpenPictureDialog.FileName);
|
|
dxBarManager1.Backgrounds.SubMenu.Assign(FBarSubmenuBitmap);
|
|
lbBarSubmenu.Caption := sCustomImage;
|
|
end;
|
|
2: begin
|
|
FSatusbarBackgroudBitmap.LoadFromFile(OpenPictureDialog.FileName);
|
|
dxBarManager1.Bars[4].BackgroundBitmap.Assign(FSatusbarBackgroudBitmap);
|
|
lbSatusbarBackgroud.Caption := sCustomImage;
|
|
end;
|
|
3: begin
|
|
FPopupmenuBitmap.LoadFromFile(OpenPictureDialog.FileName);
|
|
dxBarPopupMenu1.BackgroundBitmap.Assign(FPopupmenuBitmap);
|
|
lbPopupmenu.Caption := sCustomImage;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.btnRestoreDefaultsClick(Sender: TObject);
|
|
begin
|
|
if (not cbBar.Checked) or (lbBarBackgroud.Caption = sCustomImage) then
|
|
begin
|
|
dxBarManager1.Backgrounds.Bar.LoadFromFile(FPath + 'b01.bmp');
|
|
lbBarBackgroud.Caption := sDefaultImage;
|
|
cbBar.Checked := True;
|
|
end;
|
|
|
|
if (not cbSubMenu.Checked) or (lbBarSubmenu.Caption = sCustomImage) then
|
|
begin
|
|
dxBarManager1.Backgrounds.SubMenu.LoadFromFile(FPath + 'b02.bmp');
|
|
lbBarSubmenu.Caption := sDefaultImage;
|
|
cbSubMenu.Checked := True;
|
|
end;
|
|
|
|
if (not cbBackgroundBitmap.Checked) or (lbSatusbarBackgroud.Caption = sCustomImage) then
|
|
begin
|
|
dxBarManager1.Bars[4].BackgroundBitmap.LoadFromFile(FPath + 'b03.bmp');
|
|
lbSatusbarBackgroud.Caption := sDefaultImage;
|
|
cbBackgroundBitmap.Checked := True;
|
|
end;
|
|
|
|
if (not cbBackgroundBitmapPM.Checked) or (lbPopupmenu.Caption = sCustomImage) then
|
|
begin
|
|
dxBarPopupMenu1.BackgroundBitmap.LoadFromFile(FPath + 'b04.bmp');
|
|
lbPopupmenu.Caption := sDefaultImage;
|
|
cbBackgroundBitmapPM.Checked := True;
|
|
end;
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.cbShowImageCaptionsClick(
|
|
Sender: TObject);
|
|
var
|
|
i: Integer;
|
|
AChecked: Boolean;
|
|
begin
|
|
dxBarManager1.LockUpdate := True;
|
|
AChecked := TCheckBox(Sender).Checked;
|
|
for i:=0 to ComponentCount - 1 do
|
|
if Components[i] is TdxBarLargeButton then
|
|
TdxBarLargeButton(Components[i]).ShowCaption := AChecked;
|
|
dxBarManager1.LockUpdate := False;
|
|
end;
|
|
|
|
procedure TBackgroundDemoMainForm.cbAssignHotImagesClick(Sender: TObject);
|
|
begin
|
|
if TCheckBox(Sender).Checked then
|
|
dxBarManager1.HotImages := ilHotImages
|
|
else
|
|
dxBarManager1.HotImages := nil;
|
|
end;
|
|
|
|
end.
|