From kde-commits Fri Feb 02 00:15:35 2007 From: =?utf-8?q?Fr=C3=A9d=C3=A9ric=20Becquier?= Date: Fri, 02 Feb 2007 00:15:35 +0000 To: kde-commits Subject: koffice/kplato Message-Id: <1170375335.638216.1698.nullmailer () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=117037535231207 SVN commit 629223 by fbecquier: Update of function which display tasks attributed to resource. Add function which display tasks attributed to a group. M +94 -45 kptresourceassignmentview.cc M +36 -32 kptresourceassignmentview.h --- trunk/koffice/kplato/kptresourceassignmentview.cc #629222:629223 @@ -84,12 +84,12 @@ switch ( res->type() ) { case Resource::Type_Work: item->setText( 0, res->name() ); - item->setText( 1, i18n( "Work" ) ); + item->setText( 1, i18n( "Work" ) ); break; - case Resource::Type_Material: - item->setText( 0, res->name() ); - item->setText( 1, i18n( "Material" ) ); - break; + case Resource::Type_Material: + item->setText( 0, res->name() ); + item->setText( 1, i18n( "Material" ) ); + break; default: break; } @@ -115,6 +115,7 @@ m_resList->setHeaderLabels( sl ); m_taskList = new ResourcesList( m_splitter ); + m_tasktreeroot = new QTreeWidgetItem ( m_taskList ); QStringList sl2; sl2 << i18n( "Task" ); @@ -155,56 +156,104 @@ void ResourceAssignmentView::updateTasks() { - /*Detecter element selectionne*/ - - Resource* ItemRes; - QString taskName; + /*Find Selected Item*/ + Resource* ItemRes; + ResourceGroup* ItemGrp; - QString name = m_selectedItem->text(0); - QString type = m_selectedItem->text(1); - if(type != ""){ - kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Item Selected: " << name << " / Type: " << type << endl; - } - else{ - kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Group Selected: " << name << endl; - } + QString name = m_selectedItem->text(0); + QString type = m_selectedItem->text(1); + if(type != ""){ + kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Item Selected: " << name << " / Type: " << type << endl; + } + else{ + kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Group Selected: " << name << endl; + } - /*Trouver tache attribuees*/ - if(type != "") - { - foreach ( ResourceGroup * gr, ((m_part->getProject()).resourceGroups()) ) { - foreach ( Resource * res, gr->resources() ) { - if (name == res->name()) - { - ItemRes = res; - kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Selected Resource founded"; - } - else - { - kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Not founded"; - } - } - } + m_taskList->clear(); + m_tasktreeroot = new QTreeWidgetItem ( m_taskList ); - m_taskList->clear(); + /*Find tasks attributed to the selected item*/ - QTreeWidgetItem * root = new QTreeWidgetItem( m_taskList ); - root->setText( 0, i18n ( "Tasks" ) ); - - foreach ( ResourceRequest * rr , ItemRes->requests() ){ + /*The selected item is a resource*/ + if(type != "") + { + foreach ( ResourceGroup * gr, ((m_part->getProject()).resourceGroups()) ) { + foreach ( Resource * res, gr->resources() ) { + if (name == res->name()) + { + ItemRes = res; + kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Selected Resource founded"; + } + else + { + kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Not founded"; + } + } + } + drawTasksAttributedToAResource(ItemRes,m_tasktreeroot); + } + else + /*The selected item is a group*/ + { + foreach ( ResourceGroup * gr, ((m_part->getProject()).resourceGroups()) ) { + if (name == gr->name()) + { + ItemGrp = gr; + kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Selected Group founded"; + } + else + { + kDebug() << "[void KPlato::ResourceAssignmentView::updateTasks()] Group Not founded"; + } + } + drawTasksAttributedToAGroup(ItemGrp,m_tasktreeroot); + } +} - taskName = ((rr->parent())->task())->name(); +void ResourceAssignmentView::drawTasksAttributedToAResource (Resource *res, QTreeWidgetItem *parent) +{ + QString taskName; - QTreeWidgetItem * item = new QTreeWidgetItem( root ); - item->setText( 0, taskName ); - - } - } + parent->setText( 0, res->name() ); - /*Afficher taches*/ + if((res->requests()).isEmpty()) + { + QTreeWidgetItem * item = new QTreeWidgetItem( parent ); + item->setText( 0, i18n( "No task attributed" ) ); + } + else + { + foreach ( ResourceRequest * rr , res->requests() ){ + + taskName = ((rr->parent())->task())->name(); + + QTreeWidgetItem * item = new QTreeWidgetItem( parent ); + item->setText( 0, taskName ); + } + } } +void ResourceAssignmentView::drawTasksAttributedToAGroup (ResourceGroup *group, QTreeWidgetItem *parent) +{ + parent->setText( 0, group->name() ); + + if((group->resources()).isEmpty()) + { + QTreeWidgetItem * groupnode = new QTreeWidgetItem( parent ); + groupnode->setText( 0, i18n( "No resource attributed" ) ); + } + else + { + foreach ( Resource * res, group->resources() ) + { + QTreeWidgetItem * groupnode = new QTreeWidgetItem( parent ); + drawTasksAttributedToAResource(res,groupnode); + } + } + +} + } //KPlato namespace #include "kptresourceassignmentview.moc" --- trunk/koffice/kplato/kptresourceassignmentview.h #629222:629223 @@ -41,44 +41,48 @@ namespace KPlato { - class ResourcesList; + class ResourcesList; - class ResourceItemPrivate; - - class ResourcesList : public QTreeWidget - { - Q_OBJECT - - public: - ResourcesList( QWidget * parent = 0 ); - }; + class ResourceItemPrivate; - class ResourceAssignmentView : public ViewBase - { - Q_OBJECT - - public: - ResourceAssignmentView( Part *part, QWidget *parent); - void draw( Project &project ); - void drawResourcesName( QTreeWidgetItem *parent, ResourceGroup *group ); - - private: - QSplitter *m_splitter; - ResourcesList *m_resList; - ResourcesList *m_taskList; - QTreeWidgetItem *m_selectedItem; - - Part *m_part; + class ResourcesList : public QTreeWidget + { + Q_OBJECT - void updateTasks(); + public: + ResourcesList( QWidget * parent = 0 ); + }; - protected slots: - void resSelectionChanged(); - void resSelectionChanged( QTreeWidgetItem *item ); + class ResourceAssignmentView : public ViewBase + { + Q_OBJECT - }; - + public: + ResourceAssignmentView( Part *part, QWidget *parent); + void draw( Project &project ); + void drawResourcesName( QTreeWidgetItem *parent, ResourceGroup *group ); + void drawTasksAttributedToAResource (Resource *res, QTreeWidgetItem *parent); + void drawTasksAttributedToAGroup (ResourceGroup *group, QTreeWidgetItem *parent); + private: + QSplitter *m_splitter; + ResourcesList *m_resList; + ResourcesList *m_taskList; + QTreeWidgetItem *m_selectedItem; + QTreeWidgetItem *m_tasktreeroot; + + + Part *m_part; + + void updateTasks(); + + protected slots: + void resSelectionChanged(); + void resSelectionChanged( QTreeWidgetItem *item ); + + }; + + } //KPlato namespace #endif