Currently just shows all unknown files.
tabwidget.cpp \
abstracttab.cpp \
tabs/mylisttab.cpp \
- tabs/reportstab.cpp
+ tabs/reportstab.cpp \
+ tabs/unknownfilestab.cpp \
+ registertabs.cpp
HEADERS += mainwindow.h \
databaseconnectiondialog.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)
ui->actionRenameFiles->setDisabled(true);
}
- TabWidget::registerTab<MyListTab>();
- TabWidget::registerTab<ReportsTab>();
+ registerTabs();
ui->tabWidget->setMainWindow(this);
ui->tabWidget->populateMenu(ui->menuView);
--- /dev/null
+#include "tabwidget.h"
+#include "tabs/mylisttab.h"
+#include "tabs/reportstab.h"
+#include "tabs/unknownfilestab.h"
+
+void registerTabs()
+{
+ TabWidget::registerTab<MyListTab>();
+ TabWidget::registerTab<ReportsTab>();
+ TabWidget::registerTab<UnknownFilesTab>();
+}
--- /dev/null
+#include "unknownfilestab.h"
+#include "ui_unknownfilestab.h"
+
+#include <QSqlRelationalTableModel>
+
+#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);
+}
--- /dev/null
+#ifndef UNKNOWNFILESTAB_H
+#define UNKNOWNFILESTAB_H
+
+#include "abstracttab.h"
+
+class QSqlRelationalTableModel;
+
+namespace Ui {
+class UnknownFilesTab;
+}
+
+class UnknownFilesTab : public AbstractTabBase<UnknownFilesTab>
+{
+ 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
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>UnknownFilesTab</class>
+ <widget class="QWidget" name="UnknownFilesTab">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>886</width>
+ <height>597</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Form</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="QTableView" name="unknownFilesView"/>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
class AbstractTab;
class MainWindow;
+void registerTabs();
+
class TabWidget : public QTabWidget
{
Q_OBJECT