2
0

gtksettings.inc 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. // included by gtk2.pas
  2. {$IFDEF read_forward_definitions}
  3. {$ENDIF read_forward_definitions}
  4. //------------------------------------------------------------------------------
  5. {$IFDEF read_interface_types}
  6. // find PGtkRcContext
  7. PGtkRcContext = pointer;
  8. { --- structures --- }
  9. { of type GtkSettingsValue }
  10. PGtkSettings = ^TGtkSettings;
  11. TGtkSettings = record
  12. parent_instance : TGObject;
  13. queued_settings : PGData;
  14. property_values : PGValue;
  15. rc_context : PGtkRcContext;
  16. screen : PGdkScreen;
  17. end;
  18. PGtkSettingsClass = ^TGtkSettingsClass;
  19. TGtkSettingsClass = record
  20. parent_class : TGObjectClass;
  21. end;
  22. { origin should be something like "filename:linenumber" for rc files,
  23. or e.g. "XProperty" for other sources
  24. }
  25. { valid types are LONG, DOUBLE and STRING corresponding to the token parsed,
  26. or a GSTRING holding an unparsed statement
  27. }
  28. PGtkSettingsValue = ^TGtkSettingsValue;
  29. TGtkSettingsValue = record
  30. origin : Pgchar;
  31. value : TGValue;
  32. end;
  33. {$ENDIF read_interface_types}
  34. //------------------------------------------------------------------------------
  35. {$IFDEF read_interface_rest}
  36. function GTK_TYPE_SETTINGS : GType;
  37. function GTK_SETTINGS(obj: pointer) : PGtkSettings;
  38. function GTK_SETTINGS_CLASS(klass: pointer) : PGtkSettingsClass;
  39. function GTK_IS_SETTINGS(obj: pointer) : boolean;
  40. function GTK_IS_SETTINGS_CLASS(klass: pointer) : boolean;
  41. function GTK_SETTINGS_GET_CLASS(obj: pointer) : PGtkSettingsClass;
  42. { --- functions --- }
  43. function gtk_settings_get_type:GType; cdecl; external gtklib;
  44. {$ifndef GDK_MULTIHEAD_SAFE}
  45. function gtk_settings_get_default:PGtkSettings; cdecl; external gtklib;
  46. {$endif}
  47. function gtk_settings_get_for_screen(screen:PGdkScreen):PGtkSettings; cdecl; external gtklib;
  48. procedure gtk_settings_install_property(pspec:PGParamSpec); cdecl; external gtklib;
  49. procedure gtk_settings_install_property_parser(pspec:PGParamSpec; parser:TGtkRcPropertyParser); cdecl; external gtklib;
  50. { --- precoded parsing functions --- }
  51. function gtk_rc_property_parse_color(pspec:PGParamSpec; gstring:PGString; property_value:PGValue):gboolean; cdecl; external gtklib;
  52. function gtk_rc_property_parse_enum(pspec:PGParamSpec; gstring:PGString; property_value:PGValue):gboolean; cdecl; external gtklib;
  53. function gtk_rc_property_parse_flags(pspec:PGParamSpec; gstring:PGString; property_value:PGValue):gboolean; cdecl; external gtklib;
  54. function gtk_rc_property_parse_requisition(pspec:PGParamSpec; gstring:PGString; property_value:PGValue):gboolean; cdecl; external gtklib;
  55. function gtk_rc_property_parse_border(pspec:PGParamSpec; gstring:PGString; property_value:PGValue):gboolean; cdecl; external gtklib;
  56. {< private > }
  57. procedure gtk_settings_set_property_value(settings:PGtkSettings; name:Pgchar; svalue:PGtkSettingsValue); cdecl; external gtklib;
  58. procedure gtk_settings_set_string_property(settings:PGtkSettings; name:Pgchar; v_string:Pgchar; origin:Pgchar); cdecl; external gtklib;
  59. procedure gtk_settings_set_long_property(settings:PGtkSettings; name:Pgchar; v_long:glong; origin:Pgchar); cdecl; external gtklib;
  60. procedure gtk_settings_set_double_property(settings:PGtkSettings; name:Pgchar; v_double:gdouble; origin:Pgchar); cdecl; external gtklib;
  61. { implementation details }
  62. procedure _gtk_settings_handle_event(event:PGdkEventSetting); cdecl; external gtklib;
  63. function _gtk_rc_property_parser_from_type(_type:GType):TGtkRcPropertyParser; cdecl; external gtklib;
  64. function _gtk_settings_parse_convert(parser:TGtkRcPropertyParser; src_value:PGValue; pspec:PGParamSpec; dest_value:PGValue):gboolean; cdecl; external gtklib;
  65. {$ENDIF read_interface_rest}
  66. //------------------------------------------------------------------------------
  67. {$IFDEF read_implementation}
  68. function GTK_TYPE_SETTINGS : GType;
  69. begin
  70. GTK_TYPE_SETTINGS:=gtk_settings_get_type;
  71. end;
  72. function GTK_SETTINGS(obj: pointer) : PGtkSettings;
  73. begin
  74. GTK_SETTINGS:=PGtkSettings(GTK_CHECK_CAST(obj,GTK_TYPE_SETTINGS));
  75. end;
  76. function GTK_SETTINGS_CLASS(klass: pointer) : PGtkSettingsClass;
  77. begin
  78. GTK_SETTINGS_CLASS:=PGtkSettingsClass(GTK_CHECK_CLASS_CAST(klass,GTK_TYPE_SETTINGS));
  79. end;
  80. function GTK_IS_SETTINGS(obj: pointer) : boolean;
  81. begin
  82. GTK_IS_SETTINGS:=GTK_CHECK_TYPE(obj,GTK_TYPE_SETTINGS);
  83. end;
  84. function GTK_IS_SETTINGS_CLASS(klass: pointer) : boolean;
  85. begin
  86. GTK_IS_SETTINGS_CLASS:=GTK_CHECK_CLASS_TYPE(klass,GTK_TYPE_SETTINGS);
  87. end;
  88. function GTK_SETTINGS_GET_CLASS(obj: pointer) : PGtkSettingsClass;
  89. begin
  90. GTK_SETTINGS_GET_CLASS:=PGtkSettingsClass(GTK_CHECK_GET_CLASS(obj,GTK_TYPE_SETTINGS));
  91. end;
  92. {$ENDIF read_implementation}
  93. // included by gtk2.pas