struct waveform_info { KryWaveformGroupItem *item; KryWaveform *waveform; GtkToolbar *toolbar; GtkFrame *frame_name; GtkLabel *label_name; GtkButton *button_hide; GtkWidget *button_set_name; GtkWidget *button_clone; GtkToggleButton *button_sync_scroll; GtkToggleButton *button_sync_zoom; GtkToggleButton *button_sync_scale; GtkToggleButton *button_mute; GtkSpinButton *spin_scale; GtkSpinButton *spin_zoom; GtkWidget *sep1; GtkWidget *sep2; GtkWidget *sep3; GtkWidget *sep4; GtkWidget *sep5; GtkWidget *sep6; char *name; KryWaveformDataInfo *data_info; int channel; struct waveform_info *parent; int clones; }; void gui_waveforms_setup(struct sound_info *sound_info); void gui_waveforms_waveform_set_name(GtkWidget *widget, struct waveform_info *info); void gui_waveforms_waveform_add(struct KryWaveformDataInfo *data_info, char *title, gboolean show_sync_toggles, KryWaveformGroupItem *parent); void gui_waveforms_waveform_add_empty(); void gui_waveforms_destroy(); void gui_waveforms_waveform_clone(KryWaveformGroupItem *item); void gui_waveforms_waveform_clone_cb(GtkWidget *widget, KryWaveformGroupItem *item); void gui_waveforms_waveform_spin_zoom_cb(GtkWidget *widget, struct waveform_info *info); void gui_waveforms_waveform_spin_scale_cb(GtkWidget *widget, struct waveform_info *info); GtkToolbar *gui_waveforms_create_simple_toolbar();