aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/objects/KvsObject_painter.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/objects/KvsObject_painter.h')
-rw-r--r--src/modules/objects/KvsObject_painter.h131
1 files changed, 131 insertions, 0 deletions
diff --git a/src/modules/objects/KvsObject_painter.h b/src/modules/objects/KvsObject_painter.h
new file mode 100644
index 000000000..e8529dfb0
--- /dev/null
+++ b/src/modules/objects/KvsObject_painter.h
@@ -0,0 +1,131 @@
+#ifndef _CLASS_PAINTER_H_
+#define _CLASS_PAINTER_H_
+//=============================================================================
+//
+// File : KvsObject_painter.h
+// Creation date : Fri Mar 18 14:30:48 CEST 2005
+// by Tonino Imbesi(Grifisx) and Alessandro Carbone(Noldor)
+//
+// This file is part of the KVIrc irc client distribution
+// Copyright (C) 2005-2008 Alessandro Carbone (elfonol at gmail dot com)
+//
+// 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 opinion) 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. If not, write to the Free Software Foundation,
+// Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+//
+//=============================================================================
+
+#include <QPrinter>
+
+#include <qpainter.h>
+#include <qpaintdevice.h>
+#include "KviCString.h"
+#include <QPainterPath>
+#include "object_macros.h"
+
+
+class KvsObject_painter : public KviKvsObject
+{
+ Q_OBJECT
+public:
+ KVSO_DECLARE_OBJECT(KvsObject_painter)
+protected:
+ QPrinter * m_pPrinter;
+ bool bDonotdeleteinternalqpainter;
+ QPainter * m_pPainter;
+ QMatrix m_pMatrix;
+ QLinearGradient *m_pGradient;
+ QPainterPath *m_pPainterPath;
+public:
+ void setInternalPainter(QPainter *p);
+ bool setFont(KviKvsObjectFunctionCall *c);
+ bool setFontSize(KviKvsObjectFunctionCall *c);
+
+ bool fontAscent(KviKvsObjectFunctionCall *c);
+ bool fontDescent(KviKvsObjectFunctionCall *c);
+ bool fontMetricsWidth(KviKvsObjectFunctionCall *c);
+ bool fontMetricsHeight(KviKvsObjectFunctionCall *c);
+ bool setBrush(KviKvsObjectFunctionCall *c);
+ bool setPen(KviKvsObjectFunctionCall *c);
+ bool setBackGroundMode(KviKvsObjectFunctionCall *c);
+
+ bool drawRect(KviKvsObjectFunctionCall *c);
+ bool drawWinFocusRect(KviKvsObjectFunctionCall *c);
+ bool drawLine(KviKvsObjectFunctionCall *c);
+ bool drawRoundRect(KviKvsObjectFunctionCall *c);
+ bool drawPoint(KviKvsObjectFunctionCall *c);
+ bool drawArc(KviKvsObjectFunctionCall *c);
+ bool drawChord(KviKvsObjectFunctionCall *c);
+ bool drawPie(KviKvsObjectFunctionCall *c);
+ bool drawEllipse(KviKvsObjectFunctionCall *c);
+
+ bool drawText(KviKvsObjectFunctionCall *c);
+ bool drawPixmap(KviKvsObjectFunctionCall *c);
+
+
+ bool begin(KviKvsObjectFunctionCall *c);
+ bool end(KviKvsObjectFunctionCall *c);
+ bool save(KviKvsObjectFunctionCall *c);
+ bool restore(KviKvsObjectFunctionCall *c);
+
+
+ bool scale(KviKvsObjectFunctionCall *c);
+ bool shear(KviKvsObjectFunctionCall *c);
+ bool rotate(KviKvsObjectFunctionCall *c);
+ bool reset(KviKvsObjectFunctionCall *c);
+ bool translate(KviKvsObjectFunctionCall *c);
+ bool setPenStyle(KviKvsObjectFunctionCall *c);
+ bool setBrushStyle(KviKvsObjectFunctionCall *c);
+
+// QT4
+ bool setOpacity(KviKvsObjectFunctionCall *c);
+ bool setSmoothPixmapTransform(KviKvsObjectFunctionCall *c);
+ bool setTextAntialiasing(KviKvsObjectFunctionCall *c);
+ bool setAntialiasing(KviKvsObjectFunctionCall *c);
+ bool setGradientStart(KviKvsObjectFunctionCall *c);
+ bool setGradientStop(KviKvsObjectFunctionCall *c);
+ bool setGradientColor(KviKvsObjectFunctionCall *c);
+ bool setGradientAsBrush(KviKvsObjectFunctionCall *c);
+ bool clearGradient(KviKvsObjectFunctionCall *c);
+
+ bool drawIcon(KviKvsObjectFunctionCall *c);
+ bool drawHtmlText(KviKvsObjectFunctionCall *c);
+ bool htmlTextSize(KviKvsObjectFunctionCall *c);
+ bool fillRect(KviKvsObjectFunctionCall *c);
+ bool setPenWidth(KviKvsObjectFunctionCall *c);
+ bool colorNames(KviKvsObjectFunctionCall *c);
+ bool pathMoveTo(KviKvsObjectFunctionCall *c);
+ bool pathLineTo(KviKvsObjectFunctionCall *c);
+ bool drawPath(KviKvsObjectFunctionCall *c);
+ bool setPenJoinStyle(KviKvsObjectFunctionCall *c);
+ bool setPenCapStyle(KviKvsObjectFunctionCall *c);
+ bool pathAddText(KviKvsObjectFunctionCall *c);
+ bool resetPath(KviKvsObjectFunctionCall *c);
+
+ bool beginPdf(KviKvsObjectFunctionCall *c);
+
+ bool painterDeviceWidth(KviKvsObjectFunctionCall *c);
+ bool painterDeviceHeight(KviKvsObjectFunctionCall *c);
+
+
+protected:
+ void attachDevice(KviKvsObject * o,QPaintDevice * p);
+protected slots:
+ void detachDevice();
+private:
+ KviKvsObject * m_pDeviceObject;
+};
+#endif // !_CLASS_PAINTER_H_
+
+
+