Fix forward navigation control on Linux.
[dorian] / librarydialog.h
index 4c5ce6f..91dec8d 100644 (file)
@@ -5,44 +5,47 @@
 #include <QString>
 #include <QModelIndexList>
 
-class QMainWindow;
-class QListView;
+#include "listwindow.h"
+
 class QPushButton;
 class QModelIndex;
+class QCloseEvent;
+class ProgressDialog;
 class Book;
 class InfoWindow;
 class SortedLibrary;
+class QAction;
+class SearchDialog;
 
-class LibraryDialog: public QDialog
+/** Manage library. */
+class LibraryDialog: public ListWindow
 {
     Q_OBJECT
 
 public:
     explicit LibraryDialog(QWidget *parent = 0);
-    QListView *list;
-    SortedLibrary *sortedLibrary;
-#ifndef Q_WS_MAEMO_5
-    QPushButton *detailsButton;
-    QPushButton *removeButton;
-    QPushButton *readButton;
-#endif // Q_WS_MAEMO_5
-    QPushButton *addButton;
-    QString lastDir;
 
 public slots:
     void onAdd();
-#ifndef Q_WS_MAEMO_5
-    void onRemove();
-    void onDetails();
-    void onRead();
-    void onItemSelectionChanged();
-#endif // Q_WS_MAEMO_5
+    void onAddFolder();
     void onBookAdded();
     void onItemActivated(const QModelIndex &index);
-    void onCurrentBookChanged();
+    void onAddFromFolder(const QString &path);
+    void onAddFromFolderDone(int added);
+    void onSearch();
+    void showSearchResults();
+    void onSortByAuthor();
+    void onSortByTitle();
+    void onDelete();
 
 private:
-    QString createItemText(const Book *book);
+    QString createItemText(Book *book);
+    void setSelected(const QModelIndex &index);
+    SortedLibrary *sortedLibrary;
+    ProgressDialog *progress;
+    QAction *sortByAuthor;
+    QAction *sortByTitle;
+    SearchDialog *searchDialog;
 };
 
 #endif // LIBRARYDIALOG_H