#include "aboutdialog.h"
#include "vlcbrowseelement.h"
#include "appsettings.h"
+#include "favouritesmainwindow.h"
BrowseMainWindow::BrowseMainWindow(QWidget *parent) :
QMainWindow(parent),
{
ui->setupUi(this);
+ mFavouritesMainWindow = new FavouritesMainWindow;
mCurrentDir = "~/"; //AppSettings::getHomeDirectory().path; // This works on win as well as linux, would guess mac too.
setWindowTitle("Vlc remote");
ui->playButton->setDisabled(true);
ui->addButton->setDisabled(true);
+
+#if defined(Q_WS_S60) || defined(Q_WS_MAEMO_5)
+
+ mFavouritesMainWindow->setParent(this);
+ mFavouritesMainWindow->setAttribute(Qt::WA_Maemo5StackedWindow, true);
+ setAttribute(Qt::WA_Maemo5StackedWindow, true);
+ mFavouritesMainWindow->setWindowFlags(mFavouritesMainWindow->windowFlags() | Qt::Window);
+
+#endif
+
connect(ui->browseButton,SIGNAL(clicked()),this,SLOT(onBrowse()));
connect(ui->addButton,SIGNAL(clicked()),this,SLOT(onAddToPlaylist()));
connect(ui->playButton,SIGNAL(clicked()),this,SLOT(onPlay()));
connect(ui->actionViewFavourites, SIGNAL(triggered()), this, SLOT(showFavourites()));
connect(ui->actionSetFavourite, SIGNAL(triggered()), this, SLOT(setFavourite()));
+ connect(this->mFavouritesMainWindow, SIGNAL(browseDirectory(QString)), this, SLOT(browseDirectory(QString)));
+
init();
browseDirectory("~/");
}
void BrowseMainWindow::setHomeFolder() {
- if (0 < mCurrentDir.length()) {
+ if (0 < mCurrentElement.name.length() && (0 == QString::compare("directory", mCurrentElement.type) || 0 == QString::compare("dir", mCurrentElement.type))) {
VlcDirectory dir;
- dir.name = "Home";
+ dir.name = mCurrentElement.name;
+ dir.path = mCurrentElement.path;
+ AppSettings::setHomeDirectory(dir);
+ }
+ else if (0 < mCurrentDir.length()) {
+ VlcDirectory dir;
+ QString name = mCurrentDir;
+ int idx = mCurrentDir.lastIndexOf('/');
+ if (0 > idx) idx = mCurrentDir.lastIndexOf('\\');
+ if (0 < idx) {
+ name = mCurrentDir.right(mCurrentDir.length() - (idx + 1));
+ }
+ dir.name = name;
dir.path = mCurrentDir;
AppSettings::setHomeDirectory(dir);
}
}
-void BrowseMainWindow::showFavourites() {}
-void BrowseMainWindow::setFavourite() {}
+void BrowseMainWindow::showFavourites() {
+ mFavouritesMainWindow->show();
+ mFavouritesMainWindow->init();
+}
+void BrowseMainWindow::setFavourite() {
+ if (0 < mCurrentElement.name.length() && (0 == QString::compare("directory", mCurrentElement.type) || 0 == QString::compare("dir", mCurrentElement.type))) {
+ VlcDirectory dir;
+ dir.name = mCurrentElement.name;
+ dir.path = mCurrentElement.path;
+ AppSettings::addFavourite(dir);
+ }
+ else if (0 < mCurrentDir.length()) {
+ VlcDirectory dir;
+ QString name = mCurrentDir;
+ int idx = mCurrentDir.lastIndexOf('/');
+ if (0 > idx) idx = mCurrentDir.lastIndexOf('\\');
+ if (0 < idx) {
+ name = mCurrentDir.right(mCurrentDir.length() - (idx + 1));
+ }
+ dir.name = name;
+ dir.path = mCurrentDir;
+ AppSettings::addFavourite(dir);
+ }
+}
void BrowseMainWindow::onListSelectionChanged() {
QList<QListWidgetItem *> items = ui->listWidget->selectedItems();
}
void BrowseMainWindow::browseDirectory(QString dir) {
+ if (mFavouritesMainWindow) {
+ setParent(this->parentWidget());
+#if defined(Q_WS_S60) || defined(Q_WS_MAEMO_5)
+ setAttribute(Qt::WA_Maemo5StackedWindow, true);
+#endif
+ mFavouritesMainWindow->hide();
+ }
mResponse.clear();
QUrl url = QUrl("http://"+mIp+"/requests/browse.xml");
url.addEncodedQueryItem(QByteArray("dir"), QUrl::toPercentEncoding(dir));