Exemplo n.º 1
0
void ofxUIWidgetWithLabel::toggleColors()
{
    ofxUIColor fill = getColorFill();
    float af = fill.a;
    ofxUIColor back = getColorBack();
    float ab = back.a;
    
    setColorFill(ofxUIColor(back, af));
    setColorBack(ofxUIColor(fill, ab));
}
Exemplo n.º 2
0
void testApp::populateSynthCanvas(ofPtr<triggerZone> zn){
    
    if(synthCanvas != NULL)delete synthCanvas;
    
    synthCanvas = new ofxUIScrollableCanvas(ofGetWidth()/2 - tabBarWidth * 0.9 , 0, tabBarWidth * 1.8, 200);
    synthCanvas->setColorFill(ofxUIColor(200));
    synthCanvas->setColorFillHighlight(ofxUIColor(255));
    synthCanvas->setColorBack(ofxUIColor(20, 20, 20, 150));
    
    synthCanvas->setVisible(false);
    synthCanvas->setSnapping(false);
    
    vector<synthParam> sp =  synthDictionary::getSynthParams(zn->getSynthType());
    
    mapTypeLabels.clear();
    
    for(int i = 0; i < sp.size(); i ++){
        
        synthCanvas->addLabel(sp[i].name, OFX_UI_FONT_MEDIUM);
        
        synthParam c_sp = zn->getSynthParam(i);
        
        ofxUISlider * absl = new ofxUISlider("abs_val" , sp[i].sl_min, sp[i].sl_max, c_sp.abs_val , 100,20);
        synthCanvas->addWidgetDown(absl);
        absl->setID(i);
        ofxUISlider * mvsl = new ofxUISlider("min_val" , sp[i].sl_min, sp[i].sl_max, c_sp.min_val , 100,20);
        synthCanvas->addWidgetRight(mvsl);
        mvsl->setID(i);
        ofxUISlider * mxsl = new ofxUISlider("max_val" , sp[i].sl_min, sp[i].sl_max, c_sp.max_val , 100,20);
        synthCanvas->addWidgetRight(mxsl);
        mxsl->setID(i);
        
        ofxUITextArea * l = new ofxUITextArea("MAP_TYPE", "MAP_TYPE: " + synthDictionary::getMapString(c_sp.map), 180,20,0,0, OFX_UI_FONT_SMALL);
        synthCanvas->addWidgetRight(l);
        l->setID(i);
        mapTypeLabels.push_back(l);
        
        
        ofxUILabelButton * zb = (ofxUILabelButton *)synthCanvas->addWidgetRight(new ofxUILabelButton("MINUS", true, 25));
        ofxUILabelButton * zc = (ofxUILabelButton *)synthCanvas->addWidgetRight(new ofxUILabelButton( "PLUS", true ,25));
        
        zb->setLabelText("-");
        zc->setLabelText("+");
        
        zb->setID(i);
        zc->setID(i);
        
        synthCanvas->addWidgetDown(new ofxUILabel("", OFX_UI_FONT_SMALL));
        synthCanvas->addSpacer();
        
    }
    
    ofAddListener(synthCanvas->newGUIEvent,this,&testApp::synthEvents);
}
Exemplo n.º 3
0
void ofxUIImageSampler::loadState(ofxXmlSettings *XML)
{
    setValue(ofxUIVec2f(XML->getValue("XValue", getValue().x, 0), XML->getValue("YValue", getValue().y, 0)));
    setColor(ofxUIColor(XML->getValue("RColor", getColor().r, 0),
                        XML->getValue("GColor", getColor().g, 0),
                        XML->getValue("BColor", getColor().b, 0),
                        XML->getValue("AColor", getColor().a, 0)));
}
Exemplo n.º 4
0
void testApp::createNodeInput(float _x, float _y){
    
    textInput *node = new textInput("", "", 150, 20, _x, _y);
    vector<string> nodes;
    ofxUIDropDownList *dlist = new ofxUIDropDownList("", nodes, 150, _x, _y);
    
    gui->addWidget(dlist);
    gui->addWidget(node);
    
    //dlist->setColorBack(ofxUIColor (200,200,200,20));
    node->setColorBack(ofxUIColor (80,80,80,100));
    node->setColorOutlineHighlight(ofxUIColor(150,150,250));
    node->setDropdownList(dlist);
    
    ofAddListener( node->createNode , this, &testApp::createNode);
    
    newNodeInput = node;
}
//--------------------------------------------------------------
void kUsersApp::setup() {
    
    ofSetLogLevel( OF_LOG_ERROR );

    openNIDevice.setup();
    openNIDevice.addImageGenerator();
    openNIDevice.addDepthGenerator();
    openNIDevice.setRegister(true);
    openNIDevice.setMirror(true);
    openNIDevice.addUserGenerator();
    openNIDevice.setMaxNumUsers( 10 );
    openNIDevice.start();
    
//    openNIDevice.setUseMaskPixelsAllUsers(true); // if you just want pixels, use this set to true
//    openNIDevice.setUseMaskTextureAllUsers(true); // this turns on mask pixels internally AND creates mask textures efficiently
    openNIDevice.setUsePointCloudsAllUsers(true);
    openNIDevice.setPointCloudDrawSizeAllUsers( 4 ); // size of each 'point' in the point cloud
    openNIDevice.setPointCloudResolutionAllUsers( 4 ); // resolution of the mesh created for the point cloud eg., this will use every second depth pixel
    
    userSeen = 0;
    status = 0;
    
    rep.pos.y = 1000;
    rep.pos.z = 2200;
    rep.radius = 250;
    
    loadSettings();
    
    senders = new ofxOscSender[ settings.osc_conf.size() ];
    for ( int i = 0; i < settings.osc_conf.size(); i++ ) {
        KUsersOscConfig * oc = settings.osc_conf[ i ];
        senders[ i ].setup( oc->ip, oc->port );
        cout << oc->ip << ":" << oc->port << endl;
    }
    
    sendMessage( "info", "HELLO" );
    
    gui = new ofxUICanvas();
    gui->addLabel( "REPERE", OFX_UI_FONT_SMALL );
    gui->addSlider( "x pos", -2000, 2000, &rep.pos.x, 300, 10 );
    gui->addSlider( "y pos", -2000, 2000, &rep.pos.y, 300, 10 );
    gui->addSlider( "z pos", 0, 4000, &rep.pos.z, 300, 10 );
    gui->addSlider( "radius", 0, 1000, &rep.radius, 300, 10 );
    gui->addLabel( "ACTIONS", OFX_UI_FONT_SMALL );
    gui->addSlider( "calibration (millis)", 0, 60000, &settings.calibration_time, 300, 10 );
    for ( int i = 0; i < settings.actions.size(); i++ ) {
        KUsersAction * ac = settings.actions[ i ];
        gui->addRangeSlider( ac->name, 0.0, 2.0, &ac->min, &ac->max, 300, 10 );
    }
    gui->setColorBack( ofxUIColor( 255,255,255,90 ) );
    ofAddListener( gui->newGUIEvent, this, &kUsersApp::guiEvent );
    
}
Exemplo n.º 6
0
//--------------------------------------------------------------
void testApp::setupUI()
{
		
    int columnWidth = 75;
	
	float dim = 24;
	float xInit = OFX_UI_GLOBAL_WIDGET_SPACING;
    float length = 320-xInit;
    
    ofxUICanvas* guiMain = new ofxUICanvas(columnWidth, 0, length+xInit, columnWidth);
	guiMain->setName("Main");
	guiMain->setPosition(10, 50);
	guiMain->setColorFill(ofxUIColor(200));
	guiMain->setColorFillHighlight(ofxUIColor(255));
	guiMain->setColorBack(ofxUIColor(20, 20, 20, 150));
    
    guiMain->addWidgetDown(new ofxUILabel("SETUP", OFX_UI_FONT_LARGE));
 
    guiMain->addWidgetDown( new ofxUIBaseDraws(320, 240, &audioLevelsPreview, "AUDIO LEVELS", true) );
    guiMain->addSlider("SPREAD", 1, 5, &spread );
    //guiMain->addSpacer(length-xInit, 1);
    
    //guiMain->addWidgetDown(new ofxUILabel("EFFECTS", OFX_UI_FONT_LARGE));
    //guiMain->addSpacer(length-xInit, 1);

//    guiMain->addSlider("REVERB", 1, 100, &_reverb );
//    guiMain->addSlider("DISTORTION", 1, 100, &_distortion );
//    guiMain->addSlider("COMPRESSION", 1, 100, &_compression );
//    guiMain->addSlider("DELAY", 1, 100, &_delay );
//    guiMain->addSlider("LOWPASS", 10, 6900, &_lowpass );
//    guiMain->addSlider("VARISPEED", -2, 2, &_varispeed );
    
    guiMain->autoSizeToFitWidgets();
    ofAddListener( guiMain->newGUIEvent,this, &testApp::guiEvent );
    
    guis.push_back(guiMain);
}
Exemplo n.º 7
0
void testApp::setupDisplaySettings(){
    
    //--------------------------------------DISPLAY SETTINGS----------------------------------------------------------//
    
    displayTabBar = new ofxUITabBar();
    displayTabBar->setPosition(ofGetWidth() - 100, ofGetHeight() - tabBarHeight);
    displayTabBar->setColorFill(ofxUIColor(200));
    displayTabBar->setColorFillHighlight(ofxUIColor(255));
    displayTabBar->setColorBack(ofxUIColor(255, 20, 20, 150));
    ofAddListener(displayTabBar->newGUIEvent,this,&testApp::dispEvents);
    
    for(int i = 0; i < 2; i ++){
        
        displayCanvases[i] = new ofxUICanvas(ofGetWidth() - tabBarWidth, 0, tabBarWidth, 300);
        displayCanvases[i]->setColorFill(ofxUIColor(200));
        displayCanvases[i]->setColorFillHighlight(ofxUIColor(255));
        displayCanvases[i]->setColorBack(ofxUIColor(20, 20, 20, 150));
        
    }
    
    displayCanvases[0]->setName("2D");
    displayCanvases[0]->setVisible(false);
    
    ofAddListener(displayCanvases[0]->newGUIEvent,this,&testApp::dispEvents);
    displayTabBar->addCanvas(displayCanvases[0]);
    
    displayCanvases[1]->setName("3D");
    
    mouseTog = displayCanvases[1]->addToggle("MOUSE_INPUT", isCamMouse);
    
    displayCanvases[1]->addSpacer();
    
    displayCanvases[1]->addLabel("Z/X = ZOOM IN/OUT");
    displayCanvases[1]->addLabel("A/S = TRUCK LEFT/RIGHT");
    
    displayCanvases[1]->addButton("RESET_CAM", false);
    displayCanvases[1]->addButton("OVERHEAD", false);
    displayCanvases[1]->addButton("FROM_LEFT", false);
    displayCanvases[1]->addButton("FROM_RIGHT", false);
    
    displayCanvases[1]->addToggle("VIEW_USER", isViewSegPoints);
    displayCanvases[1]->addToggle("VIEW_COM", isViewCom);
    displayCanvases[1]->addToggle("VIEW_SCENE", isViewCScene);
    
    
    displayCanvases[1]->autoSizeToFitWidgets();
    ofAddListener(displayCanvases[1]->newGUIEvent,this,&testApp::dispEvents);
    displayTabBar->addCanvas(displayCanvases[1]);
    
    
}
Exemplo n.º 8
0
void testApp::setupGui(){
    
    tabBarWidth = 320;
    tabBarHeight = 120;
    
    isSettingsGui = true;
    isDisplayGui = true;
    
    setupGeneralSettings();
    setupZonePanels();
    setupDisplaySettings();
    
    dialog = new ofxUICanvas(0, 150, tabBarWidth, 100);
    dialog->setColorFill(ofxUIColor(200));
    dialog->setColorFillHighlight(ofxUIColor(255));
    dialog->setColorBack(ofxUIColor(20, 20, 20, 150));
    confLab = dialog->addLabel("CONFIRM");
    dialog->addLabelButton("OK", true);
    dialog->addLabelButton("CANCEL", true);
    dialog->setVisible(false);
    
    ofAddListener(dialog->newGUIEvent, this, &testApp::s0Events);
    
    fakeCanvas = new ofxUICanvas(ofGetWidth() - tabBarWidth, 450, tabBarWidth, 125);
    fakeCanvas->setColorFill(ofxUIColor(200));
    fakeCanvas->setColorFillHighlight(ofxUIColor(255));
    fakeCanvas->setColorBack(ofxUIColor(20, 20, 20, 150));
    
    fakeCanvas->addSlider("F_POS_X", -5, 5, m_kinectManager.getFakePos().x);
    fakeCanvas->addSlider("F_POS_Y", -2, 2, m_kinectManager.getFakePos().y);
    fakeCanvas->addSlider("F_POS_Z", 0, 10, m_kinectManager.getFakePos().z);
    
    ofAddListener(fakeCanvas->newGUIEvent,this,&testApp::fEvents);
    fakeCanvas->setVisible(false);
    
    
    synthCanvas = NULL;
    
    
}
Exemplo n.º 9
0
//-------------------------------------------------------------- SETING
void testApp::setup(){
    ofEnableAlphaBlending();
    ofEnableSmoothing();
    ofSetVerticalSync(false);
    
    open_flyout = false;
    
    //*** TRACKPAD SETUP ***//
    
    pad = ofxMultiTouchPad();
    
    
    //*** CAMERA SETUP ***//
    
    cam.setDistance(600);
    cam.disableMouseInput();
    cam.enableOrtho();
    cam.setVFlip(true);
    scale = 1.f;
    
    
    //*** TOP MENU ***//
    
    menu = new ofxUISuperCanvas("menu", 0, MENU_TOP_PADDING, ofGetWidth(), MENU_HEIGHT);
    menu->getCanvasTitle()->ofxUIWidget::setVisible(false);
    menu->setColorBack(ofxUIColor(140, 140, 140,255));
    ofxUISpacer* spacer;
    
    new menuItem(menu, "MultiImageButton", "New Patcher", "assets/new_file.png", false, 35, 20);
    new menuItem(menu, "MultiImageButton", "Open Patcher", "assets/open_file.png", false, 65, 20);
    new menuItem(menu, "MultiImageButton", "Save Patcher", "assets/save_file.png", false, 95, 20);
    spacer = new ofxUISpacer(130, 20, 1,25);
    menu->addWidget(spacer);
    spacer->setColorFill(ofxUIColor(120, 120, 120, 200));
    new menuItem(menu, "MultiImageButton", "Create Node", "assets/node.png", false, 140, 20);
    spacer = new ofxUISpacer(175, 20, 1,25);
    menu->addWidget(spacer);
    spacer->setColorFill(ofxUIColor(120, 120, 120, 200));
    new menuItem(menu, "MultiImageButton", "Save Snippet", "assets/save_snippet.png", false, 185, 20);
    new menuItem(menu, "MultiImageButton", "Open Snippet", "assets/open_snippet.png", false, 215, 20);
    spacer = new ofxUISpacer(250, 20, 1,25);
    menu->addWidget(spacer);
    spacer->setColorFill(ofxUIColor(120, 120, 120, 200));
    new menuItem(menu, "MultiImageToggle", "Straight Links", "assets/line.png", false, 260, 20);
    new menuItem(menu, "MultiImageToggle", "Curved Links", "assets/curve_line.png", false, 290, 20);
    new menuItem(menu, "MultiImageToggle", "Segmented Links", "assets/path_line.png", true, 320, 20);
    spacer = new ofxUISpacer(355, 20, 1,25);
    menu->addWidget(spacer);
    spacer->setColorFill(ofxUIColor(120, 120, 120, 200));
    new menuItem(menu, "MultiImageToggle", "Edit Mode on/off", "assets/edit_mode.png", false, 365, 20);
    ofAddListener(menu->newGUIEvent,this,&testApp::menuEvent);
    
    
    //*** RIGHT MENU ***//
    
    right_menu = new ofxUISuperCanvas("menu", 0, MENU_HEIGHT + MENU_TOP_PADDING, RIGHT_MENU_WIDTH, ofGetHeight() - (MENU_HEIGHT + MENU_TOP_PADDING));
    right_menu->getCanvasTitle()->ofxUIWidget::setVisible(false);
    right_menu->setColorBack(ofxUIColor(140, 140, 140,255));
    
    new menuItem(right_menu, "MultiImageButton", "Zoom In", "assets/zoom_in.png", false, 5, right_menu->getRect()->getHeight()-30);
    new menuItem(right_menu, "MultiImageButton", "Zoom Out", "assets/zoom_out.png", false, 5, right_menu->getRect()->getHeight()-60);
    new menuItem(right_menu, "MultiImageToggle", "Inspect", "assets/open_flyout.png", false, 5, right_menu->getRect()->getHeight()-100);
    
    ofAddListener(right_menu->newGUIEvent,this,&testApp::menuEvent);
    
    
    //*** MAIN CANVAS ***//
    
    gui = new ofxUISuperCanvas("", RIGHT_MENU_WIDTH, MENU_HEIGHT + MENU_TOP_PADDING, ofGetWidth() - RIGHT_MENU_WIDTH, ofGetHeight() - (MENU_HEIGHT +MENU_TOP_PADDING));
    gui->setColorBack(ofxUIColor(255,255,255,0));
    gui->setDraggable(false);
    gui->setOtherSelected(false);
    
    
    //*** COMPOSER AND PATCHES SETUP ***//
    
    composer = new ofxComposer();
    composer->setMainCanvas(gui);
    composer->load("config.xml");
    composer->setLinkType(PATH_LINKS);
    
    composer->setParent(cam);
    map<int,ofxPatch*> patches = composer->getPatches();
    for(map<int,ofxPatch*>::iterator it = patches.begin(); it != patches.end(); it++ ){
        it->second->setParent(cam);
    }
    
    
    //*** SCROLL BAR SETUP ***//
    
    this->scrollBars = new scrollBar(this->composer, &this->pad, SCROLL_BAR_EVENT_PRIORITY);
    scrollBars->setup();
}
Exemplo n.º 10
0
//--------------------------------------------------------------
void testApp::setup()
{
    int tabBarWidth = 80;
    
    // ---
    guiTabBar = new ofxUITabBar();
    guiTabBar->setWidth(tabBarWidth);
    guiTabBar->setColorFill(ofxUIColor(200));
    guiTabBar->setColorFillHighlight(ofxUIColor(255));
    guiTabBar->setColorBack(ofxUIColor(255, 20, 20, 150));
    
    // ---
    ofEnableTextureEdgeHack();
    middle.loadImage("slidertrack.png");
    middle.getTextureReference().setTextureWrap(GL_REPEAT, GL_REPEAT);
    middle.update();
    
	ofEnableSmoothing(); 
    ofSetCircleResolution(60);
    
    red = 100; blue = 100; green = 100;
	
	float dim = 24; 
	float xInit = OFX_UI_GLOBAL_WIDGET_SPACING; 
    float length = 320-xInit; 
	
    drawPadding = false;
    
    // ---
    ofxUICanvas* guiA = new ofxUICanvas(tabBarWidth, 0, length+xInit, 100);
    guiA->setName("Main");
    guiA->setPosition(tabBarWidth, 0);
    guiA->setColorFill(ofxUIColor(200));
    guiA->setColorFillHighlight(ofxUIColor(255));
    guiA->setColorBack(ofxUIColor(20, 20, 20, 150));
    {
        guiA->addLabel("Tab Bar");
        guiA->addSpacer();
        guiA->addButton("SAVE", false);
        guiA->addButton("LOAD", false);
    }
    
    ofAddListener(guiA->newGUIEvent,this,&testApp::guiEvent);
    guiTabBar->addCanvas(guiA);
    
    // ---
    guiB = new ofxUICanvas(tabBarWidth, 0, length+xInit, ofGetHeight());
	guiB->setName("Tab 2");
    guiB->addWidgetDown(new ofxUILabel("SLIDER WIDGETS", OFX_UI_FONT_LARGE));         
    guiB->addSpacer(length-xInit, 1); 
    guiB->addFPSSlider("FPS SLIDER", length-xInit, dim*.25, 1000);
    guiB->addSpacer(length-xInit, 1); 
	guiB->addWidgetDown(new ofxUILabel("NORMAL SLIDER", OFX_UI_FONT_MEDIUM)); 	
    guiB->addSlider("RED", 0.0, 255.0, red, length-xInit,dim);
    guiB->addSpacer(length-xInit, 1); 
	guiB->addWidgetDown(new ofxUILabel("MINIMAL SLIDER", OFX_UI_FONT_MEDIUM)); 	
    guiB->addWidgetDown(new ofxUIMinimalSlider(length-xInit, 0.0, 255.0, green, "GREEN", OFX_UI_FONT_MEDIUM));
    guiB->addSpacer(length-xInit, 1); 
	guiB->addWidgetDown(new ofxUILabel("BILABEL SLIDER", OFX_UI_FONT_MEDIUM)); 	    
    guiB->addWidgetDown(new ofxUIBiLabelSlider(length-xInit, 0.0, 255.0, blue, "BLUE", "LESS BLUE", "MORE BLUE", OFX_UI_FONT_MEDIUM));
    guiB->addSpacer(length-xInit, 1); 
    guiB->addWidgetDown(new ofxUILabel("VERTICAL SLIDERS", OFX_UI_FONT_MEDIUM));     
    guiB->addSlider("1", 0.0, 255.0, 100.0, dim,80);
    guiB->setWidgetPosition(OFX_UI_WIDGET_POSITION_RIGHT);
	guiB->addSlider("2", 0.0, 255.0, 150.0, dim, 80);
	guiB->addSlider("3", 0.0, 255.0, 200.0, dim, 80);
	guiB->addSlider("4", 0.0, 255.0, 250.0, dim, 80);
	guiB->setWidgetPosition(OFX_UI_WIDGET_POSITION_DOWN);
    guiB->addSpacer(length-xInit, 1);     
    guiB->addWidgetDown(new ofxUILabel("RANGE SLIDER", OFX_UI_FONT_MEDIUM)); 
	guiB->addWidgetDown(new ofxUIRangeSlider(length-xInit,dim, 0.0, 255.0, 50.0, 100.0, "RSLIDER")); 
    guiB->addSpacer(length-xInit, 1); 
	guiB->addWidgetDown(new ofxUILabel("ROTARY SLIDER", OFX_UI_FONT_MEDIUM));
    guiB->addWidgetDown(new ofxUIRotarySlider(dim*2.0, 0.0, 100.0, 25.0, "CSLIDER 2")); 
    guiB->addSpacer(length-xInit, 1);     
	guiB->addWidgetDown(new ofxUILabel("2D PAD", OFX_UI_FONT_MEDIUM)); 
	guiB->addWidgetDown(new ofxUI2DPad(length-xInit,80, ofPoint((length-xInit)*.5,80*.5), "PAD")); 	
    guiB->addSpacer(length-xInit, 1);     
	guiB->addWidgetDown(new ofxUILabel("CIRCLE SLIDER", OFX_UI_FONT_MEDIUM)); 
	guiB->addWidgetDown(new ofxUICircleSlider(dim*2, 0.0, 255.0, green, "GREEN", OFX_UI_FONT_MEDIUM));
    guiB->addSpacer(length-xInit, 1);     
	guiB->addWidgetDown(new ofxUILabel("IMAGE SLIDER", OFX_UI_FONT_MEDIUM)); 
    guiB->addWidgetDown(new ofxUIImageSlider(length-xInit, 42, 0.0, 255.0, red, "slider.png", "IMAGE SLIDER"));
    guiB->setColorBack(ofColor(255,100));
    
    ofAddListener(guiB->newGUIEvent,this,&testApp::guiEvent);
    guiTabBar->addCanvas(guiB);
    
	ofBackground(red, green, blue);
    
    guiTabBar->loadSettings("settings/", "ui-");
}
Exemplo n.º 11
0
//--------------------------------------------------------------
void blobApp::setup(){
    mSaveFrame = false;
    ofBackground(255,255,255);
	ofSetFrameRate(60);
    ofEnableSmoothing();
    ofSetCircleResolution(60);
    
    // 2D Setup
#ifdef _MSC_VER 
	float pi = 3.14159;
#endif
    vector<ofVec3f> bverts;
    float ang = 0;
    float r = 200;
    float sweep = pi*1.35;
    float segs = 7.0;
    for (int i=0; i<=segs; i++) {
        bverts.push_back(ofVec3f(cos(ang)*r,sin(ang)*r,0));
        ang += sweep/segs;
    }
    mMasterCurve = new edgeCurve(bverts);
    mSlaveCurve = mMasterCurve->getSlave();
    
    mFlatOs = ofVec2f(ofGetHeight()*0.5, ofGetHeight()*0.5);
    
    // 3D Setup
    mForm = new form(mMasterCurve,mSlaveCurve);
    
    // FBOs Setup
    m2DFbo.allocate(ofGetHeight(), ofGetHeight(),GL_RGB);
    m2DFbo.begin();
    ofClear(255,255,255);
    m2DFbo.end();
    
    
    float stdsz = 20;
    // GUI Setup
    ofxUIColor pink = ofxUIColor(255,0,128);
    ofxUIColor pinktrans = ofxUIColor(255,0,128,150);
    ofxUIColor trans = ofxUIColor(255,255,255,0);
    ofxUIColor grey = ofxUIColor(90,90,90);
    
    mResolutionGUI = new ofxUICanvas();
    mResolutionGUI->setFont("GUI/Gotham-Bold.ttf");
    mResolutionGUI->setUIColors(grey, trans, trans, pinktrans, pink, pink, pink);
    mResolutionGUI->setDrawBack(false);
    mResSlider = new ofxUIIntSlider("resolution", 2, 11, 7, 200, stdsz/4.0, stdsz,ofGetHeight()-stdsz*2);
    mResolutionGUI->addWidget(mResSlider);
    mShowZipperToggle = new ofxUIToggle("show cut edge",false, stdsz,stdsz,stdsz,ofGetHeight()-stdsz*3.5);
    mResolutionGUI->addWidget(mShowZipperToggle);
    mExportCutFileButton = new ofxUIButton("export cut file",false,stdsz,stdsz,stdsz,ofGetHeight()-stdsz*5);
    mResolutionGUI->addWidget(mExportCutFileButton);
    mResolutionGUI->autoSizeToFitWidgets();
    ofAddListener(mResolutionGUI->newGUIEvent, this, &blobApp::guiEvent);
    
    float hx = ofGetHeight()-stdsz*2;
    float at = ofGetHeight()-stdsz*11;
    mHoleGUI = new ofxUICanvas();
    mHoleGUI->setFont("GUI/Gotham-Bold.ttf");
    mHoleGUI->setUIColors(grey, trans, trans, pinktrans, pink, pink, pink);
    mHoleGUI->setDrawBack(false);
    mHoleToggle = new ofxUIToggle("add holes", false, stdsz,stdsz,hx,at);
    mHoleGUI->addWidget(mHoleToggle);
    at += stdsz*1.5;
    mMirrorHolesToggle = new ofxUIToggle("mirror hole", true, stdsz,stdsz,hx,at);
    mHoleGUI->addWidget(mMirrorHolesToggle);
    at += stdsz*1.5;
    mFreeHolesToggle =new ofxUIToggle("free hole(s)",false, stdsz,stdsz,hx,at);
    mHoleGUI->addWidget(mFreeHolesToggle);
    at += stdsz*2;
    mHolePosSlider = new ofxUISlider("hole position", 0.001, 0.999, 0.501,200,stdsz/4.0,hx-200+stdsz,at);
    mHoleGUI->addWidget(mHolePosSlider);
    at += stdsz*2;
    mHoleSizeSlider = new ofxUISlider("hole size", 5, 100, 45, 200,stdsz/4.0,hx-200+stdsz,at);
    mHoleGUI->addWidget(mHoleSizeSlider);
    at += stdsz*2;
    mHoleOSSlider = new ofxUISlider("hole offset", 5, 100, 10,200,stdsz/4.0,hx-200+stdsz,at);
    mHoleGUI->addWidget(mHoleOSSlider);
    
    mHoleGUI->autoSizeToFitWidgets();
    ofAddListener(mHoleGUI->newGUIEvent, this, &blobApp::guiEvent);
    
    hx = ofGetWidth()*0.5+stdsz*2;
    at = ofGetHeight()-stdsz*6.5;
    m3DGUI = new ofxUICanvas();
    m3DGUI->setFont("GUI/Gotham-Bold.ttf");
    m3DGUI->setUIColors(grey, trans, trans, pinktrans, pink, pink, pink);
    m3DGUI->setDrawBack(false);
    mUpdateButton = new ofxUIButton("update", false, stdsz,stdsz,hx,at);
    m3DGUI->addWidget(mUpdateButton);
    at += stdsz*2;
    mSimulateToggle = new ofxUIToggle("simulate", false, stdsz,stdsz,hx,at);
    m3DGUI->addWidget(mSimulateToggle);
    at += stdsz*2;
    mExportSTLButton = new ofxUIButton("export stl", false, stdsz,stdsz,hx,at);
    m3DGUI->addWidget(mExportSTLButton);
    
    m3DGUI->autoSizeToFitWidgets();
    ofAddListener(m3DGUI->newGUIEvent, this, &blobApp::guiEvent);
    
    
    
}
Exemplo n.º 12
0
void textInput::setDropdownList(ofxUIDropDownList* dl) {
    
    dl->open();
    dl->setVisible(false);
    dl->setAutoClose(false);
    
    dl->addToggles(nodes);
    dl->setToggleVisibility(false);
    
    for(auto n : dl->getToggles()) {
        
        if (n->getName() == "INPUTS" || n->getName() == "LAYERS" || n->getName() == "MIXERS" || n->getName() == "OUTPUTS") {
            n->setColorBack(ofxUIColor (50,50,50,250));
            n->setColorOutline(ofxUIColor (30,30,30,250));
            n->setColorOutlineHighlight(ofxUIColor (30,30,30,250));
            n->setColorFill(ofxUIColor (50,50,50,250));
            n->setColorFillHighlight(ofxUIColor (50,50,50,250));
            ((ofxUIWidgetWithLabel*)n->getLabelWidget())->setColorFill(ofxUIColor (200,200,200,250));
            ((ofxUIWidgetWithLabel*)n->getLabelWidget())->setColorFillHighlight(ofxUIColor (200,200,200,250));
        }
        else {
            n->setColorBack(ofxUIColor (70,70,70,250));
            n->setColorOutline(ofxUIColor (50,50,50,250));
            n->setColorOutlineHighlight(ofxUIColor (120,120,120,250));
            n->setColorFill(ofxUIColor (85,85,85,250));
            n->setColorFillHighlight(ofxUIColor (30,30,30,250));
            n->setDrawOutline(true);
        }
        n->setLabelAlignment(OFX_UI_TEXT_ALIGN_LEFT);
    }


    this->addEmbeddedWidget(dl);
    this->dropdownList = dl;

    ofAddListener(((ofxUISuperCanvas*) dl->getCanvasParent())->newGUIEvent,this,&textInput::guiEvent);
    
    
}
Exemplo n.º 13
0
//------------------------------------------------------------------
void textInput::guiEvent(ofxUIEventArgs &event_){
    
    if(event_.widget == this->dropdownList && this->dropdownList->getSelected().size()) {
        
        string selectedName = this->dropdownList->getSelected()[0]->getName();
        
        if (selectedName == "INPUTS" || selectedName == "LAYERS" || selectedName == "MIXERS" || selectedName == "OUTPUTS"){
            return;
        }
        
        this->dropdownList->setVisible(false);
        this->setTextString(selectedName);
        
        textInputEvent e;
        e.point.set(this->getRect()->getX(), this->getRect()->getY());
        e.widget = this;
        e.type = this->dropdownList->getSelected()[0]->getName();
        
        ofFileDialogResult openFileResult;
        
        if (e.type == "midi device") {
            
            vector<string>& midiPortList = midiIn->getPortList();
            if (midiPortList.size() == 0) {
                midiPortList.push_back("No devices available");
            }
            
            if(midiList == NULL) {
                midiList = new ofxUIDropDownList("", midiPortList, 250, this->getRect()->x, this->getRect()->y);
                this->getCanvasParent()->addWidget(midiList);
                midiList->open();
                midiList->setAutoClose(true);
                this->addEmbeddedWidget(midiList);
                
                ofAddListener(((ofxUISuperCanvas*) midiList->getCanvasParent())->newGUIEvent,this,&textInput::guiMidiEvent);
            }
            else {
                midiList->clearToggles();
                midiList->addToggles(midiPortList);
            }
            midiList->setVisible(true);
            for(auto n : midiList->getToggles()) {
                n->setColorBack(ofxUIColor (70,70,70,250));
                n->setColorOutline(ofxUIColor (50,50,50,250));
                n->setColorFillHighlight(ofxUIColor (30,30,30,250));
                n->setDrawOutline(true);
            }
            
        }
        else if ((e.type == "image or video")){

            openFileResult = ofSystemLoadDialog("Select an image (.jpg, .jpeg, .png, .bmp or .gif) or video (.mov, .mpg, .mp4 or .m4v)");

            if (openFileResult.bSuccess){

                ofFile file (openFileResult.getPath());

                if (file.exists()){

                    string fileExtension = ofToUpper(file.getExtension());

                    //We only want images
                    if (fileExtension == "JPG"  ||
                        fileExtension == "PNG"  ||
                        fileExtension == "JPEG" ||
                        fileExtension == "GIF"  ||
                        fileExtension == "BMP"  ||
                        fileExtension == "MOV"  ||
                        fileExtension == "MPG"  ||
                        fileExtension == "MP4"  ||
                        fileExtension == "M4V" ) {
                        e.path = openFileResult.getPath();
                        e.name = file.getFileName();
                    }
                    else {
                        ConsoleLog::getInstance()->pushError("Select a valid image or video file (.jpg, .jpeg, .gif, .bmp, .mov, .mpg, .mp4 or .m4v)");
                        return;
                    }
                }
                file.close();
                ofNotifyEvent(createNode, e , this);
            }
            else {
                dropdownList->clearSelected();
                return;
            }
        }
        else if(e.type == "shader"){
            openFileResult = ofSystemLoadDialog("Select a shader (.fs)");
            
            if (openFileResult.bSuccess){
                
                ofFile file (openFileResult.getPath());
                
                if (file.exists()){
                    
                    string fileExtension = ofToUpper(file.getExtension());
                    
                    //We only want shaders
                    if (fileExtension == "fs" || fileExtension == "FS") {
                        e.path = openFileResult.getPath();
                        e.name = file.getFileName();
                    }
                    else {
                        ConsoleLog::getInstance()->pushError("Select a valid shader file (.fs)");
                        return;
                    }
                }
                file.close();
                ofNotifyEvent(createNode, e , this);
            }
            else {
                dropdownList->clearSelected();
                return;
            }
        }
        else {
            ofNotifyEvent(createNode, e , this);
        }
    }
}
Exemplo n.º 14
0
//--------------------------------------------------------------
void ofApp::setGUI() {
	
	vector<string> emptyList;
	
	// setup widget
	gui = new ofxUICanvas(0, 0, 200, 600);
    
    // default
    isShowGrid = true;
    isShowWireframe = true;
	isWindowOnTop = true;
	isFlipH = false;
#ifdef TARGET_OSX
	isFlipV = false;
#elif defined TARGET_WIN32
	isFlipV = true;
#endif
	
	//gui->setPadding(3);
	gui->setColorBack(ofxUIColor(80, 80, 80, 200));
	gui->setColorFillHighlight(ofxUIColor(5, 140, 190, 255));
	gui->setFont(FONT_NAME);
	
	gui->addLabel("Screen");
	lblScreenName = gui->addLabel("file:", OFX_UI_FONT_SMALL);
	gui->addLabelButton("3D LOAD", false)->setLabelText("select 3d file..");
	gui->addSpacer();

#ifdef TARGET_OSX
	gui->addLabel("Source");
	ddlInput = gui->addDropDownList("INPUT LIST", emptyList);
	ddlInput->setAllowMultiple(false);
	ddlInput->setAutoClose(true);
	ddlInput->setShowCurrentSelected(true);
	ddlInput->setLabelText("");
	gui->addSpacer();
#endif
	
	gui->addLabel("Display");
    gui->addToggle("show wireframe", &isShowWireframe);
    gui->addToggle("show gird", &isShowGrid);
#ifdef TARGET_OSX
	gui->addToggle("make window on top",&isWindowOnTop);
#endif
	gui->addWidgetDown(new ofxUIToggle("flip H", &isFlipH, 18, 18));
	gui->addWidgetRight(new ofxUIToggle("flip V", &isFlipV, 18, 18));
	gui->addSpacer();

	
	gui->addLabel("Camera");
	
	//gui->setWidgetFontSize(OFX_UI_FONT_SMALL);
	gui->addWidgetDown(new ofxUILabelButton("add cam", false));
	gui->addWidgetRight((new ofxUILabelButton("remove cam", false)));
	
	ndCamX = gui->addNumberDialer("x", -10000.0f, 10000.0f, 0.0f, 2);
	ndCamX->setName("CAMERA X");
	ndCamY = gui->addNumberDialer("y", -10000.0f, 10000.0f, 0.0f, 2);
	ndCamY->setName("CAMERA Y");
	ndCamZ = gui->addNumberDialer("z", -10000.0f, 10000.0f, 0.0f, 2);
	ndCamZ->setName("CAMERA Z");
	
	msCamH = gui->addMinimalSlider("h", -180.0f, 180.0f, 0.0f);
	msCamH->setName("CAMERA H");
	msCamP = gui->addMinimalSlider("p", -180.0f, 180.0f, 0.0f);
	msCamP->setName("CAMERA P");
	msCamB = gui->addMinimalSlider("b", -180.0f, 180.0f, 0.0f);
	msCamB->setName("CAMERA B");
	
	msCamFov = gui->addMinimalSlider("fov", 10.0f, 170.0f, 45.0f);
	msCamFov->setName("CAMERA FOV");
	
	gui->autoSizeToFitWidgets();
	gui->loadSettings("gui.xml");
	
	// set cam values
	camPos = grabCam.getPosition();
	ndCamX->setValue(camPos.x);
	ndCamY->setValue(camPos.y);
	ndCamZ->setValue(camPos.z);
	
	camEuler = grabCam.getOrientationEuler();
	msCamH->setValue(camEuler.x);
	msCamP->setValue(camEuler.y);
	msCamB->setValue(camEuler.z);
	
	ofAddListener(gui->newGUIEvent, this, &ofApp::guiEvent);
}
Exemplo n.º 15
0
/**
   @author jtnimoy
   @author colin roache
   for implementations sitting on just OpenGL
*/

#include "ofxUIGLWrapper.h"



ofxUIColor NN::color = ofxUIColor(255,255);
bool NN::bFill = true;
unsigned int NN::rectMode = OFX_UI_RECTMODE_CORNER;

ofxUIVec2f::ofxUIVec2f(){
	x=0;
	y=0;
}

ofxUIVec2f::ofxUIVec2f(float _x,float _y){
	x = _x;
	y = _y;
}

void ofxUIDrawRect(float x,float y, float w, float h){
	glRectf(x,y,x+w,y+h);
}


ofxUIColor::ofxUIColor(const ofxUIColor& that,float _a){
	this->copy(that);
Exemplo n.º 16
0
void testApp::setupZonePanels(){
    
    //----------------------ZONE CANVASES --------------//
    
    for(int i = 0; i < 4; i ++){
        
        if(i == 0)
            zoneCanvases[i] = new ofxUICanvas(ofGetWidth()/2 - 400, ofGetHeight() - 240, 600, 240);
        else
            zoneCanvases[i] = new ofxUICanvas(ofGetWidth()/2 + 210, ofGetHeight() - 240, 300, 240);
        
        zoneCanvases[i]->setColorFill(ofxUIColor(200));
        zoneCanvases[i]->setColorFillHighlight(ofxUIColor(255));
        zoneCanvases[i]->setColorBack(ofxUIColor(20, 20, 20, 150));
        
        
    }
    
    //zone c0 -------------------------------------------
    
    float slw = 200 - OFX_UI_GLOBAL_WIDGET_SPACING - 5;
    
    tPosX = new ofxUISlider("T_POS_X", -5, 5, 0.0, slw, 10);
    tPosY = new ofxUISlider("T_POS_Y", -2, 2, 0.0, slw, 10);
    tPosZ = new ofxUISlider("T_POS_Z", 0, 10, 0.0, slw, 10);
    
    zoneCanvases[0]->addWidgetDown(tPosX);
    zoneCanvases[0]->addWidgetRight(tPosY);
    zoneCanvases[0]->addWidgetRight(tPosZ);
    
    zoneCanvases[0]->addSpacer();
    
    vector<string> st; //FIX ME: should be in trigger zone
    st.push_back("sphere");
    st.push_back("box");
    st.push_back("cylinder");
    
    zoneCanvases[0]->addLabel("SHAPE TYPE:", OFX_UI_FONT_SMALL);
    shapeText = new ofxUITextArea ("SHAPE_TYPE", "sphere", 70, 20, 0,0,  OFX_UI_FONT_SMALL);
    zoneCanvases[0]->addWidgetRight(shapeText);
    
    ofxUILabelButton * sel_p = (ofxUILabelButton *)zoneCanvases[0]->addWidgetRight(new ofxUILabelButton("SHP_MINUS", true, 25));
    ofxUILabelButton * sel_m = (ofxUILabelButton *)zoneCanvases[0]->addWidgetRight(new ofxUILabelButton("SHP_PLUS", true, 25));
    
    sel_p->setLabelText("-");
    sel_m->setLabelText("+");
    
    zoneCanvases[0]->addWidgetRight(new ofxUISpacer(1,20));
    
    occInvTog = new ofxUIToggle("OCC_INVERT", false, 20,20,0,0, OFX_UI_FONT_SMALL);
    movEnaTog = new ofxUIToggle("MOV_ENABLED", false, 20,20,0,0, OFX_UI_FONT_SMALL);
    movInvTog = new ofxUIToggle("MOV_INVERT", false, 20,20,0,0, OFX_UI_FONT_SMALL);
    
    zoneCanvases[0]->addWidgetRight(occInvTog);
    zoneCanvases[0]->addWidgetRight(movEnaTog);
    zoneCanvases[0]->addWidgetRight(movInvTog);
    
    zoneCanvases[0]->addSpacer();
    
    eblTog = new ofxUIToggle("ENABLED", true, 20, 20, 0, 0, OFX_UI_FONT_SMALL);
    eblTog->setColorFill(ofxUIColor(255,0,0));
    zoneCanvases[0]->addWidgetDown(eblTog);
    
    zoneCanvases[0]->addWidgetRight(new ofxUISpacer(1,20));
    
    zoneCanvases[0]->addWidgetRight(new ofxUILabel("SOUNDFILE", OFX_UI_FONT_SMALL));
    sc2TextInput[2] = new ofxUITextInput("SOUNDFILE", "none", 200);
    zoneCanvases[0]->addWidgetRight(sc2TextInput[2]);
    

    
    loopTog = new ofxUIToggle("LOOP", true, 20,20,0,0, OFX_UI_FONT_SMALL);
    playToEndTog = new ofxUIToggle("PLAY_TO_END", false, 20,20,0,0, OFX_UI_FONT_SMALL);

    zoneCanvases[0]->addWidgetRight(loopTog);
    zoneCanvases[0]->addWidgetRight(playToEndTog);

    repSlider = new ofxUISlider("MIN_REPLAY", 0, 5.0, 0.05, slw, 10);
        
    zoneCanvases[0]->addWidgetDown(repSlider);
    
    //---------------------------------------------------------
    zoneCanvases[0]->addWidgetRight(new ofxUISpacer(1,20));
    
    selTypeDisp = new ofxUILabel(0,0,200, "SELECTOR_TYPE: ", OFX_UI_FONT_SMALL);
    zoneCanvases[0]->addWidgetRight(selTypeDisp);
    
    sel_p = (ofxUILabelButton *)zoneCanvases[0]->addWidgetRight(new ofxUILabelButton("SEL_MINUS", true, 25));
    sel_m = (ofxUILabelButton *)zoneCanvases[0]->addWidgetRight(new ofxUILabelButton("SEL_PLUS", true, 25));
    
    sel_p->setLabelText("-");
    sel_m->setLabelText("+");
    
    ofxUILabelButton * z_reset = (ofxUILabelButton *)zoneCanvases[0]->addWidgetRight(new ofxUILabelButton("ZONE_RESET", true, 100));
    z_reset->setLabelText("RESET");
    
    cbSlider = new ofxUISlider("CHANGE_BUFF", 0, 60, 1, slw, 10);
    zoneCanvases[0]->addWidgetDown(cbSlider);
    
    //-------------------------------------------------------------------
    
    zoneCanvases[0]->addSpacer();
    
    synthTypeDisp = new ofxUILabel(0,0,200, "SYNTH TYPE: ", OFX_UI_FONT_SMALL);
    zoneCanvases[0]->addWidgetDown(synthTypeDisp);
    
    ofxUILabelButton * stb = (ofxUILabelButton *)zoneCanvases[0]->addWidgetRight(new ofxUILabelButton("ST_MINUS", true, 25));
    ofxUILabelButton * stc = (ofxUILabelButton *)zoneCanvases[0]->addWidgetRight(new ofxUILabelButton("ST_PLUS", true, 25));
    
    stb->setLabelText("-");
    stc->setLabelText("+");
    
    zoneCanvases[0]->addWidgetRight(new ofxUISpacer(1,20));
    
    dispSynthTog = new ofxUIToggle("EDIT_SYNTH_PARAMS", false, 20,20,0,0, OFX_UI_FONT_SMALL);
    
    zoneCanvases[0]->addWidgetRight(dispSynthTog);
    
    

    
    ofAddListener(zoneCanvases[0]->newGUIEvent,this,&testApp::s2Events);
    
    for(int i = 0; i < 3; i++)sc2TextInput[i]->setTriggerType(OFX_UI_TEXTINPUT_ON_FOCUS);
    

    
    
    //zone c1----------------------------------------------------
    
    radSlid = zoneCanvases[1]->addSlider("RADIUS", 0.05, 3.0, 0.1);
    
    ofAddListener(zoneCanvases[1]->newGUIEvent,this,&testApp::s2Events);
    
    
    //zone c2 ----------------------------------------------------------------
    
    xDimSlid= zoneCanvases[2]->addSlider("X_DIM", 0.05,10.0,0.5);
    yDimSlid= zoneCanvases[2]->addSlider("Y_DIM", 0.05,2.0,0.5);
    zDimSlid= zoneCanvases[2]->addSlider("Z_DIM", 0.05,10.0,0.5);
    
    ofAddListener(zoneCanvases[2]->newGUIEvent,this,&testApp::s2Events);
    
    //zone c3
    radSlid = zoneCanvases[3]->addSlider("RADIUS", 0.05, 3.0, 0.1);
    yDimSlid= zoneCanvases[3]->addSlider("Y_DIM", 0.05,2.0,0.5);
    
    ofAddListener(zoneCanvases[3]->newGUIEvent,this,&testApp::s2Events);
    
}
Exemplo n.º 17
0
void ofxUISetColor(int b){
	color.copy(ofxUIColor(b,b,b,this->a));
}
Exemplo n.º 18
0
void testApp::setupGeneralSettings(){
    
    float slHeight  = 24;
    float slLength = tabBarWidth - OFX_UI_GLOBAL_WIDGET_SPACING * 2;
    
    // ---
    settingsTabBar = new ofxUITabBar();
    
    settingsTabBar->setPosition(0, ofGetHeight() - tabBarHeight);
    settingsTabBar->setColorFill(ofxUIColor(200));
    settingsTabBar->setColorFillHighlight(ofxUIColor(255));
    settingsTabBar->setColorBack(ofxUIColor(255, 20, 20, 150));
    
    ofAddListener(settingsTabBar->newGUIEvent,this,&testApp::settingsEvents);
    
    for(int i = 0; i < NUM_SETTINGS_CANVASES; i ++){
        
        settingsCanvases[i] = new ofxUICanvas(0, 0, tabBarWidth, 500);
        settingsCanvases[i]->setColorFill(ofxUIColor(200));
        settingsCanvases[i]->setColorFillHighlight(ofxUIColor(255));
        settingsCanvases[i]->setColorBack(ofxUIColor(20, 20, 20, 150));
        
    }
    
    
    //--------------------------------------------
    
    settingsCanvases[0]->setName("Save/Load");
    
    settingsCanvases[0]->addLabel("Save/Load");
    settingsCanvases[0]->addSpacer();
    
    fileNameInput = settingsCanvases[0]->addTextInput("FILENAME", "none");
    settingsCanvases[0]->addButton("SAVE", false);
    settingsCanvases[0]->addButton("LOAD", false);
    
    
    ofAddListener(settingsCanvases[0]->newGUIEvent,this,&testApp::s0Events);
    settingsTabBar->addCanvas(settingsCanvases[0]);
    settingsCanvases[0]->autoSizeToFitWidgets();
    
    
    
    //---------------------------
    
	settingsCanvases[1]->setName("Initial Setup");
    
    sc1Sliders[0] = settingsCanvases[1]->addSlider("KN_TILT", -30, 30, m_kinectManager.getKinectAngle(), slLength, slHeight);
    
    settingsCanvases[1]->addSpacer();
    
    settingsCanvases[1]->addButton("RECORD_BACKGROUND", false);
    
    settingsCanvases[1]->addSpacer();
    
    sc1Sliders[1] = settingsCanvases[1]->addSlider("NEAR_THRESH", 0, 2, m_kinectManager.getNearThresh(), slLength, slHeight);
    sc1Sliders[2] = settingsCanvases[1]->addSlider("FAR_THRESH", 5, 15, m_kinectManager.getFarThresh(), slLength, slHeight);
    sc1Sliders[3] =  settingsCanvases[1]->addSlider("SEG_THRESH", 0, 1, m_kinectManager.getSegThresh(), slLength, slHeight);
    sc1Sliders[4] = settingsCanvases[1]->addSlider("MIN_BLOB", 0.0, 0.1, m_kinectManager.getMinBlob(), slLength, slHeight);
    sc1Sliders[4]->setLabelPrecision(3);
    sc1Sliders[5] = settingsCanvases[1]->addSlider("MAX_BLOB", 0.25, 1, m_kinectManager.getMaxBlob(), slLength, slHeight);
    
    
    settingsCanvases[1]->addSpacer();
    sc1Sliders[6] = settingsCanvases[1]->addSlider("FLOOR_Y", -10, -0.5, m_kinectManager.getFloorY(), slLength, slHeight);
    sc1Sliders[7] = settingsCanvases[1]->addSlider("USER_HEIGHT", 1, 2, m_kinectManager.getDancerHeight(), slLength, slHeight);
    sc1Sliders[8] = settingsCanvases[1]->addSlider("MOV_THRESH", 0, 200, m_kinectManager.getMovThresh(), slLength, slHeight);
    sc1Sliders[9] = settingsCanvases[1]->addSlider("MOV_BUFF", 0, 60, m_kinectManager.getMovBuff(), slLength, slHeight);
    
    ofAddListener(settingsCanvases[1]->newGUIEvent,this,&testApp::s1Events);
    settingsTabBar->addCanvas(settingsCanvases[1]);
    settingsCanvases[1]->autoSizeToFitWidgets();
    
    //------------------------
    
    
	settingsCanvases[2]->setName("Scene Setup");
    
    
    settingsCanvases[2]->addLabel("SELECTED SCENE");
    sc2TextInput[0] = settingsCanvases[2]->addTextInput("S_NAME", "");
    
    
    ofxUILabelButton * sb = (ofxUILabelButton *)settingsCanvases[2]->addWidgetDown(new ofxUILabelButton("SCENE_MINUS", true, 25));
    ofxUILabelButton * sc = (ofxUILabelButton *)settingsCanvases[2]->addWidgetRight(new ofxUILabelButton("SCENE_PLUS", true, 25));
    
    sb->setLabelText("-");
    sc->setLabelText("+");
    
    
    settingsCanvases[2]->addButton("CREATE_SCENE", false);
    settingsCanvases[2]->addButton("DELETE_SCENE", false);
    settingsCanvases[2]->addButton("COPY_SCENE", false);
    
    
    fInSlid = new ofxUISlider("FADE_IN", 0.01, 1.0, 0.01, tabBarWidth, 20);
    fOutSlid = new ofxUISlider("FADE_OUT", 0.01, 10.0, 0.01, tabBarWidth, 20);
    
    settingsCanvases[2]->addWidgetDown(fInSlid);
    settingsCanvases[2]->addWidgetDown(fOutSlid);
    
    settingsCanvases[2]->addSpacer();
    
    settingsCanvases[2]->addLabel("SELECTED_ZONE");
    sc2TextInput[1] = settingsCanvases[2]->addTextInput("Z_NAME", "none");
    
    ofxUILabelButton * zb = (ofxUILabelButton *)settingsCanvases[2]->addWidgetDown(new ofxUILabelButton("ZONE_MINUS", true, 25));
    ofxUILabelButton * zc = (ofxUILabelButton *)settingsCanvases[2]->addWidgetRight(new ofxUILabelButton("ZONE_PLUS", true, 25));
    
    zb->setLabelText("-");
    zc->setLabelText("+");
    
    settingsCanvases[2]->addButton("CREATE_ZONE", false);
    settingsCanvases[2]->addButton("DELETE_ZONE", false);
    settingsCanvases[2]->addButton("COPY_ZONE", false);
    
    
    ofAddListener(settingsCanvases[2]->newGUIEvent,this,&testApp::s2Events);
    settingsTabBar->addCanvas(settingsCanvases[2]);
    settingsCanvases[2]->autoSizeToFitWidgets();
    
    //----------------------------BANKS CANVASES ----------------------//
    
    settingsCanvases[3]->setName("Setup Banks");
    
    settingsCanvases[3]->addLabel("Setup Banks");
    
    
    settingsCanvases[3]->addLabel("CURRENT BANK: ", OFX_UI_FONT_SMALL);
    sc3TextInput = new ofxUITextInput ("B_NAME", "all scenes", 200);
    
    settingsCanvases[3]->addWidgetRight(sc3TextInput);
    
    ofxUILabelButton * bb = (ofxUILabelButton *)settingsCanvases[3]->addWidgetDown(new ofxUILabelButton("BANK_MINUS", true, 25));
    ofxUILabelButton * bc = (ofxUILabelButton *)settingsCanvases[3]->addWidgetRight(new ofxUILabelButton("BANK_PLUS", true, 25));
    
    bb->setLabelText("-");
    bc->setLabelText("+");
    
    settingsCanvases[3]->addWidgetRight(new ofxUIButton("CREATE_BANK", false, 20,20));
    settingsCanvases[3]->addWidgetRight(new ofxUIButton("DELETE_BANK", false, 20,20));
    
    
    settingsCanvases[3]->addSpacer();
    
    settingsCanvases[3]->addLabel("SELECTED SCENE: ", OFX_UI_FONT_SMALL);
    
    sceneText = new ofxUITextArea("SCENE_TEXT", "none", 250, 20,0,0,OFX_UI_FONT_SMALL);
    
    sceneText->setDrawBack(true);
    
    settingsCanvases[3]->addWidgetRight(sceneText);
    
    ofxUILabelButton * sbb = (ofxUILabelButton *)settingsCanvases[3]->addWidgetDown(new ofxUILabelButton("B_SCENE_MINUS", true, 25));
    ofxUILabelButton * sbc = (ofxUILabelButton *)settingsCanvases[3]->addWidgetRight(new ofxUILabelButton("B_SCENE_PLUS", true, 25));
    
    sbb->setLabelText("-");
    sbc->setLabelText("+");
    
    settingsCanvases[3]->addWidgetRight(new ofxUIButton("ADD_SCENE_TO_BANK", false, 20,20));
    
    bankText = new ofxUITextArea("BANK_TEXT", "bank items here", tabBarWidth, 200, 0,0,  OFX_UI_FONT_SMALL);
    
    bankText->setDrawOutlineHighLight(true);
    
    settingsCanvases[3]->addWidgetDown(bankText);
    
    ofxUILabelButton * sbb2 = (ofxUILabelButton *)settingsCanvases[3]->addWidgetRight(new ofxUILabelButton("B_ITEM_MINUS", true, 25));
    ofxUILabelButton * sbc2 = (ofxUILabelButton *)settingsCanvases[3]->addWidgetSouthOf(new ofxUILabelButton("B_ITEM_PLUS", true, 25), "B_ITEM_MINUS");
    
    sbb2->setLabelText("+");
    sbc2->setLabelText("-");
    
    settingsCanvases[3]->addWidgetSouthOf(new ofxUIButton("REMOVE_ITEM", false, 20,20), "BANK_TEXT");
    
    ofAddListener(settingsCanvases[3]->newGUIEvent,this,&testApp::s3Events);
    settingsTabBar->addCanvas(settingsCanvases[3]);
    settingsCanvases[3]->autoSizeToFitWidgets();
    
    //----------------------------PERFORMANCE CANVAS ----------------------//
    
    settingsCanvases[4]->setName("Performance Mode");
    
    settingsCanvases[4]->addLabel("Performance Mode");
    
    
    settingsCanvases[4]->addLabel("CURRENT BANK: ", OFX_UI_FONT_SMALL);
    perfBankText = new ofxUITextArea ("PERF_BANK_TEXT", "none", 150, 20, 0,0,  OFX_UI_FONT_SMALL);
    perfBankText->setDrawBack(true);
    
    settingsCanvases[4]->addWidgetRight(perfBankText);
    
    ofxUILabelButton * bplus = (ofxUILabelButton *)settingsCanvases[4]->addWidgetDown(new ofxUILabelButton("BANK_MINUS", true, 25));
    ofxUILabelButton * bmin = (ofxUILabelButton *)settingsCanvases[4]->addWidgetRight(new ofxUILabelButton("BANK_PLUS", true, 25));
    
    bplus->setLabelText("-");
    bmin->setLabelText("+");
    
    
    settingsCanvases[4]->addSpacer();
    
    perfSceneText = new ofxUITextArea("BANK_TEXT", "bank items here", tabBarWidth, 200, 0,0,  OFX_UI_FONT_SMALL);
    perfSceneText->setDrawOutlineHighLight(true);
    
    settingsCanvases[4]->addWidgetDown(perfSceneText);
    
    bplus = (ofxUILabelButton *)settingsCanvases[4]->addWidgetRight(new ofxUILabelButton("B_ITEM_MINUS", true, 25));
    bmin = (ofxUILabelButton *)settingsCanvases[4]->addWidgetSouthOf(new ofxUILabelButton("B_ITEM_PLUS", true, 25), "B_ITEM_MINUS");
    
    bplus->setLabelText("+");
    bmin->setLabelText("-");
    
    
    
    ofAddListener(settingsCanvases[4]->newGUIEvent,this,&testApp::s4Events);
    settingsTabBar->addCanvas(settingsCanvases[4]);
    settingsCanvases[4]->autoSizeToFitWidgets();
    
    
    
    
}
Exemplo n.º 19
0
//--------------------------------------------------------------
ofxMtlMapping2DControls::ofxMtlMapping2DControls(int width, const string& file)
{
    // ---- Shapes list
    // set default values
    _selectedShapeId = -1;
    _selectedShapeChanged = false;
    shapeCounter = 0;
    
    _shapesListCanvas = new ofxUIScrollableCanvas(width, 0, width, 720);
    _shapesListCanvas->setScrollArea(width, 0, kControlsMappingShapesListPanelWidth, 720);
    _shapesListCanvas->setScrollableDirections(false, true);
    _shapesListCanvas->setColorBack(ofColor(0, 210, 255, 90));
    _shapesListCanvas->autoSizeToFitWidgets();
    
    ofAddListener(_shapesListCanvas->newGUIEvent, this, &ofxMtlMapping2DControls::shapesListUiEvent);
    
    
    // --- Grid settings
    int gridSettingCanvasWidth = 200.0f;
    _gridSettingsCanvas = new ofxUICanvas();
    _gridSettingsCanvas->setPosition(width, 720 - 90);
    _gridSettingsCanvas->setWidth(gridSettingCanvasWidth);
    _gridSettingsCanvas->setColorFill(ofxUIColor(200));
    _gridSettingsCanvas->setColorFillHighlight(ofxUIColor(255));
    _gridSettingsCanvas->setColorBack(ofColor(0, 210, 255, 90));
    
    ofxUISlider *nSlider;
    _gridSettingsCanvas->addLabel("GRID SETTINGS");
    nSlider = _gridSettingsCanvas->addSlider("NB COLS", 1.0, 20.0, &ofxMtlMapping2DSettings::gridDefaultNbCols);
    nSlider->setIncrement(1.0f);
    nSlider = _gridSettingsCanvas->addSlider("NB ROWS", 1.0, 20.0, &ofxMtlMapping2DSettings::gridDefaultNbRows);
    nSlider->setIncrement(1.0f);
    
    _gridSettingsCanvas->autoSizeToFitWidgets();
    ofAddListener(_gridSettingsCanvas->newGUIEvent, this, &ofxMtlMapping2DControls::gridSettingsListUiEvent);
    _gridSettingsCanvas->disable();
    
    // ---- Tool box
    shapeTypesAsString[MAPPING_2D_SHAPE_QUAD] = "quad";
    shapeTypesAsString[MAPPING_2D_SHAPE_GRID] = "grid";
    shapeTypesAsString[MAPPING_2D_SHAPE_TRIANGLE] = "triangle";
    shapeTypesAsString[MAPPING_2D_SHAPE_MASK] = "mask";
    
    // set default values
    _saveMapping = false;
    _loadMapping = false;
    _editShapes = false;
    _createNewQuad = false;
    _createNewGrid = false;
    _createNewTriangle = false;
    _createNewMask = false;
    _showShapesId = true;
    _mappingModeChanged = true; // initialized to true so that when the app launch the 'shapes' are correctly setted.
    _mappingMode = MAPPING_MODE_OUTPUT;

    
    static const int kWidgetWidth = width - 16;
    
    
    _toolsCanvas = new ofxUIScrollableCanvas(0, 0, width, 720);
    //must have modified ofxUI
    //_toolsCanvas->setStickyDistance(30.0f);
    _toolsCanvas->setScrollableDirections(false, true);
    _toolsCanvas->setColorBack(ofColor(0, 210, 255, 130));
    
    _file = file;
    
    
    // --- Fullscreen
    _fullscreenExpandIcon.loadImage("mapping/GUI/expand.png");
    _fullscreenContractIcon.loadImage("mapping/GUI/contract.png");
    
    //_toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, false, "mapping/GUI/expand.png", kSettingMappingFullscreen));
    
    // Edit
    //_toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, false, "mapping/GUI/edit.png", kSettingMappingEditShapes));
    _toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, false, "mapping/GUI/file-down.png", kSettingMappingSave));
    _toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, false, "mapping/GUI/file-up.png", kSettingMappingLoad));


    // add mapping controls Output / Input
    ofxUISpacer *spacer = new ofxUISpacer(kWidgetWidth, kSpacerHeight);
    spacer->setDrawFill(false);
    
    _toolsCanvas->addWidgetDown(spacer);
    _toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, false, "mapping/GUI/projo.png", kSettingMappingModeOutput));
    _toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, false, "mapping/GUI/texture.png", kSettingMappingModeInput));
    

    // add mapping shape controls
    if (ofxMtlMapping2DSettings::kIsManuallyCreatingShapeEnabled) {
        _toolsCanvas->addWidgetDown(spacer);        
        _toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, _createNewQuad, "mapping/GUI/quad.png", kSettingMappingCreateNewQuad));
        _toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, _createNewGrid, "mapping/GUI/grid.png", kSettingMappingCreateNewGrid));
        _toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, _createNewTriangle, "mapping/GUI/triangle.png", kSettingMappingCreateNewTriangle));
        _toolsCanvas->addWidgetDown(new ofxUIImageToggle(kToggleSize, kToggleSize, _createNewMask, "mapping/GUI/mask.png", kSettingMappingCreateNewMask));
    }
    
    // add mapping shape's details
//    _toolsCanvas->addWidgetDown(spacer);
//    _toolsCanvas->addWidgetDown(new ofxUILabel("SHAPE DATA", OFX_UI_FONT_MEDIUM));
//    _toolsCanvas->addWidgetDown(new ofxUIToggle(kToggleSize, kToggleSize, _editShapes, kSettingMappingShowShapesId));

    
    // ----
    ofAddListener(_toolsCanvas->newGUIEvent, this, &ofxMtlMapping2DControls::toolsUiEvent);
    
    load();
    
    if (getToggleValue(kSettingMappingModeOutput)) {
        _mappingMode = MAPPING_MODE_OUTPUT;
    } else if (getToggleValue(kSettingMappingModeInput)) {
        _mappingMode = MAPPING_MODE_INPUT;
    }
    
    // ---
    //((ofxUIToggle *)_toolsCanvas->getWidget(kSettingMappingEditShapes))->setValue(false);
    setUIShapeEditingState(true);
}