Skip to content
Permalink
Browse files

merge from trunk r11750:11800

git-svn-id: http://svn.osgeo.org/qgis/branches/symbology-ng-branch@11899 c8812cc2-4d05-0410-92ff-de0c093fc19c
  • Loading branch information
wonder
wonder committed Nov 2, 2009
1 parent 26b12b6 commit daf2b0f70350fac77f60578dfaf46d1e93cc7820
Showing with 5,993 additions and 4,314 deletions.
  1. +2,313 −1,344 i18n/qgis_de.ts
  2. +30 −30 mac/xcode/Qgis.xcodeproj/project.pbxproj
  3. +1 −1 python/core/qgsdataprovider.sip
  4. +2 −1 python/core/qgsvectordataprovider.sip
  5. +2 −1 python/core/qgsvectorlayer.sip
  6. +3 −2 python/plugins/fTools/tools/doIntersectLines.py
  7. +1 −1 python/plugins/plugin_installer/LICENSE
  8. +1 −1 python/plugins/plugin_installer/__init__.py
  9. +6 −2 python/plugins/plugin_installer/installer_data.py
  10. +6 −2 python/plugins/plugin_installer/installer_gui.py
  11. +1 −1 python/plugins/plugin_installer/installer_plugin.py
  12. +9 −4 qgis.1
  13. +2 −2 src/analysis/interpolation/qgsgridfilewriter.cpp
  14. +3 −1 src/analysis/vector/qgsgeometryanalyzer.cpp
  15. +6 −7 src/app/CMakeLists.txt
  16. +4 −4 src/app/attributetable/qgsattributetabledelegate.cpp
  17. +1 −1 src/app/attributetable/qgsattributetabledelegate.h
  18. +1 −1 src/app/attributetable/qgsattributetabledialog.cpp
  19. +0 −3 src/app/attributetable/qgsattributetabledialog.h
  20. +4 −4 src/app/attributetable/qgsattributetablefiltermodel.h
  21. +6 −96 src/app/attributetable/qgsattributetablememorymodel.cpp
  22. +5 −27 src/app/attributetable/qgsattributetablememorymodel.h
  23. +14 −3 src/app/attributetable/qgsattributetablemodel.cpp
  24. +10 −3 src/app/attributetable/qgsattributetablemodel.h
  25. +12 −37 src/app/composer/qgscomposer.cpp
  26. +1 −6 src/app/composer/qgscomposer.h
  27. +1 −1 src/app/composer/qgscomposeritemwidget.cpp
  28. +5 −5 src/app/composer/qgscomposerlegendwidget.cpp
  29. +311 −3 src/app/composer/qgscomposermapwidget.cpp
  30. +17 −0 src/app/composer/qgscomposermapwidget.h
  31. +1 −1 src/app/composer/qgscomposerpicturewidget.cpp
  32. +70 −70 src/app/legend/qgslegend.cpp
  33. +1 −1 src/app/legend/qgslegendgroup.cpp
  34. +7 −7 src/app/legend/qgslegenditem.cpp
  35. +10 −10 src/app/legend/qgslegendlayer.cpp
  36. +6 −6 src/app/legend/qgslegendlayerfile.cpp
  37. +6 −6 src/app/legend/qgslegendlayerfilegroup.cpp
  38. +0 −10 src/app/main.cpp
  39. +1 −1 src/app/ogr/qgsnewogrconnection.cpp
  40. +8 −22 src/app/ogr/qgsopenvectorlayerdialog.cpp
  41. +53 −119 src/app/qgisapp.cpp
  42. +12 −12 src/app/qgsattributeeditor.cpp
  43. +3 −3 src/app/qgsattributetypeloaddialog.cpp
  44. +2 −2 src/app/qgscontinuouscolordialog.cpp
  45. +15 −16 src/app/qgsdbtablemodel.cpp
  46. +1 −1 src/app/qgsdbtablemodel.h
  47. +53 −29 src/app/qgsfieldcalculator.cpp
  48. +4 −1 src/app/qgsfieldcalculator.h
  49. +1 −1 src/app/qgsgraduatedsymboldialog.cpp
  50. +12 −12 src/app/qgsidentifyresults.cpp
  51. +2 −2 src/app/qgsmapserverexport.cpp
  52. +5 −5 src/app/qgsmaptooladdfeature.cpp
  53. +1 −1 src/app/qgsmaptooladdisland.cpp
  54. +1 −1 src/app/qgsmaptooladdring.cpp
  55. +1 −1 src/app/qgsmaptooladdvertex.cpp
  56. +1 −1 src/app/qgsmaptoolcapture.cpp
  57. +1 −1 src/app/qgsmaptooldeletepart.cpp
  58. +1 −1 src/app/qgsmaptooldeletering.cpp
  59. +1 −1 src/app/qgsmaptooldeletevertex.cpp
  60. +1 −1 src/app/qgsmaptooledit.cpp
  61. +2 −2 src/app/qgsmaptoolidentify.cpp
  62. +2 −2 src/app/qgsmaptoolmovevertex.cpp
  63. +8 −8 src/app/qgsmaptoolnodetool.cpp
  64. +13 −13 src/app/qgsmaptoolreshape.cpp
  65. +1 −1 src/app/qgsmaptoolrotatepointsymbols.cpp
  66. +2 −2 src/app/qgsmaptoolselect.cpp
  67. +1 −1 src/app/qgsmaptoolsplitfeatures.cpp
  68. +4 −4 src/app/qgsmergeattributesdialog.cpp
  69. +0 −476 src/app/qgspgquerybuilder.cpp
  70. +104 −147 src/app/{qgsdbsourceselect.cpp → qgspgsourceselect.cpp}
  71. +45 −26 src/app/{qgsdbsourceselect.h → qgspgsourceselect.h}
  72. +4 −4 src/app/qgsprojectproperties.cpp
  73. +303 −0 src/app/qgsquerybuilder.cpp
  74. +23 −41 src/app/{qgspgquerybuilder.h → qgsquerybuilder.h}
  75. +3 −3 src/app/qgsrasterlayerproperties.cpp
  76. +2 −2 src/app/qgssearchquerybuilder.h
  77. +1 −1 src/app/qgssinglesymboldialog.cpp
  78. +1 −1 src/app/qgssnappingdialog.cpp
  79. +9 −28 src/app/qgsspatialitesourceselect.cpp
  80. +1 −1 src/app/qgsspatialitesourceselect.h
  81. +2 −2 src/app/qgsundowidget.cpp
  82. +1 −1 src/app/qgsuniquevaluedialog.cpp
  83. +77 −158 src/app/qgsvectorlayerproperties.cpp
  84. +40 −40 src/app/{qgsserversourceselect.cpp → qgswmssourceselect.cpp}
  85. +7 −7 src/app/{qgsserversourceselect.h → qgswmssourceselect.h}
  86. +4 −4 src/core/composer/qgscomposeritem.cpp
  87. +1 −1 src/core/composer/qgscomposeritem.h
  88. +410 −7 src/core/composer/qgscomposermap.cpp
  89. +112 −0 src/core/composer/qgscomposermap.h
  90. +4 −4 src/core/composer/qgscomposition.cpp
  91. +6 −6 src/core/composer/qgslegendmodel.cpp
  92. +3 −6 src/core/qgsdataprovider.h
  93. +32 −12 src/core/qgsdatasourceuri.cpp
  94. +1 −0 src/core/qgsdatasourceuri.h
  95. +1 −1 src/core/qgsmaplayer.cpp
  96. +1 −1 src/core/qgsmaprenderer.cpp
  97. +1 −1 src/core/qgsrunprocess.cpp
  98. +4 −1 src/core/qgsvectordataprovider.cpp
  99. +3 −3 src/core/qgsvectordataprovider.h
  100. +8 −5 src/core/qgsvectorlayer.cpp
  101. +2 −1 src/core/qgsvectorlayer.h
  102. +4 −4 src/core/raster/qgsrasterlayer.cpp
  103. +2 −2 src/core/symbology/qgssymbol.cpp
  104. +8 −8 src/gui/qgscomposerview.cpp
  105. +5 −9 src/gui/qgsmapcanvas.cpp
  106. +3 −3 src/gui/qgsmapcanvassnapper.cpp
  107. +2 −2 src/gui/qgsmaptip.cpp
  108. +3 −3 src/gui/qgsquickprint.cpp
  109. +7 −11 src/plugins/CMakeLists.txt
  110. +91 −212 src/plugins/copyright_label/pluginguibase.ui
  111. +241 −358 src/plugins/delimited_text/qgsdelimitedtextpluginguibase.ui
  112. +9 −9 src/plugins/diagram_overlay/qgsdiagramdialog.cpp
  113. +1 −1 src/plugins/diagram_overlay/qgsdiagramoverlayplugin.cpp
  114. +1 −1 src/plugins/diagram_overlay/qgslinearlyscalingdialog.cpp
  115. +1 −1 src/plugins/diagram_overlay/qgssvgdiagramfactorywidget.cpp
  116. +1 −1 src/plugins/diagram_overlay/qgswkndiagramfactorywidget.cpp
  117. +1 −1 src/plugins/geoprocessing/qgspggeoprocessing.cpp
  118. +1 −1 src/plugins/gps_importer/qgsgpsplugin.cpp
  119. +1 −1 src/plugins/grass/modules-common/v.perturb.qgm
  120. +29 −27 src/plugins/grass/qgsgrassmapcalc.cpp
  121. +78 −72 src/plugins/grass/qgsgrassmodule.cpp
  122. +2 −2 src/plugins/grass/qgsgrasstools.cpp
  123. +3 −3 src/plugins/interpolation/qgsinterpolationdialog.cpp
  124. +0 −2 src/plugins/north_arrow/plugingui.cpp
  125. +126 −216 src/plugins/north_arrow/pluginguibase.ui
  126. +1 −1 src/plugins/raster_terrain_analysis/qgsrasterterrainanalysisdialog.cpp
  127. +3 −2 src/plugins/spit/qgsspit.cpp
  128. +1 −1 src/plugins/spit/qgsspitbase.ui
  129. +165 −72 src/providers/ogr/qgsogrprovider.cpp
  130. +20 −1 src/providers/ogr/qgsogrprovider.h
  131. +75 −45 src/providers/postgres/qgspostgresprovider.cpp
  132. +6 −2 src/providers/postgres/qgspostgresprovider.h
  133. +60 −88 src/providers/spatialite/qgsspatialiteprovider.cpp
  134. +4 −3 src/providers/spatialite/qgsspatialiteprovider.h
  135. +383 −174 src/ui/qgscomposermapwidgetbase.ui
  136. +6 −0 src/ui/qgslabeldialogbase.ui
  137. +1 −1 src/ui/qgsoptionsbase.ui
  138. +4 −4 src/ui/{qgsdbsourceselectbase.ui → qgspgsourceselectbase.ui}
  139. +5 −5 src/ui/{qgspgquerybuilderbase.ui → qgsquerybuilderbase.ui}
  140. +2 −2 src/ui/{qgsserversourceselectbase.ui → qgswmssourceselectbase.ui}
  141. +21 −0 tests/src/core/CMakeLists.txt
  142. +308 −0 tests/src/core/testqgscoordinatereferencesystem.cpp

Large diffs are not rendered by default.

Large diffs are not rendered by default.

@@ -64,7 +64,7 @@ class QgsDataProvider : QObject
* that can be used by the data provider to create a subset.
* Must be implemented in the dataprovider.
*/
virtual void setSubsetString(QString subset);
virtual bool setSubsetString(QString subset);


/**
@@ -141,10 +141,11 @@ class QgsVectorDataProvider : QgsDataProvider
* Return unique values of an attribute
* @param index the index of the attribute
* @param values reference to the list to fill
* @param limit maximum number of values to return (added in 1.4)
*
* Default implementation simply iterates the features
*/
virtual void uniqueValues(int index, QList<QVariant> &uniqueValues /Out/);
virtual void uniqueValues(int index, QList<QVariant> &uniqueValues /Out/, int limit = -1);

/**Returns the possible enum values of an attribute. Returns an empty stringlist if a provider does not support enum types
or if the given attribute is not an enum type.
@@ -166,8 +166,9 @@ public:
* @param subset The subset string. This may be the where clause of a sql statement
* or other defintion string specific to the underlying dataprovider
* and data store.
* @return true, when setting the string was successful, false otherwise (added in 1.4)
*/
virtual void setSubsetString(QString subset);
virtual bool setSubsetString(QString subset);

/**
* Get the string (typically sql) used to define a subset of the layer
@@ -1,3 +1,4 @@
# -*- coding: utf-8 -*-
#-----------------------------------------------------------
#
# Locate Line Intersections
@@ -123,11 +124,11 @@ def compute(self, line1, line2, field1, field2, outPath, progressBar):
fieldList = self.getFieldList(layer1)
index1 = provider1.fieldNameIndex(field1)
field1 = fieldList[index1]
field1.setName("1_" + unicode(field1.name()))
field1.setName(unicode(field1.name()) + "_1")
fieldList = self.getFieldList(layer2)
index2 = provider2.fieldNameIndex(field2)
field2 = fieldList[index2]
field2.setName("2_" + unicode(field2.name()))
field2.setName(unicode(field2.name()) + "_2")
fieldList = {0:field1, 1:field2}
sRs = provider1.crs()
check = QFile(self.shapefileName)
@@ -1,5 +1,5 @@
Copyright (c) 2007 Matthew T. Perry
Copyright (c) 2008 Borys Jurgiel
Copyright (c) 2008-2009 Borys Jurgiel


Permission is hereby granted, free of charge, to any person obtaining a copy of
@@ -14,7 +14,7 @@ def name():
return "Plugin Installer"

def version():
return "Version 1.0.3"
return "Version 1.0.5"

def description():
return "Downloads and installs QGIS python plugins"
@@ -29,7 +29,7 @@
"valid" bool,
"QPHttp" QPHttp,
"Relay" Relay, # Relay object for transmitting signals from QPHttp with adding the repoName information
"xmlData" QDomDocument,
"xmlData" QBuffer,
"state" int, (0 - disabled, 1-loading, 2-loaded ok, 3-error (to be retried), 4-rejected)
"error" QString}}
mPlugins = dict of dicts {id : {"name" QString,
@@ -87,6 +87,7 @@ def setIface(qgisIface):
("Volkan Kepoglu's Repository","http://ggit.metu.edu.tr/~volkan/plugins.xml", ""),
("GIS-Lab Repository", "http://gis-lab.info/programs/qgis/qgis-repo.xml", ""),
("Marco Hugentobler's Repository","http://karlinapp.ethz.ch/python_plugins/python_plugins.xml", ""),
("Bob Bruce's Repository", "http://www.mappinggeek.ca/QGISPythonPlugins/Bobs-QGIS-plugins.xml", ""),
("Sourcepole Repository", "http://build.sourcepole.ch/qgis/plugins.xml", "")]


@@ -376,7 +377,10 @@ def requestFetching(self,key):
self.mRepositories[key]["state"] = 1
url = QUrl(self.mRepositories[key]["url"])
path = QString(url.toPercentEncoding(url.path(), "!$&'()*+,;=:@/"))
self.mRepositories[key]["QPHttp"] = QPHttp(url.host())
port = url.port()
if port < 0:
port = 80
self.mRepositories[key]["QPHttp"] = QPHttp(url.host(), port)
self.connect(self.mRepositories[key]["QPHttp"], SIGNAL("requestFinished (int, bool)"), self.xmlDownloaded)
self.connect(self.mRepositories[key]["QPHttp"], SIGNAL("stateChanged ( int )"), self.mRepositories[key]["Relay"].stateChanged)
self.connect(self.mRepositories[key]["QPHttp"], SIGNAL("dataReadProgress ( int , int )"), self.mRepositories[key]["Relay"].dataReadProgress)
@@ -152,7 +152,10 @@ def __init__(self, parent, plugin):
tmpDir = QDir.tempPath()
tmpPath = QDir.cleanPath(tmpDir+"/"+fileName)
self.file = QFile(tmpPath)
self.http = QPHttp(url.host())
port = url.port()
if port < 0:
port = 80
self.http = QPHttp(url.host(), port)
self.connect(self.http, SIGNAL("stateChanged ( int )"), self.stateChanged)
self.connect(self.http, SIGNAL("dataReadProgress ( int , int )"), self.readProgress)
self.connect(self.http, SIGNAL("requestFinished (int, bool)"), self.requestFinished)
@@ -335,7 +338,8 @@ def populateMostWidgets(self):
a.setToolTip(0,self.tr("This repository is disabled"))
else:
a.setToolTip(0,self.tr("This repository is blocked due to incompatibility with your Quantum GIS version"))
a.setDisabled(True)
for i in [0,1,2]:
a.setForeground(i,QBrush(QColor(Qt.gray)))
for i in [0,1,2]:
self.treeRepositories.resizeColumnToContents(i)
self.comboFilter1.addItem(self.tr("orphans"))
@@ -187,4 +187,4 @@ def newlyReinstalledPlugins(self):
# ----------------------------------------- #
def resetNewlyProcessedPlugins(self):
""" clear the dict of newly processed plugins """
history.clear()
history.clear()
13 qgis.1
@@ -20,7 +20,10 @@ qgis \- Quantum GIS Geographic Information System
.br
See OPTIONS for a full description.
.SH DESCRIPTION
Quantum GIS (QGIS) is a Geographic Information System (GIS) built for Linux/Unix. QGIS supports vector, raster, and database formats. QGIS is licensed under the GNU Public License.
Quantum GIS (QGIS) is a cross platform, Free and Open Source Geographic
Information System (GIS). Supported platforms include Linux/Unix, Mac OS X and
Microsoft Windows. QGIS supports vector, raster, and database formats. QGIS is
licensed under the GNU Public License.

Some of the major features include:

@@ -48,8 +51,9 @@ Create a snapshot image from the specified layers and save it to filename. The
snapshot is saved in PNG format.
.TP
.B \--lang language
Set the language used by QGIS. Language is specified using the locale string that
matches one of the translations supported by QGIS. For example, to use the German translation, specify
Set the language used by QGIS. Language is specified using the locale string
that matches one of the translations supported by QGIS. For example, to use the
German translation, specify
.B --lang de
.TP
.B \--project filename
@@ -78,7 +82,8 @@ layers in a PostgreSQL database and GRASS vector/raster data.
QGIS preferences file. This file stores windows size/location, loaded plugins,
user options, and other application settings.
.SH BUGS
See the QGIS home page (http://qgis.org) for a list of known issues with the latest release.
See the QGIS home page (http://qgis.org) for a list of known issues with the
latest release.
.SH AUTHOR
Gary Sherman <sherman at mrcc.com>

@@ -55,7 +55,7 @@ int QgsGridFileWriter::writeFile( bool showProgressDialog )
outStream.setRealNumberPrecision( 8 );
writeHeader( outStream );

double currentYValue = mInterpolationExtent.yMaximum();
double currentYValue = mInterpolationExtent.yMaximum() - mCellSizeY / 2.0; //calculate value in the center of the cell
double currentXValue;
double interpolatedValue;

@@ -68,7 +68,7 @@ int QgsGridFileWriter::writeFile( bool showProgressDialog )

for ( int i = 0; i < mNumRows; ++i )
{
currentXValue = mInterpolationExtent.xMinimum();
currentXValue = mInterpolationExtent.xMinimum() + mCellSizeX / 2.0; //calculate value in the center of the cell
for ( int j = 0; j < mNumColumns; ++j )
{
if ( mInterpolator->interpolatePoint( currentXValue, currentYValue, interpolatedValue ) == 0 )
@@ -195,6 +195,8 @@ bool QgsGeometryAnalyzer::exportGeometryInformation( QgsVectorLayer* layer,
const QString& shapefileName,
const QString& fileEncoding )
{
return false;
#if 0
QgsVectorDataProvider* provider = layer->dataProvider();
QgsAttributeList allAttrs = provider->attributeIndexes();
provider->select( allAttrs, QgsRectangle(), true );
@@ -223,7 +225,7 @@ bool QgsGeometryAnalyzer::exportGeometryInformation( QgsVectorLayer* layer,
writer.addFeature( outFeat );
}
return true;

#endif
}
bool QgsGeometryAnalyzer::simplifyGeometry( QgsVectorLayer* layer,
const QString shapefileName,
@@ -63,13 +63,14 @@ SET(QGIS_APP_SRCS
qgsprojectproperties.cpp
qgsrasterlayerproperties.cpp
qgssearchquerybuilder.cpp
qgsserversourceselect.cpp
qgswmssourceselect.cpp
qgsshortcutsmanager.cpp
qgssinglesymboldialog.cpp
qgssnappingdialog.cpp
qgsundowidget.cpp
qgsuniquevaluedialog.cpp
qgsvectorlayerproperties.cpp
qgsquerybuilder.cpp

composer/qgscomposer.cpp
composer/qgscomposeritemwidget.cpp
@@ -159,14 +160,15 @@ SET (QGIS_APP_MOC_HDRS
qgsprojectproperties.h
qgsrasterlayerproperties.h
qgssearchquerybuilder.h
qgsserversourceselect.h
qgswmssourceselect.h
qgssinglesymboldialog.h
qgssnappingdialog.h
qgsuniquevaluedialog.h
qgsvectorlayerproperties.h
qgsdbtablemodel.h
qgsspatialitetablemodel.h
qgsundowidget.h
qgsquerybuilder.h

composer/qgscomposer.h
composer/qgscomposeritemwidget.h
@@ -182,7 +184,6 @@ SET (QGIS_APP_MOC_HDRS
legend/qgslegendlayer.h
legend/qgslegendlayerfile.h


ogr/qgsopenvectorlayerdialog.h
ogr/qgsnewogrconnection.h

@@ -198,14 +199,12 @@ IF (POSTGRES_FOUND)
ENDIF(HAVE_PGCONFIG)

SET (QGIS_APP_SRCS ${QGIS_APP_SRCS}
qgsdbsourceselect.cpp
qgspgsourceselect.cpp
qgsnewconnection.cpp
qgspgquerybuilder.cpp
)
SET (QGIS_APP_MOC_HDRS ${QGIS_APP_MOC_HDRS}
qgsdbsourceselect.h
qgspgsourceselect.h
qgsnewconnection.h
qgspgquerybuilder.h
)
ENDIF (POSTGRES_FOUND)

@@ -28,11 +28,11 @@

QgsVectorLayer *QgsAttributeTableDelegate::layer( const QAbstractItemModel *model ) const
{
const QgsAttributeTableModel *tm = dynamic_cast<const QgsAttributeTableModel*>( model );
const QgsAttributeTableModel *tm = qobject_cast<const QgsAttributeTableModel *>( model );
if ( tm )
return tm->layer();

const QgsAttributeTableFilterModel *fm = dynamic_cast<const QgsAttributeTableFilterModel*>( model );
const QgsAttributeTableFilterModel *fm = dynamic_cast<const QgsAttributeTableFilterModel *>( model );
if ( fm )
return fm->layer();

@@ -41,11 +41,11 @@ QgsVectorLayer *QgsAttributeTableDelegate::layer( const QAbstractItemModel *mode

int QgsAttributeTableDelegate::fieldIdx( const QModelIndex &index ) const
{
const QgsAttributeTableModel *tm = dynamic_cast<const QgsAttributeTableModel*>( index.model() );
const QgsAttributeTableModel *tm = qobject_cast<const QgsAttributeTableModel *>( index.model() );
if ( tm )
return tm->fieldIdx( index.column() );

const QgsAttributeTableFilterModel *fm = dynamic_cast<const QgsAttributeTableFilterModel*>( index.model() );
const QgsAttributeTableFilterModel *fm = dynamic_cast<const QgsAttributeTableFilterModel *>( index.model() );
if ( fm )
return fm->tableModel()->fieldIdx( index.column() );

@@ -17,7 +17,7 @@
#define QGSATTRIBUTETABLEDELEGATE_H

#include <QItemDelegate>
#include "qgsvectorlayer.h"

class QPainter;
class QgsVectorLayer;

@@ -218,7 +218,7 @@ void QgsAttributeTableDialog::on_mRemoveSelectionButton_clicked()

void QgsAttributeTableDialog::on_cbxShowSelectedOnly_toggled( bool theFlag )
{
mFilterModel->mHideUnselected = theFlag;
mFilterModel->setHideUnselected( theFlag );
mFilterModel->invalidate();
//TODO: weird
//mModel->changeLayout();
@@ -24,9 +24,6 @@

#include "ui_qgsattributetabledialog.h"

class QgsMapLayer;
class QgsVectorLayer;

#include "qgsvectorlayer.h" //QgsFeatureIds

class QDialogButtonBox;
@@ -20,15 +20,12 @@
#include <QSortFilterProxyModel>
#include <QModelIndex>

//QGIS Includes
#include "qgsvectorlayer.h" //QgsAttributeList

class QgsAttributeTableModel;
class QgsVectorLayer;

class QgsAttributeTableFilterModel: public QSortFilterProxyModel
{
public:
bool mHideUnselected;
/**
* Constructor
* @param theLayer initializing layer pointer
@@ -46,6 +43,8 @@ class QgsAttributeTableFilterModel: public QSortFilterProxyModel
QgsVectorLayer *layer() const { return mLayer; }
QgsAttributeTableModel *tableModel() const { return reinterpret_cast<QgsAttributeTableModel*>( sourceModel() ); }

void setHideUnselected( bool theFlag ) { mHideUnselected = theFlag; }

protected:
/**
* Returns true if the source row will be accepted
@@ -55,6 +54,7 @@ class QgsAttributeTableFilterModel: public QSortFilterProxyModel
bool filterAcceptsRow( int sourceRow, const QModelIndex &sourceParent ) const;
private:
QgsVectorLayer* mLayer;
bool mHideUnselected;
};

#endif

0 comments on commit daf2b0f

Please sign in to comment.
You can’t perform that action at this time.