BEAST - Free Software Audio Synthesizer and Tracker  0.9.2
bstitemseqdialog.hh
Go to the documentation of this file.
1  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
2 #ifndef __BST_ITEM_SEQ_DIALOG_H__
3 #define __BST_ITEM_SEQ_DIALOG_H__
4 
5 #include "bstutils.hh"
6 #include "bstwaveview.hh"
7 
8 G_BEGIN_DECLS
9 
10 /* --- Gtk+ type macros --- */
11 #define BST_TYPE_ITEM_SEQ_DIALOG (bst_item_seq_dialog_get_type ())
12 #define BST_ITEM_SEQ_DIALOG(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), BST_TYPE_ITEM_SEQ_DIALOG, BstItemSeqDialog))
13 #define BST_ITEM_SEQ_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BST_TYPE_ITEM_SEQ_DIALOG, BstItemSeqDialogClass))
14 #define BST_IS_ITEM_SEQ_DIALOG(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), BST_TYPE_ITEM_SEQ_DIALOG))
15 #define BST_IS_ITEM_SEQ_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BST_TYPE_ITEM_SEQ_DIALOG))
16 #define BST_ITEM_SEQ_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BST_TYPE_ITEM_SEQ_DIALOG, BstItemSeqDialogClass))
17 
18 /* --- structures & typedefs --- */
19 typedef struct _BstItemSeqDialog BstItemSeqDialog;
20 typedef struct _BstItemSeqDialogClass BstItemSeqDialogClass;
21 typedef void (*BstItemSeqDialogSelected) (gpointer data,
22  BseItemSeq *iseq,
23  BstItemSeqDialog *isdialog);
25 {
26  GxkDialog parent_instance;
27  GtkTreeModel *candidate_store;
28  GtkTreeSelection *candidate_sel;
29  GtkTreeModel *item_store; /* proxy store */
30  GtkTreeSelection *item_sel;
31 
32  GtkWidget *ok; /* ok button */
33  GtkWindow *parent_window;
34  guint ignore_activate : 1;
35  BstItemSeqDialogSelected selected_callback;
36  gpointer selected_data;
37  GxkFreeFunc selected_cleanup;
38 };
40 {
41  GxkDialogClass parent_class;
42 };
43 
44 
45 /* --- prototypes --- */
46 GType bst_item_seq_dialog_get_type (void);
47 GtkWidget* bst_item_seq_dialog_popup (gpointer parent_widget,
48  SfiProxy item,
49  const gchar *candidate_label,
50  const gchar *candidate_tooltip,
51  BseItemSeq *candidates,
52  const gchar *item_label,
53  const gchar *item_tooltip,
54  BseItemSeq *iseq,
55  BstItemSeqDialogSelected selected_callback,
56  gpointer selected_data,
57  GxkFreeFunc selected_cleanup);
58 void bst_item_seq_dialog_set (BstItemSeqDialog *self,
59  BseItemSeq *candidates,
60  BseItemSeq *iseq);
61 
62 
63 
64 G_END_DECLS
65 
66 #endif /* __BST_ITEM_SEQ_DIALOG_H__ */
Definition: bstitemseqdialog.hh:24
Definition: bstitemseqdialog.hh:39