[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