[Digikam-devel] extragear/graphics/digikam/libs/imageproperties
Andi Clemens
andi.clemens at gmx.net
Wed Jul 8 16:31:13 BST 2009
Hmm don't know. Sometimes it works, sometimes not. This is why I changed some
calls from the destructor in the past. We had such problems before. Maybe the
close event must be forwarded from the main window?
So that the widget is awre of this?
I had to forward the windowMoved() signal in a similar way.
Andi
On Wednesday 08 July 2009 16:08:35 Gilles Caulier wrote:
> SVN commit 993339 by cgilles:
>
> In event filter, return parent class event filter result, not always false.
> Move code from destructor to closeEvent() to prevent dumy expander box
> state settings saved to config file... but it doesn't work yet...
>
> Marcel, Andi, why closeEvent() is never called here ?
>
> CCMAIL: digikam-devel at kde.org
>
>
>
> M +17 -11 imagedescedittab.cpp
> M +1 -0 imagedescedittab.h
>
>
> ---
> trunk/extragear/graphics/digikam/libs/imageproperties/imagedescedittab.cpp
> #993338:993339 @@ -406,19 +406,24 @@
> KConfigGroup group = config->group(QString("Tag List View"));
> d->toggleAutoTags =
> (TagFilterView::ToggleAutoTags)(group.readEntry("Toggle Auto Tags",
> (int)TagFilterView::NoToggleAuto)); - group =
> config->group("Image Properties SideBar"); -
> d->tabWidget->setCurrentIndex(group.readEntry("ImageDescEditTab Tab", +
> KConfigGroup group2 = config->group("Image Properties SideBar"); +
> d->tabWidget->setCurrentIndex(group2.readEntry("ImageDescEditTab Tab",
> (int)ImageDescEditTabPriv::DESCRIPTIONS)); -
> d->templateViewer->readSettings(group);
> + d->templateViewer->readSettings(group2);
> }
>
> ImageDescEditTab::~ImageDescEditTab()
> {
> + delete d;
> +}
> +
> +void ImageDescEditTab::closeEvent(QCloseEvent* e)
> +{
> // FIXME: this slot seems to be called several times, which can also
> be seen when changing the metadata of // an image and then switching to
> another one, because you'll get the dialog created by slotChangingItems()
> // twice, and this seems to be exactly the problem when called here. // We
> should disable the slot here at the moment, otherwise digikam crashes. -//
> slotChangingItems();
> + //slotChangingItems();
>
> /*
> AlbumList tList = AlbumManager::instance().allTAlbums();
> @@ -432,12 +437,14 @@
> KConfigGroup group = config->group(QString("Tag List View"));
> group.writeEntry("Toggle Auto Tags", (int)(d->toggleAutoTags));
> group.sync();
> - group = config->group("Image Properties SideBar");
> - group.writeEntry("ImageDescEditTab Tab",
> d->tabWidget->currentIndex()); -
> d->templateViewer->writeSettings(group);
> - group.sync();
> + KConfigGroup group2 = config->group("Image Properties SideBar");
> + group2.writeEntry("ImageDescEditTab Tab",
> d->tabWidget->currentIndex()); +
> d->templateViewer->writeSettings(group2);
> + group2.sync();
>
> - delete d;
> + kDebug() << "-------------> Close Event called !!!";
> +
> + KVBox::closeEvent(e);
> }
>
> bool ImageDescEditTab::singleSelection() const
> @@ -765,9 +772,8 @@
> return true;
> }
> }
> - return false;
> }
> - return false;
> + return KVBox::eventFilter(o, e);
> }
>
> void ImageDescEditTab::populateTags()
> ---
> trunk/extragear/graphics/digikam/libs/imageproperties/imagedescedittab.h
> #993338:993339 @@ -77,6 +77,7 @@
> protected:
>
> bool eventFilter(QObject *o, QEvent *e);
> + void closeEvent(QCloseEvent*);
>
> private:
>
> _______________________________________________
> 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