diff options
| author | Comment <tim@gray.(none)> | 2013-05-28 01:36:25 +0100 |
|---|---|---|
| committer | Comment <tim@gray.(none)> | 2013-05-28 01:36:25 +0100 |
| commit | 040eaa3babb648bea889f8c152b522a86e8c39d5 (patch) | |
| tree | de9209f404b899828b3dda819152e307f3d09907 /src/testApp.cpp | |
initial commit
Diffstat (limited to 'src/testApp.cpp')
| -rwxr-xr-x | src/testApp.cpp | 250 |
1 files changed, 250 insertions, 0 deletions
diff --git a/src/testApp.cpp b/src/testApp.cpp new file mode 100755 index 0000000..bc2fe0e --- /dev/null +++ b/src/testApp.cpp @@ -0,0 +1,250 @@ +#include "testApp.h" +previewWindow::~previewWindow(){ + cout << "preview window destroyed" << endl; +} +void previewWindow::setup(){} +void previewWindow::setParent(testApp *p){ + parent=p; +} +void previewWindow::draw(){ + + for (auto i:parent->viewports) i.draw(parent->brightSlider); + +} +//-------------------------------------------------------------- +guiWindow::~guiWindow(){ + cout << "gui window destroyed" << endl; +} +void guiWindow::setup(){} +void guiWindow::setParent(testApp *p){ + parent=p; +} +void guiWindow::draw(){ + + parent->gui.draw(); + +} +//-------------------------------------------------------------- +void testApp::create1port(bool & pressed){ + if (!pressed) return; + viewports.clear(); + viewports.push_back(viewport(4*windowsize,2*windowsize,0,0)); + createports(1); +} +void testApp::create2port(bool & pressed){ + if (!pressed) return; + viewports.clear(); + viewports.push_back(viewport(2*windowsize,2*windowsize,0,0)); + viewports.push_back(viewport(2*windowsize,2*windowsize,2*windowsize,0)); + createports(2); +} +void testApp::create4port(bool & pressed){ + if (!pressed) return; + viewports.clear(); + viewports.push_back(viewport(windowsize,2*windowsize,0,0)); + viewports.push_back(viewport(windowsize,2*windowsize,windowsize,0)); + viewports.push_back(viewport(windowsize,2*windowsize,2*windowsize,0)); + viewports.push_back(viewport(windowsize,2*windowsize,3*windowsize,0)); + + createports(4); +} +void testApp::create8port(bool & pressed){ + if (!pressed) return; + viewports.clear(); + viewports.push_back(viewport(windowsize,windowsize,0,0)); + viewports.push_back(viewport(windowsize,windowsize,(1*windowsize),0)); + viewports.push_back(viewport(windowsize,windowsize,(2*windowsize),0)); + viewports.push_back(viewport(windowsize,windowsize,(3*windowsize),0)); + viewports.push_back(viewport(windowsize,windowsize,0,windowsize)); + viewports.push_back(viewport(windowsize,windowsize,(1*windowsize),windowsize)); + viewports.push_back(viewport(windowsize,windowsize,(2*windowsize),windowsize)); + viewports.push_back(viewport(windowsize,windowsize,(3*windowsize),windowsize)); + createports(8); +} +void testApp::createports(int num){ + cerr<<"created "<<num<<" ports"<<endl; +} +//-------------------------------------------------------------- +void testApp::setup(){ + + windowsize=100; + + + showFPS=false; + ofBackground(0,0,0); + ofSetBackgroundAuto(true); + ofSetFrameRate(60); + + //preview window stuff + prevWin=new previewWindow(); + win=ofxFensterManager::get()->createFenster(0, 0, windowsize*4, windowsize*2, OF_WINDOW); + ofAddListener(win->events.keyPressed, this, &testApp::keyPressedEvent); + win->setWindowTitle("preview"); + win->addListener(prevWin); + prevWin->setup(); + prevWin->setParent(this); + + fullscreenoutput=false; + + guiWin=new guiWindow(); + gui.setup("","panel.xml",0,0); + + brightSlider=0; + gui.add(bS.setup("brightness",brightSlider,0,255,255)); + + gui.add(create_1.setup("1")); + create_1.addListener(this,&testApp::create1port); + gui.add(create_2.setup("2")); + create_2.addListener(this,&testApp::create2port); + gui.add(create_4.setup("4")); + create_4.addListener(this,&testApp::create4port); + gui.add(create_8.setup("8")); + create_8.addListener(this,&testApp::create8port); + + gui.add(fillgrey.setup("fill grey", false)); + greyFreq=1.0f; + gui.add(gF.setup("grey freq",greyFreq,0,2.0,255)); + + +/* + gui.setup("","panel.xml",0,0); + 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")); + fadeScale=128; + gui.add(fS.setup("fade scale",fadeScale,0,255,255)); + decayTime=1.0f; + gui.add(dT.setup("decay time",decayTime,0,10.0,255)); + + gui.add(oscScale.setup("scale size LFO", false)); + gui.add(breakOsc.setup("break oscillators", false)); + gui.add(randomOsc.setup("randomise oscillators", false)); + scaleAmplitude=0.5f; + gui.add(sA.setup("fade scale",scaleAmplitude,0,2.0,255)); + scaleFrequency=1.0f; + gui.add(sF.setup("fade freq",scaleFrequency,0,5.0,255)); + + resetDrawscale.addListener(this,&testApp::resetDrawscalePressed); + resetFBscale.addListener(this,&testApp::resetFBscalePressed); + */ + + //gui window stuff + ofxFenster* win2=ofxFensterManager::get()->createFenster(0, 0, 200, 400, OF_WINDOW); + + win2->setWindowTitle("config"); + win2->addListener(guiWin); + guiWin->setup(); + guiWin->setParent(this); + + +} + + + + + +//-------------------------------------------------------------- +void testApp::update(){ + //for (int i=0;i<numLayers;i++) layers[i]->update(); +} + +//-------------------------------------------------------------- +void testApp::draw(){ + + control.fillgrey=fillgrey; + control.fillgreyfreq=greyFreq; + + for (auto i:viewports) i.drawport(control); + + ofPushMatrix(); + ofTranslate((ofGetWidth()/2)-(2*windowsize),(ofGetHeight()/2)-windowsize); + for (auto i:viewports) i.draw((uint8_t)brightSlider); + ofPopMatrix(); + + ofSetColor(255,255,255); + if (showFPS) ofDrawBitmapString(ofToString(ofGetFrameRate(), 2),20,20); + +} + +//-------------------------------------------------------------- +void testApp::keyPressed(int key, ofxFenster* win){ + if(key == ' '){ + fullscreenoutput=!fullscreenoutput; + win->setFullscreen(fullscreenoutput); + printf("resolution: %ix%i %s\n",win->getWidth(),win->getHeight(),fullscreenoutput?"fullscreen":"windowed"); + } + else keyPressed(key); +} +void testApp::keyPressed(int key){ + + if(key == 'f'){ + toggleFPS(); + } + +} + +//-------------------------------------------------------------- +void testApp::keyReleased(int key){ + +} + +//-------------------------------------------------------------- +void testApp::mouseMoved(int x, int y ){ + +} + +//-------------------------------------------------------------- +void testApp::mouseDragged(int x, int y, int button){ + +} + +//-------------------------------------------------------------- +void testApp::mouseReleased(int x, int y, int button){ + + +} +void testApp::mousePressed(int x, int y, int button) { +} + +//-------------------------------------------------------------- +void testApp::windowResized(int w, int h){ + +} + +//-------------------------------------------------------------- +void testApp::gotMessage(ofMessage msg){ + +} + +//-------------------------------------------------------------- + + +void testApp::mousePressedEvent(ofMouseEventArgs &args) { + //printf("mouse: %i,%i %i of %ix%i\n",args.x,args.y,args.button,win->getWidth(),win->getHeight()); + //0-2 + switch (args.button) { + case 0: + control.xshift=args.x-(win->getWidth()/2); + control.yshift=args.y-(win->getHeight()/2); + break; + case 1: + control.scale=pow(pow(args.x-(win->getWidth()/2),2)+pow(args.y-(win->getHeight()/2),2),0.5)/(win->getWidth()*.1); + break; + case 2: + control.fscale=(pow(pow(args.x-(win->getWidth()/2),2)+pow(args.y-(win->getHeight()/2),2),0.5)/(win->getWidth()))+0.5; + break; + } +} + +void testApp::keyPressedEvent(ofKeyEventArgs &args) { + //printf("window key pressed: %i (%c)\n",args.key,args.key); + keyPressed(args.key); +} + +void testApp::toggleFPS(){ + showFPS=!showFPS; +} + |
