fixed some errors on OS other than win

preferencesAboutTextFull
Claudio Valerio 14 years ago
parent 92b664b306
commit b485765eec
  1. 21
      src/adaptors/UBSvgSubsetAdaptor.cpp
  2. 5
      src/tools/UBAbstractDrawRuler.h
  3. 45
      src/tools/UBGraphicsProtractor.cpp
  4. 4
      src/tools/UBGraphicsProtractor.h

@ -2576,31 +2576,18 @@ UBGraphicsTriangle* UBSvgSubsetAdaptor::UBSvgSubsetReader::triangleFromSvg()
graphicsItemFromSvg(triangle);
//QStringRef angle = mXmlReader.attributes().value(mNamespaceUri, "angle");
//if (!angle.isNull())
//{
// protractor->setAngle(angle.toString().toFloat());
//}
//QStringRef markerAngle = mXmlReader.attributes().value(mNamespaceUri, "marker-angle");
//if (!markerAngle.isNull())
//{
// protractor->setMarkerAngle(markerAngle.toString().toFloat());
//}
QStringRef svgX = mXmlReader.attributes().value("x");
QStringRef svgY = mXmlReader.attributes().value("y");
QStringRef svgWidth = mXmlReader.attributes().value("width");
QStringRef svgHeight = mXmlReader.attributes().value("height");
UBGraphicsTriangle::UBGraphicsTriangleOrientation orientation =
UBGraphicsTriangle::orientationFromStr((mXmlReader.attributes().value("orientation")));
QStringRef orientationStringRef = mXmlReader.attributes().value("orientation");
UBGraphicsTriangle::UBGraphicsTriangleOrientation orientation = UBGraphicsTriangle::orientationFromStr(orientationStringRef);
if (!svgX.isNull() && !svgY.isNull() && !svgWidth.isNull() && !svgHeight.isNull())
{
triangle->setRect(svgX.toString().toFloat(), svgY.toString().toFloat()
, svgWidth.toString().toFloat(), svgHeight.toString().toFloat(),
orientation);
triangle->setRect(svgX.toString().toFloat(), svgY.toString().toFloat(), svgWidth.toString().toFloat(), svgHeight.toString().toFloat(), orientation);
}
triangle->setVisible(true);

@ -9,7 +9,7 @@ class UBAbstractDrawRuler : public QObject
{
Q_OBJECT
public:
public:
UBAbstractDrawRuler();
~UBAbstractDrawRuler();
@ -18,7 +18,8 @@ class UBAbstractDrawRuler : public QObject
virtual void StartLine(const QPointF& position, qreal width);
virtual void DrawLine(const QPointF& position, qreal width);
virtual void EndLine();
protected:
protected:
void paint();

@ -13,6 +13,7 @@
#include "board/UBBoardController.h"
#include "board/UBDrawingController.h"
#include "core/memcheck.h"
@ -30,6 +31,8 @@ UBGraphicsProtractor::UBGraphicsProtractor()
, mResizeSvgItem(0)
, mMarkerSvgItem(0)
{
sFillTransparency = 127;
sDrawTransparency = 192;
create(*this);
@ -125,7 +128,7 @@ QPainterPath UBGraphicsProtractor::shape() const
qreal centerY = center.y();
buttonPath.addRect(resizeButtonRect().adjusted(centerX, centerY, centerX, centerY));
if(!resizeButtonRect().contains(markerRect))
if (!resizeButtonRect().contains(markerRect))
{
buttonPath.addRect(markerRect.adjusted(centerX - markerRect.left() * 2 - markerRect.width(), centerY
, centerX - markerRect.left() * 2 - markerRect.width(), centerY));
@ -166,7 +169,7 @@ void UBGraphicsProtractor::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
qreal angle = startLine.angleTo(currentLine);
qreal scaleFactor = currentLine.length()/startLine.length();
switch(mCurrentTool)
switch (mCurrentTool)
{
case Rotate :
prepareGeometryChange();
@ -186,9 +189,9 @@ void UBGraphicsProtractor::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
case MoveMarker :
mCurrentAngle += angle;
if((int)mCurrentAngle % 360 > 270)
if ((int)mCurrentAngle % 360 > 270)
mCurrentAngle = 0;
else if((int)mCurrentAngle % 360 >= 180)
else if ((int)mCurrentAngle % 360 >= 180)
mCurrentAngle = 180;
mPreviousMousePos = currentPoint;
@ -203,7 +206,7 @@ void UBGraphicsProtractor::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
break;
}
if(mCurrentTool != Move)
if (mCurrentTool != Move)
event->accept();
}
@ -211,7 +214,7 @@ void UBGraphicsProtractor::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
void UBGraphicsProtractor::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
{
switch(mCurrentTool)
switch (mCurrentTool)
{
case Reset :
setStartAngle(0);
@ -286,7 +289,7 @@ void UBGraphicsProtractor::hoverMoveEvent(QGraphicsSceneHoverEvent *event)
update();
}
if(currentTool == Move)
if (currentTool == Move)
setCursor(Qt::SizeAllCursor);
else
setCursor(Qt::ArrowCursor);
@ -305,7 +308,7 @@ QRectF UBGraphicsProtractor::resetButtonRect () const
{
qreal antiSc = antiScale();
if(buttonSizeReference().width() * antiSc <= buttonSizeReference().width() * 15)
if (buttonSizeReference().width() * antiSc <= buttonSizeReference().width() * 15)
return QRectF(-buttonSizeReference().width() * 7, -buttonSizeReference().height() * antiSc / 2,
buttonSizeReference().width() * antiSc, buttonSizeReference().height() * antiSc);
else
@ -334,7 +337,7 @@ QRectF UBGraphicsProtractor::resizeButtonRect () const
{
qreal antiSc = antiScale();
if(buttonSizeReference().width() * antiSc <= buttonSizeReference().width() * 15)
if (buttonSizeReference().width() * antiSc <= buttonSizeReference().width() * 15)
return QRectF(buttonSizeReference().width() * 8, -buttonSizeReference().height() * antiSc / 2,
buttonSizeReference().width() * antiSc, buttonSizeReference().height() * antiSc);
else
@ -370,12 +373,12 @@ void UBGraphicsProtractor::paintGraduations(QPainter *painter)
QPointF center = rect().center();
painter->drawArc(QRectF(center.x() - rad/2, center.y() - rad/2, rad, rad), mStartAngle*16, mSpan*16);
for(int angle = 1; angle < mSpan; angle++)
for (int angle = 1; angle < mSpan; angle++)
{
int graduationLength = (0 == angle % 10) ? tenDegreeGraduationLength : ((0 == angle % 5) ? fiveDegreeGraduationLength : oneDegreeGraduationLength);
qreal co = cos(((qreal)angle + mStartAngle) * PI/180);
qreal si = sin(((qreal)angle + mStartAngle) * PI/180);
if(0 == angle % 90)
if (0 == angle % 90)
painter->drawLine(QLineF(QPointF(center.x(), center.y()), QPointF(center.x() + co*tenDegreeGraduationLength, center.y() - si*tenDegreeGraduationLength)));
//external arc
@ -415,7 +418,7 @@ void UBGraphicsProtractor::paintButtons(QPainter *painter)
{
Q_UNUSED(painter);
if(mShowButtons)
if (mShowButtons)
{
qreal antiSc = antiScale();
@ -495,7 +498,7 @@ void UBGraphicsProtractor::paintAngleMarker(QPainter *painter)
qreal angle = mCurrentAngle - (int)(mCurrentAngle/360)*360;
if(angle != 0)
if (angle != 0)
{
QString ang = QString("%1°").arg(angle,0, 'f', 1);
QFont font2 = painter->font();
@ -528,17 +531,17 @@ UBGraphicsProtractor::Tool UBGraphicsProtractor::toolFromPos(QPointF pos)
t.rotate(mCurrentAngle);
QPointF p2 = t.map(pos);
if(resizeButtonRect().contains(p1))
if (resizeButtonRect().contains(p1))
return Resize;
else if(closeButtonRect().contains(p1))
else if (closeButtonRect().contains(p1))
return Close;
else if(resetButtonRect().contains(p1))
else if (resetButtonRect().contains(p1))
return Reset;
else if(rotateButtonRect().contains(p1))
else if (rotateButtonRect().contains(p1))
return Rotate;
else if(markerButtonRect().contains(p2))
else if (markerButtonRect().contains(p2))
return MoveMarker;
else if(line.length() <= radius())
else if (line.length() <= radius())
return Move;
else
return None;
@ -584,7 +587,9 @@ UBItem* UBGraphicsProtractor::deepCopy() const
void UBGraphicsProtractor::rotateAroundTopLeftOrigin(qreal angle)
{}
{
Q_UNUSED(angle);
}
QPointF UBGraphicsProtractor::topLeftOrigin() const
{

@ -58,6 +58,7 @@ class UBGraphicsProtractor : public UBAbstractDrawRuler, public QGraphicsEllipse
virtual void hoverMoveEvent (QGraphicsSceneHoverEvent *event);
virtual QPainterPath shape() const;
QRectF boundingRect() const;
private:
// Helpers
void paintGraduations (QPainter *painter);
@ -94,6 +95,9 @@ class UBGraphicsProtractor : public UBAbstractDrawRuler, public QGraphicsEllipse
virtual void rotateAroundTopLeftOrigin(qreal angle);
virtual QPointF topLeftOrigin() const;
int sFillTransparency;
int sDrawTransparency;
};
#endif /* UBGRAPHICSPROTRACTOR_H_ */

Loading…
Cancel
Save