29 : QItemSelectionModel(view_model, parent)
32 connect(view_model, &ModelView::ViewModel::modelAboutToBeReset, [
this]() { clearSelection(); });
44 QModelIndexList indexes;
45 for (
auto item : items)
53 QItemSelection selection(indexes.front(), indexes.back());
54 auto flags = QItemSelectionModel::SelectCurrent | QItemSelectionModel::Rows;
55 select(selection, flags);
79 return static_cast<CanvasItem*
>(item->parent());
89 return graphs.empty() ? nullptr : graphs.at(0);
96 return ModelView::Utils::CastedItems<CanvasItem>(
selectedItems());
101 return ModelView::Utils::CastedItems<ModelView::GraphItem>(
selectedItems());
One-dimensional graph representation of Data1DItem.
The main object representing an editable/displayable/serializable entity.
Main class to represent content of SessionModel in Qt's trees and tables.
QModelIndexList indexOfSessionItem(const SessionItem *item) const
Returns list of model indices representing given SessionItem.
Holds a collection of GraphItem's for simultaneous plotting, as well as all information related to pl...
CanvasItem * activeCanvas() const
Returns active canvas.
void selectItem(ModelView::SessionItem *item)
Set the selection on a single item.
std::vector< CanvasItem * > selectedCanvas() const
Returns vector of currently slected canvas.
const ModelView::ViewModel * viewModel() const
void selectItems(std::vector< ModelView::SessionItem * > items)
Set the selection on a list of items.
ModelView::GraphItem * selectedGraph() const
Returns currently selected graph. If more than one graph is selected, will return first one.
std::vector< ModelView::SessionItem * > selectedItems() const
Return the selected items.
DataSelectionModel(ModelView::ViewModel *view_model, QObject *parent=nullptr)
The constructor.
std::vector< ModelView::GraphItem * > selectedGraphs() const
const model_type GraphItemType
MVVM_VIEWMODEL_EXPORT std::vector< SessionItem * > ItemsFromIndex(const QModelIndexList &index_list)
Returns vector of underlying SessionItem's for given index list.
MVVM_MODEL_EXPORT std::vector< SessionItem * > UniqueItems(const std::vector< SessionItem * > &items)
Returns vector with duplicates and 'nullptr' filtered out.
const std::string CanvasItemType
Based on Qt example "codeeditor" Copyright (C) 2016 The Qt Company Ltd.