fix symbol counter for requests #141
This commit is contained in:
@@ -46,6 +46,45 @@ void ChatMemoEdit::setLenDisplayLabelChat(QLabel* label) {
|
||||
this->lenDisplayLabelchat = label;
|
||||
}
|
||||
|
||||
ChatMemoEditRequest::ChatMemoEditRequest(QWidget* parent) : QTextEdit(parent) {
|
||||
QObject::connect(this, &QTextEdit::textChanged, this, &ChatMemoEditRequest::updateDisplayChatRequest);
|
||||
}
|
||||
|
||||
void ChatMemoEditRequest::updateDisplayChatRequest() {
|
||||
QString txt = this->toPlainText();
|
||||
if (lenDisplayLabelchatRequest)
|
||||
lenDisplayLabelchatRequest->setText(QString::number(txt.toUtf8().size()) + "/" + QString::number(maxlenchatrequest));
|
||||
|
||||
if (txt.toUtf8().size() <= maxlenchatrequest) {
|
||||
// Everything is fine
|
||||
if (sendRequestButton)
|
||||
sendRequestButton->setEnabled(true);
|
||||
|
||||
if (lenDisplayLabelchatRequest)
|
||||
lenDisplayLabelchatRequest->setStyleSheet("");
|
||||
}
|
||||
else {
|
||||
// Overweight
|
||||
if (sendRequestButton)
|
||||
sendRequestButton->setEnabled(false);
|
||||
|
||||
if (lenDisplayLabelchatRequest)
|
||||
lenDisplayLabelchatRequest->setStyleSheet("color: red;");
|
||||
}
|
||||
}
|
||||
|
||||
void ChatMemoEditRequest::setMaxLenChatRequest(int len) {
|
||||
this->maxlenchatrequest = len;
|
||||
updateDisplayChatRequest();
|
||||
}
|
||||
|
||||
void ChatMemoEditRequest::SetSendRequestButton(QPushButton* button) {
|
||||
this->sendRequestButton = button;
|
||||
}
|
||||
|
||||
void ChatMemoEditRequest::setLenDisplayLabelChatRequest(QLabel* label) {
|
||||
this->lenDisplayLabelchatRequest = label;
|
||||
}
|
||||
void Chat::renderChatBox(Ui::MainWindow *ui, QListView *view, QLabel *label)
|
||||
{
|
||||
|
||||
|
||||
@@ -703,6 +703,8 @@ void::MainWindow::addContact()
|
||||
request.setupUi(&dialog);
|
||||
Settings::saveRestore(&dialog);
|
||||
|
||||
request.memorequest->setLenDisplayLabelChatRequest(request.memoSizeChatRequest);
|
||||
|
||||
try
|
||||
{
|
||||
|
||||
@@ -820,7 +822,7 @@ void MainWindow::ContactRequest() {
|
||||
return;
|
||||
}
|
||||
|
||||
int max = 235;
|
||||
int max = 512;
|
||||
QString chattext = contactRequest.getMemo();;
|
||||
int size = chattext.size();
|
||||
|
||||
@@ -829,7 +831,7 @@ void MainWindow::ContactRequest() {
|
||||
// auto addr = "";
|
||||
// if (! Settings::isZAddress(AddressBook::addressFromAddressLabel(addr->text()))) {
|
||||
QMessageBox msg(QMessageBox::Critical, tr("Your Message is too long"),
|
||||
tr("You can only write messages with 235 character maximum \n") + tr("\n Please reduce your message to 235 character."),
|
||||
tr("You can only write messages with 512 character maximum \n") + tr("\n Please reduce your message to 235 character."),
|
||||
QMessageBox::Ok, this);
|
||||
|
||||
msg.exec();
|
||||
|
||||
@@ -378,7 +378,7 @@
|
||||
</layout>
|
||||
</item>
|
||||
<item row="11" column="0">
|
||||
<widget class="QLabel" name="memoSizeChat">
|
||||
<widget class="QLabel" name="memoSizeChatRequest">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
@@ -391,7 +391,7 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item row="9" column="0" colspan="6">
|
||||
<widget class="QTextEdit" name="memorequest">
|
||||
<widget class="ChatMemoEditRequest" name="memorequest">
|
||||
<property name="placeholderText">
|
||||
<string>Add a memo to your request</string>
|
||||
</property>
|
||||
@@ -437,6 +437,13 @@
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>ChatMemoEditRequest</class>
|
||||
<extends>QTextEdit</extends>
|
||||
<header>mainwindow.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
|
||||
@@ -1548,6 +1548,7 @@ void MainWindow::setupchatTab() {
|
||||
});
|
||||
|
||||
ui->memoTxtChat->setLenDisplayLabelChat(ui->memoSizeChat);
|
||||
|
||||
}
|
||||
|
||||
void MainWindow::updateChat()
|
||||
|
||||
@@ -214,5 +214,21 @@ private:
|
||||
QPushButton* sendChatButton = nullptr;
|
||||
};
|
||||
|
||||
class ChatMemoEditRequest : public QTextEdit
|
||||
{
|
||||
public:
|
||||
ChatMemoEditRequest(QWidget* parent);
|
||||
|
||||
void setMaxLenChatRequest(int len);
|
||||
void setLenDisplayLabelChatRequest(QLabel* label);
|
||||
void SetSendRequestButton(QPushButton* button);
|
||||
void updateDisplayChatRequest();
|
||||
|
||||
private:
|
||||
int maxlenchatrequest = 512;
|
||||
QLabel* lenDisplayLabelchatRequest = nullptr;
|
||||
QPushButton* sendRequestButton = nullptr;
|
||||
};
|
||||
|
||||
|
||||
#endif // MAINWINDOW_H
|
||||
|
||||
@@ -429,7 +429,7 @@
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1226</width>
|
||||
<height>493</height>
|
||||
<height>509</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="sendToLayout">
|
||||
|
||||
Reference in New Issue
Block a user