summaryrefslogtreecommitdiff
path: root/gtk/gtknativeprivate.h
blob: df9b9ffaa6762dcf1075fd951f6731438d4b350d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#ifndef __GTK_NATIVE_PRIVATE_H__
#define __GTK_NATIVE_PRIVATE_H__

#include "gtknative.h"

G_BEGIN_DECLS

/**
 * GtkNativeIface:
 *
 * The list of functions that must be implemented for the #GtkNative interface.
 */
struct _GtkNativeInterface
{
  /*< private >*/
  GTypeInterface g_iface;

  /*< public >*/
  GdkSurface *  (* get_surface)           (GtkNative    *self);
  GskRenderer * (* get_renderer)          (GtkNative    *self);

  void          (* get_surface_transform) (GtkNative    *self,
                                           double       *x,
                                           double       *y);

  void          (* layout)                (GtkNative    *self,
                                           int           width,
                                           int           height);
};

void    gtk_native_queue_relayout         (GtkNative    *native);

G_END_DECLS

#endif /* __GTK_NATIVE_PRIVATE_H__ */