mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 07:59:28 +02:00
* made ActiveDefaultButtonChanged naming more consistent with other routines
* added some handle checks git-svn-id: trunk@10733 -
This commit is contained in:
parent
c9f940ca40
commit
e4deb6932e
@ -77,11 +77,11 @@ type
|
|||||||
protected
|
protected
|
||||||
procedure Click; override;
|
procedure Click; override;
|
||||||
procedure CreateWnd; override;
|
procedure CreateWnd; override;
|
||||||
procedure DoSendBtnDefault; virtual;
|
|
||||||
procedure ControlKeyDown(var Key: Word; Shift: TShiftState); override;
|
procedure ControlKeyDown(var Key: Word; Shift: TShiftState); override;
|
||||||
procedure ControlKeyUp(var Key: Word; Shift: TShiftState); override;
|
procedure ControlKeyUp(var Key: Word; Shift: TShiftState); override;
|
||||||
procedure SetParent(AParent: TWinControl); override;
|
procedure SetParent(AParent: TWinControl); override;
|
||||||
procedure RealSetText(const Value: TCaption); override;
|
procedure RealSetText(const Value: TCaption); override;
|
||||||
|
procedure WSSetDefault;
|
||||||
function DialogChar(var Message: TLMKey): boolean; override;
|
function DialogChar(var Message: TLMKey): boolean; override;
|
||||||
function ChildClassAllowed(ChildClass: TClass): boolean; override;
|
function ChildClassAllowed(ChildClass: TClass): boolean; override;
|
||||||
function IsBorderSpacingInnerBorderStored: Boolean; override;
|
function IsBorderSpacingInnerBorderStored: Boolean; override;
|
||||||
|
@ -49,16 +49,7 @@ begin
|
|||||||
inherited CreateWnd;
|
inherited CreateWnd;
|
||||||
//this is done in TWinControl
|
//this is done in TWinControl
|
||||||
//SetText(Caption);//To ensure shortcut is set
|
//SetText(Caption);//To ensure shortcut is set
|
||||||
DoSendBtnDefault;
|
WSSetDefault;
|
||||||
end;
|
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
|
||||||
procedure TCustomButton.DoSendBtnDefault;
|
|
||||||
------------------------------------------------------------------------------}
|
|
||||||
procedure TCustomButton.DoSendBtnDefault;
|
|
||||||
begin
|
|
||||||
if HandleAllocated then
|
|
||||||
TWSButtonClass(WidgetSetClass).ActiveDefaultButtonChanged(Self);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCustomButton.ControlKeyDown(var Key: Word; Shift: TShiftState);
|
procedure TCustomButton.ControlKeyDown(var Key: Word; Shift: TShiftState);
|
||||||
@ -89,7 +80,7 @@ begin
|
|||||||
if FCancel then
|
if FCancel then
|
||||||
Form.CancelControl := Self;
|
Form.CancelControl := Self;
|
||||||
end;
|
end;
|
||||||
DoSendBtnDefault;
|
WSSetDefault;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCustomButton.UpdateRolesForForm;
|
procedure TCustomButton.UpdateRolesForForm;
|
||||||
@ -149,7 +140,7 @@ begin
|
|||||||
else
|
else
|
||||||
Form.DefaultControl := nil;
|
Form.DefaultControl := nil;
|
||||||
end;
|
end;
|
||||||
DoSendBtnDefault;
|
WSSetDefault;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCustomButton.SetModalResult(const AValue: TModalResult);
|
procedure TCustomButton.SetModalResult(const AValue: TModalResult);
|
||||||
@ -219,7 +210,7 @@ begin
|
|||||||
FActive := FDefault;
|
FActive := FDefault;
|
||||||
end;
|
end;
|
||||||
if lPrevActive <> FActive then
|
if lPrevActive <> FActive then
|
||||||
DoSendBtnDefault;
|
WSSetDefault;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCustomButton.CMUIActivate(var Message: TLMessage);
|
procedure TCustomButton.CMUIActivate(var Message: TLMessage);
|
||||||
@ -258,7 +249,7 @@ begin
|
|||||||
lForm := GetParentForm(Self);
|
lForm := GetParentForm(Self);
|
||||||
if (lForm <> nil) and (lForm.ActiveDefaultControl = Self) then
|
if (lForm <> nil) and (lForm.ActiveDefaultControl = Self) then
|
||||||
lForm.ActiveDefaultControl := nil;
|
lForm.ActiveDefaultControl := nil;
|
||||||
DoSendBtnDefault;
|
WSSetDefault;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -292,6 +283,15 @@ begin
|
|||||||
Result:=BorderSpacing.InnerBorder<>2;
|
Result:=BorderSpacing.InnerBorder<>2;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
procedure TCustomButton.DoSendBtnDefault;
|
||||||
|
------------------------------------------------------------------------------}
|
||||||
|
procedure TCustomButton.WSSetDefault;
|
||||||
|
begin
|
||||||
|
if HandleAllocated then
|
||||||
|
TWSButtonClass(WidgetSetClass).SetDefault(Self, FDefault);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
{ TButton }
|
{ TButton }
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ type
|
|||||||
protected
|
protected
|
||||||
public
|
public
|
||||||
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
||||||
class procedure ActiveDefaultButtonChanged(const AButton: TCustomButton); override;
|
class procedure SetDefault(const AButton: TCustomButton; ADefault: Boolean); override;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ TCarbonWSBitBtn }
|
{ TCarbonWSBitBtn }
|
||||||
@ -108,22 +108,18 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Method: TCarbonWSButton.ActiveDefaultButtonChanged
|
Method: TCarbonWSButton.SetDefault
|
||||||
Params: AButton - LCL button control
|
Params: AButton - LCL button control
|
||||||
Returns: Nothing
|
Returns: Nothing
|
||||||
|
|
||||||
Updates default button indication
|
Updates default button indication
|
||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
class procedure TCarbonWSButton.ActiveDefaultButtonChanged(
|
class procedure TCarbonWSButton.SetDefault(const AButton: TCustomButton; ADefault: Boolean);
|
||||||
const AButton: TCustomButton);
|
|
||||||
var
|
|
||||||
ADefault: Boolean;
|
|
||||||
begin
|
begin
|
||||||
if not WSCheckHandleAllocated(AButton, 'ActiveDefaultButtonChanged') then Exit;
|
if not WSCheckHandleAllocated(AButton, 'SetDefault') then Exit;
|
||||||
|
|
||||||
ADefault := AButton.Default;
|
|
||||||
SetControlData(ControlRef(AButton.Handle), kControlEntireControl,
|
SetControlData(ControlRef(AButton.Handle), kControlEntireControl,
|
||||||
kControlPushButtonDefaultTag, SizeOf(Boolean), @ADefault);
|
kControlPushButtonDefaultTag, SizeOf(ADefault), @ADefault);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,15 +58,16 @@ type
|
|||||||
class procedure SetCallbacks(const AGtkWidget: PGtkWidget; const AWidgetInfo: PWidgetInfo); virtual;
|
class procedure SetCallbacks(const AGtkWidget: PGtkWidget; const AWidgetInfo: PWidgetInfo); virtual;
|
||||||
public
|
public
|
||||||
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
||||||
class procedure ActiveDefaultButtonChanged(const AButton: TCustomButton); override;
|
|
||||||
class function GetText(const AWinControl: TWinControl; var AText: String): Boolean; override;
|
|
||||||
class procedure SetShortcut(const AButton: TCustomButton; const OldShortcut, NewShortcut: TShortcut); override;
|
|
||||||
class procedure SetText(const AWinControl: TWinControl; const AText: String); override;
|
|
||||||
class procedure SetColor(const AWinControl: TWinControl); override;
|
|
||||||
class procedure SetFont(const AWinControl: TWinControl; const AFont : tFont); override;
|
|
||||||
class procedure GetPreferredSize(const AWinControl: TWinControl;
|
class procedure GetPreferredSize(const AWinControl: TWinControl;
|
||||||
var PreferredWidth, PreferredHeight: integer;
|
var PreferredWidth, PreferredHeight: integer;
|
||||||
WithThemeSpace: Boolean); override;
|
WithThemeSpace: Boolean); override;
|
||||||
|
class function GetText(const AWinControl: TWinControl; var AText: String): Boolean; override;
|
||||||
|
|
||||||
|
class procedure SetColor(const AWinControl: TWinControl); override;
|
||||||
|
class procedure SetFont(const AWinControl: TWinControl; const AFont : TFont); override;
|
||||||
|
class procedure SetDefault(const AButton: TCustomButton; ADefault: Boolean); override;
|
||||||
|
class procedure SetShortcut(const AButton: TCustomButton; const OldShortcut, NewShortcut: TShortcut); override;
|
||||||
|
class procedure SetText(const AWinControl: TWinControl; const AText: String); override;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ TGtkWSBitBtn }
|
{ TGtkWSBitBtn }
|
||||||
@ -145,9 +146,18 @@ begin
|
|||||||
SetCallbacks(PGtkWidget(Result), WidgetInfo);
|
SetCallbacks(PGtkWidget(Result), WidgetInfo);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TGtkWSButton.ActiveDefaultButtonChanged(const AButton: TCustomButton);
|
class function TGtkWSButton.GetText(const AWinControl: TWinControl; var AText: String): Boolean;
|
||||||
|
begin
|
||||||
|
// The button text is static, so let the LCL fallback to FCaption
|
||||||
|
Result := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
class procedure TGtkWSButton.SetDefault(const AButton: TCustomButton; ADefault: Boolean);
|
||||||
begin
|
begin
|
||||||
if (AButton.Active)
|
if not WSCheckHandleAllocated(AButton, 'SetDefault')
|
||||||
|
then Exit;
|
||||||
|
|
||||||
|
if ADefault
|
||||||
and (GTK_WIDGET_CAN_DEFAULT(pgtkwidget(AButton.Handle))) then
|
and (GTK_WIDGET_CAN_DEFAULT(pgtkwidget(AButton.Handle))) then
|
||||||
//gtk_widget_grab_default(pgtkwidget(handle))
|
//gtk_widget_grab_default(pgtkwidget(handle))
|
||||||
else begin
|
else begin
|
||||||
@ -160,12 +170,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class function TGtkWSButton.GetText(const AWinControl: TWinControl; var AText: String): Boolean;
|
|
||||||
begin
|
|
||||||
// The button text is static, so let the LCL fallback to FCaption
|
|
||||||
Result := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
class procedure TGtkWSButton.SetCallbacks(const AGtkWidget: PGtkWidget;
|
class procedure TGtkWSButton.SetCallbacks(const AGtkWidget: PGtkWidget;
|
||||||
const AWidgetInfo: PWidgetInfo);
|
const AWidgetInfo: PWidgetInfo);
|
||||||
begin
|
begin
|
||||||
|
@ -32,7 +32,7 @@ uses
|
|||||||
// LCL
|
// LCL
|
||||||
SysUtils, Controls, LCLType, Forms, InterfaceBase, Buttons, LMessages, Graphics,
|
SysUtils, Controls, LCLType, Forms, InterfaceBase, Buttons, LMessages, Graphics,
|
||||||
// Widgetset
|
// Widgetset
|
||||||
WSButtons, WSLCLClasses;
|
WSProc, WSButtons, WSLCLClasses;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
@ -44,8 +44,8 @@ type
|
|||||||
public
|
public
|
||||||
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
||||||
class procedure DestroyHandle(const AWinControl: TWinControl); override;
|
class procedure DestroyHandle(const AWinControl: TWinControl); override;
|
||||||
// class procedure ActiveDefaultButtonChanged(const AButton: TCustomButton); override;
|
|
||||||
class function GetText(const AWinControl: TWinControl; var AText: String): Boolean; override;
|
class function GetText(const AWinControl: TWinControl; var AText: String): Boolean; override;
|
||||||
|
// class procedure SetDefault(const AButton: TCustomButton; ADefault: Boolean); override;
|
||||||
// class procedure SetShortcut(const AButton: TCustomButton; const OldShortcut, NewShortcut: TShortcut); override;
|
// class procedure SetShortcut(const AButton: TCustomButton; const OldShortcut, NewShortcut: TShortcut); override;
|
||||||
class procedure SetText(const AWinControl: TWinControl; const AText: String); override;
|
class procedure SetText(const AWinControl: TWinControl; const AText: String); override;
|
||||||
// class procedure GetPreferredSize(const AWinControl: TWinControl;
|
// class procedure GetPreferredSize(const AWinControl: TWinControl;
|
||||||
@ -61,8 +61,8 @@ type
|
|||||||
public
|
public
|
||||||
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
||||||
class procedure DestroyHandle(const AWinControl: TWinControl); override;
|
class procedure DestroyHandle(const AWinControl: TWinControl); override;
|
||||||
// class procedure ActiveDefaultButtonChanged(const AButton: TCustomButton); override;
|
|
||||||
class function GetText(const AWinControl: TWinControl; var AText: String): Boolean; override;
|
class function GetText(const AWinControl: TWinControl; var AText: String): Boolean; override;
|
||||||
|
// class procedure SetDefault(const AButton: TCustomButton; ADefault: Boolean); override;
|
||||||
// class procedure SetShortcut(const AButton: TCustomButton; const OldShortcut, NewShortcut: TShortcut); override;
|
// class procedure SetShortcut(const AButton: TCustomButton; const OldShortcut, NewShortcut: TShortcut); override;
|
||||||
class procedure SetText(const AWinControl: TWinControl; const AText: String); override;
|
class procedure SetText(const AWinControl: TWinControl; const AText: String); override;
|
||||||
// class procedure GetPreferredSize(const AWinControl: TWinControl;
|
// class procedure GetPreferredSize(const AWinControl: TWinControl;
|
||||||
@ -147,6 +147,10 @@ class function TQtWSButton.GetText(const AWinControl: TWinControl; var AText: St
|
|||||||
var
|
var
|
||||||
Str: WideString;
|
Str: WideString;
|
||||||
begin
|
begin
|
||||||
|
Result := False;
|
||||||
|
if not WSCheckHandleAllocated(AWincontrol, 'GetText')
|
||||||
|
then Exit;
|
||||||
|
|
||||||
TQtAbstractButton(AWinControl.Handle).Text(@Str);
|
TQtAbstractButton(AWinControl.Handle).Text(@Str);
|
||||||
|
|
||||||
AText := UTF8Encode(Str);
|
AText := UTF8Encode(Str);
|
||||||
@ -163,6 +167,9 @@ class procedure TQtWSButton.SetText(const AWinControl: TWinControl; const AText:
|
|||||||
var
|
var
|
||||||
Str: WideString;
|
Str: WideString;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(AWincontrol, 'SetText')
|
||||||
|
then Exit;
|
||||||
|
|
||||||
Str := UTF8Decode(AText);
|
Str := UTF8Decode(AText);
|
||||||
|
|
||||||
TQtAbstractButton(AWinControl.Handle).SetText(@Str);
|
TQtAbstractButton(AWinControl.Handle).SetText(@Str);
|
||||||
@ -181,9 +188,8 @@ var
|
|||||||
QColor: TQColor;
|
QColor: TQColor;
|
||||||
Color: TColor;
|
Color: TColor;
|
||||||
begin
|
begin
|
||||||
if AWinControl = nil then exit;
|
if not WSCheckHandleAllocated(AWincontrol, 'SetColor')
|
||||||
|
then Exit;
|
||||||
if not AWinControl.HandleAllocated then exit;
|
|
||||||
|
|
||||||
if AWinControl.Color = CLR_INVALID then exit;
|
if AWinControl.Color = CLR_INVALID then exit;
|
||||||
|
|
||||||
@ -261,6 +267,10 @@ class function TQtWSBitBtn.GetText(const AWinControl: TWinControl; var AText: St
|
|||||||
var
|
var
|
||||||
Str: WideString;
|
Str: WideString;
|
||||||
begin
|
begin
|
||||||
|
Result := False;
|
||||||
|
if not WSCheckHandleAllocated(AWincontrol, 'GetText')
|
||||||
|
then Exit;
|
||||||
|
|
||||||
TQtAbstractButton(AWinControl.Handle).Text(@Str);
|
TQtAbstractButton(AWinControl.Handle).Text(@Str);
|
||||||
|
|
||||||
AText := UTF8Encode(Str);
|
AText := UTF8Encode(Str);
|
||||||
@ -278,6 +288,8 @@ class procedure TQtWSBitBtn.SetText(const AWinControl: TWinControl;
|
|||||||
var
|
var
|
||||||
Str: WideString;
|
Str: WideString;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(AWincontrol, 'SetText')
|
||||||
|
then Exit;
|
||||||
Str := UTF8Decode(AText);
|
Str := UTF8Decode(AText);
|
||||||
|
|
||||||
TQtAbstractButton(AWinControl.Handle).SetText(@Str);
|
TQtAbstractButton(AWinControl.Handle).SetText(@Str);
|
||||||
@ -296,9 +308,8 @@ var
|
|||||||
QColor: TQColor;
|
QColor: TQColor;
|
||||||
Color: TColor;
|
Color: TColor;
|
||||||
begin
|
begin
|
||||||
if AWinControl = nil then exit;
|
if not WSCheckHandleAllocated(AWincontrol, 'SetColor')
|
||||||
|
then Exit;
|
||||||
if not AWinControl.HandleAllocated then exit;
|
|
||||||
|
|
||||||
if AWinControl.Color = CLR_INVALID then exit;
|
if AWinControl.Color = CLR_INVALID then exit;
|
||||||
|
|
||||||
|
@ -35,7 +35,8 @@ uses
|
|||||||
////////////////////////////////////////////////////
|
////////////////////////////////////////////////////
|
||||||
Windows, Buttons, Graphics, Controls,
|
Windows, Buttons, Graphics, Controls,
|
||||||
////////////////////////////////////////////////////
|
////////////////////////////////////////////////////
|
||||||
WSControls, WSButtons, WSLCLClasses, Win32WSControls, LCLType;
|
WSProc, WSControls, WSButtons, WSLCLClasses,
|
||||||
|
Win32WSControls, LCLType;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
@ -47,7 +48,7 @@ type
|
|||||||
public
|
public
|
||||||
class function CreateHandle(const AWinControl: TWinControl;
|
class function CreateHandle(const AWinControl: TWinControl;
|
||||||
const AParams: TCreateParams): HWND; override;
|
const AParams: TCreateParams): HWND; override;
|
||||||
class procedure ActiveDefaultButtonChanged(const AButton: TCustomButton); override;
|
class procedure SetDefault(const AButton: TCustomButton; ADefault: Boolean); override;
|
||||||
class procedure SetShortCut(const AButton: TCustomButton; const OldKey, NewKey: word); override;
|
class procedure SetShortCut(const AButton: TCustomButton; const OldKey, NewKey: word); override;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -108,12 +109,14 @@ begin
|
|||||||
Result := Params.Window;
|
Result := Params.Window;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TWin32WSButton.ActiveDefaultButtonChanged(const AButton: TCustomButton);
|
class procedure TWin32WSButton.SetDefault(const AButton: TCustomButton; ADefault: Boolean);
|
||||||
var
|
var
|
||||||
WindowStyle: dword;
|
WindowStyle: dword;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(AButton, 'SetDefault') then Exit;
|
||||||
|
|
||||||
WindowStyle := GetWindowLong(AButton.Handle, GWL_STYLE) and not (BS_DEFPUSHBUTTON or BS_PUSHBUTTON);
|
WindowStyle := GetWindowLong(AButton.Handle, GWL_STYLE) and not (BS_DEFPUSHBUTTON or BS_PUSHBUTTON);
|
||||||
If AButton.Active then
|
if ADefault then
|
||||||
WindowStyle := WindowStyle or BS_DEFPUSHBUTTON
|
WindowStyle := WindowStyle or BS_DEFPUSHBUTTON
|
||||||
else
|
else
|
||||||
WindowStyle := WindowStyle or BS_PUSHBUTTON;
|
WindowStyle := WindowStyle or BS_PUSHBUTTON;
|
||||||
@ -122,6 +125,7 @@ end;
|
|||||||
|
|
||||||
class procedure TWin32WSButton.SetShortCut(const AButton: TCustomButton; const OldKey, NewKey: word);
|
class procedure TWin32WSButton.SetShortCut(const AButton: TCustomButton; const OldKey, NewKey: word);
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(AButton, 'SetShortcut') then Exit;
|
||||||
// TODO: implement me!
|
// TODO: implement me!
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -515,6 +519,7 @@ end;
|
|||||||
class procedure TWin32WSBitBtn.SetBounds(const AWinControl: TWinControl;
|
class procedure TWin32WSBitBtn.SetBounds(const AWinControl: TWinControl;
|
||||||
const ALeft, ATop, AWidth, AHeight: integer);
|
const ALeft, ATop, AWidth, AHeight: integer);
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(AWinControl, 'SetBounds') then Exit;
|
||||||
TWin32WSWinControl.SetBounds(AWinControl, ALeft, ATop, AWidth, AHeight);
|
TWin32WSWinControl.SetBounds(AWinControl, ALeft, ATop, AWidth, AHeight);
|
||||||
if TCustomBitBtn(AWinControl).Spacing = -1 then
|
if TCustomBitBtn(AWinControl).Spacing = -1 then
|
||||||
DrawBitBtnImage(TCustomBitBtn(AWinControl), PChar(AWinControl.Caption));
|
DrawBitBtnImage(TCustomBitBtn(AWinControl), PChar(AWinControl.Caption));
|
||||||
@ -523,6 +528,7 @@ end;
|
|||||||
class procedure TWin32WSBitBtn.SetFont(const AWinControl: TWinControl;
|
class procedure TWin32WSBitBtn.SetFont(const AWinControl: TWinControl;
|
||||||
const AFont: TFont);
|
const AFont: TFont);
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(AWinControl, 'SetFont') then Exit;
|
||||||
TWin32WSWinControl.SetFont(AWinControl, AFont);
|
TWin32WSWinControl.SetFont(AWinControl, AFont);
|
||||||
DrawBitBtnImage(TCustomBitBtn(AWinControl), PChar(AWinControl.Caption));
|
DrawBitBtnImage(TCustomBitBtn(AWinControl), PChar(AWinControl.Caption));
|
||||||
end;
|
end;
|
||||||
@ -530,29 +536,34 @@ end;
|
|||||||
class procedure TWin32WSBitBtn.SetGlyph(const ABitBtn: TCustomBitBtn;
|
class procedure TWin32WSBitBtn.SetGlyph(const ABitBtn: TCustomBitBtn;
|
||||||
const AValue: TBitmap);
|
const AValue: TBitmap);
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ABitBtn, 'SetGlyph') then Exit;
|
||||||
DrawBitBtnImage(ABitBtn, PChar(ABitBtn.Caption));
|
DrawBitBtnImage(ABitBtn, PChar(ABitBtn.Caption));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TWin32WSBitBtn.SetLayout(const ABitBtn: TCustomBitBtn;
|
class procedure TWin32WSBitBtn.SetLayout(const ABitBtn: TCustomBitBtn;
|
||||||
const AValue: TButtonLayout);
|
const AValue: TButtonLayout);
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ABitBtn, 'SetLayout') then Exit;
|
||||||
DrawBitBtnImage(ABitBtn, PChar(ABitBtn.Caption));
|
DrawBitBtnImage(ABitBtn, PChar(ABitBtn.Caption));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TWin32WSBitBtn.SetMargin(const ABitBtn: TCustomBitBtn;
|
class procedure TWin32WSBitBtn.SetMargin(const ABitBtn: TCustomBitBtn;
|
||||||
const AValue: Integer);
|
const AValue: Integer);
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ABitBtn, 'SetMargin') then Exit;
|
||||||
DrawBitBtnImage(ABitBtn, PChar(ABitBtn.Caption));
|
DrawBitBtnImage(ABitBtn, PChar(ABitBtn.Caption));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TWin32WSBitBtn.SetSpacing(const ABitBtn: TCustomBitBtn;
|
class procedure TWin32WSBitBtn.SetSpacing(const ABitBtn: TCustomBitBtn;
|
||||||
const AValue: Integer);
|
const AValue: Integer);
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ABitBtn, 'SetSpacing') then Exit;
|
||||||
DrawBitBtnImage(ABitBtn, PChar(ABitBtn.Caption));
|
DrawBitBtnImage(ABitBtn, PChar(ABitBtn.Caption));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TWin32WSBitBtn.SetText(const AWinControl: TWinControl; const AText: string);
|
class procedure TWin32WSBitBtn.SetText(const AWinControl: TWinControl; const AText: string);
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(AWinControl, 'SetText') then Exit;
|
||||||
DrawBitBtnImage(TCustomBitBtn(AWinControl), PChar(AText));
|
DrawBitBtnImage(TCustomBitBtn(AWinControl), PChar(AText));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -43,8 +43,8 @@ type
|
|||||||
public
|
public
|
||||||
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
||||||
class procedure DestroyHandle(const AWinControl: TWinControl); override;
|
class procedure DestroyHandle(const AWinControl: TWinControl); override;
|
||||||
// class procedure ActiveDefaultButtonChanged(const AButton: TCustomButton); override;
|
|
||||||
class function GetText(const AWinControl: TWinControl; var AText: String): Boolean; override;
|
class function GetText(const AWinControl: TWinControl; var AText: String): Boolean; override;
|
||||||
|
// class procedure SetDefault(const AButton: TCustomButton; ADefault: Boolean); override;
|
||||||
// class procedure SetShortcut(const AButton: TCustomButton; const OldShortcut, NewShortcut: TShortcut); override;
|
// class procedure SetShortcut(const AButton: TCustomButton; const OldShortcut, NewShortcut: TShortcut); override;
|
||||||
class procedure SetText(const AWinControl: TWinControl; const AText: String); override;
|
class procedure SetText(const AWinControl: TWinControl; const AText: String); override;
|
||||||
// class procedure GetPreferredSize(const AWinControl: TWinControl;
|
// class procedure GetPreferredSize(const AWinControl: TWinControl;
|
||||||
|
@ -53,7 +53,7 @@ type
|
|||||||
{ TWSButton }
|
{ TWSButton }
|
||||||
|
|
||||||
TWSButton = class(TWSButtonControl)
|
TWSButton = class(TWSButtonControl)
|
||||||
class procedure ActiveDefaultButtonChanged(const AButton: TCustomButton); virtual;
|
class procedure SetDefault(const AButton: TCustomButton; ADefault: Boolean); virtual;
|
||||||
class procedure SetShortCut(const AButton: TCustomButton; const OldShortCut, NewShortCut: TShortCut); virtual;
|
class procedure SetShortCut(const AButton: TCustomButton; const OldShortCut, NewShortCut: TShortCut); virtual;
|
||||||
end;
|
end;
|
||||||
TWSButtonClass = class of TWSButton;
|
TWSButtonClass = class of TWSButton;
|
||||||
@ -80,7 +80,7 @@ implementation
|
|||||||
|
|
||||||
{ TWSButton }
|
{ TWSButton }
|
||||||
|
|
||||||
class procedure TWSButton.ActiveDefaultButtonChanged(const AButton: TCustomButton);
|
class procedure TWSButton.SetDefault(const AButton: TCustomButton; ADefault: Boolean);
|
||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user