23 #include "ircignoresmanager.h"
24 #include "ui_ircignoresmanager.h"
27 #include "irc/configuration/chatnetworkscfg.h"
28 #include "irc/entities/ircnetworkentity.h"
29 #include "patternlist.h"
31 DClass<IRCIgnoresManager> :
public Ui::IRCIgnoresManager
34 QString networkDescription;
43 d->networkDescription = networkDescription;
49 IRCIgnoresManager::~IRCIgnoresManager()
53 void IRCIgnoresManager::done(
int result)
55 if (result == Accepted)
59 QDialog::done(result);
62 void IRCIgnoresManager::keyPressEvent(QKeyEvent *event)
64 if (event->key() == Qt::Key_Delete)
68 QDialog::keyPressEvent(event);
71 void IRCIgnoresManager::loadItems()
75 foreach (
const QRegExp &pattern, network.ignoredUsers())
77 QListWidgetItem *item =
new QListWidgetItem(pattern.pattern(), d->list);
78 item->setFlags(item->flags() | Qt::ItemIsEditable);
79 d->list->addItem(item);
83 void IRCIgnoresManager::saveItems()
87 network.setIgnoredUsers(patterns());
94 for (
int row = 0; row < d->list->count(); ++row)
96 QString text = d->list->item(row)->text();
97 if (!text.trimmed().isEmpty())
99 result << QRegExp(text, Qt::CaseInsensitive, QRegExp::Wildcard);
105 void IRCIgnoresManager::deleteSelected()
107 QList<QListWidgetItem*> selection = d->list->selectedItems();
108 foreach (QListWidgetItem *item, selection)
110 d->list->removeItemWidget(item);
112 qDeleteAll(selection);
const QString & description() const
A short, human-readable description for the network. (Preferably a single word).
bool replaceNetwork(const QString &oldDescription, const IRCNetworkEntity &newNetwork, QWidget *errorDisplayParentWidget)
Replace network definition in config and move around log files.
Data structure that describes and defines a connection to an IRC network or server.