1 #ifndef TAB_DECK_STORAGE_H
2 #define TAB_DECK_STORAGE_H
3 
4 #include "tab.h"
5 
6 class AbstractClient;
7 class QTreeView;
8 class QFileSystemModel;
9 class QToolBar;
10 class QTreeWidget;
11 class QTreeWidgetItem;
12 class QGroupBox;
13 class RemoteDeckList_TreeWidget;
14 class CommandContainer;
15 class Response;
16 class DeckLoader;
17 
18 class TabDeckStorage : public Tab
19 {
20     Q_OBJECT
21 private:
22     AbstractClient *client;
23     QTreeView *localDirView;
24     QFileSystemModel *localDirModel;
25     QToolBar *leftToolBar, *rightToolBar;
26     RemoteDeckList_TreeWidget *serverDirView;
27     QGroupBox *leftGroupBox, *rightGroupBox;
28 
29     QAction *aOpenLocalDeck, *aUpload, *aDeleteLocalDeck, *aOpenRemoteDeck, *aDownload, *aNewFolder, *aDeleteRemoteDeck;
30 private slots:
31     void actOpenLocalDeck();
32 
33     void actUpload();
34     void uploadFinished(const Response &r, const CommandContainer &commandContainer);
35 
36     void actDeleteLocalDeck();
37 
38     void actOpenRemoteDeck();
39     void openRemoteDeckFinished(const Response &r, const CommandContainer &commandContainer);
40 
41     void actDownload();
42     void downloadFinished(const Response &r, const CommandContainer &commandContainer, const QVariant &extraData);
43 
44     void actNewFolder();
45     void newFolderFinished(const Response &response, const CommandContainer &commandContainer);
46 
47     void actDeleteRemoteDeck();
48     void deleteFolderFinished(const Response &response, const CommandContainer &commandContainer);
49     void deleteDeckFinished(const Response &response, const CommandContainer &commandContainer);
50 
51 public:
52     TabDeckStorage(TabSupervisor *_tabSupervisor, AbstractClient *_client);
53     void retranslateUi();
getTabText()54     QString getTabText() const
55     {
56         return tr("Deck storage");
57     }
58 signals:
59     void openDeckEditor(const DeckLoader *deckLoader);
60 };
61 
62 #endif
63