#include #include "addressbook.h" #include "ui_addressbook.h" #include "globals.h" #include "addressbookmodel.h" AddressBook::AddressBook(QWidget *parent) : QMainWindow(parent), ui(new Ui::AddressBook) { ui->setupUi(this); connect(g.tm, SIGNAL(authDone()), this, SLOT(fetchAddressBooks())); connect(g.tm, SIGNAL(addressBook(wiregui_proto::AddressBook)), this, SLOT(addressBook(wiregui_proto::AddressBook))); pvt_model = new AddressBookModel(this); pub_model = new AddressBookModel(this); connect(ui->pushButton, SIGNAL(clicked()), ui->tablePrivate, SLOT(update())); } AddressBook::~AddressBook() { delete ui; } void AddressBook::addressBook(const wiregui_proto::AddressBook &msg) { switch(msg.type()) { case wiregui_proto::AddressBook::PUBLIC: pub_model->addressBook(msg); ui->tablePublic->setModel(pub_model); ui->tablePublic->resizeColumnsToContents(); ui->tablePublic->resizeRowsToContents(); break; case wiregui_proto::AddressBook::PRIVATE: pvt_model->addressBook(msg); ui->tablePrivate->setModel(pvt_model); ui->tablePrivate->resizeColumnsToContents(); ui->tablePrivate->resizeRowsToContents(); return; } } void AddressBook::fetchAddressBooks() { wiregui_proto::AddressBook msg; msg.set_type(wiregui_proto::AddressBook::PRIVATE); msg.set_user_id(g.tm->getUserId()); g.tm->sendMessage(MessageBase::FetchAddressBook, msg); wiregui_proto::AddressBook msgPublic; msg.set_type(wiregui_proto::AddressBook::PUBLIC); g.tm->sendMessage(MessageBase::FetchAddressBook, msgPublic); }