JUCE-7.0.12-0-g4f43011b96 JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins

« « « Anklang Documentation
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
juce::ParameterGroupItem Struct Referencefinal
Inheritance diagram for juce::ParameterGroupItem:
juce::TreeViewItem

Public Member Functions

 ParameterGroupItem (AudioProcessorEditor &editor, const AudioProcessorParameterGroup &group)
 
bool mightContainSubItems () override
 Tells the tree whether this item can potentially be opened.
 
std::unique_ptr< ComponentcreateItemComponent () override
 Creates a component that will be used to represent this item.
 
- Public Member Functions inherited from juce::TreeViewItem
 TreeViewItem ()
 Constructor.
 
virtual ~TreeViewItem ()
 Destructor.
 
int getNumSubItems () const noexcept
 Returns the number of sub-items that have been added to this item.
 
TreeViewItemgetSubItem (int index) const noexcept
 Returns one of the item's sub-items.
 
void clearSubItems ()
 Removes any sub-items.
 
void addSubItem (TreeViewItem *newItem, int insertPosition=-1)
 Adds a sub-item.
 
template<class ElementComparator >
void addSubItemSorted (ElementComparator &comparator, TreeViewItem *newItem)
 Adds a sub-item with a sort-comparator, assuming that the existing items are already sorted.
 
void removeSubItem (int index, bool deleteItem=true)
 Removes one of the sub-items.
 
template<class ElementComparator >
void sortSubItems (ElementComparator &comparator)
 Sorts the list of sub-items using a standard array comparator.
 
TreeViewgetOwnerView () const noexcept
 Returns the TreeView to which this item belongs.
 
TreeViewItemgetParentItem () const noexcept
 Returns the item within which this item is contained.
 
bool isOpen () const noexcept
 True if this item is currently open in the TreeView.
 
void setOpen (bool shouldBeOpen)
 Opens or closes the item.
 
Openness getOpenness () const noexcept
 Returns the openness state of this item.
 
void setOpenness (Openness newOpenness)
 Opens or closes the item.
 
bool isSelected () const noexcept
 True if this item is currently selected.
 
void setSelected (bool shouldBeSelected, bool deselectOtherItemsFirst, NotificationType shouldNotify=sendNotification)
 Selects or deselects the item.
 
Rectangle< intgetItemPosition (bool relativeToTreeViewTopLeft) const noexcept
 Returns the rectangle that this item occupies.
 
void treeHasChanged () const noexcept
 Sends a signal to the TreeView to make it refresh itself.
 
void repaintItem () const
 Sends a repaint message to redraw just this item.
 
int getRowNumberInTree () const noexcept
 Returns the row number of this item in the tree.
 
bool areAllParentsOpen () const noexcept
 Returns true if all the item's parent nodes are open.
 
void setLinesDrawnForSubItems (bool shouldDrawLines) noexcept
 Changes whether lines are drawn to connect any sub-items to this item.
 
virtual String getUniqueName () const
 Returns a string to uniquely identify this item.
 
virtual void itemOpennessChanged (bool isNowOpen)
 Called when an item is opened or closed.
 
virtual int getItemWidth () const
 Must return the width required by this item.
 
virtual int getItemHeight () const
 Must return the height required by this item.
 
virtual bool canBeSelected () const
 You can override this method to return false if you don't want to allow the user to select this item.
 
virtual void paintItem (Graphics &g, int width, int height)
 Draws the item's contents.
 
virtual void paintOpenCloseButton (Graphics &, const Rectangle< float > &area, Colour backgroundColour, bool isMouseOver)
 Draws the item's open/close button.
 
virtual void paintHorizontalConnectingLine (Graphics &, const Line< float > &line)
 Draws the line that connects this item to the vertical line extending below its parent.
 
virtual void paintVerticalConnectingLine (Graphics &, const Line< float > &line)
 Draws the line that extends vertically up towards one of its parents, or down to one of its children.
 
virtual bool customComponentUsesTreeViewMouseHandler () const
 This should return true if you want to use a custom component, and also use the TreeView's built-in mouse handling support, enabling drag-and-drop, itemClicked() and itemDoubleClicked(); return false if the component should consume all mouse clicks.
 
virtual void itemClicked (const MouseEvent &)
 Called when the user clicks on this item.
 
virtual void itemDoubleClicked (const MouseEvent &)
 Called when the user double-clicks on this item.
 
