Пример #1
0
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);
	}
}
Пример #2
0
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);
	}
}
Пример #3
0
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;
}