Diff
Modified: freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/consoletabwidget.cpp (14783 => 14784)
--- freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/consoletabwidget.cpp 2009-09-08 04:02:01 UTC (rev 14783)
+++ freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/consoletabwidget.cpp 2009-09-08 04:27:20 UTC (rev 14784)
@@ -55,6 +55,8 @@
this, SLOT(filterStringChanged()));
QObject::connect(m_ui->filterSyntaxComboBox, SIGNAL(currentIndexChanged(int)),
this, SLOT(filterStringChanged()));
+ QObject::connect(m_ui->filterReverseCheckBox, SIGNAL(toggled(bool)),
+ this, SLOT(reverseFilterChecked()));
QObject::connect(esl, SIGNAL(connected()),
this, SLOT(connected()));
@@ -372,3 +374,8 @@
_pastebinDlg->raise();
_pastebinDlg->activateWindow();
}
+
+void ConsoleTabWidget::reverseFilterChecked()
+{
+ model->toggleReverseFlag();
+}
Modified: freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/consoletabwidget.h (14783 => 14784)
--- freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/consoletabwidget.h 2009-09-08 04:02:01 UTC (rev 14783)
+++ freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/consoletabwidget.h 2009-09-08 04:27:20 UTC (rev 14784)
@@ -81,6 +81,7 @@
void gotEvent(ESLevent);
void addNewConsoleItem(QStandardItem *item);
void cmdSendClicked();
+ void reverseFilterChecked();
void lineCmdChanged(QString);
void checkEmerg(bool);
void checkAlert(bool);
Modified: freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/consoletabwidget.ui (14783 => 14784)
--- freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/consoletabwidget.ui 2009-09-08 04:02:01 UTC (rev 14783)
+++ freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/consoletabwidget.ui 2009-09-08 04:27:20 UTC (rev 14784)
@@ -83,6 +83,16 @@
</widget>
</item>
<item>
+ <widget class="QCheckBox" name="filterReverseCheckBox">
+ <property name="text">
+ <string>Reverse filter</string>
+ </property>
+ <property name="checked">
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item>
<widget class="QLabel" name="lblWarningMsg">
<property name="text">
<string/>
@@ -96,8 +106,8 @@
</property>
<property name="sizeHint" stdset="0">
<size>
- <width>627</width>
- <height>13</height>
+ <width>358</width>
+ <height>20</height>
</size>
</property>
</spacer>
Modified: freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/sortfilterproxymodel.cpp (14783 => 14784)
--- freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/sortfilterproxymodel.cpp 2009-09-08 04:02:01 UTC (rev 14783)
+++ freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/sortfilterproxymodel.cpp 2009-09-08 04:27:20 UTC (rev 14784)
@@ -71,10 +71,17 @@
SortFilterProxyModel::SortFilterProxyModel(QObject *parent)
: QSortFilterProxyModel(parent)
{
+ reverseFlag = false;
for(int i = 0; i < 8; i++)
loglevels.insert(i, true);
}
+void SortFilterProxyModel::toggleReverseFlag()
+{
+ reverseFlag = !reverseFlag;
+ invalidateFilter();
+}
+
void SortFilterProxyModel::setLogLevelFilter(int level, bool state)
{
loglevels.replace(level, state);
@@ -96,7 +103,11 @@
if (!_uuid.isEmpty())
uuidMatch = (sourceModel()->data(index0, ConsoleModel::UUIDRole).toString() == _uuid);
- return (loglevels.value(sourceModel()->data(index0, Qt::UserRole).toInt()) == true
+ bool res = (loglevels.value(sourceModel()->data(index0, Qt::UserRole).toInt()) == true
&& sourceModel()->data(index0).toString().contains(filterRegExp())
&& uuidMatch);
+ if (reverseFlag)
+ return !res;
+ else
+ return res;
}
Modified: freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/sortfilterproxymodel.h (14783 => 14784)
--- freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/sortfilterproxymodel.h 2009-09-08 04:02:01 UTC (rev 14783)
+++ freeswitch/trunk/contrib/jmesquita/fsgui/src/plugins/consoleplugin/sortfilterproxymodel.h 2009-09-08 04:27:20 UTC (rev 14784)
@@ -83,6 +83,7 @@
SortFilterProxyModel(QObject *parent = 0);
void setLogLevelFilter(int level, bool state);
void setUUIDFilterLog(QString uuid);
+ void toggleReverseFlag();
protected:
bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const;
@@ -90,6 +91,7 @@
private:
QVector<bool> loglevels;
QString _uuid;
+ bool reverseFlag;
};
#endif // SORTFILTERPROXYMODEL_H