bool ccGraphicalSegmentationTool::linkWith(ccGLWindow* win) { assert(m_segmentationPoly); ccGLWindow* oldWin = m_associatedWin; if (!ccOverlayDialog::linkWith(win)) return false; if (oldWin) { disconnect(m_associatedWin, SIGNAL(leftButtonClicked(int,int)), this, SLOT(addPointToPolyline(int,int))); disconnect(m_associatedWin, SIGNAL(rightButtonClicked(int,int)), this, SLOT(closePolyLine(int,int))); disconnect(m_associatedWin, SIGNAL(mouseMoved(int,int,Qt::MouseButtons)), this, SLOT(updatePolyLine(int,int,Qt::MouseButtons))); disconnect(m_associatedWin, SIGNAL(buttonReleased()), this, SLOT(closeRectangle())); if (m_segmentationPoly) m_segmentationPoly->setDisplay(0); } if (m_associatedWin) { connect(m_associatedWin, SIGNAL(leftButtonClicked(int,int)), this, SLOT(addPointToPolyline(int,int))); connect(m_associatedWin, SIGNAL(rightButtonClicked(int,int)), this, SLOT(closePolyLine(int,int))); connect(m_associatedWin, SIGNAL(mouseMoved(int,int,Qt::MouseButtons)), this, SLOT(updatePolyLine(int,int,Qt::MouseButtons))); connect(m_associatedWin, SIGNAL(buttonReleased()), this, SLOT(closeRectangle())); if (m_segmentationPoly) m_segmentationPoly->setDisplay(m_associatedWin); } return true; }
void ccGraphicalSegmentationTool::linkWith(ccGLWindow* win) { assert(m_polyVertices && m_segmentationPoly); if (m_associatedWin) stop(); m_associatedWin = win; connect(m_associatedWin, SIGNAL(leftButtonClicked(int,int)), this, SLOT(addPointToPolyline(int,int))); connect(m_associatedWin, SIGNAL(rightButtonClicked(int,int)), this, SLOT(closePolyLine(int,int))); connect(m_associatedWin, SIGNAL(mouseMoved(int,int,Qt::MouseButtons)), this, SLOT(updatePolyLine(int,int,Qt::MouseButtons))); connect(m_associatedWin, SIGNAL(buttonReleased()), this, SLOT(closeRectangle())); m_segmentationPoly->setDisplay(m_associatedWin); }