Hello, FPC developers' list

Here is the patch wich:
- adds missed gdk 2.4 symbols

Please apply a patch and add gdkspawn.inc to the trunk and the fixes branch.

gdk 2.6 and gtk 2.4, 2.6 symbols will follow later.

Best regards,
Paul Ishenin.
Index: packages/gtk2/src/gtk+/gdk/gdk2.pas
===================================================================
--- packages/gtk2/src/gtk+/gdk/gdk2.pas (revision 11559)
+++ packages/gtk2/src/gtk+/gdk/gdk2.pas (working copy)
@@ -189,6 +189,7 @@
 procedure gdk_threads_enter; cdecl; external gdklib;
 procedure gdk_threads_leave; cdecl; external gdklib;
 procedure gdk_threads_init; cdecl; external gdklib;
+procedure gdk_threads_set_lock_functions(enter_fn: TGCallback; leave_fn: 
TGCallback); cdecl; external gdklib;
 
 procedure _GDK_THREADS_ENTER;
 procedure _GDK_THREADS_LEAVE;
Index: packages/gtk2/src/gtk+/gdk/gdkcursor.inc
===================================================================
--- packages/gtk2/src/gtk+/gdk/gdkcursor.inc    (revision 11559)
+++ packages/gtk2/src/gtk+/gdk/gdkcursor.inc    (working copy)
@@ -114,6 +114,7 @@
 
 function gdk_cursor_new_from_pixmap(source:PGdkPixmap; mask:PGdkPixmap; 
fg:PGdkColor; bg:PGdkColor; x:gint;
            y:gint):PGdkCursor; cdecl; external gdklib;
+function gdk_cursor_new_from_pixbuf(display: PGdkDisplay; pixbuf: PGdkPixbuf; 
x, y: gint): PGdkCursor; cdecl; external gdklib;
 function gdk_cursor_get_display(cursor: PGdkCursor):PGdkDisplay; cdecl; 
external gdklib;
 function gdk_cursor_get_screen(cursor:PGdkCursor):PGdkScreen; cdecl; external 
gdklib;
 function gdk_cursor_ref(cursor:PGdkCursor):PGdkCursor; cdecl; external gdklib;
Index: packages/gtk2/src/gtk+/gdk/gdkdisplay.inc
===================================================================
--- packages/gtk2/src/gtk+/gdk/gdkdisplay.inc   (revision 11559)
+++ packages/gtk2/src/gtk+/gdk/gdkdisplay.inc   (working copy)
@@ -84,6 +84,14 @@
 procedure gdk_display_get_pointer(display:PGdkDisplay; screen :PGdkScreen; x 
:Pgint; y : Pgint; mask : PGdkModifierType); cdecl; external gdklib;
 function gdk_display_get_window_at_pointer(display:PGdkDisplay; win_x: Pgint; 
win_y: Pgint): PGdkWindow; cdecl; external gdklib;
 function gdk_display_set_pointer_hooks(display: PGdkDisplay; new_hooks: 
PGdkDisplayPointerHooks): PGdkDisplayPointerHooks; cdecl; external gdklib;
+// 2.4 
+procedure gdk_display_flush(display: PGdkDisplay); cdecl; external gdklib;
+function gdk_display_get_default_cursor_size(display: PGdkDisplay): guint; 
cdecl; external gdklib;
+procedure gdk_display_get_maximal_cursor_size(display: PGdkDisplay; w, h: 
pguint); cdecl; external gdklib;
+function gdk_display_get_default_group(display: PGdkDisplay): PGdkWindow; 
cdecl; external gdklib;
+procedure gdk_display_set_double_click_distance(display: PGdkDisplay; 
distance: guint); cdecl; external gdklib;
+function gdk_display_supports_cursor_alpha(display: PGdkDisplay): gboolean; 
cdecl; external gdklib;
+function gdk_display_supports_cursor_color(display: PGdkDisplay): gboolean; 
cdecl; external gdklib;
 {$endif read_interface_rest}
 
 
