summaryrefslogtreecommitdiffstats
path: root/src/kwin/misc.cpp
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2016-03-26 20:11:54 +0100
committerSlávek Banko <slavek.banko@axis.cz>2016-03-26 20:11:54 +0100
commitb0263695595db848002728b3ebbd8b27fd08ca8c (patch)
tree085d0b4a9f07462145c0cd6d15b306fe5ad2c1bc /src/kwin/misc.cpp
downloadtde-style-ia-ora-b0263695595db848002728b3ebbd8b27fd08ca8c.tar.gz
tde-style-ia-ora-b0263695595db848002728b3ebbd8b27fd08ca8c.zip
Initial import of ia-ora 1.0.8
Diffstat (limited to 'src/kwin/misc.cpp')
-rw-r--r--src/kwin/misc.cpp49
1 files changed, 49 insertions, 0 deletions
diff --git a/src/kwin/misc.cpp b/src/kwin/misc.cpp
new file mode 100644
index 0000000..f050975
--- /dev/null
+++ b/src/kwin/misc.cpp
@@ -0,0 +1,49 @@
+/* Plastik KWin window decoration
+ Copyright (C) 2003 Sandro Giessl <ceebx@users.sourceforge.net>
+
+ based on the window decoration "Web":
+ Copyright (C) 2001 Rik Hemsley (rikkus) <rik@kde.org>
+
+ 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.
+ */
+
+#include <kpixmap.h>
+#include <kpixmapeffect.h>
+
+#include <qcolor.h>
+#include <qimage.h>
+#include <qpainter.h>
+
+#include "misc.h"
+
+QColor alphaBlendColors(const QColor &bgColor, const QColor &fgColor, const int a)
+{
+
+ // normal button...
+ QRgb rgb = bgColor.rgb();
+ QRgb rgb_b = fgColor.rgb();
+ int alpha = a;
+ if(alpha>255) alpha = 255;
+ if(alpha<0) alpha = 0;
+ int inv_alpha = 255 - alpha;
+
+ QColor result = QColor( qRgb(qRed(rgb_b)*inv_alpha/255 + qRed(rgb)*alpha/255,
+ qGreen(rgb_b)*inv_alpha/255 + qGreen(rgb)*alpha/255,
+ qBlue(rgb_b)*inv_alpha/255 + qBlue(rgb)*alpha/255) );
+
+ return result;
+}
+