#include "ofMain.h" #include "ofApp.h" //#define PREVIEW_WINDOW //======================================================================== int main(int argc, char *argv[]){ /* ofSetupOpenGL(1600,200,OF_WINDOW); // <-------- setup the GL context // this kicks off the running of my app // can be OF_WINDOW or OF_FULLSCREEN // pass in width and height too: ofApp *app = new ofApp(); ofRunApp(app); // start the app */ //app->arguments = vector(argv, argv + argc); ofGLFWWindowSettings settings; #ifdef GPU_ALGORITHM settings.setGLVersion(3,2); //doesn't support gluLookat #else settings.setGLVersion(2,1); #endif //GPU_ALGORITHM settings.width = 1920; settings.height = 1080; settings.setPosition(ofVec2f(1700,0)); settings.resizable = true; //settings.decorated = false; //doesn't suppress FS title bar shared_ptr mainWindow = ofCreateWindow(settings); mainWindow->setVerticalSync(false); // share OpenGL resources with other windows settings.shareContextWith = mainWindow; settings.decorated = true; #ifdef PREVIEW_WINDOW settings.width = 800; settings.height = 450; settings.setPosition(ofVec2f(1400,0)); settings.resizable = true; shared_ptr previewWindow = ofCreateWindow(settings); previewWindow->setVerticalSync(false); #endif settings.width = 2400; settings.height = 400; settings.setPosition(ofVec2f(0,700)); settings.resizable = true; shared_ptr guiWindow = ofCreateWindow(settings); guiWindow->setVerticalSync(false); shared_ptr mainApp(new ofApp); mainApp->arguments = vector(argv, argv + argc); //mainApp->setupGui(); ofAddListener(guiWindow->events().update,mainApp.get(),&ofApp::updateGui); ofAddListener(guiWindow->events().draw,mainApp.get(),&ofApp::drawGui); //ofAddListener(mainWindow->events().windowResized,mainApp.get(),&ofApp::windowResized); ofAddListener(guiWindow->events().fileDragEvent,mainApp.get(),&ofApp::guiDragEvent); ofAddListener(guiWindow->events().keyPressed,mainApp.get(),&ofApp::guiKeyPressed); #ifdef PREVIEW_WINDOW ofAddListener(previewWindow->events().draw,mainApp.get(),&ofApp::draw); #endif ofAddListener(guiWindow->events().mousePressed,mainApp.get(),&ofApp::guiMousePressed); ofAddListener(guiWindow->events().mouseDragged,mainApp.get(),&ofApp::guiMouseDragged); ofAddListener(guiWindow->events().mouseReleased,mainApp.get(),&ofApp::guiMouseReleased); ofRunApp(mainWindow, mainApp); ofRunMainLoop(); }