57 bool rowIsSelected) = 0;
168 #if ! JUCE_DISABLE_ASSERTIONS
221 #if ! JUCE_DISABLE_ASSERTIONS
236 void updateContent();
248 void setMultipleSelectionEnabled (
bool shouldBeEnabled)
noexcept;
257 void setClickingTogglesRowSelection (
bool flipRowSelection)
noexcept;
262 void setRowSelectedOnMouseDown (
bool isSelectedOnMouseDown)
noexcept;
269 void setMouseMoveSelectsRows (
bool shouldSelect);
285 void selectRow (
int rowNumber,
286 bool dontScrollToShowThisRow =
false,
287 bool deselectOthersFirst =
true);
300 void selectRangeOfRows (
int firstRow,
302 bool dontScrollToShowThisRange =
false);
308 void deselectRow (
int rowNumber);
313 void deselectAllRows();
318 void flipRowSelection (
int rowNumber);
332 void setSelectedRows (
const SparseSet<int>& setOfRowsToBeSelected,
337 bool isRowSelected (
int rowNumber)
const;
342 int getNumSelectedRows()
const;
354 int getSelectedRow (
int index = 0)
const;
363 int getLastRowSelected()
const;
378 void selectRowsBasedOnModifierKeys (
int rowThatWasClickedOn,
380 bool isMouseUpEvent);
393 void setVerticalPosition (
double newProportion);
402 double getVerticalPosition()
const;
405 void scrollToEnsureRowIsOnscreen (
int row);
441 Rectangle<
int> getRowPosition (
int rowNumber,
470 void setRowHeight (
int newHeight);
506 void setOutlineThickness (
int outlineThickness);
522 void setHeaderComponent (std::unique_ptr<Component> newHeaderComponent);
537 void setMinimumContentWidth (
int newMinimumWidth);
549 void repaintRow (
int rowNumber)
noexcept;
576 bool keyStateChanged (
bool isKeyDown)
override;
592 void parentHierarchyChanged()
override;
595 const var& dragDescription,
bool allowDraggingToOtherWindows);
599 [[deprecated (
"This method's bool parameter has changed: see the new method signature.")]]
619 #if ! JUCE_DISABLE_ASSERTIONS
628 bool deselectOthersFirst,
bool isMouseClick);
#define noexcept
Definition DistrhoDefines.h:72
#define override
Definition DistrhoDefines.h:73
Definition juce_Component.h:36
String componentName
Definition juce_Component.h:2534
Component() noexcept
Definition juce_Component.cpp:517
Definition juce_GraphicsContext.h:45
Definition juce_KeyPress.h:40
Definition juce_ListBox.cpp:291
Definition juce_ListBox.cpp:69
bool multipleSelection
Definition juce_ListBox.h:617
ListBox(const String &componentName=String(), ListBoxModel *model=nullptr)
Definition juce_ListBox.cpp:528
int rowHeight
Definition juce_ListBox.h:614
std::unique_ptr< Component > headerComponent
Definition juce_ListBox.h:611
SparseSet< int > selected
Definition juce_ListBox.h:613
friend class TableListBox
Definition juce_ListBox.h:608
bool alwaysFlipSelection
Definition juce_ListBox.h:617
std::unique_ptr< MouseListener > mouseMoveSelector
Definition juce_ListBox.h:612
ListBoxModel * getModel() const noexcept
Definition juce_ListBox.h:219
void selectRowInternal(int rowNumber, bool dontScrollToShowThisRow, bool deselectOthersFirst, bool isMouseClick)
Definition juce_ListBox.cpp:656
bool hasDoneInitialUpdate
Definition juce_ListBox.h:617
ListBoxModel * model
Definition juce_ListBox.h:609
void checkModelPtrIsValid() const
Definition juce_ListBox.cpp:54
void setModel(ListBoxModel *newModel)
Definition juce_ListBox.cpp:556
bool selectOnMouseDown
Definition juce_ListBox.h:617
ColourIds
Definition juce_ListBox.h:493
@ textColourId
Definition juce_ListBox.h:498
@ backgroundColourId
Definition juce_ListBox.h:494
@ outlineColourId
Definition juce_ListBox.h:496
int lastRowSelected
Definition juce_ListBox.h:616
int minimumRowWidth
Definition juce_ListBox.h:614
bool hasAccessibleHeaderComponent() const
Definition juce_ListBox.cpp:1061
int getOutlineThickness() const noexcept
Definition juce_ListBox.h:511
int outlineThickness
Definition juce_ListBox.h:615
std::unique_ptr< ListViewport > viewport
Definition juce_ListBox.h:610
void setSelectedRows(const SparseSet< int > &, bool)
Component * getHeaderComponent() const noexcept
Definition juce_ListBox.h:525
int getRowHeight() const noexcept
Definition juce_ListBox.h:475
int totalItems
Definition juce_ListBox.h:614
void assignModelPtr(ListBoxModel *)
Definition juce_ListBox.cpp:547
std::weak_ptr< ListBoxModel::Empty > weakModelPtr
Definition juce_ListBox.h:620
std::unique_ptr< AccessibilityHandler > createAccessibilityHandler() override
Definition juce_ListBox.cpp:1144
Definition juce_ListBox.h:38
virtual void deleteKeyPressed(int lastRowSelected)
Definition juce_ListBox.cpp:1223
virtual void returnKeyPressed(int lastRowSelected)
Definition juce_ListBox.cpp:1224
virtual Component * refreshComponentForRow(int rowNumber, bool isRowSelected, Component *existingComponentToUpdate)
Definition juce_ListBox.cpp:1211
virtual void paintListBoxItem(int rowNumber, Graphics &g, int width, int height, bool rowIsSelected)=0
friend class ListBox
Definition juce_ListBox.h:169
virtual void listBoxItemDoubleClicked(int row, const MouseEvent &)
Definition juce_ListBox.cpp:1220
virtual String getTooltipForRow(int row)
Definition juce_ListBox.cpp:1227
virtual var getDragSourceDescription(const SparseSet< int > &rowsToDescribe)
Definition juce_ListBox.cpp:1226
virtual int getNumRows()=0
virtual void listBoxItemClicked(int row, const MouseEvent &)
Definition juce_ListBox.cpp:1219
std::shared_ptr< Empty > sharedState
Definition juce_ListBox.h:171
virtual void listWasScrolled()
Definition juce_ListBox.cpp:1225
virtual ~ListBoxModel()=default
virtual String getNameForRow(int rowNumber)
Definition juce_ListBox.cpp:1218
virtual void backgroundClicked(const MouseEvent &)
Definition juce_ListBox.cpp:1221
virtual MouseCursor getMouseCursorForRow(int row)
Definition juce_ListBox.cpp:1228
virtual void selectedRowsChanged(int lastRowSelected)
Definition juce_ListBox.cpp:1222
Definition juce_ModifierKeys.h:41
Definition juce_MouseCursor.h:39
Definition juce_MouseEvent.h:39
Definition juce_MouseListener.h:39
Definition juce_Rectangle.h:67
Definition juce_ScaledImage.h:45
Definition juce_SparseSet.h:41
Definition juce_String.h:53
Definition juce_Viewport.h:47
Definition juce_Variant.h:42
int y
Definition inflate.c:1588
int g
Definition inflate.c:1573
unsigned x[BMAX+1]
Definition inflate.c:1586
static int int height
Definition pugl.h:1594
static int width
Definition pugl.h:1593
#define JUCE_API
Definition juce_StandardHeader.h:152
#define JUCE_PUBLIC_IN_DLL_BUILD(declaration)
Definition juce_StandardHeader.h:158
Definition carla_juce.cpp:31
NotificationType
Definition juce_NotificationType.h:32
@ sendNotification
Definition juce_NotificationType.h:34
Definition juce_Uuid.h:141
#define true
Definition ordinals.h:82
#define false
Definition ordinals.h:83
Definition juce_ListBox.h:170
Definition juce_MouseEvent.h:392
#define const
Definition zconf.h:137