#include "graphicsItem/electricSvgGroupCT.h" #include "graphicsItem/electricSvgItemCT.h" #include "global.h" #include #include #include #include ElectricSvgGroupCT::ElectricSvgGroupCT(const QRect &rect, QGraphicsItem *parent) : ElectricSvgGroup(rect,parent) { setHandleIfShow(H_textCaption,false); setHandleIfShow(H_textCurrent,false); setHandleIfShow(h_textVoltage,false); setHandleVisible(false); setFunctionHandleIfShow(false); setFunctionHandleEnaable(false); } ElectricSvgGroupCT::~ElectricSvgGroupCT() { } void ElectricSvgGroupCT::setupFinish(int nType,int nSize) { _nType = nType; _nSize = nSize; updateItem(); } void ElectricSvgGroupCT::paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget) { ElectricSvgGroup::paint(painter,option,widget); if(m_childItems.isEmpty()){ //无对象时绘制提示框 QPen pen(Qt::darkYellow); pen.setStyle(Qt::DotLine); painter->setPen(pen); painter->drawRect(m_boundingRect); } } void ElectricSvgGroupCT::updateItem() { for(auto pItem:m_childItems){ delete pItem; } m_childItems.clear(); QRect rec(0,0,90,30); if(_nType == 1){ for(int i = 0;i < _nSize;++i){ ElectricSvgItemCT* p = new ElectricSvgItemCT(rec); p->setItemType(_nType); p->setMoveable(false); addSvgItem(p); } } else if(_nType == 0){ ElectricSvgItemCT* p = new ElectricSvgItemCT(rec); p->setItemType(_nType); p->setMoveable(false); addSvgItem(p); } updateTerPos(); }