From b2c02af28049c4feed7a845505ef9a931237056a Mon Sep 17 00:00:00 2001 From: Ken Moore Date: Mon, 2 Nov 2015 10:31:39 -0500 Subject: Add all the animations framework for the screensaver side of lumina-wm (with a quick "sample" plugin). --- lumina-wm-INCOMPLETE/animations/BaseAnimGroup.h | 39 +++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 lumina-wm-INCOMPLETE/animations/BaseAnimGroup.h (limited to 'lumina-wm-INCOMPLETE/animations/BaseAnimGroup.h') diff --git a/lumina-wm-INCOMPLETE/animations/BaseAnimGroup.h b/lumina-wm-INCOMPLETE/animations/BaseAnimGroup.h new file mode 100644 index 00000000..05c36ea2 --- /dev/null +++ b/lumina-wm-INCOMPLETE/animations/BaseAnimGroup.h @@ -0,0 +1,39 @@ +//=========================================== +// Lumina-DE source code +// Copyright (c) 2015, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +// This class is the container which provides the screensaver animations +// and should be subclassed for each of the various animation types +//=========================================== +#ifndef _LUMINA_DESKTOP_SCREEN_SAVER_BASE_ANIMATION_GROUP_H +#define _LUMINA_DESKTOP_SCREEN_SAVER_BASE_ANIMATION_GROUP_H + +#include "GlobalDefines.h" + +class BaseAnimGroup : public QParallelAnimationGroup{ + Q_OBJECT +public: + QWidget *canvas; + QSettings *settings; + + virtual void LoadAnimations(){} //This is the main function which needs to be subclassed + + BaseAnimGroup(QWidget *parent, QSettings *set){ + canvas = parent; + settings = set; + //Now load the animations for this particular plugin + LoadAnimations(); + } + ~BaseAnimGroup(){} + + //============================== + // PLUGIN LOADING/LISTING (Change in the .cpp file) + //============================== + static BaseAnimGroup* NewAnimation(QString type, QWidget *parent, QSettings *set); + static QStringList KnownAnimations(); + +}; + +#endif \ No newline at end of file -- cgit