QGIS API Documentation 4.0.0-Norrköping (1ddcee3d0e4)
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 { return new QgsProcessingParameterDxfLayers( name ); }
92
93 QString description() const override { return QCoreApplication::translate( "Processing", "An input allowing selection of multiple layers for export to DXF file." ); }
94
95 QString name() const override { return QCoreApplication::translate( "Processing", "DXF Layers" ); }
96
97 QString id() const override { return QgsProcessingParameterDxfLayers::typeName(); }
98
99 QString pythonImportString() const override { return u"from qgis.core import QgsProcessingParameterDxfLayers"_s; }
100
101 QString className() const override { return u"QgsProcessingParameterDxfLayers"_s; }
102
103 QStringList acceptedPythonTypes() const override
104 {
105 return QStringList()
106 << QObject::tr( "list[dict]: list of input layers as dictionaries, see QgsProcessingParameterDxfLayers docs" )
107 << QObject::tr( "list[str]: list of layer IDs" )
108 << QObject::tr( "list[str]: list of layer names" )
109 << QObject::tr( "list[str]: list of layer sources" )
110 << QObject::tr( "str: layer ID" )
111 << QObject::tr( "str: layer name" )
112 << QObject::tr( "str: layer source" )
113 << u"list[QgsMapLayer]"_s
114 << u"QgsVectorLayer"_s;
115 }
116
117 QStringList acceptedParameterTypes() const override
118 {
119 return QStringList()
126 }
127
128 QStringList acceptedOutputTypes() const override
129 {
130 return QStringList()
136 }
137};
138
140#endif
141
142#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:57
#define SIP_FACTORY
Definition qgis_sip.h:83
Encapsulates the properties of a vector layer containing features that will be exported to the DXF fi...