29template <
typename RowComponentType>
32 auto onFocus = [&rowComponent]
34 rowComponent.owner.scrollToEnsureRowIsOnscreen (rowComponent.row);
35 rowComponent.owner.selectRow (rowComponent.row);
38 auto onPress = [&rowComponent, onFocus]
44 auto onToggle = [&rowComponent]
46 rowComponent.owner.flipRowSelection (rowComponent.row);
56 #if ! JUCE_DISABLE_ASSERTIONS
75 if (
auto*
m =
owner.getModel())
79 void update (
const int newRow,
const bool nowSelected)
81 const auto rowHasChanged = (
row != newRow);
82 const auto selectionHasChanged = (
isSelected != nowSelected);
84 if (rowHasChanged || selectionHasChanged)
91 if (selectionHasChanged)
95 if (
auto*
m =
owner.getModel())
117 owner.selectRowsBasedOnModifierKeys (
row,
e.mods, isMouseUp);
119 if (
auto*
m =
owner.getModel())
120 m->listBoxItemClicked (
row,
e);
147 if (
auto*
m =
owner.getModel())
148 m->listBoxItemDoubleClicked (
row,
e);
153 if (
auto*
m =
owner.getModel())
160 rowsToDrag =
owner.getSelectedRows();
164 if (rowsToDrag.
size() > 0)
166 auto dragDescription =
m->getDragSourceDescription (rowsToDrag);
168 if (! (dragDescription.isVoid() || (dragDescription.isString() && dragDescription.toString().isEmpty())))
171 owner.startDragAndDrop (
e, rowsToDrag, dragDescription,
true);
178 if (
auto* vp =
owner.getViewport())
190 if (
auto*
m =
owner.getModel())
191 return m->getTooltipForRow (
row);
204 { std::make_unique<RowCellInterface> (*
this) }),
205 rowComponent (rowComponentToWrap)
228 state = state.withMultiSelectable();
230 state = state.withSelectable();
233 state = state.withSelected();
249 const auto index =
handler.rowComponent.row;
251 if (
handler.rowComponent.owner.hasAccessibleHeaderComponent())
263 return handler.rowComponent.owner.getAccessibilityHandler();
275 return std::make_unique<RowAccessibilityHandler> (*
this);
297 auto content = std::make_unique<Component>();
298 content->setWantsKeyboardFocus (
false);
325 const int num =
rows.size();
327 for (
int i = num; --
i >= 0;)
338 if (
auto*
m =
owner.getModel())
339 m->listWasScrolled();
349 auto newX = content.getX();
350 auto newY = content.getY();
352 auto newH =
owner.totalItems *
owner.getRowHeight();
357 content.setBounds (newX, newY, newW, newH);
366 auto rowH =
owner.getRowHeight();
372 auto w = content.getWidth();
375 rows.removeRange (numNeeded,
rows.size());
377 while (numNeeded >
rows.size())
380 content.addAndMakeVisible (newRow);
389 for (
int i = 0;
i < numNeeded; ++
i)
391 const int row =
i + startIndex;
395 rowComp->setBounds (0,
row * rowH,
w, rowH);
401 if (
owner.headerComponent !=
nullptr)
402 owner.headerComponent->setBounds (
owner.outlineThickness + content.getX(),
403 owner.outlineThickness,
406 owner.headerComponent->getHeight());
409 void selectRow (
const int row,
const int rowH,
const bool dontScroll,
410 const int lastSelectedRow,
const int totalRows,
const bool isMouseClick)
422 if (
row >= lastSelectedRow + rowsOnScreen
423 && rowsOnScreen < totalRows - 1
465 if ((
key.getModifiers().getRawFlags() & ~allowableMods) == 0)
503 owner.addMouseListener (
this,
true);
508 owner.removeMouseListener (
this);
513 auto pos =
e.getEventRelativeTo (&
owner).position.toInt();
514 owner.selectRow (
owner.getRowContainingPosition (pos.x, pos.y),
true);
551 #if ! JUCE_DISABLE_ASSERTIONS
558 if (
model != newModel)
608 viewport->updateVisibleArea (
false);
628 bool selectionChanged =
false;
634 selectionChanged =
true;
640 if (selectionChanged)
642 if (
model !=
nullptr)
658 bool deselectOthersFirst,
664 deselectOthersFirst =
true;
671 if (deselectOthersFirst)
690 if (deselectOthersFirst)
745 firstRow =
jlimit (0,
jmax (0, numRows), firstRow);
746 lastRow =
jlimit (0,
jmax (0, numRows), lastRow);
749 jmax (firstRow, lastRow) + 1 });
751 selected.removeRange ({ lastRow, lastRow + 1 });
776 if (
model !=
nullptr)
786 const bool isMouseUpEvent)
847 if (
auto* listRowComp =
viewport->getComponentForRowIfOnscreen (
row))
848 return listRowComp->customComponent.get();
855 return viewport->getRowNumberOfComponent (rowComponent);
862 if (relativeToComponentTopLeft)
871 auto offscreen =
viewport->getViewedComponent()->getHeight() -
viewport->getHeight();
879 auto offscreen =
viewport->getViewedComponent()->getHeight() -
viewport->getHeight();
881 return offscreen > 0 ?
viewport->getViewPositionY() / (double) offscreen
904 &&
key.getModifiers().isShiftDown();
950 if (
model !=
nullptr)
956 if (
model !=
nullptr)
985 bool eventWasUsed =
false;
1007 if (
e.mouseWasClicked() &&
model !=
nullptr)
1008 model->backgroundClicked (
e);
1081 if (
auto* rowComp =
viewport->getComponentForRowIfOnscreen (firstRow +
i))
1085 imageArea = imageArea.
getUnion ({ pos.x, pos.y, rowComp->getWidth(), rowComp->getHeight() });
1091 imageX = imageArea.
getX();
1092 imageY = imageArea.
getY();
1094 const auto additionalScale = 2.0f;
1105 if (
auto* rowComp =
viewport->getComponentForRowIfOnscreen (firstRow +
i))
1112 if (
g.reduceClipRegion (rowComp->getLocalBounds() * rowScale))
1114 g.beginTransparencyLayer (0.6f);
1116 rowComp->paintEntireComponent (
g,
false);
1117 g.endTransparencyLayer();
1123 return { snapshot, additionalScale };
1133 auto p =
Point<int> (
x,
y) -
e.getEventRelativeTo (
this).position.toInt();
1134 dragContainer->startDragging (dragDescription,
this, dragImage, allowDraggingToOtherWindows, &
p, &
e.source);
1149 explicit TableInterface (
ListBox& listBoxToWrap)
1150 : listBox (listBoxToWrap)
1154 int getNumRows()
const override
1156 listBox.checkModelPtrIsValid();
1158 if (listBox.model ==
nullptr)
1161 const auto numRows = listBox.model->getNumRows();
1163 if (listBox.hasAccessibleHeaderComponent())
1169 int getNumColumns()
const override
1176 if (
auto* headerHandler = getHeaderHandler())
1179 return headerHandler;
1184 if (
auto* rowComponent = listBox.viewport->getComponentForRow (
row))
1185 return rowComponent->getAccessibilityHandler();
1193 if (listBox.hasAccessibleHeaderComponent())
1194 return listBox.headerComponent->getAccessibilityHandler();
1204 return std::make_unique<AccessibilityHandler> (*
this,
1214 jassert (existingComponentToUpdate ==
nullptr);
Type jmin(const Type a, const Type b)
Definition MathsFunctions.h:60
Type jmax(const Type a, const Type b)
Definition MathsFunctions.h:48
#define noexcept
Definition DistrhoDefines.h:72
Definition juce_AccessibilityActions.h:73
AccessibilityActions & addAction(AccessibilityActionType type, std::function< void()> actionCallback)
Definition juce_AccessibilityActions.h:88
Definition juce_AccessibilityCellInterface.h:37
Definition juce_AccessibilityHandler.h:41
virtual AccessibleState getCurrentState() const
Definition juce_AccessibilityHandler.cpp:75
AccessibilityHandler(Component &componentToWrap, AccessibilityRole accessibilityRole, AccessibilityActions actions={}, Interfaces interfaces={})
Definition juce_AccessibilityHandler.cpp:55
Definition juce_AccessibilityTableInterface.h:37
Definition juce_AccessibilityState.h:39
JUCE_NODISCARD AccessibleState withIgnored() const noexcept
Definition juce_AccessibilityState.h:95
Definition juce_BorderSize.h:42
Definition juce_Component.h:36
bool isVisible() const noexcept
Definition juce_Component.h:122
bool isOpaque() const noexcept
Definition juce_Component.cpp:843
void setFocusContainerType(FocusContainerType containerType) noexcept
Definition juce_Component.cpp:2862
int getHeight() const noexcept
Definition juce_Component.h:274
Point< int > getLocalPoint(const Component *sourceComponent, Point< int > pointRelativeToSourceComponent) const
Definition juce_Component.cpp:1136
static float JUCE_CALLTYPE getApproximateScaleFactorForComponent(const Component *targetComponent)
Definition juce_Component.cpp:1383
void addAndMakeVisible(Component *child, int zOrder=-1)
Definition juce_Component.cpp:1554
AccessibilityHandler * getAccessibilityHandler()
Definition juce_Component.cpp:3302
void setOpaque(bool shouldBeOpaque)
Definition juce_Component.cpp:829
void setMouseCursor(const MouseCursor &cursorType)
Definition juce_Component.cpp:1859
void repaint()
Definition juce_Component.cpp:1917
Component() noexcept
Definition juce_Component.cpp:517
@ none
Definition juce_Component.h:1283
@ focusContainer
Definition juce_Component.h:1295
void setWantsKeyboardFocus(bool wantsFocus) noexcept
Definition juce_Component.cpp:2842
Colour findColour(int colourID, bool inheritFromParent=false) const
Definition juce_Component.cpp:2219
static std::unique_ptr< AccessibilityHandler > createIgnoredAccessibilityHandler(Component &)
Definition juce_Component.cpp:3292
int getWidth() const noexcept
Definition juce_Component.h:271
void mouseWheelMove(const MouseEvent &event, const MouseWheelDetails &wheel) override
Definition juce_Component.cpp:2303
bool isEnabled() const noexcept
Definition juce_Component.cpp:3104
Rectangle< int > getLocalBounds() const noexcept
Definition juce_Component.cpp:2283
void invalidateAccessibilityHandler()
Definition juce_Component.cpp:3297
static DragAndDropContainer * findParentDragContainerFor(Component *childComponent)
Definition juce_DragAndDropContainer.cpp:547
Definition juce_GraphicsContext.h:45
Definition juce_Image.h:58
@ ARGB
Definition juce_Image.h:67
Definition juce_KeyPress.h:40
static const int homeKey
Definition juce_KeyPress.h:204
static const int upKey
Definition juce_KeyPress.h:198
static bool isKeyCurrentlyDown(int keyCode)
Definition juce_linux_Windowing.cpp:804
static const int endKey
Definition juce_KeyPress.h:205
static const int deleteKey
Definition juce_KeyPress.h:194
static const int downKey
Definition juce_KeyPress.h:199
static const int returnKey
Definition juce_KeyPress.h:191
static const int pageUpKey
Definition juce_KeyPress.h:202
static const int pageDownKey
Definition juce_KeyPress.h:203
static const int backspaceKey
Definition juce_KeyPress.h:195
Definition juce_ListBox.cpp:291
void updateContents()
Definition juce_ListBox.cpp:363
bool hasUpdated
Definition juce_ListBox.cpp:493
void paint(Graphics &g) override
Definition juce_ListBox.cpp:453
int firstWholeIndex
Definition juce_ListBox.cpp:492
void scrollToEnsureRowIsOnscreen(const int row, const int rowH)
Definition juce_ListBox.cpp:440
std::unique_ptr< AccessibilityHandler > createAccessibilityHandler() override
Definition juce_ListBox.cpp:477
int lastWholeIndex
Definition juce_ListBox.cpp:492
ListViewport(ListBox &lb)
Definition juce_ListBox.cpp:293
void updateVisibleArea(const bool makeSureItUpdatesContent)
Definition juce_ListBox.cpp:344
void selectRow(const int row, const int rowH, const bool dontScroll, const int lastSelectedRow, const int totalRows, const bool isMouseClick)
Definition juce_ListBox.cpp:409
int firstIndex
Definition juce_ListBox.cpp:492
void timerCallback() override
Definition juce_ListBox.cpp:482
bool keyPressed(const KeyPress &key) override
Definition juce_ListBox.cpp:459
RowComponent * getComponentForRowWrapped(int row) const noexcept
Definition juce_ListBox.cpp:311
RowComponent * getComponentForRowIfOnscreen(int row) const noexcept
Definition juce_ListBox.cpp:316
OwnedArray< RowComponent > rows
Definition juce_ListBox.cpp:491
void visibleAreaChanged(const Rectangle< int > &) override
Definition juce_ListBox.cpp:334
int getRowNumberOfComponent(Component *const rowComponent) const noexcept
Definition juce_ListBox.cpp:322
ListBox & owner
Definition juce_ListBox.cpp:490
RowComponent * getComponentForRow(int row) const noexcept
Definition juce_ListBox.cpp:303
int getColumnIndex() const override
Definition juce_ListBox.cpp:244
RowCellInterface(RowAccessibilityHandler &h)
Definition juce_ListBox.cpp:242
int getRowSpan() const override
Definition juce_ListBox.cpp:257
const AccessibilityHandler * getTableHandler() const override
Definition juce_ListBox.cpp:261
int getColumnSpan() const override
Definition juce_ListBox.cpp:245
int getDisclosureLevel() const override
Definition juce_ListBox.cpp:259
RowAccessibilityHandler & handler
Definition juce_ListBox.cpp:267
int getRowIndex() const override
Definition juce_ListBox.cpp:247
String getTitle() const override
Definition juce_ListBox.cpp:209
RowAccessibilityHandler(RowComponent &rowComponentToWrap)
Definition juce_ListBox.cpp:200
String getHelp() const override
Definition juce_ListBox.cpp:217
AccessibleState getCurrentState() const override
Definition juce_ListBox.cpp:219
RowComponent & rowComponent
Definition juce_ListBox.cpp:270
Definition juce_ListBox.cpp:69
void update(const int newRow, const bool nowSelected)
Definition juce_ListBox.cpp:79
void performSelection(const MouseEvent &e, bool isMouseUp)
Definition juce_ListBox.cpp:115
void resized() override
Definition juce_ListBox.cpp:182
void paint(Graphics &g) override
Definition juce_ListBox.cpp:73
void mouseDoubleClick(const MouseEvent &e) override
Definition juce_ListBox.cpp:144
std::unique_ptr< Component > customComponent
Definition juce_ListBox.cpp:280
void mouseDown(const MouseEvent &e) override
Definition juce_ListBox.cpp:123
String getTooltip() override
Definition juce_ListBox.cpp:188
bool isDragging
Definition juce_ListBox.cpp:282
int row
Definition juce_ListBox.cpp:281
bool selectRowOnMouseUp
Definition juce_ListBox.cpp:282
bool isSelected
Definition juce_ListBox.cpp:282
void mouseUp(const MouseEvent &e) override
Definition juce_ListBox.cpp:138
void mouseDrag(const MouseEvent &e) override
Definition juce_ListBox.cpp:151
std::unique_ptr< AccessibilityHandler > createAccessibilityHandler() override
Definition juce_ListBox.cpp:273
bool isDraggingToScroll
Definition juce_ListBox.cpp:282
ListBox & owner
Definition juce_ListBox.cpp:279
RowComponent(ListBox &lb)
Definition juce_ListBox.cpp:71
Definition juce_ListBox.h:189
bool multipleSelection
Definition juce_ListBox.h:617
void setMultipleSelectionEnabled(bool shouldBeEnabled) noexcept
Definition juce_ListBox.cpp:566
void deselectRow(int rowNumber)
Definition juce_ListBox.cpp:696
int getRowContainingPosition(int x, int y) const noexcept
Definition juce_ListBox.cpp:824
int getRowNumberOfComponent(Component *rowComponent) const noexcept
Definition juce_ListBox.cpp:853
ListBox(const String &componentName=String(), ListBoxModel *model=nullptr)
Definition juce_ListBox.cpp:528
bool keyStateChanged(bool isKeyDown) override
Definition juce_ListBox.cpp:971
int getVisibleRowWidth() const noexcept
Definition juce_ListBox.cpp:885
int rowHeight
Definition juce_ListBox.h:614
void parentHierarchyChanged() override
Definition juce_ListBox.cpp:1042
void deselectAllRows()
Definition juce_ListBox.cpp:765
void startDragAndDrop(const MouseEvent &, const SparseSet< int > &rowsToDrag, const var &dragDescription, bool allowDraggingToOtherWindows)
Definition juce_ListBox.cpp:1126
void setRowHeight(int newHeight)
Definition juce_ListBox.cpp:1012
int getSelectedRow(int index=0) const
Definition juce_ListBox.cpp:807
virtual ScaledImage createSnapshotOfRows(const SparseSet< int > &rows, int &x, int &y)
Definition juce_ListBox.cpp:1072
void scrollToEnsureRowIsOnscreen(int row)
Definition juce_ListBox.cpp:890
bool isRowSelected(int rowNumber) const
Definition juce_ListBox.cpp:813
void paint(Graphics &) override
Definition juce_ListBox.cpp:584
std::unique_ptr< Component > headerComponent
Definition juce_ListBox.h:611
void setMouseMoveSelectsRows(bool shouldSelect)
Definition juce_ListBox.cpp:570
SparseSet< int > selected
Definition juce_ListBox.h:613
int getLastRowSelected() const
Definition juce_ListBox.cpp:818
bool alwaysFlipSelection
Definition juce_ListBox.h:617
void mouseUp(const MouseEvent &) override
Definition juce_ListBox.cpp:1003
~ListBox() override
Definition juce_ListBox.cpp:541
ScrollBar & getVerticalScrollBar() const noexcept
Definition juce_ListBox.cpp:1032
std::unique_ptr< MouseListener > mouseMoveSelector
Definition juce_ListBox.h:612
Viewport * getViewport() const noexcept
Definition juce_ListBox.cpp:616
void setMinimumContentWidth(int newMinimumWidth)
Definition juce_ListBox.cpp:1024
void setOutlineThickness(int outlineThickness)
Definition juce_ListBox.cpp:1047
void selectRowInternal(int rowNumber, bool dontScrollToShowThisRow, bool deselectOthersFirst, bool isMouseClick)
Definition juce_ListBox.cpp:656
bool hasDoneInitialUpdate
Definition juce_ListBox.h:617
void colourChanged() override
Definition juce_ListBox.cpp:1035
void selectRangeOfRows(int firstRow, int lastRow, bool dontScrollToShowThisRange=false)
Definition juce_ListBox.cpp:740
ListBoxModel * model
Definition juce_ListBox.h:609
void checkModelPtrIsValid() const
Definition juce_ListBox.cpp:54
void visibilityChanged() override
Definition juce_ListBox.cpp:611
int getInsertionIndexForPosition(int x, int y) const noexcept
Definition juce_ListBox.cpp:837
void repaintRow(int rowNumber) noexcept
Definition juce_ListBox.cpp:1067
void setSelectedRows(const SparseSet< int > &setOfRowsToBeSelected, NotificationType sendNotificationEventToModel=sendNotification)
Definition juce_ListBox.cpp:715
void setModel(ListBoxModel *newModel)
Definition juce_ListBox.cpp:556
Component * getComponentForRowNumber(int rowNumber) const noexcept
Definition juce_ListBox.cpp:845
bool selectOnMouseDown
Definition juce_ListBox.h:617
void setClickingTogglesRowSelection(bool flipRowSelection) noexcept
Definition juce_ListBox.cpp:567
@ backgroundColourId
Definition juce_ListBox.h:494
@ outlineColourId
Definition juce_ListBox.h:496
int lastRowSelected
Definition juce_ListBox.h:616
void setRowSelectedOnMouseDown(bool isSelectedOnMouseDown) noexcept
Definition juce_ListBox.cpp:568
void paintOverChildren(Graphics &) override
Definition juce_ListBox.cpp:592
int getVisibleContentWidth() const noexcept
Definition juce_ListBox.cpp:1030
int minimumRowWidth
Definition juce_ListBox.h:614
ScrollBar & getHorizontalScrollBar() const noexcept
Definition juce_ListBox.cpp:1033
bool hasAccessibleHeaderComponent() const
Definition juce_ListBox.cpp:1061
void flipRowSelection(int rowNumber)
Definition juce_ListBox.cpp:757
int outlineThickness
Definition juce_ListBox.h:615
Rectangle< int > getRowPosition(int rowNumber, bool relativeToComponentTopLeft) const noexcept
Definition juce_ListBox.cpp:858
std::unique_ptr< ListViewport > viewport
Definition juce_ListBox.h:610
double getVerticalPosition() const
Definition juce_ListBox.cpp:877
bool keyPressed(const KeyPress &) override
Definition juce_ListBox.cpp:896
int getNumRowsOnScreen() const noexcept
Definition juce_ListBox.cpp:1019
void updateContent()
Definition juce_ListBox.cpp:622
int getNumSelectedRows() const
Definition juce_ListBox.cpp:802
int getRowHeight() const noexcept
Definition juce_ListBox.h:475
void mouseWheelMove(const MouseEvent &, const MouseWheelDetails &) override
Definition juce_ListBox.cpp:983
void setHeaderComponent(std::unique_ptr< Component > newHeaderComponent)
Definition juce_ListBox.cpp:1053
SparseSet< int > getSelectedRows() const
Definition juce_ListBox.cpp:735
void selectRow(int rowNumber, bool dontScrollToShowThisRow=false, bool deselectOthersFirst=true)
Definition juce_ListBox.cpp:651
void setVerticalPosition(double newProportion)
Definition juce_ListBox.cpp:869
int totalItems
Definition juce_ListBox.h:614
void assignModelPtr(ListBoxModel *)
Definition juce_ListBox.cpp:547
void resized() override
Definition juce_ListBox.cpp:601
std::weak_ptr< ListBoxModel::Empty > weakModelPtr
Definition juce_ListBox.h:620
void selectRowsBasedOnModifierKeys(int rowThatWasClickedOn, ModifierKeys modifiers, bool isMouseUpEvent)
Definition juce_ListBox.cpp:784
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 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 void listBoxItemClicked(int row, const MouseEvent &)
Definition juce_ListBox.cpp:1219
virtual void listWasScrolled()
Definition juce_ListBox.cpp:1225
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
bool isCommandDown() const noexcept
Definition juce_ModifierKeys.h:68
bool isPopupMenu() const noexcept
Definition juce_ModifierKeys.h:78
bool isShiftDown() const noexcept
Definition juce_ModifierKeys.h:99
@ commandModifier
Definition juce_ModifierKeys.h:147
@ shiftModifier
Definition juce_ModifierKeys.h:121
Definition juce_MouseCursor.h:39
@ NormalCursor
Definition juce_MouseCursor.h:48
Definition juce_MouseEvent.h:39
Definition juce_MouseListener.h:39
Definition juce_OwnedArray.h:51
Definition juce_Point.h:42
static JUCE_NODISCARD Range withStartAndLength(const ValueType startValue, const ValueType length) noexcept
Definition juce_Range.h:66
Definition juce_Rectangle.h:67
Point< ValueType > getPosition() const noexcept
Definition juce_Rectangle.h:161
Rectangle getIntersection(Rectangle other) const noexcept
Definition juce_Rectangle.h:664
ValueType getHeight() const noexcept
Definition juce_Rectangle.h:136
ValueType getX() const noexcept
Definition juce_Rectangle.h:127
Rectangle getUnion(Rectangle other) const noexcept
Definition juce_Rectangle.h:719
ValueType getWidth() const noexcept
Definition juce_Rectangle.h:133
ValueType getY() const noexcept
Definition juce_Rectangle.h:130
Definition juce_ScaledImage.h:45
Definition juce_SparseSet.h:41
Type size() const noexcept
Definition juce_SparseSet.h:67
void addRange(Range< Type > range)
Definition juce_SparseSet.h:143
bool contains(Type valueToLookFor) const noexcept
Definition juce_SparseSet.h:100
Definition juce_String.h:53
void stopTimer() noexcept
Definition juce_Timer.cpp:357
Timer() noexcept
Definition juce_Timer.cpp:316
void startTimer(int intervalInMilliseconds) noexcept
Definition juce_Timer.cpp:332
Definition juce_Viewport.h:47
Component * getViewedComponent() const noexcept
Definition juce_Viewport.h:83
int getViewPositionX() const noexcept
Definition juce_Viewport.h:145
int getMaximumVisibleHeight() const
Definition juce_Viewport.cpp:247
bool keyPressed(const KeyPress &) override
Definition juce_Viewport.cpp:621
void setViewPosition(int xPixelsOffset, int yPixelsOffset)
Definition juce_Viewport.cpp:264
int getViewPositionY() const noexcept
Definition juce_Viewport.h:150
int getMaximumVisibleWidth() const
Definition juce_Viewport.cpp:246
Viewport(const String &componentName=String())
Definition juce_Viewport.cpp:160
void setViewedComponent(Component *newViewedComponent, bool deleteComponentWhenNoLongerNeeded=true)
Definition juce_Viewport.cpp:207
static bool respondsToKey(const KeyPress &)
Definition juce_Viewport.cpp:636
Definition juce_Variant.h:42
* e
Definition inflate.c:1404
UINT_D64 w
Definition inflate.c:942
unsigned * m
Definition inflate.c:1559
int y
Definition inflate.c:1588
int g
Definition inflate.c:1573
register unsigned i
Definition inflate.c:1575
unsigned x[BMAX+1]
Definition inflate.c:1586
static const char * name
Definition pugl.h:1582
Definition carla_juce.cpp:31
constexpr Type jmin(Type a, Type b)
Definition juce_MathsFunctions.h:106
constexpr Type jmax(Type a, Type b)
Definition juce_MathsFunctions.h:94
Type jlimit(Type lowerLimit, Type upperLimit, Type valueToConstrain) noexcept
Definition juce_MathsFunctions.h:262
static bool viewportWouldScrollOnEvent(const Viewport *vp, const MouseInputSource &src) noexcept
Definition juce_Viewport.cpp:29
@ rowSelectionChanged
Definition juce_AccessibilityEvent.h:78
@ structureChanged
Definition juce_AccessibilityEvent.h:57
NotificationType
Definition juce_NotificationType.h:32
@ sendNotification
Definition juce_NotificationType.h:34
void ignoreUnused(Types &&...) noexcept
Definition juce_MathsFunctions.h:333
static AccessibilityActions getListRowAccessibilityActions(RowComponentType &rowComponent)
Definition juce_ListBox.cpp:30
@ focus
Definition juce_AccessibilityActions.h:54
@ toggle
Definition juce_AccessibilityActions.h:47
@ press
Definition juce_AccessibilityActions.h:40
bool isPositiveAndBelow(Type1 valueToTest, Type2 upperLimit) noexcept
Definition juce_MathsFunctions.h:279
int roundToInt(const FloatType value) noexcept
Definition juce_MathsFunctions.h:465
AccessibilityRole
Definition juce_AccessibilityRole.h:37
@ list
Definition juce_AccessibilityRole.h:56
@ listItem
Definition juce_AccessibilityRole.h:57
@ row
Definition juce_AccessibilityRole.h:53
Definition juce_AccessibilityHandler.h:49
Definition juce_ListBox.cpp:500
ListBoxMouseMoveSelector(ListBox &lb)
Definition juce_ListBox.cpp:501
void mouseExit(const MouseEvent &e) override
Definition juce_ListBox.cpp:517
ListBox & owner
Definition juce_ListBox.cpp:522
~ListBoxMouseMoveSelector() override
Definition juce_ListBox.cpp:506
void mouseMove(const MouseEvent &e) override
Definition juce_ListBox.cpp:511
Definition juce_MouseEvent.h:392
float deltaY
Definition juce_MouseEvent.h:410
float deltaX
Definition juce_MouseEvent.h:401
uch * p
Definition crypt.c:594
ZCONST char * key
Definition crypt.c:587
uch h[RAND_HEAD_LEN]
Definition crypt.c:459
void handler(int signal)
Definition fileio.c:1632
#define const
Definition zconf.h:137