Changing the way Favourites invoke browsing from cast on parent to signal.
authordruid23 <usr@dru-id.co.uk>
Wed, 25 Aug 2010 07:32:55 +0000 (08:32 +0100)
committerdruid23 <usr@dru-id.co.uk>
Wed, 25 Aug 2010 07:32:55 +0000 (08:32 +0100)
modified:   browsemainwindow.cpp
modified:   favouritesmainwindow.cpp
modified:   favouritesmainwindow.h
modified:   playermainwindow.cpp

browsemainwindow.cpp
favouritesmainwindow.cpp
favouritesmainwindow.h
playermainwindow.cpp

index d77844d..a07b131 100644 (file)
@@ -56,8 +56,8 @@ BrowseMainWindow::BrowseMainWindow(QWidget *parent) :
 #if defined(Q_WS_S60) || defined(Q_WS_MAEMO_5)
 
     mFavouritesMainWindow->setParent(this);
 #if defined(Q_WS_S60) || defined(Q_WS_MAEMO_5)
 
     mFavouritesMainWindow->setParent(this);
-    mFavouritesMainWindow->setAttribute(Qt::WA_Maemo5StackedWindow);
-    setAttribute(Qt::WA_Maemo5StackedWindow);
+    mFavouritesMainWindow->setAttribute(Qt::WA_Maemo5StackedWindow, true);
+    setAttribute(Qt::WA_Maemo5StackedWindow, true);
     mFavouritesMainWindow->setWindowFlags(mFavouritesMainWindow->windowFlags() | Qt::Window);
 
 #endif
     mFavouritesMainWindow->setWindowFlags(mFavouritesMainWindow->windowFlags() | Qt::Window);
 
 #endif
@@ -73,6 +73,8 @@ BrowseMainWindow::BrowseMainWindow(QWidget *parent) :
     connect(ui->actionViewFavourites, SIGNAL(triggered()), this, SLOT(showFavourites()));
     connect(ui->actionSetFavourite, SIGNAL(triggered()), this, SLOT(setFavourite()));
 
     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();
 
 
     init();
 
 
@@ -223,6 +225,13 @@ void BrowseMainWindow::onPlay() {
 }
 
 void BrowseMainWindow::browseDirectory(QString dir) {
 }
 
 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));
     mResponse.clear();
     QUrl url = QUrl("http://"+mIp+"/requests/browse.xml");
     url.addEncodedQueryItem(QByteArray("dir"), QUrl::toPercentEncoding(dir));
index 79fdddc..a578deb 100644 (file)
@@ -22,7 +22,7 @@
 #include <QMaemo5InformationBox>
 #endif
 #include "appsettings.h"
 #include <QMaemo5InformationBox>
 #endif
 #include "appsettings.h"
-#include "browsemainwindow.h"
+//#include "browsemainwindow.h"
 
 FavouritesMainWindow::FavouritesMainWindow(QWidget *parent) :
         QMainWindow(parent),
 
 FavouritesMainWindow::FavouritesMainWindow(QWidget *parent) :
         QMainWindow(parent),
@@ -157,8 +157,9 @@ void FavouritesMainWindow::onEdit() {
 }
 void FavouritesMainWindow::onBrowse() {
     if (-1 < mCurrentItemIndex) {
 }
 void FavouritesMainWindow::onBrowse() {
     if (-1 < mCurrentItemIndex) {
-        this->close();
-        ((BrowseMainWindow *)this->parent())->browseDirectory(mCurrentFavourite.path);
+        emit browseDirectory(mCurrentFavourite.path);
+        //this->close();
+        //((BrowseMainWindow *)this->parent())->browseDirectory(mCurrentFavourite.path);
     }
 }
 void FavouritesMainWindow::onDelete() {
     }
 }
 void FavouritesMainWindow::onDelete() {
index cd40eb8..76964b0 100644 (file)
@@ -50,6 +50,9 @@ public slots:
 
 protected slots:
 
 
 protected slots:
 
+signals:
+    void browseDirectory(QString path);
+
 protected:
     void changeEvent(QEvent *e);
     void updateList();
 protected:
     void changeEvent(QEvent *e);
     void updateList();
index af879d1..33d001c 100644 (file)
   #if defined(Q_WS_S60) || defined(Q_WS_MAEMO_5)
 
       mPlayListMainWindow->setParent(this);
   #if defined(Q_WS_S60) || defined(Q_WS_MAEMO_5)
 
       mPlayListMainWindow->setParent(this);
-      mPlayListMainWindow->setAttribute(Qt::WA_Maemo5StackedWindow);
-      setAttribute(Qt::WA_Maemo5StackedWindow);
+      mPlayListMainWindow->setAttribute(Qt::WA_Maemo5StackedWindow, true);
+      setAttribute(Qt::WA_Maemo5StackedWindow, true);
       mPlayListMainWindow->setWindowFlags(mPlayListMainWindow->windowFlags() | Qt::Window);
 
       mBrowserMainWindow->setParent(this);
       mPlayListMainWindow->setWindowFlags(mPlayListMainWindow->windowFlags() | Qt::Window);
 
       mBrowserMainWindow->setParent(this);
-      mBrowserMainWindow->setAttribute(Qt::WA_Maemo5StackedWindow);
-      setAttribute(Qt::WA_Maemo5StackedWindow);
+      mBrowserMainWindow->setAttribute(Qt::WA_Maemo5StackedWindow, true);
+      setAttribute(Qt::WA_Maemo5StackedWindow, true);
       mBrowserMainWindow->setWindowFlags(mBrowserMainWindow->windowFlags() | Qt::Window);
 
       connect(QApplication::desktop(), SIGNAL(resized(int)), this, SLOT(orientationChanged()));
       mBrowserMainWindow->setWindowFlags(mBrowserMainWindow->windowFlags() | Qt::Window);
 
       connect(QApplication::desktop(), SIGNAL(resized(int)), this, SLOT(orientationChanged()));