BEAST/BSE - Better Audio System and Sound Engine  0.8.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
bsttreestores.hh
Go to the documentation of this file.
00001  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
00002 #ifndef __BST_TREE_STORES_H__
00003 #define __BST_TREE_STORES_H__
00004 
00005 #include "bstutils.hh"
00006 
00007 G_BEGIN_DECLS
00008 
00009 
00010 /* --- file store --- */
00011 enum {
00012   BST_FILE_STORE_COL_ID,
00013   BST_FILE_STORE_COL_FILE,
00014   BST_FILE_STORE_COL_BASE_NAME,
00015   BST_FILE_STORE_COL_WAVE_NAME,
00016   BST_FILE_STORE_COL_SIZE,
00017   BST_FILE_STORE_COL_TIME_USECS,
00018   BST_FILE_STORE_COL_TIME_STR,
00019   BST_FILE_STORE_COL_LOADER,
00020   BST_FILE_STORE_COL_LOADABLE,
00021   BST_FILE_STORE_N_COLS
00022 };
00023 GtkTreeModel*   bst_file_store_create           (void);
00024 void            bst_file_store_update_list      (GtkTreeModel *model,
00025                                                  const gchar  *search_path,
00026                                                  const gchar  *filter);
00027 void            bst_file_store_forget_list      (GtkTreeModel *model);
00028 void            bst_file_store_destroy          (GtkTreeModel *model);
00029 
00030 
00031 /* --- proxy stores --- */
00032 enum {
00033   BST_PROXY_STORE_SEQID,
00034   BST_PROXY_STORE_NAME,
00035   BST_PROXY_STORE_BLURB,
00036   BST_PROXY_STORE_TYPE,
00037   BST_PROXY_STORE_N_COLS
00038 };
00039 /* store based on a BseItemSeq */
00040 GtkTreeModel*   bst_item_seq_store_new                  (gboolean        sorted);
00041 void            bst_item_seq_store_set                  (GtkTreeModel   *self,
00042                                                          BseItemSeq     *iseq);
00043 gint            bst_item_seq_store_add                  (GtkTreeModel   *self,
00044                                                          SfiProxy        proxy);
00045 gint            bst_item_seq_store_remove               (GtkTreeModel   *self,
00046                                                          SfiProxy        proxy);
00047 gint            bst_item_seq_store_raise                (GtkTreeModel   *self,
00048                                                          SfiProxy        proxy);
00049 gboolean        bst_item_seq_store_can_raise            (GtkTreeModel   *self,
00050                                                          SfiProxy        proxy);
00051 gint            bst_item_seq_store_lower                (GtkTreeModel   *self,
00052                                                          SfiProxy        proxy);
00053 gboolean        bst_item_seq_store_can_lower            (GtkTreeModel   *self,
00054                                                          SfiProxy        proxy);
00055 BseItemSeq*     bst_item_seq_store_dup                  (GtkTreeModel   *self);
00056 SfiProxy        bst_item_seq_store_get_proxy            (GtkTreeModel   *self,
00057                                                          gint            row);
00058 SfiProxy        bst_item_seq_store_get_from_iter        (GtkTreeModel   *self,
00059                                                          GtkTreeIter    *iter);
00060 gboolean        bst_item_seq_store_get_iter             (GtkTreeModel   *self,
00061                                                          GtkTreeIter    *iter,
00062                                                          SfiProxy        proxy);
00063 /* store based on the child list of a container */
00064 GxkListWrapper* bst_child_list_wrapper_store_new        (void);
00065 
00066 
00067 /* --- generic child list wrapper --- */
00068 void     bst_child_list_wrapper_setup           (GxkListWrapper *self,
00069                                                  SfiProxy        parent,
00070                                                  const gchar    *child_type);
00071 void     bst_child_list_wrapper_set_listener    (GxkListWrapper *self,
00072                                                  void          (*listener) (GtkTreeModel *model,
00073                                                                             SfiProxy      item,
00074                                                                             gboolean      added));
00075 void     bst_child_list_wrapper_rebuild         (GxkListWrapper *self);
00076 SfiProxy bst_child_list_wrapper_get_proxy       (GxkListWrapper *self,
00077                                                  gint            row);
00078 SfiProxy bst_child_list_wrapper_get_from_iter   (GxkListWrapper *self,
00079                                                  GtkTreeIter    *iter);
00080 gboolean bst_child_list_wrapper_get_iter        (GxkListWrapper *self,
00081                                                  GtkTreeIter    *iter,
00082                                                  SfiProxy        proxy);
00083 void     bst_child_list_wrapper_proxy_changed   (GxkListWrapper *self,
00084                                                  SfiProxy        item);
00085 
00086 
00087 G_END_DECLS
00088 
00089 #endif /* __BST_TREE_STORES_H__ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines