From 4aed2c8219774f5d797760606b8489a92ddc5163 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kwin/lib/kdecoration_plugins_p.h | 77 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 kwin/lib/kdecoration_plugins_p.h (limited to 'kwin/lib/kdecoration_plugins_p.h') diff --git a/kwin/lib/kdecoration_plugins_p.h b/kwin/lib/kdecoration_plugins_p.h new file mode 100644 index 000000000..b82f7f914 --- /dev/null +++ b/kwin/lib/kdecoration_plugins_p.h @@ -0,0 +1,77 @@ +/***************************************************************** +This file is part of the KDE project. + +Copyright (C) 1999, 2000 Daniel M. Duley +Copyright (C) 2003 Lubos Lunak + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. +******************************************************************/ + +#ifndef KDECORATION_PLUGINS_H +#define KDECORATION_PLUGINS_H + +// +// This header file is internal. I mean it. +// + +#include +#include +#include + +#include "kdecoration.h" + +class KLibrary; +class KConfig; +class KDecoration; +class KDecorationBridge; +class KDecorationFactory; + +class KWIN_EXPORT KDecorationPlugins + : public KDecorationProvides + { + public: + KDecorationPlugins( KConfig* cfg ); + virtual ~KDecorationPlugins(); + bool loadPlugin( QString name ); + void destroyPreviousPlugin(); + KDecorationFactory* factory(); + KDecoration* createDecoration( KDecorationBridge* ); + QString currentPlugin() { return pluginStr; } + bool reset( unsigned long changed ); // returns true if decorations need to be recreated + protected: + virtual void error( const QString& error_msg ); + QCString defaultPlugin; // FRAME normalne protected? + private: + KDecorationFactory* (*create_ptr)(); + KLibrary *library; + KDecorationFactory* fact; + KLibrary *old_library; + KDecorationFactory* old_fact; + QString pluginStr; + KConfig* config; + }; + +/* + + Plugins API: + KDecorationFactory* create_factory(); - called once after loading + +*/ + +#endif -- cgit v1.2.1