first release
[groupsms] / sms / selectcontactwidget.cpp
1 #include "selectcontactwidget.h"
2 #include "contactinterface.h"
3 #include "xmlstring.h"
4
5 SelectContactWidget::SelectContactWidget( QWidget *parent ) :
6         ContactWidget( parent )
7 {
8     //qDebug() << "SelectContactWidget::SelectContactWidget(QWidget *parent), Entry";
9 }
10
11 SelectContactWidget::~SelectContactWidget()
12 {
13     //qDebug() << "SelectContactWidget::~SelectContactWidget(), Entry";
14 }
15
16 void SelectContactWidget::initContactWidget()
17 {
18     //qDebug() << "SelectContactWidget::initContactWidget(), Entry";
19
20     ContactInterface::getInstance()->setItemSelectObserver(this);
21     ContactInterface::getInstance()->getAllContactsFromXml( STR_XML_ALLCONTACTS );
22
23     for (int i = 0; i < contact_items->size(); ++i)
24     {
25         connect( contact_items->at(i), SIGNAL( itemUpdate() ), this, SLOT( update() ) );
26         connect( contact_items->at(i), SIGNAL( itemSelected( ContactWidgetItem*, bool) ), this, SLOT( contactItemSelected( ContactWidgetItem*, bool ) ) );
27     }
28 }
29
30 void SelectContactWidget::destroyContactWidget()
31 {
32     //qDebug() << "SelectContactWidget::destroyContactWidget(), Entry";
33 }
34
35 void SelectContactWidget::getGroupContacts( ItemListPtr items )
36 {
37     for( int i = 0; i < items.size(); i++ )
38     {
39         Item *item = items.at(i);
40
41         if( item->m_isGroup )
42         {
43             GroupWidgetItem *contact = new GroupWidgetItem(this);
44
45             contact->label_group_name->setText( item->group_name );
46             contact->group_name = item->group_name;
47
48             contact_items->append( contact );
49         }else
50         {
51             ContactWidgetItem *contact = new ContactWidgetItem(this);
52
53             contact->label_fullname->setText( item->full_name );
54             contact->full_name = item->full_name;
55
56             contact->label_mobile_number->setText( item->mobile_number );
57             contact->mobile_number = item->mobile_number;
58
59             contact->group_owner =  item->group_owner;
60
61             contact->uid = item->uid;
62
63             contact_items->append( contact );
64         }
65     }
66 }
67
68 QVector<ContactWidgetItem*>* SelectContactWidget::getSelectedContacts()
69 {
70     return contact_items_selected;
71 }
72
73 void SelectContactWidget::addContactsToGroup(const QString &groupname)
74 {
75     //qDebug() << "SelectContactWidget::addContactsToGroup(const QString &groupname)";
76     ItemListPtr list;
77     for( int i = 0; i < contact_items_selected->size(); i++ )
78     {
79         ContactWidgetItem *contact = contact_items_selected->at(i);
80         Item *item = new Item();
81         item->full_name = contact->full_name;
82         item->mobile_number = contact->mobile_number;
83         item->group_owner = groupname;
84         item->uid = contact->uid;
85
86         list.append(item);
87     }
88     ContactInterface::getInstance()->addContactToGroup(list, groupname);
89 }