19#include "kivio_gradient.h"
20#include "kivio_point.h"
27KivioGradient::KivioGradient()
32 m_pColors =
new TQPtrList<TQColor>;
33 m_pColors->setAutoDelete(
true);
36 m_pPoints =
new TQPtrList<KivioPoint>;
37 m_pPoints->setAutoDelete(
true);
39 m_gradientType = kgtNone;
48KivioGradient::~KivioGradient()
72KivioGradient::KivioGradient(
const KivioGradient &source )
77 m_gradientType = source.m_gradientType;
81 m_pColors =
new TQPtrList<TQColor>;
82 pColor = source.m_pColors->first();
85 m_pColors->append(
new TQColor(*pColor) );
87 pColor = source.m_pColors->next();
93 m_pPoints =
new TQPtrList<KivioPoint>;
94 pPoint = source.m_pPoints->first();
97 m_pPoints->append(
new KivioPoint( *pPoint ) );
99 pPoint = source.m_pPoints->next();
111void KivioGradient::copyInto( KivioGradient *pTarget )
const
117 pTarget->m_gradientType = m_gradientType;
120 if( pTarget->m_pColors )
122 delete pTarget->m_pColors;
123 pTarget->m_pColors = NULL;
127 pTarget->m_pColors =
new TQPtrList<TQColor>;
128 pTarget->m_pColors->setAutoDelete(
true);
133 pColor = m_pColors->first();
136 pTarget->m_pColors->append(
new TQColor(*pColor) );
138 pColor = m_pColors->next();
141 if( pTarget->m_pPoints )
143 delete pTarget->m_pPoints;
144 pTarget->m_pPoints = NULL;
147 pTarget->m_pPoints =
new TQPtrList<KivioPoint>;
148 pTarget->m_pPoints->setAutoDelete(
true);
151 pPoint = m_pPoints->first();
154 pTarget->m_pPoints->append(
new KivioPoint( *pPoint ) );
156 pPoint = m_pPoints->next();
166bool KivioGradient::loadXML(
const TQDomElement & )
177TQDomElement KivioGradient::saveXML( TQDomDocument &doc )
180 return doc.createElement(
"KivioGradient");