]> Some of my projects - localmylist.git/commitdiff
Add Unknown FilesTab.
authorAPTX <marek321@gmail.com>
Tue, 30 Apr 2013 14:43:53 +0000 (16:43 +0200)
committerAPTX <marek321@gmail.com>
Tue, 30 Apr 2013 14:43:53 +0000 (16:43 +0200)
Currently just shows all unknown files.

localmylist-management/localmylist-management.pro
localmylist-management/mainwindow.cpp
localmylist-management/registertabs.cpp [new file with mode: 0644]
localmylist-management/tabs/unknownfilestab.cpp [new file with mode: 0644]
localmylist-management/tabs/unknownfilestab.h [new file with mode: 0644]
localmylist-management/tabs/unknownfilestab.ui [new file with mode: 0644]
localmylist-management/tabwidget.h

index 8921afc255516c75519b43b29838343f38f6a33e..76e1e9ad2ee7bfd797cd573e645b8a60a342b91f 100644 (file)
@@ -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)
index 8944e7e070f358ddfaedca7c01f25f945a8ea737..89ba925783be90a6c501d30b0866c1ae0abb32a1 100644 (file)
@@ -77,8 +77,7 @@ MainWindow::MainWindow(QWidget *parent) :
                ui->actionRenameFiles->setDisabled(true);
        }
 
-       TabWidget::registerTab<MyListTab>();
-       TabWidget::registerTab<ReportsTab>();
+       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 (file)
index 0000000..9ec593d
--- /dev/null
@@ -0,0 +1,11 @@
+#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>();
+}
diff --git a/localmylist-management/tabs/unknownfilestab.cpp b/localmylist-management/tabs/unknownfilestab.cpp
new file mode 100644 (file)
index 0000000..4667ec8
--- /dev/null
@@ -0,0 +1,50 @@
+#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);
+}
diff --git a/localmylist-management/tabs/unknownfilestab.h b/localmylist-management/tabs/unknownfilestab.h
new file mode 100644 (file)
index 0000000..226c793
--- /dev/null
@@ -0,0 +1,31 @@
+#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
diff --git a/localmylist-management/tabs/unknownfilestab.ui b/localmylist-management/tabs/unknownfilestab.ui
new file mode 100644 (file)
index 0000000..a9a291a
--- /dev/null
@@ -0,0 +1,33 @@
+<?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>
index 9fdf2f6296c73abd0ed13ee3aa6685697cd19c1d..eb433ed6eeb01ccad9dadcb59a4498309c7adf10 100644 (file)
@@ -12,6 +12,8 @@ class QSettings;
 class AbstractTab;
 class MainWindow;
 
+void registerTabs();
+
 class TabWidget : public QTabWidget
 {
        Q_OBJECT