Ardour
8.12
transform_dialog.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2014-2015 David Robillard <d@drobilla.net>
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation; either version 2 of the License, or
7
* (at your option) any later version.
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License along
15
* with this program; if not, write to the Free Software Foundation, Inc.,
16
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17
*/
18
19
#ifndef __transform_dialog_h__
20
#define __transform_dialog_h__
21
22
#include <list>
23
#include <string>
24
25
#include <
gtkmm/combobox.h
>
26
#include <
gtkmm/liststore.h
>
27
#include <
gtkmm/treemodel.h
>
28
#include <
gtkmm/spinbutton.h
>
29
30
#include "
ardour/midi_model.h
"
31
#include "
ardour/transform.h
"
32
#include "
ardour/types.h
"
33
34
#include "
ardour_dialog.h
"
35
50
class
TransformDialog
:
public
ArdourDialog
51
{
52
public
:
53
TransformDialog
();
54
55
ARDOUR::Transform::Program
get
();
56
57
private
:
58
typedef
ARDOUR::MidiModel::NoteDiffCommand::Property
Property
;
59
typedef
ARDOUR::Transform::Value
Value
;
60
typedef
ARDOUR::Transform::Value::Source
Source
;
61
typedef
ARDOUR::Transform::Operation::Operator
Operator
;
62
typedef
ARDOUR::Transform::Operation
Operation
;
63
64
struct
SourceCols
:
public
Gtk::TreeModelColumnRecord
{
65
SourceCols
() {
add
(
source
);
add
(
label
); }
66
67
Gtk::TreeModelColumn<Source>
source
;
68
Gtk::TreeModelColumn<std::string>
label
;
69
};
70
71
struct
PropertyCols
:
public
Gtk::TreeModelColumnRecord
{
72
PropertyCols
() {
add
(
property
);
add
(
label
); }
73
74
Gtk::TreeModelColumn<Property>
property
;
75
Gtk::TreeModelColumn<std::string>
label
;
76
};
77
78
struct
OperatorCols
:
public
Gtk::TreeModelColumnRecord
{
79
OperatorCols
() {
add
(
op
);
add
(
label
); }
80
81
Gtk::TreeModelColumn<Operator>
op
;
82
Gtk::TreeModelColumn<std::string>
label
;
83
};
84
85
struct
Model
{
86
Model
();
87
88
SourceCols
source_cols
;
89
Glib::RefPtr<Gtk::ListStore>
source_list
;
90
PropertyCols
property_cols
;
91
Glib::RefPtr<Gtk::ListStore>
property_list
;
92
OperatorCols
operator_cols
;
93
Glib::RefPtr<Gtk::ListStore>
operator_list
;
94
};
95
96
struct
ValueChooser
:
public
Gtk::HBox
{
97
ValueChooser
(
const
Model
&
model
);
98
100
void
get
(std::list<Operation>& ops);
101
102
void
set_target_property
(
Property
prop);
103
void
source_changed
();
104
105
double
get_value
()
const
;
106
double
get_max
()
const
;
107
108
const
Model
&
model
;
109
Property
target_property
;
110
Gtk::ComboBox
source_combo
;
111
Gtk::ComboBox
property_combo
;
112
Gtk::SpinButton
value_spinner
;
113
Gtk::Label
to_label
;
114
Gtk::SpinButton
max_spinner
;
115
};
116
117
struct
OperationChooser
:
public
Gtk::HBox
{
118
OperationChooser
(
const
Model
&
model
);
119
121
void
get
(std::list<Operation>& ops);
122
123
void
remove_clicked
();
124
125
const
Model
&
model
;
126
Gtk::ComboBox
operator_combo
;
127
ValueChooser
value_chooser
;
128
Gtk::Button
remove_button
;
129
};
130
131
void
property_changed
();
132
void
add_clicked
();
133
134
Model
_model
;
135
Gtk::ComboBox
_property_combo
;
136
ValueChooser
*
_seed_chooser
;
137
Gtk::VBox
_operations_box
;
138
Gtk::Button
_add_button
;
139
};
140
141
#endif
/* __transform_dialog_h__ */
types.h
ardour_dialog.h
ARDOUR::MidiModel::NoteDiffCommand::Property
Property
Definition:
midi_model.h:92
ArdourDialog
Definition:
ardour_dialog.h:41
Gtk::Button
Definition:
tk/ytkmm/ytkmm/gtkmm/button.h:60
Gtk::ComboBox
Definition:
combobox.h:72
Gtk::HBox
Definition:
tk/ytkmm/ytkmm/gtkmm/box.h:588
Gtk::Label
Definition:
label.h:55
Gtk::SpinButton
Definition:
spinbutton.h:127
Gtk::TreeModelColumnRecord
Definition:
treemodelcolumn.h:71
Gtk::TreeModelColumnRecord::add
void add(TreeModelColumnBase &column)
Gtk::TreeModelColumn< Source >
Gtk::VBox
Definition:
tk/ytkmm/ytkmm/gtkmm/box.h:505
TransformDialog
Definition:
transform_dialog.h:51
TransformDialog::Property
ARDOUR::MidiModel::NoteDiffCommand::Property Property
Definition:
transform_dialog.h:58
TransformDialog::_property_combo
Gtk::ComboBox _property_combo
Definition:
transform_dialog.h:135
TransformDialog::get
ARDOUR::Transform::Program get()
TransformDialog::Value
ARDOUR::Transform::Value Value
Definition:
transform_dialog.h:59
TransformDialog::Operation
ARDOUR::Transform::Operation Operation
Definition:
transform_dialog.h:62
TransformDialog::_seed_chooser
ValueChooser * _seed_chooser
Definition:
transform_dialog.h:136
TransformDialog::TransformDialog
TransformDialog()
TransformDialog::add_clicked
void add_clicked()
TransformDialog::Source
ARDOUR::Transform::Value::Source Source
Definition:
transform_dialog.h:60
TransformDialog::_add_button
Gtk::Button _add_button
Definition:
transform_dialog.h:138
TransformDialog::_operations_box
Gtk::VBox _operations_box
Definition:
transform_dialog.h:137
TransformDialog::property_changed
void property_changed()
TransformDialog::_model
Model _model
Definition:
transform_dialog.h:134
TransformDialog::Operator
ARDOUR::Transform::Operation::Operator Operator
Definition:
transform_dialog.h:61
combobox.h
liststore.h
midi_model.h
spinbutton.h
ARDOUR::Transform::Operation
Definition:
transform.h:103
ARDOUR::Transform::Operation::Operator
Operator
Definition:
transform.h:104
ARDOUR::Transform::Program
Definition:
transform.h:127
ARDOUR::Transform::Value
Definition:
transform.h:71
ARDOUR::Transform::Value::Source
Source
Definition:
transform.h:75
TransformDialog::Model
Definition:
transform_dialog.h:85
TransformDialog::Model::property_cols
PropertyCols property_cols
Definition:
transform_dialog.h:90
TransformDialog::Model::property_list
Glib::RefPtr< Gtk::ListStore > property_list
Definition:
transform_dialog.h:91
TransformDialog::Model::source_cols
SourceCols source_cols
Definition:
transform_dialog.h:88
TransformDialog::Model::operator_cols
OperatorCols operator_cols
Definition:
transform_dialog.h:92
TransformDialog::Model::Model
Model()
TransformDialog::Model::operator_list
Glib::RefPtr< Gtk::ListStore > operator_list
Definition:
transform_dialog.h:93
TransformDialog::Model::source_list
Glib::RefPtr< Gtk::ListStore > source_list
Definition:
transform_dialog.h:89
TransformDialog::OperationChooser
Definition:
transform_dialog.h:117
TransformDialog::OperationChooser::remove_button
Gtk::Button remove_button
Definition:
transform_dialog.h:128
TransformDialog::OperationChooser::remove_clicked
void remove_clicked()
TransformDialog::OperationChooser::value_chooser
ValueChooser value_chooser
Definition:
transform_dialog.h:127
TransformDialog::OperationChooser::operator_combo
Gtk::ComboBox operator_combo
Definition:
transform_dialog.h:126
TransformDialog::OperationChooser::OperationChooser
OperationChooser(const Model &model)
TransformDialog::OperationChooser::get
void get(std::list< Operation > &ops)
TransformDialog::OperationChooser::model
const Model & model
Definition:
transform_dialog.h:125
TransformDialog::OperatorCols
Definition:
transform_dialog.h:78
TransformDialog::OperatorCols::op
Gtk::TreeModelColumn< Operator > op
Definition:
transform_dialog.h:81
TransformDialog::OperatorCols::OperatorCols
OperatorCols()
Definition:
transform_dialog.h:79
TransformDialog::OperatorCols::label
Gtk::TreeModelColumn< std::string > label
Definition:
transform_dialog.h:82
TransformDialog::PropertyCols
Definition:
transform_dialog.h:71
TransformDialog::PropertyCols::PropertyCols
PropertyCols()
Definition:
transform_dialog.h:72
TransformDialog::PropertyCols::label
Gtk::TreeModelColumn< std::string > label
Definition:
transform_dialog.h:75
TransformDialog::PropertyCols::property
Gtk::TreeModelColumn< Property > property
Definition:
transform_dialog.h:74
TransformDialog::SourceCols
Definition:
transform_dialog.h:64
TransformDialog::SourceCols::source
Gtk::TreeModelColumn< Source > source
Definition:
transform_dialog.h:67
TransformDialog::SourceCols::SourceCols
SourceCols()
Definition:
transform_dialog.h:65
TransformDialog::SourceCols::label
Gtk::TreeModelColumn< std::string > label
Definition:
transform_dialog.h:68
TransformDialog::ValueChooser
Definition:
transform_dialog.h:96
TransformDialog::ValueChooser::source_changed
void source_changed()
TransformDialog::ValueChooser::model
const Model & model
Models for combo boxes.
Definition:
transform_dialog.h:108
TransformDialog::ValueChooser::source_combo
Gtk::ComboBox source_combo
Value source chooser.
Definition:
transform_dialog.h:110
TransformDialog::ValueChooser::value_spinner
Gtk::SpinButton value_spinner
Value or minimum for RANDOM.
Definition:
transform_dialog.h:112
TransformDialog::ValueChooser::get_value
double get_value() const
TransformDialog::ValueChooser::get
void get(std::list< Operation > &ops)
TransformDialog::ValueChooser::property_combo
Gtk::ComboBox property_combo
Property chooser.
Definition:
transform_dialog.h:111
TransformDialog::ValueChooser::max_spinner
Gtk::SpinButton max_spinner
Maximum for RANDOM.
Definition:
transform_dialog.h:114
TransformDialog::ValueChooser::set_target_property
void set_target_property(Property prop)
TransformDialog::ValueChooser::ValueChooser
ValueChooser(const Model &model)
TransformDialog::ValueChooser::get_max
double get_max() const
TransformDialog::ValueChooser::target_property
Property target_property
Property on source.
Definition:
transform_dialog.h:109
TransformDialog::ValueChooser::to_label
Gtk::Label to_label
"to" label for RANDOM
Definition:
transform_dialog.h:113
transform.h
treemodel.h
gtk2_ardour
transform_dialog.h
Generated on Mon Mar 10 2025 20:26:30 for Ardour by
1.9.1