本文整理汇总了C++中KoSelection::deselectAll方法的典型用法代码示例。如果您正苦于以下问题:C++ KoSelection::deselectAll方法的具体用法?C++ KoSelection::deselectAll怎么用?C++ KoSelection::deselectAll使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KoSelection
的用法示例。
在下文中一共展示了KoSelection::deselectAll方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createCommand
QUndoCommand* KoCreateShapeStrategy::createCommand()
{
KoCreateShapesTool *parent = static_cast<KoCreateShapesTool*>(m_parent);
KoShapeFactory *factory = KoShapeRegistry::instance()->value(parent->shapeId());
if (! factory) {
kWarning(30006) << "Application requested a shape that is not registered" << parent->shapeId();
return 0;
}
const KoProperties *props = parent->shapeProperties();
KoShape *shape;
if (props)
shape = factory->createShapeAndInit(props, parent->m_canvas->shapeController()->dataCenterMap());
else
shape = factory->createDefaultShapeAndInit(parent->m_canvas->shapeController()->dataCenterMap());
if (shape->shapeId().isEmpty())
shape->setShapeId(factory->id());
QRectF rect = selectRect();
shape->setPosition(rect.topLeft());
QSizeF newSize = rect.size();
// if the user has dragged when creating the shape,
// resize the shape to the dragged size
if (newSize.width() > 1.0 && newSize.height() > 1.0)
shape->setSize(newSize);
QUndoCommand * cmd = parent->m_canvas->shapeController()->addShape(shape);
if (cmd) {
KoSelection *selection = parent->m_canvas->shapeManager()->selection();
selection->deselectAll();
selection->select(shape);
}
return cmd;
}
示例2: addPathShape
void KoCreatePathTool::addPathShape(KoPathShape *pathShape)
{
Q_D(KoCreatePathTool);
KoPathShape *startShape = 0;
KoPathShape *endShape = 0;
pathShape->normalize();
// check if existing start/end points are still valid
d->existingStartPoint.validate(canvas());
d->existingEndPoint.validate(canvas());
pathShape->setStroke(createStroke());
if (d->connectPaths(pathShape, d->existingStartPoint, d->existingEndPoint)) {
if (d->existingStartPoint.isValid())
startShape = d->existingStartPoint.path;
if (d->existingEndPoint.isValid() && d->existingEndPoint != d->existingStartPoint)
endShape = d->existingEndPoint.path;
}
KUndo2Command *cmd = canvas()->shapeController()->addShape(pathShape);
if (cmd) {
KoSelection *selection = canvas()->shapeManager()->selection();
selection->deselectAll();
selection->select(pathShape);
if (startShape)
canvas()->shapeController()->removeShape(startShape, cmd);
if (endShape && startShape != endShape)
canvas()->shapeController()->removeShape(endShape, cmd);
canvas()->addCommand(cmd);
} else {
canvas()->updateCanvas(pathShape->boundingRect());
delete pathShape;
}
}
示例3: createCommand
KUndo2Command* KoCreateShapeStrategy::createCommand()
{
Q_D(KoShapeRubberSelectStrategy);
KoCreateShapesTool *parent = static_cast<KoCreateShapesTool*>(d_ptr->tool);
KoShapeFactoryBase *factory = KoShapeRegistry::instance()->value(parent->shapeId());
if (! factory) {
warnFlake << "Application requested a shape that is not registered" << parent->shapeId();
return 0;
}
const KoProperties *props = parent->shapeProperties();
KoShape *shape;
if (props)
shape = factory->createShape(props, parent->canvas()->shapeController()->resourceManager());
else
shape = factory->createDefaultShape(parent->canvas()->shapeController()->resourceManager());
if (shape->shapeId().isEmpty())
shape->setShapeId(factory->id());
QRectF rect = d->selectedRect();
shape->setPosition(rect.topLeft());
QSizeF newSize = rect.size();
// if the user has dragged when creating the shape,
// resize the shape to the dragged size
if (newSize.width() > 1.0 && newSize.height() > 1.0)
shape->setSize(newSize);
KUndo2Command * cmd = parent->canvas()->shapeController()->addShape(shape);
if (cmd) {
KoSelection *selection = parent->canvas()->shapeManager()->selection();
selection->deselectAll();
selection->select(shape);
}
return cmd;
}
示例4: deactivate
void KarbonCalligraphyTool::deactivate()
{
if (m_lastShape && canvas()->shapeManager()->shapes().contains(m_lastShape)) {
KoSelection *selection = canvas()->shapeManager()->selection();
selection->deselectAll();
selection->select(m_lastShape);
}
}
示例5: if
bool KisNodeManager::Private::activateNodeImpl(KisNodeSP node)
{
Q_ASSERT(view);
Q_ASSERT(view->canvasBase());
Q_ASSERT(view->canvasBase()->globalShapeManager());
Q_ASSERT(imageView);
if (node && node == q->activeNode()) {
return false;
}
// Set the selection on the shape manager to the active layer
// and set call KoSelection::setActiveLayer( KoShapeLayer* layer )
// with the parent of the active layer.
KoSelection *selection = view->canvasBase()->globalShapeManager()->selection();
Q_ASSERT(selection);
selection->deselectAll();
if (!node) {
selection->setActiveLayer(0);
imageView->setCurrentNode(0);
maskManager.activateMask(0);
layerManager.activateLayer(0);
} else {
KoShape * shape = view->document()->shapeForNode(node);
Q_ASSERT(shape);
selection->select(shape);
KoShapeLayer * shapeLayer = dynamic_cast<KoShapeLayer*>(shape);
Q_ASSERT(shapeLayer);
// shapeLayer->setGeometryProtected(node->userLocked());
// shapeLayer->setVisible(node->visible());
selection->setActiveLayer(shapeLayer);
imageView->setCurrentNode(node);
if (KisLayerSP layer = dynamic_cast<KisLayer*>(node.data())) {
maskManager.activateMask(0);
layerManager.activateLayer(layer);
} else if (KisMaskSP mask = dynamic_cast<KisMask*>(node.data())) {
maskManager.activateMask(mask);
// XXX_NODE: for now, masks cannot be nested.
layerManager.activateLayer(static_cast<KisLayer*>(node->parent().data()));
}
}
return true;
}
示例6: addImages
void KoPAView::addImages(const QList<QImage> &imageList, const QPoint &insertAt)
{
// get position from event and convert to document coordinates
QPointF pos = zoomHandler()->viewToDocument(insertAt)
+ kopaCanvas()->documentOffset() - kopaCanvas()->documentOrigin();
// create a factory
KoShapeFactoryBase *factory = KoShapeRegistry::instance()->value("PictureShape");
if (!factory) {
kWarning(30003) << "No picture shape found, cannot drop images.";
return;
}
foreach(const QImage &image, imageList) {
KoProperties params;
QVariant v;
v.setValue<QImage>(image);
params.setProperty("qimage", v);
KoShape *shape = factory->createShape(¶ms, d->doc->resourceManager());
if (!shape) {
kWarning(30003) << "Could not create a shape from the image";
return;
}
shape->setPosition(pos);
pos += QPointF(25,25); // increase the position for each shape we insert so the
// user can see them all.
KUndo2Command *cmd = kopaCanvas()->shapeController()->addShapeDirect(shape);
if (cmd) {
KoSelection *selection = kopaCanvas()->shapeManager()->selection();
selection->deselectAll();
selection->select(shape);
}
kopaCanvas()->addCommand(cmd);
}