summaryrefslogtreecommitdiffstats
path: root/client/shadow.h
diff options
context:
space:
mode:
Diffstat (limited to 'client/shadow.h')
-rw-r--r--client/shadow.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/client/shadow.h b/client/shadow.h
new file mode 100644
index 0000000..75d76f4
--- /dev/null
+++ b/client/shadow.h
@@ -0,0 +1,56 @@
+///////////////////////////////////////////////////////////////////////
+// -------------------
+// DeKorator window decoration for KDE
+// -------------------
+// Copyright (C) 2005 moty rahamim <[email protected]>
+//
+// Based on Example-0.8, some ideas and code have been taken from plastik and KCMicons
+//
+// Example window decoration for KDE
+// Copyright (c) 2003, 2004 David Johnson <[email protected]>
+//
+// Plastik KWin window decoration
+// Copyright (C) 2003-2005 Sandro Giessl <[email protected]>
+//
+// KCMicons for KDE
+// Copyright (c) 2000 Antonio Larrosa <[email protected]>
+//
+// 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 of the License, 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 General Public License
+// along with this program; see the file COPYING. If not, write to
+// the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+// Boston, MA 02110-1301, USA.
+///////////////////////////////////////////////////////////////////////
+
+#ifndef __FX_SHADOW
+#define __FX_SHADOW
+
+#include <qpixmap.h>
+#include <qimage.h>
+#include <qcolor.h>
+
+class ShadowEngine
+{
+ public:
+ ShadowEngine();
+ ~ShadowEngine();
+ void setThickness(int thickness) { thickness_ = thickness; }
+ void setMultiplicationFactor(double factor) { multiplicationFactor_ = factor; }
+ QImage makeShadow(const QPixmap& textPixmap, const QColor &bgColor);
+ private:
+ double decay(QImage& source, int x, int y);
+
+ int thickness_;
+ double multiplicationFactor_;
+};
+
+#endif