diff options
author | David Robillard <d@drobilla.net> | 2007-03-11 17:33:20 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-03-11 17:33:20 +0000 |
commit | f3ba4fc81cecf8ba61c2508ed9a624c794ab88b5 (patch) | |
tree | 192e269d2ee275331327466e69b69a752834ee27 /src/gui | |
parent | f93b6bd24dc98e071e5881595829f2c9a6311139 (diff) | |
download | machina-f3ba4fc81cecf8ba61c2508ed9a624c794ab88b5.tar.gz machina-f3ba4fc81cecf8ba61c2508ed9a624c794ab88b5.tar.bz2 machina-f3ba4fc81cecf8ba61c2508ed9a624c794ab88b5.zip |
MIDI file reading.
git-svn-id: http://svn.drobilla.net/lad/machina@352 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/MachinaGUI.cpp | 12 | ||||
-rw-r--r-- | src/gui/MachinaGUI.hpp | 4 | ||||
-rw-r--r-- | src/gui/NodeView.cpp | 4 | ||||
-rw-r--r-- | src/gui/machina.glade | 59 |
4 files changed, 36 insertions, 43 deletions
diff --git a/src/gui/MachinaGUI.cpp b/src/gui/MachinaGUI.cpp index 65ecb13..121e25a 100644 --- a/src/gui/MachinaGUI.cpp +++ b/src/gui/MachinaGUI.cpp @@ -115,7 +115,7 @@ MachinaGUI::MachinaGUI(SharedPtr<Machina::Engine> engine) xml->get_widget("save_menuitem", _menu_file_save); xml->get_widget("save_as_menuitem", _menu_file_save_as); xml->get_widget("quit_menuitem", _menu_file_quit); - xml->get_widget("learn_midi_menuitem", _menu_learn_midi); + xml->get_widget("import_midi_menuitem", _menu_import_midi); xml->get_widget("export_midi_menuitem", _menu_export_midi); xml->get_widget("view_toolbar_menuitem", _menu_view_toolbar); //xml->get_widget("view_refresh_menuitem", _menu_view_refresh); @@ -154,8 +154,8 @@ MachinaGUI::MachinaGUI(SharedPtr<Machina::Engine> engine) sigc::mem_fun(this, &MachinaGUI::menu_file_save_as)); _menu_file_quit->signal_activate().connect( sigc::mem_fun(this, &MachinaGUI::menu_file_quit)); - _menu_learn_midi->signal_activate().connect( - sigc::mem_fun(this, &MachinaGUI::menu_learn_midi)); + _menu_import_midi->signal_activate().connect( + sigc::mem_fun(this, &MachinaGUI::menu_import_midi)); _menu_export_midi->signal_activate().connect( sigc::mem_fun(this, &MachinaGUI::menu_export_midi)); //_menu_view_refresh->signal_activate().connect( @@ -437,7 +437,7 @@ MachinaGUI::menu_file_save_as() void -MachinaGUI::menu_learn_midi() +MachinaGUI::menu_import_midi() { Gtk::FileChooserDialog dialog(*_main_window, "Learn from MIDI file", Gtk::FILE_CHOOSER_ACTION_OPEN); dialog.add_button(Gtk::Stock::CANCEL, Gtk::RESPONSE_CANCEL); @@ -448,6 +448,10 @@ MachinaGUI::menu_learn_midi() if (result == Gtk::RESPONSE_OK) { SharedPtr<Machina::SMFDriver> file_driver(new Machina::SMFDriver()); SharedPtr<Machina::Machine> machine = file_driver->learn(dialog.get_uri()); + machine->activate(); + machine->reset(); + _engine->driver()->set_machine(machine); + _canvas->build(machine); } } diff --git a/src/gui/MachinaGUI.hpp b/src/gui/MachinaGUI.hpp index 962a6f9..0e507fc 100644 --- a/src/gui/MachinaGUI.hpp +++ b/src/gui/MachinaGUI.hpp @@ -59,7 +59,7 @@ protected: void menu_file_open(); void menu_file_save(); void menu_file_save_as(); - void menu_learn_midi(); + void menu_import_midi(); void menu_export_midi(); //void show_messages_toggled(); void show_toolbar_toggled(); @@ -100,7 +100,7 @@ protected: Gtk::MenuItem* _menu_file_save; Gtk::MenuItem* _menu_file_save_as; Gtk::MenuItem* _menu_file_quit; - Gtk::MenuItem* _menu_learn_midi; + Gtk::MenuItem* _menu_import_midi; Gtk::MenuItem* _menu_export_midi; Gtk::MenuItem* _menu_help_about; Gtk::CheckMenuItem* _menu_view_toolbar; diff --git a/src/gui/NodeView.cpp b/src/gui/NodeView.cpp index 62be95b..f34c658 100644 --- a/src/gui/NodeView.cpp +++ b/src/gui/NodeView.cpp @@ -34,10 +34,11 @@ void NodeView::on_double_click(GdkEventButton*) { bool is_initial = _node->is_initial(); - std::cerr << "INITIAL " << is_initial; + std::cerr << "Initial: " << is_initial << std::endl; _node->set_initial( ! is_initial ); } + void NodeView::update_state() { @@ -52,3 +53,4 @@ NodeView::update_state() set_base_color(_old_color); } } + diff --git a/src/gui/machina.glade b/src/gui/machina.glade index d82f528..c0d1b87 100644 --- a/src/gui/machina.glade +++ b/src/gui/machina.glade @@ -77,6 +77,28 @@ </child> <child> + <widget class="GtkImageMenuItem" id="import_midi_menuitem"> + <property name="visible">True</property> + <property name="label" translatable="yes">_Import MIDI...</property> + <property name="use_underline">True</property> + <signal name="activate" handler="on_learn_midi_menuitem_activate" last_modification_time="Fri, 02 Mar 2007 21:00:16 GMT"/> + <accelerator key="I" modifiers="GDK_CONTROL_MASK" signal="activate"/> + + <child internal-child="image"> + <widget class="GtkImage" id="image8"> + <property name="visible">True</property> + <property name="stock">gtk-media-record</property> + <property name="icon_size">1</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + </child> + </widget> + </child> + + <child> <widget class="GtkImageMenuItem" id="export_midi_menuitem"> <property name="visible">True</property> <property name="label" translatable="yes">_Export MIDI...</property> @@ -85,7 +107,7 @@ <accelerator key="E" modifiers="GDK_CONTROL_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image6"> + <widget class="GtkImage" id="image9"> <property name="visible">True</property> <property name="stock">gtk-convert</property> <property name="icon_size">1</property> @@ -118,41 +140,6 @@ </child> <child> - <widget class="GtkMenuItem" id="machine_menu"> - <property name="visible">True</property> - <property name="label" translatable="yes">_Machine</property> - <property name="use_underline">True</property> - - <child> - <widget class="GtkMenu" id="machine_menu_menu"> - - <child> - <widget class="GtkImageMenuItem" id="learn_midi_menuitem"> - <property name="visible">True</property> - <property name="label" translatable="yes">Learn MIDI...</property> - <property name="use_underline">True</property> - <signal name="activate" handler="on_learn_midi_menuitem_activate" last_modification_time="Fri, 02 Mar 2007 21:00:16 GMT"/> - <accelerator key="L" modifiers="GDK_CONTROL_MASK" signal="activate"/> - - <child internal-child="image"> - <widget class="GtkImage" id="image7"> - <property name="visible">True</property> - <property name="stock">gtk-media-record</property> - <property name="icon_size">1</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - </widget> - </child> - </widget> - </child> - </widget> - </child> - </widget> - </child> - - <child> <widget class="GtkMenuItem" id="view_menu"> <property name="visible">True</property> <property name="label" translatable="yes">_View</property> |