diff options
Diffstat (limited to 'packages/gnome1/src')
92 files changed, 8433 insertions, 0 deletions
diff --git a/packages/gnome1/src/gconf/gconf.pp b/packages/gnome1/src/gconf/gconf.pp new file mode 100644 index 0000000000..b73f3f2105 --- /dev/null +++ b/packages/gnome1/src/gconf/gconf.pp @@ -0,0 +1,147 @@ +{ + + GConf + Copyright (C) 1999, 2000 Red Hat Inc. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. +} +unit gconf; + +{$PACKRECORDS C} +{$mode objfpc} + +interface + +Uses glib; + +const + gconfdll='gconf-1'; + +type + TGConfValueType = (GCONF_VALUE_INVALID,GCONF_VALUE_STRING, + GCONF_VALUE_INT,GCONF_VALUE_FLOAT,GCONF_VALUE_BOOL, + GCONF_VALUE_SCHEMA,GCONF_VALUE_LIST,GCONF_VALUE_PAIR + ); + +type + PGConfSchema = ^TGConfSchema; + PPGConfValue = ^PGConfValue; + PGConfValue = ^TGConfValue; + + TGConfSchema = record + thetype : TGConfValueType; + list_type : TGConfValueType; + car_type : TGConfValueType; + cdr_type : TGConfValueType; + locale : pgchar; + theowner : pgchar; + short_desc : pgchar; + long_desc : pgchar; + default_value : PGConfValue; + end; + + TGConfValue = record + thetype : TGConfValueType; + d : record + case longint of + 0 : ( string_data : Pgchar ); + 1 : ( int_data : gint ); + 2 : ( bool_data : gboolean ); + 3 : ( float_data : gdouble ); + 4 : ( schema_data : PGConfSchema ); + 5 : ( list_data : record + listtype : TGConfValueType; + list : PGSList; + end ); + 6 : ( pair_data : record + car : PGConfValue; + cdr : PGConfValue; + end ); + end; + end; + +{$define read_interface} +{$undef read_implementation} + +{$include gconfglibpublic.inc} +{$include gconferror.inc} +{$include gconfvalue.inc} +{$include gconfschema.inc} +{$include gconfengine.inc} + +function gconf_is_initialized:gboolean;cdecl;external gconfdll name 'gconf_is_initialized'; + +type + TGConfNotifyFunc = procedure (conf:PGConfEngine; cnxn_id:guint; entry:PGConfEntry; user_data:gpointer);cdecl; + +function gconf_engine_notify_add(conf:PGConfEngine; namespace_section:Pgchar; func:TGConfNotifyFunc; user_data:gpointer; err:PPGError):guint;cdecl;external gconfdll name 'gconf_engine_notify_add'; +procedure gconf_engine_notify_remove(conf:PGConfEngine; cnxn:guint);cdecl;external gconfdll name 'gconf_engine_notify_remove'; +function gconf_engine_get(conf:PGConfEngine; key:Pgchar; err:PPGError):PGConfValue;cdecl;external gconfdll name 'gconf_engine_get'; +function gconf_engine_get_without_default(conf:PGConfEngine; key:Pgchar; err:PPGError):PGConfValue;cdecl;external gconfdll name 'gconf_engine_get_without_default'; +function gconf_engine_get_entry(conf:PGConfEngine; key:Pgchar; locale:Pgchar; use_schema_default:gboolean; err:PPGError):PGConfEntry;cdecl;external gconfdll name 'gconf_engine_get_entry'; +function gconf_engine_get_with_locale(conf:PGConfEngine; key:Pgchar; locale:Pgchar; err:PPGError):PGConfValue;cdecl;external gconfdll name 'gconf_engine_get_with_locale'; +function gconf_engine_get_default_from_schema(conf:PGConfEngine; key:Pgchar; err:PPGError):PGConfValue;cdecl;external gconfdll name 'gconf_engine_get_default_from_schema'; +function gconf_engine_set(conf:PGConfEngine; key:Pgchar; value:PGConfValue; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_set'; +function gconf_engine_unset(conf:PGConfEngine; key:Pgchar; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_unset'; +function gconf_engine_associate_schema(conf:PGConfEngine; key:Pgchar; schema_key:Pgchar; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_associate_schema'; +function gconf_engine_all_entries(conf:PGConfEngine; dir:Pgchar; err:PPGError):PGSList;cdecl;external gconfdll name 'gconf_engine_all_entries'; +function gconf_engine_all_dirs(conf:PGConfEngine; dir:Pgchar; err:PPGError):PGSList;cdecl;external gconfdll name 'gconf_engine_all_dirs'; +procedure gconf_engine_suggest_sync(conf:PGConfEngine; err:PPGError);cdecl;external gconfdll name 'gconf_engine_suggest_sync'; +function gconf_engine_dir_exists(conf:PGConfEngine; dir:Pgchar; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_dir_exists'; +procedure gconf_engine_remove_dir(conf:PGConfEngine; dir:Pgchar; err:PPGError);cdecl;external gconfdll name 'gconf_engine_remove_dir'; +function gconf_engine_key_is_writable(conf:PGConfEngine; key:Pgchar; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_key_is_writable'; +function gconf_valid_key(key:Pgchar; why_invalid:PPgchar):gboolean;cdecl;external gconfdll name 'gconf_valid_key'; +function gconf_key_is_below(above:Pgchar; below:Pgchar):gboolean;cdecl;external gconfdll name 'gconf_key_is_below'; +function gconf_concat_dir_and_key(dir:Pgchar; key:Pgchar):pgchar;cdecl;external gconfdll name 'gconf_concat_dir_and_key'; +function gconf_unique_key:pgchar;cdecl;external gconfdll name 'gconf_unique_key'; +function gconf_engine_get_float(conf:PGConfEngine; key:Pgchar; err:PPGError):gdouble;cdecl;external gconfdll name 'gconf_engine_get_float'; +function gconf_engine_get_int(conf:PGConfEngine; key:Pgchar; err:PPGError):gint;cdecl;external gconfdll name 'gconf_engine_get_int'; +function gconf_engine_get_string(conf:PGConfEngine; key:Pgchar; err:PPGError):pgchar;cdecl;external gconfdll name 'gconf_engine_get_string'; +function gconf_engine_get_bool(conf:PGConfEngine; key:Pgchar; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_get_bool'; +function gconf_engine_get_schema(conf:PGConfEngine; key:Pgchar; err:PPGError):PGConfSchema;cdecl;external gconfdll name 'gconf_engine_get_schema'; +function gconf_engine_get_list(conf:PGConfEngine; key:Pgchar; list_type:TGConfValueType; err:PPGError):PGSList;cdecl;external gconfdll name 'gconf_engine_get_list'; +function gconf_engine_get_pair(conf:PGConfEngine; key:Pgchar; car_type:TGConfValueType; cdr_type:TGConfValueType; car_retloc:gpointer; + cdr_retloc:gpointer; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_get_pair'; +function gconf_engine_set_float(conf:PGConfEngine; key:Pgchar; val:gdouble; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_set_float'; +function gconf_engine_set_int(conf:PGConfEngine; key:Pgchar; val:gint; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_set_int'; +function gconf_engine_set_string(conf:PGConfEngine; key:Pgchar; val:Pgchar; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_set_string'; +function gconf_engine_set_bool(conf:PGConfEngine; key:Pgchar; val:gboolean; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_set_bool'; +function gconf_engine_set_schema(conf:PGConfEngine; key:Pgchar; val:PGConfSchema; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_set_schema'; +function gconf_engine_set_list(conf:PGConfEngine; key:Pgchar; list_type:TGConfValueType; list:PGSList; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_set_list'; +function gconf_engine_set_pair(conf:PGConfEngine; key:Pgchar; car_type:TGConfValueType; cdr_type:TGConfValueType; const address_of_car:gpointer; + const address_of_cdr:gpointer; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_engine_set_pair'; +type + TGConfEnumStringPair = record + enum_value : gint; + str : pgchar; + end; + +function gconf_string_to_enum(lookup_table:array of TGConfEnumStringPair; str:Pgchar; enum_value_retloc:Pgint):gboolean;cdecl;external gconfdll name 'gconf_string_to_enum'; +function gconf_enum_to_string(lookup_table:array of TGConfEnumStringPair; enum_value:gint):pgchar;cdecl;external gconfdll name 'gconf_enum_to_string'; +function gconf_init(argc:longint; argv:PPchar; err:PPGError):gboolean;cdecl;external gconfdll name 'gconf_init'; + +implementation + +{$undef read_interface} +{$define read_implementation} + +{$include gconfglibpublic.inc} +{$include gconferror.inc} +{$include gconfvalue.inc} +{$include gconfschema.inc} +{$include gconfengine.inc} + +end. diff --git a/packages/gnome1/src/gconf/gconfengine.inc b/packages/gnome1/src/gconf/gconfengine.inc new file mode 100644 index 0000000000..c8f52c7161 --- /dev/null +++ b/packages/gnome1/src/gconf/gconfengine.inc @@ -0,0 +1,19 @@ +{$IfDef read_interface} + +type + PGConfEngine = ^TGConfEngine; + TGConfEngine = Record + end; + +function gconf_engine_get_default:PGConfEngine;cdecl;external gconfdll name 'gconf_engine_get_default'; +function gconf_engine_get_for_address(address:Pgchar; err:PPGError):PGConfEngine;cdecl;external gconfdll name 'gconf_engine_get_for_address'; +procedure gconf_engine_unref(conf:PGConfEngine);cdecl;external gconfdll name 'gconf_engine_unref'; +procedure gconf_engine_ref(conf:PGConfEngine);cdecl;external gconfdll name 'gconf_engine_ref'; +procedure gconf_engine_set_user_data(engine:PGConfEngine; data:gpointer; dnotify:TGDestroyNotify);cdecl;external gconfdll name 'gconf_engine_set_user_data'; +function gconf_engine_get_user_data(engine:PGConfEngine):gpointer;cdecl;external gconfdll name 'gconf_engine_get_user_data'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/gconf/gconferror.inc b/packages/gnome1/src/gconf/gconferror.inc new file mode 100644 index 0000000000..6237655ca0 --- /dev/null +++ b/packages/gnome1/src/gconf/gconferror.inc @@ -0,0 +1,26 @@ +{$IfDef read_interface} +type + TGConfError = (GCONF_ERROR_SUCCESS := 0,GCONF_ERROR_FAILED := 1, + GCONF_ERROR_NO_SERVER := 2,GCONF_ERROR_NO_PERMISSION := 3, + GCONF_ERROR_BAD_ADDRESS := 4,GCONF_ERROR_BAD_KEY := 5, + GCONF_ERROR_PARSE_ERROR := 6,GCONF_ERROR_CORRUPT := 7, + GCONF_ERROR_TYPE_MISMATCH := 8,GCONF_ERROR_IS_DIR := 9, + GCONF_ERROR_IS_KEY := 10,GCONF_ERROR_OVERRIDDEN := 11, + GCONF_ERROR_OAF_ERROR := 12,GCONF_ERROR_LOCAL_ENGINE := 13, + GCONF_ERROR_LOCK_FAILED := 14,GCONF_ERROR_NO_WRITABLE_DATABASE := 15, + GCONF_ERROR_IN_SHUTDOWN := 16); + +function gconf_error_quark:TGQuark;cdecl;external gconfdll name 'gconf_error_quark'; + +function GCONF_ERROR : TGConfError; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GCONF_ERROR : TGConfError; +begin + GCONF_ERROR := TGConfError(gconf_error_quark); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/gconf/gconfglibpublic.inc b/packages/gnome1/src/gconf/gconfglibpublic.inc new file mode 100644 index 0000000000..6ba5b59b82 --- /dev/null +++ b/packages/gnome1/src/gconf/gconfglibpublic.inc @@ -0,0 +1,26 @@ +{$IfDef read_interface} +type + PPGError = ^PGError; + PGError = ^TGError; + TGError = record + domain : TGQuark; + code : gint; + message : Pgchar; + end; + +Function g_error_new(domain : TGQuark; code : gint; const format:Pgchar; args:array of const):PGError;cdecl;external gconfdll name 'g_error_new'; +function g_error_new_literal(domain:TGQuark; code:gint; message:Pgchar):PGError;cdecl;external gconfdll name 'g_error_new_literal'; +procedure g_error_free(error:PGError);cdecl;external gconfdll name 'g_error_free'; +function g_error_copy(error:PGError):PGError;cdecl;external gconfdll name 'g_error_copy'; +function g_error_matches(error:PGError; domain:TGQuark; code:gint):gboolean;cdecl;external gconfdll name 'g_error_matches'; + +Procedure g_set_error(Err : PPGError; domain:TGQuark; code:gint; const format:Pgchar; args:array of const);cdecl;external gconfdll name 'g_set_error'; + +procedure g_clear_error(err:PPGError);cdecl;external gconfdll name 'g_clear_error'; +procedure g_propagate_error(dest:PPGError; src:PGError);cdecl;external gconfdll name 'g_propagate_error'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/gconf/gconfschema.inc b/packages/gnome1/src/gconf/gconfschema.inc new file mode 100644 index 0000000000..7939eee061 --- /dev/null +++ b/packages/gnome1/src/gconf/gconfschema.inc @@ -0,0 +1,77 @@ +{$IfDef read_interface} + +function gconf_schema_new:PGConfSchema;cdecl;external gconfdll name 'gconf_schema_new'; +procedure gconf_schema_free(sc:PGConfSchema);cdecl;external gconfdll name 'gconf_schema_free'; +function gconf_schema_copy(sc:PGConfSchema):PGConfSchema;cdecl;external gconfdll name 'gconf_schema_copy'; +procedure gconf_schema_set_type(sc:PGConfSchema; thetype:TGConfValueType);cdecl;external gconfdll name 'gconf_schema_set_type'; +procedure gconf_schema_set_list_type(sc:PGConfSchema; thetype:TGConfValueType);cdecl;external gconfdll name 'gconf_schema_set_list_type'; +procedure gconf_schema_set_car_type(sc:PGConfSchema; thetype:TGConfValueType);cdecl;external gconfdll name 'gconf_schema_set_car_type'; +procedure gconf_schema_set_cdr_type(sc:PGConfSchema; thetype:TGConfValueType);cdecl;external gconfdll name 'gconf_schema_set_cdr_type'; +procedure gconf_schema_set_locale(sc:PGConfSchema; locale:Pgchar);cdecl;external gconfdll name 'gconf_schema_set_locale'; +procedure gconf_schema_set_short_desc(sc:PGConfSchema; desc:Pgchar);cdecl;external gconfdll name 'gconf_schema_set_short_desc'; +procedure gconf_schema_set_long_desc(sc:PGConfSchema; desc:Pgchar);cdecl;external gconfdll name 'gconf_schema_set_long_desc'; +procedure gconf_schema_set_owner(sc:PGConfSchema; theowner:Pgchar);cdecl;external gconfdll name 'gconf_schema_set_owner'; +procedure gconf_schema_set_default_value(sc:PGConfSchema; val:PGConfValue);cdecl;external gconfdll name 'gconf_schema_set_default_value'; +procedure gconf_schema_set_default_value_nocopy(sc:PGConfSchema; val:PGConfValue);cdecl;external gconfdll name 'gconf_schema_set_default_value_nocopy'; + +function gconf_schema_get_type(x : PGConfSchema) : TGConfValueType; +function gconf_schema_get_list_type(x : PGConfSchema) : TGConfValueType; +function gconf_schema_get_car_type(x : PGConfSchema) : TGConfValueType; +function gconf_schema_get_cdr_type(x : PGConfSchema) : TGConfValueType; + +function gconf_schema_get_locale(x : PGConfSchema) : Pgchar; +function gconf_schema_get_short_desc(x : PGConfSchema) : Pgchar; +function gconf_schema_get_long_desc(x : PGConfSchema) : Pgchar; +function gconf_schema_get_owner(x : PGConfSchema) : Pgchar; +function gconf_schema_get_default_value(x : PGConfSchema) : PGConfValue; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function gconf_schema_get_type(x : PGConfSchema) : TGConfValueType; +begin + gconf_schema_get_type := x^.thetype; +end; + +function gconf_schema_get_list_type(x : PGConfSchema) : TGConfValueType; +begin + gconf_schema_get_list_type:=x^.list_type; +end; + +function gconf_schema_get_car_type(x : PGConfSchema) : TGConfValueType; +begin + gconf_schema_get_car_type:=x^.car_type; +end; + +function gconf_schema_get_cdr_type(x : PGConfSchema) : TGConfValueType; +begin + gconf_schema_get_cdr_type:=x^.cdr_type; +end; + +function gconf_schema_get_locale(x : PGConfSchema) : Pgchar; +begin + gconf_schema_get_locale:=x^.locale; +end; + +function gconf_schema_get_short_desc(x : PGConfSchema) : Pgchar; +begin + gconf_schema_get_short_desc:=x^.short_desc; +end; + +function gconf_schema_get_long_desc(x : PGConfSchema) : Pgchar; +begin + gconf_schema_get_long_desc:=x^.long_desc; +end; + +function gconf_schema_get_owner(x : PGConfSchema) : Pgchar; +begin + gconf_schema_get_owner:=x^.theowner; +end; + +function gconf_schema_get_default_value(x : PGConfSchema) : PGConfValue; +begin + gconf_schema_get_default_value:=x^.default_value; +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/gconf/gconfvalue.inc b/packages/gnome1/src/gconf/gconfvalue.inc new file mode 100644 index 0000000000..c364f24360 --- /dev/null +++ b/packages/gnome1/src/gconf/gconfvalue.inc @@ -0,0 +1,200 @@ +{$IfDef read_interface} +function GCONF_VALUE_TYPE_VALID(x : longint) : gboolean; + +function gconf_value_get_string(x : PGConfValue) : Pgchar; +function gconf_value_get_int(x : PGConfValue) : gint; +function gconf_value_get_float(x : PGConfValue) : gfloat; +function gconf_value_get_list_type(x : PGConfValue) : TGConfValueType; +function gconf_value_get_list(x : PGConfValue) : PGSList; +function gconf_value_get_car(x : PGConfValue) : PGConfValue; +function gconf_value_get_cdr(x : PGConfValue) : PGConfValue; +function gconf_value_get_bool(x : PGConfValue) : gboolean; +function gconf_value_get_schema(x : PGConfValue) : PGConfSchema; + +function gconf_value_new(_type:TGConfValueType):PGConfValue;cdecl;external gconfdll name 'gconf_value_new'; +function gconf_value_copy(src:PGConfValue):PGConfValue;cdecl;external gconfdll name 'gconf_value_copy'; +procedure gconf_value_free(value:PGConfValue);cdecl;external gconfdll name 'gconf_value_free'; +procedure gconf_value_set_int(value:PGConfValue; the_int:gint);cdecl;external gconfdll name 'gconf_value_set_int'; +procedure gconf_value_set_string(value:PGConfValue; the_str:Pgchar);cdecl;external gconfdll name 'gconf_value_set_string'; +procedure gconf_value_set_float(value:PGConfValue; the_float:gdouble);cdecl;external gconfdll name 'gconf_value_set_float'; +procedure gconf_value_set_bool(value:PGConfValue; the_bool:gboolean);cdecl;external gconfdll name 'gconf_value_set_bool'; +procedure gconf_value_set_schema(value:PGConfValue; sc:PGConfSchema);cdecl;external gconfdll name 'gconf_value_set_schema'; +procedure gconf_value_set_schema_nocopy(value:PGConfValue; sc:PGConfSchema);cdecl;external gconfdll name 'gconf_value_set_schema_nocopy'; +procedure gconf_value_set_car(value:PGConfValue; car:PGConfValue);cdecl;external gconfdll name 'gconf_value_set_car'; +procedure gconf_value_set_car_nocopy(value:PGConfValue; car:PGConfValue);cdecl;external gconfdll name 'gconf_value_set_car_nocopy'; +procedure gconf_value_set_cdr(value:PGConfValue; cdr:PGConfValue);cdecl;external gconfdll name 'gconf_value_set_cdr'; +procedure gconf_value_set_cdr_nocopy(value:PGConfValue; cdr:PGConfValue);cdecl;external gconfdll name 'gconf_value_set_cdr_nocopy'; +procedure gconf_value_set_list_type(value:PGConfValue; thetype:TGConfValueType);cdecl;external gconfdll name 'gconf_value_set_list_type'; +procedure gconf_value_set_list_nocopy(value:PGConfValue; list:PGSList);cdecl;external gconfdll name 'gconf_value_set_list_nocopy'; +procedure gconf_value_set_list(value:PGConfValue; list:PGSList);cdecl;external gconfdll name 'gconf_value_set_list'; +function gconf_value_to_string(value:PGConfValue):Pgchar;cdecl;external gconfdll name 'gconf_value_to_string'; + +type + PGConfMetaInfo = ^TGConfMetaInfo; + TGConfMetaInfo = record + schema : Pgchar; + mod_user : Pgchar; + mod_time : TGTime; + end; + +function gconf_meta_info_get_schema(x : PGConfMetaInfo) : Pgchar; +function gconf_meta_info_get_mod_user(x : PGConfMetaInfo) : Pgchar; +function gconf_meta_info_mod_time(x : PGConfMetaInfo) : TGTime; + +function gconf_meta_info_new:PGConfMetaInfo;cdecl;external gconfdll name 'gconf_meta_info_new'; +procedure gconf_meta_info_free(gcmi:PGConfMetaInfo);cdecl;external gconfdll name 'gconf_meta_info_free'; +procedure gconf_meta_info_set_schema(gcmi:PGConfMetaInfo; schema_name:Pgchar);cdecl;external gconfdll name 'gconf_meta_info_set_schema'; +procedure gconf_meta_info_set_mod_user(gcmi:PGConfMetaInfo; mod_user:Pgchar);cdecl;external gconfdll name 'gconf_meta_info_set_mod_user'; +procedure gconf_meta_info_set_mod_time(gcmi:PGConfMetaInfo; mod_time:TGTime);cdecl;external gconfdll name 'gconf_meta_info_set_mod_time'; + +type + PGConfEntry = ^TGConfEntry; + TGConfEntry = record + key : Pgchar; + value : PGConfValue; + schema_name : Pgchar; + flag0 : word; + end; + +const + bm__GConfEntry_is_default = $1; + bp__GConfEntry_is_default = 0; + bm__GConfEntry_is_writable = $2; + bp__GConfEntry_is_writable = 1; +function is_default(var a : TGConfEntry) : gboolean; +procedure set_is_default(var a : TGConfEntry; __is_default : gboolean); +function is_writable(var a : TGConfEntry) : gboolean; +procedure set_is_writable(var a : TGConfEntry; __is_writable : gboolean); + +function gconf_entry_get_key(x : PGConfEntry) : Pgchar; +function gconf_entry_get_value(x : PGConfEntry) : PGConfValue; +function gconf_entry_get_schema_name(x : PGConfEntry) : Pgchar; +function gconf_entry_get_is_default(x : PGConfEntry) : gboolean; +function gconf_entry_get_is_writable(x : PGConfEntry) : gboolean; + +function gconf_entry_new(key:Pgchar; val:PGConfValue):PGConfEntry;cdecl;external gconfdll name 'gconf_entry_new'; +function gconf_entry_new_nocopy(key:Pgchar; val:PGConfValue):PGConfEntry;cdecl;external gconfdll name 'gconf_entry_new_nocopy'; +procedure gconf_entry_free(entry:PGConfEntry);cdecl;external gconfdll name 'gconf_entry_free'; +function gconf_entry_steal_value(entry:PGConfEntry):PGConfValue;cdecl;external gconfdll name 'gconf_entry_steal_value'; +procedure gconf_entry_set_value(entry:PGConfEntry; val:PGConfValue);cdecl;external gconfdll name 'gconf_entry_set_value'; +procedure gconf_entry_set_value_nocopy(entry:PGConfEntry; val:PGConfValue);cdecl;external gconfdll name 'gconf_entry_set_value_nocopy'; + +procedure gconf_entry_set_schema_name(entry:PGConfEntry; name:Pgchar);cdecl;external gconfdll name 'gconf_entry_set_schema_name'; +procedure gconf_entry_set_is_default(entry:PGConfEntry; is_default:gboolean);cdecl;external gconfdll name 'gconf_entry_set_is_default'; +procedure gconf_entry_set_is_writable(entry:PGConfEntry; is_writable:gboolean);cdecl;external gconfdll name 'gconf_entry_set_is_writable'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GCONF_VALUE_TYPE_VALID(x : longint) : gboolean; +begin + GCONF_VALUE_TYPE_VALID:=(x > Longint(GCONF_VALUE_INVALID)) and (x <= Longint(GCONF_VALUE_PAIR)); +end; + +function gconf_value_get_string(x : PGConfValue) : Pgchar; +begin + gconf_value_get_string:=x^.d.string_data; +end; + +function gconf_value_get_int(x : PGConfValue) : gint; +begin + gconf_value_get_int:=x^.d.int_data; +end; + +function gconf_value_get_float(x : PGConfValue) : gfloat; +begin + gconf_value_get_float:=x^.d.float_data; +end; + +function gconf_value_get_list_type(x : PGConfValue) : TGConfValueType; +begin + gconf_value_get_list_type:=x^.d.list_data.listtype; +end; + +function gconf_value_get_list(x : PGConfValue) : PGSList; +begin + gconf_value_get_list:=x^.d.list_data.list; +end; + +function gconf_value_get_car(x : PGConfValue) : PGConfValue; +begin + gconf_value_get_car:=x^.d.pair_data.car; +end; + +function gconf_value_get_cdr(x : PGConfValue) : PGConfValue; +begin + gconf_value_get_cdr:=x^.d.pair_data.cdr; +end; + +function gconf_value_get_bool(x : PGConfValue) : gboolean; +begin + gconf_value_get_bool:=x^.d.bool_data; +end; + +function gconf_value_get_schema(x : PGConfValue) : PGConfSchema; +begin + gconf_value_get_schema:=x^.d.schema_data; +end; + +function gconf_meta_info_get_schema(x : PGConfMetaInfo) : Pgchar; +begin + gconf_meta_info_get_schema:=x^.schema; +end; + +function gconf_meta_info_get_mod_user(x : PGConfMetaInfo) : Pgchar; +begin + gconf_meta_info_get_mod_user:=x^.mod_user; +end; + +function gconf_meta_info_mod_time(x : PGConfMetaInfo) : TGTime; +begin + gconf_meta_info_mod_time:=x^.mod_time; +end; + +function is_default(var a : TGConfEntry) : gBoolean; +begin + is_default:=gBoolean((a.flag0 and bm__GConfEntry_is_default) shr bp__GConfEntry_is_default); +end; + +procedure set_is_default(var a : TGConfEntry; __is_default : gBoolean); +begin + a.flag0:=a.flag0 or ((gint(__is_default) shl bp__GConfEntry_is_default) and bm__GConfEntry_is_default); +end; + +function is_writable(var a : TGConfEntry) : gBoolean; +begin + is_writable:=gBoolean((a.flag0 and bm__GConfEntry_is_writable) shr bp__GConfEntry_is_writable); +end; + +procedure set_is_writable(var a : TGConfEntry; __is_writable : gBoolean); +begin + a.flag0:=a.flag0 or ((gint(__is_writable) shl bp__GConfEntry_is_writable) and bm__GConfEntry_is_writable); +end; + +function gconf_entry_get_key(x : PGConfEntry) : Pgchar; +begin + gconf_entry_get_key:=x^.key; +end; + +function gconf_entry_get_value(x : PGConfEntry) : PGConfValue; +begin + gconf_entry_get_value:=x^.value; +end; + +function gconf_entry_get_schema_name(x : PGConfEntry) : Pgchar; +begin + gconf_entry_get_schema_name:=x^.schema_name; +end; + +function gconf_entry_get_is_default(x : PGConfEntry) : gBoolean; +begin + gconf_entry_get_is_default:=is_default(X^); +end; + +function gconf_entry_get_is_writable(x : PGConfEntry) : gBoolean; +begin + gconf_entry_get_is_writable:=is_writable(X^); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/gconfclient/gconfchangeset.inc b/packages/gnome1/src/gconfclient/gconfchangeset.inc new file mode 100644 index 0000000000..b640a19c26 --- /dev/null +++ b/packages/gnome1/src/gconfclient/gconfchangeset.inc @@ -0,0 +1,42 @@ +{$IfDef read_interface} + +type + PGConfChangeSet = ^TGConfChangeSet; + TGConfChangeSet = Record + end; + + TGConfChangeSetForeachFunc = procedure (cs:PGConfChangeSet; key:Pgchar; value:PGConfValue; user_data:gpointer);cdecl; + +function gconf_engine_commit_change_set(conf:PGConfEngine; cs:PGConfChangeSet; remove_committed:gboolean; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_engine_commit_change_set'; +function gconf_engine_reverse_change_set(conf:PGConfEngine; cs:PGConfChangeSet; err:PPGError):PGConfChangeSet;cdecl;external gconfclientdll name 'gconf_engine_reverse_change_set'; +function gconf_engine_change_set_from_currentv(conf:PGConfEngine; keys:PPgchar; err:PPGError):PGConfChangeSet;cdecl;external gconfclientdll name 'gconf_engine_change_set_from_currentv'; +function gconf_engine_change_set_from_current(conf:PGConfEngine; err:PPGError; first_key:Pgchar; + args:array of const):PGConfChangeSet;cdecl;external gconfclientdll name 'gconf_engine_change_set_from_current'; +function gconf_engine_change_set_from_current(conf:PGConfEngine; err:PPGError; first_key:Pgchar):PGConfChangeSet;cdecl;varargs;external gconfclientdll name 'gconf_engine_change_set_from_current'; +function gconf_change_set_new:PGConfChangeSet;cdecl;external gconfclientdll name 'gconf_change_set_new'; +procedure gconf_change_set_ref(cs:PGConfChangeSet);cdecl;external gconfclientdll name 'gconf_change_set_ref'; +procedure gconf_change_set_unref(cs:PGConfChangeSet);cdecl;external gconfclientdll name 'gconf_change_set_unref'; +procedure gconf_change_set_clear(cs:PGConfChangeSet);cdecl;external gconfclientdll name 'gconf_change_set_clear'; +function gconf_change_set_size(cs:PGConfChangeSet):guint;cdecl;external gconfclientdll name 'gconf_change_set_size'; +procedure gconf_change_set_remove(cs:PGConfChangeSet; key:Pgchar);cdecl;external gconfclientdll name 'gconf_change_set_remove'; +procedure gconf_change_set_foreach(cs:PGConfChangeSet; func:TGConfChangeSetForeachFunc; user_data:gpointer);cdecl;external gconfclientdll name 'gconf_change_set_foreach'; +function gconf_change_set_check_value(cs:PGConfChangeSet; key:Pgchar; value_retloc:PPGConfValue):gboolean;cdecl;external gconfclientdll name 'gconf_change_set_check_value'; +procedure gconf_change_set_set(cs:PGConfChangeSet; key:Pgchar; value:PGConfValue);cdecl;external gconfclientdll name 'gconf_change_set_set'; +procedure gconf_change_set_set_nocopy(cs:PGConfChangeSet; key:Pgchar; value:PGConfValue);cdecl;external gconfclientdll name 'gconf_change_set_set_nocopy'; +procedure gconf_change_set_unset(cs:PGConfChangeSet; key:Pgchar);cdecl;external gconfclientdll name 'gconf_change_set_unset'; +procedure gconf_change_set_set_float(cs:PGConfChangeSet; key:Pgchar; val:gdouble);cdecl;external gconfclientdll name 'gconf_change_set_set_float'; +procedure gconf_change_set_set_int(cs:PGConfChangeSet; key:Pgchar; val:gint);cdecl;external gconfclientdll name 'gconf_change_set_set_int'; +procedure gconf_change_set_set_string(cs:PGConfChangeSet; key:Pgchar; val:Pgchar);cdecl;external gconfclientdll name 'gconf_change_set_set_string'; +procedure gconf_change_set_set_bool(cs:PGConfChangeSet; key:Pgchar; val:gboolean);cdecl;external gconfclientdll name 'gconf_change_set_set_bool'; +procedure gconf_change_set_set_schema(cs:PGConfChangeSet; key:Pgchar; val:PGConfSchema);cdecl;external gconfclientdll name 'gconf_change_set_set_schema'; +procedure gconf_change_set_set_list(cs:PGConfChangeSet; key:Pgchar; list_type:TGConfValueType; list:PGSList);cdecl;external gconfclientdll name 'gconf_change_set_set_list'; +procedure gconf_change_set_set_pair(cs:PGConfChangeSet; key:Pgchar; car_type:TGConfValueType; cdr_type:TGConfValueType; const address_of_car:gpointer; + const address_of_cdr:gpointer);cdecl;external gconfclientdll name 'gconf_change_set_set_pair'; +procedure gconf_change_set_set_user_data(cs:PGConfChangeSet; data:gpointer; dnotify:TGDestroyNotify);cdecl;external gconfclientdll name 'gconf_change_set_set_user_data'; +function gconf_change_set_get_user_data(cs:PGConfChangeSet):gpointer;cdecl;external gconfclientdll name 'gconf_change_set_get_user_data'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/gconfclient/gconfclient.pp b/packages/gnome1/src/gconfclient/gconfclient.pp new file mode 100644 index 0000000000..7be3f7213f --- /dev/null +++ b/packages/gnome1/src/gconfclient/gconfclient.pp @@ -0,0 +1,148 @@ +{ + + gconfclient + Copyright (C) 1999, 2000 Red Hat Inc. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. +} +unit gconfclient; + +{$PACKRECORDS C} +{$mode objfpc} + +interface + +Uses glib, gtk, gconf; + +const + gconfclientdll ='gconf-gtk-1'; + +{$define read_interface} +{$undef read_implementation} + +{$include gconflisteners.inc} +{$include gconfchangeset.inc} + +type + TGConfClientPreloadType = (GCONF_CLIENT_PRELOAD_NONE,GCONF_CLIENT_PRELOAD_ONELEVEL, + GCONF_CLIENT_PRELOAD_RECURSIVE); + + TGConfClientErrorHandlingMode = (GCONF_CLIENT_HANDLE_NONE,GCONF_CLIENT_HANDLE_UNRETURNED, + GCONF_CLIENT_HANDLE_ALL); + + + PGConfClient = ^TGConfClient; + TGConfClient = record + theobject : TGtkObject; + engine : PGConfEngine; + error_mode : TGConfClientErrorHandlingMode; + dir_hash : PGHashTable; + cache_hash : PGHashTable; + listeners : PGConfListeners; + end; + GCONF_CLIENT = TGCONFCLIENT; + + PGConfClientClass = ^TGConfClientClass; + TGConfClientClass = record + parent_class : PGtkObjectClass; + value_changed : procedure (client:PGConfClient; key:Pgchar; value:PGConfValue); cdecl; + unreturned_error : procedure (client:PGConfClient; error:PGError); cdecl; + error : procedure (client:PGConfClient; error:PGError); cdecl; + end; + GCONF_CLIENT_CLASS = TGCONFCLIENTCLASS; + + + TGConfClientNotifyFunc = procedure (client:PGConfClient; cnxn_id:guint; entry:PGConfEntry; user_data:gpointer);cdecl; + + TGConfClientErrorHandlerFunc = procedure (client:PGConfClient; error:PGError);cdecl; + +function GCONF_TYPE_CLIENT : TGTKType; + +function GCONF_IS_CLIENT(obj : Pointer) : Boolean; +function GCONF_IS_CLIENT_CLASS(klass : Pointer) : Boolean; + +function gconf_client_get_type:TGtkType;cdecl;external gconfclientdll name 'gconf_client_get_type'; +function gconf_client_get_default:PGConfClient;cdecl;external gconfclientdll name 'gconf_client_get_default'; +function gconf_client_get_for_engine(engine:PGConfEngine):PGConfClient;cdecl;external gconfclientdll name 'gconf_client_get_for_engine'; +procedure gconf_client_add_dir(client:PGConfClient; dir:Pgchar; preload:TGConfClientPreloadType; err:PPGError);cdecl;external gconfclientdll name 'gconf_client_add_dir'; +procedure gconf_client_remove_dir(client:PGConfClient; dir:Pgchar; err:PPGError);cdecl;external gconfclientdll name 'gconf_client_remove_dir'; +function gconf_client_notify_add(client:PGConfClient; namespace_section:Pgchar; func:TGConfClientNotifyFunc; user_data:gpointer; destroy_notify:TGFreeFunc; + err:PPGError):guint;cdecl;external gconfclientdll name 'gconf_client_notify_add'; +procedure gconf_client_notify_remove(client:PGConfClient; cnxn:guint);cdecl;external gconfclientdll name 'gconf_client_notify_remove'; +procedure gconf_client_set_error_handling(client:PGConfClient; mode:TGConfClientErrorHandlingMode);cdecl;external gconfclientdll name 'gconf_client_set_error_handling'; +procedure gconf_client_set_global_default_error_handler(func:TGConfClientErrorHandlerFunc);cdecl;external gconfclientdll name 'gconf_client_set_global_default_error_handler'; +procedure gconf_client_clear_cache(client:PGConfClient);cdecl;external gconfclientdll name 'gconf_client_clear_cache'; +procedure gconf_client_preload(client:PGConfClient; dirname:Pgchar; thetype:TGConfClientPreloadType; err:PPGError);cdecl;external gconfclientdll name 'gconf_client_preload'; +procedure gconf_client_set(client:PGConfClient; key:Pgchar; val:PGConfValue; err:PPGError);cdecl;external gconfclientdll name 'gconf_client_set'; +function gconf_client_get(client:PGConfClient; key:Pgchar; err:PPGError):PGConfValue;cdecl;external gconfclientdll name 'gconf_client_get'; +function gconf_client_get_without_default(client:PGConfClient; key:Pgchar; err:PPGError):PGConfValue;cdecl;external gconfclientdll name 'gconf_client_get_without_default'; +function gconf_client_get_entry(client:PGConfClient; key:Pgchar; locale:Pgchar; use_schema_default:gboolean; err:PPGError):PGConfEntry;cdecl;external gconfclientdll name 'gconf_client_get_entry'; +function gconf_client_get_default_from_schema(client:PGConfClient; key:Pgchar; err:PPGError):PGConfValue;cdecl;external gconfclientdll name 'gconf_client_get_default_from_schema'; +function gconf_client_unset(client:PGConfClient; key:Pgchar; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_unset'; +function gconf_client_all_entries(client:PGConfClient; dir:Pgchar; err:PPGError):PGSList;cdecl;external gconfclientdll name 'gconf_client_all_entries'; +function gconf_client_all_dirs(client:PGConfClient; dir:Pgchar; err:PPGError):PGSList;cdecl;external gconfclientdll name 'gconf_client_all_dirs'; +procedure gconf_client_suggest_sync(client:PGConfClient; err:PPGError);cdecl;external gconfclientdll name 'gconf_client_suggest_sync'; +function gconf_client_dir_exists(client:PGConfClient; dir:Pgchar; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_dir_exists'; +function gconf_client_key_is_writable(client:PGConfClient; key:Pgchar; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_key_is_writable'; +function gconf_client_get_float(client:PGConfClient; key:Pgchar; err:PPGError):gdouble;cdecl;external gconfclientdll name 'gconf_client_get_float'; +function gconf_client_get_int(client:PGConfClient; key:Pgchar; err:PPGError):gint;cdecl;external gconfclientdll name 'gconf_client_get_int'; +function gconf_client_get_string(client:PGConfClient; key:Pgchar; err:PPGError):Pgchar;cdecl;external gconfclientdll name 'gconf_client_get_string'; +function gconf_client_get_bool(client:PGConfClient; key:Pgchar; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_get_bool'; +function gconf_client_get_schema(client:PGConfClient; key:Pgchar; err:PPGError):PGConfSchema;cdecl;external gconfclientdll name 'gconf_client_get_schema'; +function gconf_client_get_list(client:PGConfClient; key:Pgchar; list_type:TGConfValueType; err:PPGError):PGSList;cdecl;external gconfclientdll name 'gconf_client_get_list'; +function gconf_client_get_pair(client:PGConfClient; key:Pgchar; car_type:TGConfValueType; cdr_type:TGConfValueType; car_retloc:gpointer; + cdr_retloc:gpointer; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_get_pair'; +function gconf_client_set_float(client:PGConfClient; key:Pgchar; val:gdouble; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_set_float'; +function gconf_client_set_int(client:PGConfClient; key:Pgchar; val:gint; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_set_int'; +function gconf_client_set_string(client:PGConfClient; key:Pgchar; val:Pgchar; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_set_string'; +function gconf_client_set_bool(client:PGConfClient; key:Pgchar; val:gboolean; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_set_bool'; +function gconf_client_set_schema(client:PGConfClient; key:Pgchar; val:PGConfSchema; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_set_schema'; +function gconf_client_set_list(client:PGConfClient; key:Pgchar; list_type:TGConfValueType; list:PGSList; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_set_list'; +function gconf_client_set_pair(client:PGConfClient; key:Pgchar; car_type:TGConfValueType; cdr_type:TGConfValueType; const address_of_car:gpointer; + const address_of_cdr:gpointer; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_set_pair'; +procedure gconf_client_error(client:PGConfClient; error:PGError);cdecl;external gconfclientdll name 'gconf_client_error'; +procedure gconf_client_unreturned_error(client:PGConfClient; error:PGError);cdecl;external gconfclientdll name 'gconf_client_unreturned_error'; +procedure gconf_client_value_changed(client:PGConfClient; key:Pgchar; value:PGConfValue);cdecl;external gconfclientdll name 'gconf_client_value_changed'; +function gconf_client_commit_change_set(client:PGConfClient; cs:PGConfChangeSet; remove_committed:gboolean; err:PPGError):gboolean;cdecl;external gconfclientdll name 'gconf_client_commit_change_set'; +function gconf_client_reverse_change_set(client:PGConfClient; cs:PGConfChangeSet; err:PPGError):PGConfChangeSet;cdecl;external gconfclientdll name 'gconf_client_reverse_change_set'; +function gconf_client_change_set_from_currentv(client:PGConfClient; keys:PPgchar; err:PPGError):PGConfChangeSet;cdecl;external gconfclientdll name 'gconf_client_change_set_from_currentv'; +function gconf_client_change_set_from_current(client:PGConfClient; err:PPGError; first_key:Pgchar; args:array of const):PGConfChangeSet;cdecl;external gconfclientdll name 'gconf_client_change_set_from_current'; +function gconf_client_change_set_from_current(client:PGConfClient; err:PPGError; first_key:Pgchar):PGConfChangeSet;cdecl;external gconfclientdll name 'gconf_client_change_set_from_current'; + +implementation + +function GCONF_TYPE_CLIENT : TGTKType; + begin + GCONF_TYPE_CLIENT:=gconf_client_get_type; + end; + +function GCONF_IS_CLIENT(obj:pointer):boolean; +begin + GCONF_IS_CLIENT:=(obj<>nil) and GCONF_IS_CLIENT_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GCONF_IS_CLIENT_CLASS(klass:pointer):boolean; +begin + GCONF_IS_CLIENT_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GCONF_TYPE_CLIENT); +end; + +{$define read_implementation} +{$undef read_interface} + +{$include gconflisteners.inc} +{$include gconfchangeset.inc} + +end. diff --git a/packages/gnome1/src/gconfclient/gconflisteners.inc b/packages/gnome1/src/gconfclient/gconflisteners.inc new file mode 100644 index 0000000000..9b78095488 --- /dev/null +++ b/packages/gnome1/src/gconfclient/gconflisteners.inc @@ -0,0 +1,29 @@ +{$IfDef read_interface} + +type + PGConfListeners = ^TGConfListeners; + + TGConfListeners = Record + end; + + TGConfListenersCallback = procedure (listeners:PGConfListeners; all_above_key:Pgchar; cnxn_id:guint; listener_data:gpointer; user_data:gpointer);cdecl; + + TGConfListenersForeach = procedure (location:Pgchar; cnxn_id:guint; listener_data:gpointer; user_data:gpointer);cdecl; + + TGConfListenersPredicate = function (location:Pgchar; cnxn_id:guint; listener_data:gpointer; user_data:gpointer):gboolean;cdecl; + +function gconf_listeners_new:PGConfListeners;cdecl;external gconfclientdll name 'gconf_listeners_new'; +procedure gconf_listeners_free(listeners:PGConfListeners);cdecl;external gconfclientdll name 'gconf_listeners_free'; +function gconf_listeners_add(listeners:PGConfListeners; listen_point:Pgchar; listener_data:gpointer; destroy_notify:TGFreeFunc):guint;cdecl;external gconfclientdll name 'gconf_listeners_add'; +procedure gconf_listeners_remove(listeners:PGConfListeners; cnxn_id:guint);cdecl;external gconfclientdll name 'gconf_listeners_remove'; +procedure gconf_listeners_notify(listeners:PGConfListeners; all_above:Pgchar; callback:TGConfListenersCallback; user_data:gpointer);cdecl;external gconfclientdll name 'gconf_listeners_notify'; +function gconf_listeners_count(listeners:PGConfListeners):guint;cdecl;external gconfclientdll name 'gconf_listeners_count'; +procedure gconf_listeners_foreach(listeners:PGConfListeners; callback:TGConfListenersForeach; user_data:gpointer);cdecl;external gconfclientdll name 'gconf_listeners_foreach'; +function gconf_listeners_get_data(listeners:PGConfListeners; cnxn_id:guint; listener_data_p:Pgpointer; location_p:PPgchar):gboolean;cdecl;external gconfclientdll name 'gconf_listeners_get_data'; +procedure gconf_listeners_remove_if(listeners:PGConfListeners; predicate:TGConfListenersPredicate; user_data:gpointer);cdecl;external gconfclientdll name 'gconf_listeners_remove_if'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libart.pp b/packages/gnome1/src/libart.pp new file mode 100644 index 0000000000..8a8d227126 --- /dev/null +++ b/packages/gnome1/src/libart.pp @@ -0,0 +1,324 @@ +unit libart; + +{$PACKRECORDS C} +{$mode objfpc} + +interface + +const + libartdll='art_lgpl'; + +type + PPlongint = ^Plongint; + + Part_u8 = ^art_u8; + art_u8 = Byte; + Part_u16 = ^art_u16; + art_u16 = word; + Part_u32 = ^art_u32; + art_u32 = longword; + PArtUtaBbox = ^TArtUtaBbox; + TArtUtaBbox = art_u32; + + Part_boolean = ^art_boolean; + art_boolean = boolean; + + Taffine_array = array[0..5] of double; + Taffine_string = array[0..127] of char; + + TArtPathcode = (ART_MOVETO,ART_MOVETO_OPEN,ART_CURVETO,ART_LINETO,ART_END); + TArtFilterLevel = (ART_FILTER_NEAREST,ART_FILTER_TILES,ART_FILTER_BILINEAR,ART_FILTER_HYPER); + TArtPathStrokeJoinType = (ART_PATH_STROKE_JOIN_MITER,ART_PATH_STROKE_JOIN_ROUND,ART_PATH_STROKE_JOIN_BEVEL); + TArtPathStrokeCapType = (ART_PATH_STROKE_CAP_BUTT,ART_PATH_STROKE_CAP_ROUND,ART_PATH_STROKE_CAP_SQUARE); + TArtWindRule = (ART_WIND_RULE_NONZERO,ART_WIND_RULE_INTERSECT,ART_WIND_RULE_ODDEVEN,ART_WIND_RULE_POSITIVE); + TArtPixFormat = (ART_PIX_RGB); + + TArtDestroyNotify = procedure (func_data:pointer; data:pointer);cdecl; + + (* Art Point *) + PArtPoint = ^TArtPoint; + TArtPoint = record + x : double; + y : double; + end; + + (* Art Double Rect *) + PArtDRect = ^TArtDRect; + TArtDRect = record + x0 : double; + y0 : double; + x1 : double; + y1 : double; + end; + + (* Art Longint Rect *) + PArtIRect = ^TArtIRect; + TArtIRect = record + x0 : longint; + y0 : longint; + x1 : longint; + y1 : longint; + end; + + (* Art Bezier Path *) + PArtBpath = ^TArtBpath; + TArtBpath = record + code : TArtPathcode; + x1 : double; + y1 : double; + x2 : double; + y2 : double; + x3 : double; + y3 : double; + end; + + PPArtVpath = ^PArtVpath; + PArtVpath = ^TArtVpath; + TArtVpath = record + code : TArtPathcode; + x : double; + y : double; + end; + + PArtVpathDash = ^TArtVpathDash; + TArtVpathDash = record + offset : double; + n_dash : longint; + dash : Pdouble; + end; + + PArtAlphaGamma = ^TArtAlphaGamma; + TArtAlphaGamma = record + gamma : double; + invtable_size : longint; + table : array[0..255] of longint; + invtable : array[0..0] of art_u8; + end; + + PArtSVPSeg = ^TArtSVPSeg; + TArtSVPSeg = record + n_points : longint; + dir : longint; + bbox : TArtDRect; + points : PArtPoint; + end; + + PPArtSVP = ^PArtSVP; + PArtSVP = ^TArtSVP; + TArtSVP = record + n_segs : longint; + segs : array[0..0] of TArtSVPSeg; + end; + + PArtSVPRenderAAStep = ^TArtSVPRenderAAStep; + TArtSVPRenderAAStep = record + x : longint; + delta : longint; + end; + + PArtPixBuf = ^TArtPixBuf; + TArtPixBuf = record + format : TArtPixFormat; + n_channels : longint; + has_alpha : longint; + bits_per_sample : longint; + pixels : Part_u8; + width : longint; + height : longint; + rowstride : longint; + destroy_data : pointer; + destroy : TArtDestroyNotify; + end; + + PArtUta = ^TArtUta; + TArtUta = record + x0 : longint; + y0 : longint; + width : longint; + height : longint; + utiles : PArtUtaBbox; + end; + + Tart_svp_render_aa_callback = procedure (callback_data:pointer; y:longint; start:longint; steps:PArtSVPRenderAAStep; n_steps:longint); cdecl; + +const + ART_FALSE = FALSE; + ART_TRUE = TRUE; + M_PI = 3.14159265358979323846; + M_SQRT2 = 1.41421356237309504880; + +const + ART_UTILE_SHIFT = 5; + ART_UTILE_SIZE = 1 shl ART_UTILE_SHIFT; + +procedure art_die(fmt:Pchar; args:array of const);cdecl;external libartdll name 'art_die'; +procedure art_warn(fmt:Pchar; args:array of const);cdecl;external libartdll name 'art_warn'; + +(* ART longint Rect *) +procedure art_irect_copy(dest:PArtIRect; src:PArtIRect);cdecl;external libartdll name 'art_irect_copy'; +procedure art_irect_union(dest:PArtIRect; src1:PArtIRect; src2:PArtIRect);cdecl;external libartdll name 'art_irect_union'; +procedure art_irect_intersect(dest:PArtIRect; src1:PArtIRect; src2:PArtIRect);cdecl;external libartdll name 'art_irect_intersect'; +function art_irect_empty(src:PArtIRect):longint;cdecl;external libartdll name 'art_irect_empty'; + +(* ART double Rect *) +procedure art_drect_copy(dest:PArtDRect; src:PArtDRect);cdecl;external libartdll name 'art_drect_copy'; +procedure art_drect_union(dest:PArtDRect; src1:PArtDRect; src2:PArtDRect);cdecl;external libartdll name 'art_drect_union'; +procedure art_drect_intersect(dest:PArtDRect; src1:PArtDRect; src2:PArtDRect);cdecl;external libartdll name 'art_drect_intersect'; +function art_drect_empty(src:PArtDRect):longint;cdecl;external libartdll name 'art_drect_empty'; +procedure art_drect_affine_transform(dst:PArtDRect; src:PArtDRect; matrix:Taffine_array);cdecl;external libartdll name 'art_drect_affine_transform'; +procedure art_drect_to_irect(dst:PArtIRect; src:PArtDRect);cdecl;external libartdll name 'art_drect_to_irect'; +procedure art_drect_svp(bbox:PArtDRect; svp:PArtSVP);cdecl;external libartdll name 'art_drect_svp'; +procedure art_drect_svp_union(bbox:PArtDRect; svp:PArtSVP);cdecl;external libartdll name 'art_drect_svp_union'; + +(* ART bezier's *) +function art_bezier_to_vec(x0:double; y0:double; x1:double; y1:double; x2:double; + y2:double; x3:double; y3:double; p:PArtPoint; level:longint):PArtPoint;cdecl;external libartdll name 'art_bezier_to_vec'; +function art_bez_path_to_vec(bez:PArtBpath; flatness:double):PArtVpath;cdecl;external libartdll name 'art_bez_path_to_vec'; +function art_bpath_affine_transform(src:PArtBpath; matrix:Taffine_array):PArtBpath;cdecl;external libartdll name 'art_bpath_affine_transform'; + +(* ART affine transformations *) +procedure art_affine_point(dst:PArtPoint; src:PArtPoint; affine:Taffine_array);cdecl;external libartdll name 'art_affine_point'; +procedure art_affine_invert(dst_affine:Taffine_array; src_affine:Taffine_array);cdecl;external libartdll name 'art_affine_invert'; +procedure art_affine_flip(dst_affine:Taffine_array; src_affine:Taffine_array; horz:longint; vert:longint);cdecl;external libartdll name 'art_affine_flip'; +procedure art_affine_to_string(str:Taffine_string; src:Taffine_array);cdecl;external libartdll name 'art_affine_to_string'; +procedure art_affine_multiply(dst:Taffine_array; src1:Taffine_array; src2:Taffine_array);cdecl;external libartdll name 'art_affine_multiply'; +procedure art_affine_identity(dst:Taffine_array);cdecl;external libartdll name 'art_affine_identity'; +procedure art_affine_scale(dst:Taffine_array; sx:double; sy:double);cdecl;external libartdll name 'art_affine_scale'; +procedure art_affine_rotate(dst:Taffine_array; theta:double);cdecl;external libartdll name 'art_affine_rotate'; +procedure art_affine_shear(dst:Taffine_array; theta:double);cdecl;external libartdll name 'art_affine_shear'; +procedure art_affine_translate(dst:Taffine_array; tx:double; ty:double);cdecl;external libartdll name 'art_affine_translate'; +function art_affine_expansion(src:Taffine_array):double;cdecl;external libartdll name 'art_affine_expansion'; +function art_affine_rectilinear(src:Taffine_array):longint;cdecl;external libartdll name 'art_affine_rectilinear'; +function art_affine_equal(matrix1:Taffine_array; matrix2:Taffine_array):longint;cdecl;external libartdll name 'art_affine_equal'; + +(* ART alphagamma *) +function art_alphagamma_new(gamma:double):PArtAlphaGamma;cdecl;external libartdll name 'art_alphagamma_new'; +procedure art_alphagamma_free(alphagamma:PArtAlphaGamma);cdecl;external libartdll name 'art_alphagamma_free'; + + +(* ART SVP *) +function art_svp_add_segment(p_vp:PPArtSVP; pn_segs_max:Plongint; pn_points_max:PPlongint; n_points:longint; dir:longint; + points:PArtPoint; bbox:PArtDRect):longint;cdecl;external libartdll name 'art_svp_add_segment'; +procedure art_svp_free(svp:PArtSVP);cdecl;external libartdll name 'art_svp_free'; +function art_svp_seg_compare(s1:pointer; s2:pointer):longint;cdecl;external libartdll name 'art_svp_seg_compare'; + +function art_svp_union(svp1:PArtSVP; svp2:PArtSVP):PArtSVP;cdecl;external libartdll name 'art_svp_union'; +function art_svp_intersect(svp1:PArtSVP; svp2:PArtSVP):PArtSVP;cdecl;external libartdll name 'art_svp_intersect'; +function art_svp_diff(svp1:PArtSVP; svp2:PArtSVP):PArtSVP;cdecl;external libartdll name 'art_svp_diff'; +function art_svp_minus(svp1:PArtSVP; svp2:PArtSVP):PArtSVP;cdecl;external libartdll name 'art_svp_minus'; + +function art_svp_point_wind(svp:PArtSVP; x:double; y:double):longint;cdecl;external libartdll name 'art_svp_point_wind'; +function art_svp_point_dist(svp:PArtSVP; x:double; y:double):double;cdecl;external libartdll name 'art_svp_point_dist'; + +procedure art_svp_render_aa(svp:PArtSVP; x0:longint; y0:longint; x1:longint; y1:longint; + callback: Tart_svp_render_aa_callback; callback_data:pointer);cdecl;external libartdll name 'art_svp_render_aa'; + +function art_svp_from_vpath(vpath:PArtVpath):PArtSVP;cdecl;external libartdll name 'art_svp_from_vpath'; + +function art_svp_vpath_stroke(vpath:PArtVpath; join:TArtPathStrokeJoinType; cap:TArtPathStrokeCapType; line_width:double; miter_limit:double; + flatness:double):PArtSVP;cdecl;external libartdll name 'art_svp_vpath_stroke'; +function art_svp_vpath_stroke_raw(vpath:PArtVpath; join:TArtPathStrokeJoinType; cap:TArtPathStrokeCapType; line_width:double; miter_limit:double; + flatness:double):PArtVpath;cdecl;external libartdll name 'art_svp_vpath_stroke_raw'; + +function art_svp_uncross(vp:PArtSVP):PArtSVP;cdecl;external libartdll name 'art_svp_uncross'; +function art_svp_rewind_uncrossed(vp:PArtSVP; rule:TArtWindRule):PArtSVP;cdecl;external libartdll name 'art_svp_rewind_uncrossed'; + +(* ART GRAY SVP *) +procedure art_gray_svp_aa(svp:PArtSVP; x0:longint; y0:longint; x1:longint; y1:longint; + buf:Part_u8; rowstride:longint);cdecl;external libartdll name 'art_gray_svp_aa'; + +(* ART VPATH *) +procedure art_vpath_add_point(p_vpath:PPArtVpath; pn_points:Plongint; pn_points_max:Plongint; code:TArtPathcode; x:double; + y:double);cdecl;external libartdll name 'art_vpath_add_point'; +function art_vpath_new_circle(x:double; y:double; r:double):PArtVpath;cdecl;external libartdll name 'art_vpath_new_circle'; +function art_vpath_affine_transform(src:PArtVpath; matrix:Taffine_array):PArtVpath;cdecl;external libartdll name 'art_vpath_affine_transform'; +procedure art_vpath_bbox_drect(vec:PArtVpath; drect:PArtDRect);cdecl;external libartdll name 'art_vpath_bbox_drect'; +procedure art_vpath_bbox_irect(vec:PArtVpath; irect:PArtIRect);cdecl;external libartdll name 'art_vpath_bbox_irect'; +function art_vpath_perturb(src:PArtVpath):PArtVpath;cdecl;external libartdll name 'art_vpath_perturb'; +function art_vpath_from_svp(svp:PArtSVP):PArtVpath;cdecl;external libartdll name 'art_vpath_from_svp'; +function art_vpath_dash(vpath:PArtVpath; dash:PArtVpathDash):PArtVpath;cdecl;external libartdll name 'art_vpath_dash'; + +(* ART PIXBUF *) +function art_pixbuf_new_rgb(pixels:Part_u8; width:longint; height:longint; rowstride:longint):PArtPixBuf;cdecl;external libartdll name 'art_pixbuf_new_rgb'; +function art_pixbuf_new_rgba(pixels:Part_u8; width:longint; height:longint; rowstride:longint):PArtPixBuf;cdecl;external libartdll name 'art_pixbuf_new_rgba'; +function art_pixbuf_new_const_rgb(pixels:Part_u8; width:longint; height:longint; rowstride:longint):PArtPixBuf;cdecl;external libartdll name 'art_pixbuf_new_const_rgb'; +function art_pixbuf_new_const_rgba(pixels:Part_u8; width:longint; height:longint; rowstride:longint):PArtPixBuf;cdecl;external libartdll name 'art_pixbuf_new_const_rgba'; +function art_pixbuf_new_rgb_dnotify(pixels:Part_u8; width:longint; height:longint; rowstride:longint; dfunc_data:pointer; + dfunc:TArtDestroyNotify):PArtPixBuf;cdecl;external libartdll name 'art_pixbuf_new_rgb_dnotify'; +function art_pixbuf_new_rgba_dnotify(pixels:Part_u8; width:longint; height:longint; rowstride:longint; dfunc_data:pointer; + dfunc:TArtDestroyNotify):PArtPixBuf;cdecl;external libartdll name 'art_pixbuf_new_rgba_dnotify'; +procedure art_pixbuf_free(pixbuf:PArtPixBuf);cdecl;external libartdll name 'art_pixbuf_free'; +procedure art_pixbuf_free_shallow(pixbuf:PArtPixBuf);cdecl;external libartdll name 'art_pixbuf_free_shallow'; +function art_pixbuf_duplicate(pixbuf:PArtPixBuf):PArtPixBuf;cdecl;external libartdll name 'art_pixbuf_duplicate'; + +(* ART RGB *) +procedure art_rgb_fill_run(buf:Part_u8; r:art_u8; g:art_u8; b:art_u8; n:longint);cdecl;external libartdll name 'art_rgb_fill_run'; +procedure art_rgb_run_alpha(buf:Part_u8; r:art_u8; g:art_u8; b:art_u8; alpha:longint; n:longint);cdecl;external libartdll name 'art_rgb_run_alpha'; + +procedure art_rgb_affine(dst:Part_u8; x0:longint; y0:longint; x1:longint; y1:longint; + dst_rowstride:longint; src:Part_u8; src_width:longint; src_height:longint; src_rowstride:longint; + affine:Taffine_array; level:TArtFilterLevel; alphagamma:PArtAlphaGamma);cdecl;external libartdll name 'art_rgb_affine'; + +procedure art_rgb_bitmap_affine(dst:Part_u8; x0:longint; y0:longint; x1:longint; y1:longint; + dst_rowstride:longint; src:Part_u8; src_width:longint; src_height:longint; src_rowstride:longint; + rgba:art_u32; affine:Taffine_array; level:TArtFilterLevel; alphagamma:PArtAlphaGamma);cdecl;external libartdll name 'art_rgb_bitmap_affine'; + +procedure art_rgb_pixbuf_affine(dst:Part_u8; x0:longint; y0:longint; x1:longint; y1:longint; + dst_rowstride:longint; pixbuf:PArtPixBuf; affine:Taffine_array; level:TArtFilterLevel; alphagamma:PArtAlphaGamma);cdecl;external libartdll name 'art_rgb_pixbuf_affine'; + +procedure art_rgb_rgba_affine(dst:Part_u8; x0:longint; y0:longint; x1:longint; y1:longint; + dst_rowstride:longint; src:Part_u8; src_width:longint; src_height:longint; src_rowstride:longint; + affine:Taffine_array; level:TArtFilterLevel; alphagamma:PArtAlphaGamma);cdecl;external libartdll name 'art_rgb_rgba_affine'; + +procedure art_rgb_svp_aa(svp:PArtSVP; x0:longint; y0:longint; x1:longint; y1:longint; + fg_color:art_u32; bg_color:art_u32; buf:Part_u8; rowstride:longint; alphagamma:PArtAlphaGamma);cdecl;external libartdll name 'art_rgb_svp_aa'; +procedure art_rgb_svp_alpha(svp:PArtSVP; x0:longint; y0:longint; x1:longint; y1:longint; + rgba:art_u32; buf:Part_u8; rowstride:longint; alphagamma:PArtAlphaGamma);cdecl;external libartdll name 'art_rgb_svp_alpha'; + +(* ART UTA *) +function art_uta_new(x0:longint; y0:longint; x1:longint; y1:longint):PArtUta;cdecl;external libartdll name 'art_uta_new'; +function art_uta_new_coords(x0:longint; y0:longint; x1:longint; y1:longint):PArtUta;cdecl;external libartdll name 'art_uta_new_coords'; +procedure art_uta_free(uta:PArtUta);cdecl;external libartdll name 'art_uta_free'; + +function art_uta_union(uta1:PArtUta; uta2:PArtUta):PArtUta;cdecl;external libartdll name 'art_uta_union'; +function art_uta_from_irect(bbox:PArtIRect):PArtUta;cdecl;external libartdll name 'art_uta_from_irect'; +function art_uta_from_svp(svp:PArtSVP):PArtUta;cdecl;external libartdll name 'art_uta_from_svp'; +function art_uta_from_vpath(vec:PArtVpath):PArtUta;cdecl;external libartdll name 'art_uta_from_vpath'; +procedure art_uta_add_line(uta:PArtUta; x0:double; y0:double; x1:double; y1:double; + rbuf:Plongint; rbuf_rowstride:longint);cdecl;external libartdll name 'art_uta_add_line'; +function art_rect_list_from_uta(uta:PArtUta; max_width:longint; max_height:longint; p_nrects:Plongint):PArtIRect;cdecl;external libartdll name 'art_rect_list_from_uta'; + +function ART_UTA_BBOX_CONS(x0,y0,x1,y1 : longint) : longint; +function ART_UTA_BBOX_X0(ub : longint) : longint; +function ART_UTA_BBOX_Y0(ub : longint) : longint; +function ART_UTA_BBOX_X1(ub : longint) : longint; +function ART_UTA_BBOX_Y1(ub : longint) : longint; + +implementation + +function ART_UTA_BBOX_CONS(x0,y0,x1,y1 : longint) : longint; +begin + ART_UTA_BBOX_CONS:=(((x0 shl 24) or (y0 shl 16)) or (x1 shl 8)) or y1; +end; + +function ART_UTA_BBOX_X0(ub : longint) : longint; +begin + ART_UTA_BBOX_X0:=ub shr 24; +end; + +function ART_UTA_BBOX_Y0(ub : longint) : longint; +begin + ART_UTA_BBOX_Y0:=(ub shr 16) and $ff; +end; + +function ART_UTA_BBOX_X1(ub : longint) : longint; +begin + ART_UTA_BBOX_X1:=(ub shr 8) and $ff; +end; + +function ART_UTA_BBOX_Y1(ub : longint) : longint; +begin + ART_UTA_BBOX_Y1:=ub and $ff; +end; + +end. diff --git a/packages/gnome1/src/libgnome/gnomeconfig.inc b/packages/gnome1/src/libgnome/gnomeconfig.inc new file mode 100644 index 0000000000..78e51cf3d7 --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomeconfig.inc @@ -0,0 +1,395 @@ +{$IfDef read_interface} +function _gnome_config_get_string_with_default(path:Pchar; def:Pgboolean; priv:gint):pchar;cdecl;external libgnomedll name '_gnome_config_get_string_with_default'; +function _gnome_config_get_translated_string_with_default(path:Pchar; def:Pgboolean; priv:gint):pchar;cdecl;external libgnomedll name '_gnome_config_get_translated_string_with_default'; +function _gnome_config_get_int_with_default(path:Pchar; def:Pgboolean; priv:gint):gint;cdecl;external libgnomedll name '_gnome_config_get_int_with_default'; +function _gnome_config_get_float_with_default(path:Pchar; def:Pgboolean; priv:gint):gdouble;cdecl;external libgnomedll name '_gnome_config_get_float_with_default'; +function _gnome_config_get_bool_with_default(path:Pchar; def:Pgboolean; priv:gint):gboolean;cdecl;external libgnomedll name '_gnome_config_get_bool_with_default'; +Procedure _gnome_config_get_vector_with_default(path:Pchar; argcp:Pgint; argvp:PPPchar; def:Pgboolean; priv:gint);cdecl;external libgnomedll name '_gnome_config_get_vector_with_default'; + +function gnome_config_get_string_with_default(path:Pchar; def:Pgboolean):pchar; +function gnome_config_get_translated_string_with_default(path:Pchar; def:Pgboolean):pchar; +function gnome_config_get_int_with_default(path:Pchar; def:Pgboolean):gint; +function gnome_config_get_float_with_default(path:Pchar; def:Pgboolean):gdouble; +function gnome_config_get_bool_with_default(path:Pchar; def:Pgboolean):gboolean; +Procedure gnome_config_get_vector_with_default(path:Pchar; argcp:Pgint; argvp:PPPchar; def:Pgboolean); + +function gnome_config_private_get_string_with_default(path:Pchar; def:Pgboolean):pchar; +function gnome_config_private_get_translated_string_with_default(path:Pchar; def:Pgboolean):pchar; +function gnome_config_private_get_int_with_default(path:Pchar; def:Pgboolean):gint; +function gnome_config_private_get_float_with_default(path:Pchar; def:Pgboolean):gdouble; +function gnome_config_private_get_bool_with_default(path:Pchar; def:Pgboolean):gboolean; +procedure gnome_config_private_get_vector_with_default(path:Pchar; argcp:Pgint; argvp:PPPchar; def:Pgboolean); + +function gnome_config_get_string(path:Pchar):pchar; +function gnome_config_get_translated_string(path:Pchar):pchar; +function gnome_config_get_int(path:Pchar):gint; +function gnome_config_get_float(path:Pchar):gdouble; +function gnome_config_get_bool(path:Pchar):gboolean; +procedure gnome_config_get_vector(path:Pchar; argcp:Pgint; argvp:PPPchar); + +function gnome_config_private_get_string(path:Pchar):pchar; +function gnome_config_private_get_translated_string(path:Pchar):pchar; +function gnome_config_private_get_int(path:Pchar):gint; +function gnome_config_private_get_float(path:Pchar):gdouble; +function gnome_config_private_get_bool(path:Pchar):gboolean; +procedure gnome_config_private_get_vector(path:Pchar; argcp:Pgint; argvp:PPPchar); + +procedure _gnome_config_set_string(path:Pchar; value:Pchar; priv:gint);cdecl;external libgnomedll name '_gnome_config_set_string'; +procedure _gnome_config_set_translated_string(path:Pchar; value:Pchar; priv:gint);cdecl;external libgnomedll name '_gnome_config_set_translated_string'; +procedure _gnome_config_set_int(path:Pchar; value:longint; priv:gint);cdecl;external libgnomedll name '_gnome_config_set_int'; +procedure _gnome_config_set_float(path:Pchar; value:gdouble; priv:gint);cdecl;external libgnomedll name '_gnome_config_set_float'; +procedure _gnome_config_set_bool(path:Pchar; value:gboolean; priv:gint);cdecl;external libgnomedll name '_gnome_config_set_bool'; +procedure _gnome_config_set_vector(path:Pchar; argc:longint; argv:PPchar; priv:gint);cdecl;external libgnomedll name '_gnome_config_set_vector'; + +procedure gnome_config_set_string(path,new_value : Pchar); +procedure gnome_config_set_translated_string(path, new_value : PChar); +procedure gnome_config_set_int(path : PChar; new_value : longint); +procedure gnome_config_set_float(path : PChar; new_value : longint); +procedure gnome_config_set_bool(path : PChar; new_value : gboolean); +procedure gnome_config_set_vector(path:Pchar; argc:longint; argv:PPchar); + +procedure gnome_config_private_set_string(path,new_value : Pchar); +procedure gnome_config_private_set_translated_string(path, new_value : PChar); +procedure gnome_config_private_set_int(path : Pchar; new_value : longint); +procedure gnome_config_private_set_float(path : PChar; new_value : longint); +procedure gnome_config_private_set_bool(path : PChar; new_value : gboolean); +procedure gnome_config_private_set_vector(path:Pchar; argc:longint; argv:PPchar); + +function _gnome_config_has_section(path:Pchar; priv:gint):gboolean;cdecl;external libgnomedll name '_gnome_config_has_section'; + +function gnome_config_has_section(path : Pchar) : gboolean; + +function gnome_config_private_has_section(path : pchar) : gboolean; + +function _gnome_config_init_iterator(path:Pchar; priv:gint):pointer;cdecl;external libgnomedll name '_gnome_config_init_iterator'; +function _gnome_config_init_iterator_sections(path:Pchar; priv:gint):pointer;cdecl;external libgnomedll name '_gnome_config_init_iterator_sections'; +function gnome_config_iterator_next(iterator_handle:pointer; key:PPchar; value:PPchar):pointer;cdecl;external libgnomedll name 'gnome_config_iterator_next'; + +function gnome_config_init_iterator(path : pchar) : pointer; +function gnome_config_init_iterator_sections(path : Pchar) : pointer; + +function gnome_config_private_init_iterator(path : Pchar) : pointer; +function gnome_config_private_init_iterator_sections(path : Pchar) : pointer; + +procedure gnome_config_drop_all;cdecl;external libgnomedll name 'gnome_config_drop_all'; +procedure gnome_config_sync;cdecl;external libgnomedll name 'gnome_config_sync'; +procedure _gnome_config_sync_file(path:Pchar; priv:longint);cdecl;external libgnomedll name '_gnome_config_sync_file'; + +procedure gnome_config_sync_file(path : Pchar); + +procedure gnome_config_private_sync_file(path : Pchar); + +procedure _gnome_config_drop_file(path:Pchar; priv:gint);cdecl;external libgnomedll name '_gnome_config_drop_file'; + +procedure gnome_config_drop_file(path : Pchar); + +procedure gnome_config_private_drop_file(path : Pchar); + +procedure _gnome_config_clean_file(path:Pchar; priv:gint);cdecl;external libgnomedll name '_gnome_config_clean_file'; + +Procedure gnome_config_clean_file(path:Pchar); + +Procedure gnome_config_private_clean_file(path:Pchar); + +procedure _gnome_config_clean_section(path:Pchar; priv:gint);cdecl;external libgnomedll name '_gnome_config_clean_section'; + +procedure gnome_config_clean_section(path:Pchar); + +procedure gnome_config_private_clean_section(path:Pchar); + +procedure _gnome_config_clean_key(path:Pchar; priv:gint);cdecl;external libgnomedll name '_gnome_config_clean_key'; + +procedure gnome_config_clean_key(path:Pchar); + +procedure gnome_config_private_clean_key(path:Pchar); + +function gnome_config_get_real_path(path:Pchar):Pchar; + +function gnome_config_private_get_real_path(path:Pchar):Pchar; + +procedure gnome_config_push_prefix(path:Pchar);cdecl;external libgnomedll name 'gnome_config_push_prefix'; +procedure gnome_config_pop_prefix;cdecl;external libgnomedll name 'gnome_config_pop_prefix'; +procedure gnome_config_make_vector(_string:Pchar; argcp:Plongint; argvp:PPPchar);cdecl;external libgnomedll name 'gnome_config_make_vector'; +function gnome_config_assemble_vector(argc:longint; argv:PPchar):pchar;cdecl;external libgnomedll name 'gnome_config_assemble_vector'; + +Type + TGnomeConfigHandler = procedure (param : pointer); cdecl; + +procedure gnome_config_set_set_handler(func : TGnomeConfigHandler; data:pointer);cdecl;external libgnomedll name 'gnome_config_set_set_handler'; +procedure gnome_config_set_sync_handler(func:TGnomeConfigHandler; data:pointer);cdecl;external libgnomedll name 'gnome_config_set_sync_handler'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function gnome_config_get_string_with_default(path:Pchar; def:Pgboolean):pchar; +begin + gnome_config_get_string_with_default:=_gnome_config_get_string_with_default(path,def,0); +end; + +function gnome_config_get_translated_string_with_default(path:Pchar; def:Pgboolean):pchar; +begin + gnome_config_get_translated_string_with_default:=_gnome_config_get_translated_string_with_default(path,def,0); +end; + +function gnome_config_get_int_with_default(path:Pchar; def:Pgboolean):gint; +begin + gnome_config_get_int_with_default:=_gnome_config_get_int_with_default(path,def,0); +end; + +function gnome_config_get_float_with_default(path:Pchar; def:Pgboolean):gdouble; +begin + gnome_config_get_float_with_default:=_gnome_config_get_float_with_default(path,def,0); +end; + +function gnome_config_get_bool_with_default(path:Pchar; def:Pgboolean):gboolean; +begin + gnome_config_get_bool_with_default:=_gnome_config_get_bool_with_default(path,def,0); +end; + +procedure gnome_config_get_vector_with_default(path:Pchar; argcp:Pgint; argvp:PPPchar; def:Pgboolean); +begin + _gnome_config_get_vector_with_default(path,argcp,argvp,def,0); +end; + +function gnome_config_private_get_string_with_default(path:Pchar; def:Pgboolean):pchar; +begin + gnome_config_private_get_string_with_default:=_gnome_config_get_string_with_default(path,def,1); +end; + +function gnome_config_private_get_translated_string_with_default(path:Pchar; def:Pgboolean):pchar; +begin + gnome_config_private_get_translated_string_with_default:=_gnome_config_get_translated_string_with_default(path,def,1); +end; + +function gnome_config_private_get_int_with_default(path:Pchar; def:Pgboolean):gint; +begin + gnome_config_private_get_int_with_default:=_gnome_config_get_int_with_default(path,def,1); +end; + +function gnome_config_private_get_float_with_default(path:Pchar; def:Pgboolean):gdouble; +begin + gnome_config_private_get_float_with_default:=_gnome_config_get_float_with_default(path,def,1); +end; + +function gnome_config_private_get_bool_with_default(path:Pchar; def:Pgboolean):gboolean; +begin + gnome_config_private_get_bool_with_default:=_gnome_config_get_bool_with_default(path,def,1); +end; + +procedure gnome_config_private_get_vector_with_default(path:Pchar; argcp:Pgint; argvp:PPPchar; def:Pgboolean); +begin + _gnome_config_get_vector_with_default(path,argcp,argvp,def,1); +end; + +function gnome_config_get_string(path:Pchar):pchar; +begin + gnome_config_get_string:=_gnome_config_get_string_with_default(path,nil,0); +end; + +function gnome_config_get_translated_string(path:Pchar):pchar; +begin + gnome_config_get_translated_string:=_gnome_config_get_translated_string_with_default(path,nil,0); +end; + +function gnome_config_get_int(path:Pchar):gint; +begin + gnome_config_get_int:=_gnome_config_get_int_with_default(path,nil,0); +end; + +function gnome_config_get_float(path:Pchar):gdouble; +begin + gnome_config_get_float:=_gnome_config_get_float_with_default(path,nil,0); +end; + +function gnome_config_get_bool(path:Pchar):gboolean; +begin + gnome_config_get_bool:=_gnome_config_get_bool_with_default(path,nil,0); +end; + +procedure gnome_config_get_vector(path:Pchar; argcp:Pgint; argvp:PPPchar); +begin + _gnome_config_get_vector_with_default(path,argcp,argvp,nil,0); +end; + +function gnome_config_private_get_string(path:Pchar):pchar; +begin + gnome_config_private_get_string:=_gnome_config_get_string_with_default(path,nil,1); +end; + +function gnome_config_private_get_translated_string(path:Pchar):pchar; +begin + gnome_config_private_get_translated_string:=_gnome_config_get_translated_string_with_default(path,nil,1); +end; + +function gnome_config_private_get_int(path:Pchar):gint; +begin + gnome_config_private_get_int:=_gnome_config_get_int_with_default(path,nil,1); +end; + +function gnome_config_private_get_float(path:Pchar):gdouble; +begin + gnome_config_private_get_float:=_gnome_config_get_float_with_default(path,nil,1); +end; + +function gnome_config_private_get_bool(path:Pchar):gboolean; +begin + gnome_config_private_get_bool:=_gnome_config_get_bool_with_default(path,nil,1); +end; + +procedure gnome_config_private_get_vector(path:Pchar; argcp:Pgint; argvp:PPPchar); +begin + _gnome_config_get_vector_with_default(path,argcp,argvp,nil,1); +end; + +procedure gnome_config_set_string(path,new_value : Pchar); +begin + _gnome_config_set_string(path,new_value,0); +end; + +procedure gnome_config_set_translated_string(path, new_value : PChar); +begin + _gnome_config_set_translated_string(path,new_value,0); +end; + +procedure gnome_config_set_int(path : PChar; new_value : longint); +begin + _gnome_config_set_int(path,new_value,0); +end; + +procedure gnome_config_set_float(path : PChar; new_value : longint); +begin + _gnome_config_set_float(path,new_value,0); +end; + +procedure gnome_config_set_bool(path : PChar; new_value : gboolean); +begin + _gnome_config_set_bool(path,new_value,0); +end; + +procedure gnome_config_set_vector(path:Pchar; argc:longint; argv:PPchar); +begin + _gnome_config_set_vector(path,argc,argv,0); +end; + +procedure gnome_config_private_set_string(path,new_value : Pchar); +begin + _gnome_config_set_string(path,new_value,1); +end; + +procedure gnome_config_private_set_translated_string(path, new_value : PChar); +begin + _gnome_config_set_translated_string(path,new_value,1); +end; + +procedure gnome_config_private_set_int(path : PChar; new_value : longint); +begin + _gnome_config_set_int(path,new_value,1); +end; + +procedure gnome_config_private_set_float(path : PChar; new_value : longint); +begin + _gnome_config_set_float(path,new_value,1); +end; + +procedure gnome_config_private_set_bool(path : PChar; new_value : gboolean); +begin + _gnome_config_set_bool(path,new_value,1); +end; + +procedure gnome_config_private_set_vector(path:Pchar; argc:longint; argv:PPchar); +begin + _gnome_config_set_vector(path,argc,argv,1); +end; + +function gnome_config_has_section(path : Pchar) : gboolean; +begin + gnome_config_has_section:=_gnome_config_has_section(path,0); +end; + +function gnome_config_private_has_section(path : pchar) : gboolean; +begin + gnome_config_private_has_section:=_gnome_config_has_section(path,1); +end; + +function gnome_config_init_iterator(path : pchar) : pointer; +begin + gnome_config_init_iterator:=_gnome_config_init_iterator(path,0); +end; + +function gnome_config_init_iterator_sections(path : Pchar) : pointer; +begin + gnome_config_init_iterator_sections:=_gnome_config_init_iterator_sections(path,0); +end; + +function gnome_config_private_init_iterator(path : Pchar) : pointer; +begin + gnome_config_private_init_iterator:=_gnome_config_init_iterator(path,1); +end; + +function gnome_config_private_init_iterator_sections(path : Pchar) : pointer; +begin + gnome_config_private_init_iterator_sections:=_gnome_config_init_iterator_sections(path,1); +end; + +procedure gnome_config_sync_file(path : Pchar); +begin + _gnome_config_sync_file(path,0); +end; + +procedure gnome_config_private_sync_file(path : Pchar); +begin + _gnome_config_sync_file(path,1); +end; + +procedure gnome_config_drop_file(path : Pchar); +begin + _gnome_config_drop_file(path,0); +end; + +procedure gnome_config_private_drop_file(path : Pchar); +begin + _gnome_config_drop_file(path,1); +end; + +Procedure gnome_config_clean_file(path:Pchar); +begin + _gnome_config_clean_file(path,0); +end; + +Procedure gnome_config_private_clean_file(path:Pchar); +begin + _gnome_config_clean_file(path,1); +end; + +procedure gnome_config_clean_section(path:Pchar); +begin + _gnome_config_clean_section(path,0); +end; + +procedure gnome_config_private_clean_section(path:Pchar); +begin + _gnome_config_clean_section(path,1); +end; + +procedure gnome_config_clean_key(path:Pchar); +begin + _gnome_config_clean_key(path,0); +end; + +procedure gnome_config_private_clean_key(path:Pchar); +begin + _gnome_config_clean_key(path,1); +end; + +function gnome_config_get_real_path(path : pchar) : pchar; +begin + gnome_config_get_real_path := g_concat_dir_and_file(gnome_user_dir, Path); +end; + +function gnome_config_private_get_real_path(path : pchar) : pchar; +begin + gnome_config_private_get_real_path := g_concat_dir_and_file(gnome_user_private_dir, Path); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomedentry.inc b/packages/gnome1/src/libgnome/gnomedentry.inc new file mode 100644 index 0000000000..cca635fe31 --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomedentry.inc @@ -0,0 +1,78 @@ +{$IfDef read_interface} +type + PGnomeDesktopEntry = ^TGnomeDesktopEntry; + TGnomeDesktopEntry = record + name : Pchar; + comment : Pchar; + exec_length : longint; + exec : PPchar; + tryexec : Pchar; + icon : Pchar; + docpath : Pchar; + terminal : longint; + thetype : Pchar; + location : Pchar; + geometry : Pchar; + flag0 : word; + end; + +const + bm_GnomeDesktopEntry_multiple_args = $1; + bp_GnomeDesktopEntry_multiple_args = 0; + bm_GnomeDesktopEntry_is_kde = $2; + bp_GnomeDesktopEntry_is_kde = 1; + +function multiple_args(var a : TGnomeDesktopEntry) : Boolean; +procedure set_multiple_args(var a : TGnomeDesktopEntry; __multiple_args : Boolean); +function is_kde(var a : TGnomeDesktopEntry) : Boolean; +procedure set_is_kde(var a : TGnomeDesktopEntry; __is_kde : Boolean); + +function gnome_desktop_entry_load(afile:Pchar):PGnomeDesktopEntry;cdecl;external libgnomedll name 'gnome_desktop_entry_load'; +function gnome_desktop_entry_load_flags(afile:Pchar; clean_from_memory_after_load:longint):PGnomeDesktopEntry;cdecl;external libgnomedll name 'gnome_desktop_entry_load_flags'; +function gnome_desktop_entry_load_flags_conditional(afile:Pchar; clean_from_memory_after_load:longint; unconditional:longint):PGnomeDesktopEntry;cdecl;external libgnomedll name 'gnome_desktop_entry_load_flags_conditional'; +function gnome_desktop_entry_load_unconditional(afile:Pchar):PGnomeDesktopEntry;cdecl;external libgnomedll name 'gnome_desktop_entry_load_unconditional'; + +procedure gnome_desktop_entry_save(dentry:PGnomeDesktopEntry);cdecl;external libgnomedll name 'gnome_desktop_entry_save'; +procedure gnome_desktop_entry_free(item:PGnomeDesktopEntry);cdecl;external libgnomedll name 'gnome_desktop_entry_free'; +procedure gnome_desktop_entry_destroy(item:PGnomeDesktopEntry);cdecl;external libgnomedll name 'gnome_desktop_entry_destroy'; +procedure gnome_desktop_entry_launch(item:PGnomeDesktopEntry);cdecl;external libgnomedll name 'gnome_desktop_entry_launch'; +procedure gnome_desktop_entry_launch_with_args(item:PGnomeDesktopEntry; the_argc:longint; the_argv:array of Pchar);cdecl;external libgnomedll name 'gnome_desktop_entry_launch_with_args'; +function gnome_desktop_entry_copy(source:PGnomeDesktopEntry):PGnomeDesktopEntry;cdecl;external libgnomedll name 'gnome_desktop_entry_copy'; + +type + PGnomeDesktopEntryI18N = ^TGnomeDesktopEntryI18N; + TGnomeDesktopEntryI18N = record + lang : Pchar; + name : Pchar; + comment : Pchar; + end; + +function gnome_desktop_entry_get_i18n_list(item:PGnomeDesktopEntry):PGList;cdecl;external libgnomedll name 'gnome_desktop_entry_get_i18n_list'; +procedure gnome_desktop_entry_set_i18n_list(item:PGnomeDesktopEntry; list:PGList);cdecl;external libgnomedll name 'gnome_desktop_entry_set_i18n_list'; +procedure gnome_desktop_entry_free_i18n_list(list:PGList);cdecl;external libgnomedll name 'gnome_desktop_entry_free_i18n_list'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function multiple_args(var a : TGnomeDesktopEntry) : Boolean; +begin + multiple_args:=Boolean((a.flag0 and bm_GnomeDesktopEntry_multiple_args) shr bp_GnomeDesktopEntry_multiple_args); +end; + +procedure set_multiple_args(var a : TGnomeDesktopEntry; __multiple_args : Boolean); +begin + a.flag0:=a.flag0 or ((longint(__multiple_args) shl bp_GnomeDesktopEntry_multiple_args) and bm_GnomeDesktopEntry_multiple_args); +end; + +function is_kde(var a : TGnomeDesktopEntry) : Boolean; +begin + is_kde:=Boolean((a.flag0 and bm_GnomeDesktopEntry_is_kde) shr bp_GnomeDesktopEntry_is_kde); +end; + +procedure set_is_kde(var a : TGnomeDesktopEntry; __is_kde : Boolean); +begin + a.flag0:=a.flag0 or ((Longint(__is_kde) shl bp_GnomeDesktopEntry_is_kde) and bm_GnomeDesktopEntry_is_kde); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomeexec.inc b/packages/gnome1/src/libgnome/gnomeexec.inc new file mode 100644 index 0000000000..020c2af8ed --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomeexec.inc @@ -0,0 +1,14 @@ +{$IfDef read_interface} + +function gnome_execute_async(dir:Pchar; argc:longint; argv:PPchar):longint;cdecl;external libgnomedll name 'gnome_execute_async'; +function gnome_execute_async_fds(dir:Pchar; argc:longint; argv:PPchar; close_fds:gboolean):longint;cdecl;external libgnomedll name 'gnome_execute_async_fds'; +function gnome_execute_async_with_env(dir:Pchar; argc:longint; argv:PPchar; envc:longint; envv:PPchar):longint;cdecl;external libgnomedll name 'gnome_execute_async_with_env'; +function gnome_execute_async_with_env_fds(dir:Pchar; argc:longint; argv:PPchar; envc:longint; envv:PPchar; close_fds:gboolean):longint;cdecl;external libgnomedll name 'gnome_execute_async_with_env_fds'; +function gnome_execute_shell(dir:Pchar; commandline:Pchar):longint;cdecl;external libgnomedll name 'gnome_execute_shell'; +function gnome_execute_shell_fds(dir:Pchar; commandline:Pchar; close_fds:gboolean):longint;cdecl;external libgnomedll name 'gnome_execute_shell_fds'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomehelp.inc b/packages/gnome1/src/libgnome/gnomehelp.inc new file mode 100644 index 0000000000..67e44d272d --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomehelp.inc @@ -0,0 +1,21 @@ +{$IfDef read_interface} + +type + PGnomeHelpMenuEntry = ^TGnomeHelpMenuEntry; + TGnomeHelpMenuEntry = record + name : Pgchar; + path : Pgchar; + end; + +function gnome_help_file_find_file(app:Pgchar; path:Pgchar):pgchar;cdecl;external libgnomedll name 'gnome_help_file_find_file'; +function gnome_help_file_path(app:Pgchar; path:Pgchar):pgchar;cdecl;external libgnomedll name 'gnome_help_file_path'; +procedure gnome_help_display(ignore:pointer; ref:PGnomeHelpMenuEntry);cdecl;external libgnomedll name 'gnome_help_display'; +procedure gnome_help_pbox_display(ignore:pointer; page_num:gint; ref:PGnomeHelpMenuEntry);cdecl;external libgnomedll name 'gnome_help_pbox_display'; +procedure gnome_help_pbox_goto(ignore:pointer; ignore2:longint; ref:PGnomeHelpMenuEntry);cdecl;external libgnomedll name 'gnome_help_pbox_goto'; +procedure gnome_help_goto(ignore:pointer; afile:Pgchar);cdecl;external libgnomedll name 'gnome_help_goto'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomei18n.inc b/packages/gnome1/src/libgnome/gnomei18n.inc new file mode 100644 index 0000000000..37482f6ba7 --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomei18n.inc @@ -0,0 +1,13 @@ +{$IfDef read_interface} + +function gnome_i18n_get_language:Pchar;cdecl;external libgnomedll name 'gnome_i18n_get_language'; +function gnome_i18n_get_language_list(category_name:Pgchar):PGList;cdecl;external libgnomedll name 'gnome_i18n_get_language_list'; +procedure gnome_i18n_set_preferred_language(val:Pchar);cdecl;external libgnomedll name 'gnome_i18n_set_preferred_language'; +function gnome_i18n_get_preferred_language:Pchar;cdecl;external libgnomedll name 'gnome_i18n_get_preferred_language'; +procedure gnome_i18n_init;cdecl;external libgnomedll name 'gnome_i18n_init'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomemetadata.inc b/packages/gnome1/src/libgnome/gnomemetadata.inc new file mode 100644 index 0000000000..c887c6b5e8 --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomemetadata.inc @@ -0,0 +1,25 @@ +{$IfDef read_interface} +type + TGnomeMetadataError = (GNOME_METADATA_OK := 0,GNOME_METADATA_IO_ERROR, + GNOME_METADATA_NOT_FOUND); + +function gnome_metadata_set(afile:Pchar; name:Pchar; size:longint; data:Pchar):longint;cdecl;external libgnomedll name 'gnome_metadata_set'; +function gnome_metadata_remove(afile:Pchar; name:Pchar):longint;cdecl;external libgnomedll name 'gnome_metadata_remove'; +function gnome_metadata_list(afile:Pchar):PPchar;cdecl;external libgnomedll name 'gnome_metadata_list'; +function gnome_metadata_get(afile:Pchar; name:Pchar; size:Plongint; buffer:PPchar):longint;cdecl;external libgnomedll name 'gnome_metadata_get'; +function gnome_metadata_get_fast(afile:Pchar; name:Pchar; size:Plongint; buffer:PPchar):longint;cdecl;external libgnomedll name 'gnome_metadata_get_fast'; +function gnome_metadata_rename(isfrom:Pchar; isto:Pchar):longint;cdecl;external libgnomedll name 'gnome_metadata_rename'; +function gnome_metadata_copy(isfrom:Pchar; isto:Pchar):longint;cdecl;external libgnomedll name 'gnome_metadata_copy'; +function gnome_metadata_delete(afile:Pchar):longint;cdecl;external libgnomedll name 'gnome_metadata_delete'; +procedure gnome_metadata_regex_add(regex:Pchar; key:Pchar; size:longint; data:Pchar);cdecl;external libgnomedll name 'gnome_metadata_regex_add'; +procedure gnome_metadata_regex_remove(regex:Pchar; key:Pchar);cdecl;external libgnomedll name 'gnome_metadata_regex_remove'; +procedure gnome_metadata_type_add(thetype:Pchar; key:Pchar; size:longint; data:Pchar);cdecl;external libgnomedll name 'gnome_metadata_type_add'; +procedure gnome_metadata_type_remove(thetype:Pchar; key:Pchar);cdecl;external libgnomedll name 'gnome_metadata_type_remove'; +procedure gnome_metadata_lock;cdecl;external libgnomedll name 'gnome_metadata_lock'; +procedure gnome_metadata_unlock;cdecl;external libgnomedll name 'gnome_metadata_unlock'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomemime.inc b/packages/gnome1/src/libgnome/gnomemime.inc new file mode 100644 index 0000000000..e7c2239282 --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomemime.inc @@ -0,0 +1,16 @@ +{$IfDef read_interface} + +function gnome_mime_type(filename:Pgchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_type'; +function gnome_mime_type_or_default(filename:Pgchar; defaultv:Pgchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_type_or_default'; +function gnome_mime_type_of_file(existing_filename:Pchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_type_of_file'; +function gnome_mime_type_or_default_of_file(existing_filename:Pchar; defaultv:Pgchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_type_or_default_of_file'; +function gnome_mime_type_from_magic(filename:Pgchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_type_from_magic'; +function gnome_uri_list_extract_filenames(uri_list:Pgchar):PGList;cdecl;external libgnomedll name 'gnome_uri_list_extract_filenames'; +function gnome_uri_list_extract_uris(uri_list:Pgchar):PGList;cdecl;external libgnomedll name 'gnome_uri_list_extract_uris'; +procedure gnome_uri_list_free_strings(list:PGList);cdecl;external libgnomedll name 'gnome_uri_list_free_strings'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomemimeinfo.inc b/packages/gnome1/src/libgnome/gnomemimeinfo.inc new file mode 100644 index 0000000000..5565ba5893 --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomemimeinfo.inc @@ -0,0 +1,16 @@ +{$IfDef read_interface} + +function gnome_mime_get_value(mime_type:Pchar; key:Pchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_get_value'; +function gnome_mime_get_keys(mime_type:Pchar):PGList;cdecl;external libgnomedll name 'gnome_mime_get_keys'; +function gnome_mime_program(mime_type:Pchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_program'; +function gnome_mime_description(mime_type:Pchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_description'; +function gnome_mime_test(mime_type:Pchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_test'; +function gnome_mime_composetyped(mime_type:Pchar):Pchar;cdecl;external libgnomedll name 'gnome_mime_composetyped'; +function gnome_mime_copiousoutput(mime_type:Pchar; key:Pchar):gboolean;cdecl;external libgnomedll name 'gnome_mime_copiousoutput'; +function gnome_mime_needsterminal(mime_type:Pchar; key:Pchar):gboolean;cdecl;external libgnomedll name 'gnome_mime_needsterminal'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomepaper.inc b/packages/gnome1/src/libgnome/gnomepaper.inc new file mode 100644 index 0000000000..8e8dc8894c --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomepaper.inc @@ -0,0 +1,32 @@ +{$IfDef read_interface} + +type + PGnomePaper = ^TGnomePaper; + TGnomePaper = Record + end; + + PGnomeUnit = ^TGnomeUnit; + TGnomeUnit = Record + end; + +function gnome_paper_name_list:PGList;cdecl;external libgnomedll name 'gnome_paper_name_list'; +function gnome_paper_with_name(papername:Pgchar):PGnomePaper;cdecl;external libgnomedll name 'gnome_paper_with_name'; +function gnome_paper_with_size(pswidth:double; psheight:double):PGnomePaper;cdecl;external libgnomedll name 'gnome_paper_with_size'; +function gnome_paper_name(paper:PGnomePaper):Pgchar;cdecl;external libgnomedll name 'gnome_paper_name'; +function gnome_paper_pswidth(paper:PGnomePaper):gdouble;cdecl;external libgnomedll name 'gnome_paper_pswidth'; +function gnome_paper_psheight(paper:PGnomePaper):gdouble;cdecl;external libgnomedll name 'gnome_paper_psheight'; +function gnome_paper_lmargin(paper:PGnomePaper):gdouble;cdecl;external libgnomedll name 'gnome_paper_lmargin'; +function gnome_paper_tmargin(paper:PGnomePaper):gdouble;cdecl;external libgnomedll name 'gnome_paper_tmargin'; +function gnome_paper_rmargin(paper:PGnomePaper):gdouble;cdecl;external libgnomedll name 'gnome_paper_rmargin'; +function gnome_paper_bmargin(paper:PGnomePaper):gdouble;cdecl;external libgnomedll name 'gnome_paper_bmargin'; +function gnome_paper_name_default:Pgchar;cdecl;external libgnomedll name 'gnome_paper_name_default'; +function gnome_unit_name_list:PGList;cdecl;external libgnomedll name 'gnome_unit_name_list'; +function gnome_unit_with_name(unitname:Pgchar):PGnomeUnit;cdecl;external libgnomedll name 'gnome_unit_with_name'; +function gnome_paper_convert(psvalue:double; aunit:PGnomeUnit):gdouble;cdecl;external libgnomedll name 'gnome_paper_convert'; +function gnome_paper_convert_to_points(othervalue:double; aunit:PGnomeUnit):double;cdecl;external libgnomedll name 'gnome_paper_convert_to_points'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomeremote.inc b/packages/gnome1/src/libgnome/gnomeremote.inc new file mode 100644 index 0000000000..4a0ce753d1 --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomeremote.inc @@ -0,0 +1,10 @@ +{$IfDef read_interface} + +procedure gnome_remote_get_command(host:Pchar; argcp:Pgint; argvp:PPPchar);cdecl;external libgnomedll name 'gnome_remote_get_command'; +procedure gnome_remote_set_command(host:Pchar; argc:gint; argv:PPchar);cdecl;external libgnomedll name 'gnome_remote_set_command'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomescore.inc b/packages/gnome1/src/libgnome/gnomescore.inc new file mode 100644 index 0000000000..8020ef1ac8 --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomescore.inc @@ -0,0 +1,11 @@ +{$IfDef read_interface} + +function gnome_score_init(gamename:Pgchar):gint;cdecl;external libgnomedll name 'gnome_score_init'; +function gnome_score_log(score:gfloat; level:Pgchar; higher_to_lower_score_order:gboolean):gint;cdecl;external libgnomedll name 'gnome_score_log'; +function gnome_score_get_notable(gamename:Pgchar; level:Pgchar; names:PPPgchar; scores:PPgfloat; scoretimes:PPtime_t):gint;cdecl;external libgnomedll name 'gnome_score_get_notable'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomesound.inc b/packages/gnome1/src/libgnome/gnomesound.inc new file mode 100644 index 0000000000..c3f375c9aa --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomesound.inc @@ -0,0 +1,15 @@ +{$IfDef read_interface} + +var + gnome_sound_connection : longint;cvar;external; + +procedure gnome_sound_init(hostname:Pchar);cdecl;external libgnomedll name 'gnome_sound_init'; +procedure gnome_sound_shutdown;cdecl;external libgnomedll name 'gnome_sound_shutdown'; +function gnome_sound_sample_load(sample_name:Pchar; filename:Pchar):longint;cdecl;external libgnomedll name 'gnome_sound_sample_load'; +procedure gnome_sound_play(filename:Pchar);cdecl;external libgnomedll name 'gnome_sound_play'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnometriggers.inc b/packages/gnome1/src/libgnome/gnometriggers.inc new file mode 100644 index 0000000000..dd21333d2e --- /dev/null +++ b/packages/gnome1/src/libgnome/gnometriggers.inc @@ -0,0 +1,37 @@ +{$IfDef read_interface} + +type + TGnomeTriggerType = (GTRIG_NONE,GTRIG_FUNCTION,GTRIG_COMMAND, + GTRIG_MEDIAPLAY); + + TGnomeTriggerActionFunction = procedure (msg:Pchar; level:Pchar; supinfo:PPchar);cdecl; + + PGnomeTrigger = ^TGnomeTrigger; + TGnomeTrigger = Record + thetype : TGnomeTriggerType; + U : record + Case longint of + 1: (thefunction : TGnomeTriggerActionFunction); + 2: (command : pgchar); + 3 :(media : record + thefile : Pgchar; + cache_id : integer; + end); + end; + level : PGchar; + end; + +procedure gnome_triggers_init;cdecl;external libgnomedll name 'gnome_triggers_init'; +function gnome_triggers_readfile(infilename:Pchar):gint;cdecl;external libgnomedll name 'gnome_triggers_readfile'; +procedure gnome_triggers_add_trigger(nt:PGnomeTrigger; args:array of const);cdecl;external libgnomedll name 'gnome_triggers_add_trigger'; +procedure gnome_triggers_add_trigger(nt:PGnomeTrigger);cdecl;varargs;external libgnomedll name 'gnome_triggers_add_trigger'; +procedure gnome_triggers_vadd_trigger(nt:PGnomeTrigger; supinfo:PPchar);cdecl;external libgnomedll name 'gnome_triggers_vadd_trigger'; +procedure gnome_triggers_do(msg:Pchar; level:Pchar; args:array of const);cdecl;external libgnomedll name 'gnome_triggers_do'; +procedure gnome_triggers_do(msg:Pchar; level:Pchar);cdecl;varargs;external libgnomedll name 'gnome_triggers_do'; +procedure gnome_triggers_vdo(msg:Pchar; level:Pchar; supinfo:PPchar);cdecl;external libgnomedll name 'gnome_triggers_vdo'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomeurl.inc b/packages/gnome1/src/libgnome/gnomeurl.inc new file mode 100644 index 0000000000..57443589da --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomeurl.inc @@ -0,0 +1,9 @@ +{$IfDef read_interface} + +procedure gnome_url_show(url:Pchar);cdecl;external libgnomedll name 'gnome_url_show'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/gnomeutil.inc b/packages/gnome1/src/libgnome/gnomeutil.inc new file mode 100644 index 0000000000..133adade29 --- /dev/null +++ b/packages/gnome1/src/libgnome/gnomeutil.inc @@ -0,0 +1,83 @@ +{$IfDef read_interface} + +const + PATH_SEP = '/'; + PATH_SEP_STR = '/'; + +function gnome_libdir_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_libdir_file'; +function gnome_datadir_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_datadir_file'; +function gnome_sound_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_sound_file'; +function gnome_pixmap_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_pixmap_file'; +function gnome_config_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_config_file'; +function gnome_unconditional_libdir_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_unconditional_libdir_file'; +function gnome_unconditional_datadir_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_unconditional_datadir_file'; +function gnome_unconditional_sound_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_unconditional_sound_file'; +function gnome_unconditional_pixmap_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_unconditional_pixmap_file'; +function gnome_unconditional_config_file(filename:Pchar):pchar;cdecl;external libgnomedll name 'gnome_unconditional_config_file'; + +const + G_FILE_TEST_EXISTS = ((1 shl 0) or (1 shl 1)) or (1 shl 2); + G_FILE_TEST_ISFILE = 1 shl 0; + G_FILE_TEST_ISLINK = 1 shl 1; + G_FILE_TEST_ISDIR = 1 shl 2; + +function g_file_test(filename:Pchar; test:longint):longint;cdecl;external libgnomedll name 'g_file_test'; +function g_file_exists(filename:Pchar):longint;cdecl;external libgnomedll name 'g_file_exists'; +function gnome_is_program_in_path(aprogram:Pgchar):Pgchar;cdecl;external libgnomedll name 'gnome_is_program_in_path'; + +function g_unix_error_string(error_num:longint):pchar;cdecl;external libgnomedll name 'g_unix_error_string'; +function g_concat_dir_and_file(dir:Pchar; afile:Pchar):pchar;cdecl;external libgnomedll name 'g_concat_dir_and_file'; + +function g_extension_pointer(path:Pchar):pchar;cdecl;external libgnomedll name 'g_extension_pointer'; +function g_copy_vector(vec:PPchar):Ppchar;cdecl;external libgnomedll name 'g_copy_vector'; + +function gnome_util_user_shell:pchar;cdecl;external libgnomedll name 'gnome_util_user_shell'; +function g_is_image_filename(path:Pchar):gboolean;cdecl;external libgnomedll name 'g_is_image_filename'; + +//Function g_copy_strings(string1:Pgchar; args:array of const):Pgchar; +Function g_filename_index(path : Pgchar) : Pgchar; +Function g_filename_pointer(file_name:Pgchar):Pgchar; +Function g_flatten_vector(separator:Pgchar; str_array:PPgchar) : Pgchar; +Function gnome_util_user_home : Pgchar; +Function gnome_util_prepend_user_home(x : Pgchar) : Pgchar; +Function gnome_util_home_file(afile : Pgchar) : Pgchar; + +{$EndIf read_interface} + +{$Ifdef read_implementation} +{Function g_copy_strings(string1:Pgchar; args:array of const):Pgchar; +begin + g_copy_strings := g_strconcat(string1, args); +end;} + +Function g_filename_index(path : Pgchar) : Pgchar; +begin + g_filename_index := Pointer(Longint(g_basename(path))-Longint(path)); +end; + +Function g_filename_pointer(file_name:Pgchar):Pgchar; +begin + g_filename_pointer := g_basename(file_name); +end; + +Function g_flatten_vector(separator:Pgchar; str_array:PPgchar) : Pgchar; +begin + g_flatten_vector := g_strjoinv(separator, str_array); +end; + +Function gnome_util_user_home : Pgchar; +begin + gnome_util_user_home := g_get_home_dir; +end; + +Function gnome_util_prepend_user_home(x : Pgchar) : PgChar; +begin + gnome_util_prepend_user_home := g_concat_dir_and_file(gnome_util_user_home, x); +end; + +Function gnome_util_home_file(afile : Pgchar) : Pgchar; +begin + gnome_util_home_file := g_strconcat(gnome_util_user_home, ['/.gnome/', afile, nil]); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnome/libgnome.pp b/packages/gnome1/src/libgnome/libgnome.pp new file mode 100644 index 0000000000..b132c43b3c --- /dev/null +++ b/packages/gnome1/src/libgnome/libgnome.pp @@ -0,0 +1,98 @@ +unit libgnome; + +{$PACKRECORDS C} +{$mode objfpc} + +interface + +Uses glib; + +{$linklib esd} +{$linklib popt} +{$linklib db1} + +const + libgnomedll='gnome'; + +Type + PPPChar = ^PPChar; + PPPgChar = ^PPgChar; + PPPgfloat = ^PPgfloat; + PPgfloat = ^Pgfloat; + + PPpid_t = ^Ppid_t; + Ppid_t = ^pid_t; + pid_t = longint; + + PPTime_t = ^PTime_t; + PTime_t = ^Time_t; + Time_t = longint; + + Ptm = ^tm; + tm = record + tm_sec : integer; + tm_min : integer; + tm_hour : integer; + tm_mday : integer; + tm_mon : integer; + tm_year : integer; + tm_wday : integer; + tm_yday : integer; + tm_isdst : integer; + tm_gmtoff : Pchar; + tm_zone : Pchar; + end; + +var + gnome_user_home_dir : Pchar;cvar;external; + gnome_user_dir : Pchar;cvar;external; + gnome_user_private_dir : Pchar;cvar;external; + gnome_user_accels_dir : Pchar;cvar;external; + gnome_app_id : Pchar;cvar;external; + gnome_do_not_create_directories : char;cvar;external; + +{$define read_interface} +{$undef read_implementation} + +{$include gnomeutil.inc} +{$include gnomeconfig.inc} +{$include gnomedentry.inc} +{$include gnomeexec.inc} +{$include gnomehelp.inc} +{$include gnomei18n.inc} +{$include gnomemetadata.inc} +{$include gnomemime.inc} +{$include gnomemimeinfo.inc} +{$include gnomepaper.inc} +{.$include gnomepopt.inc} +{$include gnomeremote.inc} +{$include gnomescore.inc} +{$include gnomesound.inc} +{$include gnometriggers.inc} +{$include gnomeurl.inc} + +procedure gnomelib_init(app_id:Pchar; app_version:Pchar);cdecl;external; + +implementation + +{$undef read_interface} +{$define read_implementation} + +{$include gnomeutil.inc} +{$include gnomeconfig.inc} +{$include gnomedentry.inc} +{$include gnomeexec.inc} +{$include gnomehelp.inc} +{$include gnomei18n.inc} +{$include gnomemetadata.inc} +{$include gnomemime.inc} +{$include gnomemimeinfo.inc} +{$include gnomepaper.inc} +{.$include gnomepopt.inc} +{$include gnomeremote.inc} +{$include gnomescore.inc} +{$include gnomesound.inc} +{$include gnometriggers.inc} +{$include gnomeurl.inc} + +end. diff --git a/packages/gnome1/src/libgnomeui/gnomeabout.inc b/packages/gnome1/src/libgnomeui/gnomeabout.inc new file mode 100644 index 0000000000..5388e62d19 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeabout.inc @@ -0,0 +1,45 @@ +{$IfDef read_interface} + +type + PGnomeAbout = ^TGnomeAbout; + TGnomeAbout = record + dialog : TGnomeDialog; + end; + GNOME_ABOUT = PGnomeAbout; + + PGnomeAboutClass = ^TGnomeAboutClass; + TGnomeAboutClass = record + parent_class : TGnomeDialogClass; + end; + GNOME_ABOUT_CLASS = PGnomeAboutClass; + +function GNOME_TYPE_ABOUT : TGTKType; +function GNOME_IS_ABOUT(obj : Pointer) : Boolean; +function GNOME_IS_ABOUT_CLASS(klass : Pointer) : Boolean; + +function gnome_about_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_about_get_type'; +function gnome_about_new(title:Pgchar; version:Pgchar; copyright:Pgchar; authors:PPgchar; comments:Pgchar; + logo:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_about_new'; +procedure gnome_about_construct(about:PGnomeAbout; title:Pgchar; version:Pgchar; copyright:Pgchar; authors:PPgchar; + comments:Pgchar; logo:Pgchar);cdecl;external libgnomeuidll name 'gnome_about_construct'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_ABOUT : TGTKType; +begin + GNOME_TYPE_ABOUT:=gnome_about_get_type; +end; + +function GNOME_IS_ABOUT(obj : Pointer) : Boolean; +begin + GNOME_IS_ABOUT:=(obj<>nil) and GNOME_IS_ABOUT_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_ABOUT_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_ABOUT_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_ABOUT); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeanimator.inc b/packages/gnome1/src/libgnomeui/gnomeanimator.inc new file mode 100644 index 0000000000..ba7d1da7e9 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeanimator.inc @@ -0,0 +1,89 @@ +{$IfDef read_interface} + +type + TGnomeAnimatorStatus = (GNOME_ANIMATOR_STATUS_STOPPED,GNOME_ANIMATOR_STATUS_RUNNING); + + TGnomeAnimatorLoopType = (GNOME_ANIMATOR_LOOP_NONE,GNOME_ANIMATOR_LOOP_RESTART, + GNOME_ANIMATOR_LOOP_PING_PONG); + + PGnomeAnimatorPrivate = ^TGnomeAnimatorPrivate; + TGnomeAnimatorPrivate = record + end; + + PGnomeAnimatorFrame = ^TGnomeAnimatorFrame; + TGnomeAnimatorFrame = record + end; + + PGnomeAnimator = ^TGnomeAnimator; + TGnomeAnimator = record + widget : PGtkWidget; + num_frames : guint; + current_frame_number : guint; + status : TGnomeAnimatorStatus; + loop_type : TGnomeAnimatorLoopType; + playback_direction : gint; + playback_speed : gdouble; + privat : PGnomeAnimatorPrivate; + end; + GNOME_ANIMATOR = ^TGnomeAnimator; + + PGnomeAnimatorClass = ^TGnomeAnimatorClass; + TGnomeAnimatorClass = record + parent_class : TGtkWidgetClass; + end; + GNOME_ANIMATOR_CLASS = ^TGnomeAnimatorClass; + +function GNOME_TYPE_ANIMATOR : TGTKType; +function GNOME_IS_ANIMATOR(obj : Pointer) : Boolean; +function GNOME_IS_ANIMATOR_CLASS(klass : Pointer) : Boolean; + +function gnome_animator_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_animator_get_type'; +function gnome_animator_new_with_size(width:guint; height:guint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_animator_new_with_size'; +procedure gnome_animator_set_loop_type(animator:PGnomeAnimator; loop_type:TGnomeAnimatorLoopType);cdecl;external libgnomeuidll name 'gnome_animator_set_loop_type'; +function gnome_animator_get_loop_type(animator:PGnomeAnimator):TGnomeAnimatorLoopType;cdecl;external libgnomeuidll name 'gnome_animator_get_loop_type'; +procedure gnome_animator_set_playback_direction(animator:PGnomeAnimator; playback_direction:gint);cdecl;external libgnomeuidll name 'gnome_animator_set_playback_direction'; +function gnome_animator_get_playback_direction(animator:PGnomeAnimator):gint;cdecl;external libgnomeuidll name 'gnome_animator_get_playback_direction'; +function gnome_animator_append_frame_from_imlib_at_size(animator:PGnomeAnimator; image:PGdkImlibImage; x_offset:gint; y_offset:gint; interval:guint32; + width:guint; height:guint):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_append_frame_from_imlib_at_size'; +function gnome_animator_append_frame_from_imlib(animator:PGnomeAnimator; image:PGdkImlibImage; x_offset:gint; y_offset:gint; interval:guint32):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_append_frame_from_imlib'; +function gnome_animator_append_frame_from_file_at_size(animator:PGnomeAnimator; name:Pgchar; x_offset:gint; y_offset:gint; interval:guint32; + width:guint; height:guint):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_append_frame_from_file_at_size'; +function gnome_animator_append_frame_from_file(animator:PGnomeAnimator; name:Pgchar; x_offset:gint; y_offset:gint; interval:guint32):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_append_frame_from_file'; +function gnome_animator_append_frames_from_imlib_at_size(animator:PGnomeAnimator; image:PGdkImlibImage; x_offset:gint; y_offset:gint; interval:guint32; + x_unit:gint; width:guint; height:guint):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_append_frames_from_imlib_at_size'; +function gnome_animator_append_frames_from_imlib(animator:PGnomeAnimator; image:PGdkImlibImage; x_offset:gint; y_offset:gint; interval:guint32; + x_unit:gint):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_append_frames_from_imlib'; +function gnome_animator_append_frames_from_file_at_size(animator:PGnomeAnimator; name:Pgchar; x_offset:gint; y_offset:gint; interval:guint32; + x_unit:gint; width:guint; height:guint):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_append_frames_from_file_at_size'; +function gnome_animator_append_frames_from_file(animator:PGnomeAnimator; name:Pgchar; x_offset:gint; y_offset:gint; interval:guint32; + x_unit:gint):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_append_frames_from_file'; +function gnome_animator_append_frame_from_gnome_pixmap(animator:PGnomeAnimator; pixmap:PGnomePixmap; x_offset:gint; y_offset:gint; interval:guint32):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_append_frame_from_gnome_pixmap'; +procedure gnome_animator_start(animator:PGnomeAnimator);cdecl;external libgnomeuidll name 'gnome_animator_start'; +procedure gnome_animator_stop(animator:PGnomeAnimator);cdecl;external libgnomeuidll name 'gnome_animator_stop'; +function gnome_animator_advance(animator:PGnomeAnimator; num:gint):gboolean;cdecl;external libgnomeuidll name 'gnome_animator_advance'; +procedure gnome_animator_goto_frame(animator:PGnomeAnimator; frame_number:guint);cdecl;external libgnomeuidll name 'gnome_animator_goto_frame'; +function gnome_animator_get_current_frame_number(animator:PGnomeAnimator):guint;cdecl;external libgnomeuidll name 'gnome_animator_get_current_frame_number'; +function gnome_animator_get_status(animator:PGnomeAnimator):TGnomeAnimatorStatus;cdecl;external libgnomeuidll name 'gnome_animator_get_status'; +procedure gnome_animator_set_playback_speed(animator:PGnomeAnimator; speed:gdouble);cdecl;external libgnomeuidll name 'gnome_animator_set_playback_speed'; +function gnome_animator_get_playback_speed(animator:PGnomeAnimator):gdouble;cdecl;external libgnomeuidll name 'gnome_animator_get_playback_speed'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_ANIMATOR : TGTKType; +begin + GNOME_TYPE_ANIMATOR:=gnome_animator_get_type; +end; + +function GNOME_IS_ANIMATOR(obj : Pointer) : Boolean; +begin + GNOME_IS_ANIMATOR:=(obj<>nil) and GNOME_IS_ANIMATOR_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_ANIMATOR_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_ANIMATOR_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_ANIMATOR); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeapp.inc b/packages/gnome1/src/libgnomeui/gnomeapp.inc new file mode 100644 index 0000000000..491aa88658 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeapp.inc @@ -0,0 +1,88 @@ +{$IfDef read_interface} +const + GNOME_APP_MENUBAR_NAME = 'Menubar'; + GNOME_APP_TOOLBAR_NAME = 'Toolbar'; + +type + PGnomeApp = ^TGnomeApp; + TGnomeApp = record + parent_object : TGtkWindow; + name : Pgchar; + prefix : Pgchar; + dock : PGtkWidget; + statusbar : PGtkWidget; + vbox : PGtkWidget; + menubar : PGtkWidget; + contents : PGtkWidget; + layout : PGnomeDockLayout; + accel_group : PGtkAccelGroup; + flag0 : word; + end; + GNOME_APP = PGnomeApp; + +const + bm__GnomeApp_enable_layout_config = $1; + bp__GnomeApp_enable_layout_config = 0; + +function enable_layout_config(var a : TGnomeApp) : gboolean; +procedure set_enable_layout_config(var a : TGnomeApp; __enable_layout_config : gboolean); + +type + PGnomeAppClass = ^TGnomeAppClass; + TGnomeAppClass = record + parent_class : TGtkWindowClass; + end; + GNOME_APP_CLASS = PGnomeAppClass; + +function GNOME_TYPE_APP : TGTKType; +function GNOME_IS_APP(obj : Pointer) : Boolean; +function GNOME_IS_APP_CLASS(klass : Pointer) : Boolean; + +function gnome_app_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_app_get_type'; +function gnome_app_new(appname:Pgchar; title:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_new'; +procedure gnome_app_construct(app:PGnomeApp; appname:Pgchar; title:Pgchar);cdecl;external libgnomeuidll name 'gnome_app_construct'; +procedure gnome_app_set_menus(app:PGnomeApp; menubar:PGtkMenuBar);cdecl;external libgnomeuidll name 'gnome_app_set_menus'; +procedure gnome_app_set_toolbar(app:PGnomeApp; toolbar:PGtkToolbar);cdecl;external libgnomeuidll name 'gnome_app_set_toolbar'; +procedure gnome_app_set_statusbar(app:PGnomeApp; statusbar:PGtkWidget);cdecl;external libgnomeuidll name 'gnome_app_set_statusbar'; +procedure gnome_app_set_statusbar_custom(app:PGnomeApp; container:PGtkWidget; statusbar:PGtkWidget);cdecl;external libgnomeuidll name 'gnome_app_set_statusbar_custom'; +procedure gnome_app_set_contents(app:PGnomeApp; contents:PGtkWidget);cdecl;external libgnomeuidll name 'gnome_app_set_contents'; +procedure gnome_app_add_toolbar(app:PGnomeApp; toolbar:PGtkToolbar; name:Pgchar; behavior:TGnomeDockItemBehavior; placement:TGnomeDockPlacement; + band_num:gint; band_position:gint; offset:gint);cdecl;external libgnomeuidll name 'gnome_app_add_toolbar'; +procedure gnome_app_add_docked(app:PGnomeApp; widget:PGtkWidget; name:Pgchar; behavior:TGnomeDockItemBehavior; placement:TGnomeDockPlacement; + band_num:gint; band_position:gint; offset:gint);cdecl;external libgnomeuidll name 'gnome_app_add_docked'; +procedure gnome_app_add_dock_item(app:PGnomeApp; item:PGnomeDockItem; placement:TGnomeDockPlacement; band_num:gint; band_position:gint; + offset:gint);cdecl;external libgnomeuidll name 'gnome_app_add_dock_item'; +procedure gnome_app_enable_layout_config(app:PGnomeApp; enable:gboolean);cdecl;external libgnomeuidll name 'gnome_app_enable_layout_config'; +function gnome_app_get_dock(app:PGnomeApp):PGnomeDock;cdecl;external libgnomeuidll name 'gnome_app_get_dock'; +function gnome_app_get_dock_item_by_name(app:PGnomeApp; name:Pgchar):PGnomeDockItem;cdecl;external libgnomeuidll name 'gnome_app_get_dock_item_by_name'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_APP : TGTKType; +begin + GNOME_TYPE_APP:=gnome_app_get_type; +end; + +function GNOME_IS_APP(obj : pointer) : Boolean; +begin + GNOME_IS_APP:=(obj<>nil) and GNOME_IS_APP_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_APP_CLASS(klass : pointer) : boolean; +begin + GNOME_IS_APP_CLASS:= (klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_APP); +end; + +function enable_layout_config(var a : TGnomeApp) : gboolean; +begin + enable_layout_config:=gboolean((a.flag0 and bm__GnomeApp_enable_layout_config) shr bp__GnomeApp_enable_layout_config); +end; + +procedure set_enable_layout_config(var a : TGnomeApp; __enable_layout_config : gboolean); +begin + a.flag0:=a.flag0 or ((gint(__enable_layout_config) shl bp__GnomeApp_enable_layout_config) and bm__GnomeApp_enable_layout_config); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeappbar.inc b/packages/gnome1/src/libgnomeui/gnomeappbar.inc new file mode 100644 index 0000000000..19f4bfe470 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeappbar.inc @@ -0,0 +1,105 @@ +{$IfDef read_interface} +type + PGnomeAppBar = ^TGnomeAppBar; + TGnomeAppBar = record + parent_widget : TGtkHBox; + progress : PGtkWidget; + status : PGtkWidget; + flag0 : word; + editable_start : gint; + prompt : Pgchar; + status_stack : PGSList; + default_status : Pgchar; + end; + GNOME_APPBAR = PGnomeAppBar; + +const + bm__GnomeAppBar_interactive = $1; + bp__GnomeAppBar_interactive = 0; + +function interactive(var a : TGnomeAppBar) : gboolean; +procedure set_interactive(var a : TGnomeAppBar; __interactive : gboolean); + +type + PGnomeAppBarClass = ^TGnomeAppBarClass; + TGnomeAppBarClass = record + parent_class : TGtkHBoxClass; + user_response : procedure (ab:PGnomeAppBar);cdecl; + clear_prompt : procedure (ab:PGnomeAppBar);cdecl; + end; + GNOME_APPBAR_CLASS = PGnomeAppBarClass; + +function GNOME_TYPE_APPBAR : TGTKType; +function GNOME_IS_APPBAR(obj : Pointer) : Boolean; +function GNOME_IS_APPBAR_CLASS(klass : Pointer) : Boolean; + +function GNOME_APPBAR_HAS_STATUS(appbar : PGnomeAppBar) : gboolean; +function GNOME_APPBAR_HAS_PROGRESS(appbar : PGnomeAppBar) : gboolean; +function GNOME_APPBAR_INTERACTIVE(ab : PGnomeAppBar) : gboolean; + +function gnome_appbar_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_appbar_get_type'; +function gnome_appbar_new(has_progress:gboolean; has_status:gboolean; interactivity:TGnomePreferencesType):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_appbar_new'; +procedure gnome_appbar_set_status(appbar:PGnomeAppBar; status:Pgchar);cdecl;external libgnomeuidll name 'gnome_appbar_set_status'; +procedure gnome_appbar_set_default(appbar:PGnomeAppBar; default_status:Pgchar);cdecl;external libgnomeuidll name 'gnome_appbar_set_default'; +procedure gnome_appbar_push(appbar:PGnomeAppBar; status:Pgchar);cdecl;external libgnomeuidll name 'gnome_appbar_push'; +procedure gnome_appbar_pop(appbar:PGnomeAppBar);cdecl;external libgnomeuidll name 'gnome_appbar_pop'; +procedure gnome_appbar_clear_stack(appbar:PGnomeAppBar);cdecl;external libgnomeuidll name 'gnome_appbar_clear_stack'; +procedure gnome_appbar_set_progress(appbar:PGnomeAppBar; percentage:gfloat);cdecl;external libgnomeuidll name 'gnome_appbar_set_progress'; +function gnome_appbar_get_progress(appbar:PGnomeAppBar):PGtkProgress;cdecl;external libgnomeuidll name 'gnome_appbar_get_progress'; +procedure gnome_appbar_refresh(appbar:PGnomeAppBar);cdecl;external libgnomeuidll name 'gnome_appbar_refresh'; +procedure gnome_appbar_set_prompt(appbar:PGnomeAppBar; prompt:Pgchar; modal:gboolean);cdecl;external libgnomeuidll name 'gnome_appbar_set_prompt'; +procedure gnome_appbar_clear_prompt(appbar:PGnomeAppBar);cdecl;external libgnomeuidll name 'gnome_appbar_clear_prompt'; +function gnome_appbar_get_response(appbar:PGnomeAppBar):Pgchar;cdecl;external libgnomeuidll name 'gnome_appbar_get_response'; +procedure gnome_appbar_construct(ab:PGnomeAppBar; has_progress:gboolean; has_status:gboolean; interactivity:TGnomePreferencesType);cdecl;external libgnomeuidll name 'gnome_appbar_construct'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_APPBAR : TGTKType; +begin + GNOME_TYPE_APPBAR:=gnome_appbar_get_type; +end; + +function GNOME_IS_APPBAR(obj : pointer) : Boolean; +begin + GNOME_IS_APPBAR:=(obj<>nil) and GNOME_IS_APPBAR_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_APPBAR_CLASS(klass : pointer) : boolean; +begin + GNOME_IS_APPBAR_CLASS:= (klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_APPBAR); +end; + +function GNOME_APPBAR_HAS_STATUS(appbar : PGnomeAppBar) : gboolean; +begin + GNOME_APPBAR_HAS_STATUS:=(appbar^.status) <> NULL; +end; + +function GNOME_APPBAR_HAS_PROGRESS(appbar : PGnomeAppBar) : gboolean; +begin + GNOME_APPBAR_HAS_PROGRESS:=(appbar^.progress) <> NULL; +end; + +function interactive(var a : TGnomeAppBar) : gboolean; +begin + interactive:=gboolean((a.flag0 and bm__GnomeAppBar_interactive) shr bp__GnomeAppBar_interactive); +end; + +procedure set_interactive(var a : TGnomeAppBar; __interactive : gboolean); +begin + a.flag0:=a.flag0 or ((gint(__interactive) shl bp__GnomeAppBar_interactive) and bm__GnomeAppBar_interactive); +end; + +function GNOME_APPBAR_INTERACTIVE(ab : PGnomeAppBar) : gboolean; +var + if_local1 : gboolean; +begin + if ab <> nil then + if_local1:=interactive(ab^) + else + if_local1:=False; + GNOME_APPBAR_INTERACTIVE:=if_local1; +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeapphelper.inc b/packages/gnome1/src/libgnomeui/gnomeapphelper.inc new file mode 100644 index 0000000000..30b371faf5 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeapphelper.inc @@ -0,0 +1,475 @@ +{$IfDef read_interface} +type + TGnomeUIInfoType = (GNOME_APP_UI_ENDOFINFO,GNOME_APP_UI_ITEM, + GNOME_APP_UI_TOGGLEITEM,GNOME_APP_UI_RADIOITEMS, + GNOME_APP_UI_SUBTREE,GNOME_APP_UI_SEPARATOR, + GNOME_APP_UI_HELP,GNOME_APP_UI_BUILDER_DATA, + GNOME_APP_UI_ITEM_CONFIGURABLE,GNOME_APP_UI_SUBTREE_STOCK + ); + + TGnomeUIInfoConfigurableTypes = (GNOME_APP_CONFIGURABLE_ITEM_NEW,GNOME_APP_CONFIGURABLE_ITEM_OPEN, + GNOME_APP_CONFIGURABLE_ITEM_SAVE,GNOME_APP_CONFIGURABLE_ITEM_SAVE_AS, + GNOME_APP_CONFIGURABLE_ITEM_REVERT,GNOME_APP_CONFIGURABLE_ITEM_PRINT, + GNOME_APP_CONFIGURABLE_ITEM_PRINT_SETUP, + GNOME_APP_CONFIGURABLE_ITEM_CLOSE,GNOME_APP_CONFIGURABLE_ITEM_EXIT, + GNOME_APP_CONFIGURABLE_ITEM_CUT,GNOME_APP_CONFIGURABLE_ITEM_COPY, + GNOME_APP_CONFIGURABLE_ITEM_PASTE,GNOME_APP_CONFIGURABLE_ITEM_CLEAR, + GNOME_APP_CONFIGURABLE_ITEM_UNDO,GNOME_APP_CONFIGURABLE_ITEM_REDO, + GNOME_APP_CONFIGURABLE_ITEM_FIND,GNOME_APP_CONFIGURABLE_ITEM_FIND_AGAIN, + GNOME_APP_CONFIGURABLE_ITEM_REPLACE,GNOME_APP_CONFIGURABLE_ITEM_PROPERTIES, + GNOME_APP_CONFIGURABLE_ITEM_PREFERENCES, + GNOME_APP_CONFIGURABLE_ITEM_ABOUT,GNOME_APP_CONFIGURABLE_ITEM_SELECT_ALL, + GNOME_APP_CONFIGURABLE_ITEM_NEW_WINDOW, + GNOME_APP_CONFIGURABLE_ITEM_CLOSE_WINDOW, + GNOME_APP_CONFIGURABLE_ITEM_NEW_GAME, + GNOME_APP_CONFIGURABLE_ITEM_PAUSE_GAME, + GNOME_APP_CONFIGURABLE_ITEM_RESTART_GAME, + GNOME_APP_CONFIGURABLE_ITEM_UNDO_MOVE, + GNOME_APP_CONFIGURABLE_ITEM_REDO_MOVE, + GNOME_APP_CONFIGURABLE_ITEM_HINT,GNOME_APP_CONFIGURABLE_ITEM_SCORES, + GNOME_APP_CONFIGURABLE_ITEM_END_GAME + ); + + TGnomeUIPixmapType = (GNOME_APP_PIXMAP_NONE,GNOME_APP_PIXMAP_STOCK, + GNOME_APP_PIXMAP_DATA,GNOME_APP_PIXMAP_FILENAME + ); + + PGnomeUIInfo = ^TGnomeUIInfo; + TGnomeUIInfo = record + thetype : TGnomeUIInfoType; + thelabel : Pgchar; + hint : Pgchar; + moreinfo : gpointer;//aka Callback + user_data : gpointer; + unused_data : gpointer; + pixmap_type : TGnomeUIPixmapType; + pixmap_info : gconstpointer; + accelerator_key : guint; + ac_mods : TGdkModifierType; + widget : PGtkWidget; + end; + +const + GNOMEUIINFO_KEY_UIDATA :Pchar = 'uidata'; + GNOMEUIINFO_KEY_UIBDATA :Pchar = 'uibdata'; + +function GNOMEUIINFO_END : TGnomeUIInfo; +function GNOMEUIINFO_SEPARATOR : TGnomeUIInfo; +function GNOMEUIINFO_ITEM(thelabel : Pgchar;tooltip:Pgchar; callback : TGTKCallback; xpm_data : Pgchar) : TGnomeUIInfo; +function GNOMEUIINFO_ITEM_STOCK(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;stock_id : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_ITEM_NONE(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback) : TGnomeUIInfo; +function GNOMEUIINFO_ITEM_DATA(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;user_data : gpointer;xpm_data : Pgchar) : TGnomeUIInfo; +function GNOMEUIINFO_TOGGLEITEM(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;xpm_data : Pgchar) : TGnomeUIInfo; +function GNOMEUIINFO_TOGGLEITEM_DATA(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;user_data : gpointer;xpm_data : Pgchar) : TGnomeUIInfo; +function GNOMEUIINFO_HELP(app_name : Pgchar) : TGnomeUIInfo; +function GNOMEUIINFO_SUBTREE(thelabel : Pgchar;tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_SUBTREE_HINT(thelabel : Pgchar;hint : Pgchar;tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_SUBTREE_STOCK(thelabel : Pgchar;tree : gpointer;stock_id : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_RADIOLIST(list : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_RADIOITEM(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;xpm_data : Pgchar) : TGnomeUIInfo; +function GNOMEUIINFO_RADIOITEM_DATA(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;user_data : gpointer;xpm_data : Pgchar) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_NEW_ITEM(thelabel : Pgchar;tip : Pgchar;cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_NEW_SUBTREE(tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_OPEN_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_SAVE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_SAVE_AS_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_REVERT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_PRINT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_PRINT_SETUP_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_CLOSE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_EXIT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_CUT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_COPY_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_PASTE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_SELECT_ALL_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_CLEAR_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_UNDO_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_REDO_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_FIND_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_FIND_AGAIN_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_REPLACE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_PROPERTIES_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_PREFERENCES_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_NEW_WINDOW_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_CLOSE_WINDOW_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_ABOUT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_NEW_GAME_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_PAUSE_GAME_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_RESTART_GAME_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_UNDO_MOVE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_REDO_MOVE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_HINT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_SCORES_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_END_GAME_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; + +function gnome_app_helper_gettext(_string:Pgchar):Pgchar;cdecl;external libgnomeuidll name 'gnome_app_helper_gettext'; + +function GNOMEUIINFO_MENU_FILE_TREE(tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_EDIT_TREE(tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_VIEW_TREE(tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_SETTINGS_TREE(tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_FILES_TREE(tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_WINDOWS_TREE(tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_HELP_TREE(tree : gpointer) : TGnomeUIInfo; +function GNOMEUIINFO_MENU_GAME_TREE(tree : gpointer) : TGnomeUIInfo; + + +const + GNOME_MENU_FILE_STRING :Pchar = '_File'; + GNOME_MENU_FILE_PATH :Pchar = '_File/'; + GNOME_MENU_EDIT_STRING :Pchar = '_Edit'; + GNOME_MENU_EDIT_PATH :Pchar = '_Edit/'; + GNOME_MENU_VIEW_STRING :Pchar = '_View'; + GNOME_MENU_VIEW_PATH :Pchar = '_View/'; + GNOME_MENU_SETTINGS_STRING :Pchar = '_Settings'; + GNOME_MENU_SETTINGS_PATH :Pchar = '_Settings/'; + GNOME_MENU_NEW_STRING :Pchar = '_New'; + GNOME_MENU_NEW_PATH :Pchar = '_New/'; + GNOME_MENU_FILES_STRING :Pchar = 'Fi_les'; + GNOME_MENU_FILES_PATH :Pchar = 'Fi_les/'; + GNOME_MENU_WINDOWS_STRING :Pchar = '_Windows'; + GNOME_MENU_WINDOWS_PATH :Pchar = '_Windows/'; +type + PGnomeUIBuilderData = ^TGnomeUIBuilderData; + TGnomeUISignalConnectFunc = procedure (uiinfo:PGnomeUIInfo; signal_name:Pgchar; uibdata:PGnomeUIBuilderData);cdecl; + TGnomeUIBuilderData = record + connect_func : TGnomeUISignalConnectFunc; + data : gpointer; + is_interp : gboolean; + relay_func : TGtkCallbackMarshal; + destroy_func : TGtkDestroyNotify; + end; + +procedure gnome_accelerators_sync;cdecl;external libgnomeuidll name 'gnome_accelerators_sync'; +procedure gnome_app_fill_menu(menu_shell:PGtkMenuShell; uiinfo:PGnomeUIInfo; accel_group:PGtkAccelGroup; uline_accels:gboolean; pos:gint);cdecl;external libgnomeuidll name 'gnome_app_fill_menu'; +procedure gnome_app_fill_menu_with_data(menu_shell:PGtkMenuShell; uiinfo:PGnomeUIInfo; accel_group:PGtkAccelGroup; uline_accels:gboolean; pos:gint; + user_data:gpointer);cdecl;external libgnomeuidll name 'gnome_app_fill_menu_with_data'; +procedure gnome_app_fill_menu_custom(menu_shell:PGtkMenuShell; uiinfo:PGnomeUIInfo; uibdata:PGnomeUIBuilderData; accel_group:PGtkAccelGroup; uline_accels:gboolean; + pos:gint);cdecl;external libgnomeuidll name 'gnome_app_fill_menu_custom'; +procedure gnome_app_ui_configure_configurable(uiinfo:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_app_ui_configure_configurable'; +procedure gnome_app_create_menus(app:PGnomeApp; uiinfo:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_app_create_menus'; +procedure gnome_app_create_menus_interp(app:PGnomeApp; uiinfo:PGnomeUIInfo; relay_func:TGtkCallbackMarshal; data:gpointer; destroy_func:TGtkDestroyNotify);cdecl;external libgnomeuidll name 'gnome_app_create_menus_interp'; +procedure gnome_app_create_menus_with_data(app:PGnomeApp; uiinfo:PGnomeUIInfo; user_data:gpointer);cdecl;external libgnomeuidll name 'gnome_app_create_menus_with_data'; +procedure gnome_app_create_menus_custom(app:PGnomeApp; uiinfo:PGnomeUIInfo; uibdata:PGnomeUIBuilderData);cdecl;external libgnomeuidll name 'gnome_app_create_menus_custom'; +procedure gnome_app_fill_toolbar(toolbar:PGtkToolbar; uiinfo:PGnomeUIInfo; accel_group:PGtkAccelGroup);cdecl;external libgnomeuidll name 'gnome_app_fill_toolbar'; +procedure gnome_app_fill_toolbar_with_data(toolbar:PGtkToolbar; uiinfo:PGnomeUIInfo; accel_group:PGtkAccelGroup; user_data:gpointer);cdecl;external libgnomeuidll name 'gnome_app_fill_toolbar_with_data'; +procedure gnome_app_fill_toolbar_custom(toolbar:PGtkToolbar; uiinfo:PGnomeUIInfo; uibdata:PGnomeUIBuilderData; accel_group:PGtkAccelGroup);cdecl;external libgnomeuidll name 'gnome_app_fill_toolbar_custom'; +procedure gnome_app_create_toolbar(app:PGnomeApp; uiinfo:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_app_create_toolbar'; +procedure gnome_app_create_toolbar_interp(app:PGnomeApp; uiinfo:PGnomeUIInfo; relay_func:TGtkCallbackMarshal; data:gpointer; destroy_func:TGtkDestroyNotify);cdecl;external libgnomeuidll name 'gnome_app_create_toolbar_interp'; +procedure gnome_app_create_toolbar_with_data(app:PGnomeApp; uiinfo:PGnomeUIInfo; user_data:gpointer);cdecl;external libgnomeuidll name 'gnome_app_create_toolbar_with_data'; +procedure gnome_app_create_toolbar_custom(app:PGnomeApp; uiinfo:PGnomeUIInfo; uibdata:PGnomeUIBuilderData);cdecl;external libgnomeuidll name 'gnome_app_create_toolbar_custom'; +function gnome_app_find_menu_pos(parent:PGtkWidget; path:Pgchar; pos:Pgint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_find_menu_pos'; +procedure gnome_app_remove_menus(app:PGnomeApp; path:Pgchar; items:gint);cdecl;external libgnomeuidll name 'gnome_app_remove_menus'; +procedure gnome_app_remove_menu_range(app:PGnomeApp; path:Pgchar; start:gint; items:gint);cdecl;external libgnomeuidll name 'gnome_app_remove_menu_range'; +procedure gnome_app_insert_menus_custom(app:PGnomeApp; path:Pgchar; menuinfo:PGnomeUIInfo; uibdata:PGnomeUIBuilderData);cdecl;external libgnomeuidll name 'gnome_app_insert_menus_custom'; +procedure gnome_app_insert_menus(app:PGnomeApp; path:Pgchar; menuinfo:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_app_insert_menus'; +procedure gnome_app_insert_menus_with_data(app:PGnomeApp; path:Pgchar; menuinfo:PGnomeUIInfo; data:gpointer);cdecl;external libgnomeuidll name 'gnome_app_insert_menus_with_data'; +procedure gnome_app_insert_menus_interp(app:PGnomeApp; path:Pgchar; menuinfo:PGnomeUIInfo; relay_func:TGtkCallbackMarshal; data:gpointer; + destroy_func:TGtkDestroyNotify);cdecl;external libgnomeuidll name 'gnome_app_insert_menus_interp'; +procedure gnome_app_install_appbar_menu_hints(appbar:PGnomeAppBar; uiinfo:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_app_install_appbar_menu_hints'; +procedure gnome_app_install_statusbar_menu_hints(bar:PGtkStatusbar; uiinfo:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_app_install_statusbar_menu_hints'; +procedure gnome_app_install_menu_hints(app:PGnomeApp; uinfo:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_app_install_menu_hints'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + + +function GETGNOMEUIINFO(thetype : TGnomeUIInfoType; thelabel : Pgchar; hint : Pgchar; moreinfo : gpointer; + user_data : gpointer;unused_data : gpointer; pixmap_type : TGnomeUIPixmapType; pixmap_info : Pgchar; + accelerator_key : guint; ac_mods : TGdkModifierType;widget : PGtkWidget) : TGnomeUIInfo; +begin + Result.thetype := thetype; + Result.thelabel := thelabel; + Result.hint := hint; + Result.moreinfo := moreinfo; + Result.user_data := user_data; + Result.unused_data := unused_data; + Result.pixmap_type := pixmap_type; + Result.pixmap_info := pixmap_info; + Result.accelerator_key := accelerator_key; + Result.ac_mods := ac_mods; + Result.widget := widget; +end; + +function GNOMEUIINFO_END: TGnomeUIInfo; +begin + GNOMEUIINFO_END:=GETGNOMEUIINFO(GNOME_APP_UI_ENDOFINFO,nil,nil,nil,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_SEPARATOR: TGnomeUIInfo; +begin + GNOMEUIINFO_SEPARATOR:=GETGNOMEUIINFO(GNOME_APP_UI_SEPARATOR,nil,nil,nil,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_ITEM(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;xpm_data : Pgchar) : TGnomeUIInfo; +begin + GNOMEUIINFO_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM,thelabel,tooltip,gpointer(callback),nil,nil,GNOME_APP_PIXMAP_DATA,xpm_data,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_ITEM_STOCK(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;stock_id : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_ITEM_STOCK:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM,thelabel,tooltip,gpointer(callback),nil,nil,GNOME_APP_PIXMAP_STOCK,stock_id,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_ITEM_NONE(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback) : TGnomeUIInfo; +begin + GNOMEUIINFO_ITEM_NONE:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM,thelabel,tooltip,gpointer(callback),nil,nil,GNOME_APP_PIXMAP_NONE,nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_ITEM_DATA(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;user_data : gpointer;xpm_data : Pgchar) : TGnomeUIInfo; +begin + GNOMEUIINFO_ITEM_DATA:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM,thelabel,tooltip,gpointer(callback),user_data,nil,GNOME_APP_PIXMAP_DATA,xpm_data,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_TOGGLEITEM(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;xpm_data : Pgchar) : TGnomeUIInfo; +begin + GNOMEUIINFO_TOGGLEITEM:=GETGNOMEUIINFO(GNOME_APP_UI_TOGGLEITEM,thelabel,tooltip,gpointer(callback),nil,nil,GNOME_APP_PIXMAP_DATA,xpm_data,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_TOGGLEITEM_DATA(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;user_data : gpointer;xpm_data : Pgchar) : TGnomeUIInfo; +begin + GNOMEUIINFO_TOGGLEITEM_DATA:=GETGNOMEUIINFO(GNOME_APP_UI_TOGGLEITEM,thelabel,tooltip,gpointer(callback),user_data,nil,GNOME_APP_PIXMAP_DATA,xpm_data,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_HELP(app_name : Pgchar) : TGnomeUIInfo; +begin + GNOMEUIINFO_HELP:=GETGNOMEUIINFO(GNOME_APP_UI_HELP,nil,nil,app_name,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_SUBTREE(thelabel : Pgchar;tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_SUBTREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE,thelabel,nil,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_SUBTREE_HINT(thelabel : Pgchar;hint : Pgchar;tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_SUBTREE_HINT:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE,thelabel,hint,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_SUBTREE_STOCK(thelabel : Pgchar;tree : gpointer;stock_id : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_SUBTREE_STOCK:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE,thelabel,nil,tree,nil,nil,GNOME_APP_PIXMAP_STOCK,stock_id,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_RADIOLIST(list : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_RADIOLIST:=GETGNOMEUIINFO(GNOME_APP_UI_RADIOITEMS,nil,nil,list,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_RADIOITEM(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;xpm_data : Pgchar) : TGnomeUIInfo; +begin + GNOMEUIINFO_RADIOITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM,thelabel,tooltip,gpointer(callback),nil,nil,GNOME_APP_PIXMAP_DATA,xpm_data,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_RADIOITEM_DATA(thelabel : Pgchar;tooltip:Pgchar;callback : TGTKCallback;user_data : gpointer;xpm_data : Pgchar) : TGnomeUIInfo; +begin + GNOMEUIINFO_RADIOITEM_DATA:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM,thelabel,tooltip,gpointer(callback),user_data,nil,GNOME_APP_PIXMAP_DATA,xpm_data,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_NEW_ITEM(thelabel : Pgchar;tip : Pgchar;cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_NEW_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,thelabel,tip,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_NEW),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_NEW_SUBTREE(tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_NEW_SUBTREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE_STOCK,'_New',nil,tree,nil,nil,GNOME_APP_PIXMAP_STOCK,GNOME_STOCK_MENU_NEW,GNOME_KEY_NAME_NEW,GNOME_KEY_MOD_NEW,nil); +end; + +function GNOMEUIINFO_MENU_OPEN_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_OPEN_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_OPEN),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_SAVE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_SAVE_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_SAVE),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_SAVE_AS_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_SAVE_AS_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_SAVE_AS),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_REVERT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_REVERT_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_REVERT),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_PRINT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_PRINT_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_PRINT),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_PRINT_SETUP_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_PRINT_SETUP_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_PRINT_SETUP),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_CLOSE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_CLOSE_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_CLOSE),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_EXIT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_EXIT_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_EXIT),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_CUT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_CUT_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_CUT),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_COPY_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_COPY_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_COPY),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_PASTE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_PASTE_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_PASTE),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_SELECT_ALL_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_SELECT_ALL_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_SELECT_ALL),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_CLEAR_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_CLEAR_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_CLEAR),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_UNDO_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_UNDO_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_UNDO),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_REDO_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_REDO_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_REDO),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_FIND_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_FIND_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_FIND),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_FIND_AGAIN_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_FIND_AGAIN_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_FIND_AGAIN),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_REPLACE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_REPLACE_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_REPLACE),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_PROPERTIES_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_PROPERTIES_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_PROPERTIES),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_PREFERENCES_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_PREFERENCES_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_PREFERENCES),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_NEW_WINDOW_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_NEW_WINDOW_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_NEW_WINDOW),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_CLOSE_WINDOW_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_CLOSE_WINDOW_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_CLOSE_WINDOW),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_ABOUT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_ABOUT_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_ABOUT),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_NEW_GAME_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_NEW_GAME_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_NEW_GAME),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_PAUSE_GAME_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_PAUSE_GAME_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_PAUSE_GAME),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_RESTART_GAME_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_RESTART_GAME_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_RESTART_GAME),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_UNDO_MOVE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_UNDO_MOVE_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_UNDO_MOVE),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_REDO_MOVE_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_REDO_MOVE_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_REDO_MOVE),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_HINT_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_HINT_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_HINT),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_SCORES_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_SCORES_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_SCORES),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_END_GAME_ITEM(cb : TGTKCallback;data:gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_END_GAME_ITEM:=GETGNOMEUIINFO(GNOME_APP_UI_ITEM_CONFIGURABLE,nil,nil,gpointer(cb),gpointer(data),nil,GNOME_APP_PIXMAP_NONE,nil,longint(GNOME_APP_CONFIGURABLE_ITEM_END_GAME),TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_FILE_TREE(tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_FILE_TREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE_STOCK,'_File',nil,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_EDIT_TREE(tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_EDIT_TREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE_STOCK,'_Edit',nil,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_VIEW_TREE(tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_VIEW_TREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE_STOCK,'_View',nil,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_SETTINGS_TREE(tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_SETTINGS_TREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE_STOCK,'_Settings',nil,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_FILES_TREE(tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_FILES_TREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE_STOCK,'Fi_les',nil,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_WINDOWS_TREE(tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_WINDOWS_TREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE_STOCK,'_Windows',nil,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_HELP_TREE(tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_HELP_TREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE_STOCK,'_Help',nil,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +function GNOMEUIINFO_MENU_GAME_TREE(tree : gpointer) : TGnomeUIInfo; +begin + GNOMEUIINFO_MENU_GAME_TREE:=GETGNOMEUIINFO(GNOME_APP_UI_SUBTREE_STOCK,'_Game',nil,tree,nil,nil,TGnomeUIPixmapType(0),nil,0,TGdkModifierType(0),nil); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeapputil.inc b/packages/gnome1/src/libgnomeui/gnomeapputil.inc new file mode 100644 index 0000000000..1265562984 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeapputil.inc @@ -0,0 +1,29 @@ +{$IfDef read_interface} + +function gnome_app_message(app:PGnomeApp; message:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_message'; +procedure gnome_app_flash(app:PGnomeApp; flash:Pgchar);cdecl;external libgnomeuidll name 'gnome_app_flash'; +function gnome_app_error(app:PGnomeApp; error:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_error'; +function gnome_app_warning(app:PGnomeApp; warning:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_warning'; +function gnome_app_question(app:PGnomeApp; question:Pgchar; callback:TGnomeReplyCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_question'; +function gnome_app_question_modal(app:PGnomeApp; question:Pgchar; callback:TGnomeReplyCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_question_modal'; +function gnome_app_ok_cancel(app:PGnomeApp; message:Pgchar; callback:TGnomeReplyCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_ok_cancel'; +function gnome_app_ok_cancel_modal(app:PGnomeApp; message:Pgchar; callback:TGnomeReplyCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_ok_cancel_modal'; +function gnome_app_request_string(app:PGnomeApp; prompt:Pgchar; callback:TGnomeStringCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_request_string'; +function gnome_app_request_password(app:PGnomeApp; prompt:Pgchar; callback:TGnomeStringCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_app_request_password'; + +type + TGnomeAppProgressFunc = function (data:gpointer):gdouble;cdecl; + TGnomeAppProgressCancelFunc = procedure (data:gpointer);cdecl; + TGnomeAppProgressKey = gpointer; + +function gnome_app_progress_timeout(app:PGnomeApp; description:Pgchar; interval:guint32; percentage_cb:TGnomeAppProgressFunc; cancel_cb:TGnomeAppProgressCancelFunc; + data:gpointer):TGnomeAppProgressKey;cdecl;external libgnomeuidll name 'gnome_app_progress_timeout'; +function gnome_app_progress_manual(app:PGnomeApp; description:Pgchar; cancel_cb:TGnomeAppProgressCancelFunc; data:gpointer):TGnomeAppProgressKey;cdecl;external libgnomeuidll name 'gnome_app_progress_manual'; +procedure gnome_app_set_progress(key:TGnomeAppProgressKey; percent:gdouble);cdecl;external libgnomeuidll name 'gnome_app_set_progress'; +procedure gnome_app_progress_done(key:TGnomeAppProgressKey);cdecl;external libgnomeuidll name 'gnome_app_progress_done'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecalculator.inc b/packages/gnome1/src/libgnomeui/gnomecalculator.inc new file mode 100644 index 0000000000..3600400ece --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecalculator.inc @@ -0,0 +1,110 @@ +{$IfDef read_interface} + +type + TGnomeCalculatorMode = (GNOME_CALCULATOR_DEG,GNOME_CALCULATOR_RAD, + GNOME_CALCULATOR_GRAD); + + PGnomeCalculator = ^TGnomeCalculator; + TGnomeCalculator = record + vbox : TGtkVBox; + result : gdouble; + result_string : array[0..12] of gchar; + memory : gdouble; + display : PGtkWidget; + mode : TGnomeCalculatorMode; + flag0 : word; + invert_button : PGtkWidget; + stack : PGList; + accel : PGtkAccelGroup; + end; + GNOME_CALCULATOR = PGnomeCalculator; + +const + bm__GnomeCalculator_add_digit = $1; + bp__GnomeCalculator_add_digit = 0; + bm__GnomeCalculator_error = $2; + bp__GnomeCalculator_error = 1; + bm__GnomeCalculator_invert = $4; + bp__GnomeCalculator_invert = 2; + +function add_digit(var a : TGnomeCalculator) : guint; +procedure set_add_digit(var a : TGnomeCalculator; __add_digit : guint); +function error(var a : TGnomeCalculator) : guint; +procedure set_error(var a : TGnomeCalculator; __error : guint); +function invert(var a : TGnomeCalculator) : guint; +procedure set_invert(var a : TGnomeCalculator; __invert : guint); + +type + PGnomeCalculatorClass = ^TGnomeCalculatorClass; + TGnomeCalculatorClass = record + parent_class : TGtkVBoxClass; + result_changed : procedure (gc:PGnomeCalculator; result:gdouble);cdecl; + end; + GNOME_CALCULATOR_CLASS = PGnomeCalculatorClass; + +function GNOME_TYPE_CALCULATOR : TGTKType; +function GNOME_IS_CALCULATOR(obj : Pointer) : Boolean; +function GNOME_IS_CALCULATOR_CLASS(klass : Pointer) : Boolean; + +function gnome_calculator_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_calculator_get_type'; +function gnome_calculator_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_calculator_new'; +procedure gnome_calculator_clear(gc:PGnomeCalculator; doreset:gboolean);cdecl;external libgnomeuidll name 'gnome_calculator_clear'; +procedure gnome_calculator_set(gc:PGnomeCalculator; result:gdouble);cdecl;external libgnomeuidll name 'gnome_calculator_set'; + +function gnome_calculator_get_result(gc : PGnomeCalculator) : gdouble; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_CALCULATOR : TGTKType; +begin + GNOME_TYPE_CALCULATOR:=gnome_calculator_get_type; +end; + +function GNOME_IS_CALCULATOR(obj : Pointer) : Boolean; +begin + GNOME_IS_CALCULATOR:=(obj<>nil) and GNOME_IS_CALCULATOR_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CALCULATOR_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CALCULATOR_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CALCULATOR); +end; + +function add_digit(var a : TGnomeCalculator) : guint; +begin + add_digit:=(a.flag0 and bm__GnomeCalculator_add_digit) shr bp__GnomeCalculator_add_digit; +end; + +procedure set_add_digit(var a : TGnomeCalculator; __add_digit : guint); +begin + a.flag0:=a.flag0 or ((__add_digit shl bp__GnomeCalculator_add_digit) and bm__GnomeCalculator_add_digit); +end; + +function error(var a : TGnomeCalculator) : guint; +begin + error:=(a.flag0 and bm__GnomeCalculator_error) shr bp__GnomeCalculator_error; +end; + +procedure set_error(var a : TGnomeCalculator; __error : guint); +begin + a.flag0:=a.flag0 or ((__error shl bp__GnomeCalculator_error) and bm__GnomeCalculator_error); +end; + +function invert(var a : TGnomeCalculator) : guint; +begin + invert:=(a.flag0 and bm__GnomeCalculator_invert) shr bp__GnomeCalculator_invert; +end; + +procedure set_invert(var a : TGnomeCalculator; __invert : guint); +begin + a.flag0:=a.flag0 or ((__invert shl bp__GnomeCalculator_invert) and bm__GnomeCalculator_invert); +end; + +function gnome_calculator_get_result(gc : PGnomeCalculator) : gdouble; +begin + gnome_calculator_get_result:=gc^.result; +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecalulator.inc b/packages/gnome1/src/libgnomeui/gnomecalulator.inc new file mode 100644 index 0000000000..830ff95f1c --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecalulator.inc @@ -0,0 +1,177 @@ +unit gnomecalulator; +interface + +{ + Automatically converted by H2Pas 0.99.15 from gnome-calculator.h + The following command line parameters were used: + -d + -c + -s + -o + gnomecalulator.inc + gnome-calculator.h +} + +{$PACKRECORDS C} + +{$ifndef GNOME_CALCULATOR_H} +{$define GNOME_CALCULATOR_H} +{$include <gdk/gdk.h>} +{$include <gtk/gtkvbox.h>} +{$include <libgnome/gnome-defs.h>} +{ was #define dname def_expr } +function GNOME_TYPE_CALCULATOR : longint; + { return type might be wrong } + +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function GNOME_CALCULATOR(obj : longint) : longint; + +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function GNOME_CALCULATOR_CLASS(klass : longint) : longint; + +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function GNOME_IS_CALCULATOR(obj : longint) : longint; + +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function GNOME_IS_CALCULATOR_CLASS(klass : longint) : longint; + +type + _GnomeCalculator = GnomeCalculator; + _GnomeCalculatorClass = GnomeCalculatorClass; + + GnomeCalculatorMode = (GNOME_CALCULATOR_DEG,GNOME_CALCULATOR_RAD, + GNOME_CALCULATOR_GRAD); + _GnomeCalculator = record + vbox : GtkVBox; + result : gdouble; + result_string : array[0..12] of gchar; + memory : gdouble; + display : ^GtkWidget; + mode : GnomeCalculatorMode; + flag0 : word; + invert_button : ^GtkWidget; + stack : ^GList; + accel : ^GtkAccelGroup; + end; + +const + bm__GnomeCalculator_add_digit = $1; + bp__GnomeCalculator_add_digit = 0; + bm__GnomeCalculator_error = $2; + bp__GnomeCalculator_error = 1; + bm__GnomeCalculator_invert = $4; + bp__GnomeCalculator_invert = 2; +function add_digit(var a : _GnomeCalculator) : guint; +procedure set_add_digit(var a : _GnomeCalculator; __add_digit : guint); +function error(var a : _GnomeCalculator) : guint; +procedure set_error(var a : _GnomeCalculator; __error : guint); +function invert(var a : _GnomeCalculator) : guint; +procedure set_invert(var a : _GnomeCalculator; __invert : guint); +type + _GnomeCalculatorClass = record + parent_class : GtkVBoxClass; + result_changed : procedure (gc:PGnomeCalculator; result:gdouble);cdecl; + end; + + +function gnome_calculator_get_type:guint;cdecl;external; +function gnome_calculator_new:^GtkWidget;cdecl;external; +(* Const before type ignored *) +procedure gnome_calculator_clear(gc:PGnomeCalculator; reset:gboolean);cdecl;external; +procedure gnome_calculator_set(gc:PGnomeCalculator; result:gdouble);cdecl;external; +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function gnome_calculator_get_result(gc : longint) : longint; + +{$endif} + +implementation + +{ was #define dname def_expr } +function GNOME_TYPE_CALCULATOR : longint; + { return type might be wrong } + begin + GNOME_TYPE_CALCULATOR:=gnome_calculator_get_type; + end; + +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function GNOME_CALCULATOR(obj : longint) : longint; +begin + GNOME_CALCULATOR:=GTK_CHECK_CAST(obj,GNOME_TYPE_CALCULATOR,GnomeCalculator); +end; + +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function GNOME_CALCULATOR_CLASS(klass : longint) : longint; +begin + GNOME_CALCULATOR_CLASS:=GTK_CHECK_CLASS_CAST(klass,GNOME_TYPE_CALCULATOR,GnomeCalculatorClass); +end; + +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function GNOME_IS_CALCULATOR(obj : longint) : longint; +begin + GNOME_IS_CALCULATOR:=GTK_CHECK_TYPE(obj,GNOME_TYPE_CALCULATOR); +end; + +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function GNOME_IS_CALCULATOR_CLASS(klass : longint) : longint; +begin + GNOME_IS_CALCULATOR_CLASS:=GTK_CHECK_CLASS_TYPE(klass,GNOME_TYPE_CALCULATOR); +end; + +function add_digit(var a : _GnomeCalculator) : guint; +begin + add_digit:=(a.flag0 and bm__GnomeCalculator_add_digit) shr bp__GnomeCalculator_add_digit; +end; + +procedure set_add_digit(var a : _GnomeCalculator; __add_digit : guint); +begin + a.flag0:=a.flag0 or ((__add_digit shl bp__GnomeCalculator_add_digit) and bm__GnomeCalculator_add_digit); +end; + +function error(var a : _GnomeCalculator) : guint; +begin + error:=(a.flag0 and bm__GnomeCalculator_error) shr bp__GnomeCalculator_error; +end; + +procedure set_error(var a : _GnomeCalculator; __error : guint); +begin + a.flag0:=a.flag0 or ((__error shl bp__GnomeCalculator_error) and bm__GnomeCalculator_error); +end; + +function invert(var a : _GnomeCalculator) : guint; +begin + invert:=(a.flag0 and bm__GnomeCalculator_invert) shr bp__GnomeCalculator_invert; +end; + +procedure set_invert(var a : _GnomeCalculator; __invert : guint); +begin + a.flag0:=a.flag0 or ((__invert shl bp__GnomeCalculator_invert) and bm__GnomeCalculator_invert); +end; + +{ was #define dname(params) para_def_expr } +{ argument types are unknown } +{ return type might be wrong } +function gnome_calculator_get_result(gc : longint) : longint; +begin + gnome_calculator_get_result:=(GNOME_CALCULATOR(gc))^.result; +end; + + +end. diff --git a/packages/gnome1/src/libgnomeui/gnomecanvas.inc b/packages/gnome1/src/libgnomeui/gnomecanvas.inc new file mode 100644 index 0000000000..0a27d0bf2f --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecanvas.inc @@ -0,0 +1,392 @@ +{$IfDef read_interface} + +const + GNOME_CANVAS_EPSILON = 1e-10; + +function GNOME_CANVAS_COLOR(r,g,b : longint) : longint; +function GNOME_CANVAS_COLOR_A(r,g,b,a : longint) : longint; + +const + GNOME_CANVAS_ITEM_REALIZED = 1 shl 4; + GNOME_CANVAS_ITEM_MAPPED = 1 shl 5; + GNOME_CANVAS_ITEM_ALWAYS_REDRAW = 1 shl 6; + GNOME_CANVAS_ITEM_VISIBLE = 1 shl 7; + GNOME_CANVAS_ITEM_NEED_UPDATE = 1 shl 8; + GNOME_CANVAS_ITEM_NEED_AFFINE = 1 shl 9; + GNOME_CANVAS_ITEM_NEED_CLIP = 1 shl 10; + GNOME_CANVAS_ITEM_NEED_VIS = 1 shl 11; + GNOME_CANVAS_ITEM_AFFINE_FULL = 1 shl 12; + + GNOME_CANVAS_UPDATE_REQUESTED = 1 shl 0; + GNOME_CANVAS_UPDATE_AFFINE = 1 shl 1; + GNOME_CANVAS_UPDATE_CLIP = 1 shl 2; + GNOME_CANVAS_UPDATE_VISIBILITY = 1 shl 3; + +Type + PGnomeCanvasBuf = ^TGnomeCanvasBuf; + TGnomeCanvasBuf = record + buf : Pguchar; + buf_rowstride : longint; + rect : TArtIRect; + bg_color : guint32; + flag0 : word; + end; + +const + bm_GnomeCanvasBuf_is_bg = $1; + bp_GnomeCanvasBuf_is_bg = 0; + bm_GnomeCanvasBuf_is_buf = $2; + bp_GnomeCanvasBuf_is_buf = 1; + +function is_bg(var a : TGnomeCanvasBuf) : dword; +procedure set_is_bg(var a : TGnomeCanvasBuf; __is_bg : dword); +function is_buf(var a : TGnomeCanvasBuf) : dword; +procedure set_is_buf(var a : TGnomeCanvasBuf; __is_buf : dword); + +type + PPGnomeCanvasItem = ^PGnomeCanvasItem; + PGnomeCanvasItem = ^TGnomeCanvasItem; + PGnomeCanvasGroup = ^TGnomeCanvasGroup; + PGnomeCanvas = ^TGnomeCanvas; + + TGnomeCanvasItem = record + theobject : TGtkObject; + canvas : PGnomeCanvas; + parent : PGnomeCanvasItem; + x1 : double; + y1 : double; + x2 : double; + y2 : double; + xform : Pdouble; + end; + GNOME_CANVAS_ITEM = PGnomeCanvasItem; + + PGnomeCanvasItemClass = ^TGnomeCanvasItemClass; + TGnomeCanvasItemClass = record + parent_class : TGtkObjectClass; + update : procedure (item:PGnomeCanvasItem; affine:Pdouble; clip_path:PArtSVP; flags:longint);cdecl; + realize : procedure (item:PGnomeCanvasItem);cdecl; + unrealize : procedure (item:PGnomeCanvasItem);cdecl; + map : procedure (item:PGnomeCanvasItem);cdecl; + unmap : procedure (item:PGnomeCanvasItem);cdecl; + coverage : function (item:PGnomeCanvasItem):PArtUta;cdecl; + draw : procedure (item:PGnomeCanvasItem; drawable:PGdkDrawable; x:longint; y:longint; width:longint; + height:longint);cdecl; + render : procedure (item:PGnomeCanvasItem; buf:PGnomeCanvasBuf);cdecl; + point : function (item:PGnomeCanvasItem; x:double; y:double; cx:longint; cy:longint; + actual_item:PPGnomeCanvasItem):double;cdecl; + translate : procedure (item:PGnomeCanvasItem; dx:double; dy:double);cdecl; + bounds : procedure (item:PGnomeCanvasItem; x1:Pdouble; y1:Pdouble; x2:Pdouble; y2:Pdouble);cdecl; + event : function (item:PGnomeCanvasItem; event:PGdkEvent):gint;cdecl; + end; + GNOME_CANVAS_ITEM_CLASS = PGnomeCanvasItemClass; + + TGnomeCanvasGroup = record + item : TGnomeCanvasItem; + item_list : PGList; + item_list_end : PGList; + xpos : double; + ypos : double; + end; + GNOME_CANVAS_GROUP = PGnomeCanvasGroup; + + PGnomeCanvasGroupClass = ^TGnomeCanvasGroupClass; + TGnomeCanvasGroupClass = record + parent_class : TGnomeCanvasItemClass; + end; + GNOME_CANVAS_GROUP_CLASS = PGnomeCanvasGroupClass; + + TGnomeCanvas = record + layout : TGtkLayout; + idle_id : guint; + root : PGnomeCanvasItem; + root_destroy_id : guint; + scroll_x1 : double; + scroll_y1 : double; + scroll_x2 : double; + scroll_y2 : double; + pixels_per_unit : double; + redraw_x1 : longint; + redraw_y1 : longint; + redraw_x2 : longint; + redraw_y2 : longint; + redraw_area : PArtUta; + draw_xofs : longint; + draw_yofs : longint; + zoom_xofs : longint; + zoom_yofs : longint; + state : longint; + current_item : PGnomeCanvasItem; + new_current_item : PGnomeCanvasItem; + grabbed_item : PGnomeCanvasItem; + grabbed_event_mask : guint; + focused_item : PGnomeCanvasItem; + pick_event : TGdkEvent; + close_enough : longint; + cc : PGdkColorContext; + pixmap_gc : PGdkGC; + flag0 : word; + end; + GNOME_CANVAS = PGnomeCanvas; + + PGnomeCanvasClass = ^TGnomeCanvasClass; + TGnomeCanvasClass = record + parent_class : TGtkLayoutClass; + end; + GNOME_CANVAS_CLASS = PGnomeCanvasClass; + +function GNOME_TYPE_CANVAS_ITEM : TGTKType; +function GNOME_IS_CANVAS_ITEM(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_ITEM_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_item_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_item_get_type'; +function gnome_canvas_item_new(parent:PGnomeCanvasGroup; thetype:TGtkType; first_arg_name:Pgchar; args:array of const):PGnomeCanvasItem;cdecl;external libgnomeuidll name 'gnome_canvas_item_new'; +function gnome_canvas_item_newv(parent:PGnomeCanvasGroup; thetype:TGtkType; nargs:guint; args:PGtkArg):PGnomeCanvasItem;cdecl;external libgnomeuidll name 'gnome_canvas_item_newv'; +procedure gnome_canvas_item_construct(item:PGnomeCanvasItem; parent:PGnomeCanvasGroup; first_arg_name:Pgchar; args:va_list);cdecl;external libgnomeuidll name 'gnome_canvas_item_construct'; +procedure gnome_canvas_item_constructv(item:PGnomeCanvasItem; parent:PGnomeCanvasGroup; nargs:guint; args:PGtkArg);cdecl;external libgnomeuidll name 'gnome_canvas_item_constructv'; +procedure gnome_canvas_item_set(item:PGnomeCanvasItem; first_arg_name:Pgchar; args:array of const);cdecl;external libgnomeuidll name 'gnome_canvas_item_set'; +procedure gnome_canvas_item_setv(item:PGnomeCanvasItem; nargs:guint; args:PGtkArg);cdecl;external libgnomeuidll name 'gnome_canvas_item_setv'; +procedure gnome_canvas_item_set_valist(item:PGnomeCanvasItem; first_arg_name:Pgchar; args:va_list);cdecl;external libgnomeuidll name 'gnome_canvas_item_set_valist'; +procedure gnome_canvas_item_move(item:PGnomeCanvasItem; dx:double; dy:double);cdecl;external libgnomeuidll name 'gnome_canvas_item_move'; +procedure gnome_canvas_item_affine_relative(item:PGnomeCanvasItem; affine:Taffine_array);cdecl;external libgnomeuidll name 'gnome_canvas_item_affine_relative'; +procedure gnome_canvas_item_affine_absolute(item:PGnomeCanvasItem; affine:Taffine_array);cdecl;external libgnomeuidll name 'gnome_canvas_item_affine_absolute'; +procedure gnome_canvas_item_scale(item:PGnomeCanvasItem; x:double; y:double; scale_x:double; scale_y:double);cdecl;external libgnomeuidll name 'gnome_canvas_item_scale'; +procedure gnome_canvas_item_rotate(item:PGnomeCanvasItem; x:double; y:double; angle:double);cdecl;external libgnomeuidll name 'gnome_canvas_item_rotate'; +procedure gnome_canvas_item_raise(item:PGnomeCanvasItem; positions:longint);cdecl;external libgnomeuidll name 'gnome_canvas_item_raise'; +procedure gnome_canvas_item_lower(item:PGnomeCanvasItem; positions:longint);cdecl;external libgnomeuidll name 'gnome_canvas_item_lower'; +procedure gnome_canvas_item_raise_to_top(item:PGnomeCanvasItem);cdecl;external libgnomeuidll name 'gnome_canvas_item_raise_to_top'; +procedure gnome_canvas_item_lower_to_bottom(item:PGnomeCanvasItem);cdecl;external libgnomeuidll name 'gnome_canvas_item_lower_to_bottom'; +procedure gnome_canvas_item_show(item:PGnomeCanvasItem);cdecl;external libgnomeuidll name 'gnome_canvas_item_show'; +procedure gnome_canvas_item_hide(item:PGnomeCanvasItem);cdecl;external libgnomeuidll name 'gnome_canvas_item_hide'; +function gnome_canvas_item_grab(item:PGnomeCanvasItem; event_mask:dword; cursor:PGdkCursor; etime:guint32):longint;cdecl;external libgnomeuidll name 'gnome_canvas_item_grab'; +procedure gnome_canvas_item_ungrab(item:PGnomeCanvasItem; etime:guint32);cdecl;external libgnomeuidll name 'gnome_canvas_item_ungrab'; +procedure gnome_canvas_item_w2i(item:PGnomeCanvasItem; x:Pdouble; y:Pdouble);cdecl;external libgnomeuidll name 'gnome_canvas_item_w2i'; +procedure gnome_canvas_item_i2w(item:PGnomeCanvasItem; x:Pdouble; y:Pdouble);cdecl;external libgnomeuidll name 'gnome_canvas_item_i2w'; +procedure gnome_canvas_item_i2w_affine(item:PGnomeCanvasItem; affine:Taffine_array);cdecl;external libgnomeuidll name 'gnome_canvas_item_i2w_affine'; +procedure gnome_canvas_item_i2c_affine(item:PGnomeCanvasItem; affine:Taffine_array);cdecl;external libgnomeuidll name 'gnome_canvas_item_i2c_affine'; +procedure gnome_canvas_item_reparent(item:PGnomeCanvasItem; new_group:PGnomeCanvasGroup);cdecl;external libgnomeuidll name 'gnome_canvas_item_reparent'; +procedure gnome_canvas_item_grab_focus(item:PGnomeCanvasItem);cdecl;external libgnomeuidll name 'gnome_canvas_item_grab_focus'; +procedure gnome_canvas_item_get_bounds(item:PGnomeCanvasItem; x1:Pdouble; y1:Pdouble; x2:Pdouble; y2:Pdouble);cdecl;external libgnomeuidll name 'gnome_canvas_item_get_bounds'; +procedure gnome_canvas_item_request_update(item:PGnomeCanvasItem);cdecl;external libgnomeuidll name 'gnome_canvas_item_request_update'; + +function GNOME_TYPE_CANVAS_GROUP : TGTKType; +function GNOME_IS_CANVAS_GROUP(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_GROUP_CLASS(klass : Pointer) : Boolean; + + +function gnome_canvas_group_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_group_get_type'; +procedure gnome_canvas_group_child_bounds(group:PGnomeCanvasGroup; item:PGnomeCanvasItem);cdecl;external libgnomeuidll name 'gnome_canvas_group_child_bounds'; + +const + bm__GnomeCanvas_need_update = $1; + bp__GnomeCanvas_need_update = 0; + bm__GnomeCanvas_need_redraw = $2; + bp__GnomeCanvas_need_redraw = 1; + bm__GnomeCanvas_need_repick = $4; + bp__GnomeCanvas_need_repick = 2; + bm__GnomeCanvas_left_grabbed_item = $8; + bp__GnomeCanvas_left_grabbed_item = 3; + bm__GnomeCanvas_in_repick = $10; + bp__GnomeCanvas_in_repick = 4; + bm__GnomeCanvas_aa = $20; + bp__GnomeCanvas_aa = 5; + bm__GnomeCanvas_dither = $C0; + bp__GnomeCanvas_dither = 6; +function need_update(var a : TGnomeCanvas) : dword; +procedure set_need_update(var a : TGnomeCanvas; __need_update : dword); +function need_redraw(var a : TGnomeCanvas) : dword; +procedure set_need_redraw(var a : TGnomeCanvas; __need_redraw : dword); +function need_repick(var a : TGnomeCanvas) : dword; +procedure set_need_repick(var a : TGnomeCanvas; __need_repick : dword); +function left_grabbed_item(var a : TGnomeCanvas) : dword; +procedure set_left_grabbed_item(var a : TGnomeCanvas; __left_grabbed_item : dword); +function in_repick(var a : TGnomeCanvas) : dword; +procedure set_in_repick(var a : TGnomeCanvas; __in_repick : dword); +function aa(var a : TGnomeCanvas) : dword; +procedure set_aa(var a : TGnomeCanvas; __aa : dword); +function dither(var a : TGnomeCanvas) : dword; +procedure set_dither(var a : TGnomeCanvas; __dither : dword); + +function GNOME_TYPE_CANVAS : TGTKType; +function GNOME_IS_CANVAS(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_get_type'; +function gnome_canvas_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_canvas_new'; + +{$ifndef GNOME_EXCLUDE_EXPERIMENTAL} + function gnome_canvas_new_aa:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_canvas_new_aa'; +{$endif} + +function gnome_canvas_root(canvas:PGnomeCanvas):PGnomeCanvasGroup;cdecl;external libgnomeuidll name 'gnome_canvas_root'; +procedure gnome_canvas_set_scroll_region(canvas:PGnomeCanvas; x1:double; y1:double; x2:double; y2:double);cdecl;external libgnomeuidll name 'gnome_canvas_set_scroll_region'; +procedure gnome_canvas_get_scroll_region(canvas:PGnomeCanvas; x1:Pdouble; y1:Pdouble; x2:Pdouble; y2:Pdouble);cdecl;external libgnomeuidll name 'gnome_canvas_get_scroll_region'; +procedure gnome_canvas_set_pixels_per_unit(canvas:PGnomeCanvas; n:double);cdecl;external libgnomeuidll name 'gnome_canvas_set_pixels_per_unit'; +procedure gnome_canvas_scroll_to(canvas:PGnomeCanvas; cx:longint; cy:longint);cdecl;external libgnomeuidll name 'gnome_canvas_scroll_to'; +procedure gnome_canvas_get_scroll_offsets(canvas:PGnomeCanvas; cx:Plongint; cy:Plongint);cdecl;external libgnomeuidll name 'gnome_canvas_get_scroll_offsets'; +procedure gnome_canvas_update_now(canvas:PGnomeCanvas);cdecl;external libgnomeuidll name 'gnome_canvas_update_now'; +function gnome_canvas_get_item_at(canvas:PGnomeCanvas; x:double; y:double):PGnomeCanvasItem;cdecl;external libgnomeuidll name 'gnome_canvas_get_item_at'; +procedure gnome_canvas_request_redraw_uta(canvas:PGnomeCanvas; uta:PArtUta);cdecl;external libgnomeuidll name 'gnome_canvas_request_redraw_uta'; +procedure gnome_canvas_request_redraw(canvas:PGnomeCanvas; x1:longint; y1:longint; x2:longint; y2:longint);cdecl;external libgnomeuidll name 'gnome_canvas_request_redraw'; +procedure gnome_canvas_w2c_affine(canvas:PGnomeCanvas; affine:Taffine_array);cdecl;external libgnomeuidll name 'gnome_canvas_w2c_affine'; +procedure gnome_canvas_w2c(canvas:PGnomeCanvas; wx:double; wy:double; cx:Plongint; cy:Plongint);cdecl;external libgnomeuidll name 'gnome_canvas_w2c'; +procedure gnome_canvas_w2c_d(canvas:PGnomeCanvas; wx:double; wy:double; cx:Pdouble; cy:Pdouble);cdecl;external libgnomeuidll name 'gnome_canvas_w2c_d'; +procedure gnome_canvas_c2w(canvas:PGnomeCanvas; cx:longint; cy:longint; wx:Pdouble; wy:Pdouble);cdecl;external libgnomeuidll name 'gnome_canvas_c2w'; +procedure gnome_canvas_window_to_world(canvas:PGnomeCanvas; winx:double; winy:double; worldx:Pdouble; worldy:Pdouble);cdecl;external libgnomeuidll name 'gnome_canvas_window_to_world'; +procedure gnome_canvas_world_to_window(canvas:PGnomeCanvas; worldx:double; worldy:double; winx:Pdouble; winy:Pdouble);cdecl;external libgnomeuidll name 'gnome_canvas_world_to_window'; +function gnome_canvas_get_color(canvas:PGnomeCanvas; spec:Pchar; color:PGdkColor):longint;cdecl;external libgnomeuidll name 'gnome_canvas_get_color'; +function gnome_canvas_get_color_pixel(canvas:PGnomeCanvas; rgba:guint):gulong;cdecl;external libgnomeuidll name 'gnome_canvas_get_color_pixel'; +procedure gnome_canvas_set_stipple_origin(canvas:PGnomeCanvas; gc:PGdkGC);cdecl;external libgnomeuidll name 'gnome_canvas_set_stipple_origin'; +procedure gnome_canvas_set_dither(canvas:PGnomeCanvas; dither:TGdkRgbDither);cdecl;external libgnomeuidll name 'gnome_canvas_set_dither'; +function gnome_canvas_get_dither(canvas:PGnomeCanvas):TGdkRgbDither;cdecl;external libgnomeuidll name 'gnome_canvas_get_dither'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +Function GNOME_CANVAS_COLOR(r, g, b : longint) : Longint; +begin + result := (((r and $ff) shl 24) or ((g and $ff) shl 16) or ((b and $ff) shl 8) or $ff); +end; + +Function GNOME_CANVAS_COLOR_A(r, g, b, a : longint) : longint; +begin + result := (((r and $ff) shl 24) or ((g and $ff) shl 16) or ((b and $ff) shl 8) or (a and $ff)) +end; + +function is_bg(var a : TGnomeCanvasBuf) : dword; +begin + is_bg:=(a.flag0 and bm_GnomeCanvasBuf_is_bg) shr bp_GnomeCanvasBuf_is_bg; +end; + +procedure set_is_bg(var a : TGnomeCanvasBuf; __is_bg : dword); +begin + a.flag0:=a.flag0 or ((__is_bg shl bp_GnomeCanvasBuf_is_bg) and bm_GnomeCanvasBuf_is_bg); +end; + +function is_buf(var a : TGnomeCanvasBuf) : dword; +begin + is_buf:=(a.flag0 and bm_GnomeCanvasBuf_is_buf) shr bp_GnomeCanvasBuf_is_buf; +end; + +procedure set_is_buf(var a : TGnomeCanvasBuf; __is_buf : dword); +begin + a.flag0:=a.flag0 or ((__is_buf shl bp_GnomeCanvasBuf_is_buf) and bm_GnomeCanvasBuf_is_buf); +end; + +function GNOME_TYPE_CANVAS_ITEM : TGTKType; +begin + GNOME_TYPE_CANVAS_ITEM:=gnome_canvas_item_get_type; +end; + +function GNOME_IS_CANVAS_ITEM(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_ITEM:=(obj<>nil) and GNOME_IS_CANVAS_ITEM_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_ITEM_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_ITEM_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_ITEM); +end; + +function GNOME_TYPE_CANVAS_GROUP : TGTKType; +begin + GNOME_TYPE_CANVAS_GROUP:=gnome_canvas_group_get_type; +end; + +function GNOME_IS_CANVAS_GROUP(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_GROUP:=(obj<>nil) and GNOME_IS_CANVAS_GROUP_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_GROUP_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_GROUP_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_GROUP); +end; + +function need_update(var a : TGnomeCanvas) : dword; +begin + need_update:=(a.flag0 and bm__GnomeCanvas_need_update) shr bp__GnomeCanvas_need_update; +end; + +procedure set_need_update(var a : TGnomeCanvas; __need_update : dword); +begin + a.flag0:=a.flag0 or ((__need_update shl bp__GnomeCanvas_need_update) and bm__GnomeCanvas_need_update); +end; + +function need_redraw(var a : TGnomeCanvas) : dword; +begin + need_redraw:=(a.flag0 and bm__GnomeCanvas_need_redraw) shr bp__GnomeCanvas_need_redraw; +end; + +procedure set_need_redraw(var a : TGnomeCanvas; __need_redraw : dword); +begin + a.flag0:=a.flag0 or ((__need_redraw shl bp__GnomeCanvas_need_redraw) and bm__GnomeCanvas_need_redraw); +end; + +function need_repick(var a : TGnomeCanvas) : dword; +begin + need_repick:=(a.flag0 and bm__GnomeCanvas_need_repick) shr bp__GnomeCanvas_need_repick; +end; + +procedure set_need_repick(var a : TGnomeCanvas; __need_repick : dword); +begin + a.flag0:=a.flag0 or ((__need_repick shl bp__GnomeCanvas_need_repick) and bm__GnomeCanvas_need_repick); +end; + +function left_grabbed_item(var a : TGnomeCanvas) : dword; +begin + left_grabbed_item:=(a.flag0 and bm__GnomeCanvas_left_grabbed_item) shr bp__GnomeCanvas_left_grabbed_item; +end; + +procedure set_left_grabbed_item(var a : TGnomeCanvas; __left_grabbed_item : dword); +begin + a.flag0:=a.flag0 or ((__left_grabbed_item shl bp__GnomeCanvas_left_grabbed_item) and bm__GnomeCanvas_left_grabbed_item); +end; + +function in_repick(var a : TGnomeCanvas) : dword; +begin + in_repick:=(a.flag0 and bm__GnomeCanvas_in_repick) shr bp__GnomeCanvas_in_repick; +end; + +procedure set_in_repick(var a : TGnomeCanvas; __in_repick : dword); +begin + a.flag0:=a.flag0 or ((__in_repick shl bp__GnomeCanvas_in_repick) and bm__GnomeCanvas_in_repick); +end; + +function aa(var a : TGnomeCanvas) : dword; +begin + aa:=(a.flag0 and bm__GnomeCanvas_aa) shr bp__GnomeCanvas_aa; +end; + +procedure set_aa(var a : TGnomeCanvas; __aa : dword); +begin + a.flag0:=a.flag0 or ((__aa shl bp__GnomeCanvas_aa) and bm__GnomeCanvas_aa); +end; + +function dither(var a : TGnomeCanvas) : dword; +begin + dither:=(a.flag0 and bm__GnomeCanvas_dither) shr bp__GnomeCanvas_dither; +end; + +procedure set_dither(var a : TGnomeCanvas; __dither : dword); +begin + a.flag0:=a.flag0 or ((__dither shl bp__GnomeCanvas_dither) and bm__GnomeCanvas_dither); +end; + +function GNOME_TYPE_CANVAS : TGTKType; +begin + GNOME_TYPE_CANVAS:=gnome_canvas_get_type; +end; + +function GNOME_IS_CANVAS(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS:=(obj<>nil) and GNOME_IS_CANVAS_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecanvasimage.inc b/packages/gnome1/src/libgnomeui/gnomecanvasimage.inc new file mode 100644 index 0000000000..8c335ceb49 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecanvasimage.inc @@ -0,0 +1,75 @@ +{$IfDef read_interface} + +type + PGnomeCanvasImage = ^TGnomeCanvasImage; + TGnomeCanvasImage = record + item : TGnomeCanvasItem; + image : PGdkImlibImage; + pixmap : PGdkPixmap; + mask : PGdkBitmap; + x : double; + y : double; + width : double; + height : double; + anchor : TGtkAnchorType; + cx : longint; + cy : longint; + cwidth : longint; + cheight : longint; + gc : PGdkGC; + flag0 : word; + pixbuf : PArtPixBuf; + affine : Taffine_array; + end; + GNOME_CANVAS_IMAGE = PGnomeCanvasImage; + +const + bm__GnomeCanvasImage_need_recalc = $1; + bp__GnomeCanvasImage_need_recalc = 0; + +function need_recalc(var a : TGnomeCanvasImage) : dword; +procedure set_need_recalc(var a : TGnomeCanvasImage; __need_recalc : dword); + +type + PGnomeCanvasImageClass = ^TGnomeCanvasImageClass; + TGnomeCanvasImageClass = record + parent_class : TGnomeCanvasItemClass; + end; + GNOME_CANVAS_IMAGE_CLASS = PGnomeCanvasImageClass; + +function GNOME_TYPE_CANVAS_IMAGE : TGTKType; +function GNOME_IS_CANVAS_IMAGE(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_IMAGE_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_image_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_image_get_type'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_CANVAS_IMAGE : TGTKType; +begin + GNOME_TYPE_CANVAS_IMAGE:=gnome_canvas_image_get_type; +end; + +function GNOME_IS_CANVAS_IMAGE(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_IMAGE:=(obj<>nil) and GNOME_IS_CANVAS_IMAGE_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_IMAGE_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_IMAGE_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_IMAGE); +end; + +function need_recalc(var a : TGnomeCanvasImage) : dword; +begin + need_recalc:=(a.flag0 and bm__GnomeCanvasImage_need_recalc) shr bp__GnomeCanvasImage_need_recalc; +end; + +procedure set_need_recalc(var a : TGnomeCanvasImage; __need_recalc : dword); +begin + a.flag0:=a.flag0 or ((__need_recalc shl bp__GnomeCanvasImage_need_recalc) and bm__GnomeCanvasImage_need_recalc); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecanvasline.inc b/packages/gnome1/src/libgnomeui/gnomecanvasline.inc new file mode 100644 index 0000000000..1c152ccde4 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecanvasline.inc @@ -0,0 +1,120 @@ +{$IfDef read_interface} + +type + PGnomeCanvasLine = ^TGnomeCanvasLine; + TGnomeCanvasLine = record + item : TGnomeCanvasItem; + num_points : longint; + coords : Pdouble; + width : double; + fill_color : guint; + fill_pixel : gulong; + stipple : PGdkBitmap; + cap : TGdkCapStyle; + join : TGdkJoinStyle; + line_style : TGdkLineStyle; + shape_a : double; + shape_b : double; + shape_c : double; + first_coords : Pdouble; + last_coords : Pdouble; + spline_steps : longint; + gc : PGdkGC; + flag0 : word; + fill_rgba : guint32; + fill_svp : PArtSVP; + first_svp : PArtSVP; + last_svp : PArtSVP; + end; + GNOME_CANVAS_LINE = PGnomeCanvasLine; + +const + bm__GnomeCanvasLine_width_pixels = $1; + bp__GnomeCanvasLine_width_pixels = 0; + bm__GnomeCanvasLine_first_arrow = $2; + bp__GnomeCanvasLine_first_arrow = 1; + bm__GnomeCanvasLine_last_arrow = $4; + bp__GnomeCanvasLine_last_arrow = 2; + bm__GnomeCanvasLine_smooth = $8; + bp__GnomeCanvasLine_smooth = 3; +function width_pixels(var a : TGnomeCanvasLine) : guint; +procedure set_width_pixels(var a : TGnomeCanvasLine; __width_pixels : guint); +function first_arrow(var a : TGnomeCanvasLine) : guint; +procedure set_first_arrow(var a : TGnomeCanvasLine; __first_arrow : guint); +function last_arrow(var a : TGnomeCanvasLine) : guint; +procedure set_last_arrow(var a : TGnomeCanvasLine; __last_arrow : guint); +function smooth(var a : TGnomeCanvasLine) : guint; +procedure set_smooth(var a : TGnomeCanvasLine; __smooth : guint); +type + PGnomeCanvasLineClass = ^TGnomeCanvasLineClass; + TGnomeCanvasLineClass = record + parent_class : TGnomeCanvasItemClass; + end; + GNOME_CANVAS_LINE_CLASS = PGnomeCanvasLineClass; + +function GNOME_TYPE_CANVAS_LINE : TGTKType; +function GNOME_IS_CANVAS_LINE(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_LINE_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_line_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_line_get_type'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_CANVAS_LINE : TGTKType; +begin + GNOME_TYPE_CANVAS_LINE:=gnome_canvas_line_get_type; +end; + +function GNOME_IS_CANVAS_LINE(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_LINE:=(obj<>nil) and GNOME_IS_CANVAS_LINE_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_LINE_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_LINE_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_LINE); +end; + +function width_pixels(var a : TGnomeCanvasLine) : guint; +begin + width_pixels:=(a.flag0 and bm__GnomeCanvasLine_width_pixels) shr bp__GnomeCanvasLine_width_pixels; +end; + +procedure set_width_pixels(var a : TGnomeCanvasLine; __width_pixels : guint); +begin + a.flag0:=a.flag0 or ((__width_pixels shl bp__GnomeCanvasLine_width_pixels) and bm__GnomeCanvasLine_width_pixels); +end; + +function first_arrow(var a : TGnomeCanvasLine) : guint; +begin + first_arrow:=(a.flag0 and bm__GnomeCanvasLine_first_arrow) shr bp__GnomeCanvasLine_first_arrow; +end; + +procedure set_first_arrow(var a : TGnomeCanvasLine; __first_arrow : guint); +begin + a.flag0:=a.flag0 or ((__first_arrow shl bp__GnomeCanvasLine_first_arrow) and bm__GnomeCanvasLine_first_arrow); +end; + +function last_arrow(var a : TGnomeCanvasLine) : guint; +begin + last_arrow:=(a.flag0 and bm__GnomeCanvasLine_last_arrow) shr bp__GnomeCanvasLine_last_arrow; +end; + +procedure set_last_arrow(var a : TGnomeCanvasLine; __last_arrow : guint); +begin + a.flag0:=a.flag0 or ((__last_arrow shl bp__GnomeCanvasLine_last_arrow) and bm__GnomeCanvasLine_last_arrow); +end; + +function smooth(var a : TGnomeCanvasLine) : guint; +begin + smooth:=(a.flag0 and bm__GnomeCanvasLine_smooth) shr bp__GnomeCanvasLine_smooth; +end; + +procedure set_smooth(var a : TGnomeCanvasLine; __smooth : guint); +begin + a.flag0:=a.flag0 or ((__smooth shl bp__GnomeCanvasLine_smooth) and bm__GnomeCanvasLine_smooth); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecanvasload.inc b/packages/gnome1/src/libgnomeui/gnomecanvasload.inc new file mode 100644 index 0000000000..efb3045aa0 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecanvasload.inc @@ -0,0 +1,10 @@ +{$IfDef read_interface} + +function gnome_canvas_load_alpha(thefile:Pgchar):PGdkImlibImage;cdecl;external libgnomeuidll name 'gnome_canvas_load_alpha'; +procedure gnome_canvas_destroy_image(image:PGdkImlibImage);cdecl;external libgnomeuidll name 'gnome_canvas_destroy_image'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecanvaspolygon.inc b/packages/gnome1/src/libgnomeui/gnomecanvaspolygon.inc new file mode 100644 index 0000000000..d2b6b549b7 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecanvaspolygon.inc @@ -0,0 +1,103 @@ +{$IfDef read_interface} + +type + PGnomeCanvasPolygon = ^TGnomeCanvasPolygon; + TGnomeCanvasPolygon = record + item : TGnomeCanvasItem; + num_points : longint; + coords : Pdouble; + width : double; + fill_color : guint; + outline_color : guint; + fill_pixel : gulong; + outline_pixel : gulong; + fill_stipple : PGdkBitmap; + outline_stipple : PGdkBitmap; + fill_gc : PGdkGC; + outline_gc : PGdkGC; + flag0 : word; + fill_rgba : guint32; + fill_svp : PArtSVP; + outline_rgba : guint32; + outline_svp : PArtSVP; + end; + GNOME_CANVAS_POLYGON = PGnomeCanvasPolygon; + +const + bm__GnomeCanvasPolygon_fill_set = $1; + bp__GnomeCanvasPolygon_fill_set = 0; + bm__GnomeCanvasPolygon_outline_set = $2; + bp__GnomeCanvasPolygon_outline_set = 1; + bm__GnomeCanvasPolygon_width_pixels = $4; + bp__GnomeCanvasPolygon_width_pixels = 2; + +function fill_set(var a : TGnomeCanvasPolygon) : guint; +procedure set_fill_set(var a : TGnomeCanvasPolygon; __fill_set : guint); +function outline_set(var a : TGnomeCanvasPolygon) : guint; +procedure set_outline_set(var a : TGnomeCanvasPolygon; __outline_set : guint); +function width_pixels(var a : TGnomeCanvasPolygon) : guint; +procedure set_width_pixels(var a : TGnomeCanvasPolygon; __width_pixels : guint); + +type + PGnomeCanvasPolygonClass = ^TGnomeCanvasPolygonClass; + TGnomeCanvasPolygonClass = record + parent_class : TGnomeCanvasItemClass; + end; + GNOME_CANVAS_POLYGON_CLASS = PGnomeCanvasPolygonClass; + +function GNOME_TYPE_CANVAS_POLYGON : TGTKType; +function GNOME_IS_CANVAS_POLYGON(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_POLYGON_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_polygon_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_polygon_get_type'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_CANVAS_POLYGON : TGTKType; +begin + GNOME_TYPE_CANVAS_POLYGON:=gnome_canvas_polygon_get_type; +end; + +function GNOME_IS_CANVAS_POLYGON(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_POLYGON:=(obj<>nil) and GNOME_IS_CANVAS_POLYGON_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_POLYGON_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_POLYGON_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_POLYGON); +end; + +function fill_set(var a : TGnomeCanvasPolygon) : guint; +begin + fill_set:=(a.flag0 and bm__GnomeCanvasPolygon_fill_set) shr bp__GnomeCanvasPolygon_fill_set; +end; + +procedure set_fill_set(var a : TGnomeCanvasPolygon; __fill_set : guint); +begin + a.flag0:=a.flag0 or ((__fill_set shl bp__GnomeCanvasPolygon_fill_set) and bm__GnomeCanvasPolygon_fill_set); +end; + +function outline_set(var a : TGnomeCanvasPolygon) : guint; +begin + outline_set:=(a.flag0 and bm__GnomeCanvasPolygon_outline_set) shr bp__GnomeCanvasPolygon_outline_set; +end; + +procedure set_outline_set(var a : TGnomeCanvasPolygon; __outline_set : guint); +begin + a.flag0:=a.flag0 or ((__outline_set shl bp__GnomeCanvasPolygon_outline_set) and bm__GnomeCanvasPolygon_outline_set); +end; + +function width_pixels(var a : TGnomeCanvasPolygon) : guint; +begin + width_pixels:=(a.flag0 and bm__GnomeCanvasPolygon_width_pixels) shr bp__GnomeCanvasPolygon_width_pixels; +end; + +procedure set_width_pixels(var a : TGnomeCanvasPolygon; __width_pixels : guint); +begin + a.flag0:=a.flag0 or ((__width_pixels shl bp__GnomeCanvasPolygon_width_pixels) and bm__GnomeCanvasPolygon_width_pixels); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecanvasrectellipse.inc b/packages/gnome1/src/libgnomeui/gnomecanvasrectellipse.inc new file mode 100644 index 0000000000..dd470cd0c3 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecanvasrectellipse.inc @@ -0,0 +1,170 @@ +{$IfDef read_interface} + +type + PGnomeCanvasRE = ^TGnomeCanvasRE; + TGnomeCanvasRE = record + item : TGnomeCanvasItem; + x1 : double; + y1 : double; + x2 : double; + y2 : double; + width : double; + fill_color : guint; + outline_color : guint; + fill_pixel : gulong; + outline_pixel : gulong; + fill_stipple : PGdkBitmap; + outline_stipple : PGdkBitmap; + fill_gc : PGdkGC; + outline_gc : PGdkGC; + fill_svp : PArtSVP; + outline_svp : PArtSVP; + flag0 : word; + end; + GNOME_CANVAS_RE = PGnomeCanvasRE; + +const + bm__GnomeCanvasRE_fill_set = $1; + bp__GnomeCanvasRE_fill_set = 0; + bm__GnomeCanvasRE_outline_set = $2; + bp__GnomeCanvasRE_outline_set = 1; + bm__GnomeCanvasRE_width_pixels = $4; + bp__GnomeCanvasRE_width_pixels = 2; +function fill_set(var a : TGnomeCanvasRE) : dword; +procedure set_fill_set(var a : TGnomeCanvasRE; __fill_set : dword); +function outline_set(var a : TGnomeCanvasRE) : dword; +procedure set_outline_set(var a : TGnomeCanvasRE; __outline_set : dword); +function width_pixels(var a : TGnomeCanvasRE) : dword; +procedure set_width_pixels(var a : TGnomeCanvasRE; __width_pixels : dword); + +type + PGnomeCanvasREClass = ^TGnomeCanvasREClass; + TGnomeCanvasREClass = record + parent_class : TGnomeCanvasItemClass; + end; + GNOME_CANVAS_RE_CLASS = PGnomeCanvasREClass; + +function GNOME_TYPE_CANVAS_RE : TGTKType; +function GNOME_IS_CANVAS_RE(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_RE_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_re_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_re_get_type'; + +type + PGnomeCanvasRect = ^TGnomeCanvasRect; + TGnomeCanvasRect = record + rect : TGnomeCanvasRE; + end; + GNOME_CANVAS_RECT = PGnomeCanvasRect; + + PGnomeCanvasRectClass = ^TGnomeCanvasRectClass; + TGnomeCanvasRectClass = record + parent_class : TGnomeCanvasREClass; + end; + GNOME_CANVAS_RECT_CLASS = PGnomeCanvasRectClass; + +function GNOME_TYPE_CANVAS_RECT : TGTKType; +function GNOME_IS_CANVAS_RECT(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_RECT_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_rect_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_rect_get_type'; + +type + PGnomeCanvasEllipse = ^TGnomeCanvasEllipse; + TGnomeCanvasEllipse = record + rect : TGnomeCanvasRE; + end; + GNOME_CANVAS_ELLIPSE = PGnomeCanvasEllipse; + + PGnomeCanvasEllipseClass = ^TGnomeCanvasEllipseClass; + TGnomeCanvasEllipseClass = record + parent_class : TGnomeCanvasREClass; + end; + GNOME_CANVAS_ELLIPSE_CLASS = PGnomeCanvasEllipseClass; + +function GNOME_TYPE_CANVAS_ELLIPSE : TGTKType; +function GNOME_IS_CANVAS_ELLIPSE(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_ELLIPSE_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_ellipse_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_ellipse_get_type'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_CANVAS_RE : TGTKType; +begin + GNOME_TYPE_CANVAS_RE:=gnome_canvas_re_get_type; +end; + +function GNOME_IS_CANVAS_RE(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_RE:=(obj<>nil) and GNOME_IS_CANVAS_RE_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_RE_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_RE_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_RE); +end; + +function fill_set(var a : TGnomeCanvasRE) : dword; +begin + fill_set:=(a.flag0 and bm__GnomeCanvasRE_fill_set) shr bp__GnomeCanvasRE_fill_set; +end; + +procedure set_fill_set(var a : TGnomeCanvasRE; __fill_set : dword); +begin + a.flag0:=a.flag0 or ((__fill_set shl bp__GnomeCanvasRE_fill_set) and bm__GnomeCanvasRE_fill_set); +end; + +function outline_set(var a : TGnomeCanvasRE) : dword; +begin + outline_set:=(a.flag0 and bm__GnomeCanvasRE_outline_set) shr bp__GnomeCanvasRE_outline_set; +end; + +procedure set_outline_set(var a : TGnomeCanvasRE; __outline_set : dword); +begin + a.flag0:=a.flag0 or ((__outline_set shl bp__GnomeCanvasRE_outline_set) and bm__GnomeCanvasRE_outline_set); +end; + +function width_pixels(var a : TGnomeCanvasRE) : dword; +begin + width_pixels:=(a.flag0 and bm__GnomeCanvasRE_width_pixels) shr bp__GnomeCanvasRE_width_pixels; +end; + +procedure set_width_pixels(var a : TGnomeCanvasRE; __width_pixels : dword); +begin + a.flag0:=a.flag0 or ((__width_pixels shl bp__GnomeCanvasRE_width_pixels) and bm__GnomeCanvasRE_width_pixels); +end; + +function GNOME_TYPE_CANVAS_RECT : TGTKType; +begin + GNOME_TYPE_CANVAS_RECT:=gnome_canvas_rect_get_type; +end; + +function GNOME_IS_CANVAS_RECT(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_RECT:=(obj<>nil) and GNOME_IS_CANVAS_RECT_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_RECT_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_RECT_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_RECT); +end; + +function GNOME_TYPE_CANVAS_ELLIPSE : TGTKType; +begin + GNOME_TYPE_CANVAS_ELLIPSE:=gnome_canvas_ellipse_get_type; +end; + +function GNOME_IS_CANVAS_ELLIPSE(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_ELLIPSE:=(obj<>nil) and GNOME_IS_CANVAS_ELLIPSE_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_ELLIPSE_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_ELLIPSE_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_ELLIPSE); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecanvastext.inc b/packages/gnome1/src/libgnomeui/gnomecanvastext.inc new file mode 100644 index 0000000000..61e92f2cdd --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecanvastext.inc @@ -0,0 +1,103 @@ +{$IfDef read_interface} + +type + PGnomeCanvasTextSuckChar = ^TGnomeCanvasTextSuckChar; + TGnomeCanvasTextSuckChar = record + left_sb : longint; + right_sb : longint; + width : longint; + ascent : longint; + descent : longint; + bitmap_offset : longint; + end; + + PGnomeCanvasTextSuckFont = ^TGnomeCanvasTextSuckFont; + TGnomeCanvasTextSuckFont = record + bitmap : Pguchar; + bitmap_width : gint; + bitmap_height : gint; + ascent : gint; + chars : array[0..255] of TGnomeCanvasTextSuckChar; + end; + + PGnomeCanvasText = ^TGnomeCanvasText; + TGnomeCanvasText = record + item : TGnomeCanvasItem; + thetext : Pchar; + lines : gpointer; + num_lines : longint; + x : double; + y : double; + font : PGdkFont; + anchor : TGtkAnchorType; + justification : TGtkJustification; + clip_width : double; + clip_height : double; + xofs : double; + yofs : double; + pixel : gulong; + stipple : PGdkBitmap; + gc : PGdkGC; + cx : longint; + cy : longint; + clip_cx : longint; + clip_cy : longint; + clip_cwidth : longint; + clip_cheight : longint; + max_width : longint; + height : longint; + flag0 : word; + suckfont : PGnomeCanvasTextSuckFont; + rgba : guint32; + affine : Taffine_array; + end; + GNOME_CANVAS_TEXT = PGnomeCanvasText; + +const + bm__GnomeCanvasText_clip = $1; + bp__GnomeCanvasText_clip = 0; +function clip(var a : TGnomeCanvasText) : guint; +procedure set_clip(var a : TGnomeCanvasText; __clip : guint); +type + PGnomeCanvasTextClass = ^TGnomeCanvasTextClass; + TGnomeCanvasTextClass = record + parent_class : TGnomeCanvasItemClass; + end; + GNOME_CANVAS_TEXT_CLASS = PGnomeCanvasTextClass; + +function GNOME_TYPE_CANVAS_TEXT : TGTKType; +function GNOME_IS_CANVAS_TEXT(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_TEXT_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_text_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_text_get_type'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function clip(var a : TGnomeCanvasText) : guint; +begin + clip:=(a.flag0 and bm__GnomeCanvasText_clip) shr bp__GnomeCanvasText_clip; +end; + +procedure set_clip(var a : TGnomeCanvasText; __clip : guint); +begin + a.flag0:=a.flag0 or ((__clip shl bp__GnomeCanvasText_clip) and bm__GnomeCanvasText_clip); +end; + +function GNOME_TYPE_CANVAS_TEXT : TGTKType; +begin + GNOME_TYPE_CANVAS_TEXT:=gnome_canvas_text_get_type; +end; + +function GNOME_IS_CANVAS_TEXT(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_TEXT:=(obj<>nil) and GNOME_IS_CANVAS_TEXT_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_TEXT_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_TEXT_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_TEXT); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecanvasutil.inc b/packages/gnome1/src/libgnomeui/gnomecanvasutil.inc new file mode 100644 index 0000000000..8848c28f79 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecanvasutil.inc @@ -0,0 +1,40 @@ +{$IfDef read_interface} + +type + PGnomeCanvasPoints = ^TGnomeCanvasPoints; + TGnomeCanvasPoints = record + num_points : longint; + coords : Pdouble; + ref_count : longint; + end; + +function gnome_canvas_points_new(num_points:longint):PGnomeCanvasPoints;cdecl;external libgnomeuidll name 'gnome_canvas_points_new'; +function gnome_canvas_points_ref(points:PGnomeCanvasPoints):PGnomeCanvasPoints;cdecl;external libgnomeuidll name 'gnome_canvas_points_ref'; + +procedure gnome_canvas_points_unref(points:PGnomeCanvasPoints);cdecl;external libgnomeuidll name 'gnome_canvas_points_free'; +procedure gnome_canvas_points_free(points:PGnomeCanvasPoints);cdecl;external libgnomeuidll name 'gnome_canvas_points_free'; + +function gnome_canvas_get_miter_points(x1:double; y1:double; x2:double; y2:double; x3:double; + y3:double; width:double; mx1:Pdouble; my1:Pdouble; mx2:Pdouble; + my2:Pdouble):longint;cdecl;external libgnomeuidll name 'gnome_canvas_get_miter_points'; +procedure gnome_canvas_get_butt_points(x1:double; y1:double; x2:double; y2:double; width:double; + project:longint; bx1:Pdouble; by1:Pdouble; bx2:Pdouble; by2:Pdouble);cdecl;external libgnomeuidll name 'gnome_canvas_get_butt_points'; +function gnome_canvas_polygon_to_point(poly:Pdouble; num_points:longint; x:double; y:double):double;cdecl;external libgnomeuidll name 'gnome_canvas_polygon_to_point'; +procedure gnome_canvas_render_svp(buf:PGnomeCanvasBuf; svp:PArtSVP; rgba:guint32);cdecl;external libgnomeuidll name 'gnome_canvas_render_svp'; +procedure gnome_canvas_update_svp(canvas:PGnomeCanvas; p_svp:PPArtSVP; new_svp:PArtSVP);cdecl;external libgnomeuidll name 'gnome_canvas_update_svp'; +procedure gnome_canvas_update_svp_clip(canvas:PGnomeCanvas; p_svp:PPArtSVP; new_svp:PArtSVP; clip_svp:PArtSVP);cdecl;external libgnomeuidll name 'gnome_canvas_update_svp_clip'; +procedure gnome_canvas_item_reset_bounds(item:PGnomeCanvasItem);cdecl;external libgnomeuidll name 'gnome_canvas_item_reset_bounds'; +procedure gnome_canvas_item_update_svp(item:PGnomeCanvasItem; p_svp:PPArtSVP; new_svp:PArtSVP);cdecl;external libgnomeuidll name 'gnome_canvas_item_update_svp'; +procedure gnome_canvas_item_update_svp_clip(item:PGnomeCanvasItem; p_svp:PPArtSVP; new_svp:PArtSVP; clip_svp:PArtSVP);cdecl;external libgnomeuidll name 'gnome_canvas_item_update_svp_clip'; +procedure gnome_canvas_item_request_redraw_svp(item:PGnomeCanvasItem; svp:PArtSVP);cdecl;external libgnomeuidll name 'gnome_canvas_item_request_redraw_svp'; +procedure gnome_canvas_update_bbox(item:PGnomeCanvasItem; x1:longint; y1:longint; x2:longint; y2:longint);cdecl;external libgnomeuidll name 'gnome_canvas_update_bbox'; +procedure gnome_canvas_buf_ensure_buf(buf:PGnomeCanvasBuf);cdecl;external libgnomeuidll name 'gnome_canvas_buf_ensure_buf'; +function gnome_canvas_join_gdk_to_art(gdk_join:TGdkJoinStyle):TArtPathStrokeJoinType;cdecl;external libgnomeuidll name 'gnome_canvas_join_gdk_to_art'; +function gnome_canvas_cap_gdk_to_art(gdk_cap:TGdkCapStyle):TArtPathStrokeCapType;cdecl;external libgnomeuidll name 'gnome_canvas_cap_gdk_to_art'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecanvaswidget.inc b/packages/gnome1/src/libgnomeui/gnomecanvaswidget.inc new file mode 100644 index 0000000000..a0561fdd9c --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecanvaswidget.inc @@ -0,0 +1,83 @@ +{$IfDef read_interface} + +type + PGnomeCanvasWidget = ^TGnomeCanvasWidget; + TGnomeCanvasWidget = record + item : TGnomeCanvasItem; + widget : PGtkWidget; + x : double; + y : double; + width : double; + height : double; + anchor : TGtkAnchorType; + cx : longint; + cy : longint; + cwidth : longint; + cheight : longint; + destroy_id : guint; + flag0 : word; + end; + GNOME_CANVAS_WIDGET = PGnomeCanvasWidget; + +const + bm__GnomeCanvasWidget_size_pixels = $1; + bp__GnomeCanvasWidget_size_pixels = 0; + bm__GnomeCanvasWidget_in_destroy = $2; + bp__GnomeCanvasWidget_in_destroy = 1; +function size_pixels(var a : TGnomeCanvasWidget) : guint; +procedure set_size_pixels(var a : TGnomeCanvasWidget; __size_pixels : guint); +function in_destroy(var a : TGnomeCanvasWidget) : guint; +procedure set_in_destroy(var a : TGnomeCanvasWidget; __in_destroy : guint); +type + PGnomeCanvasWidgetClass = ^TGnomeCanvasWidgetClass; + TGnomeCanvasWidgetClass = record + parent_class : TGnomeCanvasItemClass; + end; + GNOME_CANVAS_WIDGET_CLASS = PGnomeCanvasWidgetClass; + +function GNOME_TYPE_CANVAS_WIDGET : TGTKType; +function GNOME_IS_CANVAS_WIDGET(obj : Pointer) : Boolean; +function GNOME_IS_CANVAS_WIDGET_CLASS(klass : Pointer) : Boolean; + +function gnome_canvas_widget_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_canvas_widget_get_type'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_CANVAS_WIDGET : TGTKType; +begin + GNOME_TYPE_CANVAS_WIDGET:=gnome_canvas_widget_get_type; +end; + +function GNOME_IS_CANVAS_WIDGET(obj : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_WIDGET:=(obj<>nil) and GNOME_IS_CANVAS_WIDGET_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CANVAS_WIDGET_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CANVAS_WIDGET_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CANVAS_WIDGET); +end; + +function size_pixels(var a : TGnomeCanvasWidget) : guint; +begin + size_pixels:=(a.flag0 and bm__GnomeCanvasWidget_size_pixels) shr bp__GnomeCanvasWidget_size_pixels; +end; + +procedure set_size_pixels(var a : TGnomeCanvasWidget; __size_pixels : guint); +begin + a.flag0:=a.flag0 or ((__size_pixels shl bp__GnomeCanvasWidget_size_pixels) and bm__GnomeCanvasWidget_size_pixels); +end; + +function in_destroy(var a : TGnomeCanvasWidget) : guint; +begin + in_destroy:=(a.flag0 and bm__GnomeCanvasWidget_in_destroy) shr bp__GnomeCanvasWidget_in_destroy; +end; + +procedure set_in_destroy(var a : TGnomeCanvasWidget; __in_destroy : guint); +begin + a.flag0:=a.flag0 or ((__in_destroy shl bp__GnomeCanvasWidget_in_destroy) and bm__GnomeCanvasWidget_in_destroy); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeclient.inc b/packages/gnome1/src/libgnomeui/gnomeclient.inc new file mode 100644 index 0000000000..200d215ece --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeclient.inc @@ -0,0 +1,143 @@ +{$IfDef read_interface} + +type + TGnomeInteractStyle = (GNOME_INTERACT_NONE,GNOME_INTERACT_ERRORS, + GNOME_INTERACT_ANY); + + TGnomeDialogType = (GNOME_DIALOG_ERROR,GNOME_DIALOG_NORMAL + ); + + TGnomeSaveStyle = (GNOME_SAVE_GLOBAL,GNOME_SAVE_LOCAL,GNOME_SAVE_BOTH + ); + + TGnomeRestartStyle = (GNOME_RESTART_IF_RUNNING,GNOME_RESTART_ANYWAY, + GNOME_RESTART_IMMEDIATELY,GNOME_RESTART_NEVER + ); + + TGnomeClientState = (GNOME_CLIENT_IDLE,GNOME_CLIENT_SAVING_PHASE_1, + GNOME_CLIENT_WAITING_FOR_PHASE_2,GNOME_CLIENT_SAVING_PHASE_2, + GNOME_CLIENT_FROZEN,GNOME_CLIENT_DISCONNECTED, + GNOME_CLIENT_REGISTERING); + + TGnomeClientFlags = (GNOME_CLIENT_IS_CONNECTED := 1 shl 0,GNOME_CLIENT_RESTARTED := 1 shl 1, + GNOME_CLIENT_RESTORED := 1 shl 2); + + PGnomeClient = ^TGnomeClient; + TGnomeClient = record + theobject : TGtkObject; + smc_conn : gpointer; + input_id : gint; + client_id : Pgchar; + previous_id : Pgchar; + config_prefix : Pgchar; + global_config_prefix : Pgchar; + static_args : PGList; + clone_command : PPgchar; + current_directory : Pgchar; + discard_command : PPgchar; + environment : PGHashTable; + process_id : pid_t; + theprogram : Pgchar; + resign_command : PPgchar; + restart_command : PPgchar; + restart_style : TGnomeRestartStyle; + shutdown_command : PPgchar; + user_id : Pgchar; + save_style : TGnomeSaveStyle; + interact_style : TGnomeInteractStyle; + shutdown : gboolean; + fast : gboolean; + state : TGnomeClientState; + save_phase_2_requested : gboolean; + save_successfull : gboolean; + save_yourself_emitted : gboolean; + interaction_keys : PGSList; + end; + GNOME_CLIENT = PGnomeClient; + + TGnomeInteractFunction = procedure (client:PGnomeClient; key:gint; dialog_type:TGnomeDialogType; data:gpointer);cdecl; + + function GNOME_CLIENT_CONNECTED(obj : pointer) : gboolean; + +Type + PGnomeClientClass = ^TGnomeClientClass; + TGnomeClientClass = record + parent_class : TGtkObjectClass; + save_yourself : function (client:PGnomeClient; phase:gint; save_style:TGnomeSaveStyle; shutdown:gint; interact_style:TGnomeInteractStyle; + fast:gint):gboolean; cdecl; + die : procedure (client:PGnomeClient); cdecl; + save_complete : procedure (client:PGnomeClient); cdecl; + shutdown_cancelled : procedure (client:PGnomeClient); cdecl; + connect : procedure (client:PGnomeClient; restarted:gint); cdecl; + disconnect : procedure (client:PGnomeClient);cdecl; + end; + GNOME_CLIENT_CLASS = PGnomeClientClass; + +function GNOME_TYPE_CLIENT : TGTKType; +function GNOME_IS_CLIENT(obj : Pointer) : Boolean; +function GNOME_IS_CLIENT_CLASS(klass : Pointer) : Boolean; + +function gnome_client_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_client_get_type'; +procedure gnome_client_init;cdecl;external libgnomeuidll name 'gnome_client_init'; +function gnome_master_client:PGnomeClient;cdecl;external libgnomeuidll name 'gnome_master_client'; +function gnome_client_get_config_prefix(client:PGnomeClient):Pgchar;cdecl;external libgnomeuidll name 'gnome_client_get_config_prefix'; +function gnome_client_get_global_config_prefix(client:PGnomeClient):Pgchar;cdecl;external libgnomeuidll name 'gnome_client_get_global_config_prefix'; +procedure gnome_client_set_global_config_prefix(client:PGnomeClient; prefix:Pgchar);cdecl;external libgnomeuidll name 'gnome_client_set_global_config_prefix'; +function gnome_client_get_flags(client:PGnomeClient):TGnomeClientFlags;cdecl;external libgnomeuidll name 'gnome_client_get_flags'; +procedure gnome_client_set_restart_style(client:PGnomeClient; style:TGnomeRestartStyle);cdecl;external libgnomeuidll name 'gnome_client_set_restart_style'; +procedure gnome_client_set_priority(client:PGnomeClient; priority:guint);cdecl;external libgnomeuidll name 'gnome_client_set_priority'; +procedure gnome_client_set_restart_command(client:PGnomeClient; argc:gint; argv:PPgchar);cdecl;external libgnomeuidll name 'gnome_client_set_restart_command'; +procedure gnome_client_add_static_arg(client:PGnomeClient; args:array of const);cdecl;external libgnomeuidll name 'gnome_client_add_static_arg'; +procedure gnome_client_set_discard_command(client:PGnomeClient; argc:gint; argv:PPgchar);cdecl;external libgnomeuidll name 'gnome_client_set_discard_command'; +procedure gnome_client_set_resign_command(client:PGnomeClient; argc:gint; argv:PPgchar);cdecl;external libgnomeuidll name 'gnome_client_set_resign_command'; +procedure gnome_client_set_shutdown_command(client:PGnomeClient; argc:gint; argv:PPgchar);cdecl;external libgnomeuidll name 'gnome_client_set_shutdown_command'; +procedure gnome_client_set_current_directory(client:PGnomeClient; dir:Pgchar);cdecl;external libgnomeuidll name 'gnome_client_set_current_directory'; +procedure gnome_client_set_environment(client:PGnomeClient; name:Pgchar; value:Pgchar);cdecl;external libgnomeuidll name 'gnome_client_set_environment'; +procedure gnome_client_set_clone_command(client:PGnomeClient; argc:gint; argv:PPgchar);cdecl;external libgnomeuidll name 'gnome_client_set_clone_command'; +procedure gnome_client_set_process_id(client:PGnomeClient; pid:pid_t);cdecl;external libgnomeuidll name 'gnome_client_set_process_id'; +procedure gnome_client_set_program(client:PGnomeClient; theprogram:Pgchar);cdecl;external libgnomeuidll name 'gnome_client_set_program'; +procedure gnome_client_set_user_id(client:PGnomeClient; user_id:Pgchar);cdecl;external libgnomeuidll name 'gnome_client_set_user_id'; +procedure gnome_client_save_any_dialog(client:PGnomeClient; dialog:PGnomeDialog);cdecl;external libgnomeuidll name 'gnome_client_save_any_dialog'; +procedure gnome_client_save_error_dialog(client:PGnomeClient; dialog:PGnomeDialog);cdecl;external libgnomeuidll name 'gnome_client_save_error_dialog'; +procedure gnome_client_request_phase_2(client:PGnomeClient);cdecl;external libgnomeuidll name 'gnome_client_request_phase_2'; +procedure gnome_client_request_save(client:PGnomeClient; save_style:TGnomeSaveStyle; shutdown:gboolean; interact_style:TGnomeInteractStyle; fast:gboolean; + global:gboolean);cdecl;external libgnomeuidll name 'gnome_client_request_save'; +procedure gnome_client_flush(client:PGnomeClient);cdecl;external libgnomeuidll name 'gnome_client_flush'; +procedure gnome_client_disable_master_connection;cdecl;external libgnomeuidll name 'gnome_client_disable_master_connection'; +function gnome_client_new:PGnomeClient;cdecl;external libgnomeuidll name 'gnome_client_new'; +function gnome_client_new_without_connection:PGnomeClient;cdecl;external libgnomeuidll name 'gnome_client_new_without_connection'; +procedure gnome_client_connect(client:PGnomeClient);cdecl;external libgnomeuidll name 'gnome_client_connect'; +procedure gnome_client_disconnect(client:PGnomeClient);cdecl;external libgnomeuidll name 'gnome_client_disconnect'; +procedure gnome_client_set_id(client:PGnomeClient; client_id:Pgchar);cdecl;external libgnomeuidll name 'gnome_client_set_id'; +function gnome_client_get_id(client:PGnomeClient):Pgchar;cdecl;external libgnomeuidll name 'gnome_client_get_id'; +function gnome_client_get_previous_id(client:PGnomeClient):Pgchar;cdecl;external libgnomeuidll name 'gnome_client_get_previous_id'; +function gnome_cloned_client:PGnomeClient;cdecl;external libgnomeuidll name 'gnome_cloned_client'; +procedure gnome_client_request_interaction(client:PGnomeClient; dialog:TGnomeDialogType; func:TGnomeInteractFunction; client_data:gpointer);cdecl;external libgnomeuidll name 'gnome_client_request_interaction'; +procedure gnome_client_request_interaction_interp(client:PGnomeClient; dialog:TGnomeDialogType; func:TGtkCallbackMarshal; data:gpointer; destroy:TGtkDestroyNotify);cdecl;external libgnomeuidll name 'gnome_client_request_interaction_interp'; +procedure gnome_interaction_key_return(key:gint; cancel_shutdown:gboolean);cdecl;external libgnomeuidll name 'gnome_interaction_key_return'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_CLIENT : TGTKType; +begin + GNOME_TYPE_CLIENT:=gnome_client_get_type; +end; + +function GNOME_IS_CLIENT(obj : Pointer) : Boolean; +begin + GNOME_IS_CLIENT:=(obj<>nil) and GNOME_IS_CLIENT_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_CLIENT_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_CLIENT_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_CLIENT); +end; + +function GNOME_CLIENT_CONNECTED(obj : pointer) : gboolean; +begin + GNOME_CLIENT_CONNECTED:=(obj <> nil) and ((GNOME_CLIENT(obj))^.smc_conn <> nil); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomecolorpicker.inc b/packages/gnome1/src/libgnomeui/gnomecolorpicker.inc new file mode 100644 index 0000000000..ff0dcb36b2 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomecolorpicker.inc @@ -0,0 +1,94 @@ +{$IfDef read_interface} +type + PGnomeColorPicker = ^TGnomeColorPicker; + TGnomeColorPicker = record + button : TGtkButton; + r : gdouble; + g : gdouble; + b : gdouble; + a : gdouble; + image : PGdkImlibImage; + pixmap : PGdkPixmap; + gc : PGdkGC; + da : PGtkWidget; + cs_dialog : PGtkWidget; + title : Pgchar; + flag0 : word; + end; + GNOME_COLOR_PICKER = PGnomeColorPicker; + +const + bm__GnomeColorPicker_dither = $1; + bp__GnomeColorPicker_dither = 0; + bm__GnomeColorPicker_use_alpha = $2; + bp__GnomeColorPicker_use_alpha = 1; +function dither(var a :TGnomeColorPicker) : guint; +procedure set_dither(var a :TGnomeColorPicker; __dither : guint); +function use_alpha(var a :TGnomeColorPicker) : guint; +procedure set_use_alpha(var a :TGnomeColorPicker; __use_alpha : guint); + +type + PGnomeColorPickerClass = ^TGnomeColorPickerClass; + TGnomeColorPickerClass = record + parent_class : TGtkButtonClass; + color_set : procedure (cp:PGnomeColorPicker; r:guint; g:guint; b:guint; a:guint);cdecl; + end; + GNOME_COLOR_PICKER_CLASS = PGnomeColorPickerClass; + + +function GNOME_TYPE_COLOR_PICKER : TGTKType; +function GNOME_IS_COLOR_PICKER(obj : Pointer) : Boolean; +function GNOME_IS_COLOR_PICKER_CLASS(klass : Pointer) : Boolean; + +function gnome_color_picker_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_color_picker_get_type'; +function gnome_color_picker_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_color_picker_new'; +procedure gnome_color_picker_set_d(cp:PGnomeColorPicker; r:gdouble; g:gdouble; b:gdouble; a:gdouble);cdecl;external libgnomeuidll name 'gnome_color_picker_set_d'; +procedure gnome_color_picker_get_d(cp:PGnomeColorPicker; r:Pgdouble; g:Pgdouble; b:Pgdouble; a:Pgdouble);cdecl;external libgnomeuidll name 'gnome_color_picker_get_d'; +procedure gnome_color_picker_set_i8(cp:PGnomeColorPicker; r:guint8; g:guint8; b:guint8; a:guint8);cdecl;external libgnomeuidll name 'gnome_color_picker_set_i8'; +procedure gnome_color_picker_get_i8(cp:PGnomeColorPicker; r:Pguint8; g:Pguint8; b:Pguint8; a:Pguint8);cdecl;external libgnomeuidll name 'gnome_color_picker_get_i8'; +procedure gnome_color_picker_set_i16(cp:PGnomeColorPicker; r:gushort; g:gushort; b:gushort; a:gushort);cdecl;external libgnomeuidll name 'gnome_color_picker_set_i16'; +procedure gnome_color_picker_get_i16(cp:PGnomeColorPicker; r:Pgushort; g:Pgushort; b:Pgushort; a:Pgushort);cdecl;external libgnomeuidll name 'gnome_color_picker_get_i16'; +procedure gnome_color_picker_set_dither(cp:PGnomeColorPicker; dither:gboolean);cdecl;external libgnomeuidll name 'gnome_color_picker_set_dither'; +procedure gnome_color_picker_set_use_alpha(cp:PGnomeColorPicker; use_alpha:gboolean);cdecl;external libgnomeuidll name 'gnome_color_picker_set_use_alpha'; +procedure gnome_color_picker_set_title(cp:PGnomeColorPicker; title:Pgchar);cdecl;external libgnomeuidll name 'gnome_color_picker_set_title'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_COLOR_PICKER : TGTKType; +begin + GNOME_TYPE_COLOR_PICKER:=gnome_color_picker_get_type; +end; + +function GNOME_IS_COLOR_PICKER(obj : Pointer) : Boolean; +begin + GNOME_IS_COLOR_PICKER:=(obj<>nil) and GNOME_IS_COLOR_PICKER_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_COLOR_PICKER_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_COLOR_PICKER_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_COLOR_PICKER); +end; + +function dither(var a :TGnomeColorPicker) : guint; +begin + dither:=(a.flag0 and bm__GnomeColorPicker_dither) shr bp__GnomeColorPicker_dither; +end; + +procedure set_dither(var a :TGnomeColorPicker; __dither : guint); +begin + a.flag0:=a.flag0 or ((__dither shl bp__GnomeColorPicker_dither) and bm__GnomeColorPicker_dither); +end; + +function use_alpha(var a :TGnomeColorPicker) : guint; +begin + use_alpha:=(a.flag0 and bm__GnomeColorPicker_use_alpha) shr bp__GnomeColorPicker_use_alpha; +end; + +procedure set_use_alpha(var a :TGnomeColorPicker; __use_alpha : guint); +begin + a.flag0:=a.flag0 or ((__use_alpha shl bp__GnomeColorPicker_use_alpha) and bm__GnomeColorPicker_use_alpha); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedateedit.inc b/packages/gnome1/src/libgnomeui/gnomedateedit.inc new file mode 100644 index 0000000000..8282606ae6 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedateedit.inc @@ -0,0 +1,65 @@ +{$IfDef read_interface} +type + TGnomeDateEditFlags = (GNOME_DATE_EDIT_SHOW_TIME := 1 shl 0,GNOME_DATE_EDIT_24_HR := 1 shl 1, + GNOME_DATE_EDIT_WEEK_STARTS_ON_MONDAY := 1 shl 2 + ); + +type + PGnomeDateEdit = ^TGnomeDateEdit; + TGnomeDateEdit = record + hbox : TGtkHBox; + date_entry : PGtkWidget; + date_button : PGtkWidget; + time_entry : PGtkWidget; + time_popup : PGtkWidget; + cal_label : PGtkWidget; + cal_popup : PGtkWidget; + calendar : PGtkWidget; + lower_hour : longint; + upper_hour : longint; + initial_time : time_t; + flags : longint; + end; + GNOME_DATE_EDIT = PGnomeDateEdit; + + PGnomeDateEditClass = ^TGnomeDateEditClass; + TGnomeDateEditClass = record + parent_class : TGtkHBoxClass; + date_changed : procedure (gde:PGnomeDateEdit);cdecl; + time_changed : procedure (gde:PGnomeDateEdit);cdecl; + end; + GNOME_DATE_EDIT_CLASS = PGnomeDateEditClass; + +function GNOME_TYPE_DATE_EDIT : TGTKType; +function GNOME_IS_DATE_EDIT(obj : Pointer) : Boolean; +function GNOME_IS_DATE_EDIT_CLASS(klass : Pointer) : Boolean; + +function gnome_date_edit_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_date_edit_get_type'; +function gnome_date_edit_new(the_time:time_t; show_time:longint; use_24_format:longint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_date_edit_new'; +function gnome_date_edit_new_flags(the_time:time_t; flags:TGnomeDateEditFlags):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_date_edit_new_flags'; +procedure gnome_date_edit_set_time(gde:PGnomeDateEdit; the_time:time_t);cdecl;external libgnomeuidll name 'gnome_date_edit_set_time'; +procedure gnome_date_edit_set_popup_range(gde:PGnomeDateEdit; low_hour:longint; up_hour:longint);cdecl;external libgnomeuidll name 'gnome_date_edit_set_popup_range'; +function gnome_date_edit_get_date(gde:PGnomeDateEdit):time_t;cdecl;external libgnomeuidll name 'gnome_date_edit_get_date'; +procedure gnome_date_edit_set_flags(gde:PGnomeDateEdit; flags:TGnomeDateEditFlags);cdecl;external libgnomeuidll name 'gnome_date_edit_set_flags'; +function gnome_date_edit_get_flags(gde:PGnomeDateEdit):longint;cdecl;external libgnomeuidll name 'gnome_date_edit_get_flags'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_DATE_EDIT : TGTKType; +begin + GNOME_TYPE_DATE_EDIT:=gnome_date_edit_get_type; +end; + +function GNOME_IS_DATE_EDIT(obj : Pointer) : Boolean; +begin + GNOME_IS_DATE_EDIT:=(obj<>nil) and GNOME_IS_DATE_EDIT_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DATE_EDIT_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_DATE_EDIT_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DATE_EDIT); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedentryedit.inc b/packages/gnome1/src/libgnomeui/gnomedentryedit.inc new file mode 100644 index 0000000000..b52a9e1f28 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedentryedit.inc @@ -0,0 +1,87 @@ +{$IfDef read_interface} + +type + PGnomeDEntryEdit = ^TGnomeDEntryEdit; + TGnomeDEntryEdit = record + theobject : TGtkObject; + child1 : PGtkWidget; + child2 : PGtkWidget; + name_entry : PGtkWidget; + comment_entry : PGtkWidget; + exec_entry : PGtkWidget; + tryexec_entry : PGtkWidget; + doc_entry : PGtkWidget; + type_combo : PGtkWidget; + terminal_button : PGtkWidget; + icon_entry : PGtkWidget; + translations : PGtkWidget; + transl_lang_entry : PGtkWidget; + transl_name_entry : PGtkWidget; + transl_comment_entry : PGtkWidget; + end; + GNOME_DENTRY_EDIT = PGnomeDEntryEdit; + + PGnomeDEntryEditClass = ^TGnomeDEntryEditClass; + TGnomeDEntryEditClass = record + parent_class : TGtkObjectClass; + changed : procedure (gee:PGnomeDEntryEdit);cdecl; + icon_changed : procedure (gee:PGnomeDEntryEdit);cdecl; + name_changed : procedure (gee:PGnomeDEntryEdit);cdecl; + end; + GNOME_DENTRY_EDIT_CLASS = PGnomeDEntryEditClass; + +function GNOME_TYPE_DENTRY_EDIT : TGTKType; +function GNOME_IS_DENTRY_EDIT(obj : Pointer) : Boolean; +function GNOME_IS_DENTRY_EDIT_CLASS(klass : Pointer) : Boolean; + +function gnome_dentry_edit_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_dentry_edit_get_type'; +function gnome_dentry_edit_new:PGtkObject;cdecl;external libgnomeuidll name 'gnome_dentry_edit_new'; + +function gnome_dentry_edit_child1(d : PGnomeDEntryEdit) : PGTKWidget; +function gnome_dentry_edit_child2(d : PGnomeDEntryEdit) : PGTKWidget; + +function gnome_dentry_edit_new_notebook(notebook:PGtkNotebook):PGtkObject;cdecl;external libgnomeuidll name 'gnome_dentry_edit_new_notebook'; +procedure gnome_dentry_edit_clear(dee:PGnomeDEntryEdit);cdecl;external libgnomeuidll name 'gnome_dentry_edit_clear'; +procedure gnome_dentry_edit_load_file(dee:PGnomeDEntryEdit; path:Pgchar);cdecl;external libgnomeuidll name 'gnome_dentry_edit_load_file'; +procedure gnome_dentry_edit_set_dentry(dee:PGnomeDEntryEdit; dentry:PGnomeDesktopEntry);cdecl;external libgnomeuidll name 'gnome_dentry_edit_set_dentry'; +function gnome_dentry_edit_get_dentry(dee:PGnomeDEntryEdit):PGnomeDesktopEntry;cdecl;external libgnomeuidll name 'gnome_dentry_edit_get_dentry'; +function gnome_dentry_get_dentry(dee:PGnomeDEntryEdit):PGnomeDesktopEntry;cdecl;external libgnomeuidll name 'gnome_dentry_get_dentry'; +function gnome_dentry_edit_get_icon(dee:PGnomeDEntryEdit):Pgchar;cdecl;external libgnomeuidll name 'gnome_dentry_edit_get_icon'; +function gnome_dentry_edit_get_name(dee:PGnomeDEntryEdit):Pgchar;cdecl;external libgnomeuidll name 'gnome_dentry_edit_get_name'; +function gnome_dentry_get_name_entry(dee:PGnomeDEntryEdit):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dentry_get_name_entry'; +function gnome_dentry_get_comment_entry(dee:PGnomeDEntryEdit):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dentry_get_comment_entry'; +function gnome_dentry_get_exec_entry(dee:PGnomeDEntryEdit):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dentry_get_exec_entry'; +function gnome_dentry_get_tryexec_entry(dee:PGnomeDEntryEdit):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dentry_get_tryexec_entry'; +function gnome_dentry_get_doc_entry(dee:PGnomeDEntryEdit):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dentry_get_doc_entry'; +function gnome_dentry_get_icon_entry(dee:PGnomeDEntryEdit):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dentry_get_icon_entry'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_DENTRY_EDIT : TGTKType; +begin + GNOME_TYPE_DENTRY_EDIT:=gnome_dentry_edit_get_type; +end; + +function GNOME_IS_DENTRY_EDIT(obj : Pointer) : Boolean; +begin + GNOME_IS_DENTRY_EDIT:=(obj<>nil) and GNOME_IS_DENTRY_EDIT_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DENTRY_EDIT_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_DENTRY_EDIT_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DENTRY_EDIT); +end; + +function gnome_dentry_edit_child1(d : PGnomeDEntryEdit) : PGTKWidget; +begin + gnome_dentry_edit_child1:=d^.child1; +end; + +function gnome_dentry_edit_child2(d : PGnomeDEntryEdit) : PGTKWidget; +begin + gnome_dentry_edit_child2:=d^.child2; +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedialog.inc b/packages/gnome1/src/libgnomeui/gnomedialog.inc new file mode 100644 index 0000000000..fd9886f8c6 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedialog.inc @@ -0,0 +1,105 @@ +{$IfDef read_interface} +type + PGnomeDialog = ^TGnomeDialog; + + TGnomeDialog = record + window : TGtkWindow; + vbox : PGtkWidget; + action_area : PGtkWidget; + buttons : PGList; + accelerators : PGtkAccelGroup; + flag0 : word; + padding : gpointer; + end; + GNOME_DIALOG = PGnomeDialog; + +const + bm_TGnomeDialog_click_closes = $1; + bp_TGnomeDialog_click_closes = 0; + bm_TGnomeDialog_just_hide = $2; + bp_TGnomeDialog_just_hide = 1; + +function click_closes(var a : TGnomeDialog) : Boolean; +procedure set_click_closes(var a : TGnomeDialog; __click_closes : Boolean); +function just_hide(var a : TGnomeDialog) : Boolean; +procedure set_just_hide(var a : TGnomeDialog; __just_hide : Boolean); + +type + PGnomeDialogClass = ^TGnomeDialogClass; + TGnomeDialogClass = record + parent_class : TGtkWindowClass; + clicked : procedure (dialog:PGnomeDialog; button_number:gint);cdecl; + close : function (dialog:PGnomeDialog):gboolean; cdecl; + end; + GNOME_DIALOG_CLASS = PGnomeDialogClass; + +function GNOME_TYPE_DIALOG : TGTKType; +function GNOME_IS_DIALOG(obj : Pointer) : Boolean; +function GNOME_IS_DIALOG_CLASS(klass : Pointer) : Boolean; + +function gnome_dialog_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_dialog_get_type'; +function gnome_dialog_new(title:Pgchar; args:array of const):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dialog_new'; +function gnome_dialog_new(title:Pgchar):PGtkWidget;cdecl; varargs; external libgnomeuidll name 'gnome_dialog_new'; +function gnome_dialog_newv(title:Pgchar; buttons:PPgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dialog_newv'; +procedure gnome_dialog_set_parent(dialog:PGnomeDialog; parent:PGtkWindow);cdecl;external libgnomeuidll name 'gnome_dialog_set_parent'; +procedure gnome_dialog_button_connect(dialog:PGnomeDialog; button:gint; callback:TGtkSignalFunc; data:gpointer);cdecl;external libgnomeuidll name 'gnome_dialog_button_connect'; +procedure gnome_dialog_button_connect_object(dialog:PGnomeDialog; button:gint; callback:TGtkSignalFunc; obj:PGtkObject);cdecl;external libgnomeuidll name 'gnome_dialog_button_connect_object'; +function gnome_dialog_run(dialog:PGnomeDialog):gint;cdecl;external libgnomeuidll name 'gnome_dialog_run'; +function gnome_dialog_run_and_close(dialog:PGnomeDialog):gint;cdecl;external libgnomeuidll name 'gnome_dialog_run_and_close'; +procedure gnome_dialog_set_default(dialog:PGnomeDialog; button:gint);cdecl;external libgnomeuidll name 'gnome_dialog_set_default'; +procedure gnome_dialog_grab_focus(dialog:PGnomeDialog; button:gint);cdecl;external libgnomeuidll name 'gnome_dialog_grab_focus'; +procedure gnome_dialog_set_sensitive(dialog:PGnomeDialog; button:gint; setting:gboolean);cdecl;external libgnomeuidll name 'gnome_dialog_set_sensitive'; +procedure gnome_dialog_set_accelerator(dialog:PGnomeDialog; button:gint; accelerator_key:guchar; accelerator_mods:guint8);cdecl;external libgnomeuidll name 'gnome_dialog_set_accelerator'; +procedure gnome_dialog_close(dialog:PGnomeDialog);cdecl;external libgnomeuidll name 'gnome_dialog_close'; +procedure gnome_dialog_close_hides(dialog:PGnomeDialog; just_hide:gboolean);cdecl;external libgnomeuidll name 'gnome_dialog_close_hides'; +procedure gnome_dialog_set_close(dialog:PGnomeDialog; click_closes:gboolean);cdecl;external libgnomeuidll name 'gnome_dialog_set_close'; +procedure gnome_dialog_editable_enters(dialog:PGnomeDialog; editable:PGtkEditable);cdecl;external libgnomeuidll name 'gnome_dialog_editable_enters'; +procedure gnome_dialog_append_buttons(dialog:PGnomeDialog; first:Pgchar; args:array of const);cdecl;external libgnomeuidll name 'gnome_dialog_append_buttons'; +procedure gnome_dialog_append_buttons(dialog:PGnomeDialog; first:Pgchar);cdecl; varargs; external libgnomeuidll name 'gnome_dialog_append_buttons'; +procedure gnome_dialog_append_button(dialog:PGnomeDialog; name:Pgchar);cdecl;external libgnomeuidll name 'gnome_dialog_append_button'; +procedure gnome_dialog_append_buttonsv(dialog:PGnomeDialog; buttons:PPgchar);cdecl;external libgnomeuidll name 'gnome_dialog_append_buttonsv'; +procedure gnome_dialog_append_button_with_pixmap(dialog:PGnomeDialog; name:Pgchar; pixmap:Pgchar);cdecl;external libgnomeuidll name 'gnome_dialog_append_button_with_pixmap'; +procedure gnome_dialog_append_buttons_with_pixmaps(dialog:PGnomeDialog; names:PPgchar; pixmaps:PPgchar);cdecl;external libgnomeuidll name 'gnome_dialog_append_buttons_with_pixmaps'; +procedure gnome_dialog_construct(dialog:PGnomeDialog; title:Pgchar; ap:va_list);cdecl;external libgnomeuidll name 'gnome_dialog_construct'; +procedure gnome_dialog_constructv(dialog:PGnomeDialog; title:Pgchar; buttons:PPgchar);cdecl;external libgnomeuidll name 'gnome_dialog_constructv'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_DIALOG : TGTKType; +begin + GNOME_TYPE_DIALOG:=gnome_dialog_get_type; +end; + +function GNOME_IS_DIALOG(obj : Pointer) : Boolean; +begin + GNOME_IS_DIALOG:=(obj<>nil) and GNOME_IS_DIALOG_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DIALOG_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_DIALOG_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DIALOG); +end; + +function click_closes(var a : TGnomeDialog) : Boolean; +begin + click_closes:=Boolean((a.flag0 and bm_TGnomeDialog_click_closes) shr bp_TGnomeDialog_click_closes); +end; + +procedure set_click_closes(var a : TGnomeDialog; __click_closes : Boolean); +begin + a.flag0:=a.flag0 or ((Longint(__click_closes) shl bp_TGnomeDialog_click_closes) and bm_TGnomeDialog_click_closes); +end; + +function just_hide(var a : TGnomeDialog) : Boolean; +begin + just_hide:=Boolean((a.flag0 and bm_TGnomeDialog_just_hide) shr bp_TGnomeDialog_just_hide); +end; + +procedure set_just_hide(var a : TGnomeDialog; __just_hide : Boolean); +begin + a.flag0:=a.flag0 or ((Longint(__just_hide) shl bp_TGnomeDialog_just_hide) and bm_TGnomeDialog_just_hide); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedialogutil.inc b/packages/gnome1/src/libgnomeui/gnomedialogutil.inc new file mode 100644 index 0000000000..c77729208d --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedialogutil.inc @@ -0,0 +1,24 @@ +{$IfDef read_interface} + +function gnome_ok_dialog(message:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_ok_dialog'; +function gnome_ok_dialog_parented(message:Pgchar; parent:PGtkWindow):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_ok_dialog_parented'; +function gnome_error_dialog(error:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_error_dialog'; +function gnome_error_dialog_parented(error:Pgchar; parent:PGtkWindow):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_error_dialog_parented'; +function gnome_warning_dialog(warning:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_warning_dialog'; +function gnome_warning_dialog_parented(warning:Pgchar; parent:PGtkWindow):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_warning_dialog_parented'; +function gnome_question_dialog(question:Pgchar; callback:TGnomeReplyCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_question_dialog'; +function gnome_question_dialog_parented(question:Pgchar; callback:TGnomeReplyCallback; data:gpointer; parent:PGtkWindow):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_question_dialog_parented'; +function gnome_question_dialog_modal(question:Pgchar; callback:TGnomeReplyCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_question_dialog_modal'; +function gnome_question_dialog_modal_parented(question:Pgchar; callback:TGnomeReplyCallback; data:gpointer; parent:PGtkWindow):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_question_dialog_modal_parented'; +function gnome_ok_cancel_dialog(message:Pgchar; callback:TGnomeReplyCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_ok_cancel_dialog'; +function gnome_ok_cancel_dialog_parented(message:Pgchar; callback:TGnomeReplyCallback; data:gpointer; parent:PGtkWindow):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_ok_cancel_dialog_parented'; +function gnome_ok_cancel_dialog_modal(message:Pgchar; callback:TGnomeReplyCallback; data:gpointer):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_ok_cancel_dialog_modal'; +function gnome_ok_cancel_dialog_modal_parented(message:Pgchar; callback:TGnomeReplyCallback; data:gpointer; parent:PGtkWindow):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_ok_cancel_dialog_modal_parented'; +function gnome_request_dialog(password:gboolean; prompt:Pgchar; default_text:Pgchar; max_length:guint16; callback:TGnomeStringCallback; + data:gpointer; parent:PGtkWindow):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_request_dialog'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedock.inc b/packages/gnome1/src/libgnomeui/gnomedock.inc new file mode 100644 index 0000000000..978bc91f0e --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedock.inc @@ -0,0 +1,368 @@ +{$IfDef read_interface} +type + PGnomeDockPlacement = ^TGnomeDockPlacement; + TGnomeDockPlacement = (GNOME_DOCK_TOP,GNOME_DOCK_RIGHT,GNOME_DOCK_BOTTOM, + GNOME_DOCK_LEFT,GNOME_DOCK_FLOATING); + +type + TGnomeDockItemBehavior = (GNOME_DOCK_ITEM_BEH_NORMAL := 0,GNOME_DOCK_ITEM_BEH_EXCLUSIVE := 1 shl 0, + GNOME_DOCK_ITEM_BEH_NEVER_FLOATING := 1 shl 1, + GNOME_DOCK_ITEM_BEH_NEVER_VERTICAL := 1 shl 2, + GNOME_DOCK_ITEM_BEH_NEVER_HORIZONTAL := 1 shl 3, + GNOME_DOCK_ITEM_BEH_LOCKED := 1 shl 4); + +const + GNOME_DOCK_ITEM_BEH_NEVER_DETACH = GNOME_DOCK_ITEM_BEH_NEVER_FLOATING; + +type + PGnomeDockItem = ^TGnomeDockItem; + TGnomeDockItem = record + bin : TGtkBin; + name : Pgchar; + bin_window : PGdkWindow; + float_window : PGdkWindow; + shadow_type : TGtkShadowType; + orientation : TGtkOrientation; + behavior : TGnomeDockItemBehavior; + flag0 : word; + dragoff_x : gint; + dragoff_y : gint; + float_x : gint; + float_y : gint; + grab_on_map_event : guint; + end; + GNOME_DOCK_ITEM = PGnomeDockItem; + +function GNOME_DOCK_ITEM_NOT_LOCKED(x : PGnomeDockItem) : gboolean; + +const + bm__GnomeDockItem_float_window_mapped = $1; + bp__GnomeDockItem_float_window_mapped = 0; + bm__GnomeDockItem_is_floating = $2; + bp__GnomeDockItem_is_floating = 1; + bm__GnomeDockItem_in_drag = $4; + bp__GnomeDockItem_in_drag = 2; + +function float_window_mapped(var a : TGnomeDockItem) : gboolean; +procedure set_float_window_mapped(var a : TGnomeDockItem; __float_window_mapped : gboolean); +function is_floating(var a : TGnomeDockItem) : gboolean; +procedure set_is_floating(var a : TGnomeDockItem; __is_floating : gboolean); +function in_drag(var a : TGnomeDockItem) : gboolean; +procedure set_in_drag(var a : TGnomeDockItem; __in_drag : gboolean); + +type + PGnomeDockItemClass = ^TGnomeDockItemClass; + TGnomeDockItemClass = record + parent_class : TGtkBinClass; + dock_drag_begin : procedure (item:PGnomeDockItem);cdecl; + dock_drag_motion : procedure (item:PGnomeDockItem; x:gint; y:gint);cdecl; + dock_drag_end : procedure (item:PGnomeDockItem);cdecl; + dock_detach : procedure (item:PGnomeDockItem);cdecl; + end; + GNOME_DOCK_ITEM_CLASS = PGnomeDockItemClass; + +type + PGnomeDockLayoutItem = ^TGnomeDockLayoutItem; + TGnomeDockLayoutItem = record + item : PGnomeDockItem; + placement : TGnomeDockPlacement; + position : record + case longint of + 0 : ( floating : record + x : gint; + y : gint; + orientation : TGtkOrientation; + end ); + 1 : ( docked : record + band_num : gint; + band_position : gint; + offset : gint; + end ); + end; + end; + GNOME_DOCK_LAYOUT_ITEM = PGnomeDockLayoutItem; + + PGnomeDockLayout = ^TGnomeDockLayout; + TGnomeDockLayout = record + theobject : TGtkObject; + items : PGList; + end; + GNOME_DOCK_LAYOUT = PGnomeDockLayout; + + PGnomeDockLayoutClass = ^TGnomeDockLayoutClass; + TGnomeDockLayoutClass = record + parent_class : TGtkObjectClass; + end; + GNOME_DOCK_LAYOUT_CLASS = PGnomeDockLayoutClass; + +type + PGnomeDockBand = ^TGnomeDockBand; + TGnomeDockBand = record + container : TGtkContainer; + orientation : TGtkOrientation; + children : PGList; + num_children : guint; + floating_child : PGList; + doing_drag : gboolean; + max_space_requisition : guint; + tot_offsets : guint; + drag_allocation : TGtkAllocation; + flag0 : word; + end; + GNOME_DOCK_BAND = PGnomeDockBand; + +const + bm__GnomeDockBand_new_for_drag = $1; + bp__GnomeDockBand_new_for_drag = 0; + +function new_for_drag(var a : TGnomeDockBand) : Boolean; +procedure set_new_for_drag(var a : TGnomeDockBand; __new_for_drag : Boolean); + +type + PGnomeDockBandClass = ^TGnomeDockBandClass; + TGnomeDockBandClass = record + parent_class : TGtkContainerClass; + end; + GNOME_DOCK_BAND_CLASS = PGnomeDockBandClass; + + PGnomeDockBandChild = ^TGnomeDockBandChild; + TGnomeDockBandChild = record + widget : PGtkWidget; + offset : guint; + real_offset : guint; + drag_offset : guint; + drag_allocation : TGtkAllocation; + prev_space : guint; + foll_space : guint; + drag_prev_space : guint; + drag_foll_space : guint; + max_space_requisition : guint; + end; + GNOME_DOCK_BAND_CHILD = PGnomeDockBandChild; + +type + PGnomeDock = ^TGnomeDock; + TGnomeDock = record + container : TGtkContainer; + client_area : PGtkWidget; + top_bands : PGList; + bottom_bands : PGList; + right_bands : PGList; + left_bands : PGList; + floating_children : PGList; + client_rect : TGtkAllocation; + flag0 : word; + end; + GNOME_DOCK = PGnomeDock; + +const + bm__GnomeDock_floating_items_allowed = $1; + bp__GnomeDock_floating_items_allowed = 0; + +function floating_items_allowed(var a : TGnomeDock) : gboolean; +procedure set_floating_items_allowed(var a : TGnomeDock; __floating_items_allowed : gboolean); + +type + PGnomeDockClass = ^TGnomeDockClass; + TGnomeDockClass = record + parent_class : TGtkContainerClass; + layout_changed : procedure (dock:PGnomeDock);cdecl; + end; + GNOME_DOCK_CLASS = PGnomeDockClass; + +function GNOME_TYPE_DOCK_ITEM : TGTKType; +function GNOME_IS_DOCK_ITEM(obj : Pointer) : Boolean; +function GNOME_IS_DOCK_ITEM_CLASS(klass : Pointer) : Boolean; + +function gnome_dock_item_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_dock_item_get_type'; +function gnome_dock_item_new(name:Pgchar; behavior:TGnomeDockItemBehavior):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dock_item_new'; +procedure gnome_dock_item_construct(new_dock_item:PGnomeDockItem; name:Pgchar; behavior:TGnomeDockItemBehavior);cdecl;external libgnomeuidll name 'gnome_dock_item_construct'; +function gnome_dock_item_get_child(dock_item:PGnomeDockItem):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dock_item_get_child'; +function gnome_dock_item_get_name(dock_item:PGnomeDockItem):Pchar;cdecl;external libgnomeuidll name 'gnome_dock_item_get_name'; +procedure gnome_dock_item_set_shadow_type(dock_item:PGnomeDockItem; thetype:TGtkShadowType);cdecl;external libgnomeuidll name 'gnome_dock_item_set_shadow_type'; +function gnome_dock_item_get_shadow_type(dock_item:PGnomeDockItem):TGtkShadowType;cdecl;external libgnomeuidll name 'gnome_dock_item_get_shadow_type'; +function gnome_dock_item_set_orientation(dock_item:PGnomeDockItem; orientation:TGtkOrientation):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_item_set_orientation'; +function gnome_dock_item_get_orientation(dock_item:PGnomeDockItem):TGtkOrientation;cdecl;external libgnomeuidll name 'gnome_dock_item_get_orientation'; +function gnome_dock_item_get_behavior(dock_item:PGnomeDockItem):TGnomeDockItemBehavior;cdecl;external libgnomeuidll name 'gnome_dock_item_get_behavior'; +function gnome_dock_item_detach(item:PGnomeDockItem; x:gint; y:gint):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_item_detach'; +procedure gnome_dock_item_attach(item:PGnomeDockItem; parent:PGtkWidget; x:gint; y:gint);cdecl;external libgnomeuidll name 'gnome_dock_item_attach'; +procedure gnome_dock_item_grab_pointer(item:PGnomeDockItem);cdecl;external libgnomeuidll name 'gnome_dock_item_grab_pointer'; +procedure gnome_dock_item_drag_floating(item:PGnomeDockItem; x:gint; y:gint);cdecl;external libgnomeuidll name 'gnome_dock_item_drag_floating'; +procedure gnome_dock_item_handle_size_request(item:PGnomeDockItem; requisition:PGtkRequisition);cdecl;external libgnomeuidll name 'gnome_dock_item_handle_size_request'; +procedure gnome_dock_item_get_floating_position(item:PGnomeDockItem; x:Pgint; y:Pgint);cdecl;external libgnomeuidll name 'gnome_dock_item_get_floating_position'; + +function GNOME_TYPE_DOCK_LAYOUT : TGTKType; +function GNOME_IS_DOCK_LAYOUT(obj : pointer) : Boolean; +function GNOME_IS_DOCK_LAYOUT_CLASS(klass : pointer) : boolean; + +function gnome_dock_layout_new:PGnomeDockLayout;cdecl;external libgnomeuidll name 'gnome_dock_layout_new'; +function gnome_dock_layout_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_dock_layout_get_type'; +function gnome_dock_layout_add_item(layout:PGnomeDockLayout; item:PGnomeDockItem; placement:TGnomeDockPlacement; band_num:gint; band_position:gint; + offset:gint):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_layout_add_item'; +function gnome_dock_layout_add_floating_item(layout:PGnomeDockLayout; item:PGnomeDockItem; x:gint; y:gint; orientation:TGtkOrientation):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_layout_add_floating_item'; +function gnome_dock_layout_get_item(layout:PGnomeDockLayout; item:PGnomeDockItem):PGnomeDockLayoutItem;cdecl;external libgnomeuidll name 'gnome_dock_layout_get_item'; +function gnome_dock_layout_get_item_by_name(layout:PGnomeDockLayout; name:Pgchar):PGnomeDockLayoutItem;cdecl;external libgnomeuidll name 'gnome_dock_layout_get_item_by_name'; +function gnome_dock_layout_remove_item(layout:PGnomeDockLayout; item:PGnomeDockItem):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_layout_remove_item'; +function gnome_dock_layout_remove_item_by_name(layout:PGnomeDockLayout; name:Pgchar):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_layout_remove_item_by_name'; +function gnome_dock_layout_create_string(layout:PGnomeDockLayout):Pgchar;cdecl;external libgnomeuidll name 'gnome_dock_layout_create_string'; +function gnome_dock_layout_parse_string(layout:PGnomeDockLayout; _string:Pgchar):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_layout_parse_string'; +function gnome_dock_layout_add_to_dock(layout:PGnomeDockLayout; dock:PGnomeDock):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_layout_add_to_dock'; + +function GNOME_TYPE_DOCK_BAND : TGTKType; +function GNOME_IS_DOCK_BAND(obj : Pointer) : Boolean; +function GNOME_IS_DOCK_BAND_CLASS(klass : Pointer) : Boolean; + +function gnome_dock_band_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dock_band_new'; +function gnome_dock_band_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_dock_band_get_type'; +procedure gnome_dock_band_set_orientation(band:PGnomeDockBand; orientation:TGtkOrientation);cdecl;external libgnomeuidll name 'gnome_dock_band_set_orientation'; +function gnome_dock_band_get_orientation(band:PGnomeDockBand):TGtkOrientation;cdecl;external libgnomeuidll name 'gnome_dock_band_get_orientation'; +function gnome_dock_band_insert(band:PGnomeDockBand; child:PGtkWidget; offset:guint; position:gint):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_band_insert'; +function gnome_dock_band_prepend(band:PGnomeDockBand; child:PGtkWidget; offset:guint):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_band_prepend'; +function gnome_dock_band_append(band:PGnomeDockBand; child:PGtkWidget; offset:guint):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_band_append'; +procedure gnome_dock_band_set_child_offset(band:PGnomeDockBand; child:PGtkWidget; offset:guint);cdecl;external libgnomeuidll name 'gnome_dock_band_set_child_offset'; +function gnome_dock_band_get_child_offset(band:PGnomeDockBand; child:PGtkWidget):guint;cdecl;external libgnomeuidll name 'gnome_dock_band_get_child_offset'; +procedure gnome_dock_band_move_child(band:PGnomeDockBand; old_child:PGList; new_num:guint);cdecl;external libgnomeuidll name 'gnome_dock_band_move_child'; +function gnome_dock_band_get_num_children(band:PGnomeDockBand):guint;cdecl;external libgnomeuidll name 'gnome_dock_band_get_num_children'; +procedure gnome_dock_band_drag_begin(band:PGnomeDockBand; item:PGnomeDockItem);cdecl;external libgnomeuidll name 'gnome_dock_band_drag_begin'; +function gnome_dock_band_drag_to(band:PGnomeDockBand; item:PGnomeDockItem; x:gint; y:gint):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_band_drag_to'; +procedure gnome_dock_band_drag_end(band:PGnomeDockBand; item:PGnomeDockItem);cdecl;external libgnomeuidll name 'gnome_dock_band_drag_end'; +function gnome_dock_band_get_item_by_name(band:PGnomeDockBand; name:Pchar; position_return:Pguint; offset_return:Pguint):PGnomeDockItem;cdecl;external libgnomeuidll name 'gnome_dock_band_get_item_by_name'; +procedure gnome_dock_band_layout_add(band:PGnomeDockBand; layout:PGnomeDockLayout; placement:TGnomeDockPlacement; band_num:guint);cdecl;external libgnomeuidll name 'gnome_dock_band_layout_add'; + +function GNOME_TYPE_DOCK : TGTKType; +function GNOME_IS_DOCK(obj : Pointer) : Boolean; +function GNOME_IS_DOCK_CLASS(klass : Pointer) : Boolean; + +function gnome_dock_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dock_new'; +function gnome_dock_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_dock_get_type'; +procedure gnome_dock_allow_floating_items(dock:PGnomeDock; enable:gboolean);cdecl;external libgnomeuidll name 'gnome_dock_allow_floating_items'; +procedure gnome_dock_add_item(dock:PGnomeDock; item:PGnomeDockItem; placement:TGnomeDockPlacement; band_num:guint; position:gint; + offset:guint; in_new_band:gboolean);cdecl;external libgnomeuidll name 'gnome_dock_add_item'; +procedure gnome_dock_add_floating_item(dock:PGnomeDock; widget:PGnomeDockItem; x:gint; y:gint; orientation:TGtkOrientation);cdecl;external libgnomeuidll name 'gnome_dock_add_floating_item'; +procedure gnome_dock_set_client_area(dock:PGnomeDock; widget:PGtkWidget);cdecl;external libgnomeuidll name 'gnome_dock_set_client_area'; +function gnome_dock_get_client_area(dock:PGnomeDock):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_dock_get_client_area'; +function gnome_dock_get_item_by_name(dock:PGnomeDock; name:Pgchar; placement_return:PGnomeDockPlacement; num_band_return:Pguint; band_position_return:Pguint; + offset_return:Pguint):PGnomeDockItem;cdecl;external libgnomeuidll name 'gnome_dock_get_item_by_name'; +function gnome_dock_get_layout(dock:PGnomeDock):PGnomeDockLayout;cdecl;external libgnomeuidll name 'gnome_dock_get_layout'; +function gnome_dock_add_from_layout(dock:PGnomeDock; layout:PGnomeDockLayout):gboolean;cdecl;external libgnomeuidll name 'gnome_dock_add_from_layout'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_DOCK_ITEM : TGTKType; +begin + GNOME_TYPE_DOCK_ITEM:=gnome_dock_band_get_type; +end; + +function GNOME_IS_DOCK_ITEM(obj : pointer) : Boolean; +begin + GNOME_IS_DOCK_ITEM:=(obj<>nil) and GNOME_IS_DOCK_ITEM_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DOCK_ITEM_CLASS(klass : pointer) : boolean; +begin + GNOME_IS_DOCK_ITEM_CLASS:= (klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DOCK_ITEM); +end; + +function GNOME_DOCK_ITEM_NOT_LOCKED(x : PGnomeDockItem) : gboolean; +begin + GNOME_DOCK_ITEM_NOT_LOCKED:= not gboolean(gint(x^.behavior) and gint(GNOME_DOCK_ITEM_BEH_LOCKED)); +end; + +function float_window_mapped(var a : TGnomeDockItem) : gboolean; +begin + float_window_mapped:=gboolean((a.flag0 and bm__GnomeDockItem_float_window_mapped) shr bp__GnomeDockItem_float_window_mapped); +end; + +procedure set_float_window_mapped(var a : TGnomeDockItem; __float_window_mapped : gboolean); +begin + a.flag0:=a.flag0 or ((gint(__float_window_mapped) shl bp__GnomeDockItem_float_window_mapped) and bm__GnomeDockItem_float_window_mapped); +end; + +function is_floating(var a : TGnomeDockItem) : gboolean; +begin + is_floating:=gboolean((a.flag0 and bm__GnomeDockItem_is_floating) shr bp__GnomeDockItem_is_floating); +end; + +procedure set_is_floating(var a : TGnomeDockItem; __is_floating : gboolean); +begin + a.flag0:=a.flag0 or ((gint(__is_floating) shl bp__GnomeDockItem_is_floating) and bm__GnomeDockItem_is_floating); +end; + +function in_drag(var a : TGnomeDockItem) : gboolean; +begin + in_drag:=gboolean((a.flag0 and bm__GnomeDockItem_in_drag) shr bp__GnomeDockItem_in_drag); +end; + +procedure set_in_drag(var a : TGnomeDockItem; __in_drag : gboolean); +begin + a.flag0:=a.flag0 or ((gint(__in_drag) shl bp__GnomeDockItem_in_drag) and bm__GnomeDockItem_in_drag); +end; + +function GNOME_TYPE_DOCK_LAYOUT : TGTKType; +begin + GNOME_TYPE_DOCK_LAYOUT:=gnome_dock_layout_get_type; +end; + +function GNOME_IS_DOCK_LAYOUT(obj : pointer) : Boolean; +begin + GNOME_IS_DOCK_LAYOUT:=(obj<>nil) and GNOME_IS_DOCK_LAYOUT_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DOCK_LAYOUT_CLASS(klass : pointer) : boolean; +begin + GNOME_IS_DOCK_LAYOUT_CLASS:= (klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DOCK_LAYOUT); +end; + +function GNOME_TYPE_DOCK_BAND : TGTKType; +begin + GNOME_TYPE_DOCK_BAND:=gnome_dock_band_get_type; +end; + +function GNOME_IS_DOCK_BAND(obj : pointer) : Boolean; +begin + GNOME_IS_DOCK_BAND:=(obj<>nil) and GNOME_IS_DOCK_BAND_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DOCK_BAND_CLASS(klass : pointer) : boolean; +begin + GNOME_IS_DOCK_BAND_CLASS:= (klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DOCK_BAND); +end; + +function new_for_drag(var a : TGnomeDockBand) : boolean; +begin + new_for_drag:=boolean((a.flag0 and bm__GnomeDockBand_new_for_drag) shr bp__GnomeDockBand_new_for_drag); +end; + +procedure set_new_for_drag(var a : TGnomeDockBand; __new_for_drag : boolean); +begin + a.flag0:=a.flag0 or ((longint(__new_for_drag) shl bp__GnomeDockBand_new_for_drag) and bm__GnomeDockBand_new_for_drag); +end; + +function GNOME_TYPE_DOCK : TGTKType; +begin + GNOME_TYPE_DOCK:=gnome_dock_get_type; +end; + +function GNOME_IS_DOCK(obj : pointer) : Boolean; +begin + GNOME_IS_DOCK:=(obj<>nil) and GNOME_IS_DOCK_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DOCK_CLASS(klass : pointer) : boolean; +begin + GNOME_IS_DOCK_CLASS:= (klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DOCK); +end; + +function floating_items_allowed(var a : TGnomeDock) : gboolean; +begin + floating_items_allowed:=gBoolean((a.flag0 and bm__GnomeDock_floating_items_allowed) shr bp__GnomeDock_floating_items_allowed); +end; + +procedure set_floating_items_allowed(var a : TGnomeDock; __floating_items_allowed : gboolean); +begin + a.flag0:=a.flag0 or ((gint(__floating_items_allowed) shl bp__GnomeDock_floating_items_allowed) and bm__GnomeDock_floating_items_allowed); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedruid.inc b/packages/gnome1/src/libgnomeui/gnomedruid.inc new file mode 100644 index 0000000000..98e9e91c49 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedruid.inc @@ -0,0 +1,56 @@ +{$IfDef read_interface} + +type + PGnomeDruid = ^TGnomeDruid; + TGnomeDruid = record + parent : TGtkContainer; + back : PGtkWidget; + next : PGtkWidget; + cancel : PGtkWidget; + finish : PGtkWidget; + current : PGnomeDruidPage; + children : PGList; + show_finish : gboolean; + end; + GNOME_DRUID = PGnomeDruid; + + PGnomeDruidClass = ^TGnomeDruidClass; + TGnomeDruidClass = record + parent_class : TGtkContainerClass; + cancel : procedure (druid:PGnomeDruid);cdecl; + end; + GNOME_DRUID_CLASS = PGnomeDruidClass; + +function GNOME_TYPE_DRUID : TGTKType; +function GNOME_IS_DRUID(obj : Pointer) : Boolean; +function GNOME_IS_DRUID_CLASS(klass : Pointer) : Boolean; + +function gnome_druid_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_druid_get_type'; +function gnome_druid_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_druid_new'; +procedure gnome_druid_set_buttons_sensitive(druid:PGnomeDruid; back_sensitive:gboolean; next_sensitive:gboolean; cancel_sensitive:gboolean);cdecl;external libgnomeuidll name 'gnome_druid_set_buttons_sensitive'; +procedure gnome_druid_set_show_finish(druid:PGnomeDruid; show_finish:gboolean);cdecl;external libgnomeuidll name 'gnome_druid_set_show_finish'; +procedure gnome_druid_prepend_page(druid:PGnomeDruid; page:PGnomeDruidPage);cdecl;external libgnomeuidll name 'gnome_druid_prepend_page'; +procedure gnome_druid_insert_page(druid:PGnomeDruid; back_page:PGnomeDruidPage; page:PGnomeDruidPage);cdecl;external libgnomeuidll name 'gnome_druid_insert_page'; +procedure gnome_druid_append_page(druid:PGnomeDruid; page:PGnomeDruidPage);cdecl;external libgnomeuidll name 'gnome_druid_append_page'; +procedure gnome_druid_set_page(druid:PGnomeDruid; page:PGnomeDruidPage);cdecl;external libgnomeuidll name 'gnome_druid_set_page'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_DRUID : TGTKType; +begin + GNOME_TYPE_DRUID:=gnome_druid_get_type; +end; + +function GNOME_IS_DRUID(obj : Pointer) : Boolean; +begin + GNOME_IS_DRUID:=(obj<>nil) and GNOME_IS_DRUID_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DRUID_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_DRUID_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DRUID); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedruidpage.inc b/packages/gnome1/src/libgnomeui/gnomedruidpage.inc new file mode 100644 index 0000000000..2ec991ce37 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedruidpage.inc @@ -0,0 +1,50 @@ +{$IfDef read_interface} +type + PGnomeDruidPage = ^TGnomeDruidPage; + TGnomeDruidPage = record + parent : TGtkBin; + end; + GNOME_DRUID_PAGE = PGnomeDruidPage; + + PGnomeDruidPageClass = ^TGnomeDruidPageClass; + TGnomeDruidPageClass = record + parent_class : TGtkBinClass; + next : function (druid_page:PGnomeDruidPage; druid:PGtkWidget):gboolean;cdecl; + prepare : procedure (druid_page:PGnomeDruidPage; druid:PGtkWidget);cdecl; + back : function (druid_page:PGnomeDruidPage; druid:PGtkWidget):gboolean;cdecl; + finish : procedure (druid_page:PGnomeDruidPage; druid:PGtkWidget);cdecl; + cancel : function (druid_page:PGnomeDruidPage; druid:PGtkWidget):gboolean;cdecl; + end; + GNOME_DRUID_PAGE_CLASS = PGnomeDruidPageClass; + +function GNOME_TYPE_DRUID_PAGE : TGTKType; +function GNOME_IS_DRUID_PAGE(obj : Pointer) : Boolean; +function GNOME_IS_DRUID_PAGE_CLASS(klass : Pointer) : Boolean; + +function gnome_druid_page_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_druid_page_get_type'; +function gnome_druid_page_next(druid_page:PGnomeDruidPage):gboolean;cdecl;external libgnomeuidll name 'gnome_druid_page_next'; +procedure gnome_druid_page_prepare(druid_page:PGnomeDruidPage);cdecl;external libgnomeuidll name 'gnome_druid_page_prepare'; +function gnome_druid_page_back(druid_page:PGnomeDruidPage):gboolean;cdecl;external libgnomeuidll name 'gnome_druid_page_back'; +function gnome_druid_page_cancel(druid_page:PGnomeDruidPage):gboolean;cdecl;external libgnomeuidll name 'gnome_druid_page_cancel'; +procedure gnome_druid_page_finish(druid_page:PGnomeDruidPage);cdecl;external libgnomeuidll name 'gnome_druid_page_finish'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_DRUID_PAGE : TGTKType; +begin + GNOME_TYPE_DRUID_PAGE:=gnome_druid_page_get_type; +end; + +function GNOME_IS_DRUID_PAGE(obj : Pointer) : Boolean; +begin + GNOME_IS_DRUID_PAGE:=(obj<>nil) and GNOME_IS_DRUID_PAGE_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DRUID_PAGE_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_DRUID_PAGE_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DRUID_PAGE); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedruidpagefinish.inc b/packages/gnome1/src/libgnomeui/gnomedruidpagefinish.inc new file mode 100644 index 0000000000..bc774584b0 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedruidpagefinish.inc @@ -0,0 +1,69 @@ +{$IfDef read_interface} + +type + PGnomeDruidPageFinish = ^TGnomeDruidPageFinish; + TGnomeDruidPageFinish = record + parent : TGnomeDruidPage; + background_color : TGdkColor; + textbox_color : TGdkColor; + logo_background_color : TGdkColor; + title_color : TGdkColor; + text_color : TGdkColor; + title : Pgchar; + thetext : Pgchar; + logo_image : PGdkImlibImage; + watermark_image : PGdkImlibImage; + canvas : PGtkWidget; + background_item : PGnomeCanvasItem; + textbox_item : PGnomeCanvasItem; + text_item : PGnomeCanvasItem; + logo_item : PGnomeCanvasItem; + logoframe_item : PGnomeCanvasItem; + watermark_item : PGnomeCanvasItem; + title_item : PGnomeCanvasItem; + end; + //GNOME_DRUID_PAGE_FINISH = PGnomeDruidPageFinish;(* this is also a function in gnomedruidpage.inc *) + + PGnomeDruidPageFinishClass = ^TGnomeDruidPageFinishClass; + TGnomeDruidPageFinishClass = record + parent_class : TGnomeDruidPageClass; + end; + GNOME_DRUID_PAGE_FINISH_CLASS = PGnomeDruidPageFinishClass; + +function GNOME_TYPE_DRUID_PAGE_FINISH : TGTKType; +function GNOME_IS_DRUID_PAGE_FINISH(obj : Pointer) : Boolean; +function GNOME_IS_DRUID_PAGE_FINISH_CLASS(klass : Pointer) : Boolean; + +function gnome_druid_page_finish_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_druid_page_finish_get_type'; +function gnome_druid_page_finish_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_druid_page_finish_new'; +function gnome_druid_page_finish_new_with_vals(title:Pgchar; thetext:Pgchar; logo:PGdkImlibImage; watermark:PGdkImlibImage):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_druid_page_finish_new_with_vals'; +procedure gnome_druid_page_finish_set_bg_color(druid_page_finish:PGnomeDruidPageFinish; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_finish_set_bg_color'; +procedure gnome_druid_page_finish_set_textbox_color(druid_page_finish:PGnomeDruidPageFinish; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_finish_set_textbox_color'; +procedure gnome_druid_page_finish_set_logo_bg_color(druid_page_finish:PGnomeDruidPageFinish; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_finish_set_logo_bg_color'; +procedure gnome_druid_page_finish_set_title_color(druid_page_finish:PGnomeDruidPageFinish; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_finish_set_title_color'; +procedure gnome_druid_page_finish_set_text_color(druid_page_finish:PGnomeDruidPageFinish; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_finish_set_text_color'; +procedure gnome_druid_page_finish_set_text(druid_page_finish:PGnomeDruidPageFinish; thetext:Pgchar);cdecl;external libgnomeuidll name 'gnome_druid_page_finish_set_text'; +procedure gnome_druid_page_finish_set_title(druid_page_finish:PGnomeDruidPageFinish; title:Pgchar);cdecl;external libgnomeuidll name 'gnome_druid_page_finish_set_title'; +procedure gnome_druid_page_finish_set_logo(druid_page_finish:PGnomeDruidPageFinish; logo_image:PGdkImlibImage);cdecl;external libgnomeuidll name 'gnome_druid_page_finish_set_logo'; +procedure gnome_druid_page_finish_set_watermark(druid_page_finish:PGnomeDruidPageFinish; watermark:PGdkImlibImage);cdecl;external libgnomeuidll name 'gnome_druid_page_finish_set_watermark'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_DRUID_PAGE_FINISH : TGTKType; +begin + GNOME_TYPE_DRUID_PAGE_FINISH:=gnome_druid_page_finish_get_type; +end; + +function GNOME_IS_DRUID_PAGE_FINISH(obj : Pointer) : Boolean; +begin + GNOME_IS_DRUID_PAGE_FINISH:=(obj<>nil) and GNOME_IS_DRUID_PAGE_FINISH_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DRUID_PAGE_FINISH_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_DRUID_PAGE_FINISH_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DRUID_PAGE_FINISH); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedruidpagestandard.inc b/packages/gnome1/src/libgnomeui/gnomedruidpagestandard.inc new file mode 100644 index 0000000000..1ffb7c6a55 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedruidpagestandard.inc @@ -0,0 +1,62 @@ +{$IfDef read_interface} + +type + PGnomeDruidPageStandard = ^TGnomeDruidPageStandard; + TGnomeDruidPageStandard = record + parent : TGnomeDruidPage; + vbox : PGtkWidget; + background_color : TGdkColor; + logo_background_color : TGdkColor; + title_color : TGdkColor; + logo_image : PGdkImlibImage; + title : Pgchar; + canvas : PGtkWidget; + side_bar : PGtkWidget; + logoframe_item : PGnomeCanvasItem; + logo_item : PGnomeCanvasItem; + title_item : PGnomeCanvasItem; + background_item : PGnomeCanvasItem; + bottom_bar : PGtkWidget; + right_bar : PGtkWidget; + end; + GNOME_DRUID_PAGE_STANDARD = PGnomeDruidPageStandard; + + PGnomeDruidPageStandardClass = ^TGnomeDruidPageStandardClass; + TGnomeDruidPageStandardClass = record + parent_class : TGnomeDruidPageClass; + end; + GNOME_DRUID_PAGE_STANDARD_CLASS = PGnomeDruidPageStandardClass; + +function GNOME_TYPE_DRUID_PAGE_STANDARD : TGTKType; +function GNOME_IS_DRUID_PAGE_STANDARD(obj : Pointer) : Boolean; +function GNOME_IS_DRUID_PAGE_STANDARD_CLASS(klass : Pointer) : Boolean; + +function gnome_druid_page_standard_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_druid_page_standard_get_type'; +function gnome_druid_page_standard_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_druid_page_standard_new'; +function gnome_druid_page_standard_new_with_vals(title:Pgchar; logo:PGdkImlibImage):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_druid_page_standard_new_with_vals'; +procedure gnome_druid_page_standard_set_bg_color(druid_page_standard:PGnomeDruidPageStandard; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_standard_set_bg_color'; +procedure gnome_druid_page_standard_set_logo_bg_color(druid_page_standard:PGnomeDruidPageStandard; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_standard_set_logo_bg_color'; +procedure gnome_druid_page_standard_set_title_color(druid_page_standard:PGnomeDruidPageStandard; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_standard_set_title_color'; +procedure gnome_druid_page_standard_set_title(druid_page_standard:PGnomeDruidPageStandard; title:Pgchar);cdecl;external libgnomeuidll name 'gnome_druid_page_standard_set_title'; +procedure gnome_druid_page_standard_set_logo(druid_page_standard:PGnomeDruidPageStandard; logo_image:PGdkImlibImage);cdecl;external libgnomeuidll name 'gnome_druid_page_standard_set_logo'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_DRUID_PAGE_STANDARD : TGTKType; +begin + GNOME_TYPE_DRUID_PAGE_STANDARD:=gnome_druid_page_standard_get_type; +end; + +function GNOME_IS_DRUID_PAGE_STANDARD(obj : Pointer) : Boolean; +begin + GNOME_IS_DRUID_PAGE_STANDARD:=(obj<>nil) and GNOME_IS_DRUID_PAGE_STANDARD_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DRUID_PAGE_STANDARD_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_DRUID_PAGE_STANDARD_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DRUID_PAGE_STANDARD); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomedruidpagestart.inc b/packages/gnome1/src/libgnomeui/gnomedruidpagestart.inc new file mode 100644 index 0000000000..8faa693d62 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomedruidpagestart.inc @@ -0,0 +1,70 @@ +{$IfDef read_interface} + +type + PGnomeDruidPageStart = ^TGnomeDruidPageStart; + TGnomeDruidPageStart = record + parent : TGnomeDruidPage; + background_color : TGdkColor; + textbox_color : TGdkColor; + logo_background_color : TGdkColor; + title_color : TGdkColor; + text_color : TGdkColor; + title : Pgchar; + thetext : Pgchar; + logo_image : PGdkImlibImage; + watermark_image : PGdkImlibImage; + canvas : PGtkWidget; + background_item : PGnomeCanvasItem; + textbox_item : PGnomeCanvasItem; + text_item : PGnomeCanvasItem; + logo_item : PGnomeCanvasItem; + logoframe_item : PGnomeCanvasItem; + watermark_item : PGnomeCanvasItem; + title_item : PGnomeCanvasItem; + end; + GNOME_DRUID_PAGE_START = PGnomeDruidPageStart; + + PGnomeDruidPageStartClass = ^TGnomeDruidPageStartClass; + TGnomeDruidPageStartClass = record + parent_class : TGnomeDruidPageClass; + end; + GNOME_DRUID_PAGE_START_CLASS = PGnomeDruidPageStartClass; + + +function GNOME_TYPE_DRUID_PAGE_START : TGTKType; +function GNOME_IS_DRUID_PAGE_START(obj : Pointer) : Boolean; +function GNOME_IS_DRUID_PAGE_START_CLASS(klass : Pointer) : Boolean; + +function gnome_druid_page_start_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_druid_page_start_get_type'; +function gnome_druid_page_start_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_druid_page_start_new'; +function gnome_druid_page_start_new_with_vals(title:Pgchar; thetext:Pgchar; logo:PGdkImlibImage; watermark:PGdkImlibImage):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_druid_page_start_new_with_vals'; +procedure gnome_druid_page_start_set_bg_color(druid_page_start:PGnomeDruidPageStart; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_start_set_bg_color'; +procedure gnome_druid_page_start_set_textbox_color(druid_page_start:PGnomeDruidPageStart; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_start_set_textbox_color'; +procedure gnome_druid_page_start_set_logo_bg_color(druid_page_start:PGnomeDruidPageStart; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_start_set_logo_bg_color'; +procedure gnome_druid_page_start_set_title_color(druid_page_start:PGnomeDruidPageStart; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_start_set_title_color'; +procedure gnome_druid_page_start_set_text_color(druid_page_start:PGnomeDruidPageStart; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_druid_page_start_set_text_color'; +procedure gnome_druid_page_start_set_text(druid_page_start:PGnomeDruidPageStart; thetext:Pgchar);cdecl;external libgnomeuidll name 'gnome_druid_page_start_set_text'; +procedure gnome_druid_page_start_set_title(druid_page_start:PGnomeDruidPageStart; title:Pgchar);cdecl;external libgnomeuidll name 'gnome_druid_page_start_set_title'; +procedure gnome_druid_page_start_set_logo(druid_page_start:PGnomeDruidPageStart; logo_image:PGdkImlibImage);cdecl;external libgnomeuidll name 'gnome_druid_page_start_set_logo'; +procedure gnome_druid_page_start_set_watermark(druid_page_start:PGnomeDruidPageStart; watermark:PGdkImlibImage);cdecl;external libgnomeuidll name 'gnome_druid_page_start_set_watermark'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_DRUID_PAGE_START : TGTKType; +begin + GNOME_TYPE_DRUID_PAGE_START:=gnome_druid_page_start_get_type; +end; + +function GNOME_IS_DRUID_PAGE_START(obj : Pointer) : Boolean; +begin + GNOME_IS_DRUID_PAGE_START:=(obj<>nil) and GNOME_IS_DRUID_PAGE_START_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_DRUID_PAGE_START_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_DRUID_PAGE_START_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_DRUID_PAGE_START); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeentry.inc b/packages/gnome1/src/libgnomeui/gnomeentry.inc new file mode 100644 index 0000000000..73c609851b --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeentry.inc @@ -0,0 +1,52 @@ +{$IfDef read_interface} +type + PGnomeEntry = ^TGnomeEntry; + TGnomeEntry = record + combo : TGtkCombo; + changed : gboolean; + history_id : Pgchar; + items : PGList; + max_saved : guint; + end; + GNOME_ENTRY = PGnomeEntry; + + PGnomeEntryClass = ^TGnomeEntryClass; + TGnomeEntryClass = record + parent_class : TGtkComboClass; + end; + GNOME_ENTRY_CLASS = PGnomeEntryClass; + +function GNOME_TYPE_ENTRY : TGTKType; +function GNOME_IS_ENTRY(obj : Pointer) : Boolean; +function GNOME_IS_ENTRY_CLASS(klass : Pointer) : Boolean; + +function gnome_entry_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_entry_get_type'; +function gnome_entry_new(history_id:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_entry_new'; +function gnome_entry_gtk_entry(gentry:PGnomeEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_entry_gtk_entry'; +procedure gnome_entry_set_history_id(gentry:PGnomeEntry; history_id:Pgchar);cdecl;external libgnomeuidll name 'gnome_entry_set_history_id'; +procedure gnome_entry_set_max_saved(gentry:PGnomeEntry; max_saved:guint);cdecl;external libgnomeuidll name 'gnome_entry_set_max_saved'; +procedure gnome_entry_prepend_history(gentry:PGnomeEntry; save:gint; thetext:Pgchar);cdecl;external libgnomeuidll name 'gnome_entry_prepend_history'; +procedure gnome_entry_append_history(gentry:PGnomeEntry; save:gint; thetext:Pgchar);cdecl;external libgnomeuidll name 'gnome_entry_append_history'; +procedure gnome_entry_load_history(gentry:PGnomeEntry);cdecl;external libgnomeuidll name 'gnome_entry_load_history'; +procedure gnome_entry_save_history(gentry:PGnomeEntry);cdecl;external libgnomeuidll name 'gnome_entry_save_history'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_ENTRY : TGTKType; +begin + GNOME_TYPE_ENTRY:=gnome_entry_get_type; +end; + +function GNOME_IS_ENTRY(obj : Pointer) : Boolean; +begin + GNOME_IS_ENTRY:=(obj<>nil) and GNOME_IS_ENTRY_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_ENTRY_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_ENTRY_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_ENTRY); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomefileentry.inc b/packages/gnome1/src/libgnomeui/gnomefileentry.inc new file mode 100644 index 0000000000..a1b9c0b61c --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomefileentry.inc @@ -0,0 +1,57 @@ +{$IfDef read_interface} +type + PGnomeFileEntry = ^TGnomeFileEntry; + TGnomeFileEntry = record + hbox : TGtkHBox; + browse_dialog_title : Pchar; + default_path : Pchar; + fsw : PGtkWidget; + is_modal : gboolean; + directory_entry : gboolean; + gentry : PGtkWidget; + end; + GNOME_FILE_ENTRY = PGnomeFileEntry; + + PGnomeFileEntryClass = ^TGnomeFileEntryClass; + TGnomeFileEntryClass = record + parent_class : TGtkHBoxClass; + browse_clicked : procedure (fentry:PGnomeFileEntry);cdecl; + end; + GNOME_FILE_ENTRY_CLASS = PGnomeFileEntryClass; + + +function GNOME_TYPE_FILE_ENTRY : TGTKType; +function GNOME_IS_FILE_ENTRY(obj : Pointer) : Boolean; +function GNOME_IS_FILE_ENTRY_CLASS(klass : Pointer) : Boolean; + +function gnome_file_entry_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_file_entry_get_type'; +function gnome_file_entry_new(history_id:Pchar; browse_dialog_title:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_file_entry_new'; +procedure gnome_file_entry_construct(fentry:PGnomeFileEntry; history_id:Pchar; browse_dialog_title:Pchar);cdecl;external libgnomeuidll name 'gnome_file_entry_construct'; +function gnome_file_entry_gnome_entry(fentry:PGnomeFileEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_file_entry_gnome_entry'; +function gnome_file_entry_gtk_entry(fentry:PGnomeFileEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_file_entry_gtk_entry'; +procedure gnome_file_entry_set_title(fentry:PGnomeFileEntry; browse_dialog_title:Pchar);cdecl;external libgnomeuidll name 'gnome_file_entry_set_title'; +procedure gnome_file_entry_set_default_path(fentry:PGnomeFileEntry; path:Pchar);cdecl;external libgnomeuidll name 'gnome_file_entry_set_default_path'; +procedure gnome_file_entry_set_directory(fentry:PGnomeFileEntry; directory_entry:gboolean);cdecl;external libgnomeuidll name 'gnome_file_entry_set_directory'; +function gnome_file_entry_get_full_path(fentry:PGnomeFileEntry; file_must_exist:gboolean):Pchar;cdecl;external libgnomeuidll name 'gnome_file_entry_get_full_path'; +procedure gnome_file_entry_set_modal(fentry:PGnomeFileEntry; is_modal:gboolean);cdecl;external libgnomeuidll name 'gnome_file_entry_set_modal'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_FILE_ENTRY : TGTKType; +begin + GNOME_TYPE_FILE_ENTRY:=gnome_file_entry_get_type; +end; + +function GNOME_IS_FILE_ENTRY(obj : Pointer) : Boolean; +begin + GNOME_IS_FILE_ENTRY:=(obj<>nil) and GNOME_IS_FILE_ENTRY_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_FILE_ENTRY_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_FILE_ENTRY_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_FILE_ENTRY); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomefontpicker.inc b/packages/gnome1/src/libgnomeui/gnomefontpicker.inc new file mode 100644 index 0000000000..859dcb2f10 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomefontpicker.inc @@ -0,0 +1,70 @@ +{$IfDef read_interface} + +type + TGnomeFontPickerMode = (GNOME_FONT_PICKER_MODE_PIXMAP,GNOME_FONT_PICKER_MODE_FONT_INFO, + GNOME_FONT_PICKER_MODE_USER_WIDGET,GNOME_FONT_PICKER_MODE_UNKNOWN + ); + + PGnomeFontPicker = ^TGnomeFontPicker; + TGnomeFontPicker = record + button : TGtkButton; + font_dialog : PGtkWidget; + inside : PGtkWidget; + font_label : PGtkWidget; + vsep : PGtkWidget; + size_label : PGtkWidget; + mode : TGnomeFontPickerMode; + font_name : Pgchar; + preview_text : Pgchar; + use_font_in_label : gboolean; + use_font_in_label_size : gboolean; + show_size : gboolean; + title : Pgchar; + end; + GNOME_FONT_PICKER = PGnomeFontPicker; + + PGnomeFontPickerClass = ^TGnomeFontPickerClass; + TGnomeFontPickerClass = record + parent_class : TGtkButtonClass; + font_set : procedure (gfp:PGnomeFontPicker; font_name:Pgchar);cdecl; + end; + GNOME_FONT_PICKER_CLASS = PGnomeFontPickerClass; + +function GNOME_TYPE_FONT_PICKER : TGTKType; +function GNOME_IS_FONT_PICKER(obj : Pointer) : Boolean; +function GNOME_IS_FONT_PICKER_CLASS(klass : Pointer) : Boolean; + +function gnome_font_picker_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_font_picker_get_type'; +function gnome_font_picker_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_font_picker_new'; +procedure gnome_font_picker_set_title(gfp:PGnomeFontPicker; title:Pgchar);cdecl;external libgnomeuidll name 'gnome_font_picker_set_title'; +function gnome_font_picker_get_mode(gfp:PGnomeFontPicker):TGnomeFontPickerMode;cdecl;external libgnomeuidll name 'gnome_font_picker_get_mode'; +procedure gnome_font_picker_set_mode(gfp:PGnomeFontPicker; mode:TGnomeFontPickerMode);cdecl;external libgnomeuidll name 'gnome_font_picker_set_mode'; +procedure gnome_font_picker_fi_set_use_font_in_label(gfp:PGnomeFontPicker; use_font_in_label:gboolean; size:gint);cdecl;external libgnomeuidll name 'gnome_font_picker_fi_set_use_font_in_label'; +procedure gnome_font_picker_fi_set_show_size(gfp:PGnomeFontPicker; show_size:gboolean);cdecl;external libgnomeuidll name 'gnome_font_picker_fi_set_show_size'; +procedure gnome_font_picker_uw_set_widget(gfp:PGnomeFontPicker; widget:PGtkWidget);cdecl;external libgnomeuidll name 'gnome_font_picker_uw_set_widget'; +function gnome_font_picker_get_font_name(gfp:PGnomeFontPicker):Pgchar;cdecl;external libgnomeuidll name 'gnome_font_picker_get_font_name'; +function gnome_font_picker_get_font(gfp:PGnomeFontPicker):PGdkFont;cdecl;external libgnomeuidll name 'gnome_font_picker_get_font'; +function gnome_font_picker_set_font_name(gfp:PGnomeFontPicker; fontname:Pgchar):gboolean;cdecl;external libgnomeuidll name 'gnome_font_picker_set_font_name'; +function gnome_font_picker_get_preview_text(gfp:PGnomeFontPicker):Pgchar;cdecl;external libgnomeuidll name 'gnome_font_picker_get_preview_text'; +procedure gnome_font_picker_set_preview_text(gfp:PGnomeFontPicker; thetext:Pgchar);cdecl;external libgnomeuidll name 'gnome_font_picker_set_preview_text'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_FONT_PICKER : TGTKType; +begin + GNOME_TYPE_FONT_PICKER:=gnome_font_picker_get_type; +end; + +function GNOME_IS_FONT_PICKER(obj : Pointer) : Boolean; +begin + GNOME_IS_FONT_PICKER:=(obj<>nil) and GNOME_IS_FONT_PICKER_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_FONT_PICKER_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_FONT_PICKER_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_FONT_PICKER); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomegeometry.inc b/packages/gnome1/src/libgnomeui/gnomegeometry.inc new file mode 100644 index 0000000000..c75372a78e --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomegeometry.inc @@ -0,0 +1,10 @@ +{$IfDef read_interface} + +function gnome_parse_geometry(geometry:Pgchar; xpos:Pgint; ypos:Pgint; width:Pgint; height:Pgint):gboolean;cdecl;external libgnomeuidll name 'gnome_parse_geometry'; +function gnome_geometry_string(window:PGdkWindow):Pgchar;cdecl;external libgnomeuidll name 'gnome_geometry_string'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomehref.inc b/packages/gnome1/src/libgnomeui/gnomehref.inc new file mode 100644 index 0000000000..353ae36634 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomehref.inc @@ -0,0 +1,48 @@ +{$IfDef read_interface} + +type + PGnomeHRef = ^TGnomeHRef; + TGnomeHRef = record + button : TGtkButton; + url : Pgchar; + thelabel : PGtkWidget; + end; + GNOME_HREF = PGnomeHRef; + + PGnomeHRefClass = ^TGnomeHRefClass; + TGnomeHRefClass = record + parent_class : TGtkButtonClass; + end; + GNOME_HREF_CLASS = PGnomeHRefClass; + +function GNOME_TYPE_HREF : TGTKType; +function GNOME_IS_HREF(obj : Pointer) : Boolean; +function GNOME_IS_HREF_CLASS(klass : Pointer) : Boolean; + +function gnome_href_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_href_get_type'; +function gnome_href_new(url:Pgchar; thelabel:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_href_new'; +procedure gnome_href_set_url(href:PGnomeHRef; url:Pgchar);cdecl;external libgnomeuidll name 'gnome_href_set_url'; +function gnome_href_get_url(href:PGnomeHRef):Pgchar;cdecl;external libgnomeuidll name 'gnome_href_get_url'; +procedure gnome_href_set_label(href:PGnomeHRef; thelabel:Pgchar);cdecl;external libgnomeuidll name 'gnome_href_set_label'; +function gnome_href_get_label(href:PGnomeHRef):Pgchar;cdecl;external libgnomeuidll name 'gnome_href_get_label'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_HREF : TGTKType; +begin + GNOME_TYPE_HREF:=gnome_href_get_type; +end; + +function GNOME_IS_HREF(obj : Pointer) : Boolean; +begin + GNOME_IS_HREF:=(obj<>nil) and GNOME_IS_HREF_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_HREF_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_HREF_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_HREF); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeiconentry.inc b/packages/gnome1/src/libgnomeui/gnomeiconentry.inc new file mode 100644 index 0000000000..3c129d185f --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeiconentry.inc @@ -0,0 +1,52 @@ +{$IfDef read_interface} + +type + PGnomeIconEntry = ^TGnomeIconEntry; + TGnomeIconEntry = record + vbox : TGtkVBox; + fentry : PGtkWidget; + pickbutton : PGtkWidget; + pick_dialog : PGtkWidget; + pick_dialog_dir : Pgchar; + end; + GNOME_ICON_ENTRY = PGnomeIconEntry; + + PGnomeIconEntryClass = ^TGnomeIconEntryClass; + TGnomeIconEntryClass = record + parent_class : TGtkVBoxClass; + end; + GNOME_ICON_ENTRY_CLASS = PGnomeIconEntryClass; + +function GNOME_TYPE_ICON_ENTRY : TGTKType; +function GNOME_IS_ICON_ENTRY(obj : Pointer) : Boolean; +function GNOME_IS_ICON_ENTRY_CLASS(klass : Pointer) : Boolean; + +function gnome_icon_entry_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_icon_entry_get_type'; +function gnome_icon_entry_new(history_id:Pgchar; browse_dialog_title:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_icon_entry_new'; +procedure gnome_icon_entry_set_pixmap_subdir(ientry:PGnomeIconEntry; subdir:Pgchar);cdecl;external libgnomeuidll name 'gnome_icon_entry_set_pixmap_subdir'; +procedure gnome_icon_entry_set_icon(ientry:PGnomeIconEntry; filename:Pgchar);cdecl;external libgnomeuidll name 'gnome_icon_entry_set_icon'; +function gnome_icon_entry_gnome_file_entry(ientry:PGnomeIconEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_icon_entry_gnome_file_entry'; +function gnome_icon_entry_gnome_entry(ientry:PGnomeIconEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_icon_entry_gnome_entry'; +function gnome_icon_entry_gtk_entry(ientry:PGnomeIconEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_icon_entry_gtk_entry'; +function gnome_icon_entry_get_filename(ientry:PGnomeIconEntry):Pgchar;cdecl;external libgnomeuidll name 'gnome_icon_entry_get_filename'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_ICON_ENTRY : TGTKType; +begin + GNOME_TYPE_ICON_ENTRY:=gnome_icon_entry_get_type; +end; + +function GNOME_IS_ICON_ENTRY(obj : Pointer) : Boolean; +begin + GNOME_IS_ICON_ENTRY:=(obj<>nil) and GNOME_IS_ICON_ENTRY_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_ICON_ENTRY_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_ICON_ENTRY_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_ICON_ENTRY); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeiconitem.inc b/packages/gnome1/src/libgnomeui/gnomeiconitem.inc new file mode 100644 index 0000000000..93fc444be6 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeiconitem.inc @@ -0,0 +1,141 @@ +{$IfDef read_interface} + +type + PGnomeIconTextItem = ^TGnomeIconTextItem; + TGnomeIconTextItem = record + canvas_item : TGnomeCanvasItem; + x : longint; + y : longint; + width : longint; + fontname : pchar; + priv : gpointer; + pad1 : gpointer; + pad2 : gpointer; + thetext : pchar; + ti : PGnomeIconTextInfo; + flag0 : word; + pad3 : dword; + flag1 : word; + end; + GNOME_ICON_TEXT_ITEM = PGnomeIconTextItem; + +const + bm_GnomeIconTextItem_editing = $1; + bp_GnomeIconTextItem_editing = 0; + bm_GnomeIconTextItem_selected = $2; + bp_GnomeIconTextItem_selected = 1; + bm_GnomeIconTextItem_selecting = $1; + bp_GnomeIconTextItem_selecting = 0; + bm_GnomeIconTextItem_is_editable = $2; + bp_GnomeIconTextItem_is_editable = 1; + bm_GnomeIconTextItem_is_text_allocated = $4; + bp_GnomeIconTextItem_is_text_allocated = 2; + +function editing(var a : TGnomeIconTextItem) : dword; +procedure set_editing(var a : TGnomeIconTextItem; __editing : dword); +function selected(var a : TGnomeIconTextItem) : dword; +procedure set_selected(var a : TGnomeIconTextItem; __selected : dword); +function selecting(var a : TGnomeIconTextItem) : dword; +procedure set_selecting(var a : TGnomeIconTextItem; __selecting : dword); +function is_editable(var a : TGnomeIconTextItem) : dword; +procedure set_is_editable(var a : TGnomeIconTextItem; __is_editable : dword); +function is_text_allocated(var a : TGnomeIconTextItem) : dword; +procedure set_is_text_allocated(var a : TGnomeIconTextItem; __is_text_allocated : dword); + +type + PGnomeIconTextItemClass = ^TGnomeIconTextItemClass; + TGnomeIconTextItemClass = record + parent_class : TGnomeCanvasItemClass; + text_changed : function (iti:PGnomeIconTextItem):longint;cdecl; + height_changed : procedure (iti:PGnomeIconTextItem);cdecl; + width_changed : procedure (iti:PGnomeIconTextItem);cdecl; + editing_started : procedure (iti:PGnomeIconTextItem);cdecl; + editing_stopped : procedure (iti:PGnomeIconTextItem);cdecl; + selection_started : procedure (iti:PGnomeIconTextItem);cdecl; + selection_stopped : procedure (iti:PGnomeIconTextItem);cdecl; + end; + GNOME_ICON_TEXT_ITEM_CLASS = PGnomeIconTextItemClass; + +function GNOME_TYPE_ICON_TEXT_ITEM : TGTKType; +function GNOME_IS_ICON_TEXT_ITEM(obj : Pointer) : Boolean; +function GNOME_IS_ICON_TEXT_ITEM_CLASS(klass : Pointer) : Boolean; + +function gnome_icon_text_item_get_type:TGtkType;cdecl;external libgnomeuidll name 'gnome_icon_text_item_get_type'; +procedure gnome_icon_text_item_configure(iti:PGnomeIconTextItem; x:longint; y:longint; width:longint; fontname:Pchar; + thetext:Pchar; is_editable:gboolean; is_static:gboolean);cdecl;external libgnomeuidll name 'gnome_icon_text_item_configure'; +procedure gnome_icon_text_item_setxy(iti:PGnomeIconTextItem; x:longint; y:longint);cdecl;external libgnomeuidll name 'gnome_icon_text_item_setxy'; +procedure gnome_icon_text_item_select(iti:PGnomeIconTextItem; sel:longint);cdecl;external libgnomeuidll name 'gnome_icon_text_item_select'; +function gnome_icon_text_item_get_text(iti:PGnomeIconTextItem):Pchar;cdecl;external libgnomeuidll name 'gnome_icon_text_item_get_text'; +procedure gnome_icon_text_item_start_editing(iti:PGnomeIconTextItem);cdecl;external libgnomeuidll name 'gnome_icon_text_item_start_editing'; +procedure gnome_icon_text_item_stop_editing(iti:PGnomeIconTextItem; accept:gboolean);cdecl;external libgnomeuidll name 'gnome_icon_text_item_stop_editing'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_ICON_TEXT_ITEM : TGTKType; +begin + GNOME_TYPE_ICON_TEXT_ITEM:=gnome_icon_text_item_get_type; +end; + +function GNOME_IS_ICON_TEXT_ITEM(obj : Pointer) : Boolean; +begin + GNOME_IS_ICON_TEXT_ITEM:=(obj<>nil) and GNOME_IS_ICON_TEXT_ITEM_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_ICON_TEXT_ITEM_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_ICON_TEXT_ITEM_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_ICON_TEXT_ITEM); +end; + +function editing(var a : TGnomeIconTextItem) : dword; +begin + editing:=(a.flag0 and bm_GnomeIconTextItem_editing) shr bp_GnomeIconTextItem_editing; +end; + +procedure set_editing(var a : TGnomeIconTextItem; __editing : dword); +begin + a.flag0:=a.flag0 or ((__editing shl bp_GnomeIconTextItem_editing) and bm_GnomeIconTextItem_editing); +end; + +function selected(var a : TGnomeIconTextItem) : dword; +begin + selected:=(a.flag0 and bm_GnomeIconTextItem_selected) shr bp_GnomeIconTextItem_selected; +end; + +procedure set_selected(var a : TGnomeIconTextItem; __selected : dword); +begin + a.flag0:=a.flag0 or ((__selected shl bp_GnomeIconTextItem_selected) and bm_GnomeIconTextItem_selected); +end; + +function selecting(var a : TGnomeIconTextItem) : dword; +begin + selecting:=(a.flag1 and bm_GnomeIconTextItem_selecting) shr bp_GnomeIconTextItem_selecting; +end; + +procedure set_selecting(var a : TGnomeIconTextItem; __selecting : dword); +begin + a.flag1:=a.flag1 or ((__selecting shl bp_GnomeIconTextItem_selecting) and bm_GnomeIconTextItem_selecting); +end; + +function is_editable(var a : TGnomeIconTextItem) : dword; +begin + is_editable:=(a.flag1 and bm_GnomeIconTextItem_is_editable) shr bp_GnomeIconTextItem_is_editable; +end; + +procedure set_is_editable(var a : TGnomeIconTextItem; __is_editable : dword); +begin + a.flag1:=a.flag1 or ((__is_editable shl bp_GnomeIconTextItem_is_editable) and bm_GnomeIconTextItem_is_editable); +end; + +function is_text_allocated(var a : TGnomeIconTextItem) : dword; +begin + is_text_allocated:=(a.flag1 and bm_GnomeIconTextItem_is_text_allocated) shr bp_GnomeIconTextItem_is_text_allocated; +end; + +procedure set_is_text_allocated(var a : TGnomeIconTextItem; __is_text_allocated : dword); +begin + a.flag1:=a.flag1 or ((__is_text_allocated shl bp_GnomeIconTextItem_is_text_allocated) and bm_GnomeIconTextItem_is_text_allocated); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeiconlist.inc b/packages/gnome1/src/libgnomeui/gnomeiconlist.inc new file mode 100644 index 0000000000..cd9d791588 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeiconlist.inc @@ -0,0 +1,139 @@ +{$IfDef read_interface} +type + TGnomeIconListMode = (GNOME_ICON_LIST_ICONS,GNOME_ICON_LIST_TEXT_BELOW,GNOME_ICON_LIST_TEXT_RIGHT); + + PGnomeIconList = ^TGnomeIconList; + TGnomeIconList = record + canvas : TGnomeCanvas; + adj : PGtkAdjustment; + hadj : PGtkAdjustment; + icons : longint; + priv : gpointer; + pad3 : longint; + pad4 : longint; + pad5 : longint; + pad6 : longint; + pad7 : longint; + pad8 : longint; + pad9 : gpointer; + pad10 : TGnomeIconListMode; + pad11 : TGtkSelectionMode; + selection : PGList; + pad12 : gpointer; + pad13 : longint; + flag0 : word; + pad16 : longint; + pad17 : gpointer; + pad18 : longint; + pad19 : longint; + pad20 : gdouble; + pad21 : gdouble; + pad22 : gpointer; + pad23 : longint; + pad24 : double; + pad25 : double; + pad26 : gpointer; + end; + GNOME_ICON_LIST = ^TGnomeIconList; + +const + bm_GnomeIconList_pad14 = $1; + bp_GnomeIconList_pad14 = 0; + bm_GnomeIconList_pad15 = $2; + bp_GnomeIconList_pad15 = 1; + +function pad14(var a : TGnomeIconList) : dword; +procedure set_pad14(var a : TGnomeIconList; __pad14 : dword); +function pad15(var a : TGnomeIconList) : dword; +procedure set_pad15(var a : TGnomeIconList; __pad15 : dword); + +type + PGnomeIconListClass = ^TGnomeIconListClass; + TGnomeIconListClass = record + parent_class : TGnomeCanvasClass; + select_icon : procedure (gil:PGnomeIconList; num:gint; event:PGdkEvent);cdecl; + unselect_icon : procedure (gil:PGnomeIconList; num:gint; event:PGdkEvent);cdecl; + text_changed : function (gil:PGnomeIconList; num:gint; new_text:Pchar):gboolean;cdecl; + end; + +const + GNOME_ICON_LIST_IS_EDITABLE = 1; + GNOME_ICON_LIST_STATIC_TEXT = 2; + +function GNOME_TYPE_ICON_LIST : TGTKType; +function GNOME_IS_ICON_LIST(obj : Pointer) : Boolean; +function GNOME_IS_ICON_LIST_CLASS(klass : Pointer) : Boolean; + +function gnome_icon_list_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_icon_list_get_type'; +function gnome_icon_list_new(icon_width:guint; adj:PGtkAdjustment; flags:longint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_icon_list_new'; +function gnome_icon_list_new_flags(icon_width:guint; adj:PGtkAdjustment; flags:longint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_icon_list_new_flags'; +procedure gnome_icon_list_construct(gil:PGnomeIconList; icon_width:guint; adj:PGtkAdjustment; flags:longint);cdecl;external libgnomeuidll name 'gnome_icon_list_construct'; +procedure gnome_icon_list_set_hadjustment(gil:PGnomeIconList; hadj:PGtkAdjustment);cdecl;external libgnomeuidll name 'gnome_icon_list_set_hadjustment'; +procedure gnome_icon_list_set_vadjustment(gil:PGnomeIconList; vadj:PGtkAdjustment);cdecl;external libgnomeuidll name 'gnome_icon_list_set_vadjustment'; +procedure gnome_icon_list_freeze(gil:PGnomeIconList);cdecl;external libgnomeuidll name 'gnome_icon_list_freeze'; +procedure gnome_icon_list_thaw(gil:PGnomeIconList);cdecl;external libgnomeuidll name 'gnome_icon_list_thaw'; +procedure gnome_icon_list_insert(gil:PGnomeIconList; pos:longint; icon_filename:Pchar; thetext:Pchar);cdecl;external libgnomeuidll name 'gnome_icon_list_insert'; +procedure gnome_icon_list_insert_imlib(gil:PGnomeIconList; pos:longint; image:PGdkImlibImage; thetext:Pchar);cdecl;external libgnomeuidll name 'gnome_icon_list_insert_imlib'; +function gnome_icon_list_append(gil:PGnomeIconList; icon_filename:Pchar; thetext:Pchar):longint;cdecl;external libgnomeuidll name 'gnome_icon_list_append'; +function gnome_icon_list_append_imlib(gil:PGnomeIconList; image:PGdkImlibImage; thetext:Pchar):longint;cdecl;external libgnomeuidll name 'gnome_icon_list_append_imlib'; +procedure gnome_icon_list_clear(gil:PGnomeIconList);cdecl;external libgnomeuidll name 'gnome_icon_list_clear'; +procedure gnome_icon_list_remove(gil:PGnomeIconList; pos:longint);cdecl;external libgnomeuidll name 'gnome_icon_list_remove'; +procedure gnome_icon_list_set_selection_mode(gil:PGnomeIconList; mode:TGtkSelectionMode);cdecl;external libgnomeuidll name 'gnome_icon_list_set_selection_mode'; +procedure gnome_icon_list_select_icon(gil:PGnomeIconList; idx:longint);cdecl;external libgnomeuidll name 'gnome_icon_list_select_icon'; +procedure gnome_icon_list_unselect_icon(gil:PGnomeIconList; pos:longint);cdecl;external libgnomeuidll name 'gnome_icon_list_unselect_icon'; +function gnome_icon_list_unselect_all(gil:PGnomeIconList; event:PGdkEvent; keep:gpointer):longint;cdecl;external libgnomeuidll name 'gnome_icon_list_unselect_all'; +procedure gnome_icon_list_set_icon_width(gil:PGnomeIconList; w:longint);cdecl;external libgnomeuidll name 'gnome_icon_list_set_icon_width'; +procedure gnome_icon_list_set_row_spacing(gil:PGnomeIconList; pixels:longint);cdecl;external libgnomeuidll name 'gnome_icon_list_set_row_spacing'; +procedure gnome_icon_list_set_col_spacing(gil:PGnomeIconList; pixels:longint);cdecl;external libgnomeuidll name 'gnome_icon_list_set_col_spacing'; +procedure gnome_icon_list_set_text_spacing(gil:PGnomeIconList; pixels:longint);cdecl;external libgnomeuidll name 'gnome_icon_list_set_text_spacing'; +procedure gnome_icon_list_set_icon_border(gil:PGnomeIconList; pixels:longint);cdecl;external libgnomeuidll name 'gnome_icon_list_set_icon_border'; +procedure gnome_icon_list_set_separators(gil:PGnomeIconList; sep:Pchar);cdecl;external libgnomeuidll name 'gnome_icon_list_set_separators'; +procedure gnome_icon_list_set_icon_data(gil:PGnomeIconList; pos:longint; data:gpointer);cdecl;external libgnomeuidll name 'gnome_icon_list_set_icon_data'; +procedure gnome_icon_list_set_icon_data_full(gil:PGnomeIconList; pos:longint; data:gpointer; destroy:TGtkDestroyNotify);cdecl;external libgnomeuidll name 'gnome_icon_list_set_icon_data_full'; +function gnome_icon_list_find_icon_from_data(gil:PGnomeIconList; data:gpointer):longint;cdecl;external libgnomeuidll name 'gnome_icon_list_find_icon_from_data'; +function gnome_icon_list_get_icon_data(gil:PGnomeIconList; pos:longint):gpointer;cdecl;external libgnomeuidll name 'gnome_icon_list_get_icon_data'; +procedure gnome_icon_list_moveto(gil:PGnomeIconList; pos:longint; yalign:double);cdecl;external libgnomeuidll name 'gnome_icon_list_moveto'; +function gnome_icon_list_icon_is_visible(gil:PGnomeIconList; pos:longint):TGtkVisibility;cdecl;external libgnomeuidll name 'gnome_icon_list_icon_is_visible'; +function gnome_icon_list_get_icon_at(gil:PGnomeIconList; x:longint; y:longint):longint;cdecl;external libgnomeuidll name 'gnome_icon_list_get_icon_at'; +function gnome_icon_list_get_items_per_line(gil:PGnomeIconList):longint;cdecl;external libgnomeuidll name 'gnome_icon_list_get_items_per_line'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_ICON_LIST : TGTKType; +begin + GNOME_TYPE_ICON_LIST:=gnome_icon_list_get_type; +end; + +function GNOME_IS_ICON_LIST(obj : Pointer) : Boolean; +begin + GNOME_IS_ICON_LIST:=(obj<>nil) and GNOME_IS_ICON_LIST_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_ICON_LIST_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_ICON_LIST_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_ICON_LIST); +end; + +function pad14(var a : TGnomeIconList) : dword; +begin + pad14:=(a.flag0 and bm_GnomeIconList_pad14) shr bp_GnomeIconList_pad14; +end; + +procedure set_pad14(var a : TGnomeIconList; __pad14 : dword); +begin + a.flag0:=a.flag0 or ((__pad14 shl bp_GnomeIconList_pad14) and bm_GnomeIconList_pad14); +end; + +function pad15(var a : TGnomeIconList) : dword; +begin + pad15:=(a.flag0 and bm_GnomeIconList_pad15) shr bp_GnomeIconList_pad15; +end; + +procedure set_pad15(var a : TGnomeIconList; __pad15 : dword); +begin + a.flag0:=a.flag0 or ((__pad15 shl bp_GnomeIconList_pad15) and bm_GnomeIconList_pad15); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeiconsel.inc b/packages/gnome1/src/libgnomeui/gnomeiconsel.inc new file mode 100644 index 0000000000..513a843041 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeiconsel.inc @@ -0,0 +1,53 @@ +{$IfDef read_interface} + +type + PGnomeIconSelection = ^TGnomeIconSelection; + TGnomeIconSelection = record + vbox : TGtkVBox; + box : PGtkWidget; + gil : PGtkWidget; + file_list : PGList; + stop_loading : longint; + end; + GNOME_ICON_SELECTION = PGnomeIconSelection; + + PGnomeIconSelectionClass = ^TGnomeIconSelectionClass; + TGnomeIconSelectionClass = record + parent_class : TGtkVBoxClass; + end; + GNOME_ICON_SELECTION_CLASS = PGnomeIconSelectionClass; + +function GNOME_TYPE_ICON_SELECTION : TGTKType; +function GNOME_IS_ICON_SELECTION(obj : Pointer) : Boolean; +function GNOME_IS_ICON_SELECTION_CLASS(klass : Pointer) : Boolean; + +function gnome_icon_selection_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_icon_selection_get_type'; +function gnome_icon_selection_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_icon_selection_new'; +procedure gnome_icon_selection_add_defaults(gis:PGnomeIconSelection);cdecl;external libgnomeuidll name 'gnome_icon_selection_add_defaults'; +procedure gnome_icon_selection_add_directory(gis:PGnomeIconSelection; dir:Pgchar);cdecl;external libgnomeuidll name 'gnome_icon_selection_add_directory'; +procedure gnome_icon_selection_show_icons(gis:PGnomeIconSelection);cdecl;external libgnomeuidll name 'gnome_icon_selection_show_icons'; +procedure gnome_icon_selection_clear(gis:PGnomeIconSelection; not_shown:gboolean);cdecl;external libgnomeuidll name 'gnome_icon_selection_clear'; +function gnome_icon_selection_get_icon(gis:PGnomeIconSelection; full_path:gboolean):Pgchar;cdecl;external libgnomeuidll name 'gnome_icon_selection_get_icon'; +procedure gnome_icon_selection_select_icon(gis:PGnomeIconSelection; filename:Pgchar);cdecl;external libgnomeuidll name 'gnome_icon_selection_select_icon'; +procedure gnome_icon_selection_stop_loading(gis:PGnomeIconSelection);cdecl;external libgnomeuidll name 'gnome_icon_selection_stop_loading'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_ICON_SELECTION : TGTKType; +begin + GNOME_TYPE_ICON_SELECTION:=gnome_icon_selection_get_type; +end; + +function GNOME_IS_ICON_SELECTION(obj : Pointer) : Boolean; +begin + GNOME_IS_ICON_SELECTION:=(obj<>nil) and GNOME_IS_ICON_SELECTION_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_ICON_SELECTION_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_ICON_SELECTION_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_ICON_SELECTION); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeicontext.inc b/packages/gnome1/src/libgnomeui/gnomeicontext.inc new file mode 100644 index 0000000000..92b5d779cc --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeicontext.inc @@ -0,0 +1,30 @@ +{$IfDef read_interface} + +type + PGnomeIconTextInfoRow = ^TGnomeIconTextInfoRow; + TGnomeIconTextInfoRow = record + thetext : Pgchar; + width : gint; + text_wc : PGdkWChar; + text_length : gint; + end; + + PGnomeIconTextInfo = ^TGnomeIconTextInfo; + TGnomeIconTextInfo = record + rows : PGList; + font : PGdkFont; + width : gint; + height : gint; + baseline_skip : gint; + end; + +function gnome_icon_layout_text(font:PGdkFont; theetext:Pgchar; separators:Pgchar; max_width:gint; confine:gboolean):PGnomeIconTextInfo;cdecl;external libgnomeuidll name 'gnome_icon_layout_text'; +procedure gnome_icon_paint_text(ti:PGnomeIconTextInfo; drawable:PGdkDrawable; gc:PGdkGC; x:gint; y:gint; + just:TGtkJustification);cdecl;external libgnomeuidll name 'gnome_icon_paint_text'; +procedure gnome_icon_text_info_free(ti:PGnomeIconTextInfo);cdecl;external libgnomeuidll name 'gnome_icon_text_info_free'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeinit.inc b/packages/gnome1/src/libgnomeui/gnomeinit.inc new file mode 100644 index 0000000000..4d4ed5e8cb --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeinit.inc @@ -0,0 +1,14 @@ +{$IfDef read_interface} + + +function gnome_init(app_id:Pchar; app_version:Pchar; argc:longint; argv:PPchar):longint;cdecl;external libgnomeuidll name 'gnome_init'; + +(* function gnome_init_with_popt_table(app_id:Pchar; app_version:Pchar; argc:longint; argv:PPchar; options:PpoptOption; + flags:longint; return_ctx:PpoptContext):longint;cdecl;external libgnomeuidll name 'gnome_init_with_popt_table';*) + +{$EndIf read_interface} + +{$Ifdef read_implementation} + + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomemdi.inc b/packages/gnome1/src/libgnomeui/gnomemdi.inc new file mode 100644 index 0000000000..664740defd --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomemdi.inc @@ -0,0 +1,111 @@ +{$IfDef read_interface} + +type + TGnomeMDIMode = (GNOME_MDI_NOTEBOOK,GNOME_MDI_TOPLEVEL, + GNOME_MDI_MODAL,GNOME_MDI_DEFAULT_MODE := 42); + + PGnomeMDI = ^TGnomeMDI; + TGnomeMDI = record + theobject : TGtkObject; + mode : TGnomeMDIMode; + tab_pos : TGtkPositionType; + signal_id : guint; + flag0 : word; + appname : Pgchar; + title : Pgchar; + menu_template : PGnomeUIInfo; + toolbar_template : PGnomeUIInfo; + active_child : PGnomeMDIChild; + active_view : PGtkWidget; + active_window : PGnomeApp; + windows : PGList; + children : PGList; + registered : PGSList; + child_menu_path : Pgchar; + child_list_path : Pgchar; + end; + GNOME_MDI = PGnomeMDI; + +const + bm__GnomeMDI_in_drag = $1; + bp__GnomeMDI_in_drag = 0; +function in_drag(var a : TGnomeMDI) : gint; +procedure set_in_drag(var a : TGnomeMDI; __in_drag : gint); + +type + PGnomeMDIClass = ^TGnomeMDIClass; + TGnomeMDIClass = record + parent_class : TGtkObjectClass; + add_child : function (_para1:PGnomeMDI; _para2:PGnomeMDIChild):gint;cdecl; + remove_child : function (_para1:PGnomeMDI; _para2:PGnomeMDIChild):gint;cdecl; + add_view : function (_para1:PGnomeMDI; _para2:PGtkWidget):gint;cdecl; + remove_view : function (_para1:PGnomeMDI; _para2:PGtkWidget):gint;cdecl; + child_changed : procedure (_para1:PGnomeMDI; _para2:PGnomeMDIChild);cdecl; + view_changed : procedure (_para1:PGnomeMDI; _para2:PGtkWidget);cdecl; + app_created : procedure (_para1:PGnomeMDI; _para2:PGnomeApp);cdecl; + end; + GNOME_MDI_CLASS = PGnomeMDIClass; + +function GNOME_TYPE_MDI : TGTKType; +function GNOME_IS_MDI(obj : Pointer) : Boolean; +function GNOME_IS_MDI_CLASS(klass : Pointer) : Boolean; + +function gnome_mdi_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_mdi_get_type'; +function gnome_mdi_new(appname:Pgchar; title:Pgchar):PGtkObject;cdecl;external libgnomeuidll name 'gnome_mdi_new'; +procedure gnome_mdi_set_mode(mdi:PGnomeMDI; mode:TGnomeMDIMode);cdecl;external libgnomeuidll name 'gnome_mdi_set_mode'; +procedure gnome_mdi_set_menubar_template(mdi:PGnomeMDI; menu_tmpl:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_mdi_set_menubar_template'; +procedure gnome_mdi_set_toolbar_template(mdi:PGnomeMDI; tbar_tmpl:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_mdi_set_toolbar_template'; +procedure gnome_mdi_set_child_menu_path(mdi:PGnomeMDI; path:Pgchar);cdecl;external libgnomeuidll name 'gnome_mdi_set_child_menu_path'; +procedure gnome_mdi_set_child_list_path(mdi:PGnomeMDI; path:Pgchar);cdecl;external libgnomeuidll name 'gnome_mdi_set_child_list_path'; +function gnome_mdi_add_view(mdi:PGnomeMDI; child:PGnomeMDIChild):gint;cdecl;external libgnomeuidll name 'gnome_mdi_add_view'; +function gnome_mdi_add_toplevel_view(mdi:PGnomeMDI; child:PGnomeMDIChild):gint;cdecl;external libgnomeuidll name 'gnome_mdi_add_toplevel_view'; +function gnome_mdi_remove_view(mdi:PGnomeMDI; view:PGtkWidget; force:gint):gint;cdecl;external libgnomeuidll name 'gnome_mdi_remove_view'; +function gnome_mdi_get_active_view(mdi:PGnomeMDI):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_mdi_get_active_view'; +procedure gnome_mdi_set_active_view(mdi:PGnomeMDI; view:PGtkWidget);cdecl;external libgnomeuidll name 'gnome_mdi_set_active_view'; +function gnome_mdi_add_child(mdi:PGnomeMDI; child:PGnomeMDIChild):gint;cdecl;external libgnomeuidll name 'gnome_mdi_add_child'; +function gnome_mdi_remove_child(mdi:PGnomeMDI; child:PGnomeMDIChild; force:gint):gint;cdecl;external libgnomeuidll name 'gnome_mdi_remove_child'; +function gnome_mdi_remove_all(mdi:PGnomeMDI; force:gint):gint;cdecl;external libgnomeuidll name 'gnome_mdi_remove_all'; +procedure gnome_mdi_open_toplevel(mdi:PGnomeMDI);cdecl;external libgnomeuidll name 'gnome_mdi_open_toplevel'; +procedure gnome_mdi_update_child(mdi:PGnomeMDI; child:PGnomeMDIChild);cdecl;external libgnomeuidll name 'gnome_mdi_update_child'; +function gnome_mdi_get_active_child(mdi:PGnomeMDI):PGnomeMDIChild;cdecl;external libgnomeuidll name 'gnome_mdi_get_active_child'; +function gnome_mdi_find_child(mdi:PGnomeMDI; name:Pgchar):PGnomeMDIChild;cdecl;external libgnomeuidll name 'gnome_mdi_find_child'; +function gnome_mdi_get_active_window(mdi:PGnomeMDI):PGnomeApp;cdecl;external libgnomeuidll name 'gnome_mdi_get_active_window'; +procedure gnome_mdi_register(mdi:PGnomeMDI; theobject:PGtkObject);cdecl;external libgnomeuidll name 'gnome_mdi_register'; +procedure gnome_mdi_unregister(mdi:PGnomeMDI; theobject:PGtkObject);cdecl;external libgnomeuidll name 'gnome_mdi_unregister'; +function gnome_mdi_get_app_from_view(view:PGtkWidget):PGnomeApp;cdecl;external libgnomeuidll name 'gnome_mdi_get_app_from_view'; +function gnome_mdi_get_child_from_view(view:PGtkWidget):PGnomeMDIChild;cdecl;external libgnomeuidll name 'gnome_mdi_get_child_from_view'; +function gnome_mdi_get_view_from_window(mdi:PGnomeMDI; app:PGnomeApp):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_mdi_get_view_from_window'; +function gnome_mdi_get_menubar_info(app:PGnomeApp):PGnomeUIInfo;cdecl;external libgnomeuidll name 'gnome_mdi_get_menubar_info'; +function gnome_mdi_get_toolbar_info(app:PGnomeApp):PGnomeUIInfo;cdecl;external libgnomeuidll name 'gnome_mdi_get_toolbar_info'; +function gnome_mdi_get_child_menu_info(app:PGnomeApp):PGnomeUIInfo;cdecl;external libgnomeuidll name 'gnome_mdi_get_child_menu_info'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_MDI : TGTKType; +begin + GNOME_TYPE_MDI:=gnome_mdi_get_type; +end; + +function GNOME_IS_MDI(obj : Pointer) : Boolean; +begin + GNOME_IS_MDI:=(obj<>nil) and GNOME_IS_MDI_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_MDI_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_MDI_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_MDI); +end; + +function in_drag(var a : TGnomeMDI) : gint; +begin + in_drag:=(a.flag0 and bm__GnomeMDI_in_drag) shr bp__GnomeMDI_in_drag; +end; + +procedure set_in_drag(var a : TGnomeMDI; __in_drag : gint); +begin + a.flag0:=a.flag0 or ((__in_drag shl bp__GnomeMDI_in_drag) and bm__GnomeMDI_in_drag); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomemdichild.inc b/packages/gnome1/src/libgnomeui/gnomemdichild.inc new file mode 100644 index 0000000000..13fae094e5 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomemdichild.inc @@ -0,0 +1,58 @@ +{$IfDef read_interface} + +type + TGnomeMDIChildViewCreator = Function : PGtkWidget; cdecl; + TGnomeMDIChildMenuCreator = Function : PGList; cdecl; + TGnomeMDIChildConfigFunc = Function : Pgchar; cdecl; + TGnomeMDIChildLabelFunc = Function : PGtkWidget; cdecl; + + PGnomeMDIChild = ^TGnomeMDIChild; + TGnomeMDIChild = record + theobject : TGtkObject; + parent : PGtkObject; + name : Pgchar; + views : PGList; + menu_template : PGnomeUIInfo; + end; + GNOME_MDI_CHILD = PGnomeMDIChild; + + PGnomeMDIChildClass = ^TGnomeMDIChildClass; + TGnomeMDIChildClass = record + parent_class : TGtkObjectClass; + create_view : TGnomeMDIChildViewCreator; + create_menus : TGnomeMDIChildMenuCreator; + get_config_string : TGnomeMDIChildConfigFunc; + set_label : TGnomeMDIChildLabelFunc; + end; + GNOME_MDI_CHILD_CLASS = PGnomeMDIChildClass; + +function GNOME_TYPE_MDI_CHILD : TGTKType; +function GNOME_IS_MDI_CHILD(obj : Pointer) : Boolean; +function GNOME_IS_MDI_CHILD_CLASS(klass : Pointer) : Boolean; + +function gnome_mdi_child_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_mdi_child_get_type'; +function gnome_mdi_child_add_view(mdi_child:PGnomeMDIChild):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_mdi_child_add_view'; +procedure gnome_mdi_child_remove_view(mdi_child:PGnomeMDIChild; view:PGtkWidget);cdecl;external libgnomeuidll name 'gnome_mdi_child_remove_view'; +procedure gnome_mdi_child_set_name(mdi_child:PGnomeMDIChild; name:Pgchar);cdecl;external libgnomeuidll name 'gnome_mdi_child_set_name'; +procedure gnome_mdi_child_set_menu_template(mdi_child:PGnomeMDIChild; menu_tmpl:PGnomeUIInfo);cdecl;external libgnomeuidll name 'gnome_mdi_child_set_menu_template'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_MDI_CHILD : TGTKType; +begin + GNOME_TYPE_MDI_CHILD:=gnome_mdi_child_get_type; +end; + +function GNOME_IS_MDI_CHILD(obj : Pointer) : Boolean; +begin + GNOME_IS_MDI_CHILD:=(obj<>nil) and GNOME_IS_MDI_CHILD_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_MDI_CHILD_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_MDI_CHILD_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_MDI_CHILD); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomemdigenericchild.inc b/packages/gnome1/src/libgnomeui/gnomemdigenericchild.inc new file mode 100644 index 0000000000..bf416259f7 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomemdigenericchild.inc @@ -0,0 +1,66 @@ +{$IfDef read_interface} + +type + PGnomeMDIGenericChild = ^TGnomeMDIGenericChild; + TGnomeMDIGenericChild = record + mdi_child : TGnomeMDIChild; + create_view : TGnomeMDIChildViewCreator; + create_menus : TGnomeMDIChildMenuCreator; + get_config_string : TGnomeMDIChildConfigFunc; + set_label : TGnomeMDIChildLabelFunc; + create_view_cbm : TGtkCallbackMarshal; + create_menus_cbm : TGtkCallbackMarshal; + get_config_string_cbm : TGtkCallbackMarshal; + set_label_cbm : TGtkCallbackMarshal; + create_view_dn : TGtkDestroyNotify; + create_menus_dn : TGtkDestroyNotify; + get_config_string_dn : TGtkDestroyNotify; + set_label_dn : TGtkDestroyNotify; + create_view_data : gpointer; + create_menus_data : gpointer; + get_config_string_data : gpointer; + set_label_data : gpointer; + end; + GNOME_MDI_GENERIC_CHILD = PGnomeMDIGenericChild; + + PGnomeMDIGenericChildClass = ^TGnomeMDIGenericChildClass; + TGnomeMDIGenericChildClass = record + parent_class : TGnomeMDIChildClass; + end; + GNOME_MDI_GENERIC_CHILD_CLASS = PGnomeMDIGenericChildClass; + +function GNOME_TYPE_MDI_GENERIC_CHILD : TGTKType; +function GNOME_IS_MDI_GENERIC_CHILD(obj : Pointer) : Boolean; +function GNOME_IS_MDI_GENERIC_CHILD_CLASS(klass : Pointer) : Boolean; + +function gnome_mdi_generic_child_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_get_type'; +function gnome_mdi_generic_child_new(name:Pgchar):PGnomeMDIGenericChild;cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_new'; +procedure gnome_mdi_generic_child_set_view_creator(child:PGnomeMDIGenericChild; func:TGnomeMDIChildViewCreator; data:gpointer);cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_set_view_creator'; +procedure gnome_mdi_generic_child_set_view_creator_full(child:PGnomeMDIGenericChild; func:TGnomeMDIChildViewCreator; marshal:TGtkCallbackMarshal; data:gpointer; notify:TGtkDestroyNotify);cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_set_view_creator_full'; +procedure gnome_mdi_generic_child_set_menu_creator(child:PGnomeMDIGenericChild; func:TGnomeMDIChildMenuCreator; data:gpointer);cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_set_menu_creator'; +procedure gnome_mdi_generic_child_set_menu_creator_full(child:PGnomeMDIGenericChild; func:TGnomeMDIChildMenuCreator; marshal:TGtkCallbackMarshal; data:gpointer; notify:TGtkDestroyNotify);cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_set_menu_creator_full'; +procedure gnome_mdi_generic_child_set_config_func(child:PGnomeMDIGenericChild; func:TGnomeMDIChildConfigFunc; data:gpointer);cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_set_config_func'; +procedure gnome_mdi_generic_child_set_config_func_full(child:PGnomeMDIGenericChild; func:TGnomeMDIChildConfigFunc; marshal:TGtkCallbackMarshal; data:gpointer; notify:TGtkDestroyNotify);cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_set_config_func_full'; +procedure gnome_mdi_generic_child_set_label_func(child:PGnomeMDIGenericChild; func:TGnomeMDIChildLabelFunc; data:gpointer);cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_set_label_func'; +procedure gnome_mdi_generic_child_set_label_func_full(child:PGnomeMDIGenericChild; func:TGnomeMDIChildLabelFunc; marshal:TGtkCallbackMarshal; data:gpointer; notify:TGtkDestroyNotify);cdecl;external libgnomeuidll name 'gnome_mdi_generic_child_set_label_func_full'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_MDI_GENERIC_CHILD : TGTKType; +begin + GNOME_TYPE_MDI_GENERIC_CHILD:=gnome_mdi_generic_child_get_type; +end; + +function GNOME_IS_MDI_GENERIC_CHILD(obj : Pointer) : Boolean; +begin + GNOME_IS_MDI_GENERIC_CHILD:=(obj<>nil) and GNOME_IS_MDI_GENERIC_CHILD_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_MDI_GENERIC_CHILD_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_MDI_GENERIC_CHILD_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_MDI_GENERIC_CHILD); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomemdisession.inc b/packages/gnome1/src/libgnomeui/gnomemdisession.inc new file mode 100644 index 0000000000..c4e42fe168 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomemdisession.inc @@ -0,0 +1,12 @@ +{$IfDef read_interface} +type + TGnomeMDIChildCreator = Function (const name : gchar) : TGnomeMDIChild; cdecl; + +function gnome_mdi_restore_state(mdi:PGnomeMDI; section:Pgchar; child_create_func:TGnomeMDIChildCreator):gboolean;cdecl;external libgnomeuidll name 'gnome_mdi_restore_state'; +procedure gnome_mdi_save_state(mdi:PGnomeMDI; section:Pgchar);cdecl;external libgnomeuidll name 'gnome_mdi_save_state'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomemessagebox.inc b/packages/gnome1/src/libgnomeui/gnomemessagebox.inc new file mode 100644 index 0000000000..7641039480 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomemessagebox.inc @@ -0,0 +1,49 @@ +{$IfDef read_interface} +const + GNOME_MESSAGE_BOX_INFO = 'info'; + GNOME_MESSAGE_BOX_WARNING = 'warning'; + GNOME_MESSAGE_BOX_ERROR = 'error'; + GNOME_MESSAGE_BOX_QUESTION = 'question'; + GNOME_MESSAGE_BOX_GENERIC = 'generic'; + +type + PGnomeMessageBox = ^TGnomeMessageBox; + TGnomeMessageBox = record + dialog : TGnomeDialog; + end; + GNOME_MESSAGE_BOX = PGnomeMessageBox; + + PGnomeMessageBoxClass = ^TGnomeMessageBoxClass; + TGnomeMessageBoxClass = record + parent_class : TGnomeDialogClass; + end; + GNOME_MESSAGE_BOX_CLASS = PGnomeMessageBoxClass; + +function GNOME_TYPE_MESSAGE_BOX : TGTKType; +function GNOME_IS_MESSAGE_BOX(obj : Pointer) : Boolean; +function GNOME_IS_MESSAGE_BOX_CLASS(klass : Pointer) : Boolean; + +function gnome_message_box_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_message_box_get_type'; +function gnome_message_box_new(message:Pgchar; messagebox_type:Pgchar; args:array of const):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_message_box_new'; +function gnome_message_box_newv(message:Pgchar; messagebox_type:Pgchar; buttons:PPgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_message_box_newv'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_MESSAGE_BOX : TGTKType; +begin + GNOME_TYPE_MESSAGE_BOX:=gnome_message_box_get_type; +end; + +function GNOME_IS_MESSAGE_BOX(obj : Pointer) : Boolean; +begin + GNOME_IS_MESSAGE_BOX:=(obj<>nil) and GNOME_IS_MESSAGE_BOX_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_MESSAGE_BOX_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_MESSAGE_BOX_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_MESSAGE_BOX); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomenumberentry.inc b/packages/gnome1/src/libgnomeui/gnomenumberentry.inc new file mode 100644 index 0000000000..2806bf785f --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomenumberentry.inc @@ -0,0 +1,50 @@ +{$IfDef read_interface} +Type + PGnomenumberEntry = ^TGnomeNumberEntry; + TGnomeNumberEntry = record + hbox : TGtkHBox; + calc_dialog_title : Pgchar; + calc_dlg : PGtkWidget; + gentry : PGtkWidget; + end; + GNOME_NUMBER_ENTRY = PGnomeNumberEntry; + + PGnomenumberEntryClass = ^TGnomeNumberEntryClass; + TGnomeNumberEntryClass = record + parent_class : TGtkHBoxClass; + end; + + GNOME_NUMBER_ENTRY_CLASS = PGnomeNumberEntryClass; + + +function GNOME_TYPE_NUMBER_ENTRY : TGTKType; +function GNOME_IS_NUMBER_ENTRY(obj : Pointer) : Boolean; +function GNOME_IS_NUMBER_ENTRY_CLASS(klass : Pointer) : Boolean; + +function gnome_number_entry_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_number_entry_get_type'; +function gnome_number_entry_new(history_id:Pgchar; calc_dialog_title:Pgchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_number_entry_new'; +function gnome_number_entry_gnome_entry(nentry:PGnomeNumberEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_number_entry_gnome_entry'; +function gnome_number_entry_gtk_entry(nentry:PGnomeNumberEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_number_entry_gtk_entry'; +procedure gnome_number_entry_set_title(nentry:PGnomeNumberEntry; calc_dialog_title:Pgchar);cdecl;external libgnomeuidll name 'gnome_number_entry_set_title'; +function gnome_number_entry_get_number(nentry:PGnomeNumberEntry):gdouble;cdecl;external libgnomeuidll name 'gnome_number_entry_get_number'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_NUMBER_ENTRY : TGTKType; +begin + GNOME_TYPE_NUMBER_ENTRY:=gnome_number_entry_get_type; +end; + +function GNOME_IS_NUMBER_ENTRY(obj : Pointer) : Boolean; +begin + GNOME_IS_NUMBER_ENTRY:=(obj<>nil) and GNOME_IS_NUMBER_ENTRY_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_NUMBER_ENTRY_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_NUMBER_ENTRY_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_NUMBER_ENTRY); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomepaperselector.inc b/packages/gnome1/src/libgnomeui/gnomepaperselector.inc new file mode 100644 index 0000000000..140c5319d8 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomepaperselector.inc @@ -0,0 +1,60 @@ +{$IfDef read_interface} + +type + PGnomePaperSelector = ^TGnomePaperSelector; + TGnomePaperSelector = record + vbox : TGtkVBox; + paper : PGtkWidget; + width : PGtkWidget; + height : PGtkWidget; + theunit : PGtkWidget; + unit_label : PGtkWidget; + paper_id : gint; + width_id : gint; + height_id : gint; + end; + GNOME_PAPER_SELECTOR = PGnomePaperSelector; + + PGnomePaperSelectorClass = ^TGnomePaperSelectorClass; + TGnomePaperSelectorClass = record + parent_class : TGtkVBoxClass; + end; + GNOME_PAPER_SELECTOR_CLASS = PGnomePaperSelectorClass; + +function GNOME_TYPE_PAPER_SELECTOR : TGTKType; +function GNOME_IS_PAPER_SELECTOR(obj : Pointer) : Boolean; +function GNOME_IS_PAPER_SELECTOR_CLASS(klass : Pointer) : Boolean; + +function gnome_paper_selector_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_paper_selector_get_type'; +function gnome_paper_selector_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_paper_selector_new'; +function gnome_paper_selector_get_name(gspaper:PGnomePaperSelector):Pgchar;cdecl;external libgnomeuidll name 'gnome_paper_selector_get_name'; +function gnome_paper_selector_get_width(gspaper:PGnomePaperSelector):gfloat;cdecl;external libgnomeuidll name 'gnome_paper_selector_get_width'; +function gnome_paper_selector_get_height(gspaper:PGnomePaperSelector):gfloat;cdecl;external libgnomeuidll name 'gnome_paper_selector_get_height'; +function gnome_paper_selector_get_left_margin(gspaper:PGnomePaperSelector):gfloat;cdecl;external libgnomeuidll name 'gnome_paper_selector_get_left_margin'; +function gnome_paper_selector_get_right_margin(gspaper:PGnomePaperSelector):gfloat;cdecl;external libgnomeuidll name 'gnome_paper_selector_get_right_margin'; +function gnome_paper_selector_get_top_margin(gspaper:PGnomePaperSelector):gfloat;cdecl;external libgnomeuidll name 'gnome_paper_selector_get_top_margin'; +function gnome_paper_selector_get_bottom_margin(gspaper:PGnomePaperSelector):gfloat;cdecl;external libgnomeuidll name 'gnome_paper_selector_get_bottom_margin'; +procedure gnome_paper_selector_set_name(gspaper:PGnomePaperSelector; name:Pgchar);cdecl;external libgnomeuidll name 'gnome_paper_selector_set_name'; +procedure gnome_paper_selector_set_width(gspaper:PGnomePaperSelector; width:gfloat);cdecl;external libgnomeuidll name 'gnome_paper_selector_set_width'; +procedure gnome_paper_selector_set_height(gspaper:PGnomePaperSelector; height:gfloat);cdecl;external libgnomeuidll name 'gnome_paper_selector_set_height'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_PAPER_SELECTOR : TGTKType; +begin + GNOME_TYPE_PAPER_SELECTOR:=gnome_paper_selector_get_type; +end; + +function GNOME_IS_PAPER_SELECTOR(obj : Pointer) : Boolean; +begin + GNOME_IS_PAPER_SELECTOR:=(obj<>nil) and GNOME_IS_PAPER_SELECTOR_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_PAPER_SELECTOR_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_PAPER_SELECTOR_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_PAPER_SELECTOR); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomepixmap.inc b/packages/gnome1/src/libgnomeui/gnomepixmap.inc new file mode 100644 index 0000000000..4d405da22a --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomepixmap.inc @@ -0,0 +1,69 @@ +{$IfDef read_interface} +type + PGnomePixmap = ^TGnomePixmap; + TGnomePixmap = record + widget : TGtkWidget; + pixmap : PGdkPixmap; + mask : PGdkBitmap; + end; + GNOME_PIXMAP = PGnomePixmap; + + PGnomePixmapClass = ^TGnomePixmapClass; + TGnomePixmapClass = record + parent_class : TGtkWidgetClass; + end; + GNOME_PIXMAP_CLASS = PGnomePixmapClass; + +function GNOME_TYPE_PIXMAP : TGtkType; + +function GNOME_IS_PIXMAP(obj : pointer) : gboolean; +function GNOME_IS_PIXMAP_CLASS(klass : pointer) : gboolean; + +function gnome_pixmap_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_pixmap_get_type'; +function gnome_pixmap_new_from_file(filename:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_file'; +function gnome_pixmap_new_from_file_at_size(filename:Pchar; width:longint; height:longint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_file_at_size'; +function gnome_pixmap_new_from_xpm_d(xpm_data:PPchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_xpm_d'; +function gnome_pixmap_new_from_xpm_d_at_size(xpm_data:PPchar; width:longint; height:longint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_xpm_d_at_size'; +function gnome_pixmap_new_from_rgb_d(data:Pbyte; alpha:Pbyte; rgb_width:longint; rgb_height:longint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_rgb_d'; +function gnome_pixmap_new_from_rgb_d_shaped(data:Pbyte; alpha:Pbyte; rgb_width:longint; rgb_height:longint; shape_color:PGdkImlibColor):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_rgb_d_shaped'; +function gnome_pixmap_new_from_rgb_d_shaped_at_size(data:Pbyte; alpha:Pbyte; rgb_width:longint; rgb_height:longint; width:longint; + height:longint; shape_color:PGdkImlibColor):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_rgb_d_shaped_at_size'; +function gnome_pixmap_new_from_rgb_d_at_size(data:Pbyte; alpha:Pbyte; rgb_width:longint; rgb_height:longint; width:longint; + height:longint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_rgb_d_at_size'; +function gnome_pixmap_new_from_gnome_pixmap(gpixmap:PGnomePixmap):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_gnome_pixmap'; +function gnome_pixmap_new_from_imlib(image:PGdkImlibImage):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_imlib'; +function gnome_pixmap_new_from_imlib_at_size(image:PGdkImlibImage; width:longint; height:longint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_new_from_imlib_at_size'; +procedure gnome_pixmap_load_file(gpixmap:PGnomePixmap; filename:Pchar);cdecl;external libgnomeuidll name 'gnome_pixmap_load_file'; +procedure gnome_pixmap_load_file_at_size(gpixmap:PGnomePixmap; filename:Pchar; width:longint; height:longint);cdecl;external libgnomeuidll name 'gnome_pixmap_load_file_at_size'; +procedure gnome_pixmap_load_xpm_d(gpixmap:PGnomePixmap; xpm_data:PPchar);cdecl;external libgnomeuidll name 'gnome_pixmap_load_xpm_d'; +procedure gnome_pixmap_load_xpm_d_at_size(gpixmap:PGnomePixmap; xpm_data:PPchar; width:longint; height:longint);cdecl;external libgnomeuidll name 'gnome_pixmap_load_xpm_d_at_size'; +procedure gnome_pixmap_load_rgb_d(gpixmap:PGnomePixmap; data:Pbyte; alpha:Pbyte; rgb_width:longint; rgb_height:longint);cdecl;external libgnomeuidll name 'gnome_pixmap_load_rgb_d'; +procedure gnome_pixmap_load_rgb_d_shaped(gpixmap:PGnomePixmap; data:Pbyte; alpha:Pbyte; rgb_width:longint; rgb_height:longint; + shape_color:PGdkImlibColor);cdecl;external libgnomeuidll name 'gnome_pixmap_load_rgb_d_shaped'; +procedure gnome_pixmap_load_rgb_d_shaped_at_size(gpixmap:PGnomePixmap; data:Pbyte; alpha:Pbyte; rgb_width:longint; rgb_height:longint; + width:longint; height:longint; shape_color:PGdkImlibColor);cdecl;external libgnomeuidll name 'gnome_pixmap_load_rgb_d_shaped_at_size'; +procedure gnome_pixmap_load_rgb_d_at_size(gpixmap:PGnomePixmap; data:Pbyte; alpha:Pbyte; rgb_width:longint; rgb_height:longint; + width:longint; height:longint);cdecl;external libgnomeuidll name 'gnome_pixmap_load_rgb_d_at_size'; +procedure gnome_pixmap_load_imlib(gpixmap:PGnomePixmap; image:PGdkImlibImage);cdecl;external libgnomeuidll name 'gnome_pixmap_load_imlib'; +procedure gnome_pixmap_load_imlib_at_size(gpixmap:PGnomePixmap; image:PGdkImlibImage; width:longint; height:longint);cdecl;external libgnomeuidll name 'gnome_pixmap_load_imlib_at_size'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_PIXMAP : TGTKType; +begin + GNOME_TYPE_PIXMAP:=gnome_pixmap_get_type; +end; + +function GNOME_IS_PIXMAP(obj : Pointer) : gBoolean; +begin + GNOME_IS_PIXMAP:=(obj<>nil) and GNOME_IS_PIXMAP_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_PIXMAP_CLASS(klass : Pointer) : gBoolean; +begin + GNOME_IS_PIXMAP_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_PIXMAP); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomepixmapentry.inc b/packages/gnome1/src/libgnomeui/gnomepixmapentry.inc new file mode 100644 index 0000000000..df09cf6fbe --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomepixmapentry.inc @@ -0,0 +1,56 @@ +{$IfDef read_interface} +Type + PGnomePixmapEntry = ^TGnomeNumberEntry; + TGnomePixmapEntry = record + vbox : TGtkVBox; + fentry : PGtkWidget; + do_preview : gboolean; + preview : PGtkWidget; + preview_sw : PGtkWidget; + last_preview : Pgchar; + end; + GNOME_PIXMAP_ENTRY = PGnomeNumberEntry; + + PGnomePixmapEntryClass = ^TGnomePixmapEntryClass; + TGnomePixmapEntryClass = record + parent_class : TGtkVBoxClass; + end; + GNOME_PIXMAP_ENTRY_CLASS = PGnomePixmapEntryClass; + + +function GNOME_TYPE_PIXMAP_ENTRY : TGTKType; +function GNOME_IS_PIXMAP_ENTRY(obj : Pointer) : Boolean; +function GNOME_IS_PIXMAP_ENTRY_CLASS(klass : Pointer) : Boolean; + + +function gnome_pixmap_entry_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_pixmap_entry_get_type'; +function gnome_pixmap_entry_new(history_id:Pgchar; browse_dialog_title:Pgchar; do_preview:gboolean):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_entry_new'; +procedure gnome_pixmap_entry_construct(gentry:PGnomePixmapEntry; history_id:Pgchar; browse_dialog_title:Pgchar; do_preview:gboolean);cdecl;external libgnomeuidll name 'gnome_pixmap_entry_construct'; +procedure gnome_pixmap_entry_set_pixmap_subdir(pentry:PGnomePixmapEntry; subdir:Pgchar);cdecl;external libgnomeuidll name 'gnome_pixmap_entry_set_pixmap_subdir'; +function gnome_pixmap_entry_gnome_file_entry(pentry:PGnomePixmapEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_entry_gnome_file_entry'; +function gnome_pixmap_entry_gnome_entry(pentry:PGnomePixmapEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_entry_gnome_entry'; +function gnome_pixmap_entry_gtk_entry(pentry:PGnomePixmapEntry):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_entry_gtk_entry'; +procedure gnome_pixmap_entry_set_preview(pentry:PGnomePixmapEntry; do_preview:gboolean);cdecl;external libgnomeuidll name 'gnome_pixmap_entry_set_preview'; +procedure gnome_pixmap_entry_set_preview_size(pentry:PGnomePixmapEntry; preview_w:gint; preview_h:gint);cdecl;external libgnomeuidll name 'gnome_pixmap_entry_set_preview_size'; +function gnome_pixmap_entry_get_filename(pentry:PGnomePixmapEntry):Pgchar;cdecl;external libgnomeuidll name 'gnome_pixmap_entry_get_filename'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_PIXMAP_ENTRY : TGTKType; +begin + GNOME_TYPE_PIXMAP_ENTRY:=gnome_pixmap_entry_get_type; +end; + +function GNOME_IS_PIXMAP_ENTRY(obj : Pointer) : Boolean; +begin + GNOME_IS_PIXMAP_ENTRY:=(obj<>nil) and GNOME_IS_PIXMAP_ENTRY_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_PIXMAP_ENTRY_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_PIXMAP_ENTRY_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_PIXMAP_ENTRY); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomepopuphelp.inc b/packages/gnome1/src/libgnomeui/gnomepopuphelp.inc new file mode 100644 index 0000000000..35e9466d4b --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomepopuphelp.inc @@ -0,0 +1,16 @@ +{$IfDef read_interface} + +Procedure gnome_widget_add_help(widget : PGTKWidget; help : PGChar); + +procedure gnome_widget_add_help_with_uidata(widget:PGtkWidget; help:Pgchar; menuinfo:PGnomeUIInfo; user_data:gpointer);cdecl;external libgnomeuidll name 'gnome_widget_add_help_with_uidata'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +Procedure gnome_widget_add_help(widget : PGTKWidget; help : PGChar); +begin + gnome_widget_add_help_with_uidata(widget,help,nil,nil); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomepopupmenu.inc b/packages/gnome1/src/libgnomeui/gnomepopupmenu.inc new file mode 100644 index 0000000000..af68112674 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomepopupmenu.inc @@ -0,0 +1,14 @@ +{$IfDef read_interface} + +function gnome_popup_menu_new(uiinfo:PGnomeUIInfo):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_popup_menu_new'; +function gnome_popup_menu_new_with_accelgroup(uiinfo:PGnomeUIInfo; accelgroup:PGtkAccelGroup):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_popup_menu_new_with_accelgroup'; +function gnome_popup_menu_get_accel_group(menu:PGtkMenu):PGtkAccelGroup;cdecl;external libgnomeuidll name 'gnome_popup_menu_get_accel_group'; +procedure gnome_popup_menu_attach(popup:PGtkWidget; widget:PGtkWidget; user_data:gpointer);cdecl;external libgnomeuidll name 'gnome_popup_menu_attach'; +procedure gnome_popup_menu_do_popup(popup:PGtkWidget; pos_func:TGtkMenuPositionFunc; pos_data:gpointer; event:PGdkEventButton; user_data:gpointer);cdecl;external libgnomeuidll name 'gnome_popup_menu_do_popup'; +function gnome_popup_menu_do_popup_modal(popup:PGtkWidget; pos_func:TGtkMenuPositionFunc; pos_data:gpointer; event:PGdkEventButton; user_data:gpointer):longint;cdecl;external libgnomeuidll name 'gnome_popup_menu_do_popup_modal'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeprocbar.inc b/packages/gnome1/src/libgnomeui/gnomeprocbar.inc new file mode 100644 index 0000000000..383d6b52d0 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeprocbar.inc @@ -0,0 +1,79 @@ +{$IfDef read_interface} + +type + TGnomeProcbarCallback = function (_para1:gpointer):gint; cdecl; + + PGnomeProcBar = ^TGnomeProcBar; + TGnomeProcBar = record + hbox : TGtkHBox; + bar : PGtkWidget; + thelabel : PGtkWidget; + frame : PGtkWidget; + flag0 : word; + bs : PGdkPixmap; + colors : PGdkColor; + colors_allocated : gint; + first_request : gint; + n : gint; + tag : gint; + last : Pdword; + cb : TGnomeProcbarCallback; + cb_data : gpointer; + end; + GNOME_PROC_BAR = PGnomeProcBar; + +const + bm__GnomeProcBar_vertical = $1; + bp__GnomeProcBar_vertical = 0; +function vertical(var a : TGnomeProcBar) : gboolean; +procedure set_vertical(var a : TGnomeProcBar; __vertical : gboolean); +type + PGnomeProcBarClass = ^TGnomeProcBarClass; + TGnomeProcBarClass = record + parent_class : TGtkHBoxClass; + end; + GNOME_PROC_BAR_CLASS = PGnomeProcBarClass; + +function GNOME_TYPE_PROC_BAR : TGTKType; +function GNOME_IS_PROC_BAR(obj : Pointer) : Boolean; +function GNOME_IS_PROC_BAR_CLASS(klass : Pointer) : Boolean; + +function gnome_proc_bar_get_type:TGTKTYPE;cdecl;external libgnomeuidll name 'gnome_proc_bar_get_type'; +function gnome_proc_bar_new(thelabel:PGtkWidget; n:gint; colors:PGdkColor; cb : TGnomeProcbarCallback):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_proc_bar_new'; +procedure gnome_proc_bar_construct(pb:PGnomeProcBar; thelabel:PGtkWidget; n:gint; colors:PGdkColor; cb:TGnomeProcbarCallback);cdecl;external libgnomeuidll name 'gnome_proc_bar_construct'; +procedure gnome_proc_bar_set_values(pb:PGnomeProcBar; val:Pguint);cdecl;external libgnomeuidll name 'gnome_proc_bar_set_values'; +procedure gnome_proc_bar_set_orient(pb:PGnomeProcBar; vertical:gboolean);cdecl;external libgnomeuidll name 'gnome_proc_bar_set_orient'; +procedure gnome_proc_bar_start(pb:PGnomeProcBar; gtime:gint; data:gpointer);cdecl;external libgnomeuidll name 'gnome_proc_bar_start'; +procedure gnome_proc_bar_stop(pb:PGnomeProcBar);cdecl;external libgnomeuidll name 'gnome_proc_bar_stop'; +procedure gnome_proc_bar_update(pb:PGnomeProcBar; colors:PGdkColor);cdecl;external libgnomeuidll name 'gnome_proc_bar_update'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_PROC_BAR : TGTKType; +begin + GNOME_TYPE_PROC_BAR:=gnome_proc_bar_get_type; +end; + +function GNOME_IS_PROC_BAR(obj : Pointer) : Boolean; +begin + GNOME_IS_PROC_BAR:=(obj<>nil) and GNOME_IS_PROC_BAR_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_PROC_BAR_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_PROC_BAR_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_PROC_BAR); +end; + +function vertical(var a : TGnomeProcBar) : gboolean; +begin + vertical:=gboolean((a.flag0 and bm__GnomeProcBar_vertical) shr bp__GnomeProcBar_vertical); +end; + +procedure set_vertical(var a : TGnomeProcBar; __vertical : gboolean); +begin + a.flag0:=a.flag0 or ((gint(__vertical) shl bp__GnomeProcBar_vertical) and bm__GnomeProcBar_vertical); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomepropertybox.inc b/packages/gnome1/src/libgnomeui/gnomepropertybox.inc new file mode 100644 index 0000000000..4187793b10 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomepropertybox.inc @@ -0,0 +1,55 @@ +{$IfDef read_interface} + +const + GNOME_PROPERTY_BOX_DIRTY = 'gnome_property_box_dirty'; + +type + PGnomePropertyBox = ^TGnomePropertyBox; + TGnomePropertyBox = record + dialog : TGnomeDialog; + notebook : PGtkWidget; + ok_button : PGtkWidget; + apply_button : PGtkWidget; + cancel_button : PGtkWidget; + help_button : PGtkWidget; + end; + GNOME_PROPERTY_BOX = PGnomePropertyBox; + + PGnomePropertyBoxClass = ^TGnomePropertyBoxClass; + TGnomePropertyBoxClass = record + parent_class : TGnomeDialogClass; + apply : procedure (propertybox:PGnomePropertyBox; page_num:gint);cdecl; + help : procedure (propertybox:PGnomePropertyBox; page_num:gint);cdecl; + end; + GNOME_PROPERTY_BOX_CLASS = PGnomePropertyBoxClass; + +function GNOME_TYPE_PROPERTY_BOX : TGTKType; +function GNOME_IS_PROPERTY_BOX(obj : Pointer) : Boolean; +function GNOME_IS_PROPERTY_BOX_CLASS(klass : Pointer) : Boolean; + +function gnome_property_box_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_property_box_get_type'; +function gnome_property_box_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_property_box_new'; +procedure gnome_property_box_changed(property_box:PGnomePropertyBox);cdecl;external libgnomeuidll name 'gnome_property_box_changed'; +procedure gnome_property_box_set_modified(property_box:PGnomePropertyBox; state:gboolean);cdecl;external libgnomeuidll name 'gnome_property_box_set_modified'; +function gnome_property_box_append_page(property_box:PGnomePropertyBox; child:PGtkWidget; tab_label:PGtkWidget):gint;cdecl;external libgnomeuidll name 'gnome_property_box_append_page'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_PROPERTY_BOX : TGTKType; +begin + GNOME_TYPE_PROPERTY_BOX:=gnome_property_box_get_type; +end; + +function GNOME_IS_PROPERTY_BOX(obj : Pointer) : Boolean; +begin + GNOME_IS_PROPERTY_BOX:=(obj<>nil) and GNOME_IS_PROPERTY_BOX_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_PROPERTY_BOX_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_PROPERTY_BOX_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_PROPERTY_BOX); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomescores.inc b/packages/gnome1/src/libgnomeui/gnomescores.inc new file mode 100644 index 0000000000..edfbf5b989 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomescores.inc @@ -0,0 +1,57 @@ +{$IfDef read_interface} + +type + PGnomeScores = ^TGnomeScores; + TGnomeScores = record + dialog : TGnomeDialog; + but_clear : PGtkWidget; + n_scores : guint; + logo : PGtkWidget; + label_names : PPGtkWidget; + label_scores : PPGtkWidget; + label_times : PPGtkWidget; + end; + GNOMES_SCORES = PGnomeScores; + + PGnomeScoresClass = ^TGnomeScoresClass; + TGnomeScoresClass = record + parent_class : TGnomeDialogClass; + end; + GNOMES_SCORES_CLASS = PGnomeScoresClass; + +function GNOME_TYPE_SCORES : TGTKType; +function GNOME_IS_SCORES(obj : Pointer) : Boolean; +function GNOME_IS_SCORES_CLASS(klass : Pointer) : Boolean; + +function gnome_scores_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_scores_get_type'; +procedure gnome_scores_display(title:Pgchar; app_name:Pgchar; level:Pgchar; pos:longint);cdecl;external libgnomeuidll name 'gnome_scores_display'; +function gnome_scores_new(n_scores:guint; names:PPgchar; scores:Pgfloat; times:Ptime_t; clear:guint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_scores_new'; +procedure gnome_scores_set_logo_label(gs:PGnomeScores; txt:Pgchar; font:Pgchar; color:PGdkColor);cdecl;external libgnomeuidll name 'gnome_scores_set_logo_label'; +procedure gnome_scores_set_logo_pixmap(gs:PGnomeScores; logo:Pgchar);cdecl;external libgnomeuidll name 'gnome_scores_set_logo_pixmap'; +procedure gnome_scores_set_logo_widget(gs:PGnomeScores; w:PGtkWidget);cdecl;external libgnomeuidll name 'gnome_scores_set_logo_widget'; +procedure gnome_scores_set_color(gs:PGnomeScores; pos:guint; col:PGdkColor);cdecl;external libgnomeuidll name 'gnome_scores_set_color'; +procedure gnome_scores_set_def_color(gs:PGnomeScores; col:PGdkColor);cdecl;external libgnomeuidll name 'gnome_scores_set_def_color'; +procedure gnome_scores_set_colors(gs:PGnomeScores; col:PGdkColor);cdecl;external libgnomeuidll name 'gnome_scores_set_colors'; +procedure gnome_scores_set_logo_label_title(gs:PGnomeScores; txt:Pgchar);cdecl;external libgnomeuidll name 'gnome_scores_set_logo_label_title'; +procedure gnome_scores_set_current_player(gs:PGnomeScores; i:gint);cdecl;external libgnomeuidll name 'gnome_scores_set_current_player'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_SCORES : TGTKType; +begin + GNOME_TYPE_SCORES:=gnome_scores_get_type; +end; + +function GNOME_IS_SCORES(obj : Pointer) : Boolean; +begin + GNOME_IS_SCORES:=(obj<>nil) and GNOME_IS_SCORES_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_SCORES_CLASS(klass : Pointer) : Boolean; +begin + GNOME_IS_SCORES_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_SCORES); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomestock.inc b/packages/gnome1/src/libgnomeui/gnomestock.inc new file mode 100644 index 0000000000..6c0433d1c5 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomestock.inc @@ -0,0 +1,341 @@ +{$IfDef read_interface} +const + GNOME_STOCK_PIXMAP_NEW = 'New'; + GNOME_STOCK_PIXMAP_OPEN = 'Open'; + GNOME_STOCK_PIXMAP_CLOSE = 'Close'; + GNOME_STOCK_PIXMAP_REVERT = 'Revert'; + GNOME_STOCK_PIXMAP_SAVE = 'Save'; + GNOME_STOCK_PIXMAP_SAVE_AS = 'Save As'; + GNOME_STOCK_PIXMAP_CUT = 'Cut'; + GNOME_STOCK_PIXMAP_COPY = 'Copy'; + GNOME_STOCK_PIXMAP_PASTE = 'Paste'; + GNOME_STOCK_PIXMAP_CLEAR = 'Clear'; + GNOME_STOCK_PIXMAP_PROPERTIES = 'Properties'; + GNOME_STOCK_PIXMAP_PREFERENCES = 'Preferences'; + GNOME_STOCK_PIXMAP_HELP = 'Help'; + GNOME_STOCK_PIXMAP_SCORES = 'Scores'; + GNOME_STOCK_PIXMAP_PRINT = 'Print'; + GNOME_STOCK_PIXMAP_SEARCH = 'Search'; + GNOME_STOCK_PIXMAP_SRCHRPL = 'Search/Replace'; + GNOME_STOCK_PIXMAP_BACK = 'Back'; + GNOME_STOCK_PIXMAP_FORWARD = 'Forward'; + GNOME_STOCK_PIXMAP_FIRST = 'First'; + GNOME_STOCK_PIXMAP_LAST = 'Last'; + GNOME_STOCK_PIXMAP_HOME = 'Home'; + GNOME_STOCK_PIXMAP_STOP = 'Stop'; + GNOME_STOCK_PIXMAP_REFRESH = 'Refresh'; + GNOME_STOCK_PIXMAP_UNDO = 'Undo'; + GNOME_STOCK_PIXMAP_REDO = 'Redo'; + GNOME_STOCK_PIXMAP_TIMER = 'Timer'; + GNOME_STOCK_PIXMAP_TIMER_STOP = 'Timer Stopped'; + GNOME_STOCK_PIXMAP_MAIL = 'Mail'; + GNOME_STOCK_PIXMAP_MAIL_RCV = 'Receive Mail'; + GNOME_STOCK_PIXMAP_MAIL_SND = 'Send Mail'; + GNOME_STOCK_PIXMAP_MAIL_RPL = 'Reply to Mail'; + GNOME_STOCK_PIXMAP_MAIL_FWD = 'Forward Mail'; + GNOME_STOCK_PIXMAP_MAIL_NEW = 'New Mail'; + GNOME_STOCK_PIXMAP_TRASH = 'Trash'; + GNOME_STOCK_PIXMAP_TRASH_FULL = 'Trash Full'; + GNOME_STOCK_PIXMAP_UNDELETE = 'Undelete'; + GNOME_STOCK_PIXMAP_SPELLCHECK = 'Spellchecker'; + GNOME_STOCK_PIXMAP_MIC = 'Microphone'; + GNOME_STOCK_PIXMAP_LINE_IN = 'Line In'; + GNOME_STOCK_PIXMAP_CDROM = 'Cdrom'; + GNOME_STOCK_PIXMAP_VOLUME = 'Volume'; + GNOME_STOCK_PIXMAP_MIDI = 'Midi'; + GNOME_STOCK_PIXMAP_BOOK_RED = 'Book Red'; + GNOME_STOCK_PIXMAP_BOOK_GREEN = 'Book Green'; + GNOME_STOCK_PIXMAP_BOOK_BLUE = 'Book Blue'; + GNOME_STOCK_PIXMAP_BOOK_YELLOW = 'Book Yellow'; + GNOME_STOCK_PIXMAP_BOOK_OPEN = 'Book Open'; + GNOME_STOCK_PIXMAP_ABOUT = 'About'; + GNOME_STOCK_PIXMAP_QUIT = 'Quit'; + GNOME_STOCK_PIXMAP_MULTIPLE = 'Multiple'; + GNOME_STOCK_PIXMAP_NOT = 'Not'; + GNOME_STOCK_PIXMAP_CONVERT = 'Convert'; + GNOME_STOCK_PIXMAP_JUMP_TO = 'Jump To'; + GNOME_STOCK_PIXMAP_UP = 'Up'; + GNOME_STOCK_PIXMAP_DOWN = 'Down'; + GNOME_STOCK_PIXMAP_TOP = 'Top'; + GNOME_STOCK_PIXMAP_BOTTOM = 'Bottom'; + GNOME_STOCK_PIXMAP_ATTACH = 'Attach'; + GNOME_STOCK_PIXMAP_INDEX = 'Index'; + GNOME_STOCK_PIXMAP_FONT = 'Font'; + GNOME_STOCK_PIXMAP_EXEC = 'Exec'; + GNOME_STOCK_PIXMAP_ALIGN_LEFT = 'Left'; + GNOME_STOCK_PIXMAP_ALIGN_RIGHT = 'Right'; + GNOME_STOCK_PIXMAP_ALIGN_CENTER = 'Center'; + GNOME_STOCK_PIXMAP_ALIGN_JUSTIFY = 'Justify'; + GNOME_STOCK_PIXMAP_TEXT_BOLD = 'Bold'; + GNOME_STOCK_PIXMAP_TEXT_ITALIC = 'Italic'; + GNOME_STOCK_PIXMAP_TEXT_UNDERLINE = 'Underline'; + GNOME_STOCK_PIXMAP_TEXT_STRIKEOUT = 'Strikeout'; + GNOME_STOCK_PIXMAP_TEXT_INDENT = 'Text Indent'; + GNOME_STOCK_PIXMAP_TEXT_UNINDENT = 'Text Unindent'; + GNOME_STOCK_PIXMAP_EXIT = GNOME_STOCK_PIXMAP_QUIT; + GNOME_STOCK_PIXMAP_COLORSELECTOR = 'Color Select'; + GNOME_STOCK_PIXMAP_ADD = 'Add'; + GNOME_STOCK_PIXMAP_REMOVE = 'Remove'; + GNOME_STOCK_PIXMAP_TABLE_BORDERS = 'Table Borders'; + GNOME_STOCK_PIXMAP_TABLE_FILL = 'Table Fill'; + GNOME_STOCK_PIXMAP_TEXT_BULLETED_LIST = 'Text Bulleted List'; + GNOME_STOCK_PIXMAP_TEXT_NUMBERED_LIST = 'Text Numbered List'; + GNOME_STOCK_PIXMAP_REGULAR = 'regular'; + GNOME_STOCK_PIXMAP_DISABLED = 'disabled'; + GNOME_STOCK_PIXMAP_FOCUSED = 'focused'; + +type + TGnomeStockPixmapType = (GNOME_STOCK_PIXMAP_TYPE_NONE,GNOME_STOCK_PIXMAP_TYPE_DATA, + GNOME_STOCK_PIXMAP_TYPE_FILE,GNOME_STOCK_PIXMAP_TYPE_PATH, + GNOME_STOCK_PIXMAP_TYPE_WIDGET,GNOME_STOCK_PIXMAP_TYPE_IMLIB, + GNOME_STOCK_PIXMAP_TYPE_IMLIB_SCALED, + GNOME_STOCK_PIXMAP_TYPE_GPIXMAP); + + PGnomeStockPixmapEntryData = ^TGnomeStockPixmapEntryData; + TGnomeStockPixmapEntryData = record + thetype : TGnomeStockPixmapType; + width : longint; + height : longint; + thelabel : Pchar; + xpm_data : PPgchar; + end; + + PGnomeStockPixmapEntryImlib = ^TGnomeStockPixmapEntryImlib; + TGnomeStockPixmapEntryImlib = record + thetype : TGnomeStockPixmapType; + width : longint; + height : longint; + thelabel : Pchar; + rgb_data : Pgchar; + shape : TGdkImlibColor; + end; + + PGnomeStockPixmapEntryImlibScaled = ^TGnomeStockPixmapEntryImlibScaled; + TGnomeStockPixmapEntryImlibScaled = record + thetype : TGnomeStockPixmapType; + width : longint; + height : longint; + thelabel : Pchar; + rgb_data : Pgchar; + shape : TGdkImlibColor; + scaled_width : longint; + scaled_height : longint; + end; + + PGnomeStockPixmapEntryFile = ^TGnomeStockPixmapEntryFile; + TGnomeStockPixmapEntryFile = record + thetype : TGnomeStockPixmapType; + width : longint; + height : longint; + thelabel : Pchar; + filename : Pgchar; + end; + + PGnomeStockPixmapEntryPath = ^TGnomeStockPixmapEntryPath; + TGnomeStockPixmapEntryPath = record + thetype : TGnomeStockPixmapType; + width : longint; + height : longint; + thelabel : Pchar; + pathname : Pgchar; + end; + + PGnomeStockPixmapEntryWidget = ^TGnomeStockPixmapEntryWidget; + TGnomeStockPixmapEntryWidget = record + thetype : TGnomeStockPixmapType; + width : longint; + height : longint; + thelabel : Pchar; + widget : PGtkWidget; + end; + + PGnomeStockPixmapEntryGPixmap = ^TGnomeStockPixmapEntryGPixmap; + TGnomeStockPixmapEntryGPixmap = record + thetype : TGnomeStockPixmapType; + width : longint; + height : longint; + thelabel : Pchar; + pixmap : PGnomePixmap; + end; + + PGnomeStockPixmapEntryAny = ^TGnomeStockPixmapEntryAny; + TGnomeStockPixmapEntryAny = record + thetype : TGnomeStockPixmapType; + width : longint; + height : longint; + thelabel : Pchar; + end; + + PGnomeStockPixmapEntry = ^TGnomeStockPixmapEntry; + TGnomeStockPixmapEntry = record + case longint of + 0 : ( thetype : TGnomeStockPixmapType ); + 1 : ( any : TGnomeStockPixmapEntryAny ); + 2 : ( data : TGnomeStockPixmapEntryData ); + 3 : ( thefile : TGnomeStockPixmapEntryFile ); + 4 : ( path : TGnomeStockPixmapEntryPath ); + 5 : ( widget : TGnomeStockPixmapEntryWidget ); + 6 : ( imlib : TGnomeStockPixmapEntryImlib ); + 7 : ( imlib_s : TGnomeStockPixmapEntryImlibScaled ); + 8 : ( gpixmap : TGnomeStockPixmapEntryGPixmap ); + end; + + PGnomeStock = ^TGnomeStock; + TGnomeStock = record + pixmap : TGnomePixmap; + regular : PGnomePixmap; + disabled : PGnomePixmap; + focused : PGnomePixmap; + current : PGnomePixmap; + icon : Pchar; + c_regular : guint32; + c_disabled : guint32; + c_focused : guint32; + end; + GNOME_STOCK = TGnomeStock; + + PGnomeStockClass = ^TGnomeStockClass; + TGnomeStockClass = record + pixmap_class : TGnomePixmapClass; + end; + GNOME_STOCK_CLASS = TGnomeStockClass; + +function GNOME_TYPE_STOCK : TGtkType; + +function GNOME_IS_STOCK(obj : pointer) : gboolean; +function GNOME_IS_STOCK_CLASS(klass : pointer) : gboolean; +function GNOME_IS_STOCK_PIXMAP_WIDGET(obj : pointer) : gboolean; + +function gnome_stock_pixmap_widget_new(window:PGtkWidget; icon:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_stock_pixmap_widget_new'; +function gnome_stock_get_type:TGTKType;cdecl;external libgnomeuidll name 'gnome_stock_get_type'; +function gnome_stock_new:PGtkWidget;cdecl;external libgnomeuidll name 'gnome_stock_new'; +function gnome_stock_new_with_icon(icon:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_stock_new_with_icon'; +function gnome_stock_set_icon(stock:PGnomeStock; icon:Pchar):gboolean;cdecl;external libgnomeuidll name 'gnome_stock_set_icon'; +function gnome_stock_pixmap(window:PGtkWidget; icon:Pchar; subtype:Pchar):PGnomePixmap;cdecl;external libgnomeuidll name 'gnome_stock_pixmap'; +function gnome_stock_pixmap_widget(window:PGtkWidget; icon:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_stock_pixmap_widget'; +function gnome_stock_pixmap_widget_at_size(window:PGtkWidget; icon:Pchar; width:guint; height:guint):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_stock_pixmap_widget_at_size'; +procedure gnome_stock_pixmap_widget_set_icon(widget:PGnomeStock; icon:Pchar);cdecl;external libgnomeuidll name 'gnome_stock_pixmap_widget_set_icon'; +function gnome_stock_pixmap_register(icon:Pchar; subtype:Pchar; entry:PGnomeStockPixmapEntry):gint;cdecl;external libgnomeuidll name 'gnome_stock_pixmap_register'; +function gnome_stock_pixmap_change(icon:Pchar; subtype:Pchar; entry:PGnomeStockPixmapEntry):gint;cdecl;external libgnomeuidll name 'gnome_stock_pixmap_change'; +function gnome_stock_pixmap_checkfor(icon:Pchar; subtype:Pchar):PGnomeStockPixmapEntry;cdecl;external libgnomeuidll name 'gnome_stock_pixmap_checkfor'; +function gnome_pixmap_button(pixmap:PGtkWidget; thetext:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_pixmap_button'; +procedure gnome_button_can_default(button:PGtkButton; can_default:gboolean);cdecl;external libgnomeuidll name 'gnome_button_can_default'; + +const + GNOME_STOCK_BUTTON_OK = 'Button_Ok'; + GNOME_STOCK_BUTTON_CANCEL = 'Button_Cancel'; + GNOME_STOCK_BUTTON_YES = 'Button_Yes'; + GNOME_STOCK_BUTTON_NO = 'Button_No'; + GNOME_STOCK_BUTTON_CLOSE = 'Button_Close'; + GNOME_STOCK_BUTTON_APPLY = 'Button_Apply'; + GNOME_STOCK_BUTTON_HELP = 'Button_Help'; + GNOME_STOCK_BUTTON_NEXT = 'Button_Next'; + GNOME_STOCK_BUTTON_PREV = 'Button_Prev'; + GNOME_STOCK_BUTTON_UP = 'Button_Up'; + GNOME_STOCK_BUTTON_DOWN = 'Button_Down'; + GNOME_STOCK_BUTTON_FONT = 'Button_Font'; + +function gnome_stock_button(thetype:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_stock_button'; +function gnome_stock_or_ordinary_button(thetype:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_stock_or_ordinary_button'; + +const + GNOME_STOCK_MENU_BLANK = 'Menu_'; + GNOME_STOCK_MENU_NEW = 'Menu_New'; + GNOME_STOCK_MENU_SAVE = 'Menu_Save'; + GNOME_STOCK_MENU_SAVE_AS = 'Menu_Save As'; + GNOME_STOCK_MENU_REVERT = 'Menu_Revert'; + GNOME_STOCK_MENU_OPEN = 'Menu_Open'; + GNOME_STOCK_MENU_CLOSE = 'Menu_Close'; + GNOME_STOCK_MENU_QUIT = 'Menu_Quit'; + GNOME_STOCK_MENU_CUT = 'Menu_Cut'; + GNOME_STOCK_MENU_COPY = 'Menu_Copy'; + GNOME_STOCK_MENU_PASTE = 'Menu_Paste'; + GNOME_STOCK_MENU_PROP = 'Menu_Properties'; + GNOME_STOCK_MENU_PREF = 'Menu_Preferences'; + GNOME_STOCK_MENU_ABOUT = 'Menu_About'; + GNOME_STOCK_MENU_SCORES = 'Menu_Scores'; + GNOME_STOCK_MENU_UNDO = 'Menu_Undo'; + GNOME_STOCK_MENU_REDO = 'Menu_Redo'; + GNOME_STOCK_MENU_PRINT = 'Menu_Print'; + GNOME_STOCK_MENU_SEARCH = 'Menu_Search'; + GNOME_STOCK_MENU_SRCHRPL = 'Menu_Search/Replace'; + GNOME_STOCK_MENU_BACK = 'Menu_Back'; + GNOME_STOCK_MENU_FORWARD = 'Menu_Forward'; + GNOME_STOCK_MENU_FIRST = 'Menu_First'; + GNOME_STOCK_MENU_LAST = 'Menu_Last'; + GNOME_STOCK_MENU_HOME = 'Menu_Home'; + GNOME_STOCK_MENU_STOP = 'Menu_Stop'; + GNOME_STOCK_MENU_REFRESH = 'Menu_Refresh'; + GNOME_STOCK_MENU_MAIL = 'Menu_Mail'; + GNOME_STOCK_MENU_MAIL_RCV = 'Menu_Receive Mail'; + GNOME_STOCK_MENU_MAIL_SND = 'Menu_Send Mail'; + GNOME_STOCK_MENU_MAIL_RPL = 'Menu_Reply to Mail'; + GNOME_STOCK_MENU_MAIL_FWD = 'Menu_Forward Mail'; + GNOME_STOCK_MENU_MAIL_NEW = 'Menu_New Mail'; + GNOME_STOCK_MENU_TRASH = 'Menu_Trash'; + GNOME_STOCK_MENU_TRASH_FULL = 'Menu_Trash Full'; + GNOME_STOCK_MENU_UNDELETE = 'Menu_Undelete'; + GNOME_STOCK_MENU_TIMER = 'Menu_Timer'; + GNOME_STOCK_MENU_TIMER_STOP = 'Menu_Timer Stopped'; + GNOME_STOCK_MENU_SPELLCHECK = 'Menu_Spellchecker'; + GNOME_STOCK_MENU_MIC = 'Menu_Microphone'; + GNOME_STOCK_MENU_LINE_IN = 'Menu_Line In'; + GNOME_STOCK_MENU_CDROM = 'Menu_Cdrom'; + GNOME_STOCK_MENU_VOLUME = 'Menu_Volume'; + GNOME_STOCK_MENU_MIDI = 'Menu_Midi'; + GNOME_STOCK_MENU_BOOK_RED = 'Menu_Book Red'; + GNOME_STOCK_MENU_BOOK_GREEN = 'Menu_Book Green'; + GNOME_STOCK_MENU_BOOK_BLUE = 'Menu_Book Blue'; + GNOME_STOCK_MENU_BOOK_YELLOW = 'Menu_Book Yellow'; + GNOME_STOCK_MENU_BOOK_OPEN = 'Menu_Book Open'; + GNOME_STOCK_MENU_CONVERT = 'Menu_Convert'; + GNOME_STOCK_MENU_JUMP_TO = 'Menu_Jump To'; + GNOME_STOCK_MENU_UP = 'Menu_Up'; + GNOME_STOCK_MENU_DOWN = 'Menu_Down'; + GNOME_STOCK_MENU_TOP = 'Menu_Top'; + GNOME_STOCK_MENU_BOTTOM = 'Menu_Bottom'; + GNOME_STOCK_MENU_ATTACH = 'Menu_Attach'; + GNOME_STOCK_MENU_INDEX = 'Menu_Index'; + GNOME_STOCK_MENU_FONT = 'Menu_Font'; + GNOME_STOCK_MENU_EXEC = 'Menu_Exec'; + GNOME_STOCK_MENU_ALIGN_LEFT = 'Menu_Left'; + GNOME_STOCK_MENU_ALIGN_RIGHT = 'Menu_Right'; + GNOME_STOCK_MENU_ALIGN_CENTER = 'Menu_Center'; + GNOME_STOCK_MENU_ALIGN_JUSTIFY = 'Menu_Justify'; + GNOME_STOCK_MENU_TEXT_BOLD = 'Menu_Bold'; + GNOME_STOCK_MENU_TEXT_ITALIC = 'Menu_Italic'; + GNOME_STOCK_MENU_TEXT_UNDERLINE = 'Menu_Underline'; + GNOME_STOCK_MENU_TEXT_STRIKEOUT = 'Menu_Strikeout'; + GNOME_STOCK_MENU_EXIT = GNOME_STOCK_MENU_QUIT; + +function gnome_stock_menu_item(thetype:Pchar; thetext:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_stock_menu_item'; +function gnome_stock_menu_accel(thetype:Pchar; key:Pguchar; mods:Pguint8):gboolean;cdecl;external libgnomeuidll name 'gnome_stock_menu_accel'; +procedure gnome_stock_menu_accel_parse(section:Pchar);cdecl;external libgnomeuidll name 'gnome_stock_menu_accel_parse'; +function gnome_stock_transparent_window(icon:Pchar; subtype:Pchar):PGtkWidget;cdecl;external libgnomeuidll name 'gnome_stock_transparent_window'; +procedure gnome_stock_pixmap_gdk(icon:Pchar; subtype:Pchar; pixmap:PPGdkPixmap; mask:PPGdkPixmap);cdecl;external libgnomeuidll name 'gnome_stock_pixmap_gdk'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_STOCK : TGTKType; +begin + GNOME_TYPE_STOCK:=gnome_stock_get_type; +end; + +function GNOME_IS_STOCK(obj : Pointer) : gBoolean; +begin + GNOME_IS_STOCK:=(obj<>nil) and GNOME_IS_STOCK_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_STOCK_CLASS(klass : Pointer) : gBoolean; +begin + GNOME_IS_STOCK_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_STOCK); +end; + +function GNOME_IS_STOCK_PIXMAP_WIDGET(obj : pointer) : gboolean; +begin + GNOME_IS_STOCK_PIXMAP_WIDGET := GNOME_IS_STOCK(obj); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnometypebuiltins.inc b/packages/gnome1/src/libgnomeui/gnometypebuiltins.inc new file mode 100644 index 0000000000..7fe2309fcf --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnometypebuiltins.inc @@ -0,0 +1,38 @@ +{$IfDef read_interface} + + var + GTK_TYPE_GNOME_ANIMATOR_STATUS : TGtkType;cvar;external; + GTK_TYPE_GNOME_ANIMATOR_LOOP_TYPE : TGtkType;cvar;external; + GTK_TYPE_GNOME_UI_INFO_TYPE : TGtkType;cvar;external; + GTK_TYPE_GNOME_UI_INFO_CONFIGURABLE_TYPES : TGtkType;cvar;external; + GTK_TYPE_GNOME_UI_PIXMAP_TYPE : TGtkType;cvar;external; + GTK_TYPE_GNOME_CALCULATOR_MODE : TGtkType;cvar;external; + GTK_TYPE_GNOME_INTERACT_STYLE : TGtkType;cvar;external; + GTK_TYPE_GNOME_DIALOG_TYPE : TGtkType;cvar;external; + GTK_TYPE_GNOME_SAVE_STYLE : TGtkType;cvar;external; + GTK_TYPE_GNOME_RESTART_STYLE : TGtkType;cvar;external; + GTK_TYPE_GNOME_CLIENT_STATE : TGtkType;cvar;external; + GTK_TYPE_GNOME_CLIENT_FLAGS : TGtkType;cvar;external; + GTK_TYPE_GNOME_DATE_EDIT_FLAGS : TGtkType;cvar;external; + GTK_TYPE_GNOME_DOCK_PLACEMENT : TGtkType;cvar;external; + GTK_TYPE_GNOME_DOCK_ITEM_BEHAVIOR : TGtkType;cvar;external; + GTK_TYPE_GNOME_FONT_PICKER_MODE : TGtkType;cvar;external; + GTK_TYPE_GNOME_ICON_LIST_MODE : TGtkType;cvar;external; + GTK_TYPE_GNOME_MDI_MODE : TGtkType;cvar;external; + GTK_TYPE_GNOME_PROPERTY_ACTION : TGtkType;cvar;external; + GTK_TYPE_GNOME_STOCK_PIXMAP_TYPE : TGtkType;cvar;external; + GTK_TYPE_GNOME_PREFERENCES_TYPE : TGtkType;cvar;external; + GTK_TYPE_GNOME_WIN_LAYER : TGtkType;cvar;external; + GTK_TYPE_GNOME_WIN_STATE : TGtkType;cvar;external; + GTK_TYPE_GNOME_WIN_HINTS : TGtkType;cvar;external; + GTK_TYPE_GNOME_WIN_APP_STATE : TGtkType;cvar;external; + GTK_TYPE_CLOCK_TYPE : TGtkType;cvar;external; + GTK_TYPE_GDK_IMLIB_IMAGE : TGtkType;cvar;external; + GTK_TYPE_GNOME_CANVAS_POINTS : TGtkType;cvar;external; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomeuidefs.inc b/packages/gnome1/src/libgnomeui/gnomeuidefs.inc new file mode 100644 index 0000000000..b9c3f54bff --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomeuidefs.inc @@ -0,0 +1,65 @@ +{$IfDef read_interface} +const + GNOME_PAD = 8; + GNOME_PAD_SMALL = 4; + GNOME_PAD_BIG = 12; + GNOME_YES = 0; + GNOME_NO = 1; + GNOME_OK = 0; + GNOME_CANCEL = 1; + +const + GNOME_KEY_NAME_EXIT = 'Q'; + GNOME_KEY_MOD_EXIT = GDK_CONTROL_MASK; + GNOME_KEY_NAME_CLOSE = 'W'; + GNOME_KEY_MOD_CLOSE = GDK_CONTROL_MASK; + GNOME_KEY_NAME_CUT = 'X'; + GNOME_KEY_MOD_CUT = GDK_CONTROL_MASK; + GNOME_KEY_NAME_COPY = 'C'; + GNOME_KEY_MOD_COPY = GDK_CONTROL_MASK; + GNOME_KEY_NAME_PASTE = 'V'; + GNOME_KEY_MOD_PASTE = GDK_CONTROL_MASK; + GNOME_KEY_NAME_SELECT_ALL = 0; + GNOME_KEY_MOD_SELECT_ALL = 0; + GNOME_KEY_NAME_CLEAR = 0; + GNOME_KEY_MOD_CLEAR = 0; + GNOME_KEY_NAME_UNDO = 'Z'; + GNOME_KEY_MOD_UNDO = GDK_CONTROL_MASK; + GNOME_KEY_NAME_REDO = 'R'; + GNOME_KEY_MOD_REDO = GDK_CONTROL_MASK; + GNOME_KEY_NAME_SAVE = 'S'; + GNOME_KEY_MOD_SAVE = GDK_CONTROL_MASK; + GNOME_KEY_NAME_OPEN = GDK_F3; + GNOME_KEY_MOD_OPEN = 0; + GNOME_KEY_NAME_SAVE_AS = 0; + GNOME_KEY_MOD_SAVE_AS = 0; + GNOME_KEY_NAME_NEW = 0; + GNOME_KEY_MOD_NEW = 0; + GNOME_KEY_NAME_PRINT = 0; + GNOME_KEY_MOD_PRINT = 0; + GNOME_KEY_NAME_PRINT_SETUP = 0; + GNOME_KEY_MOD_PRINT_SETUP = 0; + GNOME_KEY_NAME_FIND = GDK_F6; + GNOME_KEY_MOD_FIND = 0; + GNOME_KEY_NAME_FIND_AGAIN = GDK_F6; + GNOME_KEY_MOD_FIND_AGAIN = GDK_SHIFT_MASK; + GNOME_KEY_NAME_REPLACE = GDK_F7; + GNOME_KEY_MOD_REPLACE = 0; + GNOME_KEY_NAME_NEW_WINDOW = 0; + GNOME_KEY_MOD_NEW_WINDOW = 0; + GNOME_KEY_NAME_CLOSE_WINDOW = 0; + GNOME_KEY_MOD_CLOSE_WINDOW = 0; + GNOME_KEY_NAME_REDO_MOVE = 'R'; + GNOME_KEY_MOD_REDO_MOVE = GDK_CONTROL_MASK; + GNOME_KEY_NAME_UNDO_MOVE = 'Z'; + GNOME_KEY_MOD_UNDO_MOVE = GDK_CONTROL_MASK; + GNOME_KEY_NAME_PAUSE_GAME = 0; + GNOME_KEY_MOD_PAUSE_GAME = 0; + GNOME_KEY_NAME_NEW_GAME = 'N'; + GNOME_KEY_MOD_NEW_GAME = GDK_CONTROL_MASK; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gnomewinhints.inc b/packages/gnome1/src/libgnomeui/gnomewinhints.inc new file mode 100644 index 0000000000..6c5d04b2d8 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gnomewinhints.inc @@ -0,0 +1,85 @@ +{$IfDef read_interface} + +const + XA_WIN_PROTOCOLS = '_WIN_PROTOCOLS'; + XA_WIN_ICONS = '_WIN_ICONS'; + XA_WIN_WORKSPACE = '_WIN_WORKSPACE'; + XA_WIN_WORKSPACE_COUNT = '_WIN_WORKSPACE_COUNT'; + XA_WIN_WORKSPACE_NAMES = '_WIN_WORKSPACE_NAMES'; + XA_WIN_LAYER = '_WIN_LAYER'; + XA_WIN_STATE = '_WIN_STATE'; + XA_WIN_HINTS = '_WIN_HINTS'; + XA_WIN_WORKAREA = '_WIN_WORKAREA'; + XA_WIN_CLIENT_LIST = '_WIN_CLIENT_LIST'; + XA_WIN_APP_STATE = '_WIN_APP_STATE'; + XA_WIN_EXPANDED_SIZE = '_WIN_EXPANDED_SIZE'; + XA_WIN_CLIENT_MOVING = '_WIN_CLIENT_MOVING'; + XA_WIN_SUPPORTING_WM_CHECK = '_WIN_SUPPORTING_WM_CHECK'; +type + TGnomeWinLayer = (WIN_LAYER_DESKTOP := 0,WIN_LAYER_BELOW := 2, + WIN_LAYER_NORMAL := 4,WIN_LAYER_ONTOP := 6, + WIN_LAYER_DOCK := 8,WIN_LAYER_ABOVE_DOCK := 10 + ); + + TGnomeWinState = (WIN_STATE_STICKY := 1 shl 0,WIN_STATE_MINIMIZED := 1 shl 1, + WIN_STATE_MAXIMIZED_VERT := 1 shl 2,WIN_STATE_MAXIMIZED_HORIZ := 1 shl 3, + WIN_STATE_HIDDEN := 1 shl 4,WIN_STATE_SHADED := 1 shl 5, + WIN_STATE_HID_WORKSPACE := 1 shl 6,WIN_STATE_HID_TRANSIENT := 1 shl 7, + WIN_STATE_FIXED_POSITION := 1 shl 8,WIN_STATE_ARRANGE_IGNORE := 1 shl 9 + ); + + TGnomeWinHints = (WIN_HINTS_SKIP_FOCUS := 1 shl 0,WIN_HINTS_SKIP_WINLIST := 1 shl 1, + WIN_HINTS_SKIP_TASKBAR := 1 shl 2,WIN_HINTS_GROUP_TRANSIENT := 1 shl 3, + WIN_HINTS_FOCUS_ON_CLICK := 1 shl 4,WIN_HINTS_DO_NOT_COVER := 1 shl 5 + ); + + TGnomeWinAppState = (WIN_APP_STATE_NONE,WIN_APP_STATE_ACTIVE1, + WIN_APP_STATE_ACTIVE2,WIN_APP_STATE_ERROR1, + WIN_APP_STATE_ERROR2,WIN_APP_STATE_FATAL_ERROR1, + WIN_APP_STATE_FATAL_ERROR2,WIN_APP_STATE_IDLE1, + WIN_APP_STATE_IDLE2,WIN_APP_STATE_WAITING1, + WIN_APP_STATE_WAITING2,WIN_APP_STATE_WORKING1, + WIN_APP_STATE_WORKING2,WIN_APP_STATE_NEED_USER_INPUT1, + WIN_APP_STATE_NEED_USER_INPUT2,WIN_APP_STATE_STRUGGLING1, + WIN_APP_STATE_STRUGGLING2,WIN_APP_STATE_DISK_TRAFFIC1, + WIN_APP_STATE_DISK_TRAFFIC2,WIN_APP_STATE_NETWORK_TRAFFIC1, + WIN_APP_STATE_NETWORK_TRAFFIC2,WIN_APP_STATE_OVERLOADED1, + WIN_APP_STATE_OVERLOADED2,WIN_APP_STATE_PERCENT000_1, + WIN_APP_STATE_PERCENT000_2,WIN_APP_STATE_PERCENT010_1, + WIN_APP_STATE_PERCENT010_2,WIN_APP_STATE_PERCENT020_1, + WIN_APP_STATE_PERCENT020_2,WIN_APP_STATE_PERCENT030_1, + WIN_APP_STATE_PERCENT030_2,WIN_APP_STATE_PERCENT040_1, + WIN_APP_STATE_PERCENT040_2,WIN_APP_STATE_PERCENT050_1, + WIN_APP_STATE_PERCENT050_2,WIN_APP_STATE_PERCENT060_1, + WIN_APP_STATE_PERCENT060_2,WIN_APP_STATE_PERCENT070_1, + WIN_APP_STATE_PERCENT070_2,WIN_APP_STATE_PERCENT080_1, + WIN_APP_STATE_PERCENT080_2,WIN_APP_STATE_PERCENT090_1, + WIN_APP_STATE_PERCENT090_2,WIN_APP_STATE_PERCENT100_1, + WIN_APP_STATE_PERCENT100_2); + +procedure gnome_win_hints_init;cdecl;external libgnomeuidll name 'gnome_win_hints_init'; +procedure gnome_win_hints_set_layer(window:PGtkWidget; layer:TGnomeWinLayer);cdecl;external libgnomeuidll name 'gnome_win_hints_set_layer'; +function gnome_win_hints_get_layer(window:PGtkWidget):TGnomeWinLayer;cdecl;external libgnomeuidll name 'gnome_win_hints_get_layer'; +procedure gnome_win_hints_set_state(window:PGtkWidget; state:TGnomeWinState);cdecl;external libgnomeuidll name 'gnome_win_hints_set_state'; +function gnome_win_hints_get_state(window:PGtkWidget):TGnomeWinState;cdecl;external libgnomeuidll name 'gnome_win_hints_get_state'; +procedure gnome_win_hints_set_hints(window:PGtkWidget; skip:TGnomeWinHints);cdecl;external libgnomeuidll name 'gnome_win_hints_set_hints'; +function gnome_win_hints_get_hints(window:PGtkWidget):TGnomeWinHints;cdecl;external libgnomeuidll name 'gnome_win_hints_get_hints'; +procedure gnome_win_hints_set_workspace(window:PGtkWidget; workspace:gint);cdecl;external libgnomeuidll name 'gnome_win_hints_set_workspace'; +function gnome_win_hints_get_workspace(window:PGtkWidget):gint;cdecl;external libgnomeuidll name 'gnome_win_hints_get_workspace'; +procedure gnome_win_hints_set_current_workspace(workspace:gint);cdecl;external libgnomeuidll name 'gnome_win_hints_set_current_workspace'; +function gnome_win_hints_get_current_workspace:gint;cdecl;external libgnomeuidll name 'gnome_win_hints_get_current_workspace'; +function gnome_win_hints_get_workspace_names:PGList;cdecl;external libgnomeuidll name 'gnome_win_hints_get_workspace_names'; +function gnome_win_hints_get_workspace_count:gint;cdecl;external libgnomeuidll name 'gnome_win_hints_get_workspace_count'; +procedure gnome_win_hints_set_expanded_size(window:PGtkWidget; x:gint; y:gint; width:gint; height:gint);cdecl;external libgnomeuidll name 'gnome_win_hints_set_expanded_size'; +function gnome_win_hints_get_expanded_size(window:PGtkWidget; x:Pgint; y:Pgint; width:Pgint; height:Pgint):gboolean;cdecl;external libgnomeuidll name 'gnome_win_hints_get_expanded_size'; +procedure gnome_win_hints_set_moving(window:PGtkWidget; moving:gboolean);cdecl;external libgnomeuidll name 'gnome_win_hints_set_moving'; +procedure gnome_win_hints_set_app_state(window:PGtkWidget; state:TGnomeWinAppState);cdecl;external libgnomeuidll name 'gnome_win_hints_set_app_state'; +function gnome_win_hints_get_app_state(window:PGtkWidget):TGnomeWinAppState;cdecl;external libgnomeuidll name 'gnome_win_hints_get_app_state'; +function gnome_win_hints_wm_exists:gboolean;cdecl;external libgnomeuidll name 'gnome_win_hints_wm_exists'; +function gnome_win_hints_get_client_window_ids:PGList;cdecl;external libgnomeuidll name 'gnome_win_hints_get_client_window_ids'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gtkclock.inc b/packages/gnome1/src/libgnomeui/gtkclock.inc new file mode 100644 index 0000000000..dc7f4efa43 --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gtkclock.inc @@ -0,0 +1,57 @@ +{$IfDef read_interface} + +type + TGtkClockType = (GTK_CLOCK_INCREASING,GTK_CLOCK_DECREASING, + GTK_CLOCK_REALTIME); + + PGtkClock = ^TGtkClock; + TGtkClock = record + widget : TGtkLabel; + thetype : TGtkClockType; + timer_id : gint; + update_interval : gint; + seconds : time_t; + stopped : time_t; + fmt : Pgchar; + thetm : Ptm; + end; + GTK_CLOCK = PGTKClock; + + PGtkClockClass = ^TGtkClockClass; + TGtkClockClass = record + parent_class : TGtkLabelClass; + end; + GTK_CLOCK_CLASS = PGTKClockClass; + +function GTK_TYPE_CLOCK : TGTKType; +function GTK_IS_CLOCK(obj : Pointer) : gboolean; +function GTK_IS_CLOCK_CLASS(klass : Pointer) : gboolean; + +function gtk_clock_get_type:TGTKType;cdecl;external libgnomeuidll name 'gtk_clock_get_type'; +function gtk_clock_new(thetype:TGtkClockType):PGtkWidget;cdecl;external libgnomeuidll name 'gtk_clock_new'; +procedure gtk_clock_set_format(gclock:PGtkClock; fmt:Pgchar);cdecl;external libgnomeuidll name 'gtk_clock_set_format'; +procedure gtk_clock_set_seconds(gclock:PGtkClock; seconds:time_t);cdecl;external libgnomeuidll name 'gtk_clock_set_seconds'; +procedure gtk_clock_set_update_interval(gclock:PGtkClock; seconds:gint);cdecl;external libgnomeuidll name 'gtk_clock_set_update_interval'; +procedure gtk_clock_start(gclock:PGtkClock);cdecl;external libgnomeuidll name 'gtk_clock_start'; +procedure gtk_clock_stop(gclock:PGtkClock);cdecl;external libgnomeuidll name 'gtk_clock_stop'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GTK_TYPE_CLOCK : TGTKType; +begin + GTK_TYPE_CLOCK:=gtk_clock_get_type; +end; + +function GTK_IS_CLOCK(obj : Pointer) : gboolean; +begin + GTK_IS_CLOCK:=(obj<>nil) and GTK_IS_CLOCK_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GTK_IS_CLOCK_CLASS(klass : Pointer) : gboolean; +begin + GTK_IS_CLOCK_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GTK_TYPE_CLOCK); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gtkdial.inc b/packages/gnome1/src/libgnomeui/gtkdial.inc new file mode 100644 index 0000000000..002e72952a --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gtkdial.inc @@ -0,0 +1,93 @@ +{$IfDef read_interface} + +type + PGtkDial = ^TGtkDial; + TGtkDial = record + widget : TGtkWidget; + offscreen_pixmap : PGdkPixmap; + adjustment : PGtkAdjustment; + flag0 : word; + button : guint8; + radius : gint; + pointer_width : gint; + timer : guint32; + angle : gfloat; + percentage : gfloat; + old_value : gfloat; + old_lower : gfloat; + old_upper : gfloat; + end; + GTK_DIAL = PGtkDial; + +const + bm__GtkDial_policy = $3; + bp__GtkDial_policy = 0; + bm__GtkDial_view_only = $4; + bp__GtkDial_view_only = 2; +function policy(var a : TGtkDial) : guint; +procedure set_policy(var a : TGtkDial; __policy : guint); +function view_only(var a : TGtkDial) : guint; +procedure set_view_only(var a : TGtkDial; __view_only : guint); + +type + PGtkDialClass = ^TGtkDialClass; + TGtkDialClass = record + parent_class : TGtkWidgetClass; + end; + GTK_DIAL_CLASS = PGtkDialClass; + +function GTK_TYPE_DIAL : TGTKType; +function GTK_IS_DIAL(obj : Pointer) : gboolean; +function GTK_IS_DIAL_CLASS(klass : Pointer) : gboolean; + +function gtk_dial_new(adjustment:PGtkAdjustment):PGtkWidget;cdecl;external libgnomeuidll name 'gtk_dial_new'; +function gtk_dial_get_type:TGTKType;cdecl;external libgnomeuidll name 'gtk_dial_get_type'; +function gtk_dial_get_adjustment(dial:PGtkDial):PGtkAdjustment;cdecl;external libgnomeuidll name 'gtk_dial_get_adjustment'; +procedure gtk_dial_set_update_policy(dial:PGtkDial; policy:TGtkUpdateType);cdecl;external libgnomeuidll name 'gtk_dial_set_update_policy'; +procedure gtk_dial_set_adjustment(dial:PGtkDial; adjustment:PGtkAdjustment);cdecl;external libgnomeuidll name 'gtk_dial_set_adjustment'; +function gtk_dial_set_percentage(dial:PGtkDial; percent:gfloat):gfloat;cdecl;external libgnomeuidll name 'gtk_dial_set_percentage'; +function gtk_dial_get_percentage(dial:PGtkDial):gfloat;cdecl;external libgnomeuidll name 'gtk_dial_get_percentage'; +function gtk_dial_set_value(dial:PGtkDial; value:gfloat):gfloat;cdecl;external libgnomeuidll name 'gtk_dial_set_value'; +function gtk_dial_get_value(dial:PGtkDial):gfloat;cdecl;external libgnomeuidll name 'gtk_dial_get_value'; +procedure gtk_dial_set_view_only(dial:PGtkDial; view_only:gboolean);cdecl;external libgnomeuidll name 'gtk_dial_set_view_only'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GTK_TYPE_DIAL : TGTKType; +begin + GTK_TYPE_DIAL:=gtk_dial_get_type; +end; + +function GTK_IS_DIAL(obj : Pointer) : gboolean; +begin + GTK_IS_DIAL:=(obj<>nil) and GTK_IS_DIAL_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GTK_IS_DIAL_CLASS(klass : Pointer) : gboolean; +begin + GTK_IS_DIAL_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GTK_TYPE_DIAL); +end; + +function policy(var a : TGtkDial) : guint; +begin + policy:=(a.flag0 and bm__GtkDial_policy) shr bp__GtkDial_policy; +end; + +procedure set_policy(var a : TGtkDial; __policy : guint); +begin + a.flag0:=a.flag0 or ((__policy shl bp__GtkDial_policy) and bm__GtkDial_policy); +end; + +function view_only(var a : TGtkDial) : guint; +begin + view_only:=(a.flag0 and bm__GtkDial_view_only) shr bp__GtkDial_view_only; +end; + +procedure set_view_only(var a : TGtkDial; __view_only : guint); +begin + a.flag0:=a.flag0 or ((__view_only shl bp__GtkDial_view_only) and bm__GtkDial_view_only); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/gtkpixmapmenuitem.inc b/packages/gnome1/src/libgnomeui/gtkpixmapmenuitem.inc new file mode 100644 index 0000000000..926d2504bd --- /dev/null +++ b/packages/gnome1/src/libgnomeui/gtkpixmapmenuitem.inc @@ -0,0 +1,44 @@ +{$IfDef read_interface} + +type + PGtkPixmapMenuItem = ^TGtkPixmapMenuItem; + TGtkPixmapMenuItem = record + menu_item : TGtkMenuItem; + pixmap : PGtkWidget; + end; + GTK_PIXMAP_MENU_ITEM = PGtkPixmapMenuItem; + + PGtkPixmapMenuItemClass = ^TGtkPixmapMenuItemClass; + TGtkPixmapMenuItemClass = record + parent_class : TGtkMenuItemClass; + end; + GTK_PIXMAP_MENU_ITEM_CLASS = PGtkPixmapMenuItemClass; + +function GNOME_TYPE_PIXMAP_MENU_ITEM : TGTKType; +function GNOME_IS_PIXMAP_MENU_ITEM(obj : Pointer) : gboolean; +function GNOME_IS_PIXMAP_MENU_ITEM_CLASS(klass : Pointer) : gboolean; + +function gtk_pixmap_menu_item_get_type:TGtkType;cdecl;external libgnomeuidll name 'gtk_pixmap_menu_item_get_type'; +function gtk_pixmap_menu_item_new:PGtkWidget;cdecl;external libgnomeuidll name 'gtk_pixmap_menu_item_new'; +procedure gtk_pixmap_menu_item_set_pixmap(menu_item:PGtkPixmapMenuItem; pixmap:PGtkWidget);cdecl;external libgnomeuidll name 'gtk_pixmap_menu_item_set_pixmap'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function GNOME_TYPE_PIXMAP_MENU_ITEM : TGTKType; +begin + GNOME_TYPE_PIXMAP_MENU_ITEM:=gnome_dialog_get_type; +end; + +function GNOME_IS_PIXMAP_MENU_ITEM(obj : Pointer) : gboolean; +begin + GNOME_IS_PIXMAP_MENU_ITEM:=(obj<>nil) and GNOME_IS_PIXMAP_MENU_ITEM_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function GNOME_IS_PIXMAP_MENU_ITEM_CLASS(klass : Pointer) : gboolean; +begin + GNOME_IS_PIXMAP_MENU_ITEM_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=GNOME_TYPE_PIXMAP_MENU_ITEM); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/libgnomeui/libgnomeui.pp b/packages/gnome1/src/libgnomeui/libgnomeui.pp new file mode 100644 index 0000000000..a3d2aacb3c --- /dev/null +++ b/packages/gnome1/src/libgnomeui/libgnomeui.pp @@ -0,0 +1,254 @@ +unit libgnomeui; + +{off $DEFINE GNOME_EXCLUDE_EXPERIMENTAL} + +{$PACKRECORDS C} +{$mode objfpc} + +interface + +Uses glib, gdk, gdk_imlib, gtk, libgnome, libart; + +const + libgnomeuidll='gnomeui'; + +Type + va_list = pchar; + +{$define read_interface} +{$undef read_implementation} + +(* GNOME initialization *) + +{$include gnomeinit.inc} + + +(* GTK Helper Widgets *) + +{$include gtkpixmapmenuitem.inc}(* Menu item diplaying pixmap *) +{$include gtkclock.inc}(* clock widget for counting or realtime *) +{$include gtkdial.inc}(* Analog dial widget for number selection *) + + +(* GNOME MISC. Types/Routines/Consts *) +type + TGnomeStringCallback = procedure (_string:Pgchar; data:gpointer);cdecl; + TGnomeReplyCallback = procedure (reply:gint; data:gpointer);cdecl; + TGnomePreferencesType = (GNOME_PREFERENCES_NEVER,GNOME_PREFERENCES_USER, + GNOME_PREFERENCES_ALWAYS); + +{$include gnomeuidefs.inc} (* GNOME KEY CONST DEFINES *) +{$include gnomegeometry.inc} (* WINDOW Geometry <-> String *) +{$include gnometypebuiltins.inc} (* GTK type macros *) +{$include gnomeicontext.inc}(* object & routines for painting word-wrapped text *) +{$include gnomewinhints.inc} (* Convenience functions for working with XA_WIN_* hints *) +{$include gnomedentryedit.inc} (* object(not widget) for handling the editing of Desktop entries *) + +(* GNOME MISC. Required Widgets *) + +{$include gnomepixmap.inc} (* widget for diplaying pixmaps *) +{$include gnomedialog.inc} (* base dialog class *) +{$include gnomemessagebox.inc}(* message/error dialog class *) +{$include gnomeclient.inc} (*routines to add session-management to apps *) + + +(* GNOME APP. Core widgets *) + +{$include gnomeabout.inc} (* Dialog for creating app. about box *) +{$include gnomedock.inc} (* Docking Widget/Items & Layout *) +{$include gnomeapp.inc} (* Main App Window, simplifies toolbars, menus etc. *) +{$include gnomeappbar.inc} (* Main App bar, Status, progress, etc *) + + +(* GNOME STOCK WIDGETS/ROUTINES *) + +{$include gnomestock.inc} (* Stock images/icons *) +{$include gnomeapphelper.inc} (* Simplify stock menu/toolbar creation *) +{$include gnomedialogutil.inc}(* Simplify message/error dialog creation *) + +{$ifndef GNOME_EXCLUDE_EXPERIMENTAL} + {$include gnomeapputil.inc} (* App. Message Dialogs and Progress modifications *) +{$endif} + +{$include gnomepopupmenu.inc} (* routines for handling popup menus and attaching to widgets *) +{$include gnomepopuphelp.inc} (* add help, Cut, Copy & Paste menu to Widgets *) + + +(* GNOME ENTRY(aka Edit) Widgets *) + +{$include gnomedateedit.inc}(* Entry For Date & Time *) +{$include gnomeentry.inc} (* Entry with History *) +{$include gnomefileentry.inc} (* Entry For File Names *) +{$include gnomeiconentry.inc}(* Entry for selecting icons *) +{$include gnomenumberentry.inc}(* Entry for number input *) +{$include gnomepixmapentry.inc} (* Entry For large images *) + + +(* GNOME "Select" Widgets *) + +{$include gnomecolorpicker.inc} (* button tied to color dialog *) +{$include gnomefontpicker.inc} (* button tied to font dialog *) +{$include gnomepaperselector.inc} (* Widget used to select paper type *) +{$include gnomeiconsel.inc}(* Widget used to select an icon *) + + +(* GNOME Muliple Document Interface *) + +{$include gnomemdichild.inc} +{$include gnomemdigenericchild.inc} +{$include gnomemdi.inc} +{$include gnomemdisession.inc} + + +(* GNOME Canvas & Types *) + +{$include gnomecanvas.inc} +{$include gnomecanvasline.inc} +{$include gnomecanvasimage.inc} +{$include gnomecanvasload.inc} +{$include gnomecanvasrectellipse.inc} +{$include gnomecanvaspolygon.inc} +{$include gnomecanvastext.inc} +{$include gnomecanvaswidget.inc} +{$include gnomeiconitem.inc} + +{$include gnomecanvasutil.inc} + +(* GNOME Misc. Widgets *) + +{$include gnomecalculator.inc} (* fully functional embedable dialog widget *) +{$include gnomeiconlist.inc} (* Icon list widget *) +{$include gnomehref.inc} (* icon for displaying clickable url *) +{$include gnomeprocbar.inc} (* Gnome Process Bar *) + +{$ifndef GNOME_EXCLUDE_EXPERIMENTAL} + {$include gnomeanimator.inc} +{$endif} + +{$include gnomescores.inc} (* Game Dialog for displaying High scores *) +{$include gnomepropertybox.inc} (* Dialog Box for handling property configuration *) + +(* GNOME Druid Wizard System *) + +{$include gnomedruidpage.inc} +{$include gnomedruidpagestart.inc} +{$include gnomedruidpagestandard.inc} +{$include gnomedruidpagefinish.inc} +{$include gnomedruid.inc} + +implementation + +{$undef read_interface} +{$define read_implementation} + +(* GTK Helper Widgets *) + +{$include gtkpixmapmenuitem.inc}(* Menu item diplaying pixmap *) +{$include gtkclock.inc}(* clock widget for counting or realtime *) +{$include gtkdial.inc}(* Analog dial widget for number selection *) + + +(* GNOME MISC. Types/Routines/Consts *) + +{$include gnomeuidefs.inc} (* GNOME KEY CONST DEFINES *) +{$include gnomegeometry.inc} (* WINDOW Geometry <-> String *) +{$include gnomeicontext.inc}(* object & routines for painting word-wrapped text *) +{$include gnometypebuiltins.inc} (* GTK type macros *) +{$include gnomewinhints.inc} (* Convenience functions for working with XA_WIN_* hints *) +{$include gnomedentryedit.inc} (* object(not widget) for handling the editing of Desktop entries *) + + +(* GNOME MISC. Required Widgets *) + +{$include gnomepixmap.inc} (* widget for diplaying pixmaps *) +{$include gnomedialog.inc} (* base dialog class *) +{$include gnomemessagebox.inc}(* message/error dialog class *) +{$include gnomeclient.inc} (*routines to add session-management to apps *) + + +(* GNOME APP. Core widgets *) + +{$include gnomeabout.inc} (* Dialog for creating app. about box *) +{$include gnomedock.inc} (* Docking Widget/Items & Layout *) +{$include gnomeapp.inc} (* Main App Window, simplifies toolbars, menus etc. *) +{$include gnomeappbar.inc} (* Main App bar, Status, progress, etc *) + + +(* GNOME STOCK WIDGETS/ROUTINES *) + +{$include gnomestock.inc} (* Stock images/icons *) +{$include gnomeapphelper.inc} (* Simplify stock menu/toolbar creation *) +{$include gnomedialogutil.inc}(* Simplify message/error dialog creation *) + +{$ifndef GNOME_EXCLUDE_EXPERIMENTAL} + {$include gnomeapputil.inc} (* App. Message Dialogs and Progress modifications *) +{$endif} + +{$include gnomepopupmenu.inc} (* routines for handling popup menus and attaching to widgets *) +{$include gnomepopuphelp.inc} (* add help, Cut, Copy & Paste menu to Widgets *) + + +(* GNOME ENTRY(aka Edit) Widgets *) + +{$include gnomedateedit.inc}(* Entry For Date & Time *) +{$include gnomeentry.inc} (* Entry with History *) +{$include gnomefileentry.inc} (* Entry For File Names *) +{$include gnomeiconentry.inc}(* Entry for selecting icons *) +{$include gnomenumberentry.inc}(* Entry for number input *) +{$include gnomepixmapentry.inc} (* Entry For large images *) + + +(* GNOME "Select" Widgets *) + +{$include gnomecolorpicker.inc} (* button tied to color dialog *) +{$include gnomefontpicker.inc} (* button tied to font dialog *) +{$include gnomepaperselector.inc} (* Widget used to select paper type *) +{$include gnomeiconsel.inc}(* Widget used to select an icon *) + + +(* GNOME Muliple Document Interface *) + +{$include gnomemdichild.inc} +{$include gnomemdigenericchild.inc} +{$include gnomemdi.inc} +{$include gnomemdisession.inc} + + +(* GNOME Canvas & Types *) + +{$include gnomecanvas.inc} +{$include gnomecanvasline.inc} +{$include gnomecanvasimage.inc} +{$include gnomecanvasload.inc} +{$include gnomecanvasrectellipse.inc} +{$include gnomecanvaspolygon.inc} +{$include gnomecanvastext.inc} +{$include gnomecanvaswidget.inc} +{$include gnomeiconitem.inc} + +{$include gnomecanvasutil.inc} + +(* GNOME Misc. Widgets *) + +{$include gnomecalculator.inc} (* fully functional embedable dialog widget *) +{$include gnomeiconlist.inc} (* Icon list widget *) +{$include gnomehref.inc} (* icon for displaying clickable url *) +{$include gnomeprocbar.inc} (* Gnome Process Bar *) + +{$ifndef GNOME_EXCLUDE_EXPERIMENTAL} + {$include gnomeanimator.inc} +{$endif} + +{$include gnomescores.inc} (* Game Dialog for displaying High scores *) +{$include gnomepropertybox.inc} (* Dialog Box for handling property configuration *) + + +(* GNOME Druid Wizard System *) + +{$include gnomedruidpage.inc} +{$include gnomedruidpagestart.inc} +{$include gnomedruidpagestandard.inc} +{$include gnomedruidpagefinish.inc} +{$include gnomedruid.inc} + +end. diff --git a/packages/gnome1/src/zvt/libzvt.pp b/packages/gnome1/src/zvt/libzvt.pp new file mode 100644 index 0000000000..175d26e6c0 --- /dev/null +++ b/packages/gnome1/src/zvt/libzvt.pp @@ -0,0 +1,370 @@ +{ + + libzvt - Zed's Virtual Terminal + Copyright (C) 1998 Michael Zucchi + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. + + **********************************************************************} +unit libzvt; + +{$PACKRECORDS C} +{$Mode ObjFPC} + +interface + +{$linklib util} + +Uses glib, gdk, gtk, gdk_imlib; + +const + libzvtdll='zvt'; + +Type + PLongint = ^Longint; + PSmallInt = ^SmallInt; + PByte = ^Byte; + PWord = ^Word; + PDWord = ^DWord; + PDouble = ^Double; + + Ppid_t = ^pid_t; + pid_t = longint; + +{$define read_interface} +{$undef read_implementation} + +{$Include lists.inc} +{$Include vt.inc} +{$Include vtx.inc} + +const + ZVT_TERM_PIXMAP_SUPPORT = $01; + ZVT_TERM_EMBOLDEN_SUPPORT = $02; + ZVT_TERM_TRANSPARENCY_SUPPORT = $04; + ZVT_TERM_PIXMAPSCROLL_SUPPORT = $08; + ZVT_TERM_MATCH_SUPPORT = $10; + +type + PZvtTerm = ^TZvtTerm; + TZvtTerm = record + widget : TGtkWidget; + adjustment : PGtkAdjustment; + shadow_type : TGtkShadowType; + term_window : PGdkWindow; + vx : Pvtx; + charwidth : longint; + charheight : longint; + input_id : gint; + msg_id : gint; + timeout_id : gint; + set_grid_size_pending : gboolean; + grid_width : guint; + grid_height : guint; + cursor_bar : PGdkCursor; + cursor_dot : PGdkCursor; + cursor_current : PGdkCursor; + font : PGdkFont; + font_bold : PGdkFont; + scroll_gc : PGdkGC; + fore_gc : PGdkGC; + back_gc : PGdkGC; + fore_last : longint; + back_last : longint; + color_ctx : PGdkColorContext; + colors : array[0..17] of gulong; + ic : PGdkIC; + pixmap_filename : Pchar; + background : record + pix : PGdkPixmap; + x : longint; + y : longint; + w : longint; + h : longint; + end; + flag0 : word; + end; + ZVT_TERM = PzvtTerm; + +const + bm_TZvtTerm_cursor_on = $1; + bp_TZvtTerm_cursor_on = 0; + bm_TZvtTerm_cursor_filled = $2; + bp_TZvtTerm_cursor_filled = 1; + bm_TZvtTerm_cursor_blink_state = $4; + bp_TZvtTerm_cursor_blink_state = 2; + bm_TZvtTerm_blink_enabled = $8; + bp_TZvtTerm_blink_enabled = 3; + bm_TZvtTerm_in_expose = $10; + bp_TZvtTerm_in_expose = 4; + bm_TZvtTerm_scroll_on_keystroke = $20; + bp_TZvtTerm_scroll_on_keystroke = 5; + bm_TZvtTerm_scroll_on_output = $40; + bp_TZvtTerm_scroll_on_output = 6; + bm_TZvtTerm_transparent = $80; + bp_TZvtTerm_transparent = 7; + bm_TZvtTerm_shaded = $100; + bp_TZvtTerm_shaded = 8; + bm_TZvtTerm_swap_del_key = $200; + bp_TZvtTerm_swap_del_key = 9; + bm_TZvtTerm_del_is_del = $400; + bp_TZvtTerm_del_is_del = 10; + +function cursor_on(var a : TZvtTerm) : dword; +procedure set_cursor_on(var a : TZvtTerm; __cursor_on : dword); +function cursor_filled(var a : TZvtTerm) : dword; +procedure set_cursor_filled(var a : TZvtTerm; __cursor_filled : dword); +function cursor_blink_state(var a : TZvtTerm) : dword; +procedure set_cursor_blink_state(var a : TZvtTerm; __cursor_blink_state : dword); +function blink_enabled(var a : TZvtTerm) : dword; +procedure set_blink_enabled(var a : TZvtTerm; __blink_enabled : dword); +function in_expose(var a : TZvtTerm) : dword; +procedure set_in_expose(var a : TZvtTerm; __in_expose : dword); +function scroll_on_keystroke(var a : TZvtTerm) : dword; +procedure set_scroll_on_keystroke(var a : TZvtTerm; __scroll_on_keystroke : dword); +function scroll_on_output(var a : TZvtTerm) : dword; +procedure set_scroll_on_output(var a : TZvtTerm; __scroll_on_output : dword); +function transparent(var a : TZvtTerm) : dword; +procedure set_transparent(var a : TZvtTerm; __transparent : dword); +function shaded(var a : TZvtTerm) : dword; +procedure set_shaded(var a : TZvtTerm; __shaded : dword); +function swap_del_key(var a : TZvtTerm) : dword; +procedure set_swap_del_key(var a : TZvtTerm; __swap_del_key : dword); +function del_is_del(var a : TZvtTerm) : dword; +procedure set_del_is_del(var a : TZvtTerm; __del_is_del : dword); + +type + PZvtTermClass = ^TZvtTermClass; + TZvtTermClass = record + parent_class : TGtkWidgetClass; + child_died : procedure (term:PZvtTerm);cdecl; + title_changed : procedure (term:PZvtTerm; thetype:TVTTITLE_TYPE; newtitle:Pchar); + match_clicked : procedure (term:PZvtTerm; event:PGdkEventButton; match:Pchar; data:pointer); + end; + ZVT_TERM_CLASS = PZvtTermClass; + + Pzvtfont_t = ^Tzvtfont_t; + Tzvtfont_t = (ZVT_FONT_1BYTE := 0,ZVT_FONT_2BYTE,ZVT_FONT_FONTSET); + +const + ZVT_TERM_DO_UTMP_LOG = 1; + ZVT_TERM_DO_WTMP_LOG = 2; + ZVT_TERM_DO_LASTLOG = 4; + ZVT_BACKGROUND_SHADED = $01; + ZVT_BACKGROUND_SCROLL = $02; + +function ZVT_TYPE_TERM : TGTKType; +function ZVT_IS_TERM(obj : Pointer) : Boolean; +function ZVT_IS_TERM_CLASS(klass : Pointer) : Boolean; + + +function ZVT_GTK_TOPWGT(t : PGTKWidget) : PGTKWidget; +function ZVT_GTK_WINDOW(t : PGTKWidget) : PGTKWindow; +function ZVT_GDK_WINDOW(t : PGTKWidget) : PGDKWindow; +function ZVT_GDK_TOPWIN(t : PGTKWidget) : PGDKWindow; + +function zvt_term_new:PGtkWidget;cdecl;external libzvtdll name 'zvt_term_new'; +function zvt_term_new_with_size(cols:longint; rows:longint):PGtkWidget;cdecl;external libzvtdll name 'zvt_term_new_with_size'; +procedure zvt_term_reset(term:PZvtTerm; hard:longint);cdecl;external libzvtdll name 'zvt_term_reset'; +procedure zvt_term_feed(term:PZvtTerm; thetext:Pchar; len:longint);cdecl;external libzvtdll name 'zvt_term_feed'; +function zvt_term_writechild(term:PZvtTerm; data:Pchar; len:longint):longint;cdecl;external libzvtdll name 'zvt_term_writechild'; +function zvt_term_forkpty(term:PZvtTerm; do_uwtmp_log:longint):longint;cdecl;external libzvtdll name 'zvt_term_forkpty'; +function zvt_term_closepty(term:PZvtTerm):longint;cdecl;external libzvtdll name 'zvt_term_closepty'; +function zvt_term_killchild(term:PZvtTerm; signal:longint):longint;cdecl;external libzvtdll name 'zvt_term_killchild'; +procedure zvt_term_bell(zvt_term:pointer);cdecl;external libzvtdll name 'zvt_term_bell'; +function zvt_term_get_type:guint;cdecl;external libzvtdll name 'zvt_term_get_type'; +procedure zvt_term_set_scrollback(term:PZvtTerm; lines:longint);cdecl;external libzvtdll name 'zvt_term_set_scrollback'; +function zvt_term_get_buffer(term:PZvtTerm; len:Plongint; thetype:longint; sx:longint; sy:longint; + ex:longint; ey:longint):Pchar;cdecl;external libzvtdll name 'zvt_term_get_buffer'; +procedure zvt_term_set_font_name(term:PZvtTerm; thename:Pchar);cdecl;external libzvtdll name 'zvt_term_set_font_name'; +procedure zvt_term_set_fonts(term:PZvtTerm; font:PGdkFont; font_bold:PGdkFont);cdecl;external libzvtdll name 'zvt_term_set_fonts'; +procedure zvt_term_hide_pointer(term:PZvtTerm);cdecl;external libzvtdll name 'zvt_term_hide_pointer'; +procedure zvt_term_show_pointer(term:PZvtTerm);cdecl;external libzvtdll name 'zvt_term_show_pointer'; +procedure zvt_term_set_bell(term:PZvtTerm; state:gboolean);cdecl;external libzvtdll name 'zvt_term_set_bell'; +function zvt_term_get_bell(term:PZvtTerm):gboolean;cdecl;external libzvtdll name 'zvt_term_get_bell'; +procedure zvt_term_set_blink(term:PZvtTerm; state:gboolean);cdecl;external libzvtdll name 'zvt_term_set_blink'; +procedure zvt_term_set_scroll_on_keystroke(term:PZvtTerm; state:gboolean);cdecl;external libzvtdll name 'zvt_term_set_scroll_on_keystroke'; +procedure zvt_term_set_scroll_on_output(term:PZvtTerm; state:gboolean);cdecl;external libzvtdll name 'zvt_term_set_scroll_on_output'; +procedure zvt_term_set_color_scheme(term:PZvtTerm; red:Pgushort; grn:Pgushort; blu:Pgushort);cdecl;external libzvtdll name 'zvt_term_set_color_scheme'; +procedure zvt_term_set_default_color_scheme(term:PZvtTerm);cdecl;external libzvtdll name 'zvt_term_set_default_color_scheme'; +procedure zvt_term_set_del_key_swap(term:PZvtTerm; state:longint);cdecl;external libzvtdll name 'zvt_term_set_del_key_swap'; +procedure zvt_term_set_del_is_del(term:PZvtTerm; state:longint);cdecl;external libzvtdll name 'zvt_term_set_del_is_del'; +procedure zvt_term_set_wordclass(term:PZvtTerm; klass:Pbyte);cdecl;external libzvtdll name 'zvt_term_set_wordclass'; +function zvt_term_match_add(term:PZvtTerm; regex:Pchar; highlight_mask:uint32; data:pointer):longint;cdecl;external libzvtdll name 'zvt_term_match_add'; +procedure zvt_term_match_clear(term:PZvtTerm; regex:Pchar);cdecl;external libzvtdll name 'zvt_term_match_clear'; +function zvt_term_match_check(term:PZvtTerm; x:longint; y:longint; user_data_ptr:Ppointer):Pchar;cdecl;external libzvtdll name 'zvt_term_match_check'; +procedure zvt_term_set_background(terminal:PZvtTerm; pixmap_file:Pchar; transparent:gboolean; flags:longint);cdecl;external libzvtdll name 'zvt_term_set_background'; +procedure zvt_term_set_shadow_type(term:PZvtTerm; thetype:TGtkShadowType);cdecl;external libzvtdll name 'zvt_term_set_shadow_type'; +procedure zvt_term_set_size(term:PZvtTerm; width:guint; height:guint);cdecl;external libzvtdll name 'zvt_term_set_size'; +procedure zvt_term_set_open_im(term:PZvtTerm; state:gboolean);cdecl;external libzvtdll name 'zvt_term_set_open_im'; +function zvt_term_get_capabilities(term:PZvtTerm):guint32;cdecl;external libzvtdll name 'zvt_term_get_capabilities'; + +implementation + +{$define read_implementation} +{$undef read_interface} + +{$Include lists.inc} +{$Include vt.inc} +{$Include vtx.inc} + +function ZVT_TYPE_TERM : TGTKType; +begin + ZVT_TYPE_TERM:=zvt_term_get_type; +end; + +function ZVT_IS_TERM(obj : Pointer) : Boolean; +begin + ZVT_IS_TERM:=(obj<>nil) and ZVT_IS_TERM_CLASS(PGtkTypeObject(obj)^.klass); +end; + +function ZVT_IS_TERM_CLASS(klass : Pointer) : Boolean; +begin + ZVT_IS_TERM_CLASS:=(klass<>nil) and (PGtkTypeClass(klass)^.thetype=ZVT_TYPE_TERM); +end; + +function ZVT_GTK_TOPWGT(t : PGTKWidget) : PGTKWidget; +begin + ZVT_GTK_TOPWGT := gtk_widget_get_toplevel(t); +end; + +function ZVT_GTK_WINDOW(t : PGTKWidget) : PGTKWindow; +begin + ZVT_GTK_WINDOW := GTK_WINDOW(ZVT_GTK_TOPWGT(t)); +end; + +function ZVT_GDK_WINDOW(t : PGTKWidget) : PGDKWindow; +begin + ZVT_GDK_WINDOW := t^.window; +end; + +function ZVT_GDK_TOPWIN(t : PGTKWidget) : PGDKWindow; +begin + ZVT_GDK_TOPWIN := ZVT_GTK_TOPWGT(t)^.window; +end; + +function cursor_on(var a : TZvtTerm) : dword; +begin + cursor_on:=(a.flag0 and bm_TZvtTerm_cursor_on) shr bp_TZvtTerm_cursor_on; +end; + +procedure set_cursor_on(var a : TZvtTerm; __cursor_on : dword); +begin + a.flag0:=a.flag0 or ((__cursor_on shl bp_TZvtTerm_cursor_on) and bm_TZvtTerm_cursor_on); +end; + +function cursor_filled(var a : TZvtTerm) : dword; +begin + cursor_filled:=(a.flag0 and bm_TZvtTerm_cursor_filled) shr bp_TZvtTerm_cursor_filled; +end; + +procedure set_cursor_filled(var a : TZvtTerm; __cursor_filled : dword); +begin + a.flag0:=a.flag0 or ((__cursor_filled shl bp_TZvtTerm_cursor_filled) and bm_TZvtTerm_cursor_filled); +end; + +function cursor_blink_state(var a : TZvtTerm) : dword; +begin + cursor_blink_state:=(a.flag0 and bm_TZvtTerm_cursor_blink_state) shr bp_TZvtTerm_cursor_blink_state; +end; + +procedure set_cursor_blink_state(var a : TZvtTerm; __cursor_blink_state : dword); +begin + a.flag0:=a.flag0 or ((__cursor_blink_state shl bp_TZvtTerm_cursor_blink_state) and bm_TZvtTerm_cursor_blink_state); +end; + +function blink_enabled(var a : TZvtTerm) : dword; +begin + blink_enabled:=(a.flag0 and bm_TZvtTerm_blink_enabled) shr bp_TZvtTerm_blink_enabled; +end; + +procedure set_blink_enabled(var a : TZvtTerm; __blink_enabled : dword); +begin + a.flag0:=a.flag0 or ((__blink_enabled shl bp_TZvtTerm_blink_enabled) and bm_TZvtTerm_blink_enabled); +end; + +function in_expose(var a : TZvtTerm) : dword; +begin + in_expose:=(a.flag0 and bm_TZvtTerm_in_expose) shr bp_TZvtTerm_in_expose; +end; + +procedure set_in_expose(var a : TZvtTerm; __in_expose : dword); +begin + a.flag0:=a.flag0 or ((__in_expose shl bp_TZvtTerm_in_expose) and bm_TZvtTerm_in_expose); +end; + +function scroll_on_keystroke(var a : TZvtTerm) : dword; +begin + scroll_on_keystroke:=(a.flag0 and bm_TZvtTerm_scroll_on_keystroke) shr bp_TZvtTerm_scroll_on_keystroke; +end; + +procedure set_scroll_on_keystroke(var a : TZvtTerm; __scroll_on_keystroke : dword); +begin + a.flag0:=a.flag0 or ((__scroll_on_keystroke shl bp_TZvtTerm_scroll_on_keystroke) and bm_TZvtTerm_scroll_on_keystroke); +end; + +function scroll_on_output(var a : TZvtTerm) : dword; +begin + scroll_on_output:=(a.flag0 and bm_TZvtTerm_scroll_on_output) shr bp_TZvtTerm_scroll_on_output; +end; + +procedure set_scroll_on_output(var a : TZvtTerm; __scroll_on_output : dword); +begin + a.flag0:=a.flag0 or ((__scroll_on_output shl bp_TZvtTerm_scroll_on_output) and bm_TZvtTerm_scroll_on_output); +end; + +function transparent(var a : TZvtTerm) : dword; +begin + transparent:=(a.flag0 and bm_TZvtTerm_transparent) shr bp_TZvtTerm_transparent; +end; + +procedure set_transparent(var a : TZvtTerm; __transparent : dword); +begin + a.flag0:=a.flag0 or ((__transparent shl bp_TZvtTerm_transparent) and bm_TZvtTerm_transparent); +end; + +function shaded(var a : TZvtTerm) : dword; +begin + shaded:=(a.flag0 and bm_TZvtTerm_shaded) shr bp_TZvtTerm_shaded; +end; + +procedure set_shaded(var a : TZvtTerm; __shaded : dword); +begin + a.flag0:=a.flag0 or ((__shaded shl bp_TZvtTerm_shaded) and bm_TZvtTerm_shaded); +end; + +function swap_del_key(var a : TZvtTerm) : dword; +begin + swap_del_key:=(a.flag0 and bm_TZvtTerm_swap_del_key) shr bp_TZvtTerm_swap_del_key; +end; + +procedure set_swap_del_key(var a : TZvtTerm; __swap_del_key : dword); +begin + a.flag0:=a.flag0 or ((__swap_del_key shl bp_TZvtTerm_swap_del_key) and bm_TZvtTerm_swap_del_key); +end; + +function del_is_del(var a : TZvtTerm) : dword; +begin + del_is_del:=(a.flag0 and bm_TZvtTerm_del_is_del) shr bp_TZvtTerm_del_is_del; +end; + +procedure set_del_is_del(var a : TZvtTerm; __del_is_del : dword); +begin + a.flag0:=a.flag0 or ((__del_is_del shl bp_TZvtTerm_del_is_del) and bm_TZvtTerm_del_is_del); +end; + + +end. diff --git a/packages/gnome1/src/zvt/lists.inc b/packages/gnome1/src/zvt/lists.inc new file mode 100644 index 0000000000..aeb3e2bcd7 --- /dev/null +++ b/packages/gnome1/src/zvt/lists.inc @@ -0,0 +1,31 @@ +{$IfDef read_interface} + +type + Pvt_listnode = ^Tvt_listnode; + Tvt_listnode = record + next : Pvt_listnode; + prev : Pvt_listnode; + end; + + Pvt_list = ^Tvt_list; + Tvt_list = record + head : Pvt_listnode; + tail : Pvt_listnode; + tailpred : Pvt_listnode; + end; + +procedure vt_list_new(List:Pvt_list);cdecl;external libzvtdll name 'vt_list_new'; +function vt_list_addhead(list:Pvt_list; node:Pvt_listnode):Pvt_listnode;cdecl;external libzvtdll name 'vt_list_addhead'; +function vt_list_addtail(list:Pvt_list; node:Pvt_listnode):Pvt_listnode;cdecl;external libzvtdll name 'vt_list_addtail'; +function vt_list_empty(list:Pvt_list):longint;cdecl;external libzvtdll name 'vt_list_empty'; +function vt_list_remhead(list:Pvt_list):Pvt_listnode;cdecl;external libzvtdll name 'vt_list_remhead'; +function vt_list_remtail(list:Pvt_list):Pvt_listnode;cdecl;external libzvtdll name 'vt_list_remtail'; +function vt_list_remove(node:Pvt_listnode):Pvt_listnode;cdecl;external libzvtdll name 'vt_list_remove'; +function vt_list_insert(list:Pvt_list; p:Pvt_listnode; node:Pvt_listnode):Pvt_listnode;cdecl;external libzvtdll name 'vt_list_insert'; +function vt_list_index(list:Pvt_list; index:longint):Pvt_listnode;cdecl;external libzvtdll name 'vt_list_index'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +{$Endif read_implementation} diff --git a/packages/gnome1/src/zvt/vt.inc b/packages/gnome1/src/zvt/vt.inc new file mode 100644 index 0000000000..e5365f2004 --- /dev/null +++ b/packages/gnome1/src/zvt/vt.inc @@ -0,0 +1,190 @@ +{$IfDef read_interface} + +const + UPDATE_CHANGES = $00; + UPDATE_REFRESH = $01; + UPDATE_SCROLLBACK = $02; + +type + Puint32 = ^uint32; + uint32 = dword; + +const + VTPARAM_MAXARGS = 5; + VTPARAM_ARGMAX = 20; + VTPARAM_INTARGS = 20; + +type + Pvt_line = ^Tvt_line; + Tvt_line = record + next : Pvt_line; + prev : Pvt_line; + line : longint; + width : longint; + modcount : longint; + data : array[0..0] of uint32; + end; + + PVTTITLE_TYPE = ^TVTTITLE_TYPE; + TVTTITLE_TYPE = (VTTITLE_WINDOWICON := 0,VTTITLE_ICON, + VTTITLE_WINDOW,VTTITLE_XPROPERTY); + + const + VTATTR_BOLD = $40000000; + VTATTR_UNDERLINE = $20000000; + VTATTR_BLINK = $10000000; + VTATTR_REVERSE = $08000000; + VTATTR_CONCEALED = $04000000; + VTATTR_MULTIBYTE = $80000000; + VTATTR_MASK = $ffff0000; + VTATTR_DATAMASK = not (VTATTR_MASK); + VTATTR_CLEARMASK = not (((VTATTR_BOLD or VTATTR_UNDERLINE) or VTATTR_BLINK) or VTATTR_REVERSE); + VTATTR_FORECOLOURM = $03e00000; + VTATTR_BACKCOLOURM = $001f0000; + VTATTR_FORECOLOURB = 21; + VTATTR_BACKCOLOURB = 16; + + type + Pvt_em = ^Tvt_em; + Tvt_em = record + cursorx : longint; + cursory : longint; + width : longint; + height : longint; + scrolltop : longint; + scrollbottom : longint; + childpid : pid_t; + childfd : longint; + keyfd : longint; + pty_tag : pointer; + msgfd : longint; + savex : longint; + savey : longint; + savemode : uint32; + saveattr : uint32; + saveremaptable : Pbyte; + savethis : Pvt_line; + cx : longint; + cy : longint; + sx : longint; + sy : longint; + remaptable : Pbyte; + Gx : longint; + G : array[0..3] of Pbyte; + attr : uint32; + mode : uint32; + arg : record + case longint of + 0 : ( txt : record + args_dummy : array[0..(VTPARAM_MAXARGS)-1] of Pbyte; + args_mem : array[0..(VTPARAM_MAXARGS * VTPARAM_ARGMAX)-1] of char; + argptr_dummy : ^Pbyte; + outptr : Pchar; + outend_dummy : Pchar; + end ); + 1 : ( num : record + intargs : array[0..(VTPARAM_INTARGS)-1] of dword; + intarg : dword; + end ); + end; + argcnt : longint; + state : longint; + this_line : Pvt_line; + lines : Tvt_list; + lines_back : Tvt_list; + lines_alt : Tvt_list; + scrollback : Tvt_list; + scrollbacklines : longint; + scrollbackoffset : longint; + scrollbackold : longint; + scrollbackmax : longint; + ring_my_bell : procedure (user_data:pointer);cdecl; + change_my_name : procedure (user_data:pointer; _type:TVTTITLE_TYPE; name:Pchar);cdecl; + dtterm_seq : procedure (user_data:pointer);cdecl; + user_data : pointer; + decode : record + case longint of + 0 : ( utf8 : record + wchar : uint32; + shiftchar : longint; + shift : longint; + end ); + end; + coding : longint; + end; + + + const + ZVT_CODE_ISOLATIN1 = 0; + ZVT_CODE_UTF8 = 1; + VTMODE_INSERT = $00000001; + VTMODE_SEND_MOUSE = $02; + VTMODE_WRAPOFF = $04; + VTMODE_APP_CURSOR = $00000008; + VTMODE_RELATIVE = $10; + VTMODE_APP_KEYPAD = $20; + VTMODE_SEND_MOUSE_PRESS = $42; + VTMODE_SEND_MOUSE_BOTH = $82; + VTMODE_SEND_MOUSE_MASK = $c2; + VTMODE_BLANK_CURSOR = $100; + VTMODE_ALTSCREEN = $80000000; + + const + VT_THRESHHOLD = 4; + +function vt_init(vt:Pvt_em; width:longint; height:longint):Pvt_em;cdecl;external libzvtdll name 'vt_init'; +procedure vt_destroy(vt:Pvt_em);cdecl;external libzvtdll name 'vt_destroy'; +procedure vt_resize(vt:Pvt_em; width:longint; height:longint; pixwidth:longint; pixheight:longint);cdecl;external libzvtdll name 'vt_resize'; +procedure vt_parse_vt(vt:Pvt_em; ptr:Pchar; length:longint);cdecl;external libzvtdll name 'vt_parse_vt'; +procedure vt_swap_buffers(vt:Pvt_em);cdecl;external libzvtdll name 'vt_swap_buffers'; +function vt_forkpty(vt:Pvt_em; do_uwtmp_log:longint):pid_t;cdecl;external libzvtdll name 'vt_forkpty'; +function vt_readchild(vt:Pvt_em; buffer:Pchar; len:longint):longint;cdecl;external libzvtdll name 'vt_readchild'; +function vt_writechild(vt:Pvt_em; buffer:Pchar; len:longint):longint;cdecl;external libzvtdll name 'vt_writechild'; +function vt_report_button(vt:Pvt_em; down:longint; button:longint; qual:longint; x:longint; + y:longint):longint;cdecl;external libzvtdll name 'vt_report_button'; +procedure vt_scrollback_set(vt:Pvt_em; lines:longint);cdecl;external libzvtdll name 'vt_scrollback_set'; +function vt_killchild(vt:Pvt_em; signal:longint):longint;cdecl;external libzvtdll name 'vt_killchild'; +function vt_closepty(vt:Pvt_em):longint;cdecl;external libzvtdll name 'vt_closepty'; +procedure vt_reset_terminal(vt:Pvt_em; hard:longint);cdecl;external libzvtdll name 'vt_reset_terminal'; +function vt_line_mblen(x:longint; line:Pvt_line):longint;cdecl;external libzvtdll name 'vt_line_mblen'; +function vt_query_line_mbchar(x:longint; line:Pvt_line):longint;cdecl;external libzvtdll name 'vt_query_line_mbchar'; + +Function VT_LINE_SIZE(width : Longint) : Longint; +Function VTATTR_CLEAR : Longint; +Function VT_BLANK(n : Longint) : Boolean; +Function VT_ASCII(n : Longint) : Longint; +function VT_BMASK(n : longint) : longint; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +Function VT_LINE_SIZE(width : Longint) : Longint; +begin + VT_LINE_SIZE := sizeof(Tvt_line) + (sizeof(uint32) * (width)); +end; + +Function VTATTR_CLEAR : Longint; +begin + VTATTR_CLEAR := (16 shl VTATTR_FORECOLOURB) or (17 shl VTATTR_BACKCOLOURB) or 0; +end; + +Function VT_BLANK(n : Longint) : Boolean; +begin + VT_BLANK := (n = 0) or (n = 9) or (n = 32); +end; + +Function VT_ASCII(n : Longint) : Longint; +begin + If ((n and VTATTR_DATAMASK) = 0) or ((n and VTATTR_DATAMASK) = 9) then + VT_ASCII := 32 + else + VT_ASCII := n and VTATTR_DATAMASK; +end; + +function VT_BMASK(n : longint) : longint; +begin + VT_BMASK := N and (VTATTR_FORECOLOURM or VTATTR_BACKCOLOURM or VTATTR_REVERSE or VTATTR_UNDERLINE); +end; + +{$Endif read_implementation} diff --git a/packages/gnome1/src/zvt/vtx.inc b/packages/gnome1/src/zvt/vtx.inc new file mode 100644 index 0000000000..11c3f999a1 --- /dev/null +++ b/packages/gnome1/src/zvt/vtx.inc @@ -0,0 +1,129 @@ +{$IfDef read_interface} + +type + PVT_SELTYPE = ^TVT_SELTYPE; + TVT_SELTYPE = (VT_SELTYPE_NONE := 0,VT_SELTYPE_CHAR,VT_SELTYPE_WORD,VT_SELTYPE_LINE,VT_SELTYPE_MAGIC); + +const + VT_SELTYPE_MASK = $ff; + VT_SELTYPE_BYEND = $8000; + VT_SELTYPE_BYSTART = $4000; + VT_SELTYPE_MOVED = $2000; + +type + PVT_SCROLLTYPE = ^TVT_SCROLLTYPE; + TVT_SCROLLTYPE = (VT_SCROLL_ALWAYS := 0,VT_SCROLL_SOMETIMES,VT_SCROLL_NEVER); + + Pvt_magic_match = ^Tvt_magic_match; + Pvt_match = ^Tvt_match; + Pvt_match_block = ^Tvt_match_block; + + Pvtx = ^Tvtx; + Tvtx = record + vt : Tvt_em; + flag0 : word; + selection_data : Puint32; + selection_size : longint; + wordclass : array[0..31] of byte; + selected : longint; + selectiontype : TVT_SELTYPE; + selstartx : longint; + selstarty : longint; + selendx : longint; + selendy : longint; + selstartxold : longint; + selstartyold : longint; + selendxold : longint; + selendyold : longint; + draw_text : procedure (user_data:pointer; line:Pvt_line; row:longint; col:longint; len:longint; + attr:longint);cdecl; + scroll_area : procedure (user_data:pointer; firstrow:longint; count:longint; offset:longint; fill:longint); cdecl; + cursor_state : function (user_data:pointer; state:longint):longint; cdecl; + magic_list : Tvt_list; + matches : Pvt_match; + magic_matched : longint; + match_shown : Pvt_match; + scroll_type : byte; + end; + + {$Warning (T)regex_t defined for (T)vt_magic_match may be wrong!!} + Tregex_t = Record + buffer : PByte; + allocated : LongWord; + sed : LongWord; + syntax : LongWord; + fastmap : PChar; + translate : PChar; + can_be_null : Word; + regs_allocated : Word; + fastmap_accurate : Word; + no_sub : Word; + not_bol : Word; + not_eol : Word; + newline_anchor : Word; + end; + + Tvt_magic_match = record + next : Pvt_magic_match; + prev : Pvt_magic_match; + regex : Pchar; + preg : Tregex_t; + highlight_mask : uint32; + user_data : pointer; + end; + + Tvt_match = record + next : Pvt_match; + match : Pvt_magic_match; + matchstr : Pchar; + blocks : Pvt_match_block; + end; + + Tvt_match_block = record + next : Pvt_match_block; + line : Pvt_line; + saveline : Pvt_line; + lineno : dword; + start : dword; + theend : dword; + end; + +const + bm_Tvtx_back_match = $1; + bp_Tvtx_back_match = 0; +function back_match(var a : Tvtx) : dword; +procedure set_back_match(var a : Tvtx; __back_match : dword); + +function vt_get_selection(vx:Pvtx; size:longint; len:Plongint):Pchar;cdecl;external libzvtdll name 'vt_get_selection'; +procedure vt_clear_selection(vx:Pvtx);cdecl;external libzvtdll name 'vt_clear_selection'; +procedure vt_fix_selection(vx:Pvtx);cdecl;external libzvtdll name 'vt_fix_selection'; +procedure vt_draw_selection(vx:Pvtx);cdecl;external libzvtdll name 'vt_draw_selection'; +procedure vt_update_rect(vx:Pvtx; fill:longint; sx:longint; sy:longint; ex:longint; + ey:longint);cdecl;external libzvtdll name 'vt_update_rect'; +procedure vt_update(vt:Pvtx; state:longint);cdecl;external libzvtdll name 'vt_update'; +procedure vt_draw_cursor(vx:Pvtx; state:longint);cdecl;external libzvtdll name 'vt_draw_cursor'; +procedure vt_set_wordclass(vx:Pvtx; s:Pbyte);cdecl;external libzvtdll name 'vt_set_wordclass'; +function vt_get_attr_at(vx:Pvtx; col:longint; row:longint):longint;cdecl;external libzvtdll name 'vt_get_attr_at'; +procedure vt_free_match_blocks(vx:Pvtx);cdecl;external libzvtdll name 'vt_free_match_blocks'; +procedure vt_getmatches(vx:Pvtx);cdecl;external libzvtdll name 'vt_getmatches'; +procedure vt_match_clear(vx:Pvtx; regex:Pchar);cdecl;external libzvtdll name 'vt_match_clear'; +function vt_match_check(vx:Pvtx; x:longint; y:longint):Pvt_match;cdecl;external libzvtdll name 'vt_match_check'; +procedure vt_match_highlight(vx:Pvtx; m:Pvt_match);cdecl;external libzvtdll name 'vt_match_highlight'; +function vtx_new(width:longint; height:longint; user_data:pointer):Pvtx;cdecl;external libzvtdll name 'vtx_new'; +procedure vtx_destroy(vx:Pvtx);cdecl;external libzvtdll name 'vtx_destroy'; + +{$EndIf read_interface} + +{$Ifdef read_implementation} + +function back_match(var a : Tvtx) : dword; +begin + back_match:=(a.flag0 and bm_Tvtx_back_match) shr bp_Tvtx_back_match; +end; + +procedure set_back_match(var a : Tvtx; __back_match : dword); +begin + a.flag0:=a.flag0 or ((__back_match shl bp_Tvtx_back_match) and bm_Tvtx_back_match); +end; + +{$Endif read_implementation} |