[Qgis-developer] TypeError: C++ type 'QgsFeatureIds' is not supported as a signal argument type
Matthias Kuhn
matthias at opengis.ch
Sat Nov 14 01:52:50 PST 2015
Hi,
Sometimes there is quiet a lot of traffic on this list and some
questions get forgotten. Or simply nobody knows the answer. Don't take
it personal :-)
I don't know if that's the reason, but you should use new-style signals.
iface.activeLayer().committedFeaturesRemoved.connect(listener)
Maybe it helps.
Best,
Matthias
On 11/13/2015 09:18 AM, //./\\-/_.\\ wrote:
> Hi developers,
>
> With OSX, QGIS 2.8.3 and higher, I found an error what appears to be
> a regression (perhaps).
> And with QGIS 2.12, the problem persists.
>
> So, if you want to try to reproduce the error, open python console and
> try (with any active layer on editing mode):
>
> >>> layer = iface.activeLayer()
> >>> def listener(s, l):
> >>> print s, l
>
> Then,
>
> >>> layer.committedFeaturesRemoved.connect(listener)
>
> Or
>
> >>> from PyQt4.QtCore import QObject
> >>> from PyQt4.QtCore import SIGNAL
> >>> QObject.connect(layer, SIGNAL(r"committedFeaturesRemoved(QString,
> QgsFeatureIds )"), listener)
>
> It returns this error: “TypeError: C++ type 'QgsFeatureIds' is not
> supported as a signal argument type”
>
> My English is so bad that nobody wants to answer me?
>
> m431m
>
>
>
> 1. Oct 2015 16:22 de m431m at tutanota.com <mailto:m431m at tutanota.com>:
>
> Hi,
> No Mac user able to reproduce the error? Am i the only one?
> m431m
>
> 25. Sep 2015 13:50 de m431m at tutanota.com <mailto:m431m at tutanota.com>:
>
> Hi QGIS developers!
>
> I got strange error with the 'commitedFeaturesRemoved' signal.
> See: http://www.qgis.org/api/classQgsVectorLayer.html#a520550b45603ed20d593b1050768bd97
>
> I try on python console (with any active layer on editing mode):
> >>> layer = iface.activeLayer()
> >>> def listener(s, l):
> >>> print s, l
> >>> layer.committedFeaturesRemoved.connect(listener)
>
> It returns `TypeError: C++ type 'QgsFeatureIds' is not
> supported as a signal argument type`
>
> Now replace `layer.commitedFeaturesRemoved.connect(listener)`by:
> >>> from PyQt4.QtCore import QObject
> >>> from PyQt4.QtCore import SIGNAL
> >>> QObject.disconnect(layer,
> SIGNAL(r"committedFeaturesRemoved()"), listener)
>
> No error, but it returns `False`.
>
> If I delete some features and switch off editing mode, it
> returns nothing! No print! The signal doesn't work(?)
>
> After exchanging a few message with some people on irc #qgis,
> the error only appears with latest QGIS version on OSX10.10.5.
> (it works well with 2.8.2).
>
> Maybe someone that has approached the same problem... and
> solved it?
>
> m431m
>
>
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> List info: http://lists.osgeo.org/mailman/listinfo/qgis-developer
> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-developer
--
Matthias Kuhn
OPENGIS.ch - https://www.opengis.ch
Spatial • (Q)GIS • PostGIS • Open Source
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20151114/93eb322a/attachment.html>
More information about the Qgis-developer
mailing list