23
23
#include " qgscoordinatereferencesystem.h"
24
24
#include " qgstolerance.h"
25
25
#include " qgsnetworkaccessmanager.h"
26
+ #include " qgsproject.h"
26
27
27
28
#include < QFileDialog>
28
29
#include < QSettings>
31
32
#include < QToolBar>
32
33
#include < QSize>
33
34
#include < QStyleFactory>
35
+ #include < QMessageBox>
34
36
35
37
#if QT_VERSION >= 0x40500
36
38
#include < QNetworkDiskCache>
@@ -410,7 +412,6 @@ QgsOptions::QgsOptions( QWidget *parent, Qt::WFlags fl ) :
410
412
chbAskToSaveProjectChanges->setChecked ( settings.value ( " qgis/askToSaveProjectChanges" , QVariant ( true ) ).toBool () );
411
413
chbWarnOldProjectVersion->setChecked ( settings.value ( " /qgis/warnOldProjectVersion" , QVariant ( true ) ).toBool () );
412
414
cbxNewProjectTemplate->setChecked ( settings.value ( " /qgis/newProjectTemplate" , QVariant ( false ) ).toBool () );
413
- leNewProjectTemplate->setText ( settings.value ( " /qgis/newProjectTemplateFile" , " " ).toString () );
414
415
415
416
cmbWheelAction->setCurrentIndex ( settings.value ( " /qgis/wheel_action" , 2 ).toInt () );
416
417
spinZoomFactor->setValue ( settings.value ( " /qgis/zoom_factor" , 2 ).toDouble () );
@@ -560,12 +561,7 @@ QgsOptions::~QgsOptions()
560
561
settings.setValue ( " /Windows/Options/row" , tabWidget->currentIndex () );
561
562
}
562
563
563
- void QgsOptions::on_cbxNewProjectTemplate_toggled ( bool checked )
564
- {
565
- pbtnNewProjectTemplate->setEnabled ( checked );
566
- leNewProjectTemplate->setEnabled ( checked );
567
- }
568
-
564
+ #if 0
569
565
void QgsOptions::on_pbtnNewProjectTemplate_pressed( )
570
566
{
571
567
QString lastUsedDir = QFileInfo( leNewProjectTemplate->text() ).canonicalFilePath();
@@ -584,6 +580,43 @@ void QgsOptions::on_pbtnNewProjectTemplate_pressed( )
584
580
leNewProjectTemplate->setText( fullPath );
585
581
}
586
582
}
583
+ #endif
584
+
585
+ void QgsOptions::on_cbxNewProjectTemplate_toggled ( bool checked )
586
+ {
587
+ if ( checked )
588
+ {
589
+ QString fileName = QgsApplication::qgisSettingsDirPath () + QString ( " default.qgs" );
590
+ if ( ! QFile::exists ( fileName ) )
591
+ {
592
+ QMessageBox::information ( 0 , tr ( " Save default project" ), tr ( " You must set a default project" ) );
593
+ cbxNewProjectTemplate->setChecked ( false );
594
+ }
595
+ }
596
+ }
597
+
598
+ void QgsOptions::on_pbnSetCurrentProjectDefault_clicked ( )
599
+ {
600
+ QString fileName = QgsApplication::qgisSettingsDirPath () + QString ( " default.qgs" );
601
+ if ( QgsProject::instance ()->write ( QFileInfo ( fileName ) ) )
602
+ {
603
+ QMessageBox::information ( 0 , tr ( " Save default project" ), tr ( " Current project saved as default" ) );
604
+ }
605
+ else
606
+ {
607
+ QMessageBox::critical ( 0 , tr ( " Save default project" ), tr ( " Error saving current project as default" ) );
608
+ }
609
+ }
610
+
611
+ void QgsOptions::on_pbnResetCurrentProjectDefault_clicked ( )
612
+ {
613
+ QString fileName = QgsApplication::qgisSettingsDirPath () + QString ( " default.qgs" );
614
+ if ( QFile::exists ( fileName ) )
615
+ {
616
+ QFile::remove ( fileName );
617
+ }
618
+ cbxNewProjectTemplate->setChecked ( false );
619
+ }
587
620
588
621
void QgsOptions::on_pbnSelectionColor_clicked ()
589
622
{
@@ -750,7 +783,6 @@ void QgsOptions::saveOptions()
750
783
settings.setValue ( " /qgis/askToSaveProjectChanges" , chbAskToSaveProjectChanges->isChecked () );
751
784
settings.setValue ( " /qgis/warnOldProjectVersion" , chbWarnOldProjectVersion->isChecked () );
752
785
settings.setValue ( " /qgis/newProjectTemplate" , cbxNewProjectTemplate->isChecked () );
753
- settings.setValue ( " /qgis/newProjectTemplateFile" , leNewProjectTemplate->text ().trimmed () );
754
786
settings.setValue ( " /qgis/nullValue" , leNullValue->text () );
755
787
settings.setValue ( " /qgis/style" , cmbStyle->currentText () );
756
788
0 commit comments