File: qgsoptionalexpression.sip

package info (click to toggle)
qgis 2.18.28%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 1,007,948 kB
  • sloc: cpp: 671,774; python: 158,539; xml: 35,690; ansic: 8,346; sh: 1,766; perl: 1,669; sql: 999; yacc: 836; lex: 461; makefile: 292
file content (112 lines) | stat: -rw-r--r-- 3,210 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
/***************************************************************************
  qgsoptionalexpression.sip - QgsOptionalExpression

 ---------------------
 begin                : 8.9.2016
 copyright            : (C) 2016 by Matthias Kuhn
 email                : matthias@opengis.ch
 ***************************************************************************
 *                                                                         *
 *   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.                                   *
 *                                                                         *
 ***************************************************************************/

/**
 * An expression with an additional enabled flag.
 *
 * This can be used for configuration options where an expression can be enabled
 * or diabled but when disabled it shouldn't lose it's information for the case
 * it gets re-enabled later on and a user shouldn't be force to redo the configuration.
 *
 * @note Added in QGIS 2.18
 */

class QgsOptionalExpression
{
%TypeHeaderCode
#include <qgsoptionalexpression.h>
%End
  public:
    /**
     * Construct a default optional expression.
     * It will be disabled and with an empty expression.
     */
    QgsOptionalExpression();

    /**
     * Construct an optional expression with the provided expression.
     * It will be enabled.
     */
    QgsOptionalExpression( const QgsExpression& expression );

    /**
     * Construct an optional expression with the provided expression and enabled state.
     */
    QgsOptionalExpression( const QgsExpression& expression, bool enabled );

    /**
     * Compare this QgsOptionalExpression to another one.
     *
     * This will compare the enabled flag and call the == operator
     * of the contained class.
     *
     * @note Added in QGIS 2.18
     */
    int operator== ( const QgsOptionalExpression& other ) const;
%MethodCode
      sipRes = *sipCpp == *a0;
%End

    int __bool__() const;
%MethodCode
      sipRes = sipCpp->enabled();
%End

    /**
     * Check if this optional is enabled
     *
     * @note Added in QGIS 2.18
     */
    bool enabled() const;

    /**
     * Set if this optional is enabled
     *
     * @note Added in QGIS 2.18
     */
    void setEnabled( bool enabled );

    /**
     * Access the payload data
     *
     * @note Added in QGIS 2.18
     */
    QgsExpression data() const;

    /**
     * Set the payload data
     *
     * @note Added in QGIS 2.18
     */
    void setData( const QgsExpression& data );

    /**
     * Save the optional expression to the provided QDomElement.
     *
     * The caller is responsible to pass an empty QDomElement and to append it to
     * a parent element.
     *
     * @note Added in QGIS 2.18
     */
    void writeXml( QDomElement& element );

    /**
     * Read the optional expression from the provided QDomElement.
     *
     * @note Added in QGIS 2.18
     */
    void readXml( const QDomElement& element );
};