//------------------------------------------------------------------------------
Index: packages/gtk2/src/gtk+/gdk/gdkdrawable.inc
===================================================================
--- packages/gtk2/src/gtk+/gdk/gdkdrawable.inc  (revision 11559)
+++ packages/gtk2/src/gtk+/gdk/gdkdrawable.inc  (working copy)
@@ -168,6 +168,9 @@
 { GDK_DISABLE_DEPRECATED  }
 
 function gdk_drawable_get_image(drawable:PGdkDrawable; x:gint; y:gint; 
width:gint; height:gint):PGdkImage; cdecl; external gdklib;
+function gdk_drawable_copy_to_image(drawable:PGdkDrawable; image: PGdkImage; 
src_x: gint; src_y: gint; dest_x: gint; dest_y: gint;
+           width: gint; height: gint):PGdkImage; cdecl; external gdklib;
+
 function gdk_drawable_get_clip_region(drawable:PGdkDrawable):PGdkRegion; 
cdecl; external gdklib;
 function gdk_drawable_get_visible_region(drawable:PGdkDrawable):PGdkRegion; 
cdecl; external gdklib;
 {$endif read_interface_rest}
Index: packages/gtk2/src/gtk+/gdk/gdkincludes.inc
===================================================================
--- packages/gtk2/src/gtk+/gdk/gdkincludes.inc  (revision 11559)
+++ packages/gtk2/src/gtk+/gdk/gdkincludes.inc  (working copy)
@@ -24,6 +24,7 @@
 {$include gdkdisplay.inc}
 {$include gdkscreen.inc}
 {$include gdkselection.inc}
+{$include gdkspawn.inc}
 {$include gdktypes.inc}
 {$include gdkvisual.inc}
 {$include gdkwindow.inc}
Index: packages/gtk2/src/gtk+/gdk/gdkwindow.inc
===================================================================
--- packages/gtk2/src/gtk+/gdk/gdkwindow.inc    (revision 11559)
+++ packages/gtk2/src/gtk+/gdk/gdkwindow.inc    (working copy)
@@ -421,6 +421,7 @@
 procedure gdk_window_set_decorations(window:PGdkWindow; 
decorations:TGdkWMDecoration); cdecl; external gdklib;
 function gdk_window_get_decorations(window:PGdkWindow; 
decorations:PGdkWMDecoration):gboolean; cdecl; external gdklib;
 procedure gdk_window_set_functions(window:PGdkWindow; 
functions:TGdkWMFunction); cdecl; external gdklib;
+function gdk_window_get_group(window: PGdkWindow): PGdkWindow; cdecl; external 
gdklib;
 
 {$ifndef GDK_MULTIHEAD_SAFE}
 function gdk_window_get_toplevels:PGList; cdecl; external gdklib;
@@ -482,6 +483,9 @@
 procedure gdk_window_set_skip_pager_hint(window: PGdkWindow; skips_pager: 
gboolean); cdecl; external gdklib;
 procedure gdk_window_set_skip_taskbar_hint(window: PGdkWindow; skips_taskbar: 
gboolean); cdecl; external gdklib;
 procedure gdk_window_unfullscreen(window: PGdkWindow); cdecl; external gdklib;
+procedure gdk_window_set_accept_focus(window: PGdkWindow; accept_focus: 
gboolean); cdecl; external gdklib;
+procedure gdk_window_set_keep_above(window: PGdkWindow; setting: gboolean); 
cdecl; external gdklib;
+procedure gdk_window_set_keep_below(window: PGdkWindow; setting: gboolean); 
cdecl; external gdklib;
 {$endif read_interface_rest}
 
 
//------------------------------------------------------------------------------
// included by gdk2.pp

{$IFDEF read_interface_rest}
function gdk_spawn_on_screen(screen: PGdkScreen; working_directory: Pgchar; 
argv: PPgchar; envp: PPgchar;
           flags: TGSpawnFlags; child_setup: TGSpawnChildSetupFunc; user_data: 
gpointer; child_pid: Pgint;
           error: PPGError): gboolean; cdecl; external gdklib;

function gdk_spawn_on_screen_with_pipes(screen: PGdkScreen; working_directory: 
Pgchar; argv: PPgchar; envp: PPgchar;
           flags: TGSpawnFlags; child_setup: TGSpawnChildSetupFunc; user_data: 
gpointer; child_pid: Pgint;
           standard_input: Pgint; standard_output: Pgint; standard_error: 
Pgint; error: PPGError): gboolean; cdecl; external gdklib;

function gdk_spawn_command_line_on_screen(screen: PGdkScreen; command_line: 
Pgchar; error: PPGError): gboolean; cdecl; external gdklib;
{$endif read_interface_rest}
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to