From 3baf7e68c29a5a37f9317aeb0f4e75252a9e4530 Mon Sep 17 00:00:00 2001 From: Tim Redfern Date: Fri, 22 Jun 2018 18:16:10 +0100 Subject: chaos selecter progress --- gui/src/AudioPlotter.h | 17 +++++++++++++++++ gui/src/main.cpp | 2 -- gui/src/ofApp.cpp | 17 ++--------------- gui/src/ofApp.h | 26 +++++++++++++++++++++++--- 4 files changed, 42 insertions(+), 20 deletions(-) (limited to 'gui/src') diff --git a/gui/src/AudioPlotter.h b/gui/src/AudioPlotter.h index 57f25ad..40e3fc9 100644 --- a/gui/src/AudioPlotter.h +++ b/gui/src/AudioPlotter.h @@ -19,6 +19,7 @@ class Chaos{ public: vector plugins; vector > params; + int whichplugin; Chaos(){ plugins.push_back(AChaosplugin(new AChaosBaker(),"Baker")); plugins.push_back(AChaosplugin(new AChaosClifford(),"Clifford")); @@ -26,6 +27,19 @@ class Chaos{ plugins.push_back(AChaosplugin(new AChaosDuffing(),"Duffing")); plugins.push_back(AChaosplugin(new AChaosGinger(),"Ginger")); plugins.push_back(AChaosplugin(new AChaosHenon(),"Henon")); + whichplugin=0; + } + void next(){ + whichplugin=(whichplugin+1)%plugins.size(); + } + void previous(){ + whichplugin=whichplugin-1; + if (whichplugin<0){ + whichplugin=plugins.size()-1; + } + } + std::string &get_name(){ + return plugins[whichplugin].name; } }; @@ -105,8 +119,11 @@ public: ofParameter chaos_k; ofParameter chaos_p; + Chaos chaosloader; + private: vector < vector> data; AChaosIkeda attractor; + }; \ No newline at end of file diff --git a/gui/src/main.cpp b/gui/src/main.cpp index 5b68f90..0d2fa2d 100644 --- a/gui/src/main.cpp +++ b/gui/src/main.cpp @@ -44,8 +44,6 @@ int main(int argc, char *argv[]){ ofAddListener(mainWindow->events().mousePressed,mainApp.get(),&ofApp::outputMousePressed); ofAddListener(mainWindow->events().mouseReleased,mainApp.get(),&ofApp::outputMouseReleased); - //ofAddListener(guiWindow->events().mouseMoved,mainApp.get(),&ofApp::lMouseMoved); - ofRunApp(guiWindow, mainApp); ofRunMainLoop(); } diff --git a/gui/src/ofApp.cpp b/gui/src/ofApp.cpp index 642ad6c..a2196c5 100644 --- a/gui/src/ofApp.cpp +++ b/gui/src/ofApp.cpp @@ -73,7 +73,7 @@ void ofApp::setup(){ onset_frame=0; chaosgui.setup("chaos","",460,820); - chaosgui.add(plugin_label.setup(plugin_name)); + chaosgui.add(plugin_label.setup(plotter.chaosloader.get_name())); chaosgui.add(plotter.usechaos.set("use",false)); chaosgui.add(plotter.chaosamount.set("amount", 0.0f, -0.1f, 0.1f)); chaosgui.add(plotter.chaosscale.set("scale", 100.0f, 1.0f, 1000.0f)); @@ -981,20 +981,7 @@ void ofApp::keyReleased(ofKeyEventArgs &args){ //-------------------------------------------------------------- void ofApp::mouseMoved(int x, int y ){ } -void ofApp::lMouseMoved(ofMouseEventArgs & args ){ - if (args.x>chaosgui.getPosition().x){ //&& - //x-chaosgui.getPosition().xchaosgui.getPosition().y)&& - //((y-chaosgui.getPosition().y)-1){ diff --git a/gui/src/ofApp.h b/gui/src/ofApp.h index 41418b3..29c6929 100644 --- a/gui/src/ofApp.h +++ b/gui/src/ofApp.h @@ -39,6 +39,9 @@ enum Source{ class mouseSelectPanel : public ofxPanel { public: + mouseSelectPanel(){ + ofRegisterKeyEvents(this, defaultEventsPriority); + } bool isSelected; bool mouseMoved(ofMouseEventArgs & args){ if (args.x>getPosition().x&& @@ -47,7 +50,7 @@ class mouseSelectPanel : public ofxPanel { args.y-getPosition().y "< "<