Bug #5959 ยป 0001-Fix-example-source-viewer-WTreeView-click-handling.patch
examples/wt-homepage/ExampleSourceViewer.C | ||
---|---|---|
exampleView_->setAlternatingRowColors(false);
|
||
exampleView_->selectionChanged().connect
|
||
(this, &ExampleSourceViewer::showFile);
|
||
exampleView_->clicked().connect([this] (WModelIndex mi, WMouseEvent me) {
|
||
if (exampleView_->model()->rowCount(mi) > 0
|
||
&& !exampleView_->isExpanded(mi))
|
||
exampleView_->setExpanded(mi, true);
|
||
});
|
||
auto sourceView =
|
||
cpp14::make_unique<SourceView>(FileItem::FileNameRole,
|
||
... | ... | |
WModelIndex selected = *exampleView_->selectedIndexes().begin();
|
||
// expand a folder when clicked
|
||
if (exampleView_->model()->rowCount(selected) > 0
|
||
&& !exampleView_->isExpanded(selected))
|
||
exampleView_->setExpanded(selected, true);
|
||
// (for a file,) load data in source viewer
|
||
sourceView_->setIndex(selected);
|
||
}
|