mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-09 19:56:03 +02:00
GTK3: Migrate TGtkResponseType to enumeration.
In Gtk3 WS code, integers were used instead of enumeration values. This leads to compilation error now that `TGtkResponseType` is defined as an enumeration type. This commit fixes those errors.
This commit is contained in:
parent
20e59969e6
commit
54979c4ae2
@ -322,6 +322,21 @@ type
|
||||
GTK_DEST_DEFAULT_ALL = 7,
|
||||
TGtkDestDefaultsMaxValue = $7FFFFFFF
|
||||
);
|
||||
TGtkResponseType = (
|
||||
TGtkResponseTypeMinValue = -$7FFFFFFF,
|
||||
GTK_RESPONSE_HELP = -11,
|
||||
GTK_RESPONSE_APPLY = -10,
|
||||
GTK_RESPONSE_NO = -9,
|
||||
GTK_RESPONSE_YES = -8,
|
||||
GTK_RESPONSE_CLOSE = -7,
|
||||
GTK_RESPONSE_CANCEL = -6,
|
||||
GTK_RESPONSE_OK = -5,
|
||||
GTK_RESPONSE_DELETE_EVENT = -4,
|
||||
GTK_RESPONSE_ACCEPT = -3,
|
||||
GTK_RESPONSE_REJECT = -2,
|
||||
GTK_RESPONSE_NONE = -1,
|
||||
TGtkResponseTypeMaxValue = $7FFFFFFF
|
||||
);
|
||||
TGtkJustification = (
|
||||
TGtkJustificationMinValue = -$7FFFFFFF,
|
||||
GTK_JUSTIFY_LEFT = 0,
|
||||
@ -1185,25 +1200,6 @@ const
|
||||
GTK_RECENT_MANAGER_ERROR_WRITE: TGtkRecentManagerError = 5;
|
||||
GTK_RECENT_MANAGER_ERROR_UNKNOWN: TGtkRecentManagerError = 6;
|
||||
|
||||
//type ???
|
||||
// TGtkResponseType = integer;
|
||||
//PPGtkResponseType = ^PGtkResponseType;
|
||||
//PGtkResponseType = ^TGtkResponseType;
|
||||
|
||||
const
|
||||
{ GtkResponseType }
|
||||
GTK_RESPONSE_NONE = -1;
|
||||
GTK_RESPONSE_REJECT = -2;
|
||||
GTK_RESPONSE_ACCEPT = -3;
|
||||
GTK_RESPONSE_DELETE_EVENT = -4;
|
||||
GTK_RESPONSE_OK = -5;
|
||||
GTK_RESPONSE_CANCEL = -6;
|
||||
GTK_RESPONSE_CLOSE = -7;
|
||||
GTK_RESPONSE_YES = -8;
|
||||
GTK_RESPONSE_NO = -9;
|
||||
GTK_RESPONSE_APPLY = -10;
|
||||
GTK_RESPONSE_HELP = -11;
|
||||
|
||||
type
|
||||
TGtkScrollStep = Integer;
|
||||
const
|
||||
@ -1958,7 +1954,7 @@ type
|
||||
function new: PGtkDialog; cdecl; inline; static;
|
||||
//function new_with_buttons(title: Pgchar; parent: PGtkWindow; flags: TGtkDialogFlags; first_button_text: Pgchar; args: array of const): PGtkDialog; cdecl; inline; static;
|
||||
procedure add_action_widget(child: PGtkWidget; response_id: gint); cdecl; inline;
|
||||
function add_button(button_text: Pgchar; response_id: gint): PGtkWidget; cdecl; inline;
|
||||
function add_button(button_text: Pgchar; response_id: TGtkResponseType): PGtkWidget; cdecl; inline;
|
||||
//procedure add_buttons(first_button_text: Pgchar; args: array of const); cdecl; inline;
|
||||
function get_action_area: PGtkWidget; cdecl; inline;
|
||||
function get_content_area: PGtkWidget; cdecl; inline;
|
||||
@ -1968,7 +1964,7 @@ type
|
||||
function run: gint; cdecl; inline;
|
||||
//procedure set_alternative_button_order(first_response_id: gint; args: array of const); cdecl; inline;
|
||||
procedure set_alternative_button_order_from_array(n_params: gint; new_order: Pgint); cdecl; inline;
|
||||
procedure set_default_response(response_id: gint); cdecl; inline;
|
||||
procedure set_default_response(response_id: TGtkResponseType); cdecl; inline;
|
||||
procedure set_response_sensitive(response_id: gint; setting: gboolean); cdecl; inline;
|
||||
end;
|
||||
|
||||
@ -11614,7 +11610,7 @@ function gtk_css_section_get_start_line(section: PGtkCssSection): guint; cdecl;
|
||||
function gtk_css_section_get_start_position(section: PGtkCssSection): guint; cdecl; external;
|
||||
function gtk_css_section_get_type: TGType; cdecl; external;
|
||||
function gtk_css_section_ref(section: PGtkCssSection): PGtkCssSection; cdecl; external;
|
||||
function gtk_dialog_add_button(dialog: PGtkDialog; button_text: Pgchar; response_id: gint): PGtkWidget; cdecl; external;
|
||||
function gtk_dialog_add_button(dialog: PGtkDialog; button_text: Pgchar; response_id: TGtkResponseType): PGtkWidget; cdecl; external;
|
||||
function gtk_dialog_get_action_area(dialog: PGtkDialog): PGtkWidget; cdecl; external;
|
||||
function gtk_dialog_get_content_area(dialog: PGtkDialog): PGtkWidget; cdecl; external;
|
||||
function gtk_dialog_get_response_for_widget(dialog: PGtkDialog; widget: PGtkWidget): gint; cdecl; external;
|
||||
@ -13515,7 +13511,7 @@ procedure gtk_dialog_add_buttons(dialog: PGtkDialog; first_button_text: Pgchar;
|
||||
procedure gtk_dialog_response(dialog: PGtkDialog; response_id: gint); cdecl; external;
|
||||
procedure gtk_dialog_set_alternative_button_order(dialog: PGtkDialog; first_response_id: gint; args: array of const); cdecl; external;
|
||||
procedure gtk_dialog_set_alternative_button_order_from_array(dialog: PGtkDialog; n_params: gint; new_order: Pgint); cdecl; external;
|
||||
procedure gtk_dialog_set_default_response(dialog: PGtkDialog; response_id: gint); cdecl; external;
|
||||
procedure gtk_dialog_set_default_response(dialog: PGtkDialog; response_id: TGtkResponseType); cdecl; external;
|
||||
procedure gtk_dialog_set_response_sensitive(dialog: PGtkDialog; response_id: gint; setting: gboolean); cdecl; external;
|
||||
procedure gtk_disable_setlocale; cdecl; external;
|
||||
procedure gtk_drag_dest_add_image_targets(widget: PGtkWidget); cdecl; external;
|
||||
@ -16619,7 +16615,7 @@ begin
|
||||
LazGtk3.gtk_dialog_add_action_widget(@self, child, response_id);
|
||||
end;
|
||||
|
||||
function TGtkDialog.add_button(button_text: Pgchar; response_id: gint): PGtkWidget; cdecl;
|
||||
function TGtkDialog.add_button(button_text: Pgchar; response_id: TGtkResponseType): PGtkWidget; cdecl;
|
||||
begin
|
||||
Result := LazGtk3.gtk_dialog_add_button(@self, button_text, response_id);
|
||||
end;
|
||||
@ -16659,7 +16655,7 @@ begin
|
||||
LazGtk3.gtk_dialog_set_alternative_button_order_from_array(@self, n_params, new_order);
|
||||
end;
|
||||
|
||||
procedure TGtkDialog.set_default_response(response_id: gint); cdecl;
|
||||
procedure TGtkDialog.set_default_response(response_id: TGtkResponseType); cdecl;
|
||||
begin
|
||||
LazGtk3.gtk_dialog_set_default_response(@self, response_id);
|
||||
end;
|
||||
|
@ -50,13 +50,14 @@ type
|
||||
function btn_ptr_info(ndx:integer):longint;
|
||||
procedure set_message_text(const msg:string;const is_pango_markup:boolean=false);
|
||||
procedure update_widget_list(const func:TBtnListFunction);
|
||||
procedure CreateButton(const ALabel : String; const AResponse: Integer;
|
||||
procedure CreateButton(const ALabel : String; const AResponse: Integer);
|
||||
procedure CreateButton(const ALabel : String; const AResponse: TGtkResponseType;
|
||||
const AImageHint: Integer = -1);
|
||||
function lcl_result:integer;
|
||||
function btn_result:integer;
|
||||
class function ResponseID(const AnID: Integer): Integer;
|
||||
class function gtk_resp_to_lcl(const gtk_resp:integer):integer;
|
||||
class function gtk_resp_to_btn(const gtk_resp:integer):integer;
|
||||
class function ResponseID(const AnID: Integer): TGtkResponseType;
|
||||
class function gtk_resp_to_lcl(const gtk_resp:TGtkResponseType):integer;
|
||||
class function gtk_resp_to_btn(const gtk_resp:TGtkResponseType):integer;
|
||||
class function MessageType(ADialogType:longint):TGtkMessageType;
|
||||
end;
|
||||
|
||||
@ -65,11 +66,11 @@ implementation
|
||||
|
||||
// fake GTK button responses
|
||||
const
|
||||
GTK_RESPONSE_LCL_ALL = -10;
|
||||
GTK_RESPONSE_LCL_YESTOALL = -3; // GTK_RESPONSE_ACCEPT;
|
||||
GTK_RESPONSE_LCL_RETRY = -12;
|
||||
GTK_RESPONSE_LCL_IGNORE = -13;
|
||||
GTK_RESPONSE_LCL_NOTOALL = -14;
|
||||
GTK_RESPONSE_LCL_ALL = TGtkResponseType(-15);
|
||||
GTK_RESPONSE_LCL_YESTOALL = GTK_RESPONSE_ACCEPT;
|
||||
GTK_RESPONSE_LCL_RETRY = TGtkResponseType(-12);
|
||||
GTK_RESPONSE_LCL_IGNORE = TGtkResponseType(-13);
|
||||
GTK_RESPONSE_LCL_NOTOALL = TGtkResponseType(-14);
|
||||
|
||||
|
||||
{ callbacks }
|
||||
@ -102,7 +103,7 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
class function TGtk3DialogFactory.ResponseID(const AnID: Integer): Integer;
|
||||
class function TGtk3DialogFactory.ResponseID(const AnID: Integer): TGtkResponseType;
|
||||
begin
|
||||
case AnID of
|
||||
idButtonOK : Result := GTK_RESPONSE_OK;
|
||||
@ -118,11 +119,11 @@ begin
|
||||
idButtonNoToAll : Result := GTK_RESPONSE_LCL_NOTOALL;
|
||||
idButtonYesToAll : Result := GTK_RESPONSE_LCL_YESTOALL;
|
||||
else
|
||||
Result:=AnID;
|
||||
Result:=TGtkResponseType(AnID);
|
||||
end;
|
||||
end;
|
||||
|
||||
class function TGtk3DialogFactory.gtk_resp_to_lcl(const gtk_resp:integer):integer;
|
||||
class function TGtk3DialogFactory.gtk_resp_to_lcl(const gtk_resp:TGtkResponseType):integer;
|
||||
begin
|
||||
case gtk_resp of
|
||||
GTK_RESPONSE_OK: Result:=ID_OK;
|
||||
@ -141,22 +142,22 @@ begin
|
||||
GTK_RESPONSE_LCL_NOTOALL: Result:=idButtonNoToAll;
|
||||
//GTK_RESPONSE_LCL_YESTOALL: Result:= idButtonYesToAll;
|
||||
else
|
||||
Result:=gtk_resp;
|
||||
Result:=Integer(gtk_resp);
|
||||
end;
|
||||
end;
|
||||
|
||||
class function TGtk3DialogFactory.gtk_resp_to_btn(const gtk_resp:integer):integer;
|
||||
class function TGtk3DialogFactory.gtk_resp_to_btn(const gtk_resp:TGtkResponseType):integer;
|
||||
begin
|
||||
case gtk_resp of
|
||||
-5{GTK_RESPONSE_OK}: Result:= idButtonOk;
|
||||
-6{GTK_RESPONSE_CANCEL}: Result := idButtonCancel;
|
||||
-7{GTK_RESPONSE_CLOSE}: Result:=idButtonClose;
|
||||
-8{GTK_RESPONSE_YES}: Result:=idButtonYes;
|
||||
-9{GTK_RESPONSE_NO}: Result:=idButtonNo;
|
||||
GTK_RESPONSE_OK {-5} : Result:= idButtonOk;
|
||||
GTK_RESPONSE_CANCEL {-6} : Result := idButtonCancel;
|
||||
GTK_RESPONSE_CLOSE {-7} : Result:=idButtonClose;
|
||||
GTK_RESPONSE_YES {-8} : Result:=idButtonYes;
|
||||
GTK_RESPONSE_NO {-9} : Result:=idButtonNo;
|
||||
|
||||
-1{GTK_RESPONSE_NONE}: Result:=0;
|
||||
-2{GTK_RESPONSE_REJECT}: Result:=idButtonAbort;
|
||||
-3{GTK_RESPONSE_ACCEPT}: Result:=idButtonYesToAll;
|
||||
GTK_RESPONSE_NONE {-1} : Result:=0;
|
||||
GTK_RESPONSE_REJECT {-2} : Result:=idButtonAbort;
|
||||
GTK_RESPONSE_ACCEPT {-3} : Result:=idButtonYesToAll;
|
||||
|
||||
GTK_RESPONSE_LCL_RETRY: Result:=idButtonRetry;
|
||||
GTK_RESPONSE_LCL_IGNORE: Result:=idButtonIgnore;
|
||||
@ -164,13 +165,18 @@ begin
|
||||
GTK_RESPONSE_LCL_NOTOALL: Result:=idButtonNoToAll;
|
||||
//GTK_RESPONSE_LCL_YESTOALL: Result:= idButtonYesToAll;
|
||||
else
|
||||
Result:=gtk_resp;
|
||||
Result:=Integer(gtk_resp);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TGtk3DialogFactory.CreateButton(const ALabel : String; const AResponse: Integer);
|
||||
begin
|
||||
CreateButton(ALabel, TGtkResponseType(AResponse));
|
||||
end;
|
||||
|
||||
procedure TGtk3DialogFactory.CreateButton(
|
||||
const ALabel : String;
|
||||
const AResponse: Integer;
|
||||
const AResponse: TGtkResponseType;
|
||||
const AImageHint: Integer = -1);
|
||||
var
|
||||
NewButton: PGtkWidget;
|
||||
@ -217,12 +223,12 @@ end;
|
||||
|
||||
function TGtk3DialogFactory.lcl_result: integer;
|
||||
begin
|
||||
Result:=gtk_resp_to_lcl(DialogResult);
|
||||
Result:=gtk_resp_to_lcl(TGtkResponseType(DialogResult));
|
||||
end;
|
||||
|
||||
function TGtk3DialogFactory.btn_result: integer;
|
||||
begin
|
||||
Result:=gtk_resp_to_btn(DialogResult);
|
||||
Result:=gtk_resp_to_btn(TGtkResponseType(DialogResult));
|
||||
end;
|
||||
|
||||
class function TGtk3DialogFactory.MessageType(ADialogType:longint):TGtkMessageType;
|
||||
@ -306,7 +312,7 @@ begin
|
||||
idButtonYesToAll : CreateButton(dbtn.Caption, GTK_RESPONSE_LCL_YESTOALL, BtnID);
|
||||
end;
|
||||
end else
|
||||
CreateButton(dbtn.Caption, dbtn.ModalResult, 0);
|
||||
CreateButton(dbtn.Caption, TGtkResponseType(dbtn.ModalResult), 0);
|
||||
|
||||
end;
|
||||
end;
|
||||
|
@ -828,7 +828,7 @@ type
|
||||
class function ResponseCB(response_id:gint; dlg: TGtk3Dialog): GBoolean; cdecl;
|
||||
class function RealizeCB(dlg:TGtk3Dialog): GBoolean; cdecl;
|
||||
protected
|
||||
function response_handler(response_id:gint):boolean;virtual;
|
||||
function response_handler(response_id:TGtkResponseType):boolean;virtual;
|
||||
function close_handler():boolean;virtual;
|
||||
procedure SetCallbacks;virtual;
|
||||
function CreateWidget(const {%H-}Params: TCreateParams):PGtkWidget; override;
|
||||
@ -852,7 +852,7 @@ type
|
||||
|
||||
TGtk3FontSelectionDialog = class(TGtk3Dialog)
|
||||
protected
|
||||
function response_handler(resp_id:gint):boolean; override;
|
||||
function response_handler(resp_id:TGtkResponseType):boolean; override;
|
||||
public
|
||||
procedure InitializeWidget; override;
|
||||
constructor Create(const ACommonDialog: TCommonDialog); virtual; overload;
|
||||
@ -870,7 +870,7 @@ type
|
||||
|
||||
TGtk3newColorSelectionDialog = class(TGtk3Dialog)
|
||||
protected
|
||||
function response_handler(resp_id:gint):boolean;override;
|
||||
function response_handler(resp_id:TGtkResponseType):boolean;override;
|
||||
public
|
||||
constructor Create(const ACommonDialog: TCommonDialog); virtual; overload;
|
||||
procedure InitializeWidget;override;
|
||||
@ -7955,12 +7955,12 @@ end;
|
||||
class function TGtk3Dialog.ResponseCB(response_id:gint; dlg: TGtk3Dialog): GBoolean; cdecl;
|
||||
begin
|
||||
if Assigned(dlg) then
|
||||
Result:=dlg.response_handler(response_id)
|
||||
Result:=dlg.response_handler(TGtkResponseType(response_id))
|
||||
else
|
||||
Result:= false;
|
||||
end;
|
||||
|
||||
function TGtk3Dialog.response_handler(response_id:gint):boolean;
|
||||
function TGtk3Dialog.response_handler(response_id:TGtkResponseType):boolean;
|
||||
begin
|
||||
(* case response_id of
|
||||
GTK_RESPONSE_NONE:;
|
||||
@ -8133,7 +8133,7 @@ begin
|
||||
inherited InitializeWidget;
|
||||
end;
|
||||
|
||||
function TGtk3FontSelectionDialog.response_handler(resp_id: gint): boolean;
|
||||
function TGtk3FontSelectionDialog.response_handler(resp_id: TGtkResponseType): boolean;
|
||||
var
|
||||
fnt:TFont;
|
||||
pch:PgtkFontChooser;
|
||||
@ -8244,7 +8244,7 @@ begin
|
||||
inherited;
|
||||
end;
|
||||
|
||||
function TGtk3newColorSelectionDialog.response_handler(resp_id: gint): boolean;
|
||||
function TGtk3newColorSelectionDialog.response_handler(resp_id: TGtkResponseType): boolean;
|
||||
var
|
||||
clr:TColor;
|
||||
rgba:TGdkRGBA;
|
||||
|
@ -418,7 +418,7 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure Gtk2FileChooserResponseCB(widget: PGtkFileChooser; arg1: gint;
|
||||
procedure Gtk2FileChooserResponseCB(widget: PGtkFileChooser; arg1: TGtkResponseType;
|
||||
data: gpointer); cdecl;
|
||||
|
||||
procedure AddFile(List: TStrings; const NewFile: string);
|
||||
|
Loading…
Reference in New Issue
Block a user