[Digikam-devel] Re: Very slow context menu invocation
Andi Clemens
andi.clemens at gmx.net
Tue Nov 30 21:11:16 GMT 2010
Well it is used, the problem is that the BQM window initializes all of its
plugins, even though there are not used / assigned at this moment.
Maybe we can initialize plugins only when they are assigned?
Andi Clemens
-----------------
www.digikam.org
On Tuesday 30 November 2010 22:05:07 Gilles Caulier wrote:
> Marcel,
>
> This method already exist :
>
> class QueueMgrWindow : public KXmlGuiWindow
> {
> Q_OBJECT
>
> public:
>
> ~QueueMgrWindow();
>
> static QueueMgrWindow* queueManagerWindow();
> static bool queueManagerWindowCreated();
>
> ...
>
> So it can be used in ContextMenuHelper...
>
> Gilles
>
> 2010/11/28 Marcel Wiesweg <marcel.wiesweg at gmx.de>:
> >> Digikam::QueueMgrWindow::QueueMgrWindow() at queuemgrwindow.cpp:137
> >> 0x827d80a Digikam::QueueMgrWindow::queueManagerWindow() at
> >> queuemgrwindow.cpp:106 0x827d24b
> >> Digikam::ContextMenuHelper::addQueueManagerMenu() at
> >> contextmenuhelper.cpp:741 0x81b096a
> >> Digikam::DigikamImageView::showContextMenuOnInfo() at
> >> digikamimageview.cpp:222 0x81d3a92
> >>
> >> We call this instruction chain whenever the context menu is openend.
> >> But why? Wouldn't it be enough to just generate the QueueMgrWindow
> >> without all this stuff? Especially when no images have been added to
> >> the BQM?
> >
> > If the QueueManagerWindow is supposed to be a singleton, like the
> > ImageWindow, there should be an additional method which returns the
> > singleton pointer (or a bool) but does not create it. With
> > K_GLOBAL_STATIC, there is a method exists() on the creator
> > _______________________________________________
> > Digikam-devel mailing list
> > Digikam-devel at kde.org
> > https://mail.kde.org/mailman/listinfo/digikam-devel
>
> _______________________________________________
> Digikam-devel mailing list
> Digikam-devel at kde.org
> https://mail.kde.org/mailman/listinfo/digikam-devel
More information about the Digikam-devel
mailing list