void MyWriteMsg::reject() { try { if (self->plainTextEdit->toPlainText().trimmed().isEmpty()) { QDialog::reject(); return; } if (QUESTION(utf8("提醒"), utf8("是否存为草稿?")) == QMessageBox::No) { QDialog::reject(); return; } Message msg; msg.setContent(self->plainTextEdit->toPlainText()); msg.setTime(QDateTime::currentDateTime()); msg.setType(Message::DRAFT); MessageService * msgServer = new MessageService; msgServer->saveMsg(msg); delete msgServer; QDialog::reject(); } CATCH_BLOCKS }
void MyWriteMsg::sendMsg() { try { checkInput(); QList<Message> & msgs = getMsgs(); server->sendMessages(msgs); MessageService * msgServer = new MessageService; for (int i = 0; i < msgs.length(); ++i) { msgs[i].setSenderNum(server->getPhoneNum()); msgs[i].setTime(QDateTime::currentDateTime()); msgs[i].setType(Message::SENT); msgServer->saveMsg(msgs[i]); } delete msgServer; msgs.clear(); delete &msgs; this->accept(); } CATCH_BLOCKS }
void MyWriteMsg::sendTimedMsg() { try { checkInput(); MySetTime * setTime = new MySetTime(this); if (setTime->exec() != QDialog::Accepted) { setTime->deleteLater(); return; } setTime->deleteLater(); QDateTime chosenTime = setTime->getTime(); QList<Message> & msgs = getMsgs(); MessageService * msgServer = new MessageService; for (int i = 0; i < msgs.length(); ++i) { msgs[i].setSenderNum(server->getPhoneNum()); msgs[i].setTime(chosenTime); msgs[i].setType(Message::TIMED); msgServer->saveMsg(msgs[i]); } delete msgServer; msgs.clear(); delete &msgs; this->accept(); } CATCH_BLOCKS }