Files
Yajbir Singh f1b860b25c
Some checks failed
check / markdownlint (push) Has been cancelled
check / spellchecker (push) Has been cancelled
updated
2025-12-11 19:03:17 +05:30

56 lines
1.4 KiB
C++

#ifndef CTRLSHAPEELLIPSE_H
#define CTRLSHAPEELLIPSE_H
#include "CtrlGeneralShape.h"
namespace HWP
{
enum class EArcType
{
NORMAL,
PIE,
CHORD
};
EArcType GetArcType(int nValue);
EArcType GetArcType(const std::string &sValue, EHanType eType);
class CCtrlShapeEllipse : public CCtrlGeneralShape
{
bool m_bIntervalDirty;
bool m_bHasArcProperty;
EArcType m_eArcType;
int m_nCenterX;
int m_nCenterY;
int m_nAxixX1;
int m_nAxixY1;
int m_nAxixX2;
int m_nAxixY2;
int m_nStartX1;
int m_nStartY1;
int m_nEndX1;
int m_nEndY1;
int m_nStartX2;
int m_nStartY2;
int m_nEndX2;
int m_nEndY2;
void ReadFromHWPX(CXMLReader& oReader);
void ReadFromHWPML(CXMLReader& oReader);
public:
CCtrlShapeEllipse();
CCtrlShapeEllipse(const HWP_STRING& sCtrlID);
CCtrlShapeEllipse(const CCtrlGeneralShape& oShape);
CCtrlShapeEllipse(const HWP_STRING& sCtrlID, int nSize, CHWPStream& oBuffer, int nOff, int nVersion);
CCtrlShapeEllipse(const HWP_STRING& sCtrlID, CXMLReader& oReader, EHanType eType);
EShapeType GetShapeType() const override;
static int ParseElement(CCtrlShapeEllipse& oObj, int nSize, CHWPStream& oBuffer, int nOff, int nVersion);
static int ParseCtrl(CCtrlShapeEllipse& oObj, int nSize, CHWPStream& oBuffer, int nOff, int nVersion);
static int ParseListHeaderAppend(CCtrlShapeEllipse& oObj, int nSize, CHWPStream& oBuffer, int nOff, int nVersion);
};
}
#endif // CTRLSHAPEELLIPSE_H