virtual void itemSelectionChanged (bool isNowSelected)
 Called when the item is selected or deselected.
 
virtual void ownerViewChanged (TreeView *newOwner)
 Called when the owner view changes.
 
virtual String getTooltip ()
 The item can return a tool tip string here if it wants to.
 
virtual String getAccessibilityName ()
 Use this to set the name for this item that will be read out by accessibility clients.
 
virtual var getDragSourceDescription ()
 To allow items from your TreeView to be dragged-and-dropped, implement this method.
 
virtual bool isInterestedInFileDrag (const StringArray &files)
 If you want your item to be able to have files drag-and-dropped onto it, implement this method and return true.
 
virtual void filesDropped (const StringArray &files, int insertIndex)
 When files are dropped into this item, this callback is invoked.
 
virtual bool isInterestedInDragSource (const DragAndDropTarget::SourceDetails &dragSourceDetails)
 If you want your item to act as a DragAndDropTarget, implement this method and return true.
 
virtual void itemDropped (const DragAndDropTarget::SourceDetails &dragSourceDetails, int insertIndex)
 When a things are dropped into this item, this callback is invoked.
 
void setDrawsInLeftMargin (bool canDrawInLeftMargin) noexcept
 Sets a flag to indicate that the item wants to be allowed to draw all the way across to the left edge of the TreeView.
 
void setDrawsInRightMargin (bool canDrawInRightMargin) noexcept
 Sets a flag to indicate that the item wants to be allowed to draw all the way across to the right edge of the TreeView.
 
std::unique_ptr< XmlElementgetOpennessState () const
 Saves the current state of open/closed nodes so it can be restored later.
 
void restoreOpennessState (const XmlElement &xml)
 Restores the openness of this item and all its sub-items from a saved state.
 
int getIndexInParent () const noexcept
 Returns the index of this item in its parent's sub-items.
 
bool isLastOfSiblings () const noexcept
 Returns true if this item is the last of its parent's sub-items.
 
String getItemIdentifierString () const
 Creates a string that can be used to uniquely retrieve this item in the tree.
 

Public Attributes

String name
 

Additional Inherited Members

- Public Types inherited from juce::TreeViewItem
enum class  Openness { opennessDefault , opennessClosed , opennessOpen }
 An enum of states to describe the explicit or implicit openness of an item. More...
 

Detailed Description

Definition at line 536 of file juce_GenericAudioProcessorEditor.cpp.

Constructor & Destructor Documentation

◆ ParameterGroupItem()

juce::ParameterGroupItem::ParameterGroupItem ( AudioProcessorEditor editor,
const AudioProcessorParameterGroup group 
)

Definition at line 538 of file juce_GenericAudioProcessorEditor.cpp.

Member Function Documentation

◆ createItemComponent()

std::unique_ptr< Component > juce::ParameterGroupItem::createItemComponent ( )
overridevirtual

Creates a component that will be used to represent this item.

You don't have to implement this method - if it returns nullptr then no component will be used for the item, and you can just draw it using the paintItem() callback. But if you do return a component, it will be positioned in the TreeView so that it can be used to represent this item.

The component returned will be managed by the TreeView and will be deleted later when it goes off the screen or is no longer needed. Its position and size will be completely managed by the tree, so don't attempt to move it around.

Something you may want to do with your component is to give it a pointer to the TreeView that created it. This is perfectly safe, and there's no danger of it becoming a dangling pointer because the TreeView will always delete the component before it is itself deleted.

As long as you stick to these rules you can return whatever kind of component you like. It's most useful if you're doing things like drag-and-drop of items, or want to use a Label component to edit item names, etc.

Reimplemented from juce::TreeViewItem.

Definition at line 559 of file juce_GenericAudioProcessorEditor.cpp.

◆ mightContainSubItems()

bool juce::ParameterGroupItem::mightContainSubItems ( )
overridevirtual

Tells the tree whether this item can potentially be opened.

If your item could contain sub-items, this should return true; if it returns false then the tree will not try to open the item. This determines whether or not the item will be drawn with a 'plus' button next to it.

Implements juce::TreeViewItem.

Definition at line 557 of file juce_GenericAudioProcessorEditor.cpp.

Member Data Documentation

◆ name

String juce::ParameterGroupItem::name

Definition at line 564 of file juce_GenericAudioProcessorEditor.cpp.


The documentation for this struct was generated from the following file: