diff options
| author | Tim Redfern <tim@eclectronics.org> | 2014-04-30 21:20:17 +0100 |
|---|---|---|
| committer | Tim Redfern <tim@eclectronics.org> | 2014-04-30 21:20:17 +0100 |
| commit | b963cf0075bf5786f8112b2572b7a94afb132796 (patch) | |
| tree | e09815da9d367d78cb28bbc226a04e9487868528 | |
| parent | be177f9fd888db8668d867c31f6d3dc1c511c0f8 (diff) | |
switched main and gui windows
| -rw-r--r-- | le_new/addons.make | 2 | ||||
| -rw-r--r-- | le_new/le_new.cbp | 80 | ||||
| -rw-r--r-- | le_new/src/main.cpp | 4 | ||||
| -rw-r--r-- | le_new/src/ofApp.cpp | 126 | ||||
| -rw-r--r-- | le_new/src/ofApp.h | 34 |
5 files changed, 132 insertions, 114 deletions
diff --git a/le_new/addons.make b/le_new/addons.make index c864cb0..b8eff98 100644 --- a/le_new/addons.make +++ b/le_new/addons.make @@ -1,7 +1,7 @@ ofxXmlSettings ofxFenster ofxMidi -ofxGui0074 +ofxGui ofxSVGTiny ofxAssets ofxSpriteManager diff --git a/le_new/le_new.cbp b/le_new/le_new.cbp index 84593b2..1cbc556 100644 --- a/le_new/le_new.cbp +++ b/le_new/le_new.cbp @@ -1,12 +1,12 @@ -<?xml version="1.0"?> +<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <CodeBlocks_project_file> <FileVersion major="1" minor="6" /> <Project> - <Option title="example" /> + <Option title="le_new" /> <Option makefile_is_custom="1" /> <Option pch_mode="2" /> <Option compiler="gcc" /> - <Option virtualFolders="addons/;src/;build config/;" /> + <Option virtualFolders="addons/;src/;build config/;addons/ofxFenster/libs/ofGLFWWindow/;addons/ofxFenster/src/;" /> <Build> <Target title="Debug"> <Option output="bin/$(PROJECT_NAME)_debug" prefix_auto="1" extension_auto="1" /> @@ -27,33 +27,31 @@ <Option projectLinkerOptionsRelation="2" /> </Target> </Build> - <Unit filename="config.make"> - <Option virtualFolder="build config" /> + <Unit filename="../../../addons/ofxFenster/libs/ofGLFWWindow/ofAppCustomGLFWWindow.h"> + <Option virtualFolder="addons/ofxFenster/libs/ofGLFWWindow" /> </Unit> - <Unit filename="src/main.cpp"> - <Option virtualFolder="src/" /> + <Unit filename="../../../addons/ofxFenster/libs/ofGLFWWindow/ofAppGLFWWindow.cpp"> + <Option virtualFolder="addons/ofxFenster/libs/ofGLFWWindow" /> </Unit> - <Unit filename="src/ofApp.cpp"> - <Option virtualFolder="src/" /> + <Unit filename="../../../addons/ofxFenster/src/ofxDisplay.cpp"> + <Option virtualFolder="addons/ofxFenster/src" /> </Unit> - <Unit filename="src/ofApp.h"> - <Option virtualFolder="src/" /> + <Unit filename="../../../addons/ofxFenster/src/ofxDisplay.h"> + <Option virtualFolder="addons/ofxFenster/src" /> + </Unit> + <Unit filename="../../../addons/ofxFenster/src/ofxDisplayMac.h"> + <Option virtualFolder="addons/ofxFenster/src" /> </Unit> - <Extensions> - <code_completion /> - <envvars /> - <debugger /> - </Extensions> <Unit filename="../../../addons/ofxFenster/src/ofxDisplayManager.cpp"> <Option virtualFolder="addons/ofxFenster/src" /> </Unit> - <Unit filename="../../../addons/ofxFenster/src/ofxFensterManager.h"> + <Unit filename="../../../addons/ofxFenster/src/ofxDisplayManager.h"> <Option virtualFolder="addons/ofxFenster/src" /> </Unit> <Unit filename="../../../addons/ofxFenster/src/ofxDisplayManagerMac.mm"> <Option virtualFolder="addons/ofxFenster/src" /> </Unit> - <Unit filename="../../../addons/ofxFenster/src/ofxDisplay.cpp"> + <Unit filename="../../../addons/ofxFenster/src/ofxFenster.cpp"> <Option virtualFolder="addons/ofxFenster/src" /> </Unit> <Unit filename="../../../addons/ofxFenster/src/ofxFenster.h"> @@ -62,29 +60,49 @@ <Unit filename="../../../addons/ofxFenster/src/ofxFensterCanvas.cpp"> <Option virtualFolder="addons/ofxFenster/src" /> </Unit> - <Unit filename="../../../addons/ofxFenster/src/ofxDisplayManager.h"> - <Option virtualFolder="addons/ofxFenster/src" /> - </Unit> <Unit filename="../../../addons/ofxFenster/src/ofxFensterCanvas.h"> <Option virtualFolder="addons/ofxFenster/src" /> </Unit> - <Unit filename="../../../addons/ofxFenster/src/ofxDisplayMac.h"> - <Option virtualFolder="addons/ofxFenster/src" /> - </Unit> <Unit filename="../../../addons/ofxFenster/src/ofxFensterManager.cpp"> <Option virtualFolder="addons/ofxFenster/src" /> </Unit> - <Unit filename="../../../addons/ofxFenster/src/ofxFenster.cpp"> + <Unit filename="../../../addons/ofxFenster/src/ofxFensterManager.h"> <Option virtualFolder="addons/ofxFenster/src" /> </Unit> - <Unit filename="../../../addons/ofxFenster/src/ofxDisplay.h"> - <Option virtualFolder="addons/ofxFenster/src" /> + <Unit filename="config.make"> + <Option virtualFolder="build config" /> </Unit> - <Unit filename="../../../addons/ofxFenster/libs/ofGLFWWindow/ofAppGLFWWindow.cpp"> - <Option virtualFolder="addons/ofxFenster/libs/ofGLFWWindow" /> + <Unit filename="src/layers.cpp"> + <Option virtualFolder="src/" /> </Unit> - <Unit filename="../../../addons/ofxFenster/libs/ofGLFWWindow/ofAppCustomGLFWWindow.h"> - <Option virtualFolder="addons/ofxFenster/libs/ofGLFWWindow" /> + <Unit filename="src/layers.h"> + <Option virtualFolder="src/" /> + </Unit> + <Unit filename="src/main.cpp"> + <Option virtualFolder="src/" /> + </Unit> + <Unit filename="src/ofApp.cpp"> + <Option virtualFolder="src/" /> </Unit> + <Unit filename="src/ofApp.h"> + <Option virtualFolder="src/" /> + </Unit> + <Unit filename="src/playlist.cpp"> + <Option virtualFolder="src/" /> + </Unit> + <Unit filename="src/playlist.h"> + <Option virtualFolder="src/" /> + </Unit> + <Unit filename="src/viewport.cpp"> + <Option virtualFolder="src/" /> + </Unit> + <Unit filename="src/viewport.h"> + <Option virtualFolder="src/" /> + </Unit> + <Extensions> + <code_completion /> + <envvars /> + <debugger /> + </Extensions> </Project> </CodeBlocks_project_file> diff --git a/le_new/src/main.cpp b/le_new/src/main.cpp index fde3a48..4beb7c9 100644 --- a/le_new/src/main.cpp +++ b/le_new/src/main.cpp @@ -1,5 +1,5 @@ #include "ofMain.h" -#include "testApp.h" +#include "ofApp.h" #include "ofxFensterManager.h" #include "ofAppGlutWindow.h" @@ -7,7 +7,7 @@ int main( ){ //ofxFensterManager::setup(4080,768,OF_WINDOW); - ofxFensterManager::setup(1440,270,OF_WINDOW); + ofxFensterManager::setup(250,400,OF_WINDOW); // this kicks off the running of my app // can be OF_WINDOW or OF_FULLSCREEN diff --git a/le_new/src/ofApp.cpp b/le_new/src/ofApp.cpp index 09eee92..9201dde 100644 --- a/le_new/src/ofApp.cpp +++ b/le_new/src/ofApp.cpp @@ -33,7 +33,7 @@ void ofApp::keyReleased(int key){ //-------------------------------------------------------------- void ofApp::mouseMoved(int x, int y ){ - + } //-------------------------------------------------------------- @@ -62,19 +62,17 @@ void ofApp::gotMessage(ofMessage msg){ } //-------------------------------------------------------------- -void ofApp::dragEvent(ofDragInfo dragInfo){ +void ofApp::dragEvent(ofDragInfo dragInfo){ } */ -#include "ofApp.h" - previewWindow::~previewWindow(){ cout << "preview window destroyed" << endl; } void previewWindow::setup(){ setWindowShape(600,800); - setWindowPosition(0, 0); + setWindowPosition(260, 0); setWindowTitle("PREVIEW"); } void previewWindow::setParent(ofApp *p){ @@ -88,41 +86,48 @@ void previewWindow::draw(){ rb->draw(0,0,ofGetWidth(),ofGetHeight()); //why crash? } -void previewWindow::keyPressed(int key, ofxFenster* win){ - parent->keyPressed(key); -} + //-------------------------------------------------------------- -guiWindow::~guiWindow(){ - cout << "gui window destroyed" << endl; +outputWindow::~outputWindow(){ } -void guiWindow::setup(){ - setWindowShape(200, 400); - setWindowPosition(610, 0); - setWindowTitle("CONTROL PANEL"); +void outputWindow::setup(){ + setWindowShape(1440,270); + setWindowPosition(0, 0); + setWindowTitle("OUTPUT"); } -void guiWindow::setParent(ofApp *p){ +void outputWindow::setParent(ofApp *p){ parent=p; } -void guiWindow::draw(){ +void outputWindow::draw(){ + + float lambda=max(0.0f,1.0f-((ofGetElapsedTimef()-parent->lastnoteTime)/parent->decayTime)); - parent->gui.draw(); - if (parent->list.lock()) { //if loaded - if (!parent->list.thumbnailed) parent->list.makeThumbnail(); - if (parent->list.thumbnailed) parent->list.thumbnail.draw(20,ofGetHeight()-150); - parent->list.unlock(); + int ft=255-(parent->fadetime*((float)parent->fadeScale)*0.1f); + //if(ofGetFrameNum()%25==0) printf("fadeScale %i\n",(int)fadeScale); + ofSetColor(ft,ft,ft); //for feedback + + float os=parent->oscScale?(sin((parent->breakOsc?ofGetElapsedTimef()-(parent->randomOsc?parent->randOffs:parent->lastnoteTime):ofGetElapsedTimef()))*parent->scaleFrequency)*parent->scaleAmplitude:0.0f; + //vp1.draw(lambda,controllers,xshift,yshift,list,transparentBlack,note,mode,controller_colours,controlColours,scale,fscale,noteRandomiseColours?colShift:0.0f); + //vp2.draw(lambda,controllers,reversemain?-xshift:xshift,yshift,list,transparentBlack,note,mode,controller_colours,controlColours,reversemain?1.0f/scale:scale,reversemain?1.0f/fscale:fscale,noteRandomiseColours?colShift:0.0f); + for (int i=0;i<parent->viewports.size();i++) { + bool even=!(i%2); + bool do_reverse=parent->reverse?!(even&&parent->reversemain):even&&parent->reversemain; + parent->viewports[i]->draw(lambda,parent->controllers,do_reverse?-parent->xshift:parent->xshift,parent->yshift,parent->list,parent->transparentBlack,parent->note,parent->mode,parent->controller_colours,parent->controlColours,do_reverse?1.0f/(parent->scale+os):parent->scale+os,do_reverse?1.0f/parent->fscale:parent->fscale,parent->noteRandomiseColours?parent->colShift:0.0f,parent->fadeBackground); } - ofDrawBitmapString(parent->list.name,20,ofGetHeight()-10); + + ofSetColor(255,255,255); + if (parent->showFPS) ofDrawBitmapString(ofToString(ofGetFrameRate(), 2),20,20); } -void guiWindow::dragEvent(ofDragInfo dragInfo, ofxFenster* win){ - parent->dragEvent(dragInfo); -} -void guiWindow::windowMoved(int x,int y){ +void outputWindow::windowMoved(int x,int y){ //printf("window moved!\n"); } - +void outputWindow::keyPressed(int key, ofxFenster* win){ + printf("output key %d\n",key); + parent->keyPressed(key); +} //-------------------------------------------------------------- -void testApp::setup(){ +void ofApp::setup(){ int midiPort=0; midiChannel=0; @@ -208,7 +213,7 @@ void testApp::setup(){ //preview window stuff prevWin=new previewWindow(); //win=ofxFensterManager::get()->createFenster(0, 0, 600, 800, OF_WINDOW); - ofxFensterManager::get()->setupWindow(&prevWin); + ofxFensterManager::get()->setupWindow(prevWin); //ofAddListener(win->events.mouseDragged, this, &testApp::mousePressedEvent); //ofAddListener(win->events.mousePressed, this, &testApp::mousePressedEvent); @@ -221,15 +226,18 @@ void testApp::setup(){ fullscreenoutput=false; - guiWin=new guiWindow(); - gui.setup("","panel.xml",0,0); - gui.add(reverse.setup("reverse", false)); - gui.add(reversemain.setup("reverse main", false)); - gui.add(controlColours.setup("control colours", false)); - gui.add(noteRandomiseColours.setup("randomise note colours", false)); - gui.add(transparentBlack.setup("transparent black", false)); - gui.add(resetDrawscale.setup("reset draw scale")); - gui.add(resetFBscale.setup("reset FB scale")); + gui.setup(""); + gui.add(reverse.set("reverse", false)); + gui.add(reversemain.set("reverse main", false)); + gui.add(controlColours.set("control colours", false)); + gui.add(noteRandomiseColours.set("randomise note colours", false)); + gui.add(transparentBlack.set("transparent black", false)); + + /* + gui.add(resetDrawscale.set("reset draw scale")); + gui.add(resetFBscale.set("reset FB scale")); + + fadeScale=128; gui.add(fS.setup("decay draw",fadeScale,0,255,255)); decayTime=1.0f; @@ -244,19 +252,21 @@ void testApp::setup(){ scaleFrequency=1.0f; gui.add(sF.setup("fade freq",scaleFrequency,0,5.0,255)); - resetDrawscale.addListener(this,&testApp::resetDrawscalePressed); - resetFBscale.addListener(this,&testApp::resetFBscalePressed); + resetDrawscale.addListener(this,&ofApp::resetDrawscalePressed); + resetFBscale.addListener(this,&ofApp::resetFBscalePressed); + */ //gui window stuff //ofxFenster* win2=ofxFensterManager::get()->createFenster(0, 0, 200, 400, OF_WINDOW); - ofxFensterManager::get()->setupWindow(&guiWin); + outWin=new outputWindow(); + ofxFensterManager::get()->setupWindow(outWin); //ofAddListener(win2->events.windowResized, this, &testApp::windowEvent); //win2->setWindowTitle("config"); //win2->addListener(guiWin); //guiWin->setup(); - guiWin->setParent(this); + outWin->setParent(this); //debug=true; @@ -282,26 +292,16 @@ void ofApp::update(){ //-------------------------------------------------------------- void ofApp::draw(){ + ofBackground(0,0,0); - - - float lambda=max(0.0f,1.0f-((ofGetElapsedTimef()-lastnoteTime)/decayTime)); - - int ft=255-(fadetime*((float)fadeScale)*0.1f); - //if(ofGetFrameNum()%25==0) printf("fadeScale %i\n",(int)fadeScale); - ofSetColor(ft,ft,ft); //for feedback - - float os=oscScale?(sin((breakOsc?ofGetElapsedTimef()-(randomOsc?randOffs:lastnoteTime):ofGetElapsedTimef()))*scaleFrequency)*scaleAmplitude:0.0f; - //vp1.draw(lambda,controllers,xshift,yshift,list,transparentBlack,note,mode,controller_colours,controlColours,scale,fscale,noteRandomiseColours?colShift:0.0f); - //vp2.draw(lambda,controllers,reversemain?-xshift:xshift,yshift,list,transparentBlack,note,mode,controller_colours,controlColours,reversemain?1.0f/scale:scale,reversemain?1.0f/fscale:fscale,noteRandomiseColours?colShift:0.0f); - for (int i=0;i<viewports.size();i++) { - bool even=!(i%2); - bool do_reverse=reverse?!(even&&reversemain):even&&reversemain; - viewports[i]->draw(lambda,controllers,do_reverse?-xshift:xshift,yshift,list,transparentBlack,note,mode,controller_colours,controlColours,do_reverse?1.0f/(scale+os):scale+os,do_reverse?1.0f/fscale:fscale,noteRandomiseColours?colShift:0.0f,fadeBackground); + gui.draw(); + if (list.lock()) { //if loaded + if (!list.thumbnailed) list.makeThumbnail(); + if (list.thumbnailed) list.thumbnail.draw(20,ofGetHeight()-150); + list.unlock(); } + ofDrawBitmapString(list.name,20,ofGetHeight()-10); - ofSetColor(255,255,255); - if (showFPS) ofDrawBitmapString(ofToString(ofGetFrameRate(), 2),20,20); } @@ -432,14 +432,14 @@ void ofApp::mousePressedEvent(ofMouseEventArgs &args) { //0-2 switch (args.button) { case 0: - xshift=args.x-(win->getWidth()/2); - yshift=args.y-(win->getHeight()/2); + xshift=args.x-(prevWin->getWidth()/2); + yshift=args.y-(prevWin->getHeight()/2); break; case 1: - scale=pow(pow(args.x-(win->getWidth()/2),2)+pow(args.y-(win->getHeight()/2),2),0.5)/(win->getWidth()*.1); + scale=pow(pow(args.x-(prevWin->getWidth()/2),2)+pow(args.y-(prevWin->getHeight()/2),2),0.5)/(prevWin->getWidth()*.1); break; case 2: - fscale=(pow(pow(args.x-(win->getWidth()/2),2)+pow(args.y-(win->getHeight()/2),2),0.5)/(win->getWidth()))+0.5; + fscale=(pow(pow(args.x-(prevWin->getWidth()/2),2)+pow(args.y-(prevWin->getHeight()/2),2),0.5)/(prevWin->getWidth()))+0.5; break; } } diff --git a/le_new/src/ofApp.h b/le_new/src/ofApp.h index fc07f9b..99cfbdf 100644 --- a/le_new/src/ofApp.h +++ b/le_new/src/ofApp.h @@ -14,9 +14,9 @@ // class previewWindow; -class guiWindow; +class outputWindow; -class ofApp : public ofxMidiListener{ +class ofApp : public ofBaseApp, public ofxMidiListener{ public: @@ -73,8 +73,8 @@ class ofApp : public ofxMidiListener{ viewport vp1,vp2; vector<viewport*> viewports; + outputWindow *outWin; previewWindow *prevWin; - guiWindow *guiWin; int midiChannel; @@ -86,26 +86,27 @@ class ofApp : public ofxMidiListener{ ofxPanel gui; - ofxToggle reverse; - ofxToggle reversemain; - ofxToggle controlColours; - ofxToggle noteRandomiseColours; - ofxToggle transparentBlack; + ofParameter<bool> reverse; + //ofxToggle reverse; + ofParameter<bool> reversemain; + ofParameter<bool> controlColours; + ofParameter<bool> noteRandomiseColours; + ofParameter<bool> transparentBlack; ofxButton resetDrawscale; ofxButton resetFBscale; ofxIntSlider fS; - ofxParameter<int> fadeScale; + ofParameter<int> fadeScale; ofxIntSlider fB; - ofxParameter<int> fadeBackground; + ofParameter<int> fadeBackground; ofxFloatSlider dT; - ofxParameter<float> decayTime; + ofParameter<float> decayTime; ofxToggle oscScale; ofxToggle breakOsc; ofxToggle randomOsc; ofxFloatSlider sA; - ofxParameter<float> scaleAmplitude; + ofParameter<float> scaleAmplitude; ofxFloatSlider sF; - ofxParameter<float> scaleFrequency; + ofParameter<float> scaleFrequency; float randOffs; @@ -125,18 +126,17 @@ public: void setup(); void setBuffer(ofFbo *buffer); void draw(); - void keyPressed(int key, ofxFenster* win); }; -class guiWindow: public ofxFenster{ +class outputWindow: public ofxFenster{ public: - ~guiWindow(); + ~outputWindow(); ofApp *parent; void setup(); void setParent(ofApp *p); void draw(); - void dragEvent(ofDragInfo dragInfo,ofxFenster* win); void windowMoved(int x, int y); + void keyPressed(int key, ofxFenster* win); }; /* |
