/* This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. */ #include #include #include #include #include #include #include #include #include "archiveview.h" #include "smglobals.h" ArchiveView::ArchiveView(QWidget *parent) : QWidget(parent) { mArchiveModel = static_cast(SmGlobals::instance()->model("ArchiveModel")); mTree = new ArchiveTree; mTree->setColumnHidden(ArchiveModel::SeriesId, true); mTree->setColumnHidden(ArchiveModel::SeriesPartId, true); mTree->setColumnHidden(ArchiveModel::SeriesPart, true); mTree->setColumnHidden(ArchiveModel::Type, true); mTree->setColumnHidden(ArchiveModel::Favorite, true); mTree->setColumnHidden(ArchiveModel::Subtitle, true); mTree->setColumnHidden(ArchiveModel::Count, true); mTree->resizeColumnToContents(ArchiveModel::Name); mSortOrder = new QComboBox; mSortOrder->addItems(mArchiveModel->availableOrders()); QLabel *l1 = new QLabel(tr("Filter")); mFilter = new QLineEdit; QPushButton *filter = new QPushButton(tr("Filter")); QPushButton *clear = new QPushButton(tr("Clear")); QHBoxLayout *filterLayout = new QHBoxLayout; filterLayout->addWidget(l1); filterLayout->addWidget(mFilter); filterLayout->addWidget(filter); filterLayout->addWidget(clear); QVBoxLayout *treeLayout = new QVBoxLayout; treeLayout->addWidget(mSortOrder); treeLayout->addLayout(filterLayout); treeLayout->addWidget(mTree); QWidget *treeWidget = new QWidget; treeWidget->setLayout(treeLayout); mFiles = new ArchiveFiles; QSplitter *treeSplitter = new QSplitter(Qt::Horizontal); treeSplitter->addWidget(treeWidget); treeSplitter->addWidget(mFiles); treeSplitter->setStretchFactor(0, 1); treeSplitter->setStretchFactor(1, 4); QHBoxLayout *mainLayout = new QHBoxLayout; mainLayout->addWidget(treeSplitter); setLayout(mainLayout); } ArchiveTree::ArchiveTree(QWidget *parent) : SmTreeView(parent) { mModel = static_cast(SmGlobals::instance()->model("ArchiveModel")); mProxy = new QSortFilterProxyModel; mProxy->setSourceModel(mModel); setModel(mProxy); } ArchiveFiles::ArchiveFiles(QWidget *parent) : SmTreeView(parent){ }