コード例 #1
0
ファイル: search.cpp プロジェクト: krab/acquisitionplus
void Search::Activate(const Items &items, QTreeView *tree) {
    FromForm();
    FilterItems(items);

    sortFilter_->setSourceModel(model_.get());
    if (tree->model() == 0) {
        tree->setModel(sortFilter_.get());
    }

    // Set headers
    for (int i = 0; i < tree->header()->count(); i++) {
        tree->header()->setSectionHidden(i, hiddenColumns_.contains(i));
        int from = tree->header()->visualIndex(i);
        int to = i;
        if (columnsMap_.contains(i)) {
            to = columnsMap_.value(i);
        }
        if (to != from)
            tree->header()->swapSections(from, to);
    }

    // Set expanded
    if (!expandedHashs_.isEmpty()) {
        tree->blockSignals(true);
        tree->setUpdatesEnabled(false);
        for (int i = 0; i < sortFilter_->rowCount(); i++) {
            QModelIndex index = sortFilter_->index(i, 0);
            QString hash = sortFilter_->data(index, ItemsModel::HashRole).toString();
            if (expandedHashs_.contains(hash)) {
                tree->setExpanded(index, true);
            }
        }
        tree->setUpdatesEnabled(true);
        tree->blockSignals(false);
    }
}
コード例 #2
0
ファイル: search.cpp プロジェクト: Kahany/acquisition
void Search::Activate(const Items &items) {
    FromForm();
    FilterItems(items);
    view_->setModel(model_.get());
}