Fleshed out remainder of XmlUtil. Units cleanup.
This commit is contained in:
+1
-1
@@ -62,7 +62,7 @@ namespace libglabels
|
|||||||
virtual double w() const = 0;
|
virtual double w() const = 0;
|
||||||
virtual double h() const = 0;
|
virtual double h() const = 0;
|
||||||
|
|
||||||
virtual const QString sizeDescription( const Units* units ) const = 0;
|
virtual const QString sizeDescription( const Units& units ) const = 0;
|
||||||
virtual bool isSimilarTo( Frame* other ) const = 0;
|
virtual bool isSimilarTo( Frame* other ) const = 0;
|
||||||
|
|
||||||
virtual const QPainterPath& path() const = 0;
|
virtual const QPainterPath& path() const = 0;
|
||||||
|
|||||||
@@ -80,22 +80,22 @@ namespace libglabels
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const QString FrameCd::sizeDescription( const Units* units ) const
|
const QString FrameCd::sizeDescription( const Units& units ) const
|
||||||
{
|
{
|
||||||
if ( units->id() == "in" )
|
if ( units.id() == "in" )
|
||||||
{
|
{
|
||||||
QString dStr = StrUtil::formatFraction( 2 * mR1 * units->unitsPerPoint() );
|
QString dStr = StrUtil::formatFraction( 2 * mR1 * units.unitsPerPoint() );
|
||||||
|
|
||||||
return QString().sprintf( "%s %s %s",
|
return QString().sprintf( "%s %s %s",
|
||||||
qPrintable(dStr),
|
qPrintable(dStr),
|
||||||
qPrintable(units->name()),
|
qPrintable(units.name()),
|
||||||
qPrintable(tr("diameter")) );
|
qPrintable(tr("diameter")) );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return QString().sprintf( "%.5g %s %s",
|
return QString().sprintf( "%.5g %s %s",
|
||||||
2 * mR1 * units->unitsPerPoint(),
|
2 * mR1 * units.unitsPerPoint(),
|
||||||
qPrintable(units->name()),
|
qPrintable(units.name()),
|
||||||
qPrintable(tr("diameter")) );
|
qPrintable(tr("diameter")) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ namespace libglabels
|
|||||||
double w() const;
|
double w() const;
|
||||||
double h() const;
|
double h() const;
|
||||||
|
|
||||||
const QString sizeDescription( const Units* units ) const;
|
const QString sizeDescription( const Units& units ) const;
|
||||||
bool isSimilarTo( Frame* other ) const;
|
bool isSimilarTo( Frame* other ) const;
|
||||||
|
|
||||||
const QPainterPath& path() const;
|
const QPainterPath& path() const;
|
||||||
|
|||||||
@@ -59,24 +59,24 @@ namespace libglabels
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const QString FrameEllipse::sizeDescription( const Units* units ) const
|
const QString FrameEllipse::sizeDescription( const Units& units ) const
|
||||||
{
|
{
|
||||||
if ( units->id() == "in" )
|
if ( units.id() == "in" )
|
||||||
{
|
{
|
||||||
QString wStr = StrUtil::formatFraction( mW * units->unitsPerPoint() );
|
QString wStr = StrUtil::formatFraction( mW * units.unitsPerPoint() );
|
||||||
QString hStr = StrUtil::formatFraction( mH * units->unitsPerPoint() );
|
QString hStr = StrUtil::formatFraction( mH * units.unitsPerPoint() );
|
||||||
|
|
||||||
return QString().sprintf( "%s x %s %s",
|
return QString().sprintf( "%s x %s %s",
|
||||||
qPrintable(wStr),
|
qPrintable(wStr),
|
||||||
qPrintable(hStr),
|
qPrintable(hStr),
|
||||||
qPrintable(units->name()) );
|
qPrintable(units.name()) );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return QString().sprintf( "%.5g x %.5g %s",
|
return QString().sprintf( "%.5g x %.5g %s",
|
||||||
mW * units->unitsPerPoint(),
|
mW * units.unitsPerPoint(),
|
||||||
mH * units->unitsPerPoint(),
|
mH * units.unitsPerPoint(),
|
||||||
qPrintable(units->name()) );
|
qPrintable(units.name()) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ namespace libglabels
|
|||||||
double w() const;
|
double w() const;
|
||||||
double h() const;
|
double h() const;
|
||||||
|
|
||||||
const QString sizeDescription( const Units* units ) const;
|
const QString sizeDescription( const Units& units ) const;
|
||||||
bool isSimilarTo( Frame* other ) const;
|
bool isSimilarTo( Frame* other ) const;
|
||||||
|
|
||||||
const QPainterPath& path() const;
|
const QPainterPath& path() const;
|
||||||
|
|||||||
@@ -61,24 +61,24 @@ namespace libglabels
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const QString FrameRect::sizeDescription( const Units* units ) const
|
const QString FrameRect::sizeDescription( const Units& units ) const
|
||||||
{
|
{
|
||||||
if ( units->id() == "in" )
|
if ( units.id() == "in" )
|
||||||
{
|
{
|
||||||
QString wStr = StrUtil::formatFraction( mW * units->unitsPerPoint() );
|
QString wStr = StrUtil::formatFraction( mW * units.unitsPerPoint() );
|
||||||
QString hStr = StrUtil::formatFraction( mH * units->unitsPerPoint() );
|
QString hStr = StrUtil::formatFraction( mH * units.unitsPerPoint() );
|
||||||
|
|
||||||
return QString().sprintf( "%s x %s %s",
|
return QString().sprintf( "%s x %s %s",
|
||||||
qPrintable(wStr),
|
qPrintable(wStr),
|
||||||
qPrintable(hStr),
|
qPrintable(hStr),
|
||||||
qPrintable(units->name()) );
|
qPrintable(units.name()) );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return QString().sprintf( "%.5g x %.5g %s",
|
return QString().sprintf( "%.5g x %.5g %s",
|
||||||
mW * units->unitsPerPoint(),
|
mW * units.unitsPerPoint(),
|
||||||
mH * units->unitsPerPoint(),
|
mH * units.unitsPerPoint(),
|
||||||
qPrintable(units->name()) );
|
qPrintable(units.name()) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ namespace libglabels
|
|||||||
double w() const;
|
double w() const;
|
||||||
double h() const;
|
double h() const;
|
||||||
|
|
||||||
const QString sizeDescription( const Units* units ) const;
|
const QString sizeDescription( const Units& units ) const;
|
||||||
|
|
||||||
bool isSimilarTo( Frame* other ) const;
|
bool isSimilarTo( Frame* other ) const;
|
||||||
|
|
||||||
|
|||||||
@@ -60,22 +60,22 @@ namespace libglabels
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const QString FrameRound::sizeDescription( const Units* units ) const
|
const QString FrameRound::sizeDescription( const Units& units ) const
|
||||||
{
|
{
|
||||||
if ( units->id() == "in" )
|
if ( units.id() == "in" )
|
||||||
{
|
{
|
||||||
QString dStr = StrUtil::formatFraction( 2 * mR * units->unitsPerPoint() );
|
QString dStr = StrUtil::formatFraction( 2 * mR * units.unitsPerPoint() );
|
||||||
|
|
||||||
return QString().sprintf( "%s %s %s",
|
return QString().sprintf( "%s %s %s",
|
||||||
qPrintable(dStr),
|
qPrintable(dStr),
|
||||||
qPrintable(units->name()),
|
qPrintable(units.name()),
|
||||||
qPrintable(tr("diameter")) );
|
qPrintable(tr("diameter")) );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return QString().sprintf( "%.5g %s %s",
|
return QString().sprintf( "%.5g %s %s",
|
||||||
2 * mR * units->unitsPerPoint(),
|
2 * mR * units.unitsPerPoint(),
|
||||||
qPrintable(units->name()),
|
qPrintable(units.name()),
|
||||||
qPrintable(tr("diameter")) );
|
qPrintable(tr("diameter")) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ namespace libglabels
|
|||||||
double w() const;
|
double w() const;
|
||||||
double h() const;
|
double h() const;
|
||||||
|
|
||||||
const QString sizeDescription( const Units* units ) const;
|
const QString sizeDescription( const Units& units ) const;
|
||||||
bool isSimilarTo( Frame* other ) const;
|
bool isSimilarTo( Frame* other ) const;
|
||||||
|
|
||||||
const QPainterPath& path() const;
|
const QPainterPath& path() const;
|
||||||
|
|||||||
+17
-46
@@ -43,7 +43,13 @@ namespace libglabels
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Units *Units::fromId( const QString &id )
|
Units::Units()
|
||||||
|
: mId("pt"), mName(tr("points")), mPointsPerUnit(POINTS_PER_POINT)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Units Units::fromId( const QString &id )
|
||||||
{
|
{
|
||||||
if ( id == "pt" )
|
if ( id == "pt" )
|
||||||
{
|
{
|
||||||
@@ -79,68 +85,33 @@ namespace libglabels
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Units *Units::point()
|
Units Units::point()
|
||||||
{
|
{
|
||||||
static Units *instance = NULL;
|
return Units( "pt", tr("points"), POINTS_PER_POINT );
|
||||||
|
|
||||||
if ( instance == NULL )
|
|
||||||
{
|
|
||||||
instance = new Units( "pt", tr("points"), POINTS_PER_POINT );
|
|
||||||
}
|
|
||||||
|
|
||||||
return instance;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Units *Units::inch()
|
Units Units::inch()
|
||||||
{
|
{
|
||||||
static Units *instance = NULL;
|
return Units( "in", tr("inches"), POINTS_PER_INCH );
|
||||||
|
|
||||||
if ( instance == NULL )
|
|
||||||
{
|
|
||||||
instance = new Units( "in", tr("inches"), POINTS_PER_INCH );
|
|
||||||
}
|
|
||||||
|
|
||||||
return instance;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Units *Units::mm()
|
Units Units::mm()
|
||||||
{
|
{
|
||||||
static Units *instance = NULL;
|
return Units( "mm", tr("mm"), POINTS_PER_MM );
|
||||||
|
|
||||||
if ( instance == NULL )
|
|
||||||
{
|
|
||||||
instance = new Units( "mm", tr("mm"), POINTS_PER_MM );
|
|
||||||
}
|
|
||||||
|
|
||||||
return instance;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Units *Units::cm()
|
Units Units::cm()
|
||||||
{
|
{
|
||||||
static Units *instance = NULL;
|
return Units( "cm", tr("cm"), POINTS_PER_CM );
|
||||||
|
|
||||||
if ( instance == NULL )
|
|
||||||
{
|
|
||||||
instance = new Units( "cm", tr("cm"), POINTS_PER_CM );
|
|
||||||
}
|
|
||||||
|
|
||||||
return instance;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Units *Units::pica()
|
Units Units::pica()
|
||||||
{
|
{
|
||||||
static Units *instance = NULL;
|
return Units( "pc", tr("picas"), POINTS_PER_PICA );
|
||||||
|
|
||||||
if ( instance == NULL )
|
|
||||||
{
|
|
||||||
instance = new Units( "pc", tr("picas"), POINTS_PER_PICA );
|
|
||||||
}
|
|
||||||
|
|
||||||
return instance;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+8
-6
@@ -39,23 +39,25 @@ namespace libglabels
|
|||||||
Units( const QString &id, const QString &name, double pointsPerUnit );
|
Units( const QString &id, const QString &name, double pointsPerUnit );
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
Units();
|
||||||
|
|
||||||
QString id() const;
|
QString id() const;
|
||||||
QString name() const;
|
QString name() const;
|
||||||
|
|
||||||
double pointsPerUnit() const;
|
double pointsPerUnit() const;
|
||||||
double unitsPerPoint() const;
|
double unitsPerPoint() const;
|
||||||
|
|
||||||
static Units *fromId( const QString &id );
|
static Units fromId( const QString &id );
|
||||||
|
|
||||||
static Units *point();
|
static Units point();
|
||||||
|
|
||||||
static Units *inch();
|
static Units inch();
|
||||||
|
|
||||||
static Units *mm();
|
static Units mm();
|
||||||
|
|
||||||
static Units *cm();
|
static Units cm();
|
||||||
|
|
||||||
static Units *pica();
|
static Units pica();
|
||||||
|
|
||||||
static bool isIdValid( QString id );
|
static bool isIdValid( QString id );
|
||||||
|
|
||||||
|
|||||||
+30
-29
@@ -27,7 +27,7 @@
|
|||||||
namespace libglabels
|
namespace libglabels
|
||||||
{
|
{
|
||||||
|
|
||||||
Units* XmlUtil::mDefaultUnits;
|
Units XmlUtil::mDefaultUnits;
|
||||||
|
|
||||||
|
|
||||||
XmlUtil::XmlUtil()
|
XmlUtil::XmlUtil()
|
||||||
@@ -42,13 +42,13 @@ namespace libglabels
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const Units* XmlUtil::defaultUnits()
|
Units XmlUtil::defaultUnits()
|
||||||
{
|
{
|
||||||
return mDefaultUnits;
|
return mDefaultUnits;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void XmlUtil::setDefaultUnits( Units* defaultUnits )
|
void XmlUtil::setDefaultUnits( const Units& defaultUnits )
|
||||||
{
|
{
|
||||||
mDefaultUnits = defaultUnits;
|
mDefaultUnits = defaultUnits;
|
||||||
}
|
}
|
||||||
@@ -210,60 +210,61 @@ namespace libglabels
|
|||||||
return default_value;
|
return default_value;
|
||||||
}
|
}
|
||||||
|
|
||||||
Units* units = Units::fromId( unitsString );
|
Units units = Units::fromId( unitsString );
|
||||||
|
|
||||||
return value* units->pointsPerUnit();
|
return value * units.pointsPerUnit();
|
||||||
}
|
}
|
||||||
|
|
||||||
return default_value;
|
return default_value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void XmlUtil::setStringAttr( const QDomElement& node,
|
void XmlUtil::setStringAttr( QDomElement& node,
|
||||||
const QString& name,
|
const QString& name,
|
||||||
const QString& value )
|
const QString& value )
|
||||||
{
|
{
|
||||||
// TODO
|
node.setAttribute( name, value );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void XmlUtil::setDoubleAttr( const QDomElement& node,
|
void XmlUtil::setDoubleAttr( QDomElement& node,
|
||||||
const QString& name,
|
const QString& name,
|
||||||
double value )
|
double value )
|
||||||
{
|
{
|
||||||
// TODO
|
node.setAttribute( name, QString::number(value) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void XmlUtil::setBoolAttr( const QDomElement& node,
|
void XmlUtil::setBoolAttr( QDomElement& node,
|
||||||
const QString& name,
|
const QString& name,
|
||||||
bool value )
|
bool value )
|
||||||
{
|
{
|
||||||
// TODO
|
node.setAttribute( name, value ? "true" : "false" );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void XmlUtil::setIntAttr( const QDomElement& node,
|
void XmlUtil::setIntAttr( QDomElement& node,
|
||||||
const QString& name,
|
const QString& name,
|
||||||
int value )
|
int value )
|
||||||
{
|
{
|
||||||
// TODO
|
node.setAttribute( name, QString::number(value) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void XmlUtil::setUIntAttr( const QDomElement& node,
|
void XmlUtil::setUIntAttr( QDomElement& node,
|
||||||
const QString& name,
|
const QString& name,
|
||||||
uint32_t value )
|
uint32_t value )
|
||||||
{
|
{
|
||||||
// TODO
|
node.setAttribute( name, "0x" + QString::number(value, 16) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void XmlUtil::setLengthAttr( const QDomElement& node,
|
void XmlUtil::setLengthAttr( QDomElement& node,
|
||||||
const QString& name,
|
const QString& name,
|
||||||
double value )
|
double value )
|
||||||
{
|
{
|
||||||
// TODO
|
value *= mDefaultUnits.unitsPerPoint();
|
||||||
|
node.setAttribute( name, QString::number(value) + mDefaultUnits.id() );
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+25
-25
@@ -41,8 +41,8 @@ namespace libglabels
|
|||||||
|
|
||||||
static void init();
|
static void init();
|
||||||
|
|
||||||
static const Units* defaultUnits();
|
static Units defaultUnits();
|
||||||
static void setDefaultUnits( Units* defaultUnits );
|
static void setDefaultUnits( const Units& defaultUnits );
|
||||||
|
|
||||||
static QString getStringAttr( const QDomElement& node,
|
static QString getStringAttr( const QDomElement& node,
|
||||||
const QString& name,
|
const QString& name,
|
||||||
@@ -72,32 +72,32 @@ namespace libglabels
|
|||||||
const QString& name,
|
const QString& name,
|
||||||
double default_value );
|
double default_value );
|
||||||
|
|
||||||
static void setStringAttr( const QDomElement& node,
|
static void setStringAttr( QDomElement& node,
|
||||||
const QString& name,
|
|
||||||
const QString& value );
|
|
||||||
|
|
||||||
static void setDoubleAttr( const QDomElement& node,
|
|
||||||
const QString& name,
|
|
||||||
double value );
|
|
||||||
|
|
||||||
static void setBoolAttr( const QDomElement& node,
|
|
||||||
const QString& name,
|
|
||||||
bool value );
|
|
||||||
|
|
||||||
static void setIntAttr( const QDomElement& node,
|
|
||||||
const QString& name,
|
|
||||||
int value );
|
|
||||||
|
|
||||||
static void setUIntAttr( const QDomElement& node,
|
|
||||||
const QString& name,
|
|
||||||
uint32_t value );
|
|
||||||
|
|
||||||
static void setLengthAttr( const QDomElement& node,
|
|
||||||
const QString& name,
|
const QString& name,
|
||||||
double value );
|
const QString& value );
|
||||||
|
|
||||||
|
static void setDoubleAttr( QDomElement& node,
|
||||||
|
const QString& name,
|
||||||
|
double value );
|
||||||
|
|
||||||
|
static void setBoolAttr( QDomElement& node,
|
||||||
|
const QString& name,
|
||||||
|
bool value );
|
||||||
|
|
||||||
|
static void setIntAttr( QDomElement& node,
|
||||||
|
const QString& name,
|
||||||
|
int value );
|
||||||
|
|
||||||
|
static void setUIntAttr( QDomElement& node,
|
||||||
|
const QString& name,
|
||||||
|
uint32_t value );
|
||||||
|
|
||||||
|
static void setLengthAttr( QDomElement& node,
|
||||||
|
const QString& name,
|
||||||
|
double value );
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static Units* mDefaultUnits;
|
static Units mDefaultUnits;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user