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_PLAY_LIST_H__ 00003 #define __BST_PLAY_LIST_H__ 00004 00005 #include "bstutils.hh" 00006 00007 #ifdef __cplusplus 00008 extern "C" { 00009 #endif /* __cplusplus */ 00010 00011 00012 /* --- Gtk+ type macros --- */ 00013 #define BST_TYPE_PLAY_LIST (bst_play_list_get_type ()) 00014 #define BST_PLAY_LIST(object) (GTK_CHECK_CAST ((object), BST_TYPE_PLAY_LIST, BstPlayList)) 00015 #define BST_PLAY_LIST_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), BST_TYPE_PLAY_LIST, BstPlayListClass)) 00016 #define BST_IS_PLAY_LIST(object) (GTK_CHECK_TYPE ((object), BST_TYPE_PLAY_LIST)) 00017 #define BST_IS_PLAY_LIST_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), BST_TYPE_PLAY_LIST)) 00018 #define BST_PLAY_LIST_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), BST_TYPE_PLAY_LIST, BstPlayListClass)) 00019 00020 00021 /* --- structures & typedefs --- */ 00022 typedef struct _BstPlayList BstPlayList; 00023 typedef struct _BstPlayListClass BstPlayListClass; 00024 struct _BstPlayList 00025 { 00026 GtkVPaned parent_object; 00027 00028 BseSong *song; 00029 00030 GtkWidget *pattern_list; 00031 GtkWidget *group_list; 00032 GtkSizeGroup *size_group; 00033 }; 00034 struct _BstPlayListClass 00035 { 00036 GtkVPanedClass parent_class; 00037 }; 00038 00039 00040 /* --- prototypes --- */ 00041 GtkType bst_play_list_get_type (void); 00042 GtkWidget* bst_play_list_new (BseSong *song); 00043 void bst_play_list_set_song (BstPlayList *plist, 00044 BseSong *song); 00045 void bst_play_list_rebuild (BstPlayList *plist); 00046 00047 00048 00049 #ifdef __cplusplus 00050 } 00051 #endif /* __cplusplus */ 00052 00053 #endif /* __BST_PLAY_LIST_H__ */