Browse Source

Added another PopupMenu::addItem method for coloured items with drawables

tags/2021-05-28
jules 10 years ago
parent
commit
6f19816cf4
2 changed files with 24 additions and 5 deletions
  1. +10
    -4
      modules/juce_gui_basics/menus/juce_PopupMenu.cpp
  2. +14
    -1
      modules/juce_gui_basics/menus/juce_PopupMenu.h

+ 10
- 4
modules/juce_gui_basics/menus/juce_PopupMenu.cpp View File

@@ -61,8 +61,8 @@ public:
{
String shortcutKey;
const Array <KeyPress> keyPresses (commandManager->getKeyMappings()
->getKeyPressesAssignedToCommand (itemID));
const Array<KeyPress> keyPresses (commandManager->getKeyMappings()
->getKeyPressesAssignedToCommand (itemID));
for (int i = 0; i < keyPresses.size(); ++i)
{
@@ -1351,16 +1351,22 @@ void PopupMenu::addCommandItem (ApplicationCommandManager* commandManager,
}
void PopupMenu::addColouredItem (int itemResultID, const String& itemText, Colour itemTextColour,
bool isActive, bool isTicked, const Image& iconToUse)
bool isActive, bool isTicked, Drawable* iconToUse)
{
jassert (itemResultID != 0); // 0 is used as a return value to indicate that the user
// didn't pick anything, so you shouldn't use it as the id
// for an item..
items.add (new Item (itemResultID, itemText, isActive, isTicked, createDrawableFromImage (iconToUse),
items.add (new Item (itemResultID, itemText, isActive, isTicked, iconToUse,
itemTextColour, true, nullptr, nullptr, nullptr));
}
void PopupMenu::addColouredItem (int itemResultID, const String& itemText, Colour itemTextColour,
bool isActive, bool isTicked, const Image& iconToUse)
{
addColouredItem (itemResultID, itemText, itemTextColour, isActive, isTicked, createDrawableFromImage (iconToUse));
}
void PopupMenu::addCustomItem (int itemID, CustomComponent* cc, const PopupMenu* subMenu)
{
jassert (itemID != 0); // 0 is used as a return value to indicate that the user


+ 14
- 1
modules/juce_gui_basics/menus/juce_PopupMenu.h View File

@@ -189,7 +189,20 @@ public:
Colour itemTextColour,
bool isEnabled = true,
bool isTicked = false,
const Image& iconToUse = Image::null);
const Image& iconToUse = Image());
/** Appends a text item with a special colour.
This is the same as addItem(), but specifies a colour to use for the
text, which will override the default colours that are used by the
current look-and-feel. See addItem() for a description of the parameters.
*/
void addColouredItem (int itemResultID,
const String& itemText,
Colour itemTextColour,
bool isEnabled,
bool isTicked,
Drawable* iconToUse);
/** Appends a custom menu item.


Loading…
Cancel
Save