void CtrlrLuaMethodEditor::menuItemSelected(int menuItemID, int topLevelMenuIndex) { if (menuItemID == 1 && topLevelMenuIndex == 0) { if (isCurrentlyModal()) exitModalState(-1); owner.getWindowManager().toggle (CtrlrPanelWindowManager::LuaMethodEditor, false); } if (menuItemID == 2 && topLevelMenuIndex == 0) { if (getCurrentEditor()) { getCurrentEditor()->saveDocument(); } } else if (menuItemID == 3 && topLevelMenuIndex == 0) { if (getCurrentEditor()) { getCurrentEditor()->saveAndCompileDocument(); } } else if (menuItemID == 4 && topLevelMenuIndex == 0) { saveAndCompilAllMethods(); } else if (menuItemID == 4 && topLevelMenuIndex == 1) { methodEditArea->showFindDialog(); } else if (menuItemID == 5 && topLevelMenuIndex == 1) { methodEditArea->clearOutputText(); } else if (menuItemID == 6 && topLevelMenuIndex == 1) { CtrlrLuaMethodCodeEditorSettings s(*this); CtrlrDialogWindow::showModalDialog ("Code editor settings", &s, false, this); componentTree.setProperty (Ids::luaMethodEditorFont, owner.getOwner().getFontManager().getStringFromFont (s.getFont()), nullptr); componentTree.setProperty (Ids::luaMethodEditorBgColour, COLOUR2STR (s.getColour()), nullptr); } }
void CtrlrLuaMethodEditor::menuItemSelected(int menuItemID, int topLevelMenuIndex) { if (menuItemID == 2 && topLevelMenuIndex == 0) { if (getCurrentEditor()) { getCurrentEditor()->saveDocument(); } } else if (menuItemID == 3 && topLevelMenuIndex == 0) { if (getCurrentEditor()) { getCurrentEditor()->saveAndCompileDocument(); } } else if (menuItemID == 4 && topLevelMenuIndex == 0) { for (int i=0; i<getTabs()->getNumTabs(); i++) { CtrlrLuaMethodCodeEditor *ed = dynamic_cast<CtrlrLuaMethodCodeEditor*> (getTabs()->getTabContentComponent (i)); if (ed) { ed->saveAndCompileDocument(); } } } else if (menuItemID == 4 && topLevelMenuIndex == 1) { methodEditArea->showFindDialog(); } else if (menuItemID == 5 && topLevelMenuIndex == 1) { CtrlrLuaMethodCodeEditorSettings s(*this); CtrlrDialogWindow::showModalDialog ("Code editor settings", &s, false, this); componentTree.setProperty (Ids::luaMethodEditorFont, owner.getOwner().getFontManager().getStringFromFont (s.getFont()), nullptr); componentTree.setProperty (Ids::luaMethodEditorBgColour, COLOUR2STR (s.getColour()), nullptr); } }
bool CtrlrLuaMethodEditor::keyPressed (const KeyPress& key, Component* originatingComponent) { if (key.getModifiers().isCommandDown()) { if (key.getKeyCode() == 9) { // CTRL + TAB if (methodEditArea) { return (methodEditArea->keyPressed (key, originatingComponent)); } } if (CharacterFunctions::toUpperCase ((juce_wchar) (key.getKeyCode())) == 70) { // CTRL + F if (getCurrentEditor()) { getCurrentEditor()->getCodeComponent()->showFindPanel(false); } else { methodEditArea->showFindDialog(); } return (true); } if (CharacterFunctions::toUpperCase ((juce_wchar) (key.getKeyCode())) == 71) { // CTRL + G if (getCurrentEditor()) { getCurrentEditor()->getCodeComponent()->showGoTOPanel(); } return (true); } if (CharacterFunctions::toUpperCase ((juce_wchar) (key.getKeyCode())) == 72) { // CTRL + H if (getCurrentEditor()) { getCurrentEditor()->getCodeComponent()->showFindPanel(true); } else { methodEditArea->replaceNextMatch(); } return (true); } if (key.getKeyCode() == KeyPress::deleteKey) { // CTRL + delete methodEditArea->clearOutputText(); return (true); } } if (key.getKeyCode() == KeyPress::F3Key) // F3 { methodEditArea->findNextMatch(); return (true); } if (getCurrentEditor()) { return (getCurrentEditor()->keyPressed (key,originatingComponent)); } return false; }