Skip to content
Permalink
Browse files
Use enum properly for qgsmaplayer type and refactored 'LAYERS' to Lay…
…erType

git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@9483 c8812cc2-4d05-0410-92ff-de0c093fc19c
  • Loading branch information
timlinux committed Oct 16, 2008
1 parent 1e68db9 commit fe20dc8b1ee01cd5bde7da42cf760ad165ae8e79
@@ -798,7 +798,7 @@ All that remains to do now is sort out syncronisation of layer ordering between
conventions (prefixed with m).


** Import Note *** ONLY THE MAPLAYER REGISTRY SHOULD DELETE LAYERS NOW ***
** Import Note *** ONLY THE MAPLAYER REGISTRY SHOULD DELETE QgsMapLayer::LayerType NOW ***

2004-06-03 [ts] 0.3.0devel14
** Added getPaletteAsPixmap function to raster and display on raster props
@@ -11,11 +11,11 @@ class QgsMapLayer // TODO: problem when derived from QObject

%ConvertToSubClassCode

if (sipCpp->type() == QgsMapLayer::VECTOR)
if (sipCpp->type() == QgsMapLayer::VectorLayer)
{
sipClass = sipClass_QgsVectorLayer;
}
else if (sipCpp->type() == QgsMapLayer::RASTER)
else if (sipCpp->type() == QgsMapLayer::RasterLayer)
{
sipClass = sipClass_QgsRasterLayer;
}
@@ -27,20 +27,26 @@ class QgsMapLayer // TODO: problem when derived from QObject
%End

public:
/** Layers enum defining the types of layers that can be added to a map */
enum LayerType
{
VectorLayer,
RasterLayer
};

/** Constructor
* @param type Type of layer as defined in LAYERS enum
* @param type Type of layer as defined in QgsMapLayer::LayerType enum
* @param lyrname Display Name of the layer
*/
QgsMapLayer(int type = 0, QString lyrname = QString::null, QString source = QString::null);
QgsMapLayer(QgsMapLayer::LayerType type = QgsMapLayer::VectorLayer, QString lyrname = QString::null, QString source = QString::null);

/** Destructor */
virtual ~QgsMapLayer();

/** Get the type of the layer
* @return Integer matching a value in the LAYERS enum
* @return Integer matching a value in the QgsMapLayer::LayerType enum
*/
int type() const;
QgsMapLayer::LayerType type() const;

/** Get this layer's unique ID, this ID is used to access this layer from map layer registry */
QString getLayerID() const;
@@ -97,12 +103,6 @@ public:
/** Set the visibility of the given sublayer name */
virtual void setSubLayerVisibility(QString name, bool vis);

/** Layers enum defining the types of layers that can be added to a map */
enum LAYERS
{
VECTOR,
RASTER
};

/** True if the layer can be edited */
virtual bool isEditable() const = 0;
@@ -678,7 +678,7 @@ void QgsLegend::legendLayerShowProperties()
a separate copy of the dialog pointer needs to be stored with each layer.
*/

if ( ml->type() == QgsMapLayer::RASTER )
if ( ml->type() == QgsMapLayer::RasterLayer )
{
QgsRasterLayerProperties *rlp = NULL; // See note above about reusing this
if ( rlp )
@@ -268,7 +268,7 @@ void QgsLegendLayer::refreshSymbology( const QString& key, double widthScale )
return;
}

if ( theMapLayer->type() == QgsMapLayer::VECTOR ) // VECTOR
if ( theMapLayer->type() == QgsMapLayer::VectorLayer ) // VECTOR
{
QgsVectorLayer* vlayer = dynamic_cast<QgsVectorLayer*>( theMapLayer );
vectorLayerSymbology( vlayer, widthScale ); // get and change symbology
@@ -436,7 +436,7 @@ QPixmap QgsLegendLayer::getOriginalPixmap() const
QgsMapLayer* firstLayer = firstMapLayer();
if ( firstLayer )
{
if ( firstLayer->type() == QgsMapLayer::VECTOR )
if ( firstLayer->type() == QgsMapLayer::VectorLayer )
{
QgsVectorLayer* vlayer = dynamic_cast<QgsVectorLayer*>( firstLayer );
switch ( vlayer->type() )
@@ -454,7 +454,7 @@ QPixmap QgsLegendLayer::getOriginalPixmap() const
return QgisApp::getThemePixmap( "/mIconLayer.png" );
}
}
else if ( firstLayer->type() == QgsMapLayer::RASTER )
else if ( firstLayer->type() == QgsMapLayer::RasterLayer )
{
QgsRasterLayer* rlayer = dynamic_cast<QgsRasterLayer*>( firstLayer );
QPixmap myPixmap( 32, 32 );
@@ -479,7 +479,7 @@ void QgsLegendLayer::addToPopupMenu( QMenu& theMenu, QAction* toggleEditingActio
// zoom to layer extent
theMenu.addAction( QgisApp::getThemeIcon( "/mActionZoomToLayer.png" ),
tr( "&Zoom to layer extent" ), legend(), SLOT( legendLayerZoom() ) );
if ( firstLayer && firstLayer->type() == QgsMapLayer::RASTER )
if ( firstLayer && firstLayer->type() == QgsMapLayer::RasterLayer )
{
theMenu.addAction( tr( "&Zoom to best scale (100%)" ), legend(), SLOT( legendLayerZoomNative() ) );
}
@@ -495,7 +495,7 @@ void QgsLegendLayer::addToPopupMenu( QMenu& theMenu, QAction* toggleEditingActio

theMenu.addSeparator();

if ( firstLayer && firstLayer->type() == QgsMapLayer::VECTOR )
if ( firstLayer && firstLayer->type() == QgsMapLayer::VectorLayer )
{
// attribute table
QAction* tableAction = theMenu.addAction( tr( "&Open attribute table" ), this, SLOT( table() ) );
@@ -229,7 +229,7 @@ void QgsLegendLayerFile::saveAsShapefileGeneral( bool saveOnlySelection )
{
QgsCoordinateReferenceSystem destCRS;

if ( mLyr.layer()->type() != QgsMapLayer::VECTOR )
if ( mLyr.layer()->type() != QgsMapLayer::VectorLayer )
return;

QgsVectorLayer* vlayer = dynamic_cast<QgsVectorLayer*>( mLyr.layer() );
@@ -374,7 +374,7 @@ void QgsLegendLayerFile::addToPopupMenu( QMenu& theMenu, QAction* toggleEditingA

theMenu.addSeparator();

if ( lyr->type() == QgsMapLayer::VECTOR )
if ( lyr->type() == QgsMapLayer::VectorLayer )
{
QgsVectorLayer* vlayer = dynamic_cast<QgsVectorLayer*>( lyr );

@@ -403,7 +403,7 @@ void QgsLegendLayerFile::addToPopupMenu( QMenu& theMenu, QAction* toggleEditingA

theMenu.addSeparator();
}
else if ( lyr->type() == QgsMapLayer::RASTER )
else if ( lyr->type() == QgsMapLayer::RasterLayer )
{
// TODO: what was this for?
//QgsRasterLayer* rlayer = dynamic_cast<QgsRasterLayer*>(lyr);
@@ -2971,7 +2971,7 @@ void QgisApp::fileOpen()
QMessageBox::critical( this,
tr( "QGIS Project Read Error" ),
tr( "" ) + "\n" + QString::fromLocal8Bit( e.what() ) );
QgsDebugMsg( "BAD LAYERS FOUND" );
QgsDebugMsg( "BAD QgsMapLayer::LayerType FOUND" );
}

mMapCanvas->freeze( false );
@@ -3040,7 +3040,7 @@ bool QgisApp::addProject( QString projectFile )
}
catch ( std::exception & e )
{
QgsDebugMsg( "BAD LAYERS FOUND" );
QgsDebugMsg( "BAD QgsMapLayer::LayerType FOUND" );

QMessageBox::critical( this,
tr( "Unable to open project" ), QString::fromLocal8Bit( e.what() ) );
@@ -4943,7 +4943,7 @@ void QgisApp::showMapTip()
{
//QgsDebugMsg("Current layer for maptip display is: " + mypLayer->source());
// only process vector layers
if ( mypLayer->type() == QgsMapLayer::VECTOR )
if ( mypLayer->type() == QgsMapLayer::VectorLayer )
{
// Show the maptip if the maptips button is depressed
if ( mMapTipsVisible )
@@ -5054,7 +5054,7 @@ void QgisApp::activateDeactivateLayerRelatedActions( QgsMapLayer* layer )
mActionAddToOverview->setEnabled( true );

/***********Vector layers****************/
if ( layer->type() == QgsMapLayer::VECTOR )
if ( layer->type() == QgsMapLayer::VectorLayer )
{
mActionSelect->setEnabled( true );
mActionIdentify->setEnabled( true );
@@ -5198,7 +5198,7 @@ void QgisApp::activateDeactivateLayerRelatedActions( QgsMapLayer* layer )
}
}
/*************Raster layers*************/
else if ( layer->type() == QgsMapLayer::RASTER )
else if ( layer->type() == QgsMapLayer::RasterLayer )
{
mActionSelect->setEnabled( false );
mActionZoomActualSize->setEnabled( true );
@@ -205,7 +205,7 @@ void QgsMapserverExport::writeMapFile()
// feature type
QgsDebugMsg( "\tMapsrver Export checking feature type" );
mapFile << " TYPE ";
if ( lyr->type() == QgsMapLayer::VECTOR )
if ( lyr->type() == QgsMapLayer::VectorLayer )
{
QgsVectorLayer* vlayer = dynamic_cast<QgsVectorLayer*>( lyr );
switch ( vlayer->geometryType() )
@@ -227,7 +227,7 @@ void QgsMapserverExport::writeMapFile()

}
}
if ( lyr->type() == QgsMapLayer::RASTER )
if ( lyr->type() == QgsMapLayer::RasterLayer )
{
mapFile << "RASTER";
}
@@ -252,7 +252,7 @@ void QgsMapserverExport::writeMapFile()
QgsDebugMsg( "\tMapsrver Export checking layer type" );
switch ( lyr->type() )
{
case QgsMapLayer::VECTOR:
case QgsMapLayer::VectorLayer:
// get the provider type
{
QgsVectorLayer* vlyr = dynamic_cast<QgsVectorLayer*>( lyr );
@@ -286,7 +286,7 @@ void QgsMapserverExport::writeMapFile()
}
}
break;
case QgsMapLayer::RASTER:
case QgsMapLayer::RasterLayer:
mapFile << " DATA " << lyr->source().toLocal8Bit().data() << std::endl;

break;
@@ -87,7 +87,7 @@ void QgsMapToolIdentify::canvasReleaseEvent( QMouseEvent * e )
// coordinates are sent back to the server as pixel coordinates
// not the layer's native CRS. So identify on screen coordinates!
if (
( mLayer->type() == QgsMapLayer::RASTER )
( mLayer->type() == QgsMapLayer::RasterLayer )
&&
( dynamic_cast<QgsRasterLayer*>( mLayer )->providerKey() == "wms" )
)
@@ -99,11 +99,11 @@ void QgsMapToolIdentify::canvasReleaseEvent( QMouseEvent * e )
// convert screen coordinates to map coordinates
QgsPoint idPoint = mCanvas->getCoordinateTransform()->toMapCoordinates( e->x(), e->y() );

if ( mLayer->type() == QgsMapLayer::VECTOR )
if ( mLayer->type() == QgsMapLayer::VectorLayer )
{
identifyVectorLayer( idPoint );
}
else if ( mLayer->type() == QgsMapLayer::RASTER )
else if ( mLayer->type() == QgsMapLayer::RasterLayer )
{
identifyRasterLayer( idPoint );
}
@@ -66,10 +66,10 @@ void QgsLegendModel::setLayerSet( const QStringList& layerIds )

switch ( currentLayer->type() )
{
case QgsMapLayer::VECTOR:
case QgsMapLayer::VectorLayer:
addVectorLayerItems( layerItem, currentLayer );
break;
case QgsMapLayer::RASTER:
case QgsMapLayer::RasterLayer:
addRasterLayerItem( layerItem, currentLayer );
break;
default:
@@ -246,10 +246,10 @@ void QgsLegendModel::updateLayer( QStandardItem* layerItem )
//and add the new ones...
switch ( mapLayer->type() )
{
case QgsMapLayer::VECTOR:
case QgsMapLayer::VectorLayer:
addVectorLayerItems( layerItem, mapLayer );
break;
case QgsMapLayer::RASTER:
case QgsMapLayer::RasterLayer:
addRasterLayerItem( layerItem, mapLayer );
break;
default:
@@ -408,10 +408,10 @@ void QgsLegendModel::addLayer( QgsMapLayer* theMapLayer )
//and child items of layer
switch ( theMapLayer->type() )
{
case QgsMapLayer::VECTOR:
case QgsMapLayer::VectorLayer:
addVectorLayerItems( layerItem, theMapLayer );
break;
case QgsMapLayer::RASTER:
case QgsMapLayer::RasterLayer:
addRasterLayerItem( layerItem, theMapLayer );
break;
default:
@@ -40,7 +40,7 @@
#include "qgsproject.h"
#include "qgslogger.h"

QgsMapLayer::QgsMapLayer( int type,
QgsMapLayer::QgsMapLayer( QgsMapLayer::LayerType type,
QString lyrname,
QString source ) :
mTransparencyLevel( 255 ), // 0 is completely transparent
@@ -82,7 +82,7 @@ QgsMapLayer::~QgsMapLayer()
delete mCRS;
}

int QgsMapLayer::type() const
QgsMapLayer::LayerType QgsMapLayer::type() const
{
return mLayerType;
}
@@ -43,20 +43,26 @@ class CORE_EXPORT QgsMapLayer : public QObject
Q_OBJECT

public:
/** Layers enum defining the types of layers that can be added to a map */
enum LayerType
{
VectorLayer,
RasterLayer
};

/** Constructor
* @param type Type of layer as defined in LAYERS enum
* @param type Type of layer as defined in QgsMapLayer::LayerType enum
* @param lyrname Display Name of the layer
*/
QgsMapLayer( int type = 0, QString lyrname = QString::null, QString source = QString::null );
QgsMapLayer( QgsMapLayer::LayerType type = VectorLayer, QString lyrname = QString::null, QString source = QString::null );

/** Destructor */
virtual ~QgsMapLayer();

/** Get the type of the layer
* @return Integer matching a value in the LAYERS enum
* @return Integer matching a value in the QgsMapLayer::LayerType enum
*/
int type() const;
QgsMapLayer::LayerType type() const;

/** Get this layer's unique ID, this ID is used to access this layer from map layer registry */
QString getLayerID() const;
@@ -111,12 +117,6 @@ class CORE_EXPORT QgsMapLayer : public QObject
/** Set the visibility of the given sublayer name */
virtual void setSubLayerVisibility( QString name, bool vis );

/** Layers enum defining the types of layers that can be added to a map */
enum LAYERS
{
VECTOR,
RASTER
};

/** True if the layer can be edited */
virtual bool isEditable() const = 0;
@@ -344,7 +344,7 @@ class CORE_EXPORT QgsMapLayer : public QObject
QString mID;

/** Type of the layer (eg. vector, raster) */
int mLayerType;
QgsMapLayer::LayerType mLayerType;

/** Tag for embedding additional information */
QString mTag;
@@ -321,7 +321,7 @@ void QgsMapRenderer::render( QPainter* painter )
QgsMapToPixel rasterMapToPixel;
QgsMapToPixel bk_mapToPixel;

if ( ml->type() == QgsMapLayer::RASTER && fabs( rasterScaleFactor - 1.0 ) > 0.000001 )
if ( ml->type() == QgsMapLayer::RasterLayer && fabs( rasterScaleFactor - 1.0 ) > 0.000001 )
{
scaleRaster = true;
}
@@ -386,7 +386,7 @@ void QgsMapRenderer::render( QPainter* painter )
// TODO: emit drawingProgress((myRenderCounter++),zOrder.size());
QgsMapLayer *ml = QgsMapLayerRegistry::instance()->mapLayer( layerId );

if ( ml && ( ml->type() != QgsMapLayer::RASTER ) )
if ( ml && ( ml->type() != QgsMapLayer::RasterLayer ) )
{
// only make labels if the layer is visible
// after scale dep viewing settings are checked
@@ -89,7 +89,7 @@ QgsVectorLayer::QgsVectorLayer( QString vectorLayerPath,
QString baseName,
QString providerKey,
bool loadDefaultStyleFlag )
: QgsMapLayer( VECTOR, baseName, vectorLayerPath ),
: QgsMapLayer( VectorLayer, baseName, vectorLayerPath ),
mUpdateThreshold( 0 ), // XXX better default value?
mDataProvider( NULL ),
mProviderKey( providerKey ),
Loading

0 comments on commit fe20dc8

Please sign in to comment.