aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/objects/class_painter.cpp
diff options
context:
space:
mode:
authorGravatar Noldor2009-09-30 21:57:58 +0000
committerGravatar Noldor2009-09-30 21:57:58 +0000
commit2181ad315bcc70741091456d729c8d26fbb18fa8 (patch)
tree73f9bc762eecde0c4de01a3f668b4115cf0c2aee /src/modules/objects/class_painter.cpp
parentremoved debug comment (diff)
downloadKVIrc-2181ad315bcc70741091456d729c8d26fbb18fa8.tar.gz
KVIrc-2181ad315bcc70741091456d729c8d26fbb18fa8.tar.bz2
KVIrc-2181ad315bcc70741091456d729c8d26fbb18fa8.zip
Some fixes in objects module
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@3535 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/objects/class_painter.cpp')
-rw-r--r--src/modules/objects/class_painter.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/modules/objects/class_painter.cpp b/src/modules/objects/class_painter.cpp
index 071977426..8994e5dc3 100644
--- a/src/modules/objects/class_painter.cpp
+++ b/src/modules/objects/class_painter.cpp
@@ -521,6 +521,10 @@ KVSO_END_REGISTERCLASS(KviKvsObject_painter)
KVSO_BEGIN_CONSTRUCTOR(KviKvsObject_painter,KviKvsObject)
m_pPainter = new QPainter();
+ int size=sizeof(*this);
+ debug ("sizeasd %d",size);
+
+ bDonotdeleteinternalqpainter=false;
m_pPrinter = 0 ;
m_pDeviceObject=0;
m_pPainterPath=0;
@@ -534,7 +538,7 @@ if (m_pPainterPath) delete m_pPainterPath;
m_pPainterPath=0;
if (m_pGradient) delete m_pGradient;
m_pGradient=0;
-if (m_pPainter) delete m_pPainter;
+if (m_pPainter && !bDonotdeleteinternalqpainter) delete m_pPainter;
m_pPainter = 0;
if (m_pPrinter) delete m_pPrinter;
m_pPrinter = 0;
@@ -1733,8 +1737,12 @@ KVSO_CLASS_FUNCTION(painter,resetPath)
}
return true;
}
-
-
+void KviKvsObject_painter::setInternalPainter(QPainter *p)
+{
+ delete m_pPainter;
+ m_pPainter=p;
+ bDonotdeleteinternalqpainter=true;
+}
#ifndef COMPILE_USE_STANDALONE_MOC_SOURCES
#include "m_class_painter.moc"
#endif //COMPILE_USE_STANDALONE_MOC_SOURCES