mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-09 12:35:55 +02:00
fixed gtk2 intf from Peter Vreman
git-svn-id: trunk@6667 -
This commit is contained in:
parent
9a406a352b
commit
94f6a1142d
@ -19,10 +19,10 @@
|
||||
<Filename Value="spriteexample.lpr"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="SpriteExample"/>
|
||||
<UsageCount Value="21"/>
|
||||
<UsageCount Value="22"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
<CursorPos X="11" Y="82"/>
|
||||
<CursorPos X="12" Y="80"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<Filename Value="playground.pas"/>
|
||||
<ComponentName Value="PlayGroundForm"/>
|
||||
@ -31,7 +31,7 @@
|
||||
<ResourceFilename Value="playground.lrs"/>
|
||||
<TopLine Value="63"/>
|
||||
<UnitName Value="PlayGround"/>
|
||||
<UsageCount Value="21"/>
|
||||
<UsageCount Value="22"/>
|
||||
</Unit1>
|
||||
</Units>
|
||||
<PublishOptions>
|
||||
|
@ -379,7 +379,7 @@ begin
|
||||
EventTrace('toggled', data);
|
||||
if LockOnChange(PgtkObject(Widget),0) > 0 then Exit;
|
||||
|
||||
if GtkWidgetIsA(Widget,GTK_TOGGLE_BUTTON_TYPE) then begin
|
||||
if GtkWidgetIsA(Widget,gtk_toggle_button_get_type) then begin
|
||||
gtk_object_set_data(PgtkObject(Widget), 'Grayed', nil);
|
||||
end;
|
||||
|
||||
@ -2491,7 +2491,11 @@ begin
|
||||
Assert(False, Format('Trace:[GTKHScrollCB] Value: %d', [RoundToInt(Adjustment^.Value)]));
|
||||
Scroll := PgtkRange(gtk_object_get_data(PGTKObject(Adjustment), 'ScrollBar'));
|
||||
if Scroll=nil then exit;
|
||||
{$ifdef gtk1}
|
||||
RangeClass := PgtkRangeClass(PgtkObject(Scroll)^.klass);
|
||||
{$else}
|
||||
RangeClass := GTK_OBJECT_GET_CLASS(Scroll);
|
||||
{$endif}
|
||||
UpdatePolicy := gtk_range_get_update_policy(Scroll);
|
||||
//X := integer(gtk_object_get_data(PGtkObject(Scroll), 'FinalEvent'));
|
||||
//WriteLn('FINAL EVENT: ', X);
|
||||
@ -2506,6 +2510,7 @@ begin
|
||||
with Msg do begin
|
||||
pos := Round(Adjustment^.Value);
|
||||
ScrollBar := HWND(Scroll);
|
||||
{$ifdef gtk1}
|
||||
case Scroll_type(Scroll^) of
|
||||
GTK_SCROLL_NONE:
|
||||
begin
|
||||
@ -2534,6 +2539,9 @@ begin
|
||||
ScrollCode := SB_THUMBPOSITION;
|
||||
end;
|
||||
end;
|
||||
{$else}
|
||||
{$warning gtk2 TODO}
|
||||
{$endif}
|
||||
end;
|
||||
DeliverMessage(Data, Msg);
|
||||
end;
|
||||
@ -2551,7 +2559,11 @@ begin
|
||||
Assert(False, Format('Trace:[GTKVScrollCB] Value: %d', [RoundToInt(Adjustment^.Value)]));
|
||||
Scroll := PgtkRange(gtk_object_get_data(PGTKObject(Adjustment), 'ScrollBar'));
|
||||
if (Scroll=nil) then exit;
|
||||
{$ifdef gtk1}
|
||||
RangeClass := PgtkRangeClass(PgtkObject(Scroll)^.klass);
|
||||
{$else}
|
||||
RangeClass := GTK_OBJECT_GET_CLASS(Scroll);
|
||||
{$endif}
|
||||
UpdatePolicy := gtk_range_get_update_policy(Scroll);
|
||||
//UpdatePolicy := TGtkUpdateType( gtk_object_get_data(PgtkObject(Scroll), 'UpdatePolicy'));
|
||||
//WriteLn('FINAL EVENT: ', integer(gtk_object_get_data(PGtkObject(Scroll), 'FinalEvent')));
|
||||
@ -2566,6 +2578,7 @@ begin
|
||||
with Msg do begin
|
||||
pos := Round(Adjustment^.Value);
|
||||
ScrollBar := HWND(Scroll);
|
||||
{$ifdef gtk1}
|
||||
case Scroll_type(Scroll^) of
|
||||
GTK_SCROLL_NONE:
|
||||
begin
|
||||
@ -2594,6 +2607,9 @@ begin
|
||||
ScrollCode := SB_THUMBPOSITION;
|
||||
end;
|
||||
end;
|
||||
{$else}
|
||||
{$warning gtk2 TODO}
|
||||
{$endif}
|
||||
end;
|
||||
DeliverMessage(Data, Msg);
|
||||
end;
|
||||
@ -2969,6 +2985,9 @@ end;
|
||||
{ =============================================================================
|
||||
|
||||
$Log$
|
||||
Revision 1.260 2005/01/22 23:53:43 mattias
|
||||
fixed gtk2 intf from Peter Vreman
|
||||
|
||||
Revision 1.259 2005/01/22 22:26:16 mattias
|
||||
added sprite example
|
||||
|
||||
|
@ -814,8 +814,12 @@ begin
|
||||
Result:=Result+' rc_style=nil';
|
||||
end else begin
|
||||
Result:=Result+' rc_style=[';
|
||||
{$IFDEF GTK1}
|
||||
Result:=Result+ARCStyle^.font_name+',';
|
||||
Result:=Result+ARCStyle^.fontset_name+',';
|
||||
{$ELSE GTK1}
|
||||
{$WARNING TODO find GTK2 font naming}
|
||||
{$ENDIF GTK1}
|
||||
Result:=Result+']';
|
||||
end;
|
||||
end;
|
||||
@ -7359,13 +7363,20 @@ begin
|
||||
gtk_widget_modify_style(Widget,RCStyle);
|
||||
|
||||
if FreeFontName then begin
|
||||
{$ifdef gtk1}
|
||||
g_free(RCStyle^.font_name);
|
||||
RCStyle^.font_name:=nil;
|
||||
{$else}
|
||||
pango_font_description_free(RCStyle^.font_desc);
|
||||
RCStyle^.font_desc:=nil;
|
||||
{$endif}
|
||||
end;
|
||||
{$ifdef gtk1}
|
||||
if FreeFontSetName then begin
|
||||
g_free(RCStyle^.fontset_name);
|
||||
RCStyle^.fontset_name:=nil;
|
||||
end;
|
||||
{$endif}
|
||||
//DebugLn('UpdateWidgetStyleOfControl END ',DbgSName(AWinControl),' Widget=',GetWidgetDebugReport(Widget),' Style=',GetWidgetStyleReport(Widget));
|
||||
gtk_rc_style_unref(RCStyle);
|
||||
end;
|
||||
@ -7912,6 +7923,9 @@ end;
|
||||
{ =============================================================================
|
||||
|
||||
$Log$
|
||||
Revision 1.329 2005/01/22 23:53:43 mattias
|
||||
fixed gtk2 intf from Peter Vreman
|
||||
|
||||
Revision 1.328 2005/01/16 11:40:10 mattias
|
||||
fixed TGtkWidgetSet.ExtSelectClipRGN for DCOrigin
|
||||
|
||||
|
@ -4060,7 +4060,7 @@ begin
|
||||
Result := 0;
|
||||
end else begin
|
||||
gdk_gc_get_values(GC, @Values);
|
||||
result := GdkFunctionToROP2Mode( Values.thefunction )
|
||||
result := GdkFunctionToROP2Mode( Values.{$ifdef gtk1}thefunction{$else}_function{$endif} )
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
@ -8857,6 +8857,9 @@ end;
|
||||
{ =============================================================================
|
||||
|
||||
$Log$
|
||||
Revision 1.388 2005/01/22 23:53:43 mattias
|
||||
fixed gtk2 intf from Peter Vreman
|
||||
|
||||
Revision 1.387 2005/01/17 16:42:35 mattias
|
||||
improved TLabel autosizing
|
||||
|
||||
|
@ -165,7 +165,11 @@ function GTKAPIWidgetClient_FocusOut(AWidget: PGTKWidget;
|
||||
Event: PGdkEventFocus): GTKEventResult; cdecl; forward;
|
||||
|
||||
procedure GTKAPIWidgetClient_ClassInit(theClass: Pointer);cdecl; forward;
|
||||
{$ifdef gtk2}
|
||||
procedure GTKAPIWidgetClient_Init(Client:PGTypeInstance; theClass: Pointer); cdecl; forward;
|
||||
{$else}
|
||||
procedure GTKAPIWidgetClient_Init(Client, theClass: Pointer); cdecl; forward;
|
||||
{$endif}
|
||||
function GTKAPIWidgetClient_GetType: Guint; forward;
|
||||
function GTKAPIWidgetClient_New: PGTKWidget; forward;
|
||||
|
||||
@ -268,7 +272,11 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
{$ifdef gtk2}
|
||||
procedure GTKAPIWidgetClient_Init(Client:PGTypeInstance; theClass: Pointer); cdecl;
|
||||
{$else}
|
||||
procedure GTKAPIWidgetClient_Init(Client, theClass: Pointer); cdecl;
|
||||
{$endif}
|
||||
// Client: PGTKAPIWidgetClient
|
||||
// theClass: PGTKAPIWidgetClientClass
|
||||
begin
|
||||
@ -922,7 +930,11 @@ begin
|
||||
WidgetClass^.focus_out_event := @GTKAPIWidget_FocusOut;
|
||||
end;
|
||||
|
||||
{$ifdef gtk2}
|
||||
procedure GTKAPIWidget_Init(waw:PGTypeInstance; theClass: Pointer); cdecl;
|
||||
{$else}
|
||||
procedure GTKAPIWidget_Init(waw, theClass: Pointer); cdecl;
|
||||
{$endif}
|
||||
// waw: PGTKAPIWidget;
|
||||
// theClass: PGTKAPIWidgetClass
|
||||
var
|
||||
@ -1110,6 +1122,9 @@ end.
|
||||
{ =============================================================================
|
||||
|
||||
$Log$
|
||||
Revision 1.66 2005/01/22 23:53:43 mattias
|
||||
fixed gtk2 intf from Peter Vreman
|
||||
|
||||
Revision 1.65 2004/08/30 15:47:29 mazen
|
||||
* Fix parameters in function call
|
||||
|
||||
|
@ -504,13 +504,13 @@ begin
|
||||
if Handle<>0 then
|
||||
begin
|
||||
Widget:=GetWidgetInfo(Pointer(Handle),True)^.CoreWidget;
|
||||
if GtkWidgetIsA(Widget,GTK_LIST_TYPE) then begin
|
||||
if GtkWidgetIsA(Widget,gtk_list_get_type) then begin
|
||||
if AIndex >= 0 then
|
||||
begin
|
||||
gtk_list_select_item(PGtkList(Widget), AIndex)
|
||||
end else
|
||||
gtk_list_unselect_all(PGtkList(Widget));
|
||||
end else if GtkWidgetIsA(Widget,GTK_CLIST_TYPE) then begin
|
||||
end else if GtkWidgetIsA(Widget,gtk_clist_get_type) then begin
|
||||
gtk_clist_select_row(PGtkCList(Widget), AIndex, 1); // column
|
||||
end else
|
||||
raise Exception.Create('');
|
||||
@ -953,9 +953,17 @@ begin
|
||||
border_width:=(PGtkContainer(Widget)^.flag0 and bm_TGtkContainer_border_width)
|
||||
shr bp_TGtkContainer_border_width;
|
||||
PreferredWidth := (border_width + gtk_widget_get_xthickness(Widget)) * 2
|
||||
{$ifdef gtk1}
|
||||
+PGtkFrame(Widget)^.label_width;
|
||||
PreferredHeight := Max(PGtkFrame(Widget)^.label_height,
|
||||
gtk_widget_get_ythickness(Widget))
|
||||
{$else}
|
||||
+gtk_widget_get_xthickness(PGtkFrame(Widget)^.label_widget);
|
||||
{$endif}
|
||||
PreferredHeight := Max(gtk_widget_get_ythickness(Widget),
|
||||
{$ifdef gtk1}
|
||||
PGtkFrame(Widget)^.label_height)
|
||||
{$else}
|
||||
gtk_widget_get_ythickness(PGtkFrame(Widget)^.label_widget))
|
||||
{$endif}
|
||||
+ gtk_widget_get_ythickness(Widget)
|
||||
+ 2*border_width;
|
||||
//debugln('TGtkWSCustomGroupBox.GetPreferredSize ',DbgSName(AWinControl),' PreferredWidth=',dbgs(PreferredWidth),' PreferredHeight=',dbgs(PreferredHeight));
|
||||
|
@ -56,11 +56,11 @@ type
|
||||
//function IntSendMessage3(LM_Message : Integer; Sender : TObject; data : pointer) : integer; override;
|
||||
function LoadStockPixmap(StockID: longint) : HBitmap; override;
|
||||
procedure SetCallback(const AMsg: LongInt; const AGTKObject: PGTKObject; const ALCLObject: TObject);override;
|
||||
procedure SetLabel(Sender : TObject; Data : Pointer);
|
||||
//procedure SetLabel(Sender : TObject; Data : Pointer);
|
||||
//function SetProperties(Sender : TObject) : integer; override;
|
||||
procedure SetSelectionMode(Sender: TObject; Widget: PGtkWidget;
|
||||
MultiSelect, ExtendedSelect: boolean); override;
|
||||
function SetTopIndex(Sender: TObject; NewTopIndex: integer): integer; override;
|
||||
//function SetTopIndex(Sender: TObject; NewTopIndex: integer): integer; override;
|
||||
procedure UpdateDCTextMetric(DC: TDeviceContext); override;
|
||||
public
|
||||
function BeginPaint(Handle: hWnd; Var PS : TPaintStruct) : hdc; override;
|
||||
@ -594,6 +594,9 @@ end.
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.36 2005/01/22 23:53:43 mattias
|
||||
fixed gtk2 intf from Peter Vreman
|
||||
|
||||
Revision 1.35 2004/09/30 10:35:50 mazen
|
||||
* Fix compile probelem under GTK2 related to
|
||||
THandle <--> Pointer conversion
|
||||
|
@ -965,6 +965,7 @@ begin
|
||||
Result := HBitmap(Pixmap);
|
||||
end;
|
||||
|
||||
(*
|
||||
{------------------------------------------------------------------------------
|
||||
Method: TGtk2WidgetSet.SetLabel
|
||||
Params: sender - the calling object
|
||||
@ -1059,6 +1060,8 @@ begin
|
||||
end;
|
||||
Assert(False, Format('trace: [TGtk2WidgetSet.SetLabel] %s --> END', [Sender.ClassName]));
|
||||
end;
|
||||
*)
|
||||
|
||||
|
||||
{------------------------------------------------------------------------------
|
||||
Method: TGtk2WidgetSet.SetProperties
|
||||
@ -1200,6 +1203,7 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
(*
|
||||
{------------------------------------------------------------------------------
|
||||
function TGtk2WidgetSet.SetTopIndex(Sender: TObject; NewTopIndex: integer
|
||||
): integer;
|
||||
@ -1241,6 +1245,7 @@ begin
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
*)
|
||||
|
||||
{------------------------------------------------------------------------------
|
||||
procedure TGtk2WidgetSet.UpdateDCTextMetric(DC: TDeviceContext);
|
||||
@ -1375,6 +1380,9 @@ end;
|
||||
{ =============================================================================
|
||||
|
||||
$Log$
|
||||
Revision 1.20 2005/01/22 23:53:43 mattias
|
||||
fixed gtk2 intf from Peter Vreman
|
||||
|
||||
Revision 1.19 2004/09/30 10:35:50 mazen
|
||||
* Fix compile probelem under GTK2 related to
|
||||
THandle <--> Pointer conversion
|
||||
|
Loading…
Reference in New Issue
Block a user