void itemOpennessChanged (bool isNowOpen) { if (isNowOpen) { clearSubItems(); isDirectory = file.isDirectory(); if (isDirectory) { if (subContentsList == 0) { jassert (parentContentsList != 0); DirectoryContentsList* const l = new DirectoryContentsList (parentContentsList->getFilter(), thread); l->setDirectory (file, true, true); setSubContentsList (l); canDeleteSubContentsList = true; } changeListenerCallback (0); } } }
BEGIN_JUCE_NAMESPACE #include "juce_PluginListComponent.h" #include "juce_PluginDirectoryScanner.h" #include "../../gui/components/controls/juce_TextEditor.h" #include "../../gui/components/windows/juce_AlertWindow.h" #include "../../gui/graphics/fonts/juce_GlyphArrangement.h" #include "../../gui/components/filebrowser/juce_FileSearchPathListComponent.h" #include "../../text/juce_LocalisedStrings.h" #include "../../events/juce_MessageManager.h" //============================================================================== PluginListComponent::PluginListComponent (KnownPluginList& listToEdit, const File& deadMansPedalFile_, PropertiesFile* const propertiesToUse_) : list (listToEdit), deadMansPedalFile (deadMansPedalFile_), optionsButton ("Options..."), propertiesToUse (propertiesToUse_) { listBox.setModel (this); addAndMakeVisible (&listBox); addAndMakeVisible (&optionsButton); optionsButton.addListener (this); optionsButton.setTriggeredOnMouseDown (true); setSize (400, 600); list.addChangeListener (this); changeListenerCallback (0); }
SkinCompGUI::SkinCompGUI(SkinComp* comp,SkinGUI* skinGUI): BoundDrivenComponent(&comp->graphicArea) { this->skinGUI = skinGUI; this->comp = comp; comp->addChangeListener(this); changeListenerCallback(comp); this->setOpaque(false); }
//============================================================================== JucerDocumentEditor::JucerDocumentEditor (JucerDocument* const doc) : document (doc), tabbedComponent (TabbedButtonBar::TabsAtTop), compLayoutPanel (0), lastViewportX (0), lastViewportY (0), currentZoomLevel (1.0) { setOpaque (true); if (document != nullptr) { setSize (document->getInitialWidth(), document->getInitialHeight()); addAndMakeVisible (tabbedComponent); tabbedComponent.setOutline (0); tabbedComponent.addTab ("Class", tabColour, new ClassPropertiesPanel (*document), true); if (document->getComponentLayout() != nullptr) tabbedComponent.addTab ("Subcomponents", tabColour, compLayoutPanel = new ComponentLayoutPanel (*document, *document->getComponentLayout()), true); tabbedComponent.addTab ("Resources", tabColour, new ResourceEditorPanel (*document), true); SourceCodeEditor* codeEditor = new SourceCodeEditor (&document->getCppDocument(), new CppCodeEditorComponent (document->getCppFile(), document->getCppDocument().getCodeDocument())); tabbedComponent.addTab ("Code", tabColour, codeEditor, true); updateTabs(); tabbedComponent.setCurrentTabIndex (1); document->addChangeListener (this); resized(); refreshPropertiesPanel(); changeListenerCallback (nullptr); } }
//============================================================================== ComponentOverlayComponent::ComponentOverlayComponent (Component* const target_, ComponentLayout& layout_) : target (target_), borderThickness (4), layout (layout_), selected (false), dragging (false), originalAspectRatio (1.0) { setMinimumOnscreenAmounts (0, 0, 0, 0); setSizeLimits (borderThickness * 2 + 2, borderThickness * 2 + 2, 8192, 8192); addChildComponent (border = new ResizableBorderComponent (this, this)); border->setBorderThickness (BorderSize<int> (borderThickness)); target->addComponentListener (this); changeListenerCallback (nullptr); layout.getSelectedSet().addChangeListener (this); setRepaintsOnMouseActivity (true); border->setRepaintsOnMouseActivity (true); }