==============================================================================
| 59 | |
| 60 | //============================================================================== |
| 61 | ScriptingEditor::ScriptingEditor (ProcessorEditor *p) |
| 62 | : ProcessorEditorBody(p), |
| 63 | ScriptEditHandler(), |
| 64 | doc (new CodeDocument()), |
| 65 | tokenizer(new JavascriptTokeniser()) |
| 66 | { |
| 67 | JavascriptProcessor *sp = dynamic_cast<JavascriptProcessor*>(getProcessor()); |
| 68 | |
| 69 | if (auto jsp = dynamic_cast<JavascriptMidiProcessor*>(sp)) |
| 70 | { |
| 71 | isFront = jsp->isFront(); |
| 72 | } |
| 73 | |
| 74 | if (isFront) |
| 75 | return; |
| 76 | |
| 77 | addAndMakeVisible(contentButton = new TextButton("new button")); |
| 78 | contentButton->setButtonText(TRANS("Interface")); |
| 79 | contentButton->setConnectedEdges(Button::ConnectedOnRight); |
| 80 | contentButton->addListener(this); |
| 81 | contentButton->setClickingTogglesState(true); |
| 82 | contentButton->setColour(TextButton::buttonColourId, Colour(0x4c4b4b4b)); |
| 83 | contentButton->setColour(TextButton::buttonOnColourId, Colour(0xffb4b4b4)); |
| 84 | contentButton->setColour(TextButton::textColourOnId, Colour(0x77ffffff)); |
| 85 | contentButton->setColour(TextButton::textColourOffId, Colour(0x45ffffff)); |
| 86 | contentButton->setLookAndFeel(&alaf); |
| 87 | |
| 88 | for (int i = 0; i < sp->getNumSnippets(); i++) |
| 89 | { |
| 90 | TextButton *b = new TextButton("new button"); |
| 91 | addAndMakeVisible(b); |
| 92 | b->setButtonText(sp->getSnippet(i)->getCallbackName().toString()); |
| 93 | b->setConnectedEdges(Button::ConnectedOnLeft | Button::ConnectedOnRight); |
| 94 | b->addListener(this); |
| 95 | b->setClickingTogglesState(true); |
| 96 | b->setColour(TextButton::buttonColourId, Colour(0x4c4b4b4b)); |
| 97 | b->setColour(TextButton::buttonOnColourId, Colour(0xff680000)); |
| 98 | b->setColour(TextButton::textColourOnId, Colour(0x77ffffff)); |
| 99 | b->setColour(TextButton::textColourOffId, Colour(0x45ffffff)); |
| 100 | b->setLookAndFeel(&alaf); |
| 101 | callbackButtons.add(b); |
| 102 | } |
| 103 | |
| 104 | callbackButtons.getLast()->setConnectedEdges(TextButton::ConnectedEdgeFlags::ConnectedOnLeft); |
| 105 | |
| 106 | addAndMakeVisible(scriptContent = new ScriptContentComponent(dynamic_cast<ProcessorWithScriptingContent*>(getProcessor()))); |
| 107 | |
| 108 | scriptContent->addMouseListenersForComponentWrappers(); |
| 109 | useComponentSelectMode = false; |
| 110 | |
| 111 | if (dynamic_cast<JavascriptMidiProcessor*>(getProcessor())) |
| 112 | { |
| 113 | lastPositions.add(0); |
| 114 | lastPositions.add(23); |
| 115 | lastPositions.add(24); |
| 116 | lastPositions.add(27); |
| 117 | lastPositions.add(22); |
| 118 | lastPositions.add(37); |
nothing calls this directly
no test coverage detected