aboutsummaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2010-12-17 03:31:06 +0000
committerDavid Robillard <d@drobilla.net>2010-12-17 03:31:06 +0000
commit7d2d23dc6a2b20c99021da81f0e0b33429df442a (patch)
tree02565c9c21ab48b04a7aac01d4dcf360675cc354 /src/gui
parent7b61e7ac1fe67528c99efc2ff9fa5a6fed627978 (diff)
downloadmachina-7d2d23dc6a2b20c99021da81f0e0b33429df442a.tar.gz
machina-7d2d23dc6a2b20c99021da81f0e0b33429df442a.tar.bz2
machina-7d2d23dc6a2b20c99021da81f0e0b33429df442a.zip
Step recording.
git-svn-id: http://svn.drobilla.net/lad/trunk/machina@2733 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/MachinaGUI.cpp4
-rw-r--r--src/gui/MachinaGUI.hpp1
-rw-r--r--src/gui/machina.glade28
3 files changed, 28 insertions, 5 deletions
diff --git a/src/gui/MachinaGUI.cpp b/src/gui/MachinaGUI.cpp
index 0d697b2..0e66f4c 100644
--- a/src/gui/MachinaGUI.cpp
+++ b/src/gui/MachinaGUI.cpp
@@ -70,6 +70,7 @@ MachinaGUI::MachinaGUI(SharedPtr<Machina::Engine> engine)
xml->get_widget("help_about_menuitem", _menu_help_about);
xml->get_widget("help_help_menuitem", _menu_help_help);
xml->get_widget("canvas_scrolledwindow", _canvas_scrolledwindow);
+ xml->get_widget("step_record_checkbutton", _step_record_checkbutton);
xml->get_widget("clock_checkbutton", _clock_checkbutton);
xml->get_widget("bpm_spinbutton", _bpm_spinbutton);
xml->get_widget("quantize_checkbutton", _quantize_checkbutton);
@@ -166,6 +167,7 @@ MachinaGUI::MachinaGUI(SharedPtr<Machina::Engine> engine)
_main_window->present();
+ _step_record_checkbutton->show();
_clock_checkbutton->set_active(true);
_quantize_checkbutton->set_active(false);
update_toolbar();
@@ -653,7 +655,7 @@ void
MachinaGUI::record_toggled()
{
if (_record_button->get_active() && ! _engine->driver()->recording()) {
- _engine->driver()->start_record();
+ _engine->driver()->start_record(_step_record_checkbutton->get_active());
} else if (_engine->driver()->recording()) {
_engine->driver()->finish_record();
_canvas->build(_engine->machine(), _menu_view_labels->get_active());
diff --git a/src/gui/MachinaGUI.hpp b/src/gui/MachinaGUI.hpp
index 75d4c04..1b348fb 100644
--- a/src/gui/MachinaGUI.hpp
+++ b/src/gui/MachinaGUI.hpp
@@ -120,6 +120,7 @@ protected:
Gtk::ScrolledWindow* _canvas_scrolledwindow;
Gtk::TextView* _status_text;
Gtk::Expander* _messages_expander;
+ Gtk::ToggleToolButton* _step_record_checkbutton;
Gtk::CheckButton* _clock_checkbutton;
Gtk::SpinButton* _bpm_spinbutton;
Gtk::CheckButton* _quantize_checkbutton;
diff --git a/src/gui/machina.glade b/src/gui/machina.glade
index 775a6c0..4cfc5a7 100644
--- a/src/gui/machina.glade
+++ b/src/gui/machina.glade
@@ -256,6 +256,26 @@
</packing>
</child>
<child>
+ <widget class="GtkToggleToolButton" id="step_record_checkbutton">
+ <property name="visible">True</property>
+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+ <property name="tooltip" translatable="yes">Step recording</property>
+ <property name="stock_id">gtk-add</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSeparatorToolItem" id="separatortoolitem4">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
<widget class="GtkToolItem" id="toolitem1">
<property name="visible">True</property>
<child>
@@ -277,7 +297,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="tooltip" translatable="yes">Set internal tempo</property>
- <property name="adjustment">120 1 640 1 10 10</property>
+ <property name="adjustment">120 1 640 1 10 0</property>
<property name="climb_rate">1</property>
</widget>
<packing>
@@ -339,7 +359,7 @@
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
- <property name="adjustment">1 1 99 1 4 4</property>
+ <property name="adjustment">1 1 99 1 4 0</property>
<property name="climb_rate">1</property>
</widget>
<packing>
@@ -728,7 +748,7 @@ Selector nodes are shown in green.
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="has_focus">True</property>
- <property name="adjustment">1 0 999999 1 10 10</property>
+ <property name="adjustment">1 0 999999 1 10 0</property>
<property name="climb_rate">1</property>
<property name="digits">2</property>
<property name="numeric">True</property>
@@ -769,7 +789,7 @@ Selector nodes are shown in green.
<widget class="GtkSpinButton" id="node_properties_note_spinbutton">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="adjustment">60 0 127 1 10 10</property>
+ <property name="adjustment">60 0 127 1 10 0</property>
<property name="climb_rate">1</property>
<property name="numeric">True</property>
</widget>