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 __BST_SNET_ROUTER_H__ 00003 #define __BST_SNET_ROUTER_H__ 00004 00005 #include "bstcanvassource.hh" 00006 00007 00008 G_BEGIN_DECLS 00009 00010 /* --- Gtk+ type macros --- */ 00011 #define BST_TYPE_SNET_ROUTER (bst_snet_router_get_type ()) 00012 #define BST_SNET_ROUTER(object) (GTK_CHECK_CAST ((object), BST_TYPE_SNET_ROUTER, BstSNetRouter)) 00013 #define BST_SNET_ROUTER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), BST_TYPE_SNET_ROUTER, BstSNetRouterClass)) 00014 #define BST_IS_SNET_ROUTER(object) (GTK_CHECK_TYPE ((object), BST_TYPE_SNET_ROUTER)) 00015 #define BST_IS_SNET_ROUTER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), BST_TYPE_SNET_ROUTER)) 00016 #define BST_SNET_ROUTER_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), BST_TYPE_SNET_ROUTER, BstSNetRouterClass)) 00017 00018 00019 /* --- structures & typedefs --- */ 00020 typedef struct _BstSNetRouter BstSNetRouter; 00021 typedef struct _BstSNetRouterClass BstSNetRouterClass; 00022 struct _BstSNetRouter 00023 { 00024 GnomeCanvas parent_object; 00025 00026 GtkMenu *canvas_popup; 00027 GtkWidget *palette; 00028 GtkWidget *palette_text; 00029 GtkAdjustment *adjustment; 00030 00031 SfiProxy snet; 00032 00033 GxkActionGroup *canvas_tool; 00034 GxkActionGroup *channel_toggle; 00035 00036 gdouble world_x, world_y; 00037 guint reshow_palette : 1; 00038 guint drag_is_input : 1; 00039 guint drag_channel; 00040 BstCanvasSource *drag_csource; 00041 GnomeCanvasItem *tmp_line; 00042 SfiRing *canvas_links; 00043 }; 00044 struct _BstSNetRouterClass 00045 { 00046 GnomeCanvasClass parent_class; 00047 00048 GtkItemFactory *popup_factory; 00049 }; 00050 00051 00052 /* --- prototypes --- */ 00053 GType bst_snet_router_get_type (void); 00054 GtkWidget* bst_snet_router_new (SfiProxy snet); 00055 void bst_snet_router_set_snet (BstSNetRouter *router, 00056 SfiProxy snet); 00057 void bst_snet_router_update (BstSNetRouter *snet_router); 00058 void bst_snet_router_adjust_region (BstSNetRouter *snet_router); 00059 BstCanvasSource* bst_snet_router_csource_from_source (BstSNetRouter *snet_router, 00060 SfiProxy source); 00061 BstSNetRouter* bst_snet_router_build_page (SfiProxy snet); 00062 00063 00064 G_END_DECLS 00065 00066 #endif /* __BST_SNET_ROUTER_H__ */