void QgsGrassPlugin::mapsetChanged() { if ( !QgsGrass::activeMode() ) { mOpenToolsAction->setEnabled( false ); mRegionAction->setEnabled( false ); mEditRegionAction->setEnabled( false ); mRegionBand->reset(); mCloseMapsetAction->setEnabled( false ); mNewVectorAction->setEnabled( false ); if ( mTools ) { mTools->hide(); delete mTools; mTools = 0; } } else { mOpenToolsAction->setEnabled( true ); mRegionAction->setEnabled( true ); mEditRegionAction->setEnabled( true ); mCloseMapsetAction->setEnabled( true ); mNewVectorAction->setEnabled( true ); QSettings settings; bool on = settings.value( "/GRASS/region/on", true ).toBool(); mRegionAction->setChecked( on ); switchRegion( on ); if ( mTools ) { mTools->mapsetChanged(); } QString gisdbase = QgsGrass::getDefaultGisdbase(); QString location = QgsGrass::getDefaultLocation(); try { mCrs = QgsGrass::crsDirect( gisdbase, location ); } catch ( QgsGrass::Exception &e ) { Q_UNUSED( e ); QgsDebugMsg( "Cannot read GRASS CRS : " + QString( e.what() ) ); mCrs = QgsCoordinateReferenceSystem(); } QgsDebugMsg( "mCrs: " + mCrs.toWkt() ); setTransform(); redrawRegion(); } }
void QgsGrassPlugin::mapsetChanged() { if ( !QgsGrass::activeMode() ) { mOpenToolsAction->setEnabled( false ); mRegionAction->setEnabled( false ); mEditRegionAction->setEnabled( false ); mRegionBand->reset(); mCloseMapsetAction->setEnabled( false ); mNewVectorAction->setEnabled( false ); if ( mTools ) { mTools->hide(); delete mTools; mTools = 0; } } else { mOpenToolsAction->setEnabled( true ); mRegionAction->setEnabled( true ); mEditRegionAction->setEnabled( true ); mCloseMapsetAction->setEnabled( true ); mNewVectorAction->setEnabled( true ); QSettings settings; bool on = settings.value( "/GRASS/region/on", true ).toBool(); mRegionAction->setChecked( on ); switchRegion( on ); if ( mTools ) { mTools->mapsetChanged(); } } }