NCL Composer
0.1
|
00001 #include "qnstgraphicsaggregator.h" 00002 00003 QnstGraphicsAggregator::QnstGraphicsAggregator(QnstGraphicsNode* parent) 00004 : QnstGraphicsContent(parent) 00005 { 00006 setnstType(Qnst::Aggregator); 00007 00008 setResizable(false); 00009 00010 createObjects(); 00011 createConnections(); 00012 } 00013 00014 QnstGraphicsAggregator::~QnstGraphicsAggregator() 00015 { 00016 00017 } 00018 00019 void QnstGraphicsAggregator::createObjects() 00020 { 00021 menu = new QnstMenu(); 00022 menu->actionCut->setEnabled(true); 00023 menu->actionCopy->setEnabled(true); 00024 00025 menu->actionDelete->setEnabled(true); 00026 00027 menu->actionExport->setEnabled(true); 00028 } 00029 00030 void QnstGraphicsAggregator::createConnections() 00031 { 00032 connect(menu, SIGNAL(undoRequested()), SIGNAL(undoRequested())); 00033 connect(menu, SIGNAL(redoRequested()), SIGNAL(redoRequested())); 00034 00035 connect(menu, SIGNAL(cutRequested()), SIGNAL(cutRequested())); 00036 connect(menu, SIGNAL(copyRequested()), SIGNAL(copyRequested())); 00037 connect(menu, SIGNAL(pasteRequested()), SIGNAL(pasteRequested())); 00038 00039 connect(menu, SIGNAL(deleteRequested()), SIGNAL(deleteRequested())); 00040 00041 connect(menu, SIGNAL(exportRequested()), SIGNAL(exportRequested())); 00042 00043 connect(menu, SIGNAL(zoominRequested()), SIGNAL(zoominRequested())); 00044 connect(menu, SIGNAL(zoomoutRequested()), SIGNAL(zoomoutRequested())); 00045 connect(menu, SIGNAL(zoomresetRequested()), SIGNAL(zoomresetRequested())); 00046 connect(menu, SIGNAL(fullscreenRequested()), SIGNAL(fullscreenRequested())); 00047 } 00048 00049 void QnstGraphicsAggregator::draw(QPainter* painter) 00050 { 00051 painter->setRenderHint(QPainter::Antialiasing, true); 00052 00053 painter->setBrush(Qt::black); 00054 00055 painter->drawEllipse(4 + 8/2, 4 + 8/2, getWidth()-8, getHeight()-8); 00056 00057 if (isMoving()){ 00058 painter->setBrush(Qt::NoBrush); 00059 painter->setPen(QPen(QBrush(Qt::black), 0)); // 0px = cosmetic border 00060 00061 painter->setRenderHint(QPainter::Antialiasing,false); 00062 painter->drawRect(getMoveLeft()+4-getLeft(), getMoveTop()+4-getTop(), getWidth()-1, getHeight()-1); 00063 } 00064 } 00065 00066 void QnstGraphicsAggregator::delineate(QPainterPath* painter) const 00067 { 00068 painter->addRect(4, 4, getWidth(), getHeight()); 00069 }