From fdf6f12185c6bb0cf81e64dbdb2c458cd8e81961 Mon Sep 17 00:00:00 2001 From: jules Date: Thu, 31 Jul 2014 10:54:45 +0100 Subject: [PATCH] Made Label take its editing colours from the L+F. --- modules/juce_gui_basics/widgets/juce_Label.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/modules/juce_gui_basics/widgets/juce_Label.cpp b/modules/juce_gui_basics/widgets/juce_Label.cpp index 542f71896d..778425e303 100644 --- a/modules/juce_gui_basics/widgets/juce_Label.cpp +++ b/modules/juce_gui_basics/widgets/juce_Label.cpp @@ -289,20 +289,21 @@ bool Label::isBeingEdited() const noexcept return editor != nullptr; } +static void copyColourIfSpecified (Label& l, TextEditor& ed, int colourID, int targetColourID) +{ + if (l.isColourSpecified (colourID) || l.getLookAndFeel().isColourSpecified (colourID)) + ed.setColour (targetColourID, l.findColour (colourID)); +} + TextEditor* Label::createEditorComponent() { TextEditor* const ed = new TextEditor (getName()); ed->applyFontToAllText (getLookAndFeel().getLabelFont (*this)); copyAllExplicitColoursTo (*ed); - if (isColourSpecified (textWhenEditingColourId)) - ed->setColour (TextEditor::textColourId, findColour (textWhenEditingColourId)); - - if (isColourSpecified (backgroundWhenEditingColourId)) - ed->setColour (TextEditor::backgroundColourId, findColour (backgroundWhenEditingColourId)); - - if (isColourSpecified (outlineWhenEditingColourId)) - ed->setColour (TextEditor::outlineColourId, findColour (outlineWhenEditingColourId)); + copyColourIfSpecified (*this, *ed, textWhenEditingColourId, TextEditor::textColourId); + copyColourIfSpecified (*this, *ed, backgroundWhenEditingColourId, TextEditor::backgroundColourId); + copyColourIfSpecified (*this, *ed, outlineWhenEditingColourId, TextEditor::outlineColourId); return ed; }