X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Finputwidget.cpp;h=3c56673706c5b595712eb3bf656291fd5b0eda43;hb=61f33c7895e324f6e95034d86897ad2e963653f1;hp=48d9bc6cd52577d5ec529325db640f011abefe0c;hpb=d92889b37ed17d63f4db6be571f9254391186e83;p=quassel.git diff --git a/src/qtui/inputwidget.cpp b/src/qtui/inputwidget.cpp index 48d9bc6c..3c566737 100644 --- a/src/qtui/inputwidget.cpp +++ b/src/qtui/inputwidget.cpp @@ -35,6 +35,7 @@ #include "qtui.h" #include "qtuisettings.h" #include "tabcompleter.h" +#include "util.h" const int leftMargin = 3; @@ -43,7 +44,7 @@ InputWidget::InputWidget(QWidget *parent) _networkId(0) { ui.setupUi(this); - connect(ui.ownNick, SIGNAL(activated(QString)), this, SLOT(changeNick(QString))); + connect(ui.ownNick, selectOverload(&QComboBox::activated), this, &InputWidget::changeNick); layout()->setAlignment(ui.ownNick, Qt::AlignBottom); layout()->setAlignment(ui.inputEdit, Qt::AlignBottom); @@ -91,22 +92,22 @@ InputWidget::InputWidget(QWidget *parent) ui.textcolorButton->setMenu(_colorMenu); // Set the default action to clear color (last added action) ui.textcolorButton->setDefaultAction(_colorMenu->actions().last()); - connect(_colorMenu, SIGNAL(triggered(QAction *)), this, SLOT(colorChosen(QAction *))); + connect(_colorMenu, &QMenu::triggered, this, &InputWidget::colorChosen); ui.highlightcolorButton->setMenu(_colorFillMenu); // Set the default action to clear fill color (last added action) ui.highlightcolorButton->setDefaultAction(_colorFillMenu->actions().last()); - connect(_colorFillMenu, SIGNAL(triggered(QAction *)), this, SLOT(colorHighlightChosen(QAction *))); + connect(_colorFillMenu, &QMenu::triggered, this, &InputWidget::colorHighlightChosen); // Needs to be done after adding the menu, otherwise the icon mysteriously vanishes until clicked ui.textcolorButton->setIcon(icon::get("format-text-color")); ui.highlightcolorButton->setIcon(icon::get("format-fill-color")); // Show/hide style button - connect(ui.showStyleButton, SIGNAL(toggled(bool)), this, SLOT(setStyleOptionsExpanded(bool))); + connect(ui.showStyleButton, &QAbstractButton::toggled, this, &InputWidget::setStyleOptionsExpanded); // Clear formatting button - connect(ui.clearButton, SIGNAL(clicked()), this, SLOT(clearFormat())); + connect(ui.clearButton, &QAbstractButton::clicked, this, &InputWidget::clearFormat); new TabCompleter(ui.inputEdit); @@ -118,11 +119,6 @@ InputWidget::InputWidget(QWidget *parent) UiSettings s("InputWidget"); -#ifdef HAVE_KDE4 - s.notify("EnableSpellCheck", this, SLOT(setEnableSpellCheck(QVariant))); - setEnableSpellCheck(s.value("EnableSpellCheck", false)); -#endif - s.notify("EnableEmacsMode", this, SLOT(setEnableEmacsMode(QVariant))); setEnableEmacsMode(s.value("EnableEmacsMode", false)); @@ -148,19 +144,10 @@ InputWidget::InputWidget(QWidget *parent) setMultiLineEnabled(s.value("EnableMultiLine", true)); ActionCollection *coll = QtUi::actionCollection(); + coll->addAction("FocusInputLine", new Action{tr("Focus Input Line"), coll, this, selectOverload<>(&QWidget::setFocus), QKeySequence(Qt::CTRL + Qt::Key_L)}); - Action *activateInputline = coll->add("FocusInputLine"); - connect(activateInputline, SIGNAL(triggered()), SLOT(setFocus())); - activateInputline->setText(tr("Focus Input Line")); - activateInputline->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_L)); - - connect(inputLine(), SIGNAL(textEntered(QString)), SLOT(onTextEntered(QString)), Qt::QueuedConnection); // make sure the line is already reset, bug #984 - connect(inputLine(), SIGNAL(currentCharFormatChanged(QTextCharFormat)), this, SLOT(currentCharFormatChanged(QTextCharFormat))); -} - - -InputWidget::~InputWidget() -{ + connect(inputLine(), &MultiLineEdit::textEntered, this, &InputWidget::onTextEntered, Qt::QueuedConnection); // make sure the line is already reset, bug #984 + connect(inputLine(), &QTextEdit::currentCharFormatChanged, this, &InputWidget::currentCharFormatChanged); } @@ -189,12 +176,6 @@ void InputWidget::setCustomFont(const QVariant &v) } -void InputWidget::setEnableSpellCheck(const QVariant &v) -{ - ui.inputEdit->setSpellCheckEnabled(v.toBool()); -} - - void InputWidget::setEnableEmacsMode(const QVariant &v) { ui.inputEdit->setEmacsMode(v.toBool()); @@ -248,10 +229,10 @@ bool InputWidget::eventFilter(QObject *watched, QEvent *event) if (event->type() != QEvent::KeyPress) return false; - QKeyEvent *keyEvent = static_cast(event); + auto *keyEvent = static_cast(event); // keys from BufferView should be sent to (and focus) the input line - BufferView *view = qobject_cast(watched); + auto *view = qobject_cast(watched); if (view) { if (keyEvent->text().length() == 1 && !(keyEvent->modifiers() & (Qt::ControlModifier ^ Qt::AltModifier))) { // normal key press QChar c = keyEvent->text().at(0); @@ -320,11 +301,11 @@ void InputWidget::dataChanged(const QModelIndex &topLeft, const QModelIndex &bot bool encrypted = false; - IrcChannel *chan = qobject_cast(Client::bufferModel()->data(selectionModel()->currentIndex(), NetworkModel::IrcChannelRole).value()); + auto *chan = qobject_cast(Client::bufferModel()->data(selectionModel()->currentIndex(), NetworkModel::IrcChannelRole).value()); if (chan) encrypted = chan->encrypted(); - IrcUser *user = qobject_cast(Client::bufferModel()->data(selectionModel()->currentIndex(), NetworkModel::IrcUserRole).value()); + auto *user = qobject_cast(Client::bufferModel()->data(selectionModel()->currentIndex(), NetworkModel::IrcUserRole).value()); if (user) encrypted = user->encrypted(); @@ -385,7 +366,7 @@ const Network *InputWidget::currentNetwork() const BufferInfo InputWidget::currentBufferInfo() const { return selectionModel()->currentIndex().data(NetworkModel::BufferInfoRole).value(); -}; +} void InputWidget::applyFormatActiveColor() @@ -438,16 +419,16 @@ void InputWidget::setNetwork(NetworkId networkId) const Network *previousNet = Client::network(_networkId); if (previousNet) { - disconnect(previousNet, 0, this, 0); + disconnect(previousNet, nullptr, this, nullptr); if (previousNet->me()) - disconnect(previousNet->me(), 0, this, 0); + disconnect(previousNet->me(), nullptr, this, nullptr); } _networkId = networkId; const Network *network = Client::network(networkId); if (network) { - connect(network, SIGNAL(identitySet(IdentityId)), this, SLOT(setIdentity(IdentityId))); + connect(network, &Network::identitySet, this, &InputWidget::setIdentity); connectMyIrcUser(); setIdentity(network->identity()); } @@ -462,16 +443,16 @@ void InputWidget::connectMyIrcUser() { const Network *network = currentNetwork(); if (network->me()) { - connect(network->me(), SIGNAL(nickSet(const QString &)), this, SLOT(updateNickSelector())); - connect(network->me(), SIGNAL(userModesSet(QString)), this, SLOT(updateNickSelector())); - connect(network->me(), SIGNAL(userModesAdded(QString)), this, SLOT(updateNickSelector())); - connect(network->me(), SIGNAL(userModesRemoved(QString)), this, SLOT(updateNickSelector())); - connect(network->me(), SIGNAL(awaySet(bool)), this, SLOT(updateNickSelector())); - disconnect(network, SIGNAL(myNickSet(const QString &)), this, SLOT(connectMyIrcUser())); + connect(network->me(), &IrcUser::nickSet, this, &InputWidget::updateNickSelector); + connect(network->me(), &IrcUser::userModesSet, this, &InputWidget::updateNickSelector); + connect(network->me(), &IrcUser::userModesAdded, this, &InputWidget::updateNickSelector); + connect(network->me(), &IrcUser::userModesRemoved, this, &InputWidget::updateNickSelector); + connect(network->me(), &IrcUser::awaySet, this, &InputWidget::updateNickSelector); + disconnect(network, &Network::myNickSet, this, &InputWidget::connectMyIrcUser); updateNickSelector(); } else { - connect(network, SIGNAL(myNickSet(const QString &)), this, SLOT(connectMyIrcUser())); + connect(network, &Network::myNickSet, this, &InputWidget::connectMyIrcUser); } } @@ -483,13 +464,13 @@ void InputWidget::setIdentity(IdentityId identityId) const Identity *previousIdentity = Client::identity(_identityId); if (previousIdentity) - disconnect(previousIdentity, 0, this, 0); + disconnect(previousIdentity, nullptr, this, nullptr); _identityId = identityId; const Identity *identity = Client::identity(identityId); if (identity) { - connect(identity, SIGNAL(nicksSet(QStringList)), this, SLOT(updateNickSelector())); + connect(identity, &Identity::nicksSet, this, &InputWidget::updateNickSelector); } else { _identityId = 0;