QgsNewSpatialiteLayerDialog::QgsNewSpatialiteLayerDialog( QWidget *parent, Qt::WindowFlags fl ) : QDialog( parent, fl ) { setupUi( this ); QSettings settings; restoreGeometry( settings.value( "/Windows/NewSpatiaLiteLayer/geometry" ).toByteArray() ); mAddAttributeButton->setIcon( QgsApplication::getThemeIcon( "/mActionNewAttribute.png" ) ); mRemoveAttributeButton->setIcon( QgsApplication::getThemeIcon( "/mActionDeleteAttribute.png" ) ); mTypeBox->addItem( tr( "Text data" ), "text" ); mTypeBox->addItem( tr( "Whole number" ), "integer" ); mTypeBox->addItem( tr( "Decimal number" ), "real" ); mPointRadioButton->setChecked( true ); // Populate the database list from the stored connections settings.beginGroup( "/SpatiaLite/connections" ); QStringList keys = settings.childGroups(); QStringList::Iterator it = keys.begin(); mDatabaseComboBox->clear(); while ( it != keys.end() ) { // retrieving the SQLite DB name and full path QString text = settings.value( *it + "/sqlitepath", "###unknown###" ).toString(); mDatabaseComboBox->addItem( text ); ++it; } settings.endGroup(); mOkButton = buttonBox->button( QDialogButtonBox::Ok ); mOkButton->setEnabled( false ); // Set the SRID box to a default of WGS84 QgsCoordinateReferenceSystem srs; srs.createFromOgcWmsCrs( settings.value( "/Projections/layerDefaultCrs", GEO_EPSG_CRS_AUTHID ).toString() ); srs.validate(); mCrsId = srs.authid(); leSRID->setText( srs.authid() + " - " + srs.description() ); pbnFindSRID->setEnabled( mDatabaseComboBox->count() ); connect( mNameEdit, SIGNAL( textChanged( QString ) ), this, SLOT( nameChanged( QString ) ) ); connect( mAttributeView, SIGNAL( itemSelectionChanged() ), this, SLOT( selectionChanged() ) ); connect( leLayerName, SIGNAL( textChanged( const QString& text ) ), this, SLOT( checkOk() ) ); connect( checkBoxPrimaryKey, SIGNAL( clicked() ), this, SLOT( checkOk() ) ); mAddAttributeButton->setEnabled( false ); mRemoveAttributeButton->setEnabled( false ); }
QgsNewMemoryLayerDialog::QgsNewMemoryLayerDialog( QWidget *parent, Qt::WindowFlags fl ) : QDialog( parent, fl ) { setupUi( this ); QSettings settings; restoreGeometry( settings.value( QStringLiteral( "/Windows/NewMemoryLayer/geometry" ) ).toByteArray() ); mPointRadioButton->setChecked( true ); QgsCoordinateReferenceSystem defaultCrs = QgsCoordinateReferenceSystem::fromOgcWmsCrs( settings.value( QStringLiteral( "/Projections/layerDefaultCrs" ), GEO_EPSG_CRS_AUTHID ).toString() ); defaultCrs.validate(); mCrsSelector->setCrs( defaultCrs ); mNameLineEdit->setText( tr( "New scratch layer" ) ); }
QgsNewVectorLayerDialog::QgsNewVectorLayerDialog( QWidget *parent, Qt::WindowFlags fl ) : QDialog( parent, fl ) { setupUi( this ); QSettings settings; restoreGeometry( settings.value( QStringLiteral( "/Windows/NewVectorLayer/geometry" ) ).toByteArray() ); mAddAttributeButton->setIcon( QgsApplication::getThemeIcon( QStringLiteral( "/mActionNewAttribute.svg" ) ) ); mRemoveAttributeButton->setIcon( QgsApplication::getThemeIcon( QStringLiteral( "/mActionDeleteAttribute.svg" ) ) ); mTypeBox->addItem( tr( "Text data" ), "String" ); mTypeBox->addItem( tr( "Whole number" ), "Integer" ); mTypeBox->addItem( tr( "Decimal number" ), "Real" ); mTypeBox->addItem( tr( "Date" ), "Date" ); mWidth->setValidator( new QIntValidator( 1, 255, this ) ); mPrecision->setValidator( new QIntValidator( 0, 15, this ) ); mPointRadioButton->setChecked( true ); mFileFormatComboBox->addItem( tr( "ESRI Shapefile" ), "ESRI Shapefile" ); #if 0 // Disabled until provider properly supports editing the created file formats // When enabling this, adapt the window-title of the dialog and the title of all actions showing this dialog. mFileFormatComboBox->addItem( tr( "Comma Separated Value" ), "Comma Separated Value" ); mFileFormatComboBox->addItem( tr( "GML" ), "GML" ); mFileFormatComboBox->addItem( tr( "Mapinfo File" ), "Mapinfo File" ); #endif if ( mFileFormatComboBox->count() == 1 ) { mFileFormatComboBox->setVisible( false ); mFileFormatLabel->setVisible( false ); } mFileFormatComboBox->setCurrentIndex( 0 ); mFileEncoding->addItems( QgsVectorDataProvider::availableEncodings() ); // Use default encoding if none supplied QString enc = QSettings().value( QStringLiteral( "/UI/encoding" ), "System" ).toString(); // The specified decoding is added if not existing alread, and then set current. // This should select it. int encindex = mFileEncoding->findText( enc ); if ( encindex < 0 ) { mFileEncoding->insertItem( 0, enc ); encindex = 0; } mFileEncoding->setCurrentIndex( encindex ); mOkButton = buttonBox->button( QDialogButtonBox::Ok ); mAttributeView->addTopLevelItem( new QTreeWidgetItem( QStringList() << QStringLiteral( "id" ) << QStringLiteral( "Integer" ) << QStringLiteral( "10" ) << QLatin1String( "" ) ) ); QgsCoordinateReferenceSystem defaultCrs = QgsCoordinateReferenceSystem::fromOgcWmsCrs( settings.value( QStringLiteral( "/Projections/layerDefaultCrs" ), GEO_EPSG_CRS_AUTHID ).toString() ); defaultCrs.validate(); mCrsSelector->setCrs( defaultCrs ); connect( mNameEdit, SIGNAL( textChanged( QString ) ), this, SLOT( nameChanged( QString ) ) ); connect( mAttributeView, SIGNAL( itemSelectionChanged() ), this, SLOT( selectionChanged() ) ); mAddAttributeButton->setEnabled( false ); mRemoveAttributeButton->setEnabled( false ); }
QgsNewGeoPackageLayerDialog::QgsNewGeoPackageLayerDialog( QWidget *parent, Qt::WindowFlags fl ) : QDialog( parent, fl ) , mOkButton( nullptr ) , mTableNameEdited( false ) , mLayerIdentifierEdited( false ) { setupUi( this ); QSettings settings; restoreGeometry( settings.value( "/Windows/NewGeoPackageLayer/geometry" ).toByteArray() ); mAddAttributeButton->setIcon( QgsApplication::getThemeIcon( "/mActionNewAttribute.png" ) ); mRemoveAttributeButton->setIcon( QgsApplication::getThemeIcon( "/mActionDeleteAttribute.png" ) ); #ifdef SUPPORT_GEOMETRY_LESS mGeometryTypeBox->addItem( tr( "Non spatial" ), wkbNone ); #endif mGeometryTypeBox->addItem( tr( "Point" ), wkbPoint ); mGeometryTypeBox->addItem( tr( "Line" ), wkbLineString ); mGeometryTypeBox->addItem( tr( "Polygon" ), wkbPolygon ); mGeometryTypeBox->addItem( tr( "Multi point" ), wkbMultiPoint ); mGeometryTypeBox->addItem( tr( "Multi line" ), wkbMultiLineString ); mGeometryTypeBox->addItem( tr( "Multi polygon" ), wkbMultiPolygon ); #ifdef SUPPORT_CURVE_GEOMETRIES #if 0 // QGIS always create CompoundCurve and there's no real interest of having just CircularString. CompoundCurve are more useful mGeometryTypeBox->addItem( tr( "Circular string" ), wkbCircularString ); #endif mGeometryTypeBox->addItem( tr( "Compound curve" ), wkbCompoundCurve ); mGeometryTypeBox->addItem( tr( "Curve polygon" ), wkbCurvePolygon ); mGeometryTypeBox->addItem( tr( "Multi curve" ), wkbMultiCurve ); mGeometryTypeBox->addItem( tr( "Multi surface" ), wkbMultiSurface ); #endif #ifdef SUPPORT_GEOMETRY_LESS mGeometryColumnEdit->setEnabled( false ); mCheckBoxCreateSpatialIndex->setEnabled( false ); mCrsSelector->setEnabled( false ); #endif mFieldTypeBox->addItem( tr( "Text data" ), "text" ); mFieldTypeBox->addItem( tr( "Whole number (integer)" ), "integer" ); #ifdef SUPPORT_INTEGER64 mFieldTypeBox->addItem( tr( "Whole number (integer 64 bit)" ), "integer64" ); #endif mFieldTypeBox->addItem( tr( "Decimal number (real)" ), "real" ); mFieldTypeBox->addItem( tr( "Date" ), "date" ); mFieldTypeBox->addItem( tr( "Date&time" ), "datetime" ); mOkButton = buttonBox->button( QDialogButtonBox::Ok ); mOkButton->setEnabled( false ); // Set the SRID box to a default of WGS84 QgsCoordinateReferenceSystem defaultCrs; defaultCrs.createFromOgcWmsCrs( settings.value( "/Projections/layerDefaultCrs", GEO_EPSG_CRS_AUTHID ).toString() ); defaultCrs.validate(); mCrsSelector->setCrs( defaultCrs ); connect( mFieldNameEdit, SIGNAL( textChanged( const QString& ) ), this, SLOT( fieldNameChanged( QString ) ) ); connect( mAttributeView, SIGNAL( itemSelectionChanged() ), this, SLOT( selectionChanged() ) ); connect( mTableNameEdit, SIGNAL( textChanged( const QString& ) ), this, SLOT( checkOk() ) ); connect( mDatabaseEdit, SIGNAL( textChanged( const QString& ) ), this, SLOT( checkOk() ) ); mAddAttributeButton->setEnabled( false ); mRemoveAttributeButton->setEnabled( false ); #ifndef SUPPORT_SPATIAL_INDEX mCheckBoxCreateSpatialIndex->hide(); mCheckBoxCreateSpatialIndex->setChecked( false ); #else mCheckBoxCreateSpatialIndex->setChecked( true ); #endif #ifndef SUPPORT_IDENTIFIER_DESCRIPTION mLayerIdentifierLabel->hide(); mLayerIdentifierEdit->hide(); mLayerDescriptionLabel->hide(); mLayerDescriptionEdit->hide(); #endif #ifndef SUPPORT_FIELD_WIDTH mFieldLengthLabel->hide(); mFieldLengthEdit->hide(); #endif }