lazarus/components/opengl/gtk2x11/include/gdkprivate-x11.inc
2006-01-01 20:43:51 +00:00

244 lines
8.6 KiB
PHP

{%MainUnit ../gdk2x.pas}
{$IFDEF read_forward_definitions}
// remove this TXRenderColor, when it has been added to the X11 bindings of FPC
TXRenderColor = record
red: word;
green: word;
blue: word;
alpha: word;
end;
PPXRectangle = ^PXRectangle;
{$ENDIF read_forward_definitions}
{$IFDEF read_interface_rest}
type
PGdkGCX11 = ^TGdkGCX11;
TGdkGCX11 = record
parent_instance : TGdkGC;
xgc : TGC;
screen : PGdkScreen;
clip_region : PGdkRegion;
dirty_mask : guint;
fg_picture : TPicture;
fg_picture_color : TXRenderColor;
fg_pixel : gulong;
end;
PGdkGCX11Class = ^TGdkGCX11Class;
TGdkGCX11Class = record
parent_class : TGdkGCClass;
end;
PGdkCursorPrivate = ^TGdkCursorPrivate;
TGdkCursorPrivate = record
cursor : TGdkCursor;
xcursor : TCursor;
screen : PGdkScreen;
end;
PGdkVisualPrivate = ^TGdkVisualPrivate;
TGdkVisualPrivate = record
visual : TGdkVisual;
xvisual : PVisual;
screen : PGdkScreen;
end;
// Private function GDK_TYPE_GC_X11 : GType;
function GDK_GC_X11(obj : pointer) : PGdkGCX11;
function GDK_GC_X11_CLASS(klass : pointer) : PGdkGCX11Class;
// Private function GDK_IS_GC_X11(obj : pointer) : boolean;
// Private function GDK_IS_GC_X11_CLASS(klass : pointer) : boolean;
// Private function GDK_GC_X11_GET_CLASS(obj : pointer) : PGdkGCX11Class;
procedure _gdk_xid_table_insert(display:PGdkDisplay; xid:PXID; data:gpointer);cdecl;external;
procedure _gdk_xid_table_remove(display:PGdkDisplay; xid:TXID);cdecl;external;
function _gdk_send_xevent(display:PGdkDisplay; window:TWindow; propagate:gboolean; event_mask:glong; event_send:PXEvent):gint;cdecl;external;
// Private function _gdk_gc_x11_get_type:GType;cdecl;external;
{$ifdef HAVE_XFT}
function _gdk_x11_have_render(display:PGdkDisplay):gboolean;cdecl;external;
function _gdk_x11_gc_get_fg_picture(gc:PGdkGC):TPicture;cdecl;external;
{$endif HAVE_XFT}
function _gdk_x11_gc_new(drawable:PGdkDrawable; values:PGdkGCValues; values_mask:TGdkGCValuesMask):PGdkGC;cdecl;external;
function gdk_colormap_lookup(xcolormap:TColormap):PGdkColormap;cdecl;external;
function gdk_visual_lookup(xvisual:PVisual):PGdkVisual;cdecl;external;
procedure gdk_window_add_colormap_windows(window:PGdkWindow);cdecl;external;
function _gdk_x11_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;
function _gdk_x11_image_get_shm_pixmap(image:PGdkImage):TPixmap;cdecl;external;
{ Routines from gdkgeometry-x11.c }
procedure _gdk_window_init_position(window:PGdkWindow);cdecl;external;
procedure _gdk_window_move_resize_child(window:PGdkWindow; x:gint; y:gint; width:gint; height:gint);cdecl;external;
procedure _gdk_window_process_expose(window:PGdkWindow; serial:gulong; area:PGdkRectangle);cdecl;external;
procedure _gdk_selection_window_destroyed(window:PGdkWindow);cdecl;external;
function _gdk_selection_filter_clear_event(event:PXSelectionClearEvent):gboolean;cdecl;external;
procedure _gdk_region_get_xrectangles(region:PGdkRegion; x_offset:gint; y_offset:gint; rects:PPXRectangle; n_rects:Pgint);cdecl;external;
function _gdk_moveresize_handle_event(event:PXEvent):gboolean;cdecl;external;
function _gdk_moveresize_configure_done(display:PGdkDisplay; window:PGdkWindow):gboolean;cdecl;external;
procedure _gdk_keymap_state_changed(display:PGdkDisplay);cdecl;external;
function _gdk_x11_get_group_for_state(display:PGdkDisplay; state:TGdkModifierType):gint;cdecl;external;
//function _gdk_x11_gc_flush(gc:PGdkGC):TGC;cdecl;external;
procedure _gdk_x11_initialize_locale;cdecl;external;
procedure _gdk_xgrab_check_unmap(window:PGdkWindow; serial:gulong);cdecl;external;
procedure _gdk_xgrab_check_destroy(window:PGdkWindow);cdecl;external;
function _gdk_x11_display_is_root_window(display:PGdkDisplay; xroot_window:TWindow):gboolean;cdecl;external;
procedure _gdk_x11_events_init_screen(screen:PGdkScreen);cdecl;external;
procedure _gdk_events_init(display:PGdkDisplay);cdecl;external;
procedure _gdk_windowing_window_init(screen:PGdkScreen);cdecl;external;
procedure _gdk_visual_init(screen:PGdkScreen);cdecl;external;
procedure _gdk_dnd_init(display:PGdkDisplay);cdecl;external;
procedure _gdk_windowing_image_init(display:PGdkDisplay);cdecl;external;
procedure _gdk_input_init(display:PGdkDisplay);cdecl;external;
var
_gdk_x11_drawable_class : TGdkDrawableClass;cvar;external;
_gdk_use_xshm : gboolean;cvar;external;
(* Const before type ignored *)
_gdk_nenvent_masks : longint;cvar;external;
(* Const before type ignored *)
_gdk_event_mask_table : array of longint;cvar;external;
_gdk_selection_property : TGdkAtom;cvar;external;
_gdk_synchronize : gboolean;cvar;external;
function GDK_PIXMAP_SCREEN(pix : pointer) : PGdkScreen;
function GDK_PIXMAP_DISPLAY(pix : pointer) : PGdkDisplay;
function GDK_PIXMAP_XROOTWIN(pix : pointer) : TWindow;
function GDK_DRAWABLE_DISPLAY(win : PGdkDrawable) : PGdkDisplay;
function GDK_DRAWABLE_SCREEN(win : PGdkDrawable) : PGdkScreen;
function GDK_DRAWABLE_XROOTWIN(win : PGdkDrawable) : TWindow;
function GDK_SCREEN_DISPLAY(screen : PGdkScreen) : PGdkDisplay;
function GDK_SCREEN_XROOTWIN(screen : PGdkScreen) : TWindow;
function GDK_WINDOW_SCREEN(win : PGdkDrawable) : PGdkScreen;
function GDK_WINDOW_DISPLAY(win : PGdkDrawable) : PGdkDisplay;
function GDK_WINDOW_XROOTWIN(win : PGdkDrawable) : TWindow;
function GDK_GC_DISPLAY(gc : PGdkGC) : PGdkDisplay;
{$ENDIF read_interface_rest}
//------------------------------------------------------------------------------
{$IFDEF read_implementation}
{ Private
function GDK_TYPE_GC_X11 : GType;
begin
GDK_TYPE_GC_X11:=_gdk_gc_x11_get_type;
end;}
function GDK_GC_X11(obj : pointer) : PGdkGCX11;
begin
GDK_GC_X11:=PGdkGCX11(obj);
//GDK_GC_X11:=PGdkGCX11(G_TYPE_CHECK_INSTANCE_CAST(obj,GDK_TYPE_GC_X11));
end;
function GDK_GC_X11_CLASS(klass : pointer) : PGdkGCX11Class;
begin
GDK_GC_X11_CLASS:=PGdkGCX11Class(klass);
//GDK_GC_X11_CLASS:=PGdkGCX11Class(G_TYPE_CHECK_CLASS_CAST(klass,GDK_TYPE_GC_X11));
end;
{ Private
function GDK_IS_GC_X11(obj : pointer) : boolean;
begin
GDK_IS_GC_X11:=G_TYPE_CHECK_INSTANCE_TYPE(obj,GDK_TYPE_GC_X11);
end;
function GDK_IS_GC_X11_CLASS(klass : pointer) : boolean;
begin
GDK_IS_GC_X11_CLASS:=G_TYPE_CHECK_CLASS_TYPE(klass,GDK_TYPE_GC_X11);
end;
function GDK_GC_X11_GET_CLASS(obj : pointer) : PGdkGCX11Class;
begin
GDK_GC_X11_GET_CLASS:=PGdkGCX11Class(G_TYPE_INSTANCE_GET_CLASS(obj,GDK_TYPE_GC_X11));
end; }
function GDK_PIXMAP_SCREEN(pix : pointer) : PGdkScreen;
begin
GDK_PIXMAP_SCREEN:=(GDK_DRAWABLE_IMPL_X11((PGdkPixmapObject(pix))^.impl))^.screen;
end;
function GDK_PIXMAP_DISPLAY(pix : pointer) : PGdkDisplay;
begin
GDK_PIXMAP_DISPLAY:=(GDK_SCREEN_X11(GDK_PIXMAP_SCREEN(pix)))^.display;
end;
function GDK_PIXMAP_XROOTWIN(pix : pointer) : TWindow;
begin
GDK_PIXMAP_XROOTWIN:=(GDK_SCREEN_X11(GDK_PIXMAP_SCREEN(pix)))^.xroot_window;
end;
function GDK_DRAWABLE_DISPLAY(win : PGdkDrawable) : PGdkDisplay;
var
if_local1 : PGdkDisplay;
begin
if GDK_IS_WINDOW(win) then
if_local1:=GDK_WINDOW_DISPLAY(win)
else
if_local1:=GDK_PIXMAP_DISPLAY(win);
GDK_DRAWABLE_DISPLAY:=if_local1;
end;
function GDK_DRAWABLE_SCREEN(win : PGdkDrawable) : PGdkScreen;
var
if_local1 : PGdkScreen;
begin
if GDK_IS_WINDOW(win) then
if_local1:=GDK_WINDOW_SCREEN(win)
else
if_local1:=GDK_PIXMAP_SCREEN(win);
GDK_DRAWABLE_SCREEN:=if_local1;
end;
function GDK_DRAWABLE_XROOTWIN(win : PGdkDrawable) : TWindow;
var
if_local1 : TWindow;
begin
if GDK_IS_WINDOW(win) then
if_local1:=GDK_WINDOW_XROOTWIN(win)
else
if_local1:=GDK_PIXMAP_XROOTWIN(win);
GDK_DRAWABLE_XROOTWIN:=if_local1;
end;
function GDK_SCREEN_DISPLAY(screen : PGdkScreen) : PGdkDisplay;
begin
GDK_SCREEN_DISPLAY:=(GDK_SCREEN_X11(screen))^.display;
end;
function GDK_SCREEN_XROOTWIN(screen : PGdkScreen) : TWindow;
begin
GDK_SCREEN_XROOTWIN:=(GDK_SCREEN_X11(screen))^.xroot_window;
end;
function GDK_WINDOW_SCREEN(win : PGdkDrawable) : PGdkScreen;
begin
GDK_WINDOW_SCREEN:=(GDK_DRAWABLE_IMPL_X11((PGdkWindowObject(win))^.impl))^.screen;
end;
function GDK_WINDOW_DISPLAY(win : PGdkDrawable) : PGdkDisplay;
begin
GDK_WINDOW_DISPLAY:=(GDK_SCREEN_X11(GDK_WINDOW_SCREEN(win)))^.display;
end;
function GDK_WINDOW_XROOTWIN(win : PGdkDrawable) : TWindow;
begin
GDK_WINDOW_XROOTWIN:=(GDK_SCREEN_X11(GDK_WINDOW_SCREEN(win)))^.xroot_window;
end;
function GDK_GC_DISPLAY(gc : PGdkGC) : PGdkDisplay;
begin
GDK_GC_DISPLAY:=GDK_SCREEN_DISPLAY((GDK_GC_X11(gc))^.screen);
end;
{$ENDIF read_implementation}