From 9a7343edac4fe1ab169bd4bb9fc17cff424e7a02 Mon Sep 17 00:00:00 2001
From: Romain DERRE <romain.derre@pc227-11.pedago.ensiie.fr>
Date: Wed, 27 Mar 2019 19:34:30 +0100
Subject: [PATCH] export csv en cours

---
 app/controller.cpp         |  3 ++-
 app/elementslistmodel.cpp  |  2 +-
 app/elementstablemodel.cpp | 10 +++++++---
 app/mainwindow.cpp         |  7 ++++++-
 app/mainwindow.h           |  3 ++-
 app/task.h                 |  2 +-
 6 files changed, 19 insertions(+), 8 deletions(-)

diff --git a/app/controller.cpp b/app/controller.cpp
index 57d32c3..5ab4955 100644
--- a/app/controller.cpp
+++ b/app/controller.cpp
@@ -4,7 +4,7 @@
 Controller::Controller(MainWindow *window) : eltCollection(), genStatus(), main(window)
 {
     eltCollection.insertColumns(0,8);
-    main->update_tasks(&eltCollection);
+    main->set_task(&eltCollection);
     QTimer *timer = new QTimer();
     timer->connect(timer, SIGNAL(timeout()), this , SLOT(update()));
     timer->start(5000);
@@ -14,6 +14,7 @@ Controller::Controller(MainWindow *window) : eltCollection(), genStatus(), main(
 void Controller::update(){
     //qDebug() << "timer lancé";
     eltCollection.update();
+    main->update_tasks();
     genStatus.update();
     main->update_status(genStatus);
     //eltCollection.update();
diff --git a/app/elementslistmodel.cpp b/app/elementslistmodel.cpp
index 0c31916..1e8d666 100644
--- a/app/elementslistmodel.cpp
+++ b/app/elementslistmodel.cpp
@@ -32,7 +32,7 @@ QVariant ElementsListModel::data(const QModelIndex &index, int role) const
     if (role == Qt::DisplayRole){
         //Task t = QVariant::fromValue<Task>(taskVector.at(index.row()));
         //QString s = QString::number(taskVector.at(index.row()).getPID()) + "\t" + QString::number( taskVector.at(index.row()).getCPU() );
-        return QVariant(taskVector.at(index.row()).print());
+        //return QVariant(taskVector.at(index.row()).print());
 
     }
 
diff --git a/app/elementstablemodel.cpp b/app/elementstablemodel.cpp
index 4f55f7b..b3519fc 100644
--- a/app/elementstablemodel.cpp
+++ b/app/elementstablemodel.cpp
@@ -191,10 +191,14 @@ void ElementsTableModel::writeCSV(QFile file)
     {
         QTextStream stream( &file );
         stream << "PID , name , status , PPID , user , CPU , memory , uptime" << endl;
-        for (taskMap::const_iterator it = cbegin() ; taskMap.cend() ; ++it)
-        {
-            stream << it.print(" , ") << endl;
+        foreach (Task t, taskMap) {
+            stream << t.print(" , ") << endl;
         }
+
+        //for (QMap<int, Task>::const_iterator it = taskMap.cbegin() ; taskMap.cend() ; ++it)
+        //{
+        //    stream << it.print(" , ") << endl;
+        //}
     }
 }
 
diff --git a/app/mainwindow.cpp b/app/mainwindow.cpp
index 7cf0fa4..66281b1 100644
--- a/app/mainwindow.cpp
+++ b/app/mainwindow.cpp
@@ -52,11 +52,16 @@ void MainWindow::update_status(GeneralStatus &genStatus)
 
 }
 
-void MainWindow::update_tasks(ElementsTableModel * eltCollection)
+void MainWindow::set_task(ElementsTableModel * eltCollection)
 {
     ui->tableView->setModel(eltCollection);
 }
 
+void MainWindow::update_tasks()
+{
+    ui->tableView->update();
+}
+
 void MainWindow::on_comboBox_currentTextChanged(const QString &arg1)
 {
     if (arg1 == "Tree"){
diff --git a/app/mainwindow.h b/app/mainwindow.h
index 2c59fcb..6e79b22 100644
--- a/app/mainwindow.h
+++ b/app/mainwindow.h
@@ -21,7 +21,8 @@ public:
     explicit MainWindow(QWidget *parent = 0);
     ~MainWindow();
     void update_status(GeneralStatus &genStatus);
-    void update_tasks(ElementsTableModel* eltCollection);
+    void set_task(ElementsTableModel * eltCollection);
+    void update_tasks();
 
 private slots:
     void on_comboBox_currentTextChanged(const QString &arg1);
diff --git a/app/task.h b/app/task.h
index cb3a1a9..6db14cb 100644
--- a/app/task.h
+++ b/app/task.h
@@ -28,7 +28,7 @@ public:
     int getPPID() const;
     QString getUser() const;
 
-    QString print(QSTring) const;
+    QString print(QString) const;
 
     Task & operator=(const Task &);
     //bool operator ==(int pid);
-- 
GitLab