Skip to content

Commit

Permalink
ticket:4468 Fixed export to image for Text shapes.
Browse files Browse the repository at this point in the history
  • Loading branch information
adeas31 committed Jul 13, 2017
1 parent 4d60cd3 commit ae81be2
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 5 deletions.
8 changes: 5 additions & 3 deletions OMEdit/OMEditGUI/Annotations/TextAnnotation.cpp
Expand Up @@ -323,10 +323,12 @@ void TextAnnotation::drawTextAnnotaion(QPainter *painter)
}
}
// draw the font
if (mpComponent) {
painter->drawText(boundingRect(), StringHandler::getTextAlignment(mHorizontalAlignment) | Qt::AlignVCenter | Qt::TextDontClip, mTextString);
} else if (boundingRect().width() > 0 && boundingRect().height() > 0) {
if (mpComponent || boundingRect().width() > 0 || boundingRect().height() > 0) {
painter->drawText(boundingRect(), StringHandler::getTextAlignment(mHorizontalAlignment) | Qt::AlignVCenter | Qt::TextDontClip, mTextString);
mExportBoundingRect = painter->boundingRect(boundingRect(), StringHandler::getTextAlignment(mHorizontalAlignment) | Qt::AlignVCenter | Qt::TextDontClip, mTextString);
if (mpComponent) {
mExportBoundingRect = sceneTransform().mapRect(mExportBoundingRect);
}
}
}

Expand Down
2 changes: 2 additions & 0 deletions OMEdit/OMEditGUI/Annotations/TextAnnotation.h
Expand Up @@ -58,6 +58,8 @@ class TextAnnotation : public ShapeAnnotation
QString getOMCShapeAnnotation();
QString getShapeAnnotation();
void updateShape(ShapeAnnotation *pShapeAnnotation);

QRectF mExportBoundingRect;
private:
Component *mpComponent;

Expand Down
6 changes: 5 additions & 1 deletion OMEdit/OMEditGUI/Component/Component.cpp
Expand Up @@ -779,7 +779,11 @@ QRectF Component::itemsBoundingRect()
rect |= pComponent->sceneBoundingRect();
}
foreach (QGraphicsItem *item, mShapesList) {
rect |= item->sceneBoundingRect();
if (TextAnnotation *pTextAnnotation = dynamic_cast<TextAnnotation*>(item)) {
rect |= pTextAnnotation->mExportBoundingRect;
} else {
rect |= item->sceneBoundingRect();
}
}
if (mpNonExistingComponentLine->isVisible()) {
rect |= mpNonExistingComponentLine->sceneBoundingRect();
Expand Down
6 changes: 5 additions & 1 deletion OMEdit/OMEditGUI/Modeling/ModelWidgetContainer.cpp
Expand Up @@ -928,7 +928,11 @@ QRectF GraphicsView::itemsBoundingRect()
rect |= pComponent->itemsBoundingRect();
}
foreach (QGraphicsItem *item, mShapesList) {
rect |= item->sceneBoundingRect();
if (TextAnnotation *pTextAnnotation = dynamic_cast<TextAnnotation*>(item)) {
rect |= pTextAnnotation->mExportBoundingRect;
} else {
rect |= item->sceneBoundingRect();
}
}
foreach (QGraphicsItem *item, mConnectionsList) {
rect |= item->sceneBoundingRect();
Expand Down

0 comments on commit ae81be2

Please sign in to comment.