4 Star 36 Fork 14

ITVENTI科技/WorkXP

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
rectelement.cpp 1.11 KB
一键复制 编辑 原始数据 按行查看 历史
huanglingzhi 提交于 2020-06-29 18:07 +08:00 . Let's roll
#include "rectelement.h"
#include "elementpicker.h"
#include "basespace.h"
#include <QPainter>
#include <QDebug>
RectElement::RectElement(BaseElement *parent, BaseSpace *space, QRectF initRect):
BaseElement(parent,space,initRect)
{
setElementName(m_space->nameElementAuto(this->type()));
m_picker = createPicker();
m_pen.setWidth(1);
m_pen.setColor(Qt::black);
}
QPainterPath RectElement::shape() const
{
QPainterPath path;
path.addRect(this->rect());
return path;
}
void RectElement::setPen(const QPen &pen)
{
if (m_pen==pen) return;
m_pen = pen;
emit penChanged(pen);
}
BasePicker *RectElement::createPicker()
{
return new ElementPicker(this);
}
void RectElement::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
{
Q_UNUSED(option);
Q_UNUSED(widget);
painter->setRenderHint(QPainter::Antialiasing,true);
QRectF rect = this->rect();
painter->setPen(m_pen);
qreal nOffset = m_pen.widthF()/2;
rect.adjust(nOffset,nOffset,-nOffset,-nOffset);
painter->drawRect(rect);
BaseElement::paint(painter,option,widget);
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/itventi/workxp.git
git@gitee.com:itventi/workxp.git
itventi
workxp
WorkXP
master

搜索帮助