|
- /*
- ==============================================================================
-
- This file is part of the JUCE library.
- Copyright (c) 2017 - ROLI Ltd.
-
- JUCE is an open source library subject to commercial or open-source
- licensing.
-
- By using JUCE, you agree to the terms of both the JUCE 5 End-User License
- Agreement and JUCE 5 Privacy Policy (both updated and effective as of the
- 27th April 2017).
-
- End User License Agreement: www.juce.com/juce-5-licence
- Privacy Policy: www.juce.com/juce-5-privacy-policy
-
- Or: You may also use this code under the terms of the GPL v3 (see
- www.gnu.org/licenses).
-
- JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
- EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
- DISCLAIMED.
-
- ==============================================================================
- */
-
- namespace juce
- {
-
- //==============================================================================
- /**
- The latest JUCE look-and-feel style, as introduced in 2013.
- @see LookAndFeel, LookAndFeel_V1, LookAndFeel_V2
- */
- class JUCE_API LookAndFeel_V3 : public LookAndFeel_V2
- {
- public:
- LookAndFeel_V3();
- ~LookAndFeel_V3();
-
- //==============================================================================
- void drawButtonBackground (Graphics&, Button&, const Colour& backgroundColour,
- bool isMouseOverButton, bool isButtonDown) override;
-
- void drawTableHeaderBackground (Graphics&, TableHeaderComponent&) override;
-
- void drawTreeviewPlusMinusBox (Graphics&, const Rectangle<float>& area,
- Colour backgroundColour, bool isOpen, bool isMouseOver) override;
- bool areLinesDrawnForTreeView (TreeView&) override;
- int getTreeViewIndentSize (TreeView&) override;
-
- Button* createDocumentWindowButton (int buttonType) override;
-
- void drawComboBox (Graphics&, int width, int height, bool isButtonDown,
- int buttonX, int buttonY, int buttonW, int buttonH, ComboBox& box) override;
-
- void drawKeymapChangeButton (Graphics&, int width, int height, Button& button, const String& keyDescription) override;
-
- void drawPopupMenuBackground (Graphics&, int width, int height) override;
- void drawMenuBarBackground (Graphics&, int width, int height, bool, MenuBarComponent&) override;
-
- int getTabButtonOverlap (int tabDepth) override;
- int getTabButtonSpaceAroundImage() override;
- void drawTabButton (TabBarButton&, Graphics&, bool isMouseOver, bool isMouseDown) override;
- void drawTabAreaBehindFrontButton (TabbedButtonBar& bar, Graphics& g, int w, int h) override;
-
- void drawTextEditorOutline (Graphics&, int width, int height, TextEditor&) override;
-
- void drawStretchableLayoutResizerBar (Graphics&, int w, int h, bool isVerticalBar, bool isMouseOver, bool isMouseDragging) override;
-
- bool areScrollbarButtonsVisible() override;
-
- void drawScrollbar (Graphics&, ScrollBar&, int x, int y, int width, int height, bool isScrollbarVertical,
- int thumbStartPosition, int thumbSize, bool isMouseOver, bool isMouseDown) override;
-
- void drawLinearSlider (Graphics&, int x, int y, int width, int height,
- float sliderPos, float minSliderPos, float maxSliderPos,
- const Slider::SliderStyle, Slider&) override;
-
- void drawLinearSliderBackground (Graphics&, int x, int y, int width, int height,
- float sliderPos, float minSliderPos, float maxSliderPos,
- const Slider::SliderStyle, Slider&) override;
-
- void drawConcertinaPanelHeader (Graphics&, const Rectangle<int>& area, bool isMouseOver, bool isMouseDown,
- ConcertinaPanel&, Component&) override;
-
- Path getTickShape (float height) override;
- Path getCrossShape (float height) override;
-
- static void createTabTextLayout (const TabBarButton& button, float length, float depth, Colour colour, TextLayout&);
-
- private:
- Image backgroundTexture;
- Colour backgroundTextureBaseColour;
- };
-
- } // namespace juce
|