From 42bd41fdbb9c9182d5483c6915119f3e4fcf8430 Mon Sep 17 00:00:00 2001 From: APTX Date: Tue, 30 Apr 2013 16:43:53 +0200 Subject: [PATCH] Add Unknown FilesTab. Currently just shows all unknown files. --- .../localmylist-management.pro | 10 ++-- localmylist-management/mainwindow.cpp | 3 +- localmylist-management/registertabs.cpp | 11 ++++ .../tabs/unknownfilestab.cpp | 50 +++++++++++++++++++ localmylist-management/tabs/unknownfilestab.h | 31 ++++++++++++ .../tabs/unknownfilestab.ui | 33 ++++++++++++ localmylist-management/tabwidget.h | 2 + 7 files changed, 135 insertions(+), 5 deletions(-) create mode 100644 localmylist-management/registertabs.cpp create mode 100644 localmylist-management/tabs/unknownfilestab.cpp create mode 100644 localmylist-management/tabs/unknownfilestab.h create mode 100644 localmylist-management/tabs/unknownfilestab.ui diff --git a/localmylist-management/localmylist-management.pro b/localmylist-management/localmylist-management.pro index 8921afc..76e1e9a 100644 --- a/localmylist-management/localmylist-management.pro +++ b/localmylist-management/localmylist-management.pro @@ -20,7 +20,9 @@ SOURCES += main.cpp\ tabwidget.cpp \ abstracttab.cpp \ tabs/mylisttab.cpp \ - tabs/reportstab.cpp + tabs/reportstab.cpp \ + tabs/unknownfilestab.cpp \ + registertabs.cpp HEADERS += mainwindow.h \ databaseconnectiondialog.h \ @@ -32,12 +34,14 @@ HEADERS += mainwindow.h \ tabwidget.h \ abstracttab.h \ tabs/mylisttab.h \ - tabs/reportstab.h + tabs/reportstab.h \ + tabs/unknownfilestab.h FORMS += mainwindow.ui \ databaseconnectiondialog.ui \ tabs/mylisttab.ui \ - tabs/reportstab.ui + tabs/reportstab.ui \ + tabs/unknownfilestab.ui include(../localmylist.pri) include(qtsingleapplication/qtsingleapplication.pri) diff --git a/localmylist-management/mainwindow.cpp b/localmylist-management/mainwindow.cpp index 8944e7e..89ba925 100644 --- a/localmylist-management/mainwindow.cpp +++ b/localmylist-management/mainwindow.cpp @@ -77,8 +77,7 @@ MainWindow::MainWindow(QWidget *parent) : ui->actionRenameFiles->setDisabled(true); } - TabWidget::registerTab(); - TabWidget::registerTab(); + registerTabs(); ui->tabWidget->setMainWindow(this); ui->tabWidget->populateMenu(ui->menuView); diff --git a/localmylist-management/registertabs.cpp b/localmylist-management/registertabs.cpp new file mode 100644 index 0000000..9ec593d --- /dev/null +++ b/localmylist-management/registertabs.cpp @@ -0,0 +1,11 @@ +#include "tabwidget.h" +#include "tabs/mylisttab.h" +#include "tabs/reportstab.h" +#include "tabs/unknownfilestab.h" + +void registerTabs() +{ + TabWidget::registerTab(); + TabWidget::registerTab(); + TabWidget::registerTab(); +} diff --git a/localmylist-management/tabs/unknownfilestab.cpp b/localmylist-management/tabs/unknownfilestab.cpp new file mode 100644 index 0000000..4667ec8 --- /dev/null +++ b/localmylist-management/tabs/unknownfilestab.cpp @@ -0,0 +1,50 @@ +#include "unknownfilestab.h" +#include "ui_unknownfilestab.h" + +#include + +#include "mylist.h" +#include "database.h" + +UnknownFilesTab::UnknownFilesTab(QWidget *parent) : + AbstractTabBase(parent), + ui(new Ui::UnknownFilesTab) +{ + ui->setupUi(this); + m_label = name(); +} + +UnknownFilesTab::~UnknownFilesTab() +{ + delete ui; +} + +QString UnknownFilesTab::staticId() +{ + return "unknownfiles"; +} + +QString UnknownFilesTab::name() +{ + return tr("Unknown Files"); +} + +void UnknownFilesTab::init() +{ + model = new QSqlRelationalTableModel(this, LocalMyList::instance()->database()->connection()); + model->setTable("unknown_file"); + ui->unknownFilesView->setEditTriggers(QAbstractItemView::NoEditTriggers); + ui->unknownFilesView->setSelectionBehavior(QAbstractItemView::SelectRows); + + model->setRelation(2, QSqlRelation("host", "host_id", "name")); + model->setHeaderData(0, Qt::Horizontal, tr("ed2k")); + model->setHeaderData(1, Qt::Horizontal, tr("Size")); + model->setHeaderData(2, Qt::Horizontal, tr("Host")); + model->setHeaderData(3, Qt::Horizontal, tr("Path")); +} + +void UnknownFilesTab::activate() +{ + model->select(); + ui->unknownFilesView->setModel(model); +} diff --git a/localmylist-management/tabs/unknownfilestab.h b/localmylist-management/tabs/unknownfilestab.h new file mode 100644 index 0000000..226c793 --- /dev/null +++ b/localmylist-management/tabs/unknownfilestab.h @@ -0,0 +1,31 @@ +#ifndef UNKNOWNFILESTAB_H +#define UNKNOWNFILESTAB_H + +#include "abstracttab.h" + +class QSqlRelationalTableModel; + +namespace Ui { +class UnknownFilesTab; +} + +class UnknownFilesTab : public AbstractTabBase +{ + Q_OBJECT +public: + explicit UnknownFilesTab(QWidget *parent = 0); + ~UnknownFilesTab(); + + static QString staticId(); + static QString name(); + + void init(); + void activate(); + +private: + Ui::UnknownFilesTab *ui; + + QSqlRelationalTableModel *model; +}; + +#endif // UNKNOWNFILESTAB_H diff --git a/localmylist-management/tabs/unknownfilestab.ui b/localmylist-management/tabs/unknownfilestab.ui new file mode 100644 index 0000000..a9a291a --- /dev/null +++ b/localmylist-management/tabs/unknownfilestab.ui @@ -0,0 +1,33 @@ + + + UnknownFilesTab + + + + 0 + 0 + 886 + 597 + + + + Form + + + + 0 + + + 0 + + + 0 + + + + + + + + + diff --git a/localmylist-management/tabwidget.h b/localmylist-management/tabwidget.h index 9fdf2f6..eb433ed 100644 --- a/localmylist-management/tabwidget.h +++ b/localmylist-management/tabwidget.h @@ -12,6 +12,8 @@ class QSettings; class AbstractTab; class MainWindow; +void registerTabs(); + class TabWidget : public QTabWidget { Q_OBJECT -- 2.52.0