first release
[groupsms] / sms / contactpage.cpp
diff --git a/sms/contactpage.cpp b/sms/contactpage.cpp
new file mode 100644 (file)
index 0000000..f7dae16
--- /dev/null
@@ -0,0 +1,89 @@
+#include <QtGui>
+#include <QDebug>
+
+#include "contactpage.h"
+
+ContactPage::ContactPage(QWidget* parent)
+    : AbstractPage(parent)
+{
+    //qDebug() << "ContactPage::ContactPage(), Entry";
+
+    contactWidget = new ContactWidget(this);    
+    contactWidget->sizePolicy().setHorizontalPolicy(QSizePolicy::Maximum);
+    connect( contactWidget, SIGNAL( validRecycle(bool) ), this, SLOT( onValidRecyele(bool) ) );
+    //contactWidget->setGeometry(0,0,600,600);    
+
+    QGridLayout *layout = new QGridLayout(this);
+
+    scrollArea = new QScrollArea(this);
+    scrollArea->setBackgroundRole(QPalette::Light);
+
+    // for test
+//    QLineEdit *edit = new QLineEdit("Line Edit");
+//    edit->setGeometry(0,0,1000,1000);
+//    scrollArea->setWidget(edit);
+    //
+
+
+    scrollArea->setWidget(contactWidget);
+    scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAsNeeded);
+    scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
+    //scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
+    //scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
+
+    layout->addWidget(scrollArea, 0, 0, 1, 1);
+    setLayout(layout);
+}
+
+void ContactPage::updateSize()
+{
+    //qDebug() << "ContactPage::updateSize()";
+    contactWidget->resize( ( scrollArea->width() - scrollArea->verticalScrollBar()->width() - 5 ),
+                           ( scrollArea->height() - scrollArea->horizontalScrollBar()->height() - 5 ));
+}
+
+void ContactPage::initContactWidget()
+{
+    contactWidget->initContactWidget();
+}
+
+void ContactPage::update()
+{
+    //qDebug() << "ContactPage::update()";
+    contactWidget->update();
+}
+
+void ContactPage::refreshContactList()
+{
+    contactWidget->refreshContactList();
+}
+
+QString ContactPage::title()
+{
+    return tr("ContactPage");
+}
+
+void ContactPage::cleanSelectedContactList()
+{
+    contactWidget->cleanSelectedContactList();
+}
+
+QVector<ContactWidgetItem*>* ContactPage::getSelectedContacts()
+{
+    return contactWidget->getSelectedContacts();
+}
+
+void ContactPage::onValidRecyele(bool valid)
+{
+    Q_EMIT validRecycle(valid);
+}
+
+void ContactPage::removeSelectedContact()
+{
+    contactWidget->removeSelectedContact();
+}
+
+void ContactPage::setContactItemObserver()
+{
+    contactWidget->setItemObserver();
+}