first release
[groupsms] / sms / groupwidgetitem.cpp
1 #include "groupwidgetitem.h"
2 #include "utility.h"
3
4 GroupWidgetItem::GroupWidgetItem(QObject *parent)
5     : ContactWidgetItem(parent)
6 {
7     btn_selected = new QToolButton();
8     btn_selected->setText("");
9     btn_selected->setIcon( Utility::getToolButtonIcon(":/images/unselect.png", true) );
10     btn_selected->setToolButtonStyle(Qt::ToolButtonIconOnly);
11     btn_selected->setAutoRaise(true);
12     btn_selected->adjustSize();
13
14     btn_open_group = new QToolButton();
15     btn_open_group->setText("");
16     btn_open_group->setIcon( Utility::getToolButtonIcon(":/images/plus.png", true) );
17     btn_open_group->setToolButtonStyle(Qt::ToolButtonIconOnly);
18     btn_open_group->setAutoRaise(true);
19     btn_open_group->adjustSize();
20
21     label_group_name = new QLabel();
22
23
24     m_isSelected = false;
25     m_isOpenContactList = false;
26     m_isGroup = true;
27
28     m_x = 0;
29     m_height = 0;
30
31     connect( btn_open_group, SIGNAL( clicked() ), this, SLOT( btn_open_group_clicked() ) );
32     connect(btn_selected, SIGNAL( clicked() ), this, SLOT( btn_selected_clicked() ) );
33     //qDebug() << "GroupWidgetItem::GroupWidgetItem(QObject *parent), Exit" << (int)this;
34 }
35
36 GroupWidgetItem::~GroupWidgetItem()
37 {
38     //qDebug() << "GroupWidgetItem::~GroupWidgetItem()" << (int)this;
39     delete btn_open_group;
40     delete label_group_name;
41 }
42
43 int GroupWidgetItem::move(int x, int y, QWidget *parent)
44 {
45     //qDebug() << "GroupWidgetItem::move(int x, int y), Entry";
46     m_x = x;
47     m_height = 0;
48     int _y = y;
49
50     btn_open_group->setParent(parent);
51     btn_open_group->move( ( x + BTN_OPEN_GROUP_OFFSET_X ), ( _y + BTN_OPEN_GROUP_OFFSET_Y ) );
52     //qDebug() << "btn_open_group x=" << ( x + BTN_OPEN_GROUP_OFFSET_X ) << "btn_open_group y=" << ( _y + BTN_OPEN_GROUP_OFFSET_Y );
53
54     btn_selected->setParent(parent);
55     btn_selected->move( ( x + BTN_GROUP_SELECTED_OFFSET_X ), ( _y + BTN_GROUP_SELECTED_OFFSET_Y ) );
56     //qDebug() << "btn_selected x=" << ( x + BTN_GROUP_SELECTED_OFFSET_X ) << "btn_selected y=" << ( _y + BTN_GROUP_SELECTED_OFFSET_Y );
57
58     label_user_pic->setParent(parent);
59     label_user_pic->move( ( x + GROUP_USER_PIC_OFFSET_X ), ( _y + GROUP_USER_PIC_OFFSET_Y ) );
60     //qDebug() << "label_user_pic x=" << ( x + GROUP_USER_PIC_OFFSET_X ) << "label_user_pic y=" << ( _y + GROUP_USER_PIC_OFFSET_Y );
61
62     label_group_name->setParent(parent);
63     label_group_name->move( ( x + GROUP_NAME_OFFSET_X ), ( _y + GROUP_NAME_OFFSET_Y ) );
64     //qDebug() << "label_fullname x=" << ( x + GROUP_NAME_OFFSET_X ) << "label_fullname y=" << ( _y + GROUP_NAME_OFFSET_Y );
65
66     m_height = y + ITEM_HEIGHT;
67
68     showAll();
69
70     //qDebug() << "m_height=" << m_height;
71     //qDebug() << "GroupWidgetItem::move(int x, int y), Exit";
72
73     return m_height;
74 }
75
76 void GroupWidgetItem::reSet()
77 {
78     m_isSelected = false;
79     m_isGroup = true;
80     btn_selected->setIcon( Utility::getToolButtonIcon(":/images/unselect.png", true) );
81     btn_open_group->setIcon( Utility::getToolButtonIcon(":/images/plus.png", true) );
82 }
83
84 void GroupWidgetItem::btn_open_group_clicked()
85 {
86     //qDebug() << "GroupWidgetItem::btn_open_group_clicked(), Entry";
87     m_isOpenContactList = !m_isOpenContactList;
88     if( m_isOpenContactList )
89     {
90         btn_open_group->setIcon( Utility::getToolButtonIcon(":/images/sub.png", true) );
91     }else
92     {
93         btn_open_group->setIcon( Utility::getToolButtonIcon(":/images/plus.png", true) );
94     }
95     Q_EMIT itemUpdate();
96     //qDebug() << "GroupWidgetItem::btn_open_group_clicked(), Exit" << (int)this;
97 }
98
99 void GroupWidgetItem::showAll()
100 {
101     btn_selected->show();
102     btn_open_group->show();
103     label_group_name->show();
104     label_user_pic->show();
105 }
106
107 void GroupWidgetItem::partOfAllSeleted()
108 {
109     btn_selected->setIcon( Utility::getToolButtonIcon(":/images/partselect.png", true) );
110 }