diff options
Diffstat (limited to 'libgtk_kylix/GTKStdCtrls.pas')
| -rw-r--r-- | libgtk_kylix/GTKStdCtrls.pas | 94 |
1 files changed, 44 insertions, 50 deletions
diff --git a/libgtk_kylix/GTKStdCtrls.pas b/libgtk_kylix/GTKStdCtrls.pas index 8f53f50..33ca7a6 100644 --- a/libgtk_kylix/GTKStdCtrls.pas +++ b/libgtk_kylix/GTKStdCtrls.pas @@ -24,9 +24,7 @@ unit GTKStdCtrls; interface -uses gtk2, gdk2, glib2, Classes, GTKControls, GTKConsts, GTKClasses; - // Quick jump: QForms QControls QStdCtrls - +uses gtk2, glib2, lazglib2, lazgobject2, Classes, GTKControls, GTKConsts, GTKClasses; type @@ -288,10 +286,6 @@ procedure TGTKButton_OnClick(button: PGtkButton; user_data: Pgpointer); cdecl; (********************************************************************************************************************************) implementation -uses GTKUtils; - -(********************************************************************************************************************************) -(********************************************************************************************************************************) procedure TGTKButton_OnClick(button: PGtkButton; user_data: Pgpointer); cdecl; begin if Assigned(TGTKButton(user_data).FOnClick) then TGTKButton(user_data).FOnClick(TGTKButton(user_data)); @@ -302,8 +296,8 @@ begin inherited Create(AOwner); FOnClick := nil; if ClassName = 'TGTKButton' then begin - FWidget := gtk_button_new_with_mnemonic(StringToPgchar(SCDefaultButtonCaption)); - g_signal_connect(PGtkObject(FWidget), 'clicked', G_CALLBACK(@TGTKButton_OnClick), Self); + FWidget := gtk_button_new_with_mnemonic(PChar(SCDefaultButtonCaption)); + g_signal_connect_data(PGObject(FWidget), 'clicked', TGCallback(@TGTKButton_OnClick), Self, nil, G_CONNECT_DEFAULT); Show; end; end; @@ -314,7 +308,7 @@ begin FOnClick := nil; if ClassName = 'TGTKButton' then begin FWidget := gtk_button_new_from_stock(StockID); - g_signal_connect(PGtkObject(FWidget), 'clicked', G_CALLBACK(@TGTKButton_OnClick), Self); + g_signal_connect_data(PGObject(FWidget), 'clicked', TGCallback(@TGTKButton_OnClick), Self, nil, G_CONNECT_DEFAULT); Show; end; end; @@ -326,12 +320,12 @@ end; function TGTKButton.GetCaption: string; begin - Result := PgcharToString(gtk_label_get_text(PGtkLabel(ChildControl))); + Result := String(gtk_label_get_text(PGtkLabel(ChildControl))); end; procedure TGTKButton.SetCaption(Value: string); begin - gtk_label_set_text_with_mnemonic(PGtkLabel(ChildControl), StringToPgchar(Value)); + gtk_label_set_text_with_mnemonic(PGtkLabel(ChildControl), PChar(Value)); end; function TGTKButton.GetUseStock: boolean; @@ -385,11 +379,11 @@ procedure _gtk_misc_get_alignment(misc:PGtkMisc; xalign:Pgfloat; yalign:Pgfloat) procedure _gtk_misc_get_padding(misc:PGtkMisc; xpad:Pgint; ypad:Pgint); cdecl; external gtklib name 'gtk_misc_get_padding'; function TGTKMisc.GetXAlign: Single; -var xalign: gfloat; +var axalign: gfloat; begin - xalign := 0.0; - _gtk_misc_get_alignment(PGtkMisc(FWidget), @xalign, nil); - Result := xalign; + axalign := 0.0; + _gtk_misc_get_alignment(PGtkMisc(FWidget), @axalign, nil); + Result := axalign; end; procedure TGTKMisc.SetXAlign(Value: Single); @@ -398,11 +392,11 @@ begin end; function TGTKMisc.GetYAlign: Single; -var yalign: gfloat; +var ayalign: gfloat; begin - yalign := 0.0; - _gtk_misc_get_alignment(PGtkMisc(FWidget), nil, @yalign); - Result := yalign; + ayalign := 0.0; + _gtk_misc_get_alignment(PGtkMisc(FWidget), nil, @ayalign); + Result := ayalign; end; procedure TGTKMisc.SetYAlign(Value: Single); @@ -466,12 +460,12 @@ end; function TGTKLabel.GetCaption: string; begin - Result := PgcharToString(gtk_label_get_text(PGtkLabel(FWidget))); + Result := String(gtk_label_get_text(PGtkLabel(FWidget))); end; procedure TGTKLabel.SetCaption(Value: string); begin - gtk_label_set_text(PGtkLabel(FWidget), StringToPgchar(Value)); + gtk_label_set_text(PGtkLabel(FWidget), PChar(Value)); end; function TGTKLabel.GetAlignment: TGTKAlignment; @@ -546,8 +540,8 @@ begin inherited Create(AOwner); FOnToggled := nil; if ClassName = 'TGTKToggleButton' then begin - FWidget := gtk_toggle_button_new_with_label(StringToPgchar(SCDefaultToggleButtonCaption)); - g_signal_connect(PGtkObject(FWidget), 'toggled', G_CALLBACK(@TGTKToggleButton_OnToggled), Self); + FWidget := gtk_toggle_button_new_with_label(PChar(SCDefaultToggleButtonCaption)); + g_signal_connect_data(PGObject(FWidget), 'toggled', TGCallback(@TGTKToggleButton_OnToggled), Self, nil, G_CONNECT_DEFAULT); Show; end; end; @@ -559,12 +553,12 @@ end; function TGTKToggleButton.GetCaption: string; begin - Result := PgcharToString(gtk_label_get_text(PGtkLabel(ChildControl))); + Result := String(gtk_label_get_text(PGtkLabel(ChildControl))); end; procedure TGTKToggleButton.SetCaption(Value: string); begin - gtk_label_set_text(PGtkLabel(ChildControl), StringToPgchar(Value)); + gtk_label_set_text(PGtkLabel(ChildControl), PChar(Value)); end; function TGTKToggleButton.GetChecked: boolean; @@ -603,8 +597,8 @@ constructor TGTKCheckButton.Create(AOwner: TComponent); begin inherited Create(AOwner); if ClassName = 'TGTKCheckButton' then begin - FWidget := gtk_check_button_new_with_mnemonic(StringToPgchar(SCDefaultCheckButtonCaption)); - g_signal_connect(PGtkObject(FWidget), 'toggled', G_CALLBACK(@TGTKToggleButton_OnToggled), Self); + FWidget := gtk_check_button_new_with_mnemonic(PChar(SCDefaultCheckButtonCaption)); + g_signal_connect_data(PGObject(FWidget), 'toggled', TGCallback(@TGTKToggleButton_OnToggled), Self, nil, G_CONNECT_DEFAULT); Show; end; end; @@ -613,8 +607,8 @@ constructor TGTKCheckButton.CreateWithLabel(AOwner: TComponent; const ALabel: st begin inherited Create(AOwner); if ClassName = 'TGTKCheckButton' then begin - FWidget := gtk_check_button_new_with_mnemonic(StringToPgchar(ALabel)); - g_signal_connect(PGtkObject(FWidget), 'toggled', G_CALLBACK(@TGTKToggleButton_OnToggled), Self); + FWidget := gtk_check_button_new_with_mnemonic(PChar(ALabel)); + g_signal_connect_data(PGObject(FWidget), 'toggled', TGCallback(@TGTKToggleButton_OnToggled), Self, nil, G_CONNECT_DEFAULT); Show; end; end; @@ -630,8 +624,8 @@ constructor TGTKRadioButton.Create(AOwner: TComponent); begin inherited Create(AOwner); if ClassName = 'TGTKRadioButton' then begin - FWidget := gtk_radio_button_new_with_label(nil, StringToPgchar(SCDefaultRadioButtonCaption)); - g_signal_connect(PGtkObject(FWidget), 'toggled', G_CALLBACK(@TGTKToggleButton_OnToggled), Self); + FWidget := gtk_radio_button_new_with_label(nil, PChar(SCDefaultRadioButtonCaption)); + g_signal_connect_data(PGObject(FWidget), 'toggled', TGCallback(@TGTKToggleButton_OnToggled), Self, nil, G_CONNECT_DEFAULT); Show; end; end; @@ -640,8 +634,8 @@ constructor TGTKRadioButton.CreateWithLabel(AOwner: TComponent; const ALabel: st begin inherited Create(AOwner); if ClassName = 'TGTKRadioButton' then begin - FWidget := gtk_radio_button_new_with_mnemonic(nil, StringToPgchar(ALabel)); - g_signal_connect(PGtkObject(FWidget), 'toggled', G_CALLBACK(@TGTKToggleButton_OnToggled), Self); + FWidget := gtk_radio_button_new_with_mnemonic(nil, PChar(ALabel)); + g_signal_connect_data(PGObject(FWidget), 'toggled', TGCallback(@TGTKToggleButton_OnToggled), Self, nil, G_CONNECT_DEFAULT); Show; end; end; @@ -662,7 +656,7 @@ end; constructor TGTKFrame.Create(AOwner: TComponent); begin inherited Create(AOwner); - FWidget := gtk_frame_new(StringToPgchar(SCDefaultFrameCaption)); + FWidget := gtk_frame_new(PChar(SCDefaultFrameCaption)); Show; end; @@ -680,12 +674,12 @@ end; function TGTKFrame.GetCaption: string; begin - Result := PgcharToString(gtk_frame_get_label(PGtkFrame(FWidget))); + Result := String(gtk_frame_get_label(PGtkFrame(FWidget))); end; procedure TGTKFrame.SetCaption(Value: string); begin - gtk_label_set_text(PGtkLabel(gtk_frame_get_label_widget(PGtkFrame(FWidget))), StringToPgchar(Value)); + gtk_label_set_text(PGtkLabel(gtk_frame_get_label_widget(PGtkFrame(FWidget))), PChar(Value)); end; function TGTKFrame.GetShadowType: TGTKShadowType; @@ -750,7 +744,7 @@ procedure TGTKEditable.InsertText(AText: string; Position: integer); var pos: gint; begin pos := Position; - gtk_editable_insert_text(PGtkEditable(FWidget), StringToPgchar(AText), Length(AText), @pos); + gtk_editable_insert_text(PGtkEditable(FWidget), PChar(AText), Length(AText), @pos); end; procedure TGTKEditable.DeleteText(StartPosition, EndPosition: integer); @@ -760,7 +754,7 @@ end; function TGTKEditable.GetChars(StartPosition, EndPosition: integer): string; begin - Result := PgcharToString(gtk_editable_get_chars(PGtkEditable(FWidget), StartPosition, EndPosition)); + Result := String(gtk_editable_get_chars(PGtkEditable(FWidget), StartPosition, EndPosition)); end; procedure TGTKEditable.SelectRegion(StartPosition, EndPosition: integer); @@ -786,7 +780,7 @@ begin FLinked := False; FWidget := gtk_entry_new; Show; - g_signal_connect(PGtkObject(FWidget), 'changed', G_CALLBACK(@TGTKEditable_Changed), Self); + g_signal_connect_data(PGObject(FWidget), 'changed', TGCallback(@TGTKEditable_Changed), Self, nil, G_CONNECT_DEFAULT); end; constructor TGTKEntry.CreateFromWidget(AOwner: TComponent; Widget: PGtkWidget); @@ -794,7 +788,7 @@ begin inherited Create(AOwner); FLinked := True; FWidget := Widget; - g_signal_connect(PGtkObject(FWidget), 'changed', G_CALLBACK(@TGTKEditable_Changed), Self); + g_signal_connect_data(PGObject(FWidget), 'changed', TGCallback(@TGTKEditable_Changed), Self, nil, G_CONNECT_DEFAULT); end; destructor TGTKEntry.Destroy; @@ -804,12 +798,12 @@ end; function TGTKEntry.GetText: string; begin - Result := PgcharToString(gtk_entry_get_text(PGtkEntry(FWidget))); + Result := String(gtk_entry_get_text(PGtkEntry(FWidget))); end; procedure TGTKEntry.SetText(Value: string); begin - gtk_entry_set_text(PGtkEntry(FWidget), StringToPgchar(Value)); + gtk_entry_set_text(PGtkEntry(FWidget), PChar(Value)); end; function TGTKEntry.GetMaxLength: integer; @@ -844,7 +838,7 @@ begin inherited Create(AOwner); FWidget := gtk_combo_new; Items := TGList.Create(Self); - Items.Notify := ItemsChanged; + Items.Notify := @ItemsChanged; Entry := TGTKEntry.CreateFromWidget(Self, PGtkCombo(FWidget)^.entry); Show; end; @@ -857,33 +851,33 @@ end; procedure TGTKCombo.UpdateItems; begin - gtk_combo_set_popdown_strings(PGtkCombo(FWidget), Items.FList); + gtk_combo_set_popdown_strings(PGtkCombo(FWidget), GLIB2.PGList(Items.FList)); end; function TGTKCombo.GetAllowEmpty: boolean; var b: gboolean; begin b := False; - g_object_get(FWidget, 'allow-empty', @b, nil); + g_object_get(PGObject(FWidget), 'allow-empty', [@b, nil]); Result := b; end; procedure TGTKCombo.SetAllowEmpty(Value: boolean); begin - g_object_set(FWidget, 'allow-empty', Ord(Value), nil); + g_object_set(PGObject(FWidget), 'allow-empty', [Ord(Value), nil]); end; function TGTKCombo.GetMatchValue: boolean; var b: gboolean; begin b := False; - g_object_get(FWidget, 'value-in-list', @b, nil); + g_object_get(PGObject(FWidget), 'value-in-list', [@b, nil]); Result := b; end; procedure TGTKCombo.SetMatchValue(Value: boolean); begin - g_object_set(FWidget, 'value-in-list', Ord(Value), nil); + g_object_set(PGObject(FWidget), 'value-in-list', [Ord(Value), nil]); end; procedure TGTKCombo.SetPolicy(MatchValue, AllowEmpty: boolean); @@ -895,7 +889,7 @@ function TGTKCombo.GetCaseSensitive: boolean; var b: gboolean; begin b := False; - g_object_get(FWidget, 'case-sensitive', @b, nil); + g_object_get(PGObject(FWidget), 'case-sensitive', [@b, nil]); Result := b; end; |
