6
#include <glib-object.h>
7
#include <gtk/gtktable.h>
8
#include <gtk/gtkhbox.h>
9
#include <gtk/gtkitemfactory.h>
10
#include <gtk/gtkaccelgroup.h>
11
#include <gtk/gtkstock.h>
12
#include <gtk/gtkmenuitem.h>
14
#include <gutenprint/gutenprint.h>
20
#define PP_MENU_TYPE (pp_menu_get_type())
21
#define PP_MENU(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PP_MENU_TYPE, pp_Menu))
22
#define PP_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PP_MENU_TYPE, pp_MenuClass))
23
#define IS_PP_MENU(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PP_MENU_TYPE))
24
#define IS_PP_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PP_MENU_TYPE))
26
typedef struct _pp_Menu pp_Menu;
27
typedef struct _pp_MenuClass pp_MenuClass;
33
GtkAccelGroup *accels;
34
GtkItemFactory *itemfactory;
36
GtkAccelGroup *popupaccels;
37
GtkItemFactory *popupitemfactory;
38
GtkWidget *popupmenubar;
40
enum PP_ROTATION rotation;
41
bool active; // FIXME - would need to be a mutex if threaded...
47
GtkHBoxClass parent_class;
49
void (*changed)(pp_Menu *book);
52
GType pp_menu_get_type (void);
53
GtkWidget* pp_menu_new ();
54
void pp_menu_refresh(pp_Menu *ob);
55
void pp_menu_set_layout(pp_Menu *ob,const char *type);
56
GtkAccelGroup *pp_menu_get_accels(pp_Menu *menu);
57
void pp_menu_set_layout_capabilities(pp_Menu *menu,int features);
58
void pp_menu_set_menu_state(pp_Menu *menu,bool allowcropping,PP_ROTATION rotation,bool remove);
62
#endif /* __PP_MENU_H__ */