#ifndef __KRY_WAVEFORM_GROUP_ITEM_H__ #define __KRY_WAVEFORM_GROUP_ITEM_H__ #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ #define KRY_TYPE_WAVEFORM_GROUP_ITEM (kry_waveform_group_item_get_type ()) #define KRY_WAVEFORM_GROUP_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), KRY_TYPE_WAVEFORM_GROUP_ITEM, KryWaveformGroupItem)) #define KRY_WAVEFORM_GROUP_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), KRY_TYPE_WAVEFORM_GROUP_ITEM, KryWaveformGroupItemClass)) #define KRY_IS_WAVEFORM_GROUP_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), KRY_TYPE_WAVEFORM_GROUP_ITEM)) #define KRY_IS_WAVEFORM_GROUP_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), KRY_TYPE_WAVEFORM_GROUP_ITEM)) #define KRY_WAVEFORM_GROUP_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), KRY_TYPE_WAVEFORM_GROUP_ITEM, KryWaveformGroupItemClass)) typedef struct _KryWaveformGroupItem KryWaveformGroupItem; typedef struct _KryWaveformGroupItemClass KryWaveformGroupItemClass; struct _KryWaveformGroupItem { GObject parent_instance; GtkWidget *group; GtkWidget *toolbar; KryWaveform *waveform; GtkWidget *scrollbar; KryWaveformGroupItem *parent_item; GList *markers; gboolean zoom_sync; double zoom; gboolean scale_sync; int scale; gboolean scroll_sync; }; struct _KryWaveformGroupItemClass { GObjectClass parent_class; void (*zoom_sync_changed) (KryWaveformGroupItem *item, gboolean val); void (*scale_sync_changed) (KryWaveformGroupItem *item, gboolean val); void (*scroll_sync_changed) (KryWaveformGroupItem *item, gboolean val); }; GType kry_waveform_group_item_get_type (void) G_GNUC_CONST; GObject* kry_waveform_group_item_new(KryWaveform *waveform); KryWaveform *kry_waveform_group_item_get_waveform(KryWaveformGroupItem *item); void kry_waveform_group_item_set_toolbar(KryWaveformGroupItem *item, GtkWidget *widget); GtkWidget *kry_waveform_group_item_get_toolbar(KryWaveformGroupItem *item); GtkWidget *kry_waveform_group_item_get_scrollbar(KryWaveformGroupItem *item); void kry_waveform_group_item_set_scrollbar(KryWaveformGroupItem *item, GtkWidget *widget); void kry_waveform_group_item_set_waveform(KryWaveformGroupItem *item, KryWaveform *waveform); void kry_waveform_group_item_set_group(KryWaveformGroupItem *item, GtkWidget *group); void kry_waveform_group_item_show(KryWaveformGroupItem *item); void kry_waveform_group_item_hide(KryWaveformGroupItem *item); void kry_waveform_group_item_set_zoom_sync(KryWaveformGroupItem *item, gboolean zoom_sync); void kry_waveform_group_item_set_scale_sync(KryWaveformGroupItem *item, gboolean scale_sync); void kry_waveform_group_item_set_scroll_sync(KryWaveformGroupItem *item, gboolean scroll_sync); #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* __KRY_WAVEFORM_GROUP_ITEM_H__ */