Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
export_dialog.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2018-2022 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
10#ifndef __GUI_WIDGETS_EXPORT_DIALOG_H__
11#define __GUI_WIDGETS_EXPORT_DIALOG_H__
12
13#include <adwaita.h>
14#include <gtk/gtk.h>
15
16#define EXPORT_DIALOG_WIDGET_TYPE (export_dialog_widget_get_type ())
17G_DECLARE_FINAL_TYPE (
19 export_dialog_widget,
20 Z,
21 EXPORT_DIALOG_WIDGET,
22 GtkDialog)
23
24typedef struct _DigitalMeterWidget DigitalMeterWidget;
25
32typedef enum ExportFilenamePattern
33{
34 EFP_APPEND_FORMAT,
35 EFP_PREPEND_DATE_APPEND_FORMAT,
36} ExportFilenamePattern;
37
41typedef struct _ExportDialogWidget
42{
43 GtkDialog parent_instance;
44
45 AdwViewSwitcherTitle * title;
46 AdwViewStack * stack;
47
48 /* audio */
49 AdwEntryRow * audio_title;
50 AdwEntryRow * audio_artist;
51 AdwEntryRow * audio_genre;
52 AdwComboRow * audio_format;
53 AdwComboRow * audio_bit_depth;
54 AdwActionRow * audio_dither;
55 GtkSwitch * audio_dither_switch;
56 AdwComboRow * audio_filename_pattern;
57 AdwComboRow * audio_mixdown_or_stems;
58 AdwComboRow * audio_time_range_combo;
59 AdwActionRow * audio_custom_tr_row;
60 GtkBox * audio_custom_tr_start_meter_box;
61 DigitalMeterWidget * audio_custom_tr_start_meter;
62 Position audio_custom_start_pos;
63 GtkBox * audio_custom_tr_end_meter_box;
64 DigitalMeterWidget * audio_custom_tr_end_meter;
65 Position audio_custom_end_pos;
66 GtkColumnView * audio_tracks_view;
67 GtkLabel * audio_output_label;
68 GPtrArray * audio_item_factories;
69
70 /* MIDI */
71 AdwEntryRow * midi_title;
72 AdwEntryRow * midi_artist;
73 AdwEntryRow * midi_genre;
74 AdwComboRow * midi_format;
75 GtkSwitch * midi_export_lanes_as_tracks_switch;
76 AdwComboRow * midi_filename_pattern;
77 AdwComboRow * midi_mixdown_or_stems;
78 AdwComboRow * midi_time_range_combo;
79 AdwActionRow * midi_custom_tr_row;
80 GtkBox * midi_custom_tr_start_meter_box;
81 DigitalMeterWidget * midi_custom_tr_start_meter;
82 Position midi_custom_start_pos;
83 GtkBox * midi_custom_tr_end_meter_box;
84 DigitalMeterWidget * midi_custom_tr_end_meter;
85 Position midi_custom_end_pos;
86 GtkColumnView * midi_tracks_view;
87 GtkLabel * midi_output_label;
88 GPtrArray * midi_item_factories;
89
91
97
102#endif
ExportDialogWidget * export_dialog_widget_new(void)
Creates an export dialog widget and displays it.
The export dialog.
A Position is made up of bars.beats.sixteenths.ticks.
Definition position.h:126