|
51 | 51 | #include "qgsexpressioncontext.h" |
52 | 52 | #include "qgsmapoverviewcanvas.h" |
53 | 53 |
|
| 54 | +#include "qgsmessagelog.h" |
| 55 | + |
54 | 56 | //qt includes |
55 | 57 | #include <QInputDialog> |
56 | 58 | #include <QFileDialog> |
@@ -270,10 +272,66 @@ QgsProjectProperties::QgsProjectProperties( QgsMapCanvas* mapCanvas, QWidget *pa |
270 | 272 | mWMSAbstract->setPlainText( QgsProject::instance()->readEntry( "WMSServiceAbstract", "/", "" ) ); |
271 | 273 | mWMSOnlineResourceLineEdit->setText( QgsProject::instance()->readEntry( "WMSOnlineResource", "/", "" ) ); |
272 | 274 | mWMSUrlLineEdit->setText( QgsProject::instance()->readEntry( "WMSUrl", "/", "" ) ); |
273 | | - mWMSFees->setText( QgsProject::instance()->readEntry( "WMSFees", "/", "" ) ); |
274 | | - mWMSAccessConstraints->setText( QgsProject::instance()->readEntry( "WMSAccessConstraints", "/", "" ) ); |
275 | 275 | mWMSKeywordList->setText( QgsProject::instance()->readListEntry( "WMSKeywordList", "/" ).join( ", " ) ); |
276 | 276 |
|
| 277 | + // WMS Contact Position |
| 278 | + QString contactPositionText = QgsProject::instance()->readEntry( "WMSContactPosition", "/", "" ); |
| 279 | + mWMSContactPositionCb->addItem( "" ); |
| 280 | + mWMSContactPositionCb->addItem( tr( "Custodian" ), "custodian" ); |
| 281 | + mWMSContactPositionCb->addItem( tr( "Owner" ), "owner" ); |
| 282 | + mWMSContactPositionCb->addItem( tr( "User" ), "user" ); |
| 283 | + mWMSContactPositionCb->addItem( tr( "Distributor" ), "distributor" ); |
| 284 | + mWMSContactPositionCb->addItem( tr( "Originator" ), "originator" ); |
| 285 | + mWMSContactPositionCb->addItem( tr( "Point of contact" ), "pointOfContact" ); |
| 286 | + mWMSContactPositionCb->addItem( tr( "Principal investigator" ), "principalInvestigator" ); |
| 287 | + mWMSContactPositionCb->addItem( tr( "Processor" ), "processor" ); |
| 288 | + mWMSContactPositionCb->addItem( tr( "Publisher" ), "publisher" ); |
| 289 | + mWMSContactPositionCb->addItem( tr( "Author" ), "author" ); |
| 290 | + int contactPositionIndex = mWMSContactPositionCb->findData( contactPositionText ); |
| 291 | + if ( contactPositionIndex > 0 ) |
| 292 | + { |
| 293 | + mWMSContactPositionCb->setCurrentIndex( contactPositionIndex ); |
| 294 | + } |
| 295 | + else if ( contactPositionText != "" ) |
| 296 | + { |
| 297 | + mWMSContactPositionCb->setEditText( contactPositionText ); |
| 298 | + } |
| 299 | + |
| 300 | + // WMS Fees |
| 301 | + QString feesText = QgsProject::instance()->readEntry( "WMSFees", "/", "" ); |
| 302 | + mWMSFeesCb->addItem( tr( "Conditions unknown" ), "conditions unknown" ); |
| 303 | + mWMSFeesCb->addItem( tr( "No conditions apply" ), "no conditions apply" ); |
| 304 | + int feesIndex = mWMSFeesCb->findData( feesText ); |
| 305 | + if ( feesIndex > -1 ) |
| 306 | + { |
| 307 | + mWMSFeesCb->setCurrentIndex( feesIndex ); |
| 308 | + } |
| 309 | + else if ( feesText != "" ) |
| 310 | + { |
| 311 | + mWMSFeesCb->setEditText( feesText ); |
| 312 | + } |
| 313 | + |
| 314 | + // WMS Access Constraints |
| 315 | + QString accessConstraintsText = QgsProject::instance()->readEntry( "WMSAccessConstraints", "/", "" ); |
| 316 | + mWMSAccessConstraintsCb->addItem( tr( "None" ), "None" ); |
| 317 | + mWMSAccessConstraintsCb->addItem( tr( "Copyright" ), "copyright" ); |
| 318 | + mWMSAccessConstraintsCb->addItem( tr( "Patent" ), "patent" ); |
| 319 | + mWMSAccessConstraintsCb->addItem( tr( "Patent pending" ), "patentPending" ); |
| 320 | + mWMSAccessConstraintsCb->addItem( tr( "Trademark" ), "trademark" ); |
| 321 | + mWMSAccessConstraintsCb->addItem( tr( "License" ), "license" ); |
| 322 | + mWMSAccessConstraintsCb->addItem( tr( "Intellectual property rights" ), "intellectualPropertyRights" ); |
| 323 | + mWMSAccessConstraintsCb->addItem( tr( "Restricted" ), "restricted" ); |
| 324 | + mWMSAccessConstraintsCb->addItem( tr( "Other restrictions" ), "otherRestrictions" ); |
| 325 | + int accessConstraintsIndex = mWMSAccessConstraintsCb->findData( accessConstraintsText ); |
| 326 | + if ( accessConstraintsIndex > -1 ) |
| 327 | + { |
| 328 | + mWMSAccessConstraintsCb->setCurrentIndex( accessConstraintsIndex ); |
| 329 | + } |
| 330 | + else if ( accessConstraintsText != "" ) |
| 331 | + { |
| 332 | + mWMSAccessConstraintsCb->setEditText( accessConstraintsText ); |
| 333 | + } |
| 334 | + |
277 | 335 | // WMS GetFeatureInfo precision |
278 | 336 | int WMSprecision = QgsProject::instance()->readNumEntry( "WMSPrecision", "/", -1 ); |
279 | 337 | if ( WMSprecision != -1 ) |
@@ -737,8 +795,43 @@ void QgsProjectProperties::apply() |
737 | 795 | QgsProject::instance()->writeEntry( "WMSServiceAbstract", "/", mWMSAbstract->toPlainText() ); |
738 | 796 | QgsProject::instance()->writeEntry( "WMSOnlineResource", "/", mWMSOnlineResourceLineEdit->text() ); |
739 | 797 | QgsProject::instance()->writeEntry( "WMSUrl", "/", mWMSUrlLineEdit->text() ); |
740 | | - QgsProject::instance()->writeEntry( "WMSFees", "/", mWMSFees->text() ); |
741 | | - QgsProject::instance()->writeEntry( "WMSAccessConstraints", "/", mWMSAccessConstraints->text() ); |
| 798 | + |
| 799 | + // WMS Contact Position |
| 800 | + int contactPositionIndex = mWMSContactPositionCb->currentIndex(); |
| 801 | + QString contactPositionText = mWMSContactPositionCb->currentText(); |
| 802 | + if ( contactPositionText != "" && contactPositionText == mWMSContactPositionCb->itemText( contactPositionIndex ) ) |
| 803 | + { |
| 804 | + QgsProject::instance()->writeEntry( "WMSContactPosition", "/", mWMSContactPositionCb->itemData( contactPositionIndex ).toString() ); |
| 805 | + } |
| 806 | + else |
| 807 | + { |
| 808 | + QgsProject::instance()->writeEntry( "WMSContactPosition", "/", contactPositionText ); |
| 809 | + } |
| 810 | + |
| 811 | + // WMS Fees |
| 812 | + int feesIndex = mWMSFeesCb->currentIndex(); |
| 813 | + QString feesText = mWMSFeesCb->currentText(); |
| 814 | + if ( feesText != "" && feesText == mWMSFeesCb->itemText( feesIndex ) ) |
| 815 | + { |
| 816 | + QgsProject::instance()->writeEntry( "WMSFees", "/", mWMSFeesCb->itemData( feesIndex ).toString() ); |
| 817 | + } |
| 818 | + else |
| 819 | + { |
| 820 | + QgsProject::instance()->writeEntry( "WMSFees", "/", feesText ); |
| 821 | + } |
| 822 | + |
| 823 | + // WMS Access Constraints |
| 824 | + int accessConstraintsIndex = mWMSAccessConstraintsCb->currentIndex(); |
| 825 | + QString accessConstraintsText = mWMSAccessConstraintsCb->currentText(); |
| 826 | + if ( accessConstraintsText != "" && accessConstraintsText == mWMSAccessConstraintsCb->itemText( accessConstraintsIndex ) ) |
| 827 | + { |
| 828 | + QgsProject::instance()->writeEntry( "WMSAccessConstraints", "/", mWMSAccessConstraintsCb->itemData( accessConstraintsIndex ).toString() ); |
| 829 | + } |
| 830 | + else |
| 831 | + { |
| 832 | + QgsProject::instance()->writeEntry( "WMSAccessConstraints", "/", accessConstraintsText ); |
| 833 | + } |
| 834 | + |
742 | 835 | //WMS keyword list |
743 | 836 | QStringList keywordStringList = mWMSKeywordList->text().split( ',' ); |
744 | 837 | if ( keywordStringList.size() > 0 ) |
|
0 commit comments