projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
unify build-script variable names
[ardour.git]
/
gtk2_ardour
/
tempo_dialog.cc
diff --git
a/gtk2_ardour/tempo_dialog.cc
b/gtk2_ardour/tempo_dialog.cc
index 02686b62ff5a6833fb5212eadedf499067371edc..0b570abdaa2fcc780de2b5dc78beb8ee8411db21 100644
(file)
--- a/
gtk2_ardour/tempo_dialog.cc
+++ b/
gtk2_ardour/tempo_dialog.cc
@@
-23,8
+23,8
@@
#include "gtkmm2ext/utils.h"
#include "gtkmm2ext/utils.h"
-#include "ardour_ui.h"
#include "tempo_dialog.h"
#include "tempo_dialog.h"
+#include "ui_config.h"
#include "i18n.h"
#include "i18n.h"
@@
-72,6
+72,7
@@
TempoDialog::init (const Timecode::BBT_Time& when, double bpm, double note_type,
bpm_spinner.set_digits (2);
bpm_spinner.set_wrap (true);
bpm_spinner.set_value (bpm);
bpm_spinner.set_digits (2);
bpm_spinner.set_wrap (true);
bpm_spinner.set_value (bpm);
+ bpm_spinner.set_alignment (1.0);
note_types.insert (make_pair (_("whole"), 1.0));
strings.push_back (_("whole"));
note_types.insert (make_pair (_("whole"), 1.0));
strings.push_back (_("whole"));
@@
-104,10
+105,10
@@
TempoDialog::init (const Timecode::BBT_Time& when, double bpm, double note_type,
if (x == note_types.end()) {
pulse_selector.set_active_text (strings[3]); // "quarter"
}
if (x == note_types.end()) {
pulse_selector.set_active_text (strings[3]); // "quarter"
}
-
+
Table* table;
Table* table;
- if (
ARDOUR_UI::config()->
get_allow_non_quarter_pulse()) {
+ if (
UIConfiguration::instance().
get_allow_non_quarter_pulse()) {
table = manage (new Table (5, 5));
} else {
table = manage (new Table (5, 4));
table = manage (new Table (5, 5));
} else {
table = manage (new Table (5, 4));
@@
-121,7
+122,7
@@
TempoDialog::init (const Timecode::BBT_Time& when, double bpm, double note_type,
table->attach (*bpm_label, 0, 1, 0, 1);
table->attach (bpm_spinner, 1, 5, 0, 1);
table->attach (*bpm_label, 0, 1, 0, 1);
table->attach (bpm_spinner, 1, 5, 0, 1);
- if (
ARDOUR_UI::config()->
get_allow_non_quarter_pulse()) {
+ if (
UIConfiguration::instance().
get_allow_non_quarter_pulse()) {
table->attach (pulse_selector_label, 0, 1, 1, 2);
table->attach (pulse_selector, 1, 5, 1, 2);
row = 2;
table->attach (pulse_selector_label, 0, 1, 1, 2);
table->attach (pulse_selector, 1, 5, 1, 2);
row = 2;
@@
-139,6
+140,8
@@
TempoDialog::init (const Timecode::BBT_Time& when, double bpm, double note_type,
if (movable) {
when_bar_entry.set_width_chars(4);
when_beat_entry.set_width_chars (4);
if (movable) {
when_bar_entry.set_width_chars(4);
when_beat_entry.set_width_chars (4);
+ when_bar_entry.set_alignment (1.0);
+ when_beat_entry.set_alignment (1.0);
when_bar_label.set_name ("MetricLabel");
when_beat_label.set_name ("MetricLabel");
when_bar_label.set_name ("MetricLabel");
when_beat_label.set_name ("MetricLabel");
@@
-246,7
+249,7
@@
double
TempoDialog::get_note_type ()
{
NoteTypes::iterator x = note_types.find (pulse_selector.get_active_text());
TempoDialog::get_note_type ()
{
NoteTypes::iterator x = note_types.find (pulse_selector.get_active_text());
-
+
if (x == note_types.end()) {
error << string_compose(_("incomprehensible pulse note type (%1)"), pulse_selector.get_active_text()) << endmsg;
return 0;
if (x == note_types.end()) {
error << string_compose(_("incomprehensible pulse note type (%1)"), pulse_selector.get_active_text()) << endmsg;
return 0;
@@
-274,15
+277,21
@@
TempoDialog::tap_tempo_button_press (GdkEventButton *ev)
interval = (now - last_tap) * 1.0e-6;
if (interval <= 6.0) {
// <= 6 seconds (say): >= 10 bpm
interval = (now - last_tap) * 1.0e-6;
if (interval <= 6.0) {
// <= 6 seconds (say): >= 10 bpm
- if (average_interval > 0 && average_interval > interval / 1.2 && average_interval < interval * 1.2) {
+ if (average_interval > 0) {
+ if (average_interval > interval / 1.2 && average_interval < interval * 1.2) {
average_interval = interval * decay
+ average_interval * (1.0-decay);
average_interval = interval * decay
+ average_interval * (1.0-decay);
+ } else {
+ average_interval = 0;
+ }
} else {
average_interval = interval;
}
} else {
average_interval = interval;
}
- bpm = 60.0 / average_interval;
- bpm_spinner.set_value (bpm);
+ if (average_interval > 0) {
+ bpm = 60.0 / average_interval;
+ bpm_spinner.set_value (bpm);
+ }
} else {
average_interval = 0;
}
} else {
average_interval = 0;
}
@@
-291,6
+300,8
@@
TempoDialog::tap_tempo_button_press (GdkEventButton *ev)
tapped = true;
}
last_tap = now;
tapped = true;
}
last_tap = now;
+
+ return true;
}
bool
}
bool
@@
-327,6
+338,7
@@
MeterDialog::init (const Timecode::BBT_Time& when, double bpb, double divisor, b
snprintf (buf, sizeof (buf), "%.2f", bpb);
bpb_entry.set_text (buf);
bpb_entry.select_region (0, -1);
snprintf (buf, sizeof (buf), "%.2f", bpb);
bpb_entry.set_text (buf);
bpb_entry.select_region (0, -1);
+ bpb_entry.set_alignment (1.0);
note_types.insert (make_pair (_("whole"), 1.0));
strings.push_back (_("whole"));
note_types.insert (make_pair (_("whole"), 1.0));
strings.push_back (_("whole"));
@@
-355,7
+367,7
@@
MeterDialog::init (const Timecode::BBT_Time& when, double bpb, double divisor, b
break;
}
}
break;
}
}
-
+
if (x == note_types.end()) {
note_type.set_active_text (strings[3]); // "quarter"
}
if (x == note_types.end()) {
note_type.set_active_text (strings[3]); // "quarter"
}
@@
-372,6
+384,7
@@
MeterDialog::init (const Timecode::BBT_Time& when, double bpb, double divisor, b
snprintf (buf, sizeof (buf), "%" PRIu32, when.bars);
when_bar_entry.set_text (buf);
snprintf (buf, sizeof (buf), "%" PRIu32, when.bars);
when_bar_entry.set_text (buf);
+ when_bar_entry.set_alignment (1.0);
if (movable) {
Label* when_label = manage (new Label(_("Meter begins at bar:"), ALIGN_LEFT, ALIGN_CENTER));
if (movable) {
Label* when_label = manage (new Label(_("Meter begins at bar:"), ALIGN_LEFT, ALIGN_CENTER));
@@
-485,7
+498,7
@@
double
MeterDialog::get_note_type ()
{
NoteTypes::iterator x = note_types.find (note_type.get_active_text());
MeterDialog::get_note_type ()
{
NoteTypes::iterator x = note_types.find (note_type.get_active_text());
-
+
if (x == note_types.end()) {
error << string_compose(_("incomprehensible meter note type (%1)"), note_type.get_active_text()) << endmsg;
return 0;
if (x == note_types.end()) {
error << string_compose(_("incomprehensible meter note type (%1)"), note_type.get_active_text()) << endmsg;
return 0;