QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
qgsexternalresourcewidgetwrapper.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsexternalresourcewidgetwrapper.h
3  --------------------------------------
4  begin : 16.12.2015
5  copyright : (C) 2015 by Denis Rouzaud
6  email : [email protected]
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
16 #ifndef QGSEXTERNALRESOURCEWIDGETWRAPPER_H
17 #define QGSEXTERNALRESOURCEWIDGETWRAPPER_H
18 
20 
21 class QLabel;
22 class QLineEdit;
23 
24 #include "qgseditorwidgetwrapper.h"
25 
26 
27 
37 {
38  Q_OBJECT
39  public:
40  explicit QgsExternalResourceWidgetWrapper( QgsVectorLayer* vl, int fieldIdx, QWidget* editor = nullptr, QWidget* parent = nullptr );
41 
42  // QgsEditorWidgetWrapper interface
43  public:
44  QVariant value() const override;
45  void showIndeterminateState() override;
46 
47  protected:
48  QWidget* createWidget( QWidget* parent ) override;
49  void initWidget( QWidget* editor ) override;
50  bool valid() const override;
51 
52  public slots:
53  void setValue( const QVariant& value ) override;
54  void setEnabled( bool enabled ) override;
55 
56  private:
57  void updateConstraintWidgetStatus( bool constraintValid ) override;
58 
59  QLineEdit* mLineEdit;
60  QLabel* mLabel;
61  QgsExternalResourceWidget* mQgsWidget;
62 
63 
64 };
65 
66 #endif // QGSEXTERNALRESOURCEWIDGETWRAPPER_H
Manages an editor widget Widget and wrapper share the same parent.
virtual void updateConstraintWidgetStatus(bool constraintValid)
This should update the widget with a visual cue if a constraint status changed.
virtual void setEnabled(bool enabled) override
Is used to enable or disable the edit functionality of the managed widget.
virtual void showIndeterminateState()
Sets the widget to display in an indeterminate "mixed value" state.
virtual bool valid() const =0
Return true if the widget has been properly initialized.
virtual QWidget * createWidget(QWidget *parent)=0
This method should create a new widget with the provided parent.
virtual void initWidget(QWidget *editor)
This method should initialize the editor widget with runtime data.
virtual void setValue(const QVariant &value)=0
Is called, when the value of the widget needs to be changed.
virtual QVariant value() const =0
Will be used to access the widget's value.
Widget to display file path with a push button for an "open file" dialog It can also be used to displ...
Represents a vector layer which manages a vector based data sets.