@@ -41,6 +41,15 @@
|
||||
<file>res/lock_green.svg</file>
|
||||
<file>res/lock_blue.svg</file>
|
||||
<file>res/unlocked.svg</file>
|
||||
<file>res/getAddrWhite.png</file>
|
||||
<file>res/send-white.png</file>
|
||||
<file>res/requestWhite.png</file>
|
||||
<file>res/addContactWhite.png</file>
|
||||
<file>res/getAddrBlack.png</file>
|
||||
<file>res/sendBlack.png</file>
|
||||
<file>res/requestBlack.png</file>
|
||||
<file>res/addContactBlack.png</file>
|
||||
|
||||
</qresource>
|
||||
<qresource prefix="/img">
|
||||
<file>res/hushdlogo.gif</file>
|
||||
|
||||
6
lib/Cargo.lock
generated
@@ -1177,7 +1177,7 @@ version = "0.1.0"
|
||||
dependencies = [
|
||||
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"silentdragonlitelib 0.1.0 (git+https://github.com/DenioD/silentdragonlite-cli?rev=32ca60735b3529ff8589ab08fc16678f508a9359)",
|
||||
"silentdragonlitelib 0.1.0 (git+https://github.com/DenioD/silentdragonlite-cli?rev=e368816c6d12267f25fbebec0aaac4c15d62d2a3)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -1640,7 +1640,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "silentdragonlitelib"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/DenioD/silentdragonlite-cli?rev=32ca60735b3529ff8589ab08fc16678f508a9359#32ca60735b3529ff8589ab08fc16678f508a9359"
|
||||
source = "git+https://github.com/DenioD/silentdragonlite-cli?rev=e368816c6d12267f25fbebec0aaac4c15d62d2a3#e368816c6d12267f25fbebec0aaac4c15d62d2a3"
|
||||
dependencies = [
|
||||
"base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bellman 0.1.0 (git+https://github.com/MyHush/librustzcash.git?rev=1a0204113d487cdaaf183c2967010e5214ff9e37)",
|
||||
@@ -2631,7 +2631,7 @@ dependencies = [
|
||||
"checksum serde_yaml 0.8.11 (registry+https://github.com/rust-lang/crates.io-index)" = "691b17f19fc1ec9d94ec0b5864859290dff279dbd7b03f017afda54eb36c3c35"
|
||||
"checksum sha2 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "27044adfd2e1f077f649f59deb9490d3941d674002f7d062870a60ebe9bd47a0"
|
||||
"checksum signal-hook-registry 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94f478ede9f64724c5d173d7bb56099ec3e2d9fc2774aac65d34b8b890405f41"
|
||||
"checksum silentdragonlitelib 0.1.0 (git+https://github.com/DenioD/silentdragonlite-cli?rev=32ca60735b3529ff8589ab08fc16678f508a9359)" = "<none>"
|
||||
"checksum silentdragonlitelib 0.1.0 (git+https://github.com/DenioD/silentdragonlite-cli?rev=e368816c6d12267f25fbebec0aaac4c15d62d2a3)" = "<none>"
|
||||
"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
|
||||
"checksum smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6"
|
||||
"checksum socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e8b74de517221a2cb01a53349cf54182acdc31a074727d3079068448c0676d85"
|
||||
|
||||
@@ -11,4 +11,4 @@ crate-type = ["staticlib"]
|
||||
[dependencies]
|
||||
libc = "0.2.58"
|
||||
lazy_static = "1.4.0"
|
||||
silentdragonlitelib = { git = "https://github.com/DenioD/silentdragonlite-cli", rev = "32ca60735b3529ff8589ab08fc16678f508a9359" }
|
||||
silentdragonlitelib = { git = "https://github.com/DenioD/silentdragonlite-cli", rev = "e368816c6d12267f25fbebec0aaac4c15d62d2a3" }
|
||||
|
||||
BIN
res/addContactBlack.png
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
res/addContactWhite.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
res/getAddrBlack.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
res/getAddrWhite.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
res/lock_green.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
res/requestBlack.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
res/requestWhite.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
res/send-white.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
res/sendBlack.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
res/unlocked.png
Normal file
|
After Width: | Height: | Size: 1006 B |
@@ -2,6 +2,7 @@
|
||||
// GPLv3
|
||||
|
||||
#include "ChatDataStore.h"
|
||||
#include "addressbook.h"
|
||||
|
||||
ChatDataStore* ChatDataStore::getInstance()
|
||||
{
|
||||
@@ -48,15 +49,18 @@ std::map<QString, ChatItem> ChatDataStore::getAllRawChatItems()
|
||||
return this->data;
|
||||
}
|
||||
|
||||
std::map<QString, ChatItem> ChatDataStore::getAllContactRequests()
|
||||
std::map<QString, ChatItem> ChatDataStore::getAllNewContactRequests()
|
||||
{
|
||||
std::map<QString, ChatItem> filteredItems;
|
||||
|
||||
for(auto &c: this->data)
|
||||
{
|
||||
if (
|
||||
(c.second.isOutgoing() == false) &&
|
||||
(c.second.getType() == "cont") &&
|
||||
(c.second.getMemo().startsWith("{"))
|
||||
(c.second.getType() == "Cont") &&
|
||||
(c.second.getContact() == "")
|
||||
|
||||
|
||||
)
|
||||
{
|
||||
filteredItems[c.first] = c.second;
|
||||
@@ -65,6 +69,23 @@ std::map<QString, ChatItem> ChatDataStore::getAllContactRequests()
|
||||
return filteredItems;
|
||||
}
|
||||
|
||||
std::map<QString, ChatItem> ChatDataStore::getAllOldContactRequests()
|
||||
{
|
||||
std::map<QString, ChatItem> filteredItems;
|
||||
for(auto &p : AddressBook::getInstance()->getAllAddressLabels())
|
||||
for(auto &c: this->data)
|
||||
{
|
||||
if (
|
||||
(c.second.isOutgoing() == false) &&
|
||||
(c.second.getType() == "Cont") &&
|
||||
(p.getPartnerAddress() == c.second.getRequestZaddr())
|
||||
)
|
||||
{
|
||||
filteredItems[c.first] = c.second;
|
||||
}
|
||||
}
|
||||
return filteredItems;
|
||||
}
|
||||
|
||||
std::map<QString, ChatItem> ChatDataStore::getAllMemos()
|
||||
{
|
||||
|
||||
@@ -22,7 +22,8 @@ class ChatDataStore
|
||||
void setData(QString key, ChatItem value);
|
||||
ChatItem getData(QString key);
|
||||
std::map<QString, ChatItem> getAllRawChatItems();
|
||||
std::map<QString, ChatItem> getAllContactRequests();
|
||||
std::map<QString, ChatItem> getAllNewContactRequests();
|
||||
std::map<QString, ChatItem> getAllOldContactRequests();
|
||||
std::map<QString, ChatItem> getAllMemos();
|
||||
QString dump();
|
||||
|
||||
|
||||
@@ -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("<p>") + _memo.toHtmlEscaped() + QString("</p>");
|
||||
return line;
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
#include "addressbook.h"
|
||||
#include "ui_memodialog.h"
|
||||
#include "ui_contactrequest.h"
|
||||
#include "addressbook.h"
|
||||
#include <QtWidgets>
|
||||
#include <QUuid>
|
||||
#include "DataStore/DataStore.h"
|
||||
@@ -27,20 +26,6 @@ ChatModel::ChatModel(std::vector<ChatItem> 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()
|
||||
{
|
||||
return this->chatItems;
|
||||
@@ -82,10 +67,12 @@ void ChatModel::showMessages()
|
||||
{
|
||||
for(auto &c : this->chatItems)
|
||||
{
|
||||
qDebug() << c.second.toChatLine();
|
||||
// qDebug() << c.second.toChatLine();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
void MainWindow::renderContactRequest(){
|
||||
|
||||
@@ -96,8 +83,8 @@ void MainWindow::renderContactRequest(){
|
||||
|
||||
QStandardItemModel* contactRequest = new QStandardItemModel();
|
||||
|
||||
{
|
||||
for (auto &c : DataStore::getChatDataStore()->getAllContactRequests())
|
||||
for (auto &c : DataStore::getChatDataStore()->getAllNewContactRequests())
|
||||
|
||||
{
|
||||
|
||||
QStandardItem* Items = new QStandardItem(c.second.getAddress());
|
||||
@@ -105,22 +92,34 @@ void MainWindow::renderContactRequest(){
|
||||
requestContact.requestContact->setModel(contactRequest);
|
||||
requestContact.requestContact->show();
|
||||
}
|
||||
}
|
||||
|
||||
QStandardItemModel* contactRequestOld = new QStandardItemModel();
|
||||
for (auto &p : AddressBook::getInstance()->getAllAddressLabels())
|
||||
for (auto &c : DataStore::getChatDataStore()->getAllOldContactRequests())
|
||||
{
|
||||
if (p.getPartnerAddress() == c.second.getRequestZaddr())
|
||||
{
|
||||
QStandardItem* Items = new QStandardItem(c.second.getAddress());
|
||||
contactRequestOld->appendRow(Items);
|
||||
requestContact.requestContactOld->setModel(contactRequestOld);
|
||||
requestContact.requestContactOld->show();
|
||||
}else{}
|
||||
}
|
||||
|
||||
|
||||
QObject::connect(requestContact.requestContact, &QTableView::clicked, [&] () {
|
||||
|
||||
for (auto &c : DataStore::getChatDataStore()->getAllRawChatItems()){//this->chatItems){
|
||||
for (auto &c : DataStore::getChatDataStore()->getAllRawChatItems()){
|
||||
QModelIndex index = requestContact.requestContact->currentIndex();
|
||||
QString label_contact = index.data(Qt::DisplayRole).toString();
|
||||
QStandardItemModel* contactMemo = new QStandardItemModel();
|
||||
|
||||
if (c.second.isOutgoing() == false) {
|
||||
if (label_contact == c.second.getAddress()) {
|
||||
if(c.second.getMemo().startsWith("{")){
|
||||
if ((c.second.isOutgoing() == false) && (label_contact == c.second.getAddress()) && (c.second.getType() != "Cont"))
|
||||
|
||||
{
|
||||
|
||||
}else{
|
||||
QStandardItem* Items = new QStandardItem(c.second.getMemo());
|
||||
contactMemo->appendRow(Items);
|
||||
contactMemo->appendRow(Items);
|
||||
requestContact.requestMemo->setModel(contactMemo);
|
||||
requestContact.requestMemo->show();
|
||||
|
||||
@@ -128,11 +127,38 @@ void MainWindow::renderContactRequest(){
|
||||
requestContact.requestZaddr->setText(c.second.getRequestZaddr());
|
||||
requestContact.requestCID->setText(c.second.getCid());
|
||||
requestContact.requestMyAddr->setText(c.second.getAddress());
|
||||
}
|
||||
}else{}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
|
||||
QObject::connect(requestContact.requestContactOld, &QTableView::clicked, [&] () {
|
||||
|
||||
for (auto &c : DataStore::getChatDataStore()->getAllRawChatItems()){
|
||||
QModelIndex index = requestContact.requestContactOld->currentIndex();
|
||||
QString label_contactold = index.data(Qt::DisplayRole).toString();
|
||||
QStandardItemModel* contactMemo = new QStandardItemModel();
|
||||
|
||||
if ((c.second.isOutgoing() == false) && (label_contactold == c.second.getAddress()) && (c.second.getType() != "Cont"))
|
||||
|
||||
{
|
||||
|
||||
QStandardItem* Items = new QStandardItem(c.second.getMemo());
|
||||
contactMemo->appendRow(Items);
|
||||
requestContact.requestMemo->setModel(contactMemo);
|
||||
requestContact.requestMemo->show();
|
||||
|
||||
|
||||
requestContact.requestZaddr->setText(c.second.getRequestZaddr());
|
||||
requestContact.requestCID->setText(c.second.getCid());
|
||||
requestContact.requestMyAddr->setText(c.second.getAddress());
|
||||
}else{}
|
||||
}
|
||||
|
||||
|
||||
|
||||
});
|
||||
|
||||
QObject::connect(requestContact.pushButton, &QPushButton::clicked, [&] () {
|
||||
@@ -173,9 +199,13 @@ void MainWindow::renderContactRequest(){
|
||||
QMessageBox::information(this, "Added Contact","successfully added your new contact. You can now Chat with this contact");
|
||||
|
||||
});
|
||||
|
||||
|
||||
dialog.exec();
|
||||
|
||||
rpc->refreshContacts(
|
||||
ui->listContactWidget
|
||||
|
||||
);
|
||||
}
|
||||
|
||||
void ChatModel::addCid(QString tx, QString cid)
|
||||
@@ -286,7 +316,8 @@ Tx MainWindow::createTxFromChatPage() {
|
||||
|
||||
|
||||
qDebug() << "pushback chattx";
|
||||
} }
|
||||
}
|
||||
}
|
||||
|
||||
tx.fee = Settings::getMinerFee();
|
||||
|
||||
@@ -425,7 +456,8 @@ QString MainWindow::doSendChatTxValidations(Tx tx) {
|
||||
}
|
||||
|
||||
void::MainWindow::addContact() {
|
||||
|
||||
|
||||
|
||||
Ui_Dialog request;
|
||||
QDialog dialog(this);
|
||||
request.setupUi(&dialog);
|
||||
@@ -434,24 +466,29 @@ void::MainWindow::addContact() {
|
||||
bool sapling = true;
|
||||
rpc->createNewZaddr(sapling, [=] (json reply) {
|
||||
QString myAddr = QString::fromStdString(reply.get<json::array_t>()[0]);
|
||||
QString cid = QUuid::createUuid().toString(QUuid::WithoutBraces);
|
||||
request.myzaddr->setText(myAddr);
|
||||
ui->listReceiveAddresses->insertItem(0, myAddr);
|
||||
ui->listReceiveAddresses->setCurrentIndex(0);
|
||||
|
||||
qDebug() << "new generated myAddr" << myAddr;
|
||||
request.myzaddr->setText(myAddr);
|
||||
request.cid->setText(cid);
|
||||
|
||||
});
|
||||
|
||||
|
||||
QString cid = QUuid::createUuid().toString(QUuid::WithoutBraces);
|
||||
request.cid->setText(cid);
|
||||
|
||||
QObject::connect(request.sendRequestButton, &QPushButton::clicked, [&] () {
|
||||
|
||||
|
||||
|
||||
QString cid = request.cid->text();
|
||||
auto addr = request.zaddr->text().trimmed();
|
||||
QString getrequest = addr;
|
||||
QString newLabel = request.labelRequest->text().trimmed();
|
||||
auto myAddr = request.myzaddr->text().trimmed();
|
||||
|
||||
// ChatModel->addSendRequest(myAddr, cid, addr);
|
||||
|
||||
|
||||
|
||||
QString avatar = QString(":/icons/res/") + request.comboBoxAvatar->currentText() + QString(".png");
|
||||
|
||||
if (addr.isEmpty() || newLabel.isEmpty())
|
||||
@@ -489,18 +526,28 @@ void::MainWindow::addContact() {
|
||||
);
|
||||
return;
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
// QObject::connect(request.sendRequestButton, &QPushButton::clicked, this, &MainWindow::ContactRequest);
|
||||
|
||||
dialog.exec();
|
||||
rpc->refreshContacts(
|
||||
ui->listContactWidget
|
||||
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Create a Tx for a contact Request
|
||||
Tx MainWindow::createTxForSafeContactRequest() {
|
||||
|
||||
Tx tx;
|
||||
|
||||
Tx tx;
|
||||
|
||||
// For each addr/amt in the Chat tab
|
||||
{
|
||||
|
||||
{
|
||||
CAmount totalAmt;
|
||||
QString amtStr = "0";
|
||||
@@ -510,41 +557,45 @@ Tx MainWindow::createTxForSafeContactRequest() {
|
||||
amt = CAmount::fromDecimalString("0");
|
||||
totalAmt = totalAmt + amt;
|
||||
|
||||
|
||||
for(auto &c : AddressBook::getInstance()->getAllAddressLabels())
|
||||
if (ui->contactNameMemo->text().trimmed() == c.getName()) {
|
||||
|
||||
for(auto &c : AddressBook::getInstance()->getAllAddressLabels())
|
||||
|
||||
|
||||
if (ui->contactNameMemo->text().trimmed() == c.getName()) {
|
||||
|
||||
QString cid = c.getCid();
|
||||
QString myAddr = c.getMyAddress();
|
||||
QString type = "cont";
|
||||
QString addr = c.getPartnerAddress();
|
||||
QString type = "Cont";
|
||||
QString addr = c.getPartnerAddress();
|
||||
|
||||
|
||||
QString hmemo= createHeaderMemo(type,cid,myAddr);
|
||||
QString memo = ui->memoTxtChat->toPlainText().trimmed();
|
||||
QString hmemo= createHeaderMemo(type,cid,myAddr);
|
||||
QString memo = ui->memoTxtChat->toPlainText().trimmed();
|
||||
|
||||
|
||||
tx.toAddrs.push_back(ToFields{addr, amt, memo});
|
||||
tx.toAddrs.push_back(ToFields{addr, amt, hmemo});
|
||||
|
||||
// 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";
|
||||
|
||||
}
|
||||
|
||||
|
||||
qDebug() << "pushback chattx";
|
||||
|
||||
|
||||
tx.fee = Settings::getMinerFee();
|
||||
|
||||
}
|
||||
}
|
||||
return tx;
|
||||
|
||||
qDebug() << "RequestTx created";
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::ContactRequest() {
|
||||
|
||||
if (ui->contactNameMemo->text().trimmed().isEmpty() || ui->memoTxtChat->toPlainText().trimmed().isEmpty()) {
|
||||
/* if (request.labelRequest->text().trimmed().isEmpty() || request.memorequest->toPlainText().trimmed().isEmpty()) {
|
||||
|
||||
// auto addr = "";
|
||||
// if (! Settings::isZAddress(AddressBook::addressFromAddressLabel(addr->text()))) {
|
||||
@@ -554,7 +605,7 @@ void MainWindow::ContactRequest() {
|
||||
|
||||
msg.exec();
|
||||
return;
|
||||
}
|
||||
}*/
|
||||
|
||||
Tx tx = createTxForSafeContactRequest();
|
||||
|
||||
@@ -632,7 +683,7 @@ void MainWindow::ContactRequest() {
|
||||
QMessageBox::critical(this, QObject::tr("Transaction Error"), errStr, QMessageBox::Ok);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -664,4 +715,4 @@ QString MainWindow::doSendRequestTxValidations(Tx tx) {
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,6 +19,9 @@
|
||||
#include "Chat/Helper/ChatDelegator.h"
|
||||
#include "Chat/Helper/ChatIDGenerator.h"
|
||||
|
||||
namespace Ui {
|
||||
class MainWindow;
|
||||
}
|
||||
class ChatModel
|
||||
{
|
||||
private:
|
||||
@@ -28,6 +31,7 @@ class ChatModel
|
||||
MainWindow* main;
|
||||
std::map<QString, QString> cidMap;
|
||||
std::map<QString, QString> requestZaddrMap;
|
||||
std::map<int, std::tuple<QString, QString, QString>> sendrequestMap;
|
||||
|
||||
public:
|
||||
ChatModel() {};
|
||||
@@ -44,6 +48,7 @@ class ChatModel
|
||||
void addMessage(QString timestamp, ChatItem item);
|
||||
void addCid(QString tx, QString cid);
|
||||
void addrequestZaddr(QString tx, QString requestZaddr);
|
||||
void addSendRequest(int i, QString myAddr, QString cid, QString addr );
|
||||
QString getCidByTx(QString tx);
|
||||
QString getrequestZaddrByTx(QString tx);
|
||||
void killCidCache();
|
||||
|
||||
@@ -6,15 +6,15 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>780</width>
|
||||
<height>416</height>
|
||||
<width>777</width>
|
||||
<height>427</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Send a contact request</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="1" colspan="2">
|
||||
<item row="0" column="2">
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="text">
|
||||
<string><html><head/><body><p align="right">Choose a avatar for your contact :</p></body></html></string>
|
||||
@@ -28,7 +28,7 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<item row="1" column="2">
|
||||
<widget class="QComboBox" name="comboBoxAvatar">
|
||||
<item>
|
||||
<property name="text">
|
||||
@@ -192,7 +192,7 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="8" column="0" colspan="3">
|
||||
<item row="8" column="0">
|
||||
<widget class="QLabel" name="cid">
|
||||
<property name="text">
|
||||
<string/>
|
||||
|
||||
@@ -102,6 +102,10 @@ void Controller::setConnection(Connection* c)
|
||||
DataStore::getSietchDataStore()->setData("Sietch" + QString(i), zdust.toUtf8());
|
||||
});
|
||||
}
|
||||
refreshContacts(
|
||||
ui->listContactWidget
|
||||
|
||||
);
|
||||
}
|
||||
|
||||
// Build the RPC JSON Parameters for this tx
|
||||
@@ -797,6 +801,7 @@ void Controller::refreshBalances()
|
||||
CAmount balAvailable = balT + balVerified;
|
||||
model->setAvailableBalance(balAvailable);
|
||||
updateUIBalances();
|
||||
|
||||
});
|
||||
|
||||
// 2. Get the UTXOs
|
||||
@@ -881,8 +886,8 @@ void Controller::refreshTransactions() {
|
||||
confirmations,
|
||||
true
|
||||
);
|
||||
qDebug()<<"Memo : " <<memo;
|
||||
qDebug()<<"Confirmation :" << confirmations;
|
||||
// qDebug()<<"Memo : " <<memo;
|
||||
// qDebug()<<"Confirmation :" << confirmations;
|
||||
|
||||
DataStore::getChatDataStore()->setData(ChatIDGenerator::getInstance()->generateID(item), item);
|
||||
|
||||
@@ -978,8 +983,8 @@ void Controller::refreshTransactions() {
|
||||
confirmations,
|
||||
false
|
||||
);
|
||||
qDebug()<< "Position : " << position;
|
||||
qDebug()<<"Confirmation :" << confirmations;
|
||||
// qDebug()<< "Position : " << position;
|
||||
// qDebug()<<"Confirmation :" << confirmations;
|
||||
|
||||
DataStore::getChatDataStore()->setData(ChatIDGenerator::getInstance()->generateID(item), item);
|
||||
}
|
||||
@@ -1005,10 +1010,10 @@ void Controller::refreshTransactions() {
|
||||
// Update model data, which updates the table view
|
||||
transactionsTableModel->replaceData(txdata);
|
||||
chat->renderChatBox(ui, ui->listChat);
|
||||
refreshContacts(
|
||||
ui->listContactWidget
|
||||
// refreshContacts(
|
||||
// ui->listContactWidget
|
||||
|
||||
);
|
||||
// );
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -1011,52 +1011,49 @@ void MainWindow::setupchatTab() {
|
||||
|
||||
auto theme = Settings::getInstance()->get_theme_name();
|
||||
if (theme == "dark" || theme == "midnight") {
|
||||
QPixmap send(":/icons/res/send-new-white.png");
|
||||
QPixmap send(":/icons/res/send-white.png");
|
||||
QIcon sendIcon(send);
|
||||
ui->sendChatButton->setIcon(sendIcon);
|
||||
|
||||
QPixmap notification(":/icons/res/notification.png");
|
||||
QPixmap notification(":/icons/res/requestWhite.png");
|
||||
QIcon notificationIcon(notification);
|
||||
ui->pushContact->setIcon(notificationIcon);
|
||||
|
||||
QPixmap addContact(":/icons/res/add_contact.png");
|
||||
QPixmap addContact(":/icons/res/addContactWhite.png");
|
||||
QIcon addContactIcon(addContact);
|
||||
ui->safeContactRequest->setIcon(addContactIcon);
|
||||
|
||||
QPixmap newAddr(":/icons/res/add_contact.png");
|
||||
QPixmap newAddr(":/icons/res/getAddrWhite.png");
|
||||
QIcon addnewAddrIcon(newAddr);
|
||||
ui->givemeZaddr->setIcon(addnewAddrIcon);
|
||||
|
||||
QPixmap sendContact(":/icons/res/upload.png");
|
||||
QIcon addSendContactIcon(sendContact);
|
||||
ui->sendContact->setIcon(addSendContactIcon);
|
||||
ui->memoTxtChat->setTextColor("White");
|
||||
|
||||
}else{
|
||||
QPixmap pixmap(":/icons/res/send-new.svg");
|
||||
QIcon sendIcon(pixmap);
|
||||
|
||||
QPixmap send(":/icons/res/sendBlack.png");
|
||||
QIcon sendIcon(send);
|
||||
ui->sendChatButton->setIcon(sendIcon);
|
||||
|
||||
QPixmap notification(":/icons/res/notification.svg");
|
||||
QPixmap notification(":/icons/res/requestBlack.png");
|
||||
QIcon notificationIcon(notification);
|
||||
ui->pushContact->setIcon(notificationIcon);
|
||||
|
||||
QPixmap addContact(":/icons/res/add_contact.svg");
|
||||
QPixmap addContact(":/icons/res/addContactBlack.png");
|
||||
QIcon addContactIcon(addContact);
|
||||
ui->safeContactRequest->setIcon(addContact);
|
||||
ui->safeContactRequest->setIcon(addContactIcon);
|
||||
|
||||
QPixmap newAddr(":/icons/res/add_contact.svg");
|
||||
QPixmap newAddr(":/icons/res/getAddrBlack.png");
|
||||
QIcon addnewAddrIcon(newAddr);
|
||||
ui->givemeZaddr->setIcon(addnewAddrIcon);
|
||||
|
||||
QPixmap sendContact(":/icons/res/upload.svg");
|
||||
QIcon addSendContactIcon(sendContact);
|
||||
ui->sendContact->setIcon(addSendContactIcon);
|
||||
ui->memoTxtChat->setTextColor("Black");
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
QObject::connect(ui->sendChatButton, &QPushButton::clicked, this, &MainWindow::sendChatButton);
|
||||
QObject::connect(ui->sendContact, &QPushButton::clicked, this, &MainWindow::ContactRequest);
|
||||
QObject::connect(ui->safeContactRequest, &QPushButton::clicked, this, &MainWindow::addContact);
|
||||
QObject::connect(ui->pushContact, &QPushButton::clicked, this , &MainWindow::renderContactRequest);
|
||||
|
||||
@@ -1116,11 +1113,6 @@ void ChatMemoEdit::setMaxLen(int len) {
|
||||
updateDisplay();
|
||||
}
|
||||
|
||||
void ChatMemoEdit::setSendChatButton(QPushButton* button) {
|
||||
this->sendChatButton = button;
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::updateChat()
|
||||
{
|
||||
rpc->refreshChat(ui->listChat);
|
||||
|
||||
@@ -50,6 +50,7 @@ public:
|
||||
QString doSendTxValidations(Tx tx);
|
||||
QString doSendChatTxValidations(Tx tx);
|
||||
QString doSendRequestTxValidations(Tx tx);
|
||||
QString getCid();
|
||||
|
||||
void replaceWormholeClient(WormholeClient* newClient);
|
||||
bool isWebsocketListening();
|
||||
@@ -62,12 +63,7 @@ public:
|
||||
|
||||
void updateLabels();
|
||||
void updateTAddrCombo(bool checked);
|
||||
// void renderContactRequest();
|
||||
// void setChatItem(ChatItem* item);
|
||||
//void ChatItem* getChatItem();
|
||||
|
||||
|
||||
|
||||
// Disable recurring on mainnet
|
||||
void disableRecurring();
|
||||
|
||||
|
||||
@@ -1409,9 +1409,21 @@
|
||||
<height>81</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">font: 11pt "Noto Color Emoji";</string>
|
||||
</property>
|
||||
<property name="autoFormatting">
|
||||
<set>QTextEdit::AutoNone</set>
|
||||
</property>
|
||||
<property name="lineWrapMode">
|
||||
<enum>QTextEdit::FixedColumnWidth</enum>
|
||||
</property>
|
||||
<property name="lineWrapColumnOrWidth">
|
||||
<number>80</number>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLabel" name="contactNameMemo">
|
||||
<property name="geometry">
|
||||
@@ -1435,7 +1447,7 @@
|
||||
<widget class="QPushButton" name="sendChatButton">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1170</x>
|
||||
<x>1160</x>
|
||||
<y>560</y>
|
||||
<width>91</width>
|
||||
<height>81</height>
|
||||
@@ -1455,12 +1467,12 @@
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normalon>:/icons/res/send-new-white.png</normalon>
|
||||
<normalon>:/icons/res/sendBlack.png</normalon>
|
||||
</iconset>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>41</width>
|
||||
<width>50</width>
|
||||
<height>49</height>
|
||||
</size>
|
||||
</property>
|
||||
@@ -1533,18 +1545,21 @@
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Add a new contact</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset theme="Dark">
|
||||
<normalon>:/icons/res/add_contact.png</normalon>
|
||||
<normalon>:/icons/res/addContactBlack.png</normalon>
|
||||
</iconset>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>43</width>
|
||||
<height>49</height>
|
||||
<width>50</width>
|
||||
<height>45</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="flat">
|
||||
@@ -1554,44 +1569,9 @@
|
||||
<widget class="QPushButton" name="pushContact">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>30</y>
|
||||
<width>41</width>
|
||||
<height>41</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="../application.qrc">
|
||||
<normaloff>:/icons/res/notification.png</normaloff>:/icons/res/notification.png</iconset>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>33</width>
|
||||
<height>35</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="flat">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="sendContact">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>270</x>
|
||||
<y>510</y>
|
||||
<width>51</width>
|
||||
<x>50</x>
|
||||
<y>20</y>
|
||||
<width>61</width>
|
||||
<height>51</height>
|
||||
</rect>
|
||||
</property>
|
||||
@@ -1601,18 +1581,23 @@
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Incoming contact request</string>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset theme="Dark">
|
||||
<normalon>:/icons/res/add_contact.png</normalon>
|
||||
</iconset>
|
||||
<iconset resource="../application.qrc">
|
||||
<normaloff>:/icons/res/requestBlack.png</normaloff>:/icons/res/requestBlack.png</iconset>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>43</width>
|
||||
<height>49</height>
|
||||
<width>50</width>
|
||||
<height>45</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="flat">
|
||||
@@ -1622,23 +1607,26 @@
|
||||
<widget class="QPushButton" name="givemeZaddr">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>60</x>
|
||||
<y>30</y>
|
||||
<width>111</width>
|
||||
<height>41</height>
|
||||
<x>210</x>
|
||||
<y>20</y>
|
||||
<width>61</width>
|
||||
<height>51</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Get a new Address</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string> New Addr</string>
|
||||
<string/>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="../application.qrc">
|
||||
<normaloff>:/icons/res/add_contact.png</normaloff>:/icons/res/add_contact.png</iconset>
|
||||
<normaloff>:/icons/res/getAddrBlack.png</normaloff>:/icons/res/getAddrBlack.png</iconset>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>33</width>
|
||||
<height>35</height>
|
||||
<width>50</width>
|
||||
<height>45</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="flat">
|
||||
@@ -1648,8 +1636,8 @@
|
||||
<widget class="QLabel" name="label_40">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>40</x>
|
||||
<y>20</y>
|
||||
<x>90</x>
|
||||
<y>10</y>
|
||||
<width>21</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
@@ -2042,7 +2030,7 @@
|
||||
<customwidget>
|
||||
<class>AddressCombo</class>
|
||||
<extends>QComboBox</extends>
|
||||
<header location="global">addresscombo.h</header>
|
||||
<header>addresscombo.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>QRCodeLabel</class>
|
||||
|
||||
@@ -6,350 +6,325 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1011</width>
|
||||
<height>503</height>
|
||||
<width>1025</width>
|
||||
<height>562</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Incoming contact request</string>
|
||||
</property>
|
||||
<widget class="QListView" name="requestContact">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>9</x>
|
||||
<y>9</y>
|
||||
<width>256</width>
|
||||
<height>461</height>
|
||||
</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><html><head/><body><p align="right">Choose a avatar for your contact :</p></body></html></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>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string><html><head/><body><p align="center"><span style=" font-weight:600; text-decoration: underline;">Open requests</span></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Elsa</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normalon>:/icons/res/Elsa.png</normalon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="0" column="1" colspan="4">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string><html><head/><body><p align="center"><span style=" font-weight:600; text-decoration: underline;">Memo of the request</span></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Denio</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Denio.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="1" column="0">
|
||||
<widget class="QListView" name="requestContact">
|
||||
<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>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Duke</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Duke.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="1" column="1" colspan="4">
|
||||
<widget class="QListView" name="requestMemo">
|
||||
<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>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Yoda</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Yoda.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string><html><head/><body><p align="center"><span style=" font-weight:600; text-decoration: underline;">Recently closed requests</span></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Berg</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Berg.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="2" column="1" rowspan="2" colspan="4">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string><html><head/><body><p align="center"><span style=" font-weight:600; text-decoration: underline;">Details of the request</span></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Sharpee</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Sharpee.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="3" column="0" rowspan="7">
|
||||
<widget class="QListView" name="requestContactOld">
|
||||
<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>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Garfield</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Garfield.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="4" column="1">
|
||||
<widget class="QLabel" name="label_8">
|
||||
<property name="text">
|
||||
<string>Request from :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Snoopy</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Snoopy.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="4" column="2" colspan="3">
|
||||
<widget class="QLineEdit" name="requestZaddr"/>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Popey</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Popey.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="5" column="1">
|
||||
<widget class="QLabel" name="label_9">
|
||||
<property name="text">
|
||||
<string>Cid :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Pinguin</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Pinguin.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="5" column="2" colspan="3">
|
||||
<widget class="QLineEdit" name="requestCID"/>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Mickey</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Mickey.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="6" column="1">
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="text">
|
||||
<string>My Zaddr :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>SDLogo</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/sdlogo2.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
<item row="6" column="2" colspan="3">
|
||||
<widget class="QLineEdit" name="requestMyAddr"/>
|
||||
</item>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="cancel">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>300</x>
|
||||
<y>470</y>
|
||||
<width>80</width>
|
||||
<height>25</height>
|
||||
</rect>
|
||||
</property>
|
||||
<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>
|
||||
<widget class="QPushButton" name="pushButton">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>400</x>
|
||||
<y>470</y>
|
||||
<width>101</width>
|
||||
<height>25</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Add Contact</string>
|
||||
</property>
|
||||
</widget>
|
||||
<item row="7" column="1">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Nickname</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="2" colspan="2">
|
||||
<widget class="QLineEdit" name="requestLabel"/>
|
||||
</item>
|
||||
<item row="8" column="1" colspan="2">
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="text">
|
||||
<string><html><head/><body><p align="right">Choose a avatar for your contact :</p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="8" column="3">
|
||||
<widget class="QComboBox" name="comboBoxAvatar">
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Stag</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<activeon>:/icons/res/Stag.png</activeon>
|
||||
</iconset>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Elsa</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<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>
|
||||
<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>
|
||||
|
||||