Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
chord_editor_space.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2019, 2022 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
10#ifndef __GUI_WIDGETS_CHORD_EDITOR_SPACE_H__
11#define __GUI_WIDGETS_CHORD_EDITOR_SPACE_H__
12
13#include <gtk/gtk.h>
14
15#define CHORD_EDITOR_SPACE_WIDGET_TYPE (chord_editor_space_widget_get_type ())
16G_DECLARE_FINAL_TYPE (
18 chord_editor_space_widget,
19 Z,
20 CHORD_EDITOR_SPACE_WIDGET,
21 GtkBox)
22
23typedef struct _ArrangerWidget ArrangerWidget;
24typedef struct _ChordKeyWidget ChordKeyWidget;
25
32#define MW_CHORD_EDITOR_SPACE MW_CLIP_EDITOR_INNER->chord_editor_space
33
38typedef struct _ChordEditorSpaceWidget
39{
40 GtkBox parent_instance;
41
44
48
51 GtkBox * left_box;
52
56
58 ChordKeyWidget * chord_keys[128];
59
61 GtkBox * chord_key_boxes[128];
62
63 GtkScrolledWindow * chord_keys_scroll;
64
68
72
73int
74chord_editor_space_widget_get_chord_height (ChordEditorSpaceWidget * self);
75
76int
77chord_editor_space_widget_get_all_chords_height (ChordEditorSpaceWidget * self);
78
79void
80chord_editor_space_widget_setup (ChordEditorSpaceWidget * self);
81
85void
88 int visible);
89
90void
91chord_editor_space_widget_set_chord_keys_scroll_start_y (
93 int y);
94
95void
96chord_editor_space_widget_refresh (ChordEditorSpaceWidget * self);
97
98void
99chord_editor_space_widget_refresh_chords (ChordEditorSpaceWidget * self);
100
105#endif
void chord_editor_space_widget_update_size_group(ChordEditorSpaceWidget *self, int visible)
See CLIP_EDITOR_INNER_WIDGET_ADD_TO_SIZEGROUP.
The arranger widget is a canvas that draws all the arranger objects it contains.
Definition arranger.h:108
The piano roll widget is the whole space inside the clip editor tab when a CHORD region is selected.
GtkSizeGroup * arranger_and_keys_vsize_group
Vertical size goup for the keys and the arranger.
GtkBox * chord_keys_slash_arranger_box
The box dividing the chord keys and the arranger.
GtkPaned * main_top_bot_paned
The main vertical paned.
ArrangerWidget * arranger
The arranger.
GtkBox * chord_keys_box
The box wrapped inside a scroll that will host the ChordKeyWidget's.
GtkBox * left_box
The box on the left of the arranger containing the chord keys.
Piano roll note widget to be shown on the left side of the piano roll (128 of these).
Definition chord_key.h:32