fix selection on chattab

This commit is contained in:
DenioD
2020-05-20 23:53:39 +02:00
parent da65008a88
commit 69799fb812
7 changed files with 383 additions and 397 deletions

View File

@@ -52,11 +52,14 @@ std::map<QString, ChatItem> ChatDataStore::getAllRawChatItems()
std::map<QString, ChatItem> ChatDataStore::getAllNewContactRequests() std::map<QString, ChatItem> ChatDataStore::getAllNewContactRequests()
{ {
std::map<QString, ChatItem> filteredItems; std::map<QString, ChatItem> filteredItems;
for(auto &c: this->data) for(auto &c: this->data)
{ {
if ( if (
(c.second.isOutgoing() == false) && (c.second.isOutgoing() == false) &&
(c.second.getType() == "cont") (c.second.getType() == "Cont") &&
(c.second.getContact() == "")
) )
{ {
@@ -74,7 +77,7 @@ std::map<QString, ChatItem> ChatDataStore::getAllOldContactRequests()
{ {
if ( if (
(c.second.isOutgoing() == false) && (c.second.isOutgoing() == false) &&
(c.second.getType() == "cont") && (c.second.getType() == "Cont") &&
(p.getPartnerAddress() == c.second.getRequestZaddr()) (p.getPartnerAddress() == c.second.getRequestZaddr())
) )
{ {

View File

@@ -144,7 +144,7 @@ QString ChatItem::toChatLine()
} }
QString line = QString("<small style='background: rgba(255,255,255,0.1);'>") + myDateTime.toString("dd.MM.yyyy hh:mm"); QString line = QString("<small>") + myDateTime.toString("dd.MM.yyyy hh:mm");
line += QString(lock) + QString("</small>"); line += QString(lock) + QString("</small>");
line += QString("<p>") + _memo.toHtmlEscaped() + QString("</p>"); line += QString("<p>") + _memo.toHtmlEscaped() + QString("</p>");
return line; return line;

View File

@@ -26,20 +26,6 @@ ChatModel::ChatModel(std::vector<ChatItem> chatItems)
this->setItems(chatItems); this->setItems(chatItems);
} }
/*QString ChatModel::generateChatItemID(ChatItem item)
{
QString key = QString::number(item.getTimestamp()) + QString("-");
key += QString(QCryptographicHash::hash(
QString(
QString::number(item.getTimestamp()) +
item.getAddress() +
item.getContact() +
item.getMemo()
).toUtf8()
,QCryptographicHash::Md5).toHex());
return key;
}*/
std::map<QString, ChatItem> ChatModel::getItems() std::map<QString, ChatItem> ChatModel::getItems()
{ {
return this->chatItems; return this->chatItems;
@@ -81,11 +67,13 @@ void ChatModel::showMessages()
{ {
for(auto &c : this->chatItems) for(auto &c : this->chatItems)
{ {
qDebug() << c.second.toChatLine(); // qDebug() << c.second.toChatLine();
} }
} }
void MainWindow::renderContactRequest(){ void MainWindow::renderContactRequest(){
Ui_requestDialog requestContact; Ui_requestDialog requestContact;
@@ -95,8 +83,11 @@ void MainWindow::renderContactRequest(){
QStandardItemModel* contactRequest = new QStandardItemModel(); QStandardItemModel* contactRequest = new QStandardItemModel();
{ // auto labels = AddressBook::getInstance()->getAllAddressLabels();
for (auto &c : DataStore::getChatDataStore()->getAllOldContactRequests()) for (auto &c : DataStore::getChatDataStore()->getAllNewContactRequests())
// if (labels.adress() != c.second.getRequestZaddr())
{ {
QStandardItem* Items = new QStandardItem(c.second.getAddress()); QStandardItem* Items = new QStandardItem(c.second.getAddress());
@@ -104,7 +95,17 @@ void MainWindow::renderContactRequest(){
requestContact.requestContact->setModel(contactRequest); requestContact.requestContact->setModel(contactRequest);
requestContact.requestContact->show(); requestContact.requestContact->show();
} }
} QStandardItemModel* contactRequestOld = new QStandardItemModel();
for (auto &c : DataStore::getChatDataStore()->getAllOldContactRequests())
{
QStandardItem* Items = new QStandardItem(c.second.getAddress());
contactRequestOld->appendRow(Items);
requestContact.requestContactOld->setModel(contactRequestOld);
requestContact.requestContactOld->show();
}
//}
QObject::connect(requestContact.requestContact, &QTableView::clicked, [&] () { QObject::connect(requestContact.requestContact, &QTableView::clicked, [&] () {
@@ -113,7 +114,7 @@ void MainWindow::renderContactRequest(){
QString label_contact = index.data(Qt::DisplayRole).toString(); QString label_contact = index.data(Qt::DisplayRole).toString();
QStandardItemModel* contactMemo = new QStandardItemModel(); QStandardItemModel* contactMemo = new QStandardItemModel();
if ((c.second.isOutgoing() == false) && (label_contact == c.second.getAddress()) && (c.second.getType() == "cont")) if ((c.second.isOutgoing() == false) && (label_contact == c.second.getAddress()) && (c.second.getType() != "Cont"))
{ {
@@ -283,7 +284,8 @@ Tx MainWindow::createTxFromChatPage() {
qDebug() << "pushback chattx"; qDebug() << "pushback chattx";
} } }
}
tx.fee = Settings::getMinerFee(); tx.fee = Settings::getMinerFee();
@@ -441,15 +443,13 @@ void::MainWindow::addContact() {
QString cid = QUuid::createUuid().toString(QUuid::WithoutBraces); QString cid = QUuid::createUuid().toString(QUuid::WithoutBraces);
request.cid->setText(cid); request.cid->setText(cid);
QObject::connect(request.sendRequestButton, &QPushButton::clicked, [&] () { QObject::connect(request.sendRequestButton, &QPushButton::clicked, [&] () {
QString cid = request.cid->text(); QString cid = request.cid->text();
auto addr = request.zaddr->text().trimmed(); auto addr = request.zaddr->text().trimmed();
QString getrequest = addr;
QString newLabel = request.labelRequest->text().trimmed(); QString newLabel = request.labelRequest->text().trimmed();
auto myAddr = request.myzaddr->text().trimmed(); auto myAddr = request.myzaddr->text().trimmed();
@@ -494,9 +494,17 @@ void::MainWindow::addContact() {
); );
return; return;
}); });
// QObject::connect(request.sendRequestButton, &QPushButton::clicked, this, &MainWindow::ContactRequest);
dialog.exec(); dialog.exec();
rpc->refreshContacts(
ui->listContactWidget
);
} }
@@ -504,17 +512,10 @@ void::MainWindow::addContact() {
// Create a Tx for a contact Request // Create a Tx for a contact Request
Tx MainWindow::createTxForSafeContactRequest() { Tx MainWindow::createTxForSafeContactRequest() {
Ui_Dialog request;
QDialog dialog(this);
request.setupUi(&dialog);
Settings::saveRestore(&dialog);
Tx tx; Tx tx;
{ {
// For each addr/amt in the Chat tab
{ {
CAmount totalAmt; CAmount totalAmt;
QString amtStr = "0"; QString amtStr = "0";
@@ -525,29 +526,40 @@ Tx tx;
totalAmt = totalAmt + amt; totalAmt = totalAmt + amt;
QString cid = request.cid->text(); for(auto &c : AddressBook::getInstance()->getAllAddressLabels())
QString myAddr = request.myzaddr->text().trimmed();
QString type = "cont";
QString addr = request.zaddr->text().trimmed();
QString hmemo= createHeaderMemo(type,cid,myAddr); if (ui->contactNameMemo->text().trimmed() == c.getName()) {
QString memo = request.memorequest->toPlainText().trimmed();
tx.toAddrs.push_back(ToFields{addr, amt, memo}); QString cid = c.getCid();
tx.toAddrs.push_back(ToFields{addr, amt, hmemo}); QString myAddr = c.getMyAddress();
QString type = "Cont";
QString addr = c.getPartnerAddress();
qDebug() << "pushback chattx"; QString hmemo= createHeaderMemo(type,cid,myAddr);
QString memo = ui->memoTxtChat->toPlainText().trimmed();
// ui->memoSizeChat->setLenDisplayLabel();// Todo -> activate lendisplay for chat
tx.toAddrs.push_back(ToFields{addr, amt, hmemo});
tx.toAddrs.push_back(ToFields{addr, amt, memo});
qDebug() << "pushback chattx";
}
tx.fee = Settings::getMinerFee(); tx.fee = Settings::getMinerFee();
}
} }
return tx; return tx;
qDebug() << "RequestTx created"; qDebug() << "RequestTx created";
} }
}
void MainWindow::ContactRequest() { void MainWindow::ContactRequest() {

View File

@@ -6,15 +6,15 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>780</width> <width>777</width>
<height>416</height> <height>427</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>Send a contact request</string> <string>Send a contact request</string>
</property> </property>
<layout class="QGridLayout" name="gridLayout"> <layout class="QGridLayout" name="gridLayout">
<item row="0" column="2" colspan="2"> <item row="0" column="2">
<widget class="QLabel" name="label_6"> <widget class="QLabel" name="label_6">
<property name="text"> <property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;right&quot;&gt;Choose a avatar for your contact :&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string> <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;right&quot;&gt;Choose a avatar for your contact :&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
@@ -185,9 +185,6 @@
<item row="6" column="0"> <item row="6" column="0">
<widget class="QLineEdit" name="myzaddr"/> <widget class="QLineEdit" name="myzaddr"/>
</item> </item>
<item row="6" column="1" rowspan="3" colspan="3">
<widget class="QTextEdit" name="memorequest"/>
</item>
<item row="7" column="0"> <item row="7" column="0">
<widget class="QLabel" name="label_5"> <widget class="QLabel" name="label_5">
<property name="text"> <property name="text">
@@ -234,13 +231,6 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="9" column="3">
<widget class="QPushButton" name="sendcontactrequest">
<property name="text">
<string>Send Contact</string>
</property>
</widget>
</item>
</layout> </layout>
</widget> </widget>
<resources/> <resources/>
@@ -265,7 +255,7 @@
<sender>sendRequestButton</sender> <sender>sendRequestButton</sender>
<signal>clicked()</signal> <signal>clicked()</signal>
<receiver>Dialog</receiver> <receiver>Dialog</receiver>
<slot>update()</slot> <slot>accept()</slot>
<hints> <hints>
<hint type="sourcelabel"> <hint type="sourcelabel">
<x>536</x> <x>536</x>

View File

@@ -102,6 +102,10 @@ void Controller::setConnection(Connection* c)
DataStore::getSietchDataStore()->setData("Sietch" + QString(i), zdust.toUtf8()); DataStore::getSietchDataStore()->setData("Sietch" + QString(i), zdust.toUtf8());
}); });
} }
refreshContacts(
ui->listContactWidget
);
} }
// Build the RPC JSON Parameters for this tx // Build the RPC JSON Parameters for this tx
@@ -797,6 +801,7 @@ void Controller::refreshBalances()
CAmount balAvailable = balT + balVerified; CAmount balAvailable = balT + balVerified;
model->setAvailableBalance(balAvailable); model->setAvailableBalance(balAvailable);
updateUIBalances(); updateUIBalances();
}); });
// 2. Get the UTXOs // 2. Get the UTXOs
@@ -881,8 +886,8 @@ void Controller::refreshTransactions() {
confirmations, confirmations,
true true
); );
qDebug()<<"Memo : " <<memo; // qDebug()<<"Memo : " <<memo;
qDebug()<<"Confirmation :" << confirmations; // qDebug()<<"Confirmation :" << confirmations;
DataStore::getChatDataStore()->setData(ChatIDGenerator::getInstance()->generateID(item), item); DataStore::getChatDataStore()->setData(ChatIDGenerator::getInstance()->generateID(item), item);
@@ -978,8 +983,8 @@ void Controller::refreshTransactions() {
confirmations, confirmations,
false false
); );
qDebug()<< "Position : " << position; // qDebug()<< "Position : " << position;
qDebug()<<"Confirmation :" << confirmations; // qDebug()<<"Confirmation :" << confirmations;
DataStore::getChatDataStore()->setData(ChatIDGenerator::getInstance()->generateID(item), item); DataStore::getChatDataStore()->setData(ChatIDGenerator::getInstance()->generateID(item), item);
} }
@@ -1005,10 +1010,10 @@ void Controller::refreshTransactions() {
// Update model data, which updates the table view // Update model data, which updates the table view
transactionsTableModel->replaceData(txdata); transactionsTableModel->replaceData(txdata);
chat->renderChatBox(ui, ui->listChat); chat->renderChatBox(ui, ui->listChat);
refreshContacts( // refreshContacts(
ui->listContactWidget // ui->listContactWidget
); // );
}); });
} }

View File

@@ -50,6 +50,7 @@ public:
QString doSendTxValidations(Tx tx); QString doSendTxValidations(Tx tx);
QString doSendChatTxValidations(Tx tx); QString doSendChatTxValidations(Tx tx);
QString doSendRequestTxValidations(Tx tx); QString doSendRequestTxValidations(Tx tx);
QString getCid();
void replaceWormholeClient(WormholeClient* newClient); void replaceWormholeClient(WormholeClient* newClient);
bool isWebsocketListening(); bool isWebsocketListening();

View File

@@ -6,350 +6,325 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>1011</width> <width>1025</width>
<height>503</height> <height>562</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>Incoming contact request</string> <string>Incoming contact request</string>
</property> </property>
<widget class="QListView" name="requestContact"> <layout class="QGridLayout" name="gridLayout">
<property name="geometry"> <item row="0" column="0">
<rect> <widget class="QLabel" name="label">
<x>9</x> <property name="text">
<y>9</y> <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-weight:600; text-decoration: underline;&quot;&gt;Open requests&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
<width>256</width> </property>
<height>461</height> </widget>
</rect>
</property>
<property name="mouseTracking">
<bool>true</bool>
</property>
<property name="editTriggers">
<set>QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set>
</property>
<property name="alternatingRowColors">
<bool>false</bool>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::SingleSelection</enum>
</property>
</widget>
<widget class="QListView" name="requestMemo">
<property name="geometry">
<rect>
<x>263</x>
<y>9</y>
<width>741</width>
<height>271</height>
</rect>
</property>
<property name="verticalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<property name="sizeAdjustPolicy">
<enum>QAbstractScrollArea::AdjustToContents</enum>
</property>
<property name="editTriggers">
<set>QAbstractItemView::NoEditTriggers</set>
</property>
<property name="resizeMode">
<enum>QListView::Adjust</enum>
</property>
<property name="modelColumn">
<number>0</number>
</property>
<property name="uniformItemSizes">
<bool>false</bool>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
<widget class="QLabel" name="label_8">
<property name="geometry">
<rect>
<x>276</x>
<y>296</y>
<width>101</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>Request from :</string>
</property>
</widget>
<widget class="QLineEdit" name="requestZaddr">
<property name="geometry">
<rect>
<x>393</x>
<y>296</y>
<width>601</width>
<height>25</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="label_9">
<property name="geometry">
<rect>
<x>276</x>
<y>327</y>
<width>30</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>Cid :</string>
</property>
</widget>
<widget class="QLineEdit" name="requestCID">
<property name="geometry">
<rect>
<x>393</x>
<y>327</y>
<width>601</width>
<height>25</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="label_7">
<property name="geometry">
<rect>
<x>276</x>
<y>358</y>
<width>71</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>My Zaddr :</string>
</property>
</widget>
<widget class="QLineEdit" name="requestMyAddr">
<property name="geometry">
<rect>
<x>393</x>
<y>358</y>
<width>601</width>
<height>25</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="label_5">
<property name="geometry">
<rect>
<x>276</x>
<y>389</y>
<width>68</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>Nickname</string>
</property>
</widget>
<widget class="QLineEdit" name="requestLabel">
<property name="geometry">
<rect>
<x>393</x>
<y>389</y>
<width>221</width>
<height>25</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="label_6">
<property name="geometry">
<rect>
<x>276</x>
<y>420</y>
<width>228</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;right&quot;&gt;Choose a avatar for your contact :&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
<widget class="QComboBox" name="comboBoxAvatar">
<property name="geometry">
<rect>
<x>510</x>
<y>420</y>
<width>106</width>
<height>25</height>
</rect>
</property>
<item>
<property name="text">
<string>Stag</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Stag.png</activeon>
</iconset>
</property>
</item> </item>
<item> <item row="0" column="1" colspan="4">
<property name="text"> <widget class="QLabel" name="label_3">
<string>Elsa</string> <property name="text">
</property> <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-weight:600; text-decoration: underline;&quot;&gt;Memo of the request&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
<property name="icon"> </property>
<iconset> </widget>
<normalon>:/icons/res/Elsa.png</normalon>
</iconset>
</property>
</item> </item>
<item> <item row="1" column="0">
<property name="text"> <widget class="QListView" name="requestContact">
<string>Denio</string> <property name="mouseTracking">
</property> <bool>true</bool>
<property name="icon"> </property>
<iconset> <property name="editTriggers">
<activeon>:/icons/res/Denio.png</activeon> <set>QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set>
</iconset> </property>
</property> <property name="alternatingRowColors">
<bool>false</bool>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::SingleSelection</enum>
</property>
</widget>
</item> </item>
<item> <item row="1" column="1" colspan="4">
<property name="text"> <widget class="QListView" name="requestMemo">
<string>Duke</string> <property name="verticalScrollBarPolicy">
</property> <enum>Qt::ScrollBarAlwaysOff</enum>
<property name="icon"> </property>
<iconset> <property name="horizontalScrollBarPolicy">
<activeon>:/icons/res/Duke.png</activeon> <enum>Qt::ScrollBarAlwaysOff</enum>
</iconset> </property>
</property> <property name="sizeAdjustPolicy">
<enum>QAbstractScrollArea::AdjustToContents</enum>
</property>
<property name="editTriggers">
<set>QAbstractItemView::NoEditTriggers</set>
</property>
<property name="resizeMode">
<enum>QListView::Adjust</enum>
</property>
<property name="modelColumn">
<number>0</number>
</property>
<property name="uniformItemSizes">
<bool>false</bool>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item> </item>
<item> <item row="2" column="0">
<property name="text"> <widget class="QLabel" name="label_2">
<string>Yoda</string> <property name="text">
</property> <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-weight:600; text-decoration: underline;&quot;&gt;Recently closed requests&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
<property name="icon"> </property>
<iconset> </widget>
<activeon>:/icons/res/Yoda.png</activeon>
</iconset>
</property>
</item> </item>
<item> <item row="2" column="1" rowspan="2" colspan="4">
<property name="text"> <widget class="QLabel" name="label_4">
<string>Berg</string> <property name="text">
</property> <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-weight:600; text-decoration: underline;&quot;&gt;Details of the request&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
<property name="icon"> </property>
<iconset> </widget>
<activeon>:/icons/res/Berg.png</activeon>
</iconset>
</property>
</item> </item>
<item> <item row="3" column="0" rowspan="7">
<property name="text"> <widget class="QListView" name="requestContactOld">
<string>Sharpee</string> <property name="mouseTracking">
</property> <bool>true</bool>
<property name="icon"> </property>
<iconset> <property name="editTriggers">
<activeon>:/icons/res/Sharpee.png</activeon> <set>QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set>
</iconset> </property>
</property> <property name="alternatingRowColors">
<bool>false</bool>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::SingleSelection</enum>
</property>
</widget>
</item> </item>
<item> <item row="4" column="1">
<property name="text"> <widget class="QLabel" name="label_8">
<string>Garfield</string> <property name="text">
</property> <string>Request from :</string>
<property name="icon"> </property>
<iconset> </widget>
<activeon>:/icons/res/Garfield.png</activeon>
</iconset>
</property>
</item> </item>
<item> <item row="4" column="2" colspan="3">
<property name="text"> <widget class="QLineEdit" name="requestZaddr"/>
<string>Snoopy</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Snoopy.png</activeon>
</iconset>
</property>
</item> </item>
<item> <item row="5" column="1">
<property name="text"> <widget class="QLabel" name="label_9">
<string>Popey</string> <property name="text">
</property> <string>Cid :</string>
<property name="icon"> </property>
<iconset> </widget>
<activeon>:/icons/res/Popey.png</activeon>
</iconset>
</property>
</item> </item>
<item> <item row="5" column="2" colspan="3">
<property name="text"> <widget class="QLineEdit" name="requestCID"/>
<string>Pinguin</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Pinguin.png</activeon>
</iconset>
</property>
</item> </item>
<item> <item row="6" column="1">
<property name="text"> <widget class="QLabel" name="label_7">
<string>Mickey</string> <property name="text">
</property> <string>My Zaddr :</string>
<property name="icon"> </property>
<iconset> </widget>
<activeon>:/icons/res/Mickey.png</activeon>
</iconset>
</property>
</item> </item>
<item> <item row="6" column="2" colspan="3">
<property name="text"> <widget class="QLineEdit" name="requestMyAddr"/>
<string>SDLogo</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/sdlogo2.png</activeon>
</iconset>
</property>
</item> </item>
</widget> <item row="7" column="1">
<widget class="QPushButton" name="cancel"> <widget class="QLabel" name="label_5">
<property name="geometry"> <property name="text">
<rect> <string>Nickname</string>
<x>300</x> </property>
<y>470</y> </widget>
<width>80</width> </item>
<height>25</height> <item row="7" column="2" colspan="2">
</rect> <widget class="QLineEdit" name="requestLabel"/>
</property> </item>
<property name="baseSize"> <item row="8" column="1" colspan="2">
<size> <widget class="QLabel" name="label_6">
<width>100</width> <property name="text">
<height>0</height> <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;right&quot;&gt;Choose a avatar for your contact :&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</size> </property>
</property> </widget>
<property name="text"> </item>
<string>Cancel</string> <item row="8" column="3">
</property> <widget class="QComboBox" name="comboBoxAvatar">
<property name="flat"> <item>
<bool>false</bool> <property name="text">
</property> <string>Stag</string>
</widget> </property>
<widget class="QPushButton" name="pushButton"> <property name="icon">
<property name="geometry"> <iconset>
<rect> <activeon>:/icons/res/Stag.png</activeon>
<x>400</x> </iconset>
<y>470</y> </property>
<width>101</width> </item>
<height>25</height> <item>
</rect> <property name="text">
</property> <string>Elsa</string>
<property name="text"> </property>
<string>Add Contact</string> <property name="icon">
</property> <iconset>
</widget> <normalon>:/icons/res/Elsa.png</normalon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Denio</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Denio.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Duke</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Duke.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Yoda</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Yoda.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Berg</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Berg.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Sharpee</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Sharpee.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Garfield</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Garfield.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Snoopy</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Snoopy.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Popey</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Popey.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Pinguin</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Pinguin.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>Mickey</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/Mickey.png</activeon>
</iconset>
</property>
</item>
<item>
<property name="text">
<string>SDLogo</string>
</property>
<property name="icon">
<iconset>
<activeon>:/icons/res/sdlogo2.png</activeon>
</iconset>
</property>
</item>
</widget>
</item>
<item row="9" column="3">
<widget class="QPushButton" name="cancel">
<property name="baseSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Cancel</string>
</property>
<property name="flat">
<bool>false</bool>
</property>
</widget>
</item>
<item row="9" column="4">
<widget class="QPushButton" name="pushButton">
<property name="text">
<string>Add this new Contact</string>
</property>
</widget>
</item>
</layout>
</widget> </widget>
<resources/> <resources/>
<connections/> <connections>
<connection>
<sender>cancel</sender>
<signal>clicked()</signal>
<receiver>requestDialog</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>339</x>
<y>482</y>
</hint>
<hint type="destinationlabel">
<x>505</x>
<y>251</y>
</hint>
</hints>
</connection>
</connections>
</ui> </ui>