#include "iconloader.h"
IgnoreListSettingsPage::IgnoreListSettingsPage(QWidget *parent)
- : SettingsPage(tr("Misc"), tr("Ignorelist"), parent)
+ : SettingsPage(tr("IRC"), tr("Ignore List"), parent)
{
ui.setupUi(this);
_delegate = new IgnoreListDelegate(ui.ignoreListView);
void IgnoreListSettingsPage::newIgnoreRule(QString rule) {
IgnoreListManager::IgnoreListItem newItem = IgnoreListManager::IgnoreListItem();
+ newItem.strictness = IgnoreListManager::SoftStrictness;
+ newItem.scope = IgnoreListManager::GlobalScope;
+ newItem.isRegEx = false;
newItem.isActive = true;
+
bool enableOkButton = false;
if(!rule.isEmpty()) {
// we're called from contextmenu
IgnoreListEditDlg *dlg = new IgnoreListEditDlg(newItem, this, enableOkButton);
dlg->enableOkButton(enableOkButton);
-
while(dlg->exec() == QDialog::Accepted) {
if(!_ignoreListModel.newIgnoreRule(dlg->ignoreListItem())) {
if(QMessageBox::warning(this,
ui.setupUi(this);
setAttribute(Qt::WA_DeleteOnClose, false);
setModal(true);
+ // FIXME patch out the bugger completely if it's good without it
+ ui.isActiveCheckBox->hide();
// setup buttongroups
// this could be moved to .ui file with qt4.5
_typeButtonGroup.addButton(ui.senderTypeButton, 0);
_typeButtonGroup.addButton(ui.messageTypeButton, 1);
+ _typeButtonGroup.addButton(ui.ctcpTypeButton, 2);
_strictnessButtonGroup.addButton(ui.dynamicStrictnessButton, 0);
_strictnessButtonGroup.addButton(ui.permanentStrictnessButton, 1);
_scopeButtonGroup.addButton(ui.globalScopeButton, 0);
if(item.type == IgnoreListManager::MessageIgnore)
ui.messageTypeButton->setChecked(true);
+ else if(item.type == IgnoreListManager::CtcpIgnore)
+ ui.ctcpTypeButton->setChecked(true);
else
ui.senderTypeButton->setChecked(true);
connect(ui.isActiveCheckBox, SIGNAL(stateChanged(int)), this, SLOT(widgetHasChanged()));
connect(ui.buttonBox->button(QDialogButtonBox::Ok), SIGNAL(clicked()), this, SLOT(aboutToAccept()));
+ widgetHasChanged();
}
void IgnoreListEditDlg::widgetHasChanged() {
if(ui.messageTypeButton->isChecked())
_clonedIgnoreListItem.type = IgnoreListManager::MessageIgnore;
+ else if(ui.ctcpTypeButton->isChecked())
+ _clonedIgnoreListItem.type = IgnoreListManager::CtcpIgnore;
else
_clonedIgnoreListItem.type = IgnoreListManager::SenderIgnore;