QGIS API Documentation 3.43.0-Master (b60ef06885e)
qgsnewmemorylayerdialog.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsnewmemorylayerdialog.h
3 -------------------
4 begin : September 2014
5 copyright : (C) 2014 by Nyall Dawson, Marco Hugentobler
6 email : nyall dot dawson at gmail dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17#ifndef QGSNEWMEMORYLAYERDIALOG_H
18#define QGSNEWMEMORYLAYERDIALOG_H
19
20#include "ui_qgsnewmemorylayerdialogbase.h"
21#include "qgsguiutils.h"
22#include "qgswkbtypes.h"
23#include "qgshelp.h"
24#include "qgis_gui.h"
25
26class QgsFields;
27class QgsVectorLayer;
28
34class GUI_EXPORT QgsNewMemoryLayerDialog : public QDialog, private Ui::QgsNewMemoryLayerDialogBase
35{
36 Q_OBJECT
37
38 public:
45 static QgsVectorLayer *runAndCreateLayer( QWidget *parent = nullptr, const QgsCoordinateReferenceSystem &defaultCrs = QgsCoordinateReferenceSystem() );
46
50 QgsNewMemoryLayerDialog( QWidget *parent SIP_TRANSFERTHIS = nullptr, Qt::WindowFlags fl = QgsGuiUtils::ModalDialogFlags );
51
53 Qgis::WkbType selectedType() const;
54
59 void setCrs( const QgsCoordinateReferenceSystem &crs );
60
66
68 QString layerName() const;
69
74 QgsFields fields() const;
75
76 void accept() override;
77
78 private:
79 QString mCrsId;
80 QPushButton *mOkButton = nullptr;
81
82 private slots:
83
84 void geometryTypeChanged( int index );
85 void fieldNameChanged( const QString & );
86 void mTypeBox_currentIndexChanged( int index );
87 void mAddAttributeButton_clicked();
88 void mRemoveAttributeButton_clicked();
89 void selectionChanged();
90 void showHelp();
91 void moveFieldsUp();
92 void moveFieldsDown();
93};
94
95#endif //QGSNEWMEMORYLAYERDIALOG_H
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition qgis.h:256
Represents a coordinate reference system (CRS).
Container of fields for a vector layer.
Definition qgsfields.h:46
A dialog for configuring the properties of a new memory (scratch) layer.
Represents a vector layer which manages a vector based dataset.
#define SIP_TRANSFERTHIS
Definition qgis_sip.h:53
const QgsCoordinateReferenceSystem & crs