Hi all Regarding the initial thread: I finally managed to debug and unit test Python plugins outside QGIS with Ecplise IDE and PyDev under Windows. It's documented here (I'm sorry it's german and not yet english): http://www.gis.hsr.ch/wiki/QGIS_Plugins_mit_Python#Debugging_von_Python-QGIS-Plugins_mit_Eclipse
Stefan 2012/1/10 Tim Sutton <[email protected]>: > Hi > > 2012/1/10 Germán Carrillo <[email protected]>: >> Hi, >> >> you can find an example at [1], namely a class called "QgisInterface" in the >> postgis_viewer.py, line 313. >> > > Awesome thanks! Testing it now.... > > Regards > > Tim > >> Hope it helps. >> >> Regards, >> >> Germán >> >> ------------------- >> [1] >> http://downloads.tuxfamily.org/tuxgis/geoblogs/visor_postgis_pgadmin_3/postgis_viewer.zip >> >> >> 2012/1/10 Tim Sutton <[email protected]> >>> >>> Hi >>> >>> On Tue, Jan 10, 2012 at 7:08 PM, Martin Dobias <[email protected]> >>> wrote: >>> >> On Thu, Mar 3, 2011 at 10:40 AM, Martin Dobias <[email protected]> >>> >> wrote: >>> >> >>> >>> The only difference when running unit-tests (i.e. standalone apps) is >>> >>> that you cannot access QGIS interface (qgis.utils.iface) since there >>> >>> is no QGIS running. But that should not pose a big problem. In case >>> >>> you really need access to that interface you can create your own >>> >>> implementation of QgisInterface class and assign it to >>> >>> qgis.utils.iface. >>> >>> >>> >>> Regards >>> >>> Martin >>> >> >>> >> Martin do you (or anyone else) have example code for creating an iface >>> >> instance from a standalone python / QGIS app? >>> > >>> > Hi Tim >>> > >>> > no I do not have a working example. In general it should be something >>> > like this: >>> > >>> > import qgis.utils >>> > import qgis.gui >>> > >>> > class MyQgisInterface(qgis.gui.QgisInterface): >>> > def __init__(self): >>> > QgisInterface.__init__(self) >>> > def mapCanvas(self): >>> > return FOO >>> > def mainWindow(self): >>> > return BAR >>> > def activeLayer(self): >>> > return BAZ >>> > # ... more methods ... >>> > >>> > # use our interface instance >>> > qgis.utils.iface = MyQgisInterface() >>> > >>> > You will have to provide implementation of all the abstract virtual >>> > functions defined in QgisInterface. Luckily most of them are not used >>> > by plugins, so you may provide just implementations not >>> > doing/returning anything - depending on how precisely would you like >>> > to imitate QGIS environment. >>> > >>> >>> Thanks Martin. Yes I have used the same approach in openModeller >>> desktop some years ago to allow it to use QGIS (C++) plugins - I was >>> just interested to know if someone had already baked a python >>> equivalent in keeping with DRAY (dont repeat anyone else :-)). >>> >>> I'll go ahead and make an attempt at a python one then, thanks. >>> >>> Regards >>> >>> Tim >>> >>> >>> > Regards >>> > Martin >>> >>> >>> >>> -- >>> Tim Sutton - QGIS Project Steering Committee Member (Release Manager) >>> ============================================== >>> Please do not email me off-list with technical >>> support questions. Using the lists will gain >>> more exposure for your issues and the knowledge >>> surrounding your issue will be shared with all. >>> >>> Visit http://linfiniti.com to find out about: >>> * QGIS programming and support services >>> * Mapserver and PostGIS based hosting plans >>> * FOSS Consulting Services >>> Skype: timlinux >>> Irc: timlinux on #qgis at freenode.net >>> ============================================== >>> _______________________________________________ >>> Qgis-developer mailing list >>> [email protected] >>> http://lists.osgeo.org/mailman/listinfo/qgis-developer >> >> >> -- >> ----------- >> |\__ >> (:>__)( >> |/ >> >> Soluciones Geoinformáticas Libres >> http://geotux.tuxfamily.org/ >> > > > > -- > Tim Sutton - QGIS Project Steering Committee Member (Release Manager) > ============================================== > Please do not email me off-list with technical > support questions. Using the lists will gain > more exposure for your issues and the knowledge > surrounding your issue will be shared with all. > > Visit http://linfiniti.com to find out about: > * QGIS programming and support services > * Mapserver and PostGIS based hosting plans > * FOSS Consulting Services > Skype: timlinux > Irc: timlinux on #qgis at freenode.net > ============================================== > _______________________________________________ > Qgis-developer mailing list > [email protected] > http://lists.osgeo.org/mailman/listinfo/qgis-developer _______________________________________________ Qgis-developer mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/qgis-developer
