mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-27 20:20:16 +02:00
lcl: repair cancel button work on ESC on TButtonPanel
git-svn-id: trunk@17093 -
This commit is contained in:
parent
48793b3843
commit
ac74e1d96b
@ -66,6 +66,7 @@ type
|
|||||||
procedure ButtonOrderCloseOKCancel;
|
procedure ButtonOrderCloseOKCancel;
|
||||||
procedure DoButtonOrder;
|
procedure DoButtonOrder;
|
||||||
procedure DoDefaultButton;
|
procedure DoDefaultButton;
|
||||||
|
procedure DoRestoreCancel;
|
||||||
procedure DoShowButtons;
|
procedure DoShowButtons;
|
||||||
procedure DoShowGlyphs;
|
procedure DoShowGlyphs;
|
||||||
procedure SetButtonOrder(Value: TButtonOrder);
|
procedure SetButtonOrder(Value: TButtonOrder);
|
||||||
@ -74,20 +75,20 @@ type
|
|||||||
procedure SetShowGlyphs(Value: TPanelButtons);
|
procedure SetShowGlyphs(Value: TPanelButtons);
|
||||||
protected
|
protected
|
||||||
procedure Loaded; override;
|
procedure Loaded; override;
|
||||||
procedure Notification(AComponent: TComponent; Operation: TOperation
|
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
|
||||||
); override;
|
|
||||||
public
|
public
|
||||||
constructor Create(AOwner: TComponent); override;
|
constructor Create(AOwner: TComponent); override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
|
|
||||||
property OKButton: TPanelBitBtn Read FOKButton stored False;
|
property OKButton: TPanelBitBtn read FOKButton stored False;
|
||||||
property HelpButton: TPanelBitBtn Read FHelpButton stored False;
|
property HelpButton: TPanelBitBtn read FHelpButton stored False;
|
||||||
property CloseButton: TPanelBitBtn Read FCloseButton stored False;
|
property CloseButton: TPanelBitBtn read FCloseButton stored False;
|
||||||
property CancelButton: TPanelBitBtn Read FCancelButton stored False;
|
property CancelButton: TPanelBitBtn read FCancelButton stored False;
|
||||||
property ButtonOrder: TButtonOrder Read FButtonOrder Write SetButtonOrder;
|
property ButtonOrder: TButtonOrder read FButtonOrder write SetButtonOrder;
|
||||||
property DefaultButton: TPanelButton Read FDefaultButton Write SetDefaultButton;
|
|
||||||
property ShowButtons: TPanelButtons Read FShowButtons Write SetShowButtons default DefShowButtons;
|
property DefaultButton: TPanelButton read FDefaultButton write SetDefaultButton;
|
||||||
property ShowGlyphs: TPanelButtons Read FShowGlyphs Write SetShowGlyphs default DefShowGlyphs;
|
property ShowButtons: TPanelButtons read FShowButtons write SetShowButtons default DefShowButtons;
|
||||||
|
property ShowGlyphs: TPanelButtons read FShowGlyphs write SetShowGlyphs default DefShowGlyphs;
|
||||||
published
|
published
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -323,6 +324,16 @@ begin
|
|||||||
FHelpButton.Default := FDefaultButton = pbHelp;
|
FHelpButton.Default := FDefaultButton = pbHelp;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TCustomButtonPanel.DoRestoreCancel;
|
||||||
|
begin
|
||||||
|
if FCancelButton <> nil then
|
||||||
|
begin
|
||||||
|
// to restore cancel button we need to do this hack
|
||||||
|
FCancelButton.Cancel := False;
|
||||||
|
FCancelButton.Cancel := True;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TCustomButtonPanel.SetDefaultButton(Value: TPanelButton);
|
procedure TCustomButtonPanel.SetDefaultButton(Value: TPanelButton);
|
||||||
begin
|
begin
|
||||||
if FDefaultButton = Value then
|
if FDefaultButton = Value then
|
||||||
@ -336,6 +347,7 @@ end;
|
|||||||
procedure TCustomButtonPanel.Loaded;
|
procedure TCustomButtonPanel.Loaded;
|
||||||
begin
|
begin
|
||||||
inherited Loaded;
|
inherited Loaded;
|
||||||
|
DoRestoreCancel;
|
||||||
DoDefaultButton;
|
DoDefaultButton;
|
||||||
DoShowGlyphs;
|
DoShowGlyphs;
|
||||||
DoShowButtons;
|
DoShowButtons;
|
||||||
|
@ -129,6 +129,7 @@ const
|
|||||||
psDashDotDot = FPCanvas.psDashDotDot;
|
psDashDotDot = FPCanvas.psDashDotDot;
|
||||||
psClear = FPCanvas.psClear;
|
psClear = FPCanvas.psClear;
|
||||||
psInsideframe = FPCanvas.psInsideframe;
|
psInsideframe = FPCanvas.psInsideframe;
|
||||||
|
psPattern = FPCanvas.psPattern;
|
||||||
|
|
||||||
pmBlack = FPCanvas.pmBlack;
|
pmBlack = FPCanvas.pmBlack;
|
||||||
pmWhite = FPCanvas.pmWhite;
|
pmWhite = FPCanvas.pmWhite;
|
||||||
@ -1535,7 +1536,7 @@ type
|
|||||||
|
|
||||||
TIcon = class(TCustomIcon)
|
TIcon = class(TCustomIcon)
|
||||||
private
|
private
|
||||||
function GetIconHandle: HICON;
|
function GetIconHandle: HICON;
|
||||||
procedure SetIconHandle(const AValue: HICON);
|
procedure SetIconHandle(const AValue: HICON);
|
||||||
protected
|
protected
|
||||||
class function GetTypeID: Word; override;
|
class function GetTypeID: Word; override;
|
||||||
|
Loading…
Reference in New Issue
Block a user