[Qgis-developer] Building plugin for Print Composer

Nyall Dawson nyall.dawson at gmail.com
Fri Aug 14 20:58:13 PDT 2015


On 14 Aug 2015 23:41, "Vincent Mora" <vincent.mora at oslandia.com> wrote:
>
> Le 08/08/2015 11:19, Nyall Dawson a écrit :
>>
>>
>> On 7 Aug 2015 6:58 pm, "Vincent Mora" <vincent.mora at oslandia.com> wrote:
>> >
>> > Hi all,
>> >
>> > I need to add graphs generated by a plugin to compositions. I'm
considering to develop a PluginComposerItem in the same spirit as
PluginLayers, adding/removing a button in the toolbar when the plugin is
registered/removed.
>
> Hi Nyall,
>
>> Just a warning that similar work is already underway - adding a composer
item type registry so that plugins can register their own custom item types.
>
> Thanks for the warning.
>
> Are you referring to QEP#9 or to something else ?
>
> What is the status of the work that is "underway" ?
>
> What is the planned time-frame ?
>
> Is there a branch somewhere that I can base my work on / contribute to ?
>
> We need a composer plugin item for a customer project with a deadline in
November. We have planned a few days of dev to contribute that and we'd
rather put those efforts in a long term solution.

Sorry Vincent, I've been a bit swamped over the last week and haven't had a
chance to respond yet. I'll put down a detailed email sometime over the
next couple of days outlining the situation.

Nyall

>>
>> It's an extensive work though, because composer has a lot of hard coded
handling of all the existing item types (checkout all the item specific
methods in QgsComposition/QgsComposerView). That's why this work is tied up
with the layouts/reporting framework refactor.
>
> I've seen that, and I'm not sure I see why it prevents the introduction
of a plugin item (+registry) that would be used as a base class for python
objects to draw in a frame that is part of a composition.
>
> V.
>
>
>> Nyall
>>
>> >
>> > Is that what was needed in your cases, or was a more general approach
required (like the qgis plugin mechanism, being able to access the
interface) ?
>> >
>> > V.
>> >
>> >
>> > Le 22/06/2015 18:05, G. Allegri a écrit :
>> >>
>> >> The suggestion from John is exactly what we did too. And we also
built a chart composer...
>> >>
>> >> It would be great to have the means to know what other teams are
working to. It would save a lor of time and money and, probably, get better
software from a shared effort ;)
>> >>
>> >> giovanni
>> >>
>> >> Il 22/giu/2015 19:31, "John Gitau" <gkahiu at gmail.com> ha scritto:
>> >>>
>> >>> Hi Jakob,
>> >>>
>> >>> A workaround would be to have a plugin that creates a new composer
view object:
>> >>>
>> >>> custom_composer = self.iface.createNewComposer("My Composer")
>> >>>
>> >>> Then get a reference to the main window in the composer view:
>> >>>
>> >>> main_window = custom_composer.composerWindow()
>> >>>
>> >>> Then you can either add a new toolbar (and required actions) or
append an action to the main toolbar. Have a look at the ComposerWrapper
class for something similar we implemented for designing charts in the
composer: https://gist.github.com/gkahiu/06a43a589f9441736397
>> >>>
>> >>> Hope this is helpful.
>> >>>
>> >>> Cheers,
>> >>>
>> >>> John
>> >>>
>> >>> On Mon, Jun 22, 2015 at 2:07 PM, G. Allegri <giohappy at gmail.com>
wrote:
>> >>>>
>> >>>> You can act on it but you can't custom gui widgets to the Composer
interface.
>> >>>> I cannot check the code right know. I listen to a specific
(existing) composition opening but if I remember correctly you can watch
the Composer opening too.
>> >>>>
>> >>>> Il 22/giu/2015 17:19, "Jakob Lanstorp" <jlanstorp at gmail.com> ha
scritto:
>> >>>>>
>> >>>>> Hi Giovanni, thanks for the update. Another solution would be to
catch the
>> >>>>> event when a user starts an existing print composer. Cannot in doc
for the
>> >>>>> pyqgis API find anything for this. Anyone who know is one can
listens for a
>> >>>>> print composer to startup by the user and act on it.
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> -----
>> >>>>> Jakob Lanstorp
>> >>>>> --
>> >>>>> View this message in context:
http://osgeo-org.1560.x6.nabble.com/Building-plugin-for-Print-Composer-tp5212187p5212221.html
>> >>>>> Sent from the Quantum GIS - Developer mailing list archive at
Nabble.com.
>> >>>>> _______________________________________________
>> >>>>> Qgis-developer mailing list
>> >>>>> Qgis-developer at lists.osgeo.org
>> >>>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> >>>>
>> >>>>
>> >>>> _______________________________________________
>> >>>> Qgis-developer mailing list
>> >>>> Qgis-developer at lists.osgeo.org
>> >>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> >>>
>> >>>
>> >>>
>> >>> _______________________________________________
>> >>> Qgis-developer mailing list
>> >>> Qgis-developer at lists.osgeo.org
>> >>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> >>
>> >>
>> >>
>> >> _______________________________________________
>> >> Qgis-developer mailing list
>> >> Qgis-developer at lists.osgeo.org
>> >> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> >
>> >
>> >
>> > _______________________________________________
>> > Qgis-developer mailing list
>> > Qgis-developer at lists.osgeo.org
>> > http://lists.osgeo.org/mailman/listinfo/qgis-developer
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20150815/1a0c81b2/attachment.html>


More information about the Qgis-developer mailing list