summaryrefslogtreecommitdiff
path: root/gtk2_ardour/tempo_dialog.h
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2010-05-02 23:14:43 +0000
committerCarl Hetherington <carl@carlh.net>2010-05-02 23:14:43 +0000
commitc2da4ec8f988f6f8b9e426b03222a2c687c72edb (patch)
tree0223f8268e4462f0f1494c2795adb6367cee975a /gtk2_ardour/tempo_dialog.h
parentceb1025c2c8ab1246a51c3967ee5a79773a4e008 (diff)
Prevent multiple tempo / meter changes being inserted at the same point
on the timeline; adding a new change at the same time as an existing one will replace the existing one. Should prevent #769 from happening. Some cleanups and tweaks to tempo / meter dialogues. Desensitize Remove menu option for those changes that can't be removed. git-svn-id: svn://localhost/ardour2/branches/3.0@7045 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/tempo_dialog.h')
-rw-r--r--gtk2_ardour/tempo_dialog.h37
1 files changed, 20 insertions, 17 deletions
diff --git a/gtk2_ardour/tempo_dialog.h b/gtk2_ardour/tempo_dialog.h
index c75f60ac23..c1a88367ca 100644
--- a/gtk2_ardour/tempo_dialog.h
+++ b/gtk2_ardour/tempo_dialog.h
@@ -35,20 +35,9 @@
#include "ardour_dialog.h"
-struct TempoDialog : public ArdourDialog
+class TempoDialog : public ArdourDialog
{
- Gtk::ComboBoxText note_types;
- std::vector<std::string> strings;
- Gtk::Adjustment bpm_adjustment;
- Gtk::SpinButton bpm_spinner;
- Gtk::Button ok_button;
- Gtk::Button cancel_button;
- Gtk::Entry when_bar_entry;
- Gtk::Entry when_beat_entry;
- Gtk::Label when_bar_label;
- Gtk::Label when_beat_label;
- char buf[64];
-
+public:
TempoDialog (ARDOUR::TempoMap&, nframes_t, const std::string & action);
TempoDialog (ARDOUR::TempoSection&, const std::string & action);
@@ -63,18 +52,24 @@ private:
bool bpm_button_release (GdkEventButton* );
bool entry_key_release (GdkEventKey* );
void note_types_change ();
-};
-struct MeterDialog : public ArdourDialog
-{
- Gtk::Entry bpb_entry;
Gtk::ComboBoxText note_types;
std::vector<std::string> strings;
+ Gtk::Adjustment bpm_adjustment;
+ Gtk::SpinButton bpm_spinner;
Gtk::Button ok_button;
Gtk::Button cancel_button;
Gtk::Entry when_bar_entry;
+ Gtk::Entry when_beat_entry;
+ Gtk::Label when_bar_label;
+ Gtk::Label when_beat_label;
char buf[64];
+};
+class MeterDialog : public ArdourDialog
+{
+public:
+
MeterDialog (ARDOUR::TempoMap&, nframes_t, const std::string & action);
MeterDialog (ARDOUR::MeterSection&, const std::string & action);
@@ -87,6 +82,14 @@ private:
bool entry_key_press (GdkEventKey* );
bool entry_key_release (GdkEventKey* );
void note_types_change ();
+
+ Gtk::Entry bpb_entry;
+ Gtk::ComboBoxText note_types;
+ std::vector<std::string> strings;
+ Gtk::Button ok_button;
+ Gtk::Button cancel_button;
+ Gtk::Entry when_bar_entry;
+ char buf[64];
};
#endif /* __ardour_gtk_tempo_dialog_h__ */