KProperty

KPropertyUrlEditor.h
1 /* This file is part of the KDE project
2  Copyright (C) 2004 Cedric Pasteur <[email protected]>
3  Copyright (C) 2004 Alexander Dymo <[email protected]>
4  Copyright (C) 2016-2018 Jarosław Staniek <[email protected]>
5  Copyright (C) 2018 Dmitry Baryshev <[email protected]>
6 
7  This library is free software; you can redistribute it and/or
8  modify it under the terms of the GNU Library General Public
9  License as published by the Free Software Foundation; either
10  version 2 of the License, or (at your option) any later version.
11 
12  This library is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  Library General Public License for more details.
16 
17  You should have received a copy of the GNU Library General Public License
18  along with this library; see the file COPYING.LIB. If not, write to
19  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20  * Boston, MA 02110-1301, USA.
21 */
22 
23 #ifndef KPROPERTYURLEDITOR_H
24 #define KPROPERTYURLEDITOR_H
25 
26 #include "KPropertyComposedUrl.h"
27 #include "KPropertyWidgetsFactory.h"
28 #include "KPropertyGenericSelectionEditor.h"
29 
30 #include <QUrl>
31 
32 class KPropertyUrlEditorPrivate;
33 
35 class KPROPERTYWIDGETS_EXPORT KPropertyUrlEditor : public KPropertyGenericSelectionEditor
36 {
37  Q_PROPERTY(QUrl value READ value WRITE setValue USER true)
38  Q_OBJECT
39 
40 public:
41  explicit KPropertyUrlEditor(const KProperty &property, QWidget *parent = nullptr);
42 
43  ~KPropertyUrlEditor() override;
44 
45  virtual QUrl value() const;
46 
47 Q_SIGNALS:
48  void commitData(QWidget * editor);
49 
50 public Q_SLOTS:
51  virtual void setValue(const QUrl &value);
52 
53 protected Q_SLOTS:
54  void selectButtonClicked() override;
55 
56 protected:
57  bool eventFilter(QObject *o, QEvent *event) override;
58 
59 private:
62 };
63 
65 class KPROPERTYWIDGETS_EXPORT KPropertyUrlDelegate : public KPropertyEditorCreatorInterface,
67 {
68 public:
70 
71  QWidget *createEditor(int type, QWidget *parent, const QStyleOptionViewItem &option,
72  const QModelIndex &index) const override;
73 
74  QString valueToString(const QVariant &value, const QLocale &locale) const override;
75 };
76 
77 #endif
An interface for editor widget creators.
virtual void selectButtonClicked()
Reimplement to react on clicking the "..." select button.
virtual bool eventFilter(QObject *watched, QEvent *event)
Editor for Url type.
Q_PROPERTY(...)
The base class representing a single property.
Definition: KProperty.h:95
Q_DISABLE_COPY(Class)
Delegate for Url and ComposedUrl types.
A base class for use by editors that have widget on the left and "..." select button on the right...
Provides a specialized conversion of value to string depending on type.
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Fri Aug 14 2020 23:02:56 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.