diff --git a/extras/Jucer (experimental)/Source/model/Component/Types/jucer_ComboBox.h b/extras/Jucer (experimental)/Source/model/Component/Types/jucer_ComboBox.h index 8aa6feada7..6f0d228597 100644 --- a/extras/Jucer (experimental)/Source/model/Component/Types/jucer_ComboBox.h +++ b/extras/Jucer (experimental)/Source/model/Component/Types/jucer_ComboBox.h @@ -48,18 +48,57 @@ public: Component* createComponent() { return new ComboBox (String::empty); } const Rectangle getDefaultSize() { return Rectangle (0, 0, 180, 24); } - void update (ComponentDocument& document, ComboBox* comp, const ValueTree& state) + void initialiseNew (ComponentDocument& document, ValueTree& state) { + state.setProperty ("items", "Item 1\nItem 2", 0); + state.setProperty ("editable", false, 0); + state.setProperty ("textJustification", (int) Justification::centredLeft, 0); + state.setProperty ("unselectedText", "", 0); + state.setProperty ("noItemsText", "(No Choices)", 0); } - void initialiseNew (ComponentDocument& document, ValueTree& state) + void updateItems (ComboBox* comp, const String& itemString) + { + StringArray items; + items.addLines (itemString); + items.removeEmptyStrings (true); + + StringArray existingItems; + + for (int i = 0; i < comp->getNumItems(); ++i) + existingItems.add (comp->getItemText (i)); + + if (existingItems != items) + { + comp->clear(); + + for (int i = 0; i < items.size(); ++i) + comp->addItem (items[i], i + 1); + } + } + + void update (ComponentDocument& document, ComboBox* comp, const ValueTree& state) { + updateItems (comp, state ["items"]); + comp->setEditableText (state ["editable"]); + comp->setJustificationType ((int) state ["textJustification"]); + comp->setTextWhenNothingSelected (state ["unselectedText"].toString()); + comp->setTextWhenNoChoicesAvailable (state ["noItemsText"].toString()); } void createProperties (ComponentDocument& document, ValueTree& state, Array & props) { addTooltipProperty (document, state, props); addFocusOrderProperty (document, state, props); + + props.add (new TextPropertyComponent (getValue ("items", state, document), "Items", 16384, true)); + props.getLast()->setTooltip ("A list of items to use to initialise the ComboBox"); + + props.add (new BooleanPropertyComponent (getValue ("editable", state, document), "Editable", "Text is editable")); + props.add (createJustificationProperty ("Text Position", getValue ("textJustification", state, document), false)); + props.add (new TextPropertyComponent (getValue ("unselectedText", state, document), "Text when none selected", 512, false)); + props.add (new TextPropertyComponent (getValue ("noItemsText", state, document), "Text when no items", 512, false)); + addEditableColourProperties (document, state, props); } }; diff --git a/extras/Jucer (experimental)/Source/model/Component/Types/jucer_ComponentTypeManager.h b/extras/Jucer (experimental)/Source/model/Component/Types/jucer_ComponentTypeManager.h index 074ad62f58..bfc59c634e 100644 --- a/extras/Jucer (experimental)/Source/model/Component/Types/jucer_ComponentTypeManager.h +++ b/extras/Jucer (experimental)/Source/model/Component/Types/jucer_ComponentTypeManager.h @@ -136,8 +136,8 @@ protected: void addFocusOrderProperty (ComponentDocument& document, ValueTree& state, Array & props) { - props.add (new TextPropertyComponent (Value (new IntegerValueSource (getValue (ComponentDocument::compFocusOrderProperty, - state, document))), + props.add (new TextPropertyComponent (Value (new NumericValueSource (getValue (ComponentDocument::compFocusOrderProperty, + state, document))), "Focus Order", 10, false)); } diff --git a/extras/Jucer (experimental)/Source/model/Component/Types/jucer_GenericComponent.h b/extras/Jucer (experimental)/Source/model/Component/Types/jucer_GenericComponent.h index 6c1b86cae9..cdcb05e942 100644 --- a/extras/Jucer (experimental)/Source/model/Component/Types/jucer_GenericComponent.h +++ b/extras/Jucer (experimental)/Source/model/Component/Types/jucer_GenericComponent.h @@ -58,16 +58,7 @@ public: void paint (Graphics& g) { - g.fillAll (Colours::white.withAlpha (0.2f)); - g.setColour (Colours::grey); - g.drawRect (getLocalBounds()); - - g.drawLine (0.5f, 0.5f, getWidth() - 0.5f, getHeight() - 0.5f); - g.drawLine (0.5f, getHeight() - 0.5f, getWidth() - 0.5f, 0.5f); - - g.setColour (Colours::black); - g.setFont (11.0f); - g.drawFittedText (getName(), 2, 2, getWidth() - 4, getHeight() - 4, Justification::centredTop, 2); + drawComponentPlaceholder (g, getWidth(), getHeight(), getName()); } }; diff --git a/extras/Jucer (experimental)/Source/model/Component/Types/jucer_GroupComponent.h b/extras/Jucer (experimental)/Source/model/Component/Types/jucer_GroupComponent.h index 3e74adc2c3..f55a14a641 100644 --- a/extras/Jucer (experimental)/Source/model/Component/Types/jucer_GroupComponent.h +++ b/extras/Jucer (experimental)/Source/model/Component/Types/jucer_GroupComponent.h @@ -48,11 +48,13 @@ public: void update (ComponentDocument& document, GroupComponent* comp, const ValueTree& state) { comp->setText (state ["text"].toString()); + comp->setTextLabelPosition ((int) state ["justification"]); } void initialiseNew (ComponentDocument& document, ValueTree& state) { state.setProperty ("text", "Group", 0); + state.setProperty ("justification", (int) Justification::left, 0); } void createProperties (ComponentDocument& document, ValueTree& state, Array & props) @@ -63,6 +65,7 @@ public: props.add (new TextPropertyComponent (getValue ("text", state, document), "Label", 512, false)); props.getLast()->setTooltip ("The group's display name."); + props.add (createJustificationProperty ("Text Position", state.getPropertyAsValue ("justification", document.getUndoManager()), true)); addEditableColourProperties (document, state, props); } }; diff --git a/extras/Jucer (experimental)/Source/model/Component/jucer_ComponentDocument.cpp b/extras/Jucer (experimental)/Source/model/Component/jucer_ComponentDocument.cpp index 73142210d7..07a5c77a82 100644 --- a/extras/Jucer (experimental)/Source/model/Component/jucer_ComponentDocument.cpp +++ b/extras/Jucer (experimental)/Source/model/Component/jucer_ComponentDocument.cpp @@ -50,9 +50,9 @@ ComponentDocument::ComponentDocument (Project* project_, const File& cppFile_) : project (project_), cppFile (cppFile_), root (componentDocumentTag), - changedSinceSaved (false) + changedSinceSaved (false), + usingTemporaryCanvasSize (false) { - reload(); checkRootObject(); root.addListener (this); @@ -61,7 +61,7 @@ ComponentDocument::ComponentDocument (Project* project_, const File& cppFile_) ComponentDocument::ComponentDocument (const ComponentDocument& other) : project (other.project), cppFile (other.cppFile), - root (other.root.createCopy()), + root (other.root), changedSinceSaved (false) { checkRootObject(); @@ -248,10 +248,13 @@ bool ComponentDocument::reload() markersX = 0; markersY = 0; checkRootObject(); + customCode.reloadFrom (cppFile.loadFileAsString()); + + root.addChild (ValueTree ("dummy"), 0, 0); + root.removeChild (root.getChildWithName("dummy"), 0); + undoManager.clearUndoHistory(); changedSinceSaved = false; - - customCode.reloadFrom (cppFile.loadFileAsString()); return true; } } @@ -297,6 +300,23 @@ void ComponentDocument::checkRootObject() getCanvasHeight() = 480; } +void ComponentDocument::setUsingTemporaryCanvasSize (bool b) +{ + tempCanvasWidth = root.getProperty ("width"); + tempCanvasHeight = root.getProperty ("height"); + usingTemporaryCanvasSize = b; +} + +Value ComponentDocument::getCanvasWidth() const +{ + return usingTemporaryCanvasSize ? tempCanvasWidth : getRootValueNonUndoable ("width"); +} + +Value ComponentDocument::getCanvasHeight() const +{ + return usingTemporaryCanvasSize ? tempCanvasHeight : getRootValueNonUndoable ("height"); +} + //============================================================================== const int menuItemOffset = 0x63451fa4; @@ -332,6 +352,102 @@ const ValueTree ComponentDocument::performNewComponentMenuItem (int menuResultCo return ValueTree::invalid; } +Component* ComponentDocument::findComponentForState (Component* compHolder, const ValueTree& state) +{ + for (int i = compHolder->getNumChildComponents(); --i >= 0;) + { + Component* const c = compHolder->getChildComponent (i); + if (isStateForComponent (state, c)) + return c; + } + + return 0; +} + +void ComponentDocument::updateComponentsIn (Component* compHolder) +{ + int i; + for (i = compHolder->getNumChildComponents(); --i >= 0;) + { + Component* c = compHolder->getChildComponent (i); + + if (! containsComponent (c)) + delete c; + } + + Array componentsInOrder; + + const int num = getNumComponents(); + for (i = 0; i < num; ++i) + { + const ValueTree v (getComponent (i)); + Component* c = findComponentForState (compHolder, v); + + if (c == 0) + { + c = createComponent (i); + compHolder->addAndMakeVisible (c); + } + + updateComponent (c); + componentsInOrder.add (c); + } + + // Make sure the z-order is correct.. + if (num > 0) + { + componentsInOrder.getLast()->toFront (false); + + for (i = num - 1; --i >= 0;) + componentsInOrder.getUnchecked(i)->toBehind (componentsInOrder.getUnchecked (i + 1)); + } +} + +//============================================================================== +ComponentDocument::TestComponent::TestComponent (ComponentDocument& document_) + : document (new ComponentDocument (document_)) +{ + setupDocument(); +} + +ComponentDocument::TestComponent::TestComponent (Project* project, const File& cppFile) + : document (new ComponentDocument (project, cppFile)) +{ + if (document->reload()) + setupDocument(); + else + document = 0; +} + +ComponentDocument::TestComponent::~TestComponent() +{ + deleteAllChildren(); +} + +void ComponentDocument::TestComponent::setupDocument() +{ + document->setUsingTemporaryCanvasSize (true); + + setSize (document->getCanvasWidth().getValue(), + document->getCanvasHeight().getValue()); +} + +void ComponentDocument::TestComponent::resized() +{ + if (document != 0) + { + document->getCanvasWidth() = getWidth(); + document->getCanvasHeight() = getHeight(); + document->updateComponentsIn (this); + } +} + +void ComponentDocument::TestComponent::paint (Graphics& g) +{ + if (document == 0) + drawComponentPlaceholder (g, getWidth(), getHeight(), "(Not a valid Jucer component)"); +} + //============================================================================== ValueTree ComponentDocument::getComponentGroup() const { diff --git a/extras/Jucer (experimental)/Source/model/Component/jucer_ComponentDocument.h b/extras/Jucer (experimental)/Source/model/Component/jucer_ComponentDocument.h index 794db851e8..3e2649ae11 100644 --- a/extras/Jucer (experimental)/Source/model/Component/jucer_ComponentDocument.h +++ b/extras/Jucer (experimental)/Source/model/Component/jucer_ComponentDocument.h @@ -50,6 +50,7 @@ public: bool hasChangedSinceLastSave(); void changed(); + Project* getProject() const { return project; } const File getCppFile() const { return cppFile; } void cppFileHasMoved (const File& newFile) { cppFile = newFile; } @@ -59,8 +60,9 @@ public: Value getClassName() const { return getRootValueNonUndoable ("className"); } Value getClassDescription() const { return getRootValueNonUndoable ("classDesc"); } - Value getCanvasWidth() const { return getRootValueNonUndoable ("width"); } - Value getCanvasHeight() const { return getRootValueNonUndoable ("height"); } + void setUsingTemporaryCanvasSize (bool b); + Value getCanvasWidth() const; + Value getCanvasHeight() const; void createClassProperties (Array & props); @@ -91,6 +93,8 @@ public: void addNewComponentMenuItems (PopupMenu& menu) const; const ValueTree performNewComponentMenuItem (int menuResultCode); + void updateComponentsIn (Component* compHolder); + //============================================================================== class MarkerList : public MarkerListBase { @@ -157,14 +161,34 @@ public: static const char* const jucerIDProperty; static const String getJucerIDFor (Component* c); + //============================================================================== + class TestComponent : public Component + { + public: + TestComponent (ComponentDocument& document_); + TestComponent (Project* project, const File& cppFile); + ~TestComponent(); + + void resized(); + void paint (Graphics& g); + + private: + ScopedPointer document; + void setupDocument(); + }; + + juce_UseDebuggingNewOperator + private: + //============================================================================== Project* project; File cppFile; ValueTree root; ScopedPointer markersX, markersY; CodeGenerator::CustomCodeList customCode; mutable UndoManager undoManager; - bool changedSinceSaved; + bool changedSinceSaved, usingTemporaryCanvasSize; + Value tempCanvasWidth, tempCanvasHeight; void checkRootObject(); void createSubTreeIfNotThere (const String& name); @@ -178,6 +202,8 @@ private: void writeMetadata (OutputStream& out); bool createItemProperties (Array & props, const String& itemId); + + Component* findComponentForState (Component* compHolder, const ValueTree& state); }; diff --git a/extras/Jucer (experimental)/Source/ui/Component Editor/jucer_ComponentEditor.cpp b/extras/Jucer (experimental)/Source/ui/Component Editor/jucer_ComponentEditor.cpp index ca8ace313e..f7e535f739 100644 --- a/extras/Jucer (experimental)/Source/ui/Component Editor/jucer_ComponentEditor.cpp +++ b/extras/Jucer (experimental)/Source/ui/Component Editor/jucer_ComponentEditor.cpp @@ -271,38 +271,10 @@ void ComponentEditor::showNewComponentMenu (Component* componentToAttachTo) } //============================================================================== -class TestComponent : public Component -{ -public: - TestComponent (ComponentDocument& document_) - : document (document_) - { - setSize (document.getCanvasWidth().getValue(), - document.getCanvasHeight().getValue()); - } - - ~TestComponent() - { - deleteAllChildren(); - } - - void resized() - { - document.getCanvasWidth() = getWidth(); - document.getCanvasHeight() = getHeight(); - - ComponentEditorCanvas::updateComponentsIn (this, document, selected); - } - -private: - ComponentDocument document; - ComponentEditorCanvas::SelectedItems selected; - TooltipWindow tooltipWindow; -}; - void ComponentEditor::test() { - TestComponent testComp (getDocument()); + ComponentDocument::TestComponent testComp (getDocument()); + TooltipWindow tooltipWindow; DialogWindow::showModalDialog ("Testing: " + getDocument().getClassName().toString(), &testComp, this, Colours::lightgrey, true, true); diff --git a/extras/Jucer (experimental)/Source/ui/Component Editor/jucer_ComponentEditorCanvas.h b/extras/Jucer (experimental)/Source/ui/Component Editor/jucer_ComponentEditorCanvas.h index 619515b9e1..494566f77a 100644 --- a/extras/Jucer (experimental)/Source/ui/Component Editor/jucer_ComponentEditorCanvas.h +++ b/extras/Jucer (experimental)/Source/ui/Component Editor/jucer_ComponentEditorCanvas.h @@ -62,63 +62,9 @@ public: return new Component(); } - static Component* findComponentForState (Component* compHolder, ComponentDocument& doc, const ValueTree& state) - { - for (int i = compHolder->getNumChildComponents(); --i >= 0;) - { - Component* const c = compHolder->getChildComponent (i); - if (doc.isStateForComponent (state, c)) - return c; - } - - return 0; - } - - static void updateComponentsIn (Component* compHolder, ComponentDocument& doc, SelectedItems& selection) - { - int i; - for (i = compHolder->getNumChildComponents(); --i >= 0;) - { - Component* c = compHolder->getChildComponent (i); - - if (! doc.containsComponent (c)) - { - selection.deselect (ComponentDocument::getJucerIDFor (c)); - delete c; - } - } - - Array componentsInOrder; - - const int num = doc.getNumComponents(); - for (i = 0; i < num; ++i) - { - const ValueTree v (doc.getComponent (i)); - Component* c = findComponentForState (compHolder, doc, v); - - if (c == 0) - { - c = doc.createComponent (i); - compHolder->addAndMakeVisible (c); - } - - doc.updateComponent (c); - componentsInOrder.add (c); - } - - // Make sure the z-order is correct.. - if (num > 0) - { - componentsInOrder.getLast()->toFront (false); - - for (i = num - 1; --i >= 0;) - componentsInOrder.getUnchecked(i)->toBehind (componentsInOrder.getUnchecked (i + 1)); - } - } - void updateComponents() { - updateComponentsIn (getComponentHolder(), getDocument(), editor.getSelection()); + getDocument().updateComponentsIn (getComponentHolder()); startTimer (500); } @@ -239,6 +185,12 @@ public: return doc.setCoordsFor (state, pr); } + + float getMarkerPosition (const ValueTree& marker, bool isX) + { + ComponentDocument& doc = getDocument(); + return doc.getMarkerList (isX).getCoordinate (marker).resolve (doc); + } }; DragOperation* createDragOperation (const MouseEvent& e, Component* snapGuideParentComponent, diff --git a/extras/Jucer (experimental)/Source/ui/Drawable Editor/jucer_DrawableEditorCanvas.h b/extras/Jucer (experimental)/Source/ui/Drawable Editor/jucer_DrawableEditorCanvas.h index 224a74f00d..35905ab7a9 100644 --- a/extras/Jucer (experimental)/Source/ui/Drawable Editor/jucer_DrawableEditorCanvas.h +++ b/extras/Jucer (experimental)/Source/ui/Drawable Editor/jucer_DrawableEditorCanvas.h @@ -158,6 +158,11 @@ public: { return false; } + + float getMarkerPosition (const ValueTree& marker, bool isX) + { + return 0; + } }; DragOperation* createDragOperation (const MouseEvent& e, Component* snapGuideParentComponent, diff --git a/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorCanvas.cpp b/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorCanvas.cpp index b29a1d00f7..429cc11942 100644 --- a/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorCanvas.cpp +++ b/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorCanvas.cpp @@ -53,9 +53,13 @@ public: g.drawRect (0, 0, getWidth(), getHeight(), borderThickness); } - void valueTreePropertyChanged (ValueTree&, const var::identifier&) { updatePosition(); } - void valueTreeChildrenChanged (ValueTree& treeWhoseChildHasChanged) { updatePosition(); } - void valueTreeParentChanged (ValueTree& treeWhoseParentHasChanged) {} + void valueTreePropertyChanged (ValueTree&, const var::identifier&) { updatePosition(); } + void valueTreeChildrenChanged (ValueTree&) { updatePosition(); } + void valueTreeParentChanged (ValueTree&) + { + if (! objectState.getParent().isValid()) + canvas->getSelection().deselect (objectState ["id"]); + } void mouseEnter (const MouseEvent& e) { updateDragZone (e.getPosition()); } void mouseExit (const MouseEvent& e) { updateDragZone (e.getPosition()); } diff --git a/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorDragOperation.h b/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorDragOperation.h index 27afccb65e..b2014730c6 100644 --- a/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorDragOperation.h +++ b/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorDragOperation.h @@ -62,7 +62,7 @@ public: verticalSnapPositions.add (SnapLine (floatPos.getX(), floatPos.getY(), floatPos.getBottom())); if (zone.isDraggingWholeObject() || (zone.isDraggingLeftEdge() && zone.isDraggingRightEdge())) - verticalSnapPositions.add (SnapLine (floatPos.getCentreX(), floatPos.getY(), floatPos.getBottom())); + verticalSnapPositions.add (SnapLine ((int) floatPos.getCentreX(), floatPos.getY(), floatPos.getBottom())); if (zone.isDraggingWholeObject() || zone.isDraggingRightEdge()) verticalSnapPositions.add (SnapLine (floatPos.getRight(), floatPos.getY(), floatPos.getBottom())); @@ -71,7 +71,7 @@ public: horizontalSnapPositions.add (SnapLine (floatPos.getY(), floatPos.getX(), floatPos.getRight())); if (zone.isDraggingWholeObject() || (zone.isDraggingTopEdge() && zone.isDraggingBottomEdge())) - horizontalSnapPositions.add (SnapLine (floatPos.getCentreY(), floatPos.getX(), floatPos.getRight())); + horizontalSnapPositions.add (SnapLine ((int) floatPos.getCentreY(), floatPos.getX(), floatPos.getRight())); if (zone.isDraggingWholeObject() || zone.isDraggingBottomEdge()) horizontalSnapPositions.add (SnapLine (floatPos.getBottom(), floatPos.getX(), floatPos.getRight())); @@ -79,20 +79,30 @@ public: if (isDraggingLeftRight()) { - verticalSnapTargets.add (SnapLine (0, -100.0f, 10000.0f)); - verticalSnapTargets.add (SnapLine ((float) getCanvasWidth(), -100.0f, 10000.0f)); + const float y1 = -100.0f, y2 = 10000.0f; + verticalSnapTargets.add (SnapLine (0, y1, y2)); + verticalSnapTargets.add (SnapLine ((float) getCanvasWidth(), y1, y2)); if (zone.isDraggingWholeObject() || (zone.isDraggingLeftEdge() && zone.isDraggingRightEdge())) - verticalSnapTargets.add (SnapLine ((float) getCanvasWidth() / 2.0f, 0, 10000.0f)); + verticalSnapTargets.add (SnapLine ((float) getCanvasWidth() / 2.0f, y1, y2)); + + MarkerListBase& markers = canvas->getMarkerList (true); + for (int i = markers.size(); --i >= 0;) + verticalSnapTargets.add (SnapLine (getMarkerPosition (markers.getMarker(i), true), y1, y2)); } if (isDraggingUpDown()) { - horizontalSnapTargets.add (SnapLine (0, -100.0f, 10000.0f)); - horizontalSnapTargets.add (SnapLine ((float) getCanvasHeight(), -100.0f, 10000.0f)); + const float x1 = -100.0f, x2 = 10000.0f; + horizontalSnapTargets.add (SnapLine (0, x1, x2)); + horizontalSnapTargets.add (SnapLine ((float) getCanvasHeight(), x1, x2)); if (zone.isDraggingWholeObject() || (zone.isDraggingTopEdge() && zone.isDraggingBottomEdge())) - horizontalSnapTargets.add (SnapLine ((float) getCanvasHeight() / 2.0f, 0, 10000.0f)); + horizontalSnapTargets.add (SnapLine ((float) getCanvasHeight() / 2.0f, x1, x2)); + + MarkerListBase& markers = canvas->getMarkerList (false); + for (int i = markers.size(); --i >= 0;) + horizontalSnapTargets.add (SnapLine (getMarkerPosition (markers.getMarker(i), false), x1, x2)); } for (i = 0; i < objectsToSnapTo.size(); ++i) @@ -106,7 +116,7 @@ public: } if (zone.isDraggingWholeObject() || (zone.isDraggingLeftEdge() && zone.isDraggingRightEdge())) - verticalSnapTargets.add (SnapLine (floatPos.getCentreX(), floatPos.getY(), floatPos.getBottom())); + verticalSnapTargets.add (SnapLine ((int) floatPos.getCentreX(), floatPos.getY(), floatPos.getBottom())); if (isDraggingUpDown()) { @@ -115,7 +125,7 @@ public: } if (zone.isDraggingWholeObject() || (zone.isDraggingTopEdge() && zone.isDraggingBottomEdge())) - horizontalSnapTargets.add (SnapLine (floatPos.getCentreY(), floatPos.getX(), floatPos.getRight())); + horizontalSnapTargets.add (SnapLine ((int) floatPos.getCentreY(), floatPos.getX(), floatPos.getRight())); } mergeSnapLines (verticalSnapTargets); @@ -221,6 +231,7 @@ protected: //============================================================================== virtual int getCanvasWidth() = 0; virtual int getCanvasHeight() = 0; + virtual float getMarkerPosition (const ValueTree& marker, bool isX) = 0; virtual const Rectangle getObjectPosition (const ValueTree& state) = 0; virtual bool setObjectPosition (ValueTree& state, const Rectangle& newBounds) = 0; diff --git a/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorPanel.h b/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorPanel.h index 082c561fde..f0a3b79ff1 100644 --- a/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorPanel.h +++ b/extras/Jucer (experimental)/Source/ui/Editor Base/jucer_EditorPanel.h @@ -75,7 +75,7 @@ public: resized(); } - bool arePropertiesVisible() const { return infoPanel->isVisible(); } + bool arePropertiesVisible() const { return infoPanel->isVisible(); } void showOrHideTree() {