QGIS API Documentation 3.99.0-Master (e9821da5c6b)
Loading...
Searching...
No Matches
qgsprocessingparameterdxflayers.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsprocessingparameterdxflayers.h
3 ---------------------
4 Date : September 2020
5 Copyright : (C) 2020 by Alexander Bruy
6 Email : alexander dot bruy at gmail dot com
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 QGSPROCESSINGPARAMETERDXFLAYERS_H
17#define QGSPROCESSINGPARAMETERDXFLAYERS_H
18
19#include "qgsdxfexport.h"
23
24#include <QString>
25
26using namespace Qt::StringLiterals;
27
55{
56 public:
58 QgsProcessingParameterDxfLayers( const QString &name, const QString &description = QString() );
59
61 QString type() const override;
62 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
63 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
65 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
66 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
67
69 static QString typeName() { return u"dxflayers"_s; }
71 static QList<QgsDxfExport::DxfLayer> parameterAsLayers( const QVariant &layersVariant, QgsProcessingContext &context );
73 static QgsDxfExport::DxfLayer variantMapAsLayer( const QVariantMap &layerVariantMap, QgsProcessingContext &context );
75 static QVariantMap layerAsVariantMap( const QgsDxfExport::DxfLayer &layer );
76};
77
78#ifndef SIP_RUN
80
88class CORE_EXPORT QgsProcessingParameterTypeDxfLayers : public QgsProcessingParameterType
89{
90 public:
91 QgsProcessingParameterDefinition *create( const QString &name ) const override SIP_FACTORY
92 {
93 return new QgsProcessingParameterDxfLayers( name );
94 }
95
96 QString description() const override
97 {
98 return QCoreApplication::translate( "Processing", "An input allowing selection of multiple layers for export to DXF file." );
99 }
100
101 QString name() const override
102 {
103 return QCoreApplication::translate( "Processing", "DXF Layers" );
104 }
105
106 QString id() const override
107 {
109 }
110
111 QString pythonImportString() const override
112 {
113 return u"from qgis.core import QgsProcessingParameterDxfLayers"_s;
114 }
115
116 QString className() const override
117 {
118 return u"QgsProcessingParameterDxfLayers"_s;
119 }
120
121 QStringList acceptedPythonTypes() const override
122 {
123 return QStringList() << QObject::tr( "list[dict]: list of input layers as dictionaries, see QgsProcessingParameterDxfLayers docs" )
124 << QObject::tr( "list[str]: list of layer IDs" )
125 << QObject::tr( "list[str]: list of layer names" )
126 << QObject::tr( "list[str]: list of layer sources" )
127 << QObject::tr( "str: layer ID" )
128 << QObject::tr( "str: layer name" )
129 << QObject::tr( "str: layer source" )
130 << u"list[QgsMapLayer]"_s
131 << u"QgsVectorLayer"_s;
132 }
133
134 QStringList acceptedParameterTypes() const override
135 {
136 return QStringList()
143 }
144
145 QStringList acceptedOutputTypes() const override
146 {
147 return QStringList()
153 }
154};
155
157#endif
158
159#endif // QGSPROCESSINGPARAMETERDXFLAYERS_H
Contains information about the context in which a processing algorithm is executed.
static QString typeName()
Returns the type name for the output class.
static QString typeName()
Returns the type name for the output class.
static QString typeName()
Returns the type name for the output class.
static QString typeName()
Returns the type name for the output class.
static QString typeName()
Returns the type name for the output class.
virtual QVariant valueAsJsonObject(const QVariant &value, QgsProcessingContext &context) const
Returns a version of the parameter input value, which is suitable for use in a JSON object.
virtual QString asPythonString(QgsProcessing::PythonOutputType outputType=QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass) const
Returns the parameter definition as a Python command which can be used within a Python Processing scr...
QString description() const
Returns the description for the parameter.
QgsProcessingParameterDefinition(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, const QString &help=QString())
Constructor for QgsProcessingParameterDefinition.
virtual QString valueAsString(const QVariant &value, QgsProcessingContext &context, bool &ok) const
Returns a string version of the parameter input value (if possible).
virtual QgsProcessingParameterDefinition * clone() const =0
Creates a clone of the parameter definition.
virtual QString type() const =0
Unique parameter type name.
QString name() const
Returns the name of the parameter.
virtual QString valueAsPythonString(const QVariant &value, QgsProcessingContext &context) const
Returns a string version of the parameter input value, which is suitable for use as an input paramete...
virtual bool checkValueIsAcceptable(const QVariant &input, QgsProcessingContext *context=nullptr) const
Checks whether the specified input value is acceptable for the parameter.
QgsProcessingParameterDxfLayers(const QString &name, const QString &description=QString())
Constructor for QgsProcessingParameterDxfLayers.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
Makes metadata of processing parameters available.
static QString typeName()
Returns the type name for the parameter class.
PythonOutputType
Available Python output types.
@ PythonQgsProcessingAlgorithmSubclass
Full Python QgsProcessingAlgorithm subclass.
#define SIP_OUT
Definition qgis_sip.h:58
#define SIP_FACTORY
Definition qgis_sip.h:84
Layers and optional attribute index to split into multiple layers using attribute value as layer name...