summaryrefslogtreecommitdiffstats
path: root/seriestreewidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'seriestreewidget.cpp')
-rw-r--r--seriestreewidget.cpp56
1 files changed, 56 insertions, 0 deletions
diff --git a/seriestreewidget.cpp b/seriestreewidget.cpp
new file mode 100644
index 0000000..9395046
--- /dev/null
+++ b/seriestreewidget.cpp
@@ -0,0 +1,56 @@
+/*
+ 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 <QHBoxLayout>
+#include <QVBoxLayout>
+#include <QPushButton>
+#include <QLineEdit>
+#include <QLabel>
+#include <QSortFilterProxyModel>
+#include <QRegExp>
+
+#include "seriestreewidget.h"
+#include "smubermodel.h"
+#include "smtreemodel.h"
+#include "smubermodelsingleton.h"
+
+SeriesTreeWidget::SeriesTreeWidget(QWidget *parent) : QWidget(parent){
+ //filter bar
+ QLabel *l1 = new QLabel(tr("&Filter:"));
+ mFilterEdit = new QLineEdit;
+ l1->setBuddy(mFilterEdit);
+ mFilter = new QPushButton(tr("Filter"));
+ QHBoxLayout *filterLayout = new QHBoxLayout;
+ connect(mFilter, SIGNAL(clicked()), this, SLOT(filter()));
+ connect(mFilterEdit, SIGNAL(returnPressed()), this, SLOT(filter()));
+ filterLayout->addWidget(l1);
+ filterLayout->addWidget(mFilterEdit);
+ filterLayout->addWidget(mFilter);
+
+ //the view
+ mView = new SeriesTreeView;
+ mProxy = new QSortFilterProxyModel;
+ mProxy->setSourceModel(SmUberModelSingleton::instance()->seriesModel());
+ mView->setModel(mProxy);
+ mView->setSortingEnabled(true);
+ mView->setColumnHidden(1, true);
+ mView->setColumnHidden(2, true);
+ mView->resizeColumnToContents(0);
+
+ //layout
+ QVBoxLayout *mainLayout = new QVBoxLayout;
+ mainLayout->addLayout(filterLayout);
+ mainLayout->addWidget(mView);
+ setLayout(mainLayout);
+
+}
+
+void SeriesTreeWidget::filter(){
+ mProxy->setFilterRegExp(mFilterEdit->text());
+}
+
+SeriesTreeView::SeriesTreeView(QWidget *parent) : QTreeView(parent) {}