[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [plasmate/terietor/porting] plasmate: The startpage now is able to load our project
From:       Antonis Tsiapaliokas <kok3rs () gmail ! com>
Date:       2014-03-12 11:33:56
Message-ID: E1WNhQ4-0004Hl-Bn () scm ! kde ! org
[Download RAW message or body]

Git commit 152a98941f1b722dafdb327d517d700816996b8b by Antonis Tsiapaliokas.
Committed on 12/03/2014 at 11:33.
Pushed by tsiapaliokas into branch 'terietor/porting'.

The startpage now is able to load our project

M  +4    -3    plasmate/mainwindow.cpp
M  +3    -1    plasmate/projectmanager/projectmanager.cpp
M  +3    -2    plasmate/projectmanager/projectmanager.h
M  +2    -2    plasmate/startpage.cpp

http://commits.kde.org/plasmate/152a98941f1b722dafdb327d517d700816996b8b

diff --git a/plasmate/mainwindow.cpp b/plasmate/mainwindow.cpp
index 9f2be2c..7a79518 100644
--- a/plasmate/mainwindow.cpp
+++ b/plasmate/mainwindow.cpp
@@ -45,7 +45,9 @@ MainWindow::MainWindow(QWidget *parent)
         m_doc(0),
         m_view(0),
         m_dockWidgetsHandler(0),
-        m_packageHandler(new PackageHandler())
+        m_packageHandler(new PackageHandler(this)),
+        m_startPage(nullptr)
+
 {
     m_dockWidgetsHandler = new DockWidgetsHandler(m_packageHandler, this);
 
@@ -54,7 +56,6 @@ MainWindow::MainWindow(QWidget *parent)
     m_doc = KTextEditor::Editor::instance()->createDocument(0);
 
     m_view = m_doc->createView(this);
-    setCentralWidget(m_view);
     setupActions();
     m_view->setStatusBarEnabled(true);
 
@@ -128,9 +129,9 @@ void MainWindow::slotNewToolbarConfig()
 void MainWindow::setupStartPage()
 {
     m_startPage = new StartPage(m_packageHandler, this);
-    setCentralWidget(m_startPage);
     toolBar()->hide();
     menuBar()->hide();
+    setCentralWidget(m_startPage);
 }
 
 void MainWindow::closeEvent(QCloseEvent *event)
diff --git a/plasmate/projectmanager/projectmanager.cpp b/plasmate/projectmanager/projectmanager.cpp
index 2211636..9b5bce1 100644
--- a/plasmate/projectmanager/projectmanager.cpp
+++ b/plasmate/projectmanager/projectmanager.cpp
@@ -37,11 +37,12 @@
 
 #include "projectmanager.h"
 
-ProjectManager::ProjectManager(ProjectHandler *projectHandler, QWidget* parent)
+ProjectManager::ProjectManager(ProjectHandler *projectHandler, MainWindow *parent)
     : QDialog(parent),
       m_projectHandler(projectHandler)
 {
     m_projectList = new QListWidget(this);
+    m_mainWindow = parent;
     m_projectList->setSelectionMode(QAbstractItemView::ExtendedSelection);
     connect(m_projectList, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(emitProjectSelected()));
     connect(m_projectList,SIGNAL(itemSelectionChanged()), this, SLOT(checkButtonState()));
@@ -152,6 +153,7 @@ void ProjectManager::emitProjectSelected()
 
     m_projectHandler->recentProject(url);
     emit projectSelected(url);
+    m_mainWindow->loadProject(url);
     done(QDialog::Accepted);
 }
 
diff --git a/plasmate/projectmanager/projectmanager.h b/plasmate/projectmanager/projectmanager.h
index 8bc2a93..191a92d 100644
--- a/plasmate/projectmanager/projectmanager.h
+++ b/plasmate/projectmanager/projectmanager.h
@@ -32,6 +32,7 @@ class QListWidgetItem;
 class QUrl;
 class QPushButton;
 class QMenu;
+class MainWindow;
 
 namespace Ui
 {
@@ -42,7 +43,7 @@ class ProjectManager : public QDialog
 {
     Q_OBJECT
 public:
-    ProjectManager(ProjectHandler *projectHandler, QWidget *parent);
+    ProjectManager(ProjectHandler *projectHandler, MainWindow *parent);
 
     void addProject(QListWidgetItem *item);
 
@@ -76,7 +77,7 @@ private:
     bool m_destroyFlag;
     ProjectHandler *m_projectHandler;
     QHash<QListWidgetItem*, QString> m_items;
-    MainWindow* m_mainWindow;
+    MainWindow *m_mainWindow;
 };
 
 #endif // PROJECTMANAGER_H
diff --git a/plasmate/startpage.cpp b/plasmate/startpage.cpp
index 4111be7..d5a228a 100644
--- a/plasmate/startpage.cpp
+++ b/plasmate/startpage.cpp
@@ -194,11 +194,11 @@ void StartPage::setupWidgets()
         }
     });
 
-    connect(m_ui.recentProjects, &QListWidget::clicked, [&](const QModelIndex &index) {
+    connect(m_ui.recentProjects, &QListWidget::clicked, [=](const QModelIndex &index) {
         QAbstractItemModel *m = m_ui.recentProjects->model();
         QString url = m->data(index, FullPathRole).value<QString>();
         if (url.isEmpty()) {
-            QScopedPointer<ProjectManager> projectManager(new ProjectManager(m_projectHandler, this));
+            QScopedPointer<ProjectManager> projectManager(new ProjectManager(m_projectHandler, m_mainWindow));
             if (projectManager->exec() == QDialog::Accepted) {
                 resetStatus();
             }
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic