karbon
vellipse.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __VELLIPSE_H__
00021 #define __VELLIPSE_H__
00022
00023 #include "vcomposite.h"
00024 #include <koffice_export.h>
00025
00026 class KARBONBASE_EXPORT VEllipse : public VPath
00027 {
00028 public:
00029 enum VEllipseType
00030 {
00031 full,
00032 section,
00033 cut,
00034 arc
00035 };
00036 VEllipse( VObject* parent, VState state = edit );
00037 VEllipse( VObject* parent,
00038 const KoPoint& topLeft, double width, double height,
00039 VEllipseType type = full, double startAngle = 0, double endAngle = 0 );
00040
00041 virtual QString name() const;
00042
00043 virtual void save( QDomElement& element ) const;
00044 virtual void saveOasis( KoStore *store, KoXmlWriter *docWriter, KoGenStyles &mainStyles, int &index ) const;
00045 virtual void load( const QDomElement& element );
00046 virtual bool loadOasis( const QDomElement &element, KoOasisLoadingContext &context );
00047
00048 virtual VPath* clone() const;
00049
00050 protected:
00051 void init();
00052
00053 private:
00054 VEllipseType m_type;
00055 KoPoint m_center;
00056 double m_rx;
00057 double m_ry;
00058 double m_startAngle;
00059 double m_endAngle;
00060 };
00061
00062 #endif
00063
|