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

List:       kde-commits
Subject:    koffice/kplato/libs/models
From:       Dag Andersen <danders () get2net ! dk>
Date:       2010-12-07 11:46:02
Message-ID: 20101207114602.A051CAC8A5 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1204459 by danders:

Fix update of CostBreakDownItemModel and ChartItemModel when resources are changed.


 M  +15 -8     kptaccountsmodel.cpp  
 M  +1 -1      kptaccountsmodel.h  
 M  +10 -1     kptnodechartmodel.cpp  
 M  +2 -0      kptnodechartmodel.h  


--- trunk/koffice/kplato/libs/models/kptaccountsmodel.cpp #1204458:1204459
@@ -502,9 +502,8 @@
     endRemoveRows();
 }
 
-void CostBreakdownItemModel::slotNodeChanged( Node *node )
+void CostBreakdownItemModel::slotDataChanged()
 {
-    Q_UNUSED(node);
     fetchData();
     foreach ( Account *a, m_plannedCostMap.keys() ) {
         QModelIndex idx1 = index( a );
@@ -526,9 +525,13 @@
         disconnect( acc, SIGNAL( accountRemoved( const Account* ) ), this, SLOT( \
                slotAccountRemoved( const Account* ) ) );
         disconnect( acc, SIGNAL( accountToBeRemoved( const Account* ) ), this, SLOT( \
slotAccountToBeRemoved( const Account* ) ) );  
-        disconnect( m_project , SIGNAL( nodeChanged( Node* ) ), this, SLOT( \
                slotNodeChanged( Node* ) ) );
-        disconnect( m_project , SIGNAL( nodeAdded( Node* ) ), this, SLOT( \
                slotNodeChanged( Node* ) ) );
-        disconnect( m_project , SIGNAL( nodeRemoved( Node* ) ), this, SLOT( \
slotNodeChanged( Node* ) ) ); +        disconnect( m_project , SIGNAL( nodeChanged( \
Node* ) ), this, SLOT( slotDataChanged() ) ); +        disconnect( m_project , \
SIGNAL( nodeAdded( Node* ) ), this, SLOT( slotDataChanged() ) ); +        disconnect( \
m_project , SIGNAL( nodeRemoved( Node* ) ), this, SLOT( slotDataChanged() ) ); +
+        disconnect( m_project , SIGNAL( resourceChanged( Resource* ) ), this, SLOT( \
slotDataChanged() ) ); +        disconnect( m_project , SIGNAL( resourceAdded( const \
Resource* ) ), this, SLOT( slotDataChanged() ) ); +        disconnect( m_project , \
SIGNAL( resourceRemoved( const Resource* ) ), this, SLOT( slotDataChanged() ) );  }
     m_project = project;
     if ( project ) {
@@ -542,9 +545,13 @@
         connect( acc, SIGNAL( accountRemoved( const Account* ) ), this, SLOT( \
                slotAccountRemoved( const Account* ) ) );
         connect( acc, SIGNAL( accountToBeRemoved( const Account* ) ), this, SLOT( \
slotAccountToBeRemoved( const Account* ) ) );  
-        connect( project , SIGNAL( nodeChanged( Node* ) ), this, SLOT( \
                slotNodeChanged( Node* ) ) );
-        connect( project , SIGNAL( nodeAdded( Node* ) ), this, SLOT( \
                slotNodeChanged( Node* ) ) );
-        connect( project , SIGNAL( nodeRemoved( Node* ) ), this, SLOT( \
slotNodeChanged( Node* ) ) ); +        connect( m_project , SIGNAL( nodeChanged( \
Node* ) ), this, SLOT( slotDataChanged() ) ); +        connect( m_project , SIGNAL( \
nodeAdded( Node* ) ), this, SLOT( slotDataChanged() ) ); +        connect( m_project \
, SIGNAL( nodeRemoved( Node* ) ), this, SLOT( slotDataChanged() ) ); +
+        connect( m_project , SIGNAL( resourceChanged( Resource* ) ), this, SLOT( \
slotDataChanged() ) ); +        connect( m_project , SIGNAL( resourceAdded( const \
Resource* ) ), this, SLOT( slotDataChanged() ) ); +        connect( m_project , \
SIGNAL( resourceRemoved( const Resource* ) ), this, SLOT( slotDataChanged() ) );  }
 }
 
--- trunk/koffice/kplato/libs/models/kptaccountsmodel.h #1204458:1204459
@@ -163,7 +163,7 @@
     void slotAccountToBeRemoved( const Account *account );
     void slotAccountRemoved( const Account *account );
     
-    void slotNodeChanged( Node *node );
+    void slotDataChanged();
 
 private:
     ScheduleManager *m_manager;
--- trunk/koffice/kplato/libs/models/kptnodechartmodel.cpp #1204458:1204459
@@ -21,6 +21,7 @@
 #include "kptnode.h"
 #include "kptproject.h"
 #include "kptschedule.h"
+#include "kptresource.h"
 
 #include <QPointF>
 #include <QVariant>
@@ -195,11 +196,13 @@
     if ( m_project ) {
         disconnect( m_project, SIGNAL( projectCalculated( ScheduleManager* ) ), \
                this, SLOT( setScheduleManager( ScheduleManager* ) ) );
         disconnect( m_project, SIGNAL( nodeChanged( Node* ) ), this, SLOT( \
slotNodeChanged( Node* ) ) ); +        disconnect( m_project, SIGNAL( \
resourceChanged( Node* ) ), this, SLOT( slotResourceChanged( Node* ) ) );  }
     m_project = project;
     if ( m_project ) {
         connect( m_project, SIGNAL( projectCalculated( ScheduleManager* ) ), this, \
                SLOT( setScheduleManager( ScheduleManager* ) ) );
         connect( m_project, SIGNAL( nodeChanged( Node* ) ), this, SLOT( \
slotNodeChanged( Node* ) ) ); +        connect( m_project, SIGNAL( resourceChanged( \
Resource* ) ), this, SLOT( slotResourceChanged( Resource* ) ) );  }
     reset();
 }
@@ -249,6 +252,12 @@
     }
 }
 
+void ChartItemModel::slotResourceChanged( Resource* resource )
+{
+    calculate();
+    reset();
+}
+
 QDate ChartItemModel::startDate() const
 {
     QDate d = m_bcws.startDate();
@@ -281,7 +290,7 @@
                     }
                 }
                 if ( ! skip ) {
-                    m_bcws += n->bcwpPrDay( m_manager->scheduleId() );
+                    m_bcws += n->bcwpPrDay( m_manager->scheduleId(), ECCT_EffortWork \
);  m_acwp += n->acwp( m_manager->scheduleId() );
                 }
             }
--- trunk/koffice/kplato/libs/models/kptnodechartmodel.h #1204458:1204459
@@ -35,6 +35,7 @@
 namespace KPlato
 {
 
+class Resource;
 class Project;
 class ScheduleManager;
 class Node;
@@ -112,6 +113,7 @@
 public slots:
     void setScheduleManager( ScheduleManager *sm );
     void slotNodeChanged( Node *node );
+    void slotResourceChanged( Resource *resource );
 
 protected:
     double bcwsEffort( int day ) const;


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

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