Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
chord_pack_browser.h
1/*
2 * SPDX-FileCopyrightText: © 2022 Alexandros Theodotou <alex@zrythm.org>
3 *
4 * SPDX-License-Identifier: LicenseRef-ZrythmLicense
5 */
6
7#ifndef __GUI_WIDGETS_CHORD_PACK_BROWSER_H__
8#define __GUI_WIDGETS_CHORD_PACK_BROWSER_H__
9
10#include "gtk_wrapper.h"
11
12typedef struct ChordPreset ChordPreset;
13typedef struct ChordPresetPack ChordPresetPack;
14typedef struct _FileAuditionerControlsWidget FileAuditionerControlsWidget;
15typedef struct ItemFactory ItemFactory;
16
23#define CHORD_PACK_BROWSER_WIDGET_TYPE (chord_pack_browser_widget_get_type ())
25 ChordPackBrowserWidget,
26 chord_pack_browser_widget,
27 Z,
28 CHORD_PACK_BROWSER_WIDGET,
29 GtkBox)
30
31#define MW_CHORD_PACK_BROWSER MW_RIGHT_DOCK_EDGE->chord_pack_browser
32
33typedef struct _ChordPackBrowserWidget
34{
35 GtkBox parent_instance;
36
37 GtkPaned * paned;
38
39 GtkBox * browser_top;
40 GtkBox * browser_bot;
41
42 GtkSingleSelection * packs_selection_model;
43 ItemFactory * packs_item_factory;
44 GtkListView * packs_list_view;
45
46 GtkLabel * pset_info;
47
48 GtkCustomFilter * psets_filter;
49 GtkFilterListModel * psets_filter_model;
50 GtkSingleSelection * psets_selection_model;
51 ItemFactory * psets_item_factory;
52 GtkListView * psets_list_view;
53
55 GPtrArray * selected_packs;
56 GPtrArray * selected_psets;
57
58 FileAuditionerControlsWidget * auditioner_controls;
59
61 const ChordPresetPack * cur_pack;
62 const ChordPreset * cur_pset;
63
65 GtkPopoverMenu * popover_menu;
66} ChordPackBrowserWidget;
67
68void
69chord_pack_browser_widget_refresh_packs (ChordPackBrowserWidget * self);
70
71void
72chord_pack_browser_widget_refresh_presets (ChordPackBrowserWidget * self);
73
74ChordPackBrowserWidget *
75chord_pack_browser_widget_new (void);
76
81#endif
G_DECLARE_FINAL_TYPE(ChordPackBrowserWidget, chord_pack_browser_widget, Z, CHORD_PACK_BROWSER_WIDGET, GtkBox) typedef struct _ChordPackBrowserWidget
Chord preset pack.
A preset of chord descriptors.
File auditioner controls used in file browsers.
Item factory for column views.