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
