void ListBox::selectRowInternal (const int row, bool dontScroll, bool deselectOthersFirst, bool isMouseClick) { if (! multipleSelection) deselectOthersFirst = true; if ((! isRowSelected (row)) || (deselectOthersFirst && getNumSelectedRows() > 1)) { if (isPositiveAndBelow (row, totalItems)) { if (deselectOthersFirst) selected.clear(); selected.addRange (Range<int> (row, row + 1)); if (getHeight() == 0 || getWidth() == 0) dontScroll = true; viewport->selectRow (row, getRowHeight(), dontScroll, lastRowSelected, totalItems, isMouseClick); lastRowSelected = row; model->selectedRowsChanged (row); } else { if (deselectOthersFirst) deselectAllRows(); } } }
//============================================================================== void FileListComponent::changeListenerCallback (ChangeBroadcaster*) { updateContent(); if (lastDirectory != fileList.getDirectory()) { lastDirectory = fileList.getDirectory(); deselectAllRows(); } }
void FileListComponent::setSelectedFile (const File& f) { for (int i = fileList.getNumFiles(); --i >= 0;) { if (fileList.getFile(i) == f) { selectRow (i); return; } } deselectAllRows(); }
//============================================================================== void FileListComponent::changeListenerCallback (ChangeBroadcaster*) { updateContent(); if (lastDirectory != directoryContentsList.getDirectory()) { fileWaitingToBeSelected = File(); lastDirectory = directoryContentsList.getDirectory(); deselectAllRows(); } if (fileWaitingToBeSelected != File()) setSelectedFile (fileWaitingToBeSelected); }
void FileListComponent::setSelectedFile (const File& f) { for (int i = directoryContentsList.getNumFiles(); --i >= 0;) { if (directoryContentsList.getFile(i) == f) { fileWaitingToBeSelected = File(); selectRow (i); return; } } deselectAllRows(); fileWaitingToBeSelected = f; }
void FileListComponent::deselectAllFiles() { deselectAllRows(); }