Add ability to edit chat macros, Fix #3296 (#3298)

This commit is contained in:
ctrlaltca 2018-06-19 19:15:13 +02:00 committed by tooomm
parent 4e75a74bfd
commit a5ea4f7da2
2 changed files with 20 additions and 0 deletions

View file

@ -690,6 +690,9 @@ MessagesSettingsPage::MessagesSettingsPage()
aAdd = new QAction(this); aAdd = new QAction(this);
aAdd->setIcon(QPixmap("theme:icons/increment")); aAdd->setIcon(QPixmap("theme:icons/increment"));
connect(aAdd, SIGNAL(triggered()), this, SLOT(actAdd())); connect(aAdd, SIGNAL(triggered()), this, SLOT(actAdd()));
aEdit = new QAction(this);
aEdit->setIcon(QPixmap("theme:icons/pencil"));
connect(aEdit, SIGNAL(triggered()), this, SLOT(actEdit()));
aRemove = new QAction(this); aRemove = new QAction(this);
aRemove->setIcon(QPixmap("theme:icons/decrement")); aRemove->setIcon(QPixmap("theme:icons/decrement"));
connect(aRemove, SIGNAL(triggered()), this, SLOT(actRemove())); connect(aRemove, SIGNAL(triggered()), this, SLOT(actRemove()));
@ -698,6 +701,8 @@ MessagesSettingsPage::MessagesSettingsPage()
messageToolBar->setOrientation(Qt::Vertical); messageToolBar->setOrientation(Qt::Vertical);
messageToolBar->addAction(aAdd); messageToolBar->addAction(aAdd);
messageToolBar->addAction(aRemove); messageToolBar->addAction(aRemove);
messageToolBar->addAction(aEdit);
messageToolBar->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::MinimumExpanding);
auto *messageListLayout = new QHBoxLayout; auto *messageListLayout = new QHBoxLayout;
messageListLayout->addWidget(messageToolBar); messageListLayout->addWidget(messageToolBar);
@ -778,6 +783,19 @@ void MessagesSettingsPage::actAdd()
} }
} }
void MessagesSettingsPage::actEdit()
{
if (messageList->currentItem()) {
QString oldText = messageList->currentItem()->text();
bool ok;
QString msg = QInputDialog::getText(this, tr("Edit message"), tr("Message:"), QLineEdit::Normal, oldText, &ok);
if (ok) {
messageList->currentItem()->setText(msg);
storeSettings();
}
}
}
void MessagesSettingsPage::actRemove() void MessagesSettingsPage::actRemove()
{ {
if (messageList->currentItem()) { if (messageList->currentItem()) {

View file

@ -171,6 +171,7 @@ public:
private slots: private slots:
void actAdd(); void actAdd();
void actEdit();
void actRemove(); void actRemove();
void updateColor(const QString &value); void updateColor(const QString &value);
void updateHighlightColor(const QString &value); void updateHighlightColor(const QString &value);
@ -180,6 +181,7 @@ private slots:
private: private:
QListWidget *messageList; QListWidget *messageList;
QAction *aAdd; QAction *aAdd;
QAction *aEdit;
QAction *aRemove; QAction *aRemove;
QCheckBox chatMentionCheckBox; QCheckBox chatMentionCheckBox;
QCheckBox chatMentionCompleterCheckbox; QCheckBox chatMentionCompleterCheckbox;