//-------------------------------------------------------------- void Gui::keyPressed(int key) { if(!pages.size()) return; if(doDefaultKeys) { if(key == ' ') { toggleDraw(); } else if(key>='1' && key<='9') { setPage((int)(key - '1')+1); setDraw(true); } else if(doDraw) { switch(key) { case '[': prevPage(); break; case ']': nextPage(); break; } } } if(!doDraw) return; ofKeyEventArgs e; e.key = key; if(!getActiveControls().empty()) { getActiveControls()[0]->_keyPressed(e); } else { getCurrentPage().keyPressed(key); Container::keyPressed(key); } }
void ofxSimpleGuiToo::keyPressed(ofKeyEventArgs &e) { //ofLog(OF_LOG_VERBOSE, ofToString(e.key)); if(doDefaultKeys && keyboardShortcutsEnabled) { if(e.key == ' ') { toggleDraw(); /* disabled for keyboard editing } else if(e.key>='0' && e.key<='9') { setPage((int)(e.key - '0')); setDraw(true); */ } else if(doDraw) { switch(e.key) { case '[': prevPage(); break; case ']': nextPage(); break; //case 'p': focusPrev(); break; //case 'l': focusNext(); break; case 'g': setPage(1); setDraw(true); break; case 'G': gui.setAlignRight(!gui.getAlignRight()); break; case OF_KEY_UP: gui.currentPage().onKeyUp(); break; case OF_KEY_DOWN: //focusNext(); gui.currentPage().onKeyDown(); break; case OF_KEY_LEFT: gui.currentPage().onKeyLeft(); break; case OF_KEY_RIGHT: gui.currentPage().onKeyRight(); break; case OF_KEY_RETURN: gui.currentPage().onKeyEnter(); break; } } } // check and trigger keyboard shortcuts if(keyboardShortcutsEnabled){ map<int,ofxSimpleGuiEventTrigger*>::iterator it = keyboardShortcuts.find(e.key); if(it != keyboardShortcuts.end()){ //< if already exists it->second->trigger(); } } if(doDraw) { headerPage->keyPressed(e); pages[currentPageIndex]->keyPressed(e); } }
void ofxSimpleGuiToo::keyPressed(ofKeyEventArgs &e) { if(doDefaultKeys) { if(e.key == ' ') { toggleDraw(); } else if(e.key>='0' && e.key<='9') { setPage((int)(e.key - '0')); setDraw(true); } else if(doDraw) { switch(e.key) { case '[': prevPage(); break; case ']': nextPage(); break; } } } if(doDraw) { headerPage->keyPressed(e); pages[currentPageIndex]->keyPressed(e); } }