summaryrefslogtreecommitdiff
path: root/packages/gtk2
diff options
context:
space:
mode:
authormichael <michael@3ad0048d-3df7-0310-abae-a5850022a9f2>2008-08-12 13:03:21 +0000
committermichael <michael@3ad0048d-3df7-0310-abae-a5850022a9f2>2008-08-12 13:03:21 +0000
commit143a465a21140fe5368f9fa5ac49c1c2c136e47a (patch)
tree6a067e5e63994abdc29446fd3f6acb23fe47553e /packages/gtk2
parent6ad3f224f52207ef7b196280254fbb49fe6bb48d (diff)
downloadfpc-143a465a21140fe5368f9fa5ac49c1c2c136e47a.tar.gz
* Patch from Paul Ishenin:
- adds missing gdk 2.2 symbols - added missing types: GdkDisplayManager, GdkDisplayPointerHooks git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@11554 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'packages/gtk2')
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdk2.pas3
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkcolor.inc1
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkcursor.inc2
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkdisplay.inc20
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkdisplaymanager.inc76
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkdnd.inc2
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkdrawable.inc2
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkevents.inc4
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkincludes.inc1
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkscreen.inc4
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkvisual.inc1
-rw-r--r--packages/gtk2/src/gtk+/gdk/gdkwindow.inc5
12 files changed, 115 insertions, 6 deletions
diff --git a/packages/gtk2/src/gtk+/gdk/gdk2.pas b/packages/gtk2/src/gtk+/gdk/gdk2.pas
index 3441960018..aaa9f0f389 100644
--- a/packages/gtk2/src/gtk+/gdk/gdk2.pas
+++ b/packages/gtk2/src/gtk+/gdk/gdk2.pas
@@ -106,6 +106,7 @@ type
procedure gdk_parse_args(argc:Pgint; var argv:PPgchar); cdecl; external gdklib;
procedure gdk_init(argc:Pgint; var argv:PPgchar); cdecl; external gdklib;
function gdk_init_check(argc:Pgint; var argv:PPgchar):gboolean; cdecl; external gdklib;
+procedure gdk_notify_startup_complete; cdecl; external gdklib;
{$ifndef GDK_DISABLE_DEPRECATED}
procedure gdk_exit(error_code:gint); cdecl; external gdklib;
@@ -174,8 +175,6 @@ function gdk_event_send_client_message(event:PGdkEvent; xid:guint32):gboolean; c
procedure gdk_event_send_clientmessage_toall(event:PGdkEvent); cdecl; external gdklib;
{$endif}
-function gdk_event_send_client_message_for_display(display:PGdkDisplay; event:PGdkEvent; xid:guint32):gboolean; cdecl; external gdklib;
-
{$IFNDEF KYLIX}
{ Threading }
diff --git a/packages/gtk2/src/gtk+/gdk/gdkcolor.inc b/packages/gtk2/src/gtk+/gdk/gdkcolor.inc
index c0df91699b..28fbc05434 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkcolor.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkcolor.inc
@@ -74,6 +74,7 @@ function gdk_colormap_alloc_colors(colormap:PGdkColormap; colors:PGdkColor; ncol
function gdk_colormap_alloc_color(colormap:PGdkColormap; color:PGdkColor; writeable:gboolean; best_match:gboolean):gboolean; cdecl; external gdklib;
procedure gdk_colormap_free_colors(colormap:PGdkColormap; colors:PGdkColor; ncolors:gint); cdecl; external gdklib;
procedure gdk_colormap_query_color(colormap:PGdkColormap; pixel:gulong; result:PGdkColor); cdecl; external gdklib;
+function gdk_colormap_get_screen(cmap: PGdkColormap):PGdkScreen; cdecl; external gdklib;
function gdk_colormap_get_visual(colormap:PGdkColormap):PGdkVisual; cdecl; external gdklib;
function gdk_color_copy(color:PGdkColor):PGdkColor; cdecl; external gdklib;
procedure gdk_color_free(color:PGdkColor); cdecl; external gdklib;
diff --git a/packages/gtk2/src/gtk+/gdk/gdkcursor.inc b/packages/gtk2/src/gtk+/gdk/gdkcursor.inc
index b806a2e46e..a8b91f3026 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkcursor.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkcursor.inc
@@ -105,6 +105,7 @@ function GDK_IS_CURSOR(anObject : pointer) : boolean;
{ Cursors }
function gdk_cursor_get_type:GType; cdecl; external gdklib;
+function gdk_cursor_new_for_display(display: PGdkDisplay; cursor_type:TGdkCursorType):PGdkCursor; cdecl; external gdklib;
function gdk_cursor_new_for_screen(screen:PGdkScreen; cursor_type:TGdkCursorType):PGdkCursor; cdecl; external gdklib;
{$ifndef GDK_MULTIHEAD_SAFE}
@@ -113,6 +114,7 @@ function gdk_cursor_new(cursor_type:TGdkCursorType):PGdkCursor; cdecl; external
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_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;
procedure gdk_cursor_unref(cursor:PGdkCursor); cdecl; external gdklib;
diff --git a/packages/gtk2/src/gtk+/gdk/gdkdisplay.inc b/packages/gtk2/src/gtk+/gdk/gdkdisplay.inc
index fd4f8c065a..3c8e56f268 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkdisplay.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkdisplay.inc
@@ -2,6 +2,7 @@
{$IFDEF read_forward_definitions}
PGdkDisplay = ^TGdkDisplay;
+ PGdkDisplayPointerHooks = ^TGdkDisplayPointerHooks;
{$ENDIF read_forward_definitions}
//------------------------------------------------------------------------------
@@ -23,6 +24,12 @@
button_window : array[0..1] of PGdkWindow;
button_number : array[0..1] of guint;
double_click_time : guint;
+ core_pointer: PGdkDevice;
+ pointer_hooks: PGdkDisplayPointerHooks;
+ closed: guint;
+ double_click_distance: guint;
+ button_x: array[0..1] of guint;
+ button_y: array[0..1] of guint;
end;
PGdkDisplayClass = ^TGdkDisplayClass;
@@ -33,6 +40,12 @@
get_screen : function (display:PGdkDisplay; screen_num:gint):PGdkScreen; cdecl;
get_default_screen : function (display:PGdkDisplay):PGdkScreen; cdecl;
end;
+
+ TGdkDisplayPointerHooks = record
+ get_pointer: procedure(display: PGdkDisplay; screen: PPGdkScreen; x: Pgint; y: Pgint; mask: PGdkModifierType); cdecl;
+ window_get_pointer: function(display: PGdkDisplay; window: PGdkWindow; x: Pgint; y: Pgint; mask: PGdkModifierType): PGdkWindow; cdecl;
+ window_at_pointer: function(display: PGdkDisplay; win_x: Pgint; win_y: Pgint): PGdkWindow; cdecl;
+ end;
{$ENDIF read_interface_types}
//------------------------------------------------------------------------------
@@ -46,6 +59,7 @@ function GDK_IS_DISPLAY_CLASS(klass : pointer) : boolean;
function GDK_DISPLAY_GET_CLASS(obj : pointer) : PGdkDisplayClass;
//function gdk_display_get_type:GType; cdecl; external gdklib;
+function gdk_display_get_default: PGdkDisplay; cdecl; external gdklib;
function gdk_display_open(display_name:Pgchar):PGdkDisplay; cdecl; external gdklib;
function gdk_display_get_name(display:PGdkDisplay):Pgchar; cdecl; external gdklib;
function gdk_display_get_n_screens(display:PGdkDisplay):gint; cdecl; external gdklib;
@@ -66,6 +80,10 @@ procedure gdk_display_set_double_click_time(display:PGdkDisplay; msec:guint); cd
procedure gdk_display_set_sm_client_id(display:PGdkDisplay; sm_client_id:Pgchar); cdecl; external gdklib;
procedure gdk_set_default_display(display:PGdkDisplay); cdecl; external gdklib;
function gdk_get_default_display:PGdkDisplay; cdecl; external gdklib;
+function gdk_display_get_core_pointer(display:PGdkDisplay): PGdkDevice; cdecl; external gdklib;
+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;
{$endif read_interface_rest}
//------------------------------------------------------------------------------
@@ -73,7 +91,7 @@ function gdk_get_default_display:PGdkDisplay; cdecl; external gdklib;
{$IFDEF read_implementation}
function GDK_TYPE_DISPLAY : GType;
begin
- GDK_TYPE_DISPLAY:=0; //gdk_display_get_type;
+ GDK_TYPE_DISPLAY := 0; //gdk_display_get_type;
end;
function GDK_DISPLAY_OBJECT(anObject : pointer) : PGdkDisplay;
diff --git a/packages/gtk2/src/gtk+/gdk/gdkdisplaymanager.inc b/packages/gtk2/src/gtk+/gdk/gdkdisplaymanager.inc
new file mode 100644
index 0000000000..687564563d
--- /dev/null
+++ b/packages/gtk2/src/gtk+/gdk/gdkdisplaymanager.inc
@@ -0,0 +1,76 @@
+// included by gdk2.pp
+
+{$IFDEF read_forward_definitions}
+ PGdkDisplayManager = ^TGdkDisplayManager;
+{$ENDIF read_forward_definitions}
+
+//------------------------------------------------------------------------------
+
+{$IFDEF read_interface_types}
+{< private > }
+ TGdkDisplayManager = record
+ parent_instance: TGObject;
+ end;
+
+ PGdkDisplayManagerClass = ^TGdkDisplayManagerClass;
+ TGdkDisplayManagerClass = record
+ parent_class : TGObjectClass;
+ display_opened: procedure(display_manager: PGdkDisplayManager; display: PGdkDisplay); cdecl;
+ end;
+{$ENDIF read_interface_types}
+
+//------------------------------------------------------------------------------
+
+{$IFDEF read_interface_rest}
+function GDK_TYPE_DISPLAY_MANAGER: GType;
+function GDK_DISPLAY_MANAGER(anObject: pointer): PGdkDisplayManager;
+function GDK_DISPLAY_MANAGER_CLASS(klass: pointer): PGdkDisplayManagerClass;
+function GDK_IS_DISPLAY_MANAGER(anObject: pointer): Boolean;
+function GDK_IS_DISPLAY_MANAGER_CLASS(klass: pointer): Boolean;
+function GDK_DISPLAY_MANAGER_GET_CLASS(obj: pointer): PGdkDisplayManagerClass;
+
+//function gdk_display_manager_get_type: GType; cdecl; external gdklib;
+
+function gdk_display_manager_get: PGdkDisplayManager; cdecl; external gdklib;
+function gdk_display_manager_get_default_display(display_manager: PGdkDisplayManager): PGdkDisplay; cdecl; external gdklib;
+procedure gdk_display_manager_set_default_display(display_manager: PGdkDisplayManager; display: PGdkDisplay); cdecl; external gdklib;
+function gdk_display_manager_list_displays(display_manager: PGdkDisplayManager): PGSList; cdecl; external gdklib;
+{$endif read_interface_rest}
+
+//------------------------------------------------------------------------------
+
+{$IFDEF read_implementation}
+function GDK_TYPE_DISPLAY_MANAGER: GType;
+begin
+ GDK_TYPE_DISPLAY_MANAGER := 0; //gdk_display_manager_get_type;
+end;
+
+function GDK_DISPLAY_MANAGER(anObject : pointer) : PGdkDisplayManager;
+begin
+ GDK_DISPLAY_MANAGER:=PGdkDisplayManager(G_TYPE_CHECK_INSTANCE_CAST(anObject,
+ GDK_TYPE_DISPLAY_MANAGER));
+end;
+
+function GDK_DISPLAY_MANAGER_CLASS(klass : pointer) : PGdkDisplayManagerClass;
+begin
+ GDK_DISPLAY_MANAGER_CLASS:=PGdkDisplayManagerClass(G_TYPE_CHECK_CLASS_CAST(klass,
+ GDK_TYPE_DISPLAY_MANAGER));
+end;
+
+function GDK_IS_DISPLAY_MANAGER(anObject : pointer) : boolean;
+begin
+ GDK_IS_DISPLAY_MANAGER:=G_TYPE_CHECK_INSTANCE_TYPE(anObject,GDK_TYPE_DISPLAY_MANAGER);
+end;
+
+function GDK_IS_DISPLAY_MANAGER_CLASS(klass : pointer) : boolean;
+begin
+ GDK_IS_DISPLAY_MANAGER_CLASS:=G_TYPE_CHECK_CLASS_TYPE(klass,GDK_TYPE_DISPLAY_MANAGER);
+end;
+
+function GDK_DISPLAY_MANAGER_GET_CLASS(obj : pointer) : PGdkDisplayManagerClass;
+begin
+ GDK_DISPLAY_MANAGER_GET_CLASS:=PGdkDisplayManagerClass(G_TYPE_INSTANCE_GET_CLASS(obj,
+ GDK_TYPE_DISPLAY_MANAGER));
+end;
+
+{$ENDIF}
diff --git a/packages/gtk2/src/gtk+/gdk/gdkdnd.inc b/packages/gtk2/src/gtk+/gdk/gdkdnd.inc
index 03f5cfbfad..87ce8ba5bc 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkdnd.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkdnd.inc
@@ -96,6 +96,8 @@ function gdk_drag_get_protocol(xid:guint32; protocol:PGdkDragProtocol):guint32;
procedure gdk_drag_find_window(context:PGdkDragContext; drag_window:PGdkWindow; x_root:gint; y_root:gint; var dest_window:PGdkWindow;
protocol:PGdkDragProtocol); cdecl; external gdklib;
+procedure gdk_drag_find_window_for_screen(context:PGdkDragContext; drag_window:PGdkWindow; screen:PGdkScreen; x_root:gint; y_root:gint; var dest_window:PGdkWindow;
+ protocol:PGdkDragProtocol); cdecl; external gdklib;
function gdk_drag_motion(context:PGdkDragContext; dest_window:PGdkWindow; protocol:TGdkDragProtocol; x_root:gint; y_root:gint;
suggested_action:TGdkDragAction; possible_actions:TGdkDragAction; time:guint32):gboolean; cdecl; external gdklib;
procedure gdk_drag_drop(context:PGdkDragContext; time:guint32); cdecl; external gdklib;
diff --git a/packages/gtk2/src/gtk+/gdk/gdkdrawable.inc b/packages/gtk2/src/gtk+/gdk/gdkdrawable.inc
index f023a228e6..71cd7a4bbd 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkdrawable.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkdrawable.inc
@@ -125,12 +125,10 @@ procedure gdk_draw_rectangle(drawable:PGdkDrawable; gc:PGdkGC; filled:gint; x:gi
procedure gdk_draw_arc(drawable:PGdkDrawable; gc:PGdkGC; filled:gint; x:gint; y:gint;
width:gint; height:gint; angle1:gint; angle2:gint); cdecl; external gdklib;
procedure gdk_draw_polygon(drawable:PGdkDrawable; gc:PGdkGC; filled:gint; points:PGdkPoint; npoints:gint); cdecl; external gdklib;
-{$IFDEF GTK2_2}
procedure gdk_draw_pixbuf(drawable: PGdkDrawable; gc:PGdkGC; src:PGdkPixbuf;
xsrc:gint; ysrc:gint; xdest:gint; ydest:gint;
width:gint; height:gint; dither:TGdkRgbDither;
x_dither:gint; y_dither:gint); cdecl; external gdklib;
-{$ENDIF}
{$ifndef GDK_DISABLE_DEPRECATED}
diff --git a/packages/gtk2/src/gtk+/gdk/gdkevents.inc b/packages/gtk2/src/gtk+/gdk/gdkevents.inc
index 85a8e94f23..b2dcaa90fe 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkevents.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkevents.inc
@@ -458,6 +458,10 @@ function gdk_event_get_axis(event:PGdkEvent; axis_use:TGdkAxisUse; value:Pgdoubl
procedure gdk_event_handler_set(func:TGdkEventFunc; data:gpointer; notify:TGDestroyNotify); cdecl; external gdklib;
procedure gdk_set_show_events(show_events:gboolean); cdecl; external gdklib;
function gdk_get_show_events:gboolean; cdecl; external gdklib;
+function gdk_event_get_screen(event:PGdkEvent): PGdkScreen; cdecl; external gdklib;
+function gdk_event_new(_type: TGdkEventType): PGdkEvent; cdecl; external gdklib;
+function gdk_event_send_client_message_for_display(display:PGdkDisplay; event:PGdkEvent; xid:guint32):gboolean; cdecl; external gdklib;
+procedure gdk_event_set_screen(event: PGdkEvent; screen: PGdkScreen); cdecl; external gdklib;
{$ifndef GDK_MULTIHEAD_SAFE}
procedure gdk_add_client_message_filter(message_type:TGdkAtom; func:TGdkFilterFunc; data:gpointer); cdecl; external gdklib;
diff --git a/packages/gtk2/src/gtk+/gdk/gdkincludes.inc b/packages/gtk2/src/gtk+/gdk/gdkincludes.inc
index 1b67d22fac..3e3de69d46 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkincludes.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkincludes.inc
@@ -20,6 +20,7 @@
{$include gdkproperty.inc}
{$include gdkregion.inc}
{$include gdkrgb.inc}
+{$include gdkdisplaymanager.inc}
{$include gdkdisplay.inc}
{$include gdkscreen.inc}
{$include gdkselection.inc}
diff --git a/packages/gtk2/src/gtk+/gdk/gdkscreen.inc b/packages/gtk2/src/gtk+/gdk/gdkscreen.inc
index 697aacbc98..4d716e2efd 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkscreen.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkscreen.inc
@@ -1,5 +1,6 @@
// included by gdk2.pp
{$IFDEF read_forward_definitions}
+ PPGdkScreen = ^PGdkScreen;
PGdkScreen = ^TGdkScreen;
TGdkScreen = record
parent_instance : TGObject;
@@ -66,6 +67,7 @@ function gdk_screen_get_monitor_at_window(screen:PGdkScreen; window:PGdkWindow):
procedure gdk_screen_broadcast_client_message(screen:PGdkScreen; event:PGdkEvent); cdecl; external gdklib;
function gdk_get_default_screen:PGdkScreen; cdecl; external gdklib;
function gdk_screen_get_setting(screen:PGdkScreen; name:Pgchar; value:PGValue):gboolean; cdecl; external gdklib;
+function gdk_screen_make_display_name(screen: PGdkScreen): Pgchar; cdecl; external gdklib;
{$endif read_interface_rest}
//------------------------------------------------------------------------------
@@ -73,7 +75,7 @@ function gdk_screen_get_setting(screen:PGdkScreen; name:Pgchar; value:PGValue):g
{$IFDEF read_implementation}
function GDK_TYPE_SCREEN : GType;
begin
- GDK_TYPE_SCREEN:=0 //;gdk_screen_get_type;
+ GDK_TYPE_SCREEN := 0; //gdk_screen_get_type;
end;
function GDK_SCREEN(anObject : Pointer) : PGdkScreen;
diff --git a/packages/gtk2/src/gtk+/gdk/gdkvisual.inc b/packages/gtk2/src/gtk+/gdk/gdkvisual.inc
index 774e691a15..5f2fa795d2 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkvisual.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkvisual.inc
@@ -77,6 +77,7 @@ function gdk_visual_get_best:PGdkVisual; cdecl; external gdklib;
function gdk_visual_get_best_with_depth(depth:gint):PGdkVisual; cdecl; external gdklib;
function gdk_visual_get_best_with_type(visual_type:TGdkVisualType):PGdkVisual; cdecl; external gdklib;
function gdk_visual_get_best_with_both(depth:gint; visual_type:TGdkVisualType):PGdkVisual; cdecl; external gdklib;
+function gdk_visual_get_screen(visual: PGdkVisual): PGdkScreen; cdecl; external gdklib;
procedure gdk_query_depths(var depths:Pgint; count:Pgint); cdecl; external gdklib;
procedure gdk_query_visual_types(var visual_types:PGdkVisualType; count:Pgint); cdecl; external gdklib;
function gdk_list_visuals:PGList; cdecl; external gdklib;
diff --git a/packages/gtk2/src/gtk+/gdk/gdkwindow.inc b/packages/gtk2/src/gtk+/gdk/gdkwindow.inc
index f2f6e617e2..5e81d7c63c 100644
--- a/packages/gtk2/src/gtk+/gdk/gdkwindow.inc
+++ b/packages/gtk2/src/gtk+/gdk/gdkwindow.inc
@@ -474,9 +474,14 @@ procedure gdk_window_unref(drawable:PGdkDrawable);
procedure gdk_window_copy_area(drawable:PGdkDrawable; gc:PGdkGC;
x,y: gint; source_drawable:PGdkDrawable; source_x,source_y: gint;
width,height : gint);
+
{$endif}
{ GDK_DISABLE_DEPRECATED }
+procedure gdk_window_fullscreen(window: PGdkWindow); cdecl; external gdklib;
+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;
{$endif read_interface_rest}
//------------------------------------------------------------------------------