mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-13 08:09:22 +02:00
gtk: move CreateComponent code for TStatusBar to CreateHandle and FinishComponentCreate to SetCallbacks
git-svn-id: trunk@13469 -
This commit is contained in:
parent
b50f0bcf7a
commit
20c2a16ecc
@ -149,7 +149,6 @@ type
|
|||||||
function CreateComponentWidget(Sender: TObject; ACompStyle: Integer; const ACaption: String
|
function CreateComponentWidget(Sender: TObject; ACompStyle: Integer; const ACaption: String
|
||||||
): PGtkWidget; virtual; // temporary solution till all are created through createhandle
|
): PGtkWidget; virtual; // temporary solution till all are created through createhandle
|
||||||
function CreateAPIWidget(AWinControl: TWinControl): PGtkWidget;
|
function CreateAPIWidget(AWinControl: TWinControl): PGtkWidget;
|
||||||
function CreateStatusBar(StatusBar: TObject): PGtkWidget;
|
|
||||||
function OldCreateStatusBarPanel(StatusBar: TObject; Index: integer): PGtkWidget;
|
function OldCreateStatusBarPanel(StatusBar: TObject; Index: integer): PGtkWidget;
|
||||||
function CreateSimpleClientAreaWidget(Sender: TObject;
|
function CreateSimpleClientAreaWidget(Sender: TObject;
|
||||||
NotOnParentsClientArea: boolean): PGtkWidget;
|
NotOnParentsClientArea: boolean): PGtkWidget;
|
||||||
|
@ -4564,21 +4564,6 @@ begin
|
|||||||
BorderStyleShadowMap[TCustomControl(AWinControl).BorderStyle]);
|
BorderStyleShadowMap[TCustomControl(AWinControl).BorderStyle]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
|
||||||
function TGtkWidgetSet.CreateStatusBar(StatusBar: TObject): PGtkWidget;
|
|
||||||
|
|
||||||
Create a TStatusBar widget set
|
|
||||||
------------------------------------------------------------------------------}
|
|
||||||
function TGtkWidgetSet.CreateStatusBar(StatusBar: TObject): PGtkWidget;
|
|
||||||
begin
|
|
||||||
{$IFDEF OldStatusBar}
|
|
||||||
Result:=gtk_statusbar_new;
|
|
||||||
{$ELSE}
|
|
||||||
Result:=gtk_hbox_new(false,0);
|
|
||||||
UpdateStatusBarPanels(StatusBar,Result);
|
|
||||||
{$ENDIF}
|
|
||||||
end;
|
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
function TGtkWidgetSet.CreateStatusBarPanel(StatusBar: TObject; Index: integer
|
function TGtkWidgetSet.CreateStatusBarPanel(StatusBar: TObject; Index: integer
|
||||||
): PGtkWidget;
|
): PGtkWidget;
|
||||||
@ -4753,11 +4738,6 @@ begin
|
|||||||
P := gtk_progress_bar_new_with_adjustment (PGtkAdjustment (TempWidget));
|
P := gtk_progress_bar_new_with_adjustment (PGtkAdjustment (TempWidget));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
csStatusBar :
|
|
||||||
begin
|
|
||||||
p:=CreateStatusBar(Sender);
|
|
||||||
end;
|
|
||||||
|
|
||||||
csTrackBar:
|
csTrackBar:
|
||||||
with (TCustomTrackBar (Sender)) do
|
with (TCustomTrackBar (Sender)) do
|
||||||
begin
|
begin
|
||||||
|
@ -45,7 +45,10 @@ type
|
|||||||
{ TGtkWSStatusBar }
|
{ TGtkWSStatusBar }
|
||||||
|
|
||||||
TGtkWSStatusBar = class(TWSStatusBar)
|
TGtkWSStatusBar = class(TWSStatusBar)
|
||||||
|
protected
|
||||||
|
class procedure SetCallbacks(const AWidget: PGtkWidget; const AWidgetInfo: PWidgetInfo); virtual;
|
||||||
public
|
public
|
||||||
|
class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): TLCLIntfHandle; override;
|
||||||
class procedure PanelUpdate(const AStatusBar: TStatusBar; PanelIndex: integer); override;
|
class procedure PanelUpdate(const AStatusBar: TStatusBar; PanelIndex: integer); override;
|
||||||
class procedure SetPanelText(const AStatusBar: TStatusBar; PanelIndex: integer); override;
|
class procedure SetPanelText(const AStatusBar: TStatusBar; PanelIndex: integer); override;
|
||||||
class procedure Update(const AStatusBar: TStatusBar); override;
|
class procedure Update(const AStatusBar: TStatusBar); override;
|
||||||
@ -389,6 +392,28 @@ end;
|
|||||||
|
|
||||||
{ TGtkWSStatusBar }
|
{ TGtkWSStatusBar }
|
||||||
|
|
||||||
|
class procedure TGtkWSStatusBar.SetCallbacks(const AWidget: PGtkWidget;
|
||||||
|
const AWidgetInfo: PWidgetInfo);
|
||||||
|
begin
|
||||||
|
TGtkWSWinControl.SetCallbacks(PGtkObject(AWidget), TComponent(AWidgetInfo^.LCLObject));
|
||||||
|
end;
|
||||||
|
|
||||||
|
class function TGtkWSStatusBar.CreateHandle(const AWinControl: TWinControl;
|
||||||
|
const AParams: TCreateParams): TLCLIntfHandle;
|
||||||
|
var
|
||||||
|
Widget: PGtkWidget;
|
||||||
|
WidgetInfo: PWidgetInfo;
|
||||||
|
begin
|
||||||
|
Widget := gtk_hbox_new(false,0);
|
||||||
|
UpdateStatusBarPanels(AWinControl, Widget);
|
||||||
|
Result := TLCLIntfHandle(PtrUInt(Widget));
|
||||||
|
{$IFDEF DebugLCLComponents}
|
||||||
|
DebugGtkWidgets.MarkCreated(Widget, dbgsName(AWinControl));
|
||||||
|
{$ENDIF}
|
||||||
|
WidgetInfo := CreateWidgetInfo(Pointer(Result), AWinControl, AParams);
|
||||||
|
SetCallbacks(Widget, WidgetInfo);
|
||||||
|
end;
|
||||||
|
|
||||||
class procedure TGtkWSStatusBar.PanelUpdate(const AStatusBar: TStatusBar;
|
class procedure TGtkWSStatusBar.PanelUpdate(const AStatusBar: TStatusBar;
|
||||||
PanelIndex: integer);
|
PanelIndex: integer);
|
||||||
var
|
var
|
||||||
|
@ -188,6 +188,7 @@ end;
|
|||||||
class procedure TGtkWSScrollingWinControl.ScrollBy(const AWinControl: TScrollingWinControl;
|
class procedure TGtkWSScrollingWinControl.ScrollBy(const AWinControl: TScrollingWinControl;
|
||||||
const DeltaX, DeltaY: integer);
|
const DeltaX, DeltaY: integer);
|
||||||
begin
|
begin
|
||||||
|
{$note implement me}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user