diff options
Diffstat (limited to '')
-rw-r--r-- | src/gui_gtk_f.h | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/src/gui_gtk_f.h b/src/gui_gtk_f.h new file mode 100644 index 0000000..be7693a --- /dev/null +++ b/src/gui_gtk_f.h @@ -0,0 +1,85 @@ +/* vi:set ts=8 sts=4 sw=4 noet: + * + * VIM - Vi IMproved by Bram Moolenaar + * + * Do ":help uganda" in Vim to read copying and usage conditions. + * Do ":help credits" in Vim to see a list of people who contributed. + */ + +#ifndef __GTK_FORM_H__ +#define __GTK_FORM_H__ + +#ifdef USE_GTK3 +#include <gtk/gtk.h> +#else +#include <gdk/gdk.h> +#include <gtk/gtkcontainer.h> +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + +#define GTK_TYPE_FORM (gtk_form_get_type ()) +#ifdef USE_GTK3 +#define GTK_FORM(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GTK_TYPE_FORM, GtkForm)) +#define GTK_FORM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GTK_TYPE_FORM, GtkFormClass)) +#define GTK_IS_FORM(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GTK_TYPE_FORM)) +#define GTK_IS_FORM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GTK_TYPE_FORM)) +#else +#define GTK_FORM(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_FORM, GtkForm)) +#define GTK_FORM_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_FORM, GtkFormClass)) +#define GTK_IS_FORM(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_FORM)) +#define GTK_IS_FORM_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_FORM)) +#endif + + +typedef struct _GtkForm GtkForm; +typedef struct _GtkFormClass GtkFormClass; + +struct _GtkForm +{ + GtkContainer container; + + GList *children; + GdkWindow *bin_window; + gint freeze_count; +}; + +struct _GtkFormClass +{ + GtkContainerClass parent_class; +}; + +#ifdef USE_GTK3 +GType gtk_form_get_type(void); +#else +GtkType gtk_form_get_type(void); +#endif + +GtkWidget *gtk_form_new(void); + +void gtk_form_put(GtkForm * form, GtkWidget * widget, + gint x, gint y); + +void gtk_form_move(GtkForm *form, GtkWidget * widget, + gint x, gint y); + +void gtk_form_move_resize(GtkForm * form, GtkWidget * widget, + gint x, gint y, + gint w, gint h); + +/* These disable and enable moving and repainting respectively. If you + * want to update the layout's offsets but do not want it to repaint + * itself, you should use these functions. + */ + +void gtk_form_freeze(GtkForm *form); +void gtk_form_thaw(GtkForm *form); + + +#ifdef __cplusplus +} +#endif +#endif /* __GTK_FORM_H__ */ |