X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/51a4c273a0ff8b8bc27f4ecb3ab155e18361955a..f65b0899c3666561cafac14f67ab0bb8a5bfa00a:/src/filterbar/filterbar.h diff --git a/src/filterbar/filterbar.h b/src/filterbar/filterbar.h index 025bf1edd..d6ca402af 100644 --- a/src/filterbar/filterbar.h +++ b/src/filterbar/filterbar.h @@ -1,29 +1,18 @@ -/*************************************************************************** - * Copyright (C) 2006-2010 by Peter Penz * - * Copyright (C) 2006 by Gregor Kališnik * - * * - * 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: 2006-2010 Peter Penz + * SPDX-FileCopyrightText: 2006 Gregor Kališnik + * SPDX-FileCopyrightText: 2012 Stuart Citrin + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ #ifndef FILTERBAR_H #define FILTERBAR_H -#include +#include -class KLineEdit; +class QLineEdit; +class QToolButton; /** * @brief Provides an input field for filtering the currently shown items. @@ -35,19 +24,26 @@ class FilterBar : public QWidget Q_OBJECT public: - explicit FilterBar(QWidget* parent = 0); - virtual ~FilterBar(); + explicit FilterBar(QWidget* parent = nullptr); + ~FilterBar() override; + + /** Called by view container to hide this **/ + void closeFilterBar(); /** * Selects the whole text of the filter bar. */ void selectAll(); -public slots: +public Q_SLOTS: /** Clears the input field. */ void clear(); + /** Clears the input field if the "lock button" is disabled. */ + void slotUrlChanged(); + /** The input field is cleared also if the "lock button" is released. */ + void slotToggleLockButton(bool checked); -signals: +Q_SIGNALS: /** * Signal that reports the name filter has been * changed to \a nameFilter. @@ -59,12 +55,18 @@ signals: */ void closeRequest(); + /* + * Emitted as soon as the focus should be returned back to the view. + */ + void focusViewRequest(); + protected: - virtual void showEvent(QShowEvent* event); - virtual void keyReleaseEvent(QKeyEvent* event); + void showEvent(QShowEvent* event) override; + void keyReleaseEvent(QKeyEvent* event) override; private: - KLineEdit* m_filterInput; + QLineEdit* m_filterInput; + QToolButton* m_lockButton; }; #endif