]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/private/kitemlistkeyboardsearchmanager.h
Output of licensedigger + manual cleanup afterwards.
[dolphin.git] / src / kitemviews / private / kitemlistkeyboardsearchmanager.h
index 2a14ca470456fffc48e6537671f12f1514d7afea..27c9a203fdc127c00f2f32392de21082caeb09d3 100644 (file)
@@ -1,33 +1,20 @@
-/***************************************************************************
- * Copyright (C) 2011 by Tirtha Chatterjee <tirtha.p.chatterjee@gmail.com> *
- *                                                                         *
- *   Based on the Itemviews NG project from Trolltech Labs:                *
- *   http://qt.gitorious.org/qt-labs/itemviews-ng                          *
- *                                                                         *
- *   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) any later version.                                   *
- *                                                                         *
- *   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, write to the                         *
- *   Free Software Foundation, Inc.,                                       *
- *   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA            *
- ***************************************************************************/
+/*
+ * SPDX-FileCopyrightText: 2011 Tirtha Chatterjee <tirtha.p.chatterjee@gmail.com>
+ *
+ * Based on the Itemviews NG project from Trolltech Labs
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
 
 #ifndef KITEMLISTKEYBOARDSEARCHMANAGER_H
 #define KITEMLISTKEYBOARDSEARCHMANAGER_H
 
 #include "dolphin_export.h"
+#include "kitemviews/kitemset.h"
 
+#include <QElapsedTimer>
 #include <QObject>
 #include <QString>
-#include <QElapsedTimer>
 
 /**
  * @brief Controls the keyboard searching ability for a KItemListController.
@@ -41,8 +28,8 @@ class DOLPHIN_EXPORT KItemListKeyboardSearchManager : public QObject
 
 public:
 
-    KItemListKeyboardSearchManager(QObject* parent = 0);
-    virtual ~KItemListKeyboardSearchManager();
+    explicit KItemListKeyboardSearchManager(QObject* parent = nullptr);
+    ~KItemListKeyboardSearchManager() override;
 
     /**
      * Add \a keys to the text buffer used for searching.
@@ -59,10 +46,12 @@ public:
     qint64 timeout() const;
 
     void cancelSearch();
+    bool shouldClearSearchIfInputTimeReached();
 
 public slots:
 
     void slotCurrentChanged(int current, int previous);
+    void slotSelectionChanged(const KItemSet& current, const KItemSet& previous);
 
 signals:
     /**
@@ -73,11 +62,12 @@ signals:
      *                           current item.
      */
     // TODO: Think about getting rid of the bool parameter
-    // (see http://doc.qt.nokia.com/qq/qq13-apis.html#thebooleanparametertrap)
+    // (see https://doc.qt.io/archives/qq/qq13-apis.html#thebooleanparametertrap)
     void changeCurrentItem(const QString& string, bool searchFromNextItem);
 
 private:
     QString m_searchedString;
+    bool m_isSearchRestarted;
     QElapsedTimer m_keyboardInputTime;
     qint64 m_timeout;
 };