first commit
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
#ifndef _PIC_COUNTER_ITEM_H_
|
||||
#define _PIC_COUNTER_ITEM_H_
|
||||
|
||||
#include "pictextitem.h"
|
||||
#include <QHash>
|
||||
#include "ViewModels.h"
|
||||
|
||||
class PicCounterItem : public PicTextItem
|
||||
{
|
||||
public:
|
||||
explicit PicCounterItem(QGraphicsItem *parent = 0, QGraphicsScene *scene = 0, const SourceType type = SourceType::COUNTER);
|
||||
|
||||
virtual QVariant source() override;
|
||||
virtual void setSource(QVariant var) override;
|
||||
|
||||
void setCounter(COUNTER_TYPE type, int digitalNum);
|
||||
|
||||
COUNTER_TYPE counterType() const { return m_counterType; }
|
||||
|
||||
int digitalNum() const {return m_digitalNum; }
|
||||
|
||||
int charWidth();
|
||||
|
||||
void setCharWidth(int width);
|
||||
|
||||
protected:
|
||||
/**
|
||||
* @brief itemImage 子类可以重新实现该方法用于返回已经渲染好了的但未应用方向、水平拉伸的图像
|
||||
* @return
|
||||
* @remark
|
||||
* 对图元进行方向、水平拉伸的步骤由 @see applyImgeTranslation 实现,因此子类不需要
|
||||
*/
|
||||
virtual QImage itemImage() override;
|
||||
|
||||
virtual void setCustomAttrs(const QXmlStreamAttributes& attrs);
|
||||
|
||||
virtual void saveCustomAttrs(QXmlStreamAttributes& attrs);
|
||||
|
||||
virtual void letterSpaceChanged() override;
|
||||
|
||||
private:
|
||||
COUNTER_TYPE m_counterType;
|
||||
int m_digitalNum;
|
||||
QImage m_digitalImg;
|
||||
QHash<QString, int> m_charWidthMap;
|
||||
};
|
||||
|
||||
#endif // _PIC_COUNTER_ITEM_H_
|
||||
Reference in New Issue
Block a user