openshot-audio  0.1.2
juce_TextButton.h
Go to the documentation of this file.
1 /*
2  ==============================================================================
3 
4  This file is part of the JUCE library.
5  Copyright (c) 2015 - ROLI Ltd.
6 
7  Permission is granted to use this software under the terms of either:
8  a) the GPL v2 (or any later version)
9  b) the Affero GPL v3
10 
11  Details of these licenses can be found at: www.gnu.org/licenses
12 
13  JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
14  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
15  A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16 
17  ------------------------------------------------------------------------------
18 
19  To release a closed-source product which uses JUCE, commercial licenses are
20  available: visit www.juce.com for more information.
21 
22  ==============================================================================
23 */
24 
25 #ifndef JUCE_TEXTBUTTON_H_INCLUDED
26 #define JUCE_TEXTBUTTON_H_INCLUDED
27 
28 
29 //==============================================================================
36 class JUCE_API TextButton : public Button
37 {
38 public:
39  //==============================================================================
41  TextButton();
42 
48  explicit TextButton (const String& buttonName);
49 
56  TextButton (const String& buttonName, const String& toolTip);
57 
59  ~TextButton();
60 
61  //==============================================================================
69  enum ColourIds
70  {
71  buttonColourId = 0x1000100,
74  buttonOnColourId = 0x1000101,
77  textColourOffId = 0x1000102,
78  textColourOnId = 0x1000103
79  };
80 
81  //==============================================================================
85  void changeWidthToFitText();
86 
90  void changeWidthToFitText (int newHeight);
91 
95  int getBestWidthForHeight (int buttonHeight);
96 
97  //==============================================================================
99  void paintButton (Graphics&, bool isMouseOverButton, bool isButtonDown) override;
101  void colourChanged() override;
102 
103 private:
104  #if JUCE_CATCH_DEPRECATED_CODE_MISUSE
105  // Note that this method has been removed - instead, see LookAndFeel::getTextButtonFont()
106  virtual int getFont() { return 0; }
107  #endif
108 
110 };
111 
112 
113 #endif // JUCE_TEXTBUTTON_H_INCLUDED
Definition: juce_Button.h:39
Definition: juce_TextButton.h:36
Definition: juce_String.h:43
#define JUCE_API
Definition: juce_StandardHeader.h:139
virtual void colourChanged()
Definition: juce_Component.cpp:2139
#define JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(className)
Definition: juce_PlatformDefs.h:198
ColourIds
Definition: juce_TextButton.h:69
Definition: juce_GraphicsContext.h:42
virtual void paintButton(Graphics &g, bool isMouseOverButton, bool isButtonDown)=0