QGIS API Documentation 3.43.0-Master (56aa1fd18d7)
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
22#include "qgsdxfexport.h"
23
51{
52 public:
54 QgsProcessingParameterDxfLayers( const QString &name, const QString &description = QString() );
55
57 QString type() const override;
58 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
59 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
61 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
62 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
63
65 static QString typeName() { return QStringLiteral( "dxflayers" ); }
67 static QList<QgsDxfExport::DxfLayer> parameterAsLayers( const QVariant &layersVariant, QgsProcessingContext &context );
69 static QgsDxfExport::DxfLayer variantMapAsLayer( const QVariantMap &layerVariantMap, QgsProcessingContext &context );
71 static QVariantMap layerAsVariantMap( const QgsDxfExport::DxfLayer &layer );
72};
73
74#ifndef SIP_RUN
76
84class CORE_EXPORT QgsProcessingParameterTypeDxfLayers : public QgsProcessingParameterType
85{
86 public:
87 QgsProcessingParameterDefinition *create( const QString &name ) const override SIP_FACTORY
88 {
89 return new QgsProcessingParameterDxfLayers( name );
90 }
91
92 QString description() const override
93 {
94 return QCoreApplication::translate( "Processing", "An input allowing selection of multiple layers for export to DXF file." );
95 }
96
97 QString name() const override
98 {
99 return QCoreApplication::translate( "Processing", "DXF Layers" );
100 }
101
102 QString id() const override
103 {
105 }
106
107 QString pythonImportString() const override
108 {
109 return QStringLiteral( "from qgis.core import QgsProcessingParameterDxfLayers" );
110 }
111
112 QString className() const override
113 {
114 return QStringLiteral( "QgsProcessingParameterDxfLayers" );
115 }
116
117 QStringList acceptedPythonTypes() const override
118 {
119 return QStringList() << QObject::tr( "list[dict]: list of input layers as dictionaries, see QgsProcessingParameterDxfLayers docs" )
120 << QObject::tr( "list[str]: list of layer IDs" )
121 << QObject::tr( "list[str]: list of layer names" )
122 << QObject::tr( "list[str]: list of layer sources" )
123 << QObject::tr( "str: layer ID" )
124 << QObject::tr( "str: layer name" )
125 << QObject::tr( "str: layer source" )
126 << QStringLiteral( "list[QgsMapLayer]" )
127 << QStringLiteral( "QgsVectorLayer" );
128 }
129
130 QStringList acceptedParameterTypes() const override
131 {
132 return QStringList()
139 }
140
141 QStringList acceptedOutputTypes() const override
142 {
143 return QStringList()
149 }
150};
151
153#endif
154
155#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.
Base class for the definition of processing parameters.
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.
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.
A parameter for Processing algorithms that need a list of input vector layers to export as DXF file.
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:76
Layers and optional attribute index to split into multiple layers using attribute value as layer name...