BEAST/BSE - Better Audio System and Sound Engine
0.8.2
|
00001 // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html 00002 #ifndef __GXK_RACK_ITEM_H__ 00003 #define __GXK_RACK_ITEM_H__ 00004 00005 #include <gxk/gxkracktable.hh> 00006 00007 G_BEGIN_DECLS 00008 00009 /* --- type macros --- */ 00010 #define GXK_TYPE_RACK_ITEM (gxk_rack_item_get_type ()) 00011 #define GXK_RACK_ITEM(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GXK_TYPE_RACK_ITEM, GxkRackItem)) 00012 #define GXK_RACK_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GXK_TYPE_RACK_ITEM, GxkRackItemClass)) 00013 #define GXK_IS_RACK_ITEM(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GXK_TYPE_RACK_ITEM)) 00014 #define GXK_IS_RACK_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GXK_TYPE_RACK_ITEM)) 00015 #define GXK_RACK_ITEM_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), GXK_TYPE_RACK_ITEM, GxkRackItemClass)) 00016 00017 00018 /* --- structures & typedefs --- */ 00019 typedef struct _GxkRackItem GxkRackItem; 00020 typedef struct _GxkRackItemClass GxkRackItemClass; 00021 struct _GxkRackItem 00022 { 00023 GtkFrame parent_instance; 00024 /* maintained by GxkRackTable */ 00025 gint col, row, hspan, vspan; 00026 guint empty_frame : 1; 00027 }; 00028 struct _GxkRackItemClass 00029 { 00030 GtkFrameClass parent_class; 00031 00032 void (*button_press) (GxkRackItem *item, 00033 GdkEventButton *event); 00034 }; 00035 00036 00037 /* --- prototypes --- */ 00038 GtkType gxk_rack_item_get_type (void); 00039 void gxk_rack_item_gui_changed (GxkRackItem *self); 00040 gboolean gxk_rack_item_set_area (GxkRackItem *self, 00041 gint col, 00042 gint row, 00043 gint hspan, 00044 gint vspan); 00045 00046 G_END_DECLS 00047 00048 #endif /* __GXK_RACK_ITEM_H__ */