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_EVENT_ROLL_CONTROLLER_H__ 00003 #define __BST_EVENT_ROLL_CONTROLLER_H__ 00004 00005 #include "bsteventroll.hh" 00006 00007 G_BEGIN_DECLS 00008 00009 typedef struct { 00010 /* misc data */ 00011 guint ref_count; 00012 BstEventRoll *eroll; 00013 /* drag data */ 00014 guint obj_id, obj_tick; 00015 gfloat obj_value; 00016 BsePartControlSeq *sel_cseq; 00017 BstSegment *segment; 00018 /* tool data */ 00019 guint tool_index; 00020 /* tool selections */ 00021 GxkActionGroup *quant_rtools; 00022 GxkActionGroup *canvas_rtools; 00023 /* action cache */ 00024 guint64 cached_stamp; 00025 guint cached_n_controls; 00026 } BstEventRollController; 00027 00028 00029 /* --- API --- */ 00030 BstEventRollController* bst_event_roll_controller_new (BstEventRoll *eroll, 00031 GxkActionGroup *quant_rtools, 00032 GxkActionGroup *canvas_rtools); 00033 BstEventRollController* bst_event_roll_controller_ref (BstEventRollController *self); 00034 void bst_event_roll_controller_unref (BstEventRollController *self); 00035 guint bst_event_roll_controller_quantize (BstEventRollController *self, 00036 guint fine_tick); 00037 GxkActionList* bst_event_roll_controller_select_actions (BstEventRollController *self); 00038 void bst_event_roll_controller_set_clipboard (BsePartControlSeq *cseq); 00039 BsePartControlSeq* bst_event_roll_controller_get_clipboard (void); 00040 void bst_event_roll_controller_clear (BstEventRollController *self); 00041 void bst_event_roll_controller_cut (BstEventRollController *self); 00042 gboolean bst_event_roll_controller_copy (BstEventRollController *self); 00043 void bst_event_roll_controller_paste (BstEventRollController *self); 00044 gboolean bst_event_roll_controller_clipboard_full (BstEventRollController *self); 00045 gboolean bst_event_roll_controller_has_selection (BstEventRollController *self, 00046 guint64 action_stamp); 00047 00048 00049 G_END_DECLS 00050 00051 #endif /* __BST_EVENT_ROLL_CONTROLLER_H__ */