/* ============================================================ * * This file is a part of digiKam project * http://www.digikam.org * * Date : 2006-05-04 * Description : Watch image attributes * * Copyright (C) 2006-2007 by Marcel Wiesweg * * This program is free software; you can redistribute it * and/or modify it under the terms of the GNU General * Public License as published by the Free Software Foundation; * either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * ============================================================ */ #ifndef IMAGEATTRIBUTESWATCH_H #define IMAGEATTRIBUTESWATCH_H // TQt includes. #include // KDE includes. #include namespace Digikam { class ImageAttributesWatch : public TQObject { Q_OBJECT TQ_OBJECT public: static ImageAttributesWatch *instance(); static void cleanUp(); static void shutDown(); void imageTagsChanged(TQ_LLONG imageId); void imagesChanged(int albumId); void imageRatingChanged(TQ_LLONG imageId); void imageDateChanged(TQ_LLONG imageId); void imageCaptionChanged(TQ_LLONG imageId); void fileMetadataChanged(const KURL &url); signals: /** Indicates that tags have been assigned or removed for image with given imageId. There is no guarantee that the tags were actually changed. This signal, the signal below, or both may be sent. */ void signalImageTagsChanged(TQ_LLONG imageId); /** Indicates that images in the given album id may have changed their tags. This signal, the signal above, or both may be sent. */ void signalImagesChanged(int albumId); /** These signals indicated that the rating, data or caption of the image with given imageId was set. There is no guarantee that it actually changed. */ void signalImageRatingChanged(TQ_LLONG imageId); void signalImageDateChanged(TQ_LLONG imageId); void signalImageCaptionChanged(TQ_LLONG imageId); /** Indicates that the metadata if the given file has been changed (a write operation on the file on disk). Usually, the database is updated accordingly, so then this signal is sent in combination with one or more of the above signals. */ void signalFileMetadataChanged(const KURL &url); protected: ~ImageAttributesWatch(); static ImageAttributesWatch *m_instance; }; } // namespace Digikam #endif // IMAGEATTRIBUTESWATCH_H