modified: browsemainwindow.cpp
[vlc-remote] / browsemainwindow.h
1 /*   VLC-REMOTE for MAEMO 5
2  *   Copyright (C) 2010 Schutz Sacha <istdasklar@gmail.com>
3  *   This program is free software; you can redistribute it and/or modify
4  *   it under the terms of the GNU General Public License version 2,
5  *   or (at your option) any later version, as published by the Free
6  *   Software Foundation
7  *
8  *   This program is distributed in the hope that it will be useful,
9  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
10  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  *   GNU General Public License for more details
12  *
13  *   You should have received a copy of the GNU General Public
14  *   License along with this program; if not, write to the
15  *   Free Software Foundation, Inc.,
16  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
17  */
18 #ifndef BROWSEMAINWINDOW_H
19 #define BROWSEMAINWINDOW_H
20
21 #include <QMainWindow>
22 #include <QtNetwork>
23 #include <QtXml>
24 #include <QListWidgetItem>
25 #include "vlcbrowseelement.h"
26
27 namespace Ui {
28     class BrowseMainWindow;
29 }
30
31 class BrowseMainWindow : public QMainWindow {
32     Q_OBJECT
33 public:
34     explicit BrowseMainWindow(QWidget *parent = 0);
35     ~BrowseMainWindow();
36
37 public slots:
38     void browseDirectory(QString);
39     void onBrowse();
40     void onPlay();
41     void onAddToPlaylist();
42     void onListSelectionChanged();
43
44 protected slots:
45     void parseXmlDirectory();
46     void updateList();
47
48 protected:
49     void changeEvent(QEvent *e);
50     VlcBrowseElement getElementFromText(QString text);
51     void writeFile(QString path, QByteArray text);
52
53 private:
54     Ui::BrowseMainWindow *ui;
55     QNetworkAccessManager * mNetManager;
56     QString mCurrentDir;
57     QString mIp;
58     QList<VlcBrowseElement>* mContents;
59     VlcBrowseElement mCurrentElement;
60 };
61
62 #endif // BROWSEMAINWINDOW_H