[QGIS-Developer] Difficulties with custom bad layer handler in plugin code
Raymond Nijssen
r.nijssen at terglobo.nl
Mon Jul 22 22:30:35 PDT 2019
>
> So what you would do here is implement a custom pre-processor which
> detects some hardcoded path to the plugin resource, and swaps it out
> with the actual path to the python plugin. E.g.
>
> def my_processor(path):
> if path.endswith('my_plugins_super_north_arrow.svg'):
> return os.path.join(os.path.dirname(__file__),
> 'resources/my_plugins_super_north_arrow.svg')
> return path
>
> QgsPathResolver.setPathPreprocessor(my_processor)
>
> Basically - whenever a path ending in
> 'my_plugins_super_north_arrow.svg' is requested, it gets (silently)
> modified to point to a subfolder off your plugin's actual runtime
> location. You'd just need to make sure the intercepted resources have
> a distinct enough name to not clash with other (non-plugin) paths!
> (e.g. don't just check for "north_arrow.svg"!).
>
>
> Nyall
>
>
Thanks Nyall!
That sounds exactly what would work for us. I guess we could use a very
unique subdirectory name for storing all the not so unique files and
find them that way.
For "normal" users this will be available from 3.10 right?
Kind regards,
Raymond
More information about the QGIS-Developer
mailing list