summaryrefslogtreecommitdiff
path: root/src/bookmarks
diff options
context:
space:
mode:
authorJon Ander Peñalba <jonan88@gmail.com>2010-08-30 00:05:47 +0200
committerJon Ander Peñalba <jonan88@gmail.com>2010-08-30 16:58:35 +0200
commit51ef0020a78bd216cb357eaa574161299fa0b608 (patch)
tree9c5f7ef427b79eaa3df14cf030a646e9508da043 /src/bookmarks
parentMerge branch 'master' of gitorious.org:rekonq/mainline (diff)
downloadrekonq-51ef0020a78bd216cb357eaa574161299fa0b608.tar.xz
Use the same FilterProxyModel for the bookmarks and history panels
Diffstat (limited to 'src/bookmarks')
-rw-r--r--src/bookmarks/bookmarkspanel.cpp6
-rw-r--r--src/bookmarks/bookmarksproxy.cpp58
-rw-r--r--src/bookmarks/bookmarksproxy.h58
3 files changed, 3 insertions, 119 deletions
diff --git a/src/bookmarks/bookmarkspanel.cpp b/src/bookmarks/bookmarkspanel.cpp
index 08f99155..53f22232 100644
--- a/src/bookmarks/bookmarkspanel.cpp
+++ b/src/bookmarks/bookmarkspanel.cpp
@@ -29,10 +29,10 @@
#include "bookmarkspanel.h"
// Local Includes
+#include "panels/urlfilterproxymodel.h"
#include "application.h"
#include "bookmarkprovider.h"
#include "bookmarkstreemodel.h"
-#include "bookmarksproxy.h"
#include "bookmarkscontextmenu.h"
#include "bookmarkowner.h"
#include "paneltreeview.h"
@@ -185,7 +185,7 @@ void BookmarksPanel::setup()
setWidget(ui);
BookmarksTreeModel *model = new BookmarksTreeModel(this);
- BookmarksProxy *proxy = new BookmarksProxy(ui);
+ UrlFilterProxyModel *proxy = new UrlFilterProxyModel(ui);
proxy->setSourceModel(model);
m_treeView->setModel(proxy);
@@ -211,7 +211,7 @@ KBookmark BookmarksPanel::bookmarkForIndex(const QModelIndex &index)
if (!index.isValid())
return KBookmark();
- const BookmarksProxy *proxyModel = static_cast<const BookmarksProxy*>(index.model());
+ const UrlFilterProxyModel *proxyModel = static_cast<const UrlFilterProxyModel*>(index.model());
QModelIndex originalIndex = proxyModel->mapToSource(index);
BtmItem *node = static_cast<BtmItem*>(originalIndex.internalPointer());
diff --git a/src/bookmarks/bookmarksproxy.cpp b/src/bookmarks/bookmarksproxy.cpp
deleted file mode 100644
index 1e4da877..00000000
--- a/src/bookmarks/bookmarksproxy.cpp
+++ /dev/null
@@ -1,58 +0,0 @@
-/* ============================================================
-*
-* This file is a part of the rekonq project
-*
-* Copyright (C) 2009 by Nils Weigel <nehlsen at gmail dot com>
-* Copyright (C) 2010 by Andrea Diamantini <adjam7 at gmail dot com>
-*
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License as
-* published by the Free Software Foundation; either version 2 of
-* the License or (at your option) version 3 or any later version
-* accepted by the membership of KDE e.V. (or its successor approved
-* by the membership of KDE e.V.), which shall act as a proxy
-* defined in Section 14 of version 3 of the license.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program. If not, see <http://www.gnu.org/licenses/>.
-*
-* ============================================================ */
-
-
-// Self Includes
-#include "bookmarksproxy.h"
-
-
-BookmarksProxy::BookmarksProxy(QObject *parent)
- : QSortFilterProxyModel(parent)
-{
- setFilterCaseSensitivity(Qt::CaseInsensitive);
-}
-
-
-bool BookmarksProxy::filterAcceptsRow(const int source_row, const QModelIndex &source_parent) const
-{
- return recursiveMatch( sourceModel()->index(source_row, 0, source_parent) );
-}
-
-
-bool BookmarksProxy::recursiveMatch(const QModelIndex &index) const
-{
- if (index.data().toString().contains(filterRegExp()))
- return true;
-
- int numChildren = sourceModel()->rowCount(index);
- for (int childRow = 0; childRow < numChildren; ++childRow)
- {
- if (recursiveMatch(sourceModel()->index(childRow, 0, index)))
- return true;
- }
-
- return false;
-}
diff --git a/src/bookmarks/bookmarksproxy.h b/src/bookmarks/bookmarksproxy.h
deleted file mode 100644
index b4554d2b..00000000
--- a/src/bookmarks/bookmarksproxy.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/* ============================================================
-*
-* This file is a part of the rekonq project
-*
-* Copyright (C) 2009 by Nils Weigel <nehlsen at gmail dot com>
-* Copyright (C) 2010 by Andrea Diamantini <adjam7 at gmail dot com>
-*
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License as
-* published by the Free Software Foundation; either version 2 of
-* the License or (at your option) version 3 or any later version
-* accepted by the membership of KDE e.V. (or its successor approved
-* by the membership of KDE e.V.), which shall act as a proxy
-* defined in Section 14 of version 3 of the license.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program. If not, see <http://www.gnu.org/licenses/>.
-*
-* ============================================================ */
-
-
-#ifndef BOOKMARKSPROXY_H
-#define BOOKMARKSPROXY_H
-
-
-// Rekonq Includes
-#include "rekonq_defines.h"
-
-// Qt Includes
-#include <QtGui/QSortFilterProxyModel>
-
-/**
- * QSortFilterProxyModel hides all children which parent doesn't
- * match the filter. This class is used to change this behavior.
- * If a bookmark matches the filter it'll be shown, even if it's parent doesn't match it.
- */
-class REKONQ_TESTS_EXPORT BookmarksProxy : public QSortFilterProxyModel
-{
- Q_OBJECT
- Q_DISABLE_COPY(BookmarksProxy)
-
-public:
- BookmarksProxy(QObject *parent = 0);
-
-protected:
- virtual bool filterAcceptsRow(const int source_row, const QModelIndex &source_parent) const;
-
- // returns true if index or any of his children match the filter
- bool recursiveMatch(const QModelIndex &index) const;
-};
-
-#endif // BOOKMARKSPROXY_H