From 41e3bbdfae808f7496aab68dca27c4570686b64c Mon Sep 17 00:00:00 2001 From: DenioD <41270280+DenioD@users.noreply.github.com> Date: Wed, 20 May 2020 20:53:14 +0200 Subject: [PATCH] add new icons, dont write over send button --- application.qrc | 9 +++ res/addContactBlack.png | Bin 0 -> 21089 bytes res/addContactWhite.png | Bin 0 -> 12617 bytes res/getAddrBlack.png | Bin 0 -> 20966 bytes res/getAddrWhite.png | Bin 0 -> 12887 bytes res/lock_green.png | Bin 0 -> 1041 bytes res/requestBlack.png | Bin 0 -> 22429 bytes res/requestWhite.png | Bin 0 -> 12883 bytes res/send-white.png | Bin 0 -> 11875 bytes res/sendBlack.png | Bin 0 -> 16812 bytes res/unlocked.png | Bin 0 -> 1006 bytes src/DataStore/ChatDataStore.cpp | 24 +++++++- src/DataStore/ChatDataStore.h | 3 +- src/chatmodel.cpp | 77 +++++++++++++------------ src/chatmodel.h | 5 ++ src/contactrequest.ui | 18 ++++-- src/mainwindow.cpp | 29 ++++------ src/mainwindow.h | 5 -- src/mainwindow.ui | 98 ++++++++++++++------------------ 19 files changed, 147 insertions(+), 121 deletions(-) create mode 100644 res/addContactBlack.png create mode 100644 res/addContactWhite.png create mode 100644 res/getAddrBlack.png create mode 100644 res/getAddrWhite.png create mode 100644 res/lock_green.png create mode 100644 res/requestBlack.png create mode 100644 res/requestWhite.png create mode 100644 res/send-white.png create mode 100644 res/sendBlack.png create mode 100644 res/unlocked.png diff --git a/application.qrc b/application.qrc index d323bff..7ab9af5 100644 --- a/application.qrc +++ b/application.qrc @@ -41,6 +41,15 @@ res/lock_green.svg res/lock_blue.svg res/unlocked.svg + res/getAddrWhite.png + res/send-white.png + res/requestWhite.png + res/addContactWhite.png + res/getAddrBlack.png + res/sendBlack.png + res/requestBlack.png + res/addContactBlack.png + res/hushdlogo.gif diff --git a/res/addContactBlack.png b/res/addContactBlack.png new file mode 100644 index 0000000000000000000000000000000000000000..984c6e3e10659d2923f961ae2243b0be928b56da GIT binary patch literal 21089 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 literal 0 HcmV?d00001 diff --git a/res/addContactWhite.png b/res/addContactWhite.png new file mode 100644 index 0000000000000000000000000000000000000000..fea4efc6eb1278e228ffb015041034d288a69afc GIT binary patch literal 12617 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 ab|vNW;h(G-u@8fPCX7!>JUC8X{Qm(Zf7iAE literal 0 HcmV?d00001 diff --git a/res/getAddrWhite.png b/res/getAddrWhite.png new file mode 100644 index 0000000000000000000000000000000000000000..6caeeae319540c6c3bbc1b0b91af02aa7e042a72 GIT binary patch literal 12887 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 literal 0 HcmV?d00001 diff --git a/res/lock_green.png b/res/lock_green.png new file mode 100644 index 0000000000000000000000000000000000000000..cd7c2abaa256da5a3c5675a42e005578830973b6 GIT binary patch literal 1041 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 literal 0 HcmV?d00001 diff --git a/res/send-white.png b/res/send-white.png new file mode 100644 index 0000000000000000000000000000000000000000..96c76214708a25c7218a7472b9aadcb520517890 GIT binary patch literal 11875 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 AAOHXW literal 0 HcmV?d00001 diff --git a/res/sendBlack.png b/res/sendBlack.png new file mode 100644 index 0000000000000000000000000000000000000000..62d9d1e25f4f452aecaa6c35b682028fa361dbf3 GIT binary patch literal 16812 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 literal 0 HcmV?d00001 diff --git a/src/DataStore/ChatDataStore.cpp b/src/DataStore/ChatDataStore.cpp index 22c10f5..2ede26d 100644 --- a/src/DataStore/ChatDataStore.cpp +++ b/src/DataStore/ChatDataStore.cpp @@ -2,6 +2,7 @@ // GPLv3 #include "ChatDataStore.h" +#include "addressbook.h" ChatDataStore* ChatDataStore::getInstance() { @@ -48,15 +49,15 @@ std::map ChatDataStore::getAllRawChatItems() return this->data; } -std::map ChatDataStore::getAllContactRequests() +std::map ChatDataStore::getAllNewContactRequests() { std::map filteredItems; for(auto &c: this->data) { if ( (c.second.isOutgoing() == false) && - (c.second.getType() == "cont") && - (c.second.getMemo().startsWith("{")) + (c.second.getType() == "cont") + ) { filteredItems[c.first] = c.second; @@ -65,6 +66,23 @@ std::map ChatDataStore::getAllContactRequests() return filteredItems; } +std::map ChatDataStore::getAllOldContactRequests() +{ + std::map 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 ChatDataStore::getAllMemos() { diff --git a/src/DataStore/ChatDataStore.h b/src/DataStore/ChatDataStore.h index 444c704..7fb0998 100644 --- a/src/DataStore/ChatDataStore.h +++ b/src/DataStore/ChatDataStore.h @@ -22,7 +22,8 @@ class ChatDataStore void setData(QString key, ChatItem value); ChatItem getData(QString key); std::map getAllRawChatItems(); - std::map getAllContactRequests(); + std::map getAllNewContactRequests(); + std::map getAllOldContactRequests(); std::map getAllMemos(); QString dump(); diff --git a/src/chatmodel.cpp b/src/chatmodel.cpp index 1e72714..b669302 100644 --- a/src/chatmodel.cpp +++ b/src/chatmodel.cpp @@ -10,7 +10,6 @@ #include "addressbook.h" #include "ui_memodialog.h" #include "ui_contactrequest.h" -#include "addressbook.h" #include #include #include "DataStore/DataStore.h" @@ -97,7 +96,7 @@ void MainWindow::renderContactRequest(){ QStandardItemModel* contactRequest = new QStandardItemModel(); { - for (auto &c : DataStore::getChatDataStore()->getAllContactRequests()) + for (auto &c : DataStore::getChatDataStore()->getAllOldContactRequests()) { QStandardItem* Items = new QStandardItem(c.second.getAddress()); @@ -109,18 +108,17 @@ void MainWindow::renderContactRequest(){ 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 +126,11 @@ 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.pushButton, &QPushButton::clicked, [&] () { @@ -173,7 +171,6 @@ void MainWindow::renderContactRequest(){ QMessageBox::information(this, "Added Contact","successfully added your new contact. You can now Chat with this contact"); }); - dialog.exec(); } @@ -425,7 +422,8 @@ QString MainWindow::doSendChatTxValidations(Tx tx) { } void::MainWindow::addContact() { - + + Ui_Dialog request; QDialog dialog(this); request.setupUi(&dialog); @@ -434,24 +432,31 @@ void::MainWindow::addContact() { bool sapling = true; rpc->createNewZaddr(sapling, [=] (json reply) { QString myAddr = QString::fromStdString(reply.get()[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); + }); + + 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 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()) @@ -490,15 +495,24 @@ void::MainWindow::addContact() { return; }); - dialog.exec(); } + + // Create a Tx for a contact Request Tx MainWindow::createTxForSafeContactRequest() { - Tx tx; + Ui_Dialog request; + QDialog dialog(this); + request.setupUi(&dialog); + Settings::saveRestore(&dialog); + +Tx tx; + +{ + // For each addr/amt in the Chat tab { @@ -510,18 +524,14 @@ Tx MainWindow::createTxForSafeContactRequest() { amt = CAmount::fromDecimalString("0"); totalAmt = totalAmt + amt; - - for(auto &c : AddressBook::getInstance()->getAllAddressLabels()) - if (ui->contactNameMemo->text().trimmed() == c.getName()) { - - - QString cid = c.getCid(); - QString myAddr = c.getMyAddress(); + + QString cid = request.cid->text(); + QString myAddr = request.myzaddr->text().trimmed(); QString type = "cont"; - QString addr = c.getPartnerAddress(); + QString addr = request.zaddr->text().trimmed(); QString hmemo= createHeaderMemo(type,cid,myAddr); - QString memo = ui->memoTxtChat->toPlainText().trimmed(); + QString memo = request.memorequest->toPlainText().trimmed(); tx.toAddrs.push_back(ToFields{addr, amt, memo}); tx.toAddrs.push_back(ToFields{addr, amt, hmemo}); @@ -532,19 +542,16 @@ Tx MainWindow::createTxForSafeContactRequest() { } 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 +561,7 @@ void MainWindow::ContactRequest() { msg.exec(); return; - } + }*/ Tx tx = createTxForSafeContactRequest(); @@ -632,7 +639,7 @@ void MainWindow::ContactRequest() { QMessageBox::critical(this, QObject::tr("Transaction Error"), errStr, QMessageBox::Ok); } ); - + } diff --git a/src/chatmodel.h b/src/chatmodel.h index bf3e255..a96f3bd 100644 --- a/src/chatmodel.h +++ b/src/chatmodel.h @@ -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 cidMap; std::map requestZaddrMap; + std::map> 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(); diff --git a/src/contactrequest.ui b/src/contactrequest.ui index d2ae8ef..9ce3c22 100644 --- a/src/contactrequest.ui +++ b/src/contactrequest.ui @@ -14,7 +14,7 @@ Send a contact request - + <html><head/><body><p align="right">Choose a avatar for your contact :</p></body></html> @@ -28,7 +28,7 @@ - + @@ -185,6 +185,9 @@ + + + @@ -192,7 +195,7 @@ - + @@ -231,6 +234,13 @@ + + + + Send Contact + + + @@ -255,7 +265,7 @@ sendRequestButton clicked() Dialog - accept() + update() 536 diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index de034ac..b3868d4 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -1011,52 +1011,45 @@ 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); }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); } 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); diff --git a/src/mainwindow.h b/src/mainwindow.h index ff4b76a..ea0a3a4 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -62,12 +62,7 @@ public: void updateLabels(); void updateTAddrCombo(bool checked); - // void renderContactRequest(); - // void setChatItem(ChatItem* item); - //void ChatItem* getChatItem(); - - // Disable recurring on mainnet void disableRecurring(); diff --git a/src/mainwindow.ui b/src/mainwindow.ui index 3e82d7a..82b4260 100644 --- a/src/mainwindow.ui +++ b/src/mainwindow.ui @@ -1409,9 +1409,21 @@ 81 + + false + font: 11pt "Noto Color Emoji"; + + QTextEdit::AutoNone + + + QTextEdit::FixedColumnWidth + + + 80 + @@ -1435,7 +1447,7 @@ - 1170 + 1160 560 91 81 @@ -1455,12 +1467,12 @@ - :/icons/res/send-new-white.png + :/icons/res/sendBlack.png - 41 + 50 49 @@ -1533,18 +1545,21 @@ 0 + + Add a new contact + - :/icons/res/add_contact.png + :/icons/res/addContactBlack.png - 43 - 49 + 50 + 45 @@ -1554,10 +1569,10 @@ - 10 - 30 - 41 - 41 + 50 + 20 + 61 + 51 @@ -1566,6 +1581,9 @@ 0 + + Incoming contact request + false @@ -1574,71 +1592,41 @@ - :/icons/res/notification.png:/icons/res/notification.png + :/icons/res/requestBlack.png:/icons/res/requestBlack.png - 33 - 35 + 50 + 45 true - + - 270 - 510 - 51 + 210 + 20 + 61 51 - - - 100 - 0 - + + Get a new Address - - - :/icons/res/add_contact.png - - - - - 43 - 49 - - - - true - - - - - - 60 - 30 - 111 - 41 - - - - New Addr - - :/icons/res/add_contact.png:/icons/res/add_contact.png + :/icons/res/getAddrBlack.png:/icons/res/getAddrBlack.png - 33 - 35 + 50 + 45 @@ -1648,8 +1636,8 @@ - 40 - 20 + 90 + 10 21 16 @@ -2042,7 +2030,7 @@ AddressCombo QComboBox -
addresscombo.h
+
addresscombo.h
QRCodeLabel