switch to datastore

This commit is contained in:
DenioD
2020-05-08 22:36:24 +02:00
parent 5006a8c7d7
commit eb263e5e0b
3 changed files with 96 additions and 38 deletions

View File

@@ -107,13 +107,20 @@ void ChatModel::renderChatBox(Ui::MainWindow* ui, QListView *view)
// ui->lcdNumber->setPalette(Qt::red);
// ui->lcdNumber->display("1");
for (auto &c : DataStore::getChatDataStore()->getAllRawChatItems())//this->chatItems)
for (auto &p : AddressBook::getInstance()->getAllAddressLabels())
{
for (auto &c : DataStore::getChatDataStore()->getAllMemos())
{
//////Render only Memos for selected contacts. Do not render empty Memos //// Render only memos where cid=cid
if ((c.second.getContact() == ui->contactNameMemo->text().trimmed()) && (p.getPartnerAddress() == c.second.getAddress()) && (c.second.getMemo().startsWith("{") == false) && (c.second.getMemo().isEmpty() == false) && (c.second.isOutgoing() == true))
if (
(c.second.getContact() == ui->contactNameMemo->text().trimmed()) &&
(p.getPartnerAddress() == c.second.getAddress()) &&
(c.second.isOutgoing() == true)
)
{
QStandardItem* Items = new QStandardItem(c.second.toChatLine());
@@ -126,8 +133,13 @@ void ChatModel::renderChatBox(Ui::MainWindow* ui, QListView *view)
ui->listChat->setModel(chat);
}
if ((c.second.getContact() == ui->contactNameMemo->text().trimmed()) && ((p.getMyAddress() == c.second.getAddress()) && c.second.getMemo().startsWith("{") == false) && (c.second.getMemo().isEmpty() == false) && (c.second.isOutgoing() == false))
if (
(c.second.getContact() == ui->contactNameMemo->text().trimmed()) &&
(p.getMyAddress() == c.second.getAddress()) &&
(c.second.isOutgoing() == false)
)
{
QStandardItem* Items1 = new QStandardItem(c.second.toChatLine());
@@ -140,11 +152,13 @@ void ChatModel::renderChatBox(Ui::MainWindow* ui, QListView *view)
ui->listChat->setModel(chat);
}
}
}
}
}
void MainWindow::renderContactRequest(){
@@ -153,35 +167,18 @@ void MainWindow::renderContactRequest(){
requestContact.setupUi(&dialog);
Settings::saveRestore(&dialog);
{
QStandardItemModel* contactRequest = new QStandardItemModel();
QStandardItemModel* contactRequest = new QStandardItemModel();
for (auto &c : DataStore::getChatDataStore()->getAllRawChatItems())//this->chatItems)
{
if ((c.second.getType() == "cont") && (c.second.isOutgoing() == false) && (c.second.getMemo().startsWith("{"))) {
{
for (auto &c : DataStore::getChatDataStore()->getAllContactRequests())
{
QStandardItem* Items = new QStandardItem(c.second.getAddress());
contactRequest->appendRow(Items);
requestContact.requestContact->setModel(contactRequest);
requestContact.requestContact->show();
}
}
}
QStandardItem* Items = new QStandardItem(c.second.getAddress());
contactRequest->appendRow(Items);
requestContact.requestContact->setModel(contactRequest);
requestContact.requestContact->show();
}
}
QObject::connect(requestContact.requestContact, &QTableView::clicked, [&] () {
@@ -220,12 +217,33 @@ void MainWindow::renderContactRequest(){
QString avatar = QString(":/icons/res/") + requestContact.comboBoxAvatar->currentText() + QString(".png");
if (addr.isEmpty() || newLabel.isEmpty())
{
QMessageBox::critical(
this,
QObject::tr("Address or Label Error"),
QObject::tr("Address or Label cannot be empty"),
QMessageBox::Ok
);
return;
}
// Test if address is valid.
if (!Settings::isValidAddress(addr))
{
QMessageBox::critical(
this,
QObject::tr("Address Format Error"),
QObject::tr("%1 doesn't seem to be a valid hush address.").arg(addr),
QMessageBox::Ok
);
return;
}
qDebug()<<"Beginn kopiert" <<cid << addr << newLabel << myAddr;
AddressBook::getInstance()->addAddressLabel(newLabel, addr, myAddr, cid, avatar);
QMessageBox::information(this, "Added Contact","successfully added your new contact. You can now Chat with this contact");
QMessageBox::information(this, "Added Contact","successfully added your new contact. You can now Chat with this contact");
});