mirror of
https://bitbucket.org/smil3y/kde-playground.git
synced 2025-02-24 10:52:52 +00:00
118 lines
5.3 KiB
Text
118 lines
5.3 KiB
Text
// Copyright 2008 Simon Edwards <simon@simonzone.com>
|
|
|
|
// Generated by twine
|
|
|
|
// This program is free software; you can redistribute it and/or modify
|
|
// it under the terms of the GNU Library 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
|
|
|
|
// You should have received a copy of the GNU Library General Public
|
|
// License along with this program; if not, write to the
|
|
// Free Software Foundation, Inc.,
|
|
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
|
|
namespace Plasma
|
|
{
|
|
|
|
class Wallpaper : QObject
|
|
{
|
|
%TypeHeaderCode
|
|
#include <plasma/wallpaper.h>
|
|
%End
|
|
|
|
|
|
public:
|
|
enum ResizeMethod
|
|
{
|
|
ScaledResize,
|
|
CenteredResize,
|
|
ScaledAndCroppedResize,
|
|
TiledResize,
|
|
CenterTiledResize,
|
|
MaxpectResize,
|
|
LastResizeMethod
|
|
};
|
|
|
|
explicit Wallpaper (QObject* parent /TransferThis/ = 0);
|
|
static KPluginInfo::List listWallpaperInfo (const QString& formFactor = QString());
|
|
static Plasma::Wallpaper* load (const QString& name, const QVariantList& args = QVariantList());
|
|
static Plasma::Wallpaper* load (const KPluginInfo& info, const QVariantList& args = QVariantList());
|
|
static Plasma::PackageStructure::Ptr packageStructure (Plasma::Wallpaper* paper = 0);
|
|
QString name () const;
|
|
QString pluginName () const;
|
|
QString icon () const;
|
|
KServiceAction renderingMode () const;
|
|
void setRenderingMode (const QString& mode);
|
|
QList<KServiceAction> listRenderingModes () const;
|
|
bool isInitialized () const;
|
|
QRectF boundingRect () const;
|
|
void setBoundingRect (const QRectF& boundingRect);
|
|
virtual void paint (QPainter* painter, const QRectF& exposedRect)=0;
|
|
void restore (const KConfigGroup& config);
|
|
virtual void save (KConfigGroup& config);
|
|
virtual QWidget* createConfigurationInterface (QWidget* parent /Transfer/);
|
|
virtual void mouseMoveEvent (QGraphicsSceneMouseEvent* event);
|
|
virtual void mousePressEvent (QGraphicsSceneMouseEvent* event);
|
|
virtual void mouseReleaseEvent (QGraphicsSceneMouseEvent* event);
|
|
virtual void wheelEvent (QGraphicsSceneWheelEvent* event);
|
|
Plasma::DataEngine* dataEngine (const QString& name) const;
|
|
bool configurationRequired () const;
|
|
bool isUsingRenderingCache () const;
|
|
void setResizeMethodHint (Plasma::Wallpaper::ResizeMethod resizeMethod);
|
|
void setTargetSizeHint (const QSizeF& targetSize);
|
|
|
|
signals:
|
|
void update (const QRectF& exposedArea);
|
|
void configureRequested ();
|
|
void configurationRequired (bool needsConfig);
|
|
void configNeedsSaving ();
|
|
void renderCompleted (const QImage& image);
|
|
void renderHintsChanged ();
|
|
|
|
protected:
|
|
Wallpaper (QObject* parent /TransferThis/, const QVariantList& args);
|
|
virtual void init (const KConfigGroup& config);
|
|
void setConfigurationRequired (bool needsConfiguring, const QString& reason = QString());
|
|
void render (const QString& sourceImagePath, const QSize& size, Plasma::Wallpaper::ResizeMethod resizeMethod = Plasma::Wallpaper::ScaledResize, const QColor& color = QColor(0,0,0));
|
|
void setUsingRenderingCache (bool useCache);
|
|
bool findInCache (const QString& key, QImage& image, unsigned int lastModified = 0);
|
|
void insertIntoCache (const QString& key, const QImage& image);
|
|
public:
|
|
~Wallpaper ();
|
|
static KPluginInfo::List listWallpaperInfoForMimetype (const QString& mimetype, const QString& formFactor = QString());
|
|
const Plasma::Package* package () const;
|
|
QList<QAction*> contextualActions () const;
|
|
signals:
|
|
void urlDropped (const KUrl& url);
|
|
protected:
|
|
void setContextualActions (const QList<QAction*>& actions);
|
|
public:
|
|
bool isPreviewing () const;
|
|
void setPreviewing (bool previewing);
|
|
bool needsPreviewDuringConfiguration () const;
|
|
protected:
|
|
void setPreviewDuringConfiguration (const bool preview);
|
|
public:
|
|
void setUrls (const KUrl::List& urls);
|
|
bool supportsMimetype (const QString& mimetype) const;
|
|
protected:
|
|
void addUrls (const KUrl::List& urls);
|
|
public:
|
|
Plasma::Wallpaper::ResizeMethod resizeMethodHint () const;
|
|
QSizeF targetSizeHint () const;
|
|
protected:
|
|
void render (const QImage& image, const QSize& size, Plasma::Wallpaper::ResizeMethod resizeMethod = Plasma::Wallpaper::ScaledResize, const QColor& color = QColor(0,0,0));
|
|
};
|
|
// Wallpaper
|
|
|
|
};
|
|
// Plasma
|
|
|
|
|