summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius Kintel <marius@kintel.net>2012-01-25 02:11:12 (GMT)
committerMarius Kintel <marius@kintel.net>2012-01-25 02:11:12 (GMT)
commiteff1f7f8c91cee34c584a89c5d09e401c609f93e (patch)
tree543ae3bd3587dd3a97fbaa660ad9aaceb5a3823f
parent16c05eb533f94799a80f5b98c01e952e1cfe337b (diff)
Ported printutils away from Qt
-rw-r--r--src/CGALCache.cc10
-rw-r--r--src/CGALEvaluator.cc8
-rw-r--r--src/CGAL_Nef_polyhedron.cc2
-rw-r--r--src/PolySetCGALEvaluator.cc20
-rw-r--r--src/PolySetCache.cc4
-rw-r--r--src/PolySetEvaluator.cc2
-rw-r--r--src/cache.h2
-rw-r--r--src/cgalutils.cc2
-rw-r--r--src/color.cc5
-rw-r--r--src/context.cc16
-rw-r--r--src/control.cc2
-rw-r--r--src/csgtermnormalizer.cc4
-rw-r--r--src/dxfdata.cc14
-rw-r--r--src/dxfdim.cc8
-rw-r--r--src/dxftess-cgal.cc2
-rw-r--r--src/dxftess-glu.cc18
-rw-r--r--src/export.cc4
-rw-r--r--src/import.cc8
-rw-r--r--src/lexer.l2
-rw-r--r--src/linearextrude.cc4
-rw-r--r--src/mainwin.cc78
-rw-r--r--src/module.cc2
-rw-r--r--src/openscad.cc8
-rw-r--r--src/parser.y8
-rw-r--r--src/primitives.cc6
-rw-r--r--src/printutils.cc1
-rw-r--r--src/printutils.h10
-rw-r--r--src/projection.cc2
-rw-r--r--src/rotateextrude.cc4
-rw-r--r--src/surface.cc4
-rw-r--r--tests/regression/echotest/dim-all-expected.txt16
31 files changed, 137 insertions, 139 deletions
diff --git a/src/CGALCache.cc b/src/CGALCache.cc
index 8a92082..1fc864a 100644
--- a/src/CGALCache.cc
+++ b/src/CGALCache.cc
@@ -12,7 +12,7 @@ const CGAL_Nef_polyhedron &CGALCache::get(const std::string &id) const
{
const CGAL_Nef_polyhedron &N = *this->cache[id];
#ifdef DEBUG
- PRINTF("CGAL Cache hit: %s (%d bytes)", id.substr(0, 40).c_str(), N.weight());
+ PRINTB("CGAL Cache hit: %s (%d bytes)", id.substr(0, 40) % N.weight());
#endif
return N;
}
@@ -21,8 +21,8 @@ bool CGALCache::insert(const std::string &id, const CGAL_Nef_polyhedron &N)
{
bool inserted = this->cache.insert(id, new CGAL_Nef_polyhedron(N), N.weight());
#ifdef DEBUG
- if (inserted) PRINTF("CGAL Cache insert: %s (%d bytes)", id.substr(0, 40).c_str(), N.weight());
- else PRINTF("CGAL Cache insert failed: %s (%d bytes)", id.substr(0, 40).c_str(), N.weight());
+ if (inserted) PRINTB("CGAL Cache insert: %s (%d bytes)", id.substr(0, 40) % N.weight());
+ else PRINTB("CGAL Cache insert failed: %s (%d bytes)", id.substr(0, 40) % N.weight());
#endif
return inserted;
}
@@ -44,6 +44,6 @@ void CGALCache::clear()
void CGALCache::print()
{
- PRINTF("CGAL Polyhedrons in cache: %d", this->cache.size());
- PRINTF("CGAL cache size in bytes: %d", this->cache.totalCost());
+ PRINTB("CGAL Polyhedrons in cache: %d", this->cache.size());
+ PRINTB("CGAL cache size in bytes: %d", this->cache.totalCost());
}
diff --git a/src/CGALEvaluator.cc b/src/CGALEvaluator.cc
index bbf8cca..d44b5a9 100644
--- a/src/CGALEvaluator.cc
+++ b/src/CGALEvaluator.cc
@@ -87,7 +87,7 @@ void CGALEvaluator::process(CGAL_Nef_polyhedron &target, const CGAL_Nef_polyhedr
catch (CGAL::Assertion_exception e) {
// union && difference assert triggered by testdata/scad/bugs/rotate-diff-nonmanifold-crash.scad
std::string opstr = op == CGE_UNION ? "union" : op == CGE_INTERSECTION ? "intersection" : op == CGE_DIFFERENCE ? "difference" : op == CGE_MINKOWSKI ? "minkowski" : "UNKNOWN";
- PRINTF("CGAL error in CGAL_Nef_polyhedron's %s operator: %s", opstr.c_str(), e.what());
+ PRINTB("CGAL error in CGAL_Nef_polyhedron's %s operator: %s", opstr % e.what());
// Minkowski errors can result in corrupt polyhedrons
if (op == CGE_MINKOWSKI) {
@@ -357,7 +357,7 @@ void CGALEvaluator::addToParent(const State &state, const AbstractNode &node, co
// Root node, insert into cache
if (!isCached(node)) {
if (!CGALCache::instance()->insert(this->tree.getIdString(node), N)) {
- PRINTF("WARNING: CGAL Evaluator: Root node didn't fit into cache");
+ PRINT("WARNING: CGAL Evaluator: Root node didn't fit into cache");
}
}
this->root = N;
@@ -583,7 +583,7 @@ CGAL_Nef_polyhedron CGALEvaluator::evaluateCGALMesh(const PolySet &ps)
pr.reduce();
int numpolygons_after = pr.polygons.size();
if (numpolygons_after < numpolygons_before) {
- PRINTF("reduce polygons: %d -> %d", numpolygons_before, numpolygons_after);
+ PRINTB("reduce polygons: %d -> %d", numpolygons_before % numpolygons_after);
}
return CGAL_Nef_polyhedron(pr.toNef());
#endif
@@ -632,7 +632,7 @@ CGAL_Nef_polyhedron CGALEvaluator::evaluateCGALMesh(const PolySet &ps)
}
}
catch (CGAL::Assertion_exception e) {
- PRINTF("CGAL error in CGAL_Nef_polyhedron3(): %s", e.what());
+ PRINTB("CGAL error in CGAL_Nef_polyhedron3(): %s", e.what());
}
CGAL::set_error_behaviour(old_behaviour);
return CGAL_Nef_polyhedron(N);
diff --git a/src/CGAL_Nef_polyhedron.cc b/src/CGAL_Nef_polyhedron.cc
index 0f1e7ca..04783e5 100644
--- a/src/CGAL_Nef_polyhedron.cc
+++ b/src/CGAL_Nef_polyhedron.cc
@@ -100,7 +100,7 @@ PolySet *CGAL_Nef_polyhedron::convertToPolyset()
ps = createPolySetFromPolyhedron(P);
}
catch (CGAL::Precondition_exception e) {
- PRINTF("CGAL error in CGAL_Nef_polyhedron::convertToPolyset(): %s", e.what());
+ PRINTB("CGAL error in CGAL_Nef_polyhedron::convertToPolyset(): %s", e.what());
}
CGAL::set_error_behaviour(old_behaviour);
}
diff --git a/src/PolySetCGALEvaluator.cc b/src/PolySetCGALEvaluator.cc
index 3cd6005..c3f4774 100644
--- a/src/PolySetCGALEvaluator.cc
+++ b/src/PolySetCGALEvaluator.cc
@@ -85,7 +85,7 @@ PolySet *PolySetCGALEvaluator::evaluatePolySet(const ProjectionNode &node)
// N.p3 *= CGAL_Nef_polyhedron3(CGAL_Plane(0, 0, 1, 0), CGAL_Nef_polyhedron3::INCLUDED);
sum *= Ncube;
if (!sum.p3->is_simple()) {
- PRINTF("WARNING: Body of projection(cut = true) isn't valid 2-manifold! Modify your design..");
+ PRINT("WARNING: Body of projection(cut = true) isn't valid 2-manifold! Modify your design..");
goto cant_project_non_simple_polyhedron;
}
@@ -116,7 +116,7 @@ PolySet *PolySetCGALEvaluator::evaluatePolySet(const ProjectionNode &node)
else
{
if (!sum.p3->is_simple()) {
- PRINTF("WARNING: Body of projection(cut = false) isn't valid 2-manifold! Modify your design..");
+ PRINT("WARNING: Body of projection(cut = false) isn't valid 2-manifold! Modify your design..");
goto cant_project_non_simple_polyhedron;
}
@@ -302,15 +302,15 @@ PolySet *PolySetCGALEvaluator::extrudeDxfData(const LinearExtrudeNode &node, Dxf
if (dxf.paths[i].is_closed)
continue;
if (first_open_path) {
- PRINTF("WARNING: Open paths in dxf_linear_extrude(file = \"%s\", layer = \"%s\"):",
- node.filename.c_str(), node.layername.c_str());
+ PRINTB("WARNING: Open paths in dxf_linear_extrude(file = \"%s\", layer = \"%s\"):",
+ node.filename % node.layername);
first_open_path = false;
}
- PRINTF(" %9.5f %10.5f ... %10.5f %10.5f",
- dxf.points[dxf.paths[i].indices.front()][0] / node.scale + node.origin_x,
- dxf.points[dxf.paths[i].indices.front()][1] / node.scale + node.origin_y,
- dxf.points[dxf.paths[i].indices.back()][0] / node.scale + node.origin_x,
- dxf.points[dxf.paths[i].indices.back()][1] / node.scale + node.origin_y);
+ PRINTB(" %9.5f %10.5f ... %10.5f %10.5f",
+ (dxf.points[dxf.paths[i].indices.front()][0] / node.scale + node.origin_x) %
+ (dxf.points[dxf.paths[i].indices.front()][1] / node.scale + node.origin_y) %
+ (dxf.points[dxf.paths[i].indices.back()][0] / node.scale + node.origin_x) %
+ (dxf.points[dxf.paths[i].indices.back()][1] / node.scale + node.origin_y));
}
@@ -397,7 +397,7 @@ PolySet *PolySetCGALEvaluator::evaluatePolySet(const RenderNode &node)
PolySet *ps = NULL;
if (!N.empty()) {
if (N.dim == 3 && !N.p3->is_simple()) {
- PRINTF("WARNING: Body of render() isn't valid 2-manifold!");
+ PRINT("WARNING: Body of render() isn't valid 2-manifold!");
}
else {
ps = N.convertToPolyset();
diff --git a/src/PolySetCache.cc b/src/PolySetCache.cc
index cff4e88..04f4127 100644
--- a/src/PolySetCache.cc
+++ b/src/PolySetCache.cc
@@ -21,8 +21,8 @@ void PolySetCache::setMaxSize(size_t limit)
void PolySetCache::print()
{
- PRINTF("PolySets in cache: %d", this->cache.size());
- PRINTF("PolySet cache size in bytes: %d", this->cache.totalCost());
+ PRINTB("PolySets in cache: %d", this->cache.size());
+ PRINTB("PolySet cache size in bytes: %d", this->cache.totalCost());
}
PolySetCache::cache_entry::cache_entry(const shared_ptr<PolySet> &ps) : ps(ps)
diff --git a/src/PolySetEvaluator.cc b/src/PolySetEvaluator.cc
index 537dc9d..e8a2c0c 100644
--- a/src/PolySetEvaluator.cc
+++ b/src/PolySetEvaluator.cc
@@ -24,7 +24,7 @@ shared_ptr<PolySet> PolySetEvaluator::getPolySet(const AbstractNode &node, bool
if (PolySetCache::instance()->contains(cacheid)) {
#ifdef DEBUG
// For cache debugging
- PRINTF("PolySetCache hit: %s", cacheid.substr(0, 40).c_str());
+ PRINTB("PolySetCache hit: %s", cacheid.substr(0, 40));
#endif
return PolySetCache::instance()->get(cacheid);
}
diff --git a/src/cache.h b/src/cache.h
index 27eb1f9..ecf0c8b 100644
--- a/src/cache.h
+++ b/src/cache.h
@@ -178,7 +178,7 @@ void Cache<Key,T>::trim(int m)
Node *u = n;
n = n->p;
#ifdef DEBUG
- PRINTF("Trimming cache: %s (%d bytes)", str(boost::format("%1%") % *u->keyPtr).c_str(), u->c);
+ PRINTB("Trimming cache: %1% (%d bytes)", *u->keyPtr % u->c);
#endif
unlink(*u);
}
diff --git a/src/cgalutils.cc b/src/cgalutils.cc
index 64782fb..e39c495 100644
--- a/src/cgalutils.cc
+++ b/src/cgalutils.cc
@@ -137,7 +137,7 @@ CGAL_Polyhedron *createPolyhedronFromPolySet(const PolySet &ps)
P->delegate(builder);
}
catch (CGAL::Assertion_exception e) {
- PRINTF("CGAL error in CGAL_Build_PolySet: %s", e.what());
+ PRINTB("CGAL error in CGAL_Build_PolySet: %s", e.what());
delete P;
P = NULL;
}
diff --git a/src/color.cc b/src/color.cc
index 9224fd4..1d3eb3e 100644
--- a/src/color.cc
+++ b/src/color.cc
@@ -47,7 +47,6 @@ private:
};
#include "colormap.h"
-
AbstractNode *ColorModule::evaluate(const Context *ctx, const ModuleInstantiation *inst) const
{
ColorNode *node = new ColorNode(inst);
@@ -77,8 +76,8 @@ AbstractNode *ColorModule::evaluate(const Context *ctx, const ModuleInstantiatio
node->color[1] = color[1]/255;
node->color[2] = color[2]/255;
} else {
- PRINTF_NOCACHE("WARNING: Color name \"%s\" unknown. Please see", colorname.c_str());
- PRINTF_NOCACHE("WARNING: http://en.wikipedia.org/wiki/Web_colors");
+ PRINTB_NOCACHE("WARNING: Color name \"%s\" unknown. Please see", colorname);
+ PRINT_NOCACHE("WARNING: http://en.wikipedia.org/wiki/Web_colors");
}
}
Value alpha = c.lookup_variable("alpha");
diff --git a/src/context.cc b/src/context.cc
index 8d7b903..b9e685c 100644
--- a/src/context.cc
+++ b/src/context.cc
@@ -101,10 +101,12 @@ void Context::set_variable(const std::string &name, const Value &value)
void Context::set_constant(const std::string &name, const Value &value)
{
- if (this->constants.find(name) != this->constants.end())
- PRINTF("WARNING: Attempt to modify constant '%s'.",name.c_str());
- else
+ if (this->constants.find(name) != this->constants.end()) {
+ PRINTB("WARNING: Attempt to modify constant '%s'.", name);
+ }
+ else {
this->constants[name] = value;
+ }
}
Value Context::lookup_variable(const std::string &name, bool silent) const
@@ -124,7 +126,7 @@ Value Context::lookup_variable(const std::string &name, bool silent) const
if (this->parent)
return this->parent->lookup_variable(name, silent);
if (!silent)
- PRINTF("WARNING: Ignoring unknown variable '%s'.", name.c_str());
+ PRINTB("WARNING: Ignoring unknown variable '%s'.", name);
return Value();
}
@@ -144,7 +146,7 @@ Value Context::evaluate_function(const std::string &name,
}
if (this->parent)
return this->parent->evaluate_function(name, argnames, argvalues);
- PRINTF("WARNING: Ignoring unknown function '%s'.", name.c_str());
+ PRINTB("WARNING: Ignoring unknown function '%s'.", name);
return Value();
}
@@ -154,7 +156,7 @@ AbstractNode *Context::evaluate_module(const ModuleInstantiation &inst) const
AbstractModule *m = this->modules_p->find(inst.name())->second;
std::string replacement = Builtins::instance()->isDeprecated(inst.name());
if (!replacement.empty()) {
- PRINTF("DEPRECATED: The %s() module will be removed in future releases. Use %s() instead.", inst.name().c_str(), replacement.c_str());
+ PRINTB("DEPRECATED: The %s() module will be removed in future releases. Use %s() instead.", inst.name() % replacement);
}
return m->evaluate(this, &inst);
}
@@ -167,7 +169,7 @@ AbstractNode *Context::evaluate_module(const ModuleInstantiation &inst) const
}
}
if (this->parent) return this->parent->evaluate_module(inst);
- PRINTF("WARNING: Ignoring unknown module '%s'.", inst.name().c_str());
+ PRINTB("WARNING: Ignoring unknown module '%s'.", inst.name());
return NULL;
}
diff --git a/src/control.cc b/src/control.cc
index 2275c79..1d87551 100644
--- a/src/control.cc
+++ b/src/control.cc
@@ -132,7 +132,7 @@ AbstractNode *ControlModule::evaluate(const Context*, const ModuleInstantiation
if (!inst->argnames[i].empty()) msg << inst->argnames[i] << " = ";
msg << inst->argvalues[i];
}
- PRINTF("%s", msg.str().c_str());
+ PRINTB("%s", msg.str());
}
if (type == ASSIGN)
diff --git a/src/csgtermnormalizer.cc b/src/csgtermnormalizer.cc
index c4caa8f..7a59aa1 100644
--- a/src/csgtermnormalizer.cc
+++ b/src/csgtermnormalizer.cc
@@ -13,10 +13,10 @@ shared_ptr<CSGTerm> CSGTermNormalizer::normalize(const shared_ptr<CSGTerm> &root
int num = count(temp);
#ifdef DEBUG
- PRINTF("Normalize count: %d\n", num);
+ PRINTB("Normalize count: %d\n", num);
#endif
if (num > limit) {
- PRINTF("WARNING: Normalized tree is growing past %d elements. Aborting normalization.\n", limit);
+ PRINTB("WARNING: Normalized tree is growing past %d elements. Aborting normalization.\n", limit);
return root;
}
}
diff --git a/src/dxfdata.cc b/src/dxfdata.cc
index 2bc21e2..52493ac 100644
--- a/src/dxfdata.cc
+++ b/src/dxfdata.cc
@@ -77,7 +77,7 @@ DxfData::DxfData(double fn, double fs, double fa,
std::ifstream stream(filename.c_str());
if (!stream.good()) {
- PRINTF("WARNING: Can't open DXF file `%s'.", filename.c_str());
+ PRINTB("WARNING: Can't open DXF file '%s'.", filename);
return;
}
@@ -141,7 +141,7 @@ DxfData::DxfData(double fn, double fs, double fa,
}
catch (boost::bad_lexical_cast &blc) {
if (!stream.eof()) {
- PRINTF("WARNING: Illegal ID '%s' in `%s'", id_str.c_str(), filename.c_str());
+ PRINTB("WARNING: Illegal ID '%s' in `%s'", id_str % filename);
}
break;
}
@@ -380,17 +380,17 @@ DxfData::DxfData(double fn, double fs, double fa,
}
}
catch (boost::bad_lexical_cast &blc) {
- PRINTF("WARNING: Illegal value %s in `%s'", data.c_str(), filename.c_str());
+ PRINTB("WARNING: Illegal value %s in '%s'", data % filename);
}
}
BOOST_FOREACH(const EntityList::value_type &i, unsupported_entities_list) {
if (layername.empty()) {
- PRINTF("WARNING: Unsupported DXF Entity `%s' (%x) in `%s'.",
- i.first.c_str(), i.second, QuotedString(QDir::current().relativeFilePath(QString::fromStdString(filename)).toStdString()).c_str());
+ PRINTB("WARNING: Unsupported DXF Entity '%s' (%x) in %s.",
+ i.first % i.second % QuotedString(QDir::current().relativeFilePath(QString::fromStdString(filename)).toStdString()));
} else {
- PRINTF("WARNING: Unsupported DXF Entity `%s' (%x) in layer `%s' of `%s'.",
- i.first.c_str(), i.second, layername.c_str(), QuotedString(QDir::current().relativeFilePath(QString::fromStdString(filename)).toStdString()).c_str());
+ PRINTB("WARNING: Unsupported DXF Entity '%s' (%x) in layer '%s' of %s.",
+ i.first % i.second % layername % QuotedString(QDir::current().relativeFilePath(QString::fromStdString(filename)).toStdString()));
}
}
diff --git a/src/dxfdim.cc b/src/dxfdim.cc
index 44b5d73..664fdb5 100644
--- a/src/dxfdim.cc
+++ b/src/dxfdim.cc
@@ -115,11 +115,13 @@ Value builtin_dxf_dim(const Context *ctx, const std::vector<std::string> &argnam
return dxf_dim_cache[key] = Value((d->type & 64) ? d->coords[3][0] : d->coords[3][1]);
}
- PRINTF("WARNING: Dimension `%s' in `%s', layer `%s' has unsupported type!", name.c_str(), filename.c_str(), layername.c_str());
+ PRINTB("WARNING: Dimension '%s' in '%s', layer '%s' has unsupported type!",
+ name % filename % layername);
return Value();
}
- PRINTF("WARNING: Can't find dimension `%s' in `%s', layer `%s'!", name.c_str(), filename.c_str(), layername.c_str());
+ PRINTB("WARNING: Can't find dimension '%s' in '%s', layer '%s'!",
+ name % filename % layername);
return Value();
}
@@ -184,7 +186,7 @@ Value builtin_dxf_cross(const Context *ctx, const std::vector<std::string> &argn
}
}
- PRINTF("WARNING: Can't find cross in `%s', layer `%s'!", filename.c_str(), layername.c_str());
+ PRINTB("WARNING: Can't find cross in '%s', layer '%s'!", filename % layername);
return Value();
}
diff --git a/src/dxftess-cgal.cc b/src/dxftess-cgal.cc
index 5b4e953..d1e79ad 100644
--- a/src/dxftess-cgal.cc
+++ b/src/dxftess-cgal.cc
@@ -166,7 +166,7 @@ void dxf_tesselate(PolySet *ps, DxfData &dxf, double rot, bool up, bool /* do_tr
}
catch (CGAL::Assertion_exception e) {
- PRINTF("CGAL error in dxf_tesselate(): %s", e.what());
+ PRINTB("CGAL error in dxf_tesselate(): %s", e.what());
CGAL::set_error_behaviour(old_behaviour);
return;
}
diff --git a/src/dxftess-glu.cc b/src/dxftess-glu.cc
index 4207bcd..1a8bfa5 100644
--- a/src/dxftess-glu.cc
+++ b/src/dxftess-glu.cc
@@ -109,45 +109,45 @@ static void STDCALL tess_end(void)
static void STDCALL tess_error(GLenum errno)
{
fprintf(stderr, "GLU tesselation error %s", gluErrorString(errno));
- PRINTF("GLU tesselation error %s", gluErrorString(errno));
+ PRINTB("GLU tesselation error %s", gluErrorString(errno));
}
static void STDCALL tess_begin_data()
{
- PRINTF("GLU tesselation BEGIN_DATA\n");
+ PRINT("GLU tesselation BEGIN_DATA\n");
}
static void STDCALL tess_edge_flag(GLboolean flag)
{
-// PRINTF("GLU tesselation EDGE_FLAG\n");
+// PRINT("GLU tesselation EDGE_FLAG\n");
}
static void STDCALL tess_edge_flag_data(GLboolean flag, void *polygon_data)
{
- PRINTF("GLU tesselation EDGE_FLAG_DATA\n");
+ PRINT("GLU tesselation EDGE_FLAG_DATA\n");
}
static void STDCALL tess_vertex_data(void *vertex_data, void *polygon_data)
{
- PRINTF("GLU tesselation VERTEX_DATA\n");
+ PRINT("GLU tesselation VERTEX_DATA\n");
}
static void STDCALL tess_end_data(void *polygon_data)
{
- PRINTF("GLU tesselation END_DATA\n");
+ PRINT("GLU tesselation END_DATA\n");
}
static void STDCALL tess_combine(GLdouble coords[3], void *vertex_data[4],
GLfloat weight[4], void **outData )
{
- PRINTF("GLU tesselation COMBINE\n");
+ PRINT("GLU tesselation COMBINE\n");
}
static void STDCALL tess_combine_data(GLdouble coords[3], void *vertex_data[4],
GLfloat weight[4], void **outData,
void *polygon_data)
{
- PRINTF("GLU tesselation COMBINE_DATA\n");
+ PRINT("GLU tesselation COMBINE_DATA\n");
}
static void STDCALL tess_error_data(GLenum errno, void *polygon_data )
{
- PRINTF("GLU tesselation ERROR_DATA\n");
+ PRINT("GLU tesselation ERROR_DATA\n");
}
static bool point_on_line(double *p1, double *p2, double *p3)
diff --git a/src/export.cc b/src/export.cc
index 9414ebe..6dce699 100644
--- a/src/export.cc
+++ b/src/export.cc
@@ -113,7 +113,7 @@ void export_stl(CGAL_Nef_polyhedron *root_N, std::ostream &output)
}
catch (CGAL::Assertion_exception e) {
- PRINTF("CGAL error in CGAL_Nef_polyhedron3::convert_to_Polyhedron(): %s", e.what());
+ PRINTB("CGAL error in CGAL_Nef_polyhedron3::convert_to_Polyhedron(): %s", e.what());
}
CGAL::set_error_behaviour(old_behaviour);
}
@@ -127,7 +127,7 @@ void export_off(CGAL_Nef_polyhedron *root_N, std::ostream &output)
output << P;
}
catch (CGAL::Assertion_exception e) {
- PRINTF("CGAL error in CGAL_Nef_polyhedron3::convert_to_Polyhedron(): %s", e.what());
+ PRINTB("CGAL error in CGAL_Nef_polyhedron3::convert_to_Polyhedron(): %s", e.what());
}
CGAL::set_error_behaviour(old_behaviour);
}
diff --git a/src/import.cc b/src/import.cc
index 266aa4e..597ecfb 100644
--- a/src/import.cc
+++ b/src/import.cc
@@ -123,7 +123,7 @@ PolySet *ImportNode::evaluate_polyset(class PolySetEvaluator *) const
handle_dep(this->filename);
std::ifstream f(this->filename.c_str(), std::ios::in | std::ios::binary);
if (!f.good()) {
- PRINTF("WARNING: Can't open import file `%s'.", this->filename.c_str());
+ PRINTB("WARNING: Can't open import file '%s'.", this->filename);
return p;
}
@@ -160,7 +160,7 @@ PolySet *ImportNode::evaluate_polyset(class PolySetEvaluator *) const
}
}
catch (boost::bad_lexical_cast &blc) {
- PRINTF("WARNING: Can't parse vertex line `%s'.", line.c_str());
+ PRINTB("WARNING: Can't parse vertex line '%s'.", line);
i = 10;
continue;
}
@@ -215,7 +215,7 @@ PolySet *ImportNode::evaluate_polyset(class PolySetEvaluator *) const
p = createPolySetFromPolyhedron(poly);
#else
- PRINTF("WARNING: OFF import requires CGAL.");
+ PRINT("WARNING: OFF import requires CGAL.");
#endif
}
@@ -229,7 +229,7 @@ PolySet *ImportNode::evaluate_polyset(class PolySetEvaluator *) const
}
else
{
- PRINTF("ERROR: Unsupported file format while trying to import file '%s'", this->filename.c_str());
+ PRINTB("ERROR: Unsupported file format while trying to import file '%s'", this->filename);
}
if (p) p->convexity = this->convexity;
diff --git a/src/lexer.l b/src/lexer.l
index 77308a0..7f6586a 100644
--- a/src/lexer.l
+++ b/src/lexer.l
@@ -218,7 +218,7 @@ void includefile()
handle_dep(boosty::absolute(finfo).string());
yyin = fopen(boosty::absolute(finfo).string().c_str(), "r");
if (!yyin) {
- PRINTF("WARNING: Can't open input file `%s'.", filename.c_str());
+ PRINTB("WARNING: Can't open input file '%s'.", filename);
path_stack.pop_back();
return;
}
diff --git a/src/linearextrude.cc b/src/linearextrude.cc
index 775eeb0..4f5fd14 100644
--- a/src/linearextrude.cc
+++ b/src/linearextrude.cc
@@ -71,7 +71,7 @@ AbstractNode *LinearExtrudeModule::evaluate(const Context *ctx, const ModuleInst
Value slices = c.lookup_variable("slices", true);
if (!file.text.empty()) {
- PRINTF("DEPRECATED: Support for reading files in linear_extrude will be removed in future releases. Use a child import() instead.");
+ PRINT("DEPRECATED: Support for reading files in linear_extrude will be removed in future releases. Use a child import() instead.");
node->filename = c.getAbsolutePath(file.text);
}
@@ -115,7 +115,7 @@ AbstractNode *LinearExtrudeModule::evaluate(const Context *ctx, const ModuleInst
class PolySet *LinearExtrudeNode::evaluate_polyset(PolySetEvaluator *evaluator) const
{
if (!evaluator) {
- PRINTF("WARNING: No suitable PolySetEvaluator found for %s module!", this->name().c_str());
+ PRINTB("WARNING: No suitable PolySetEvaluator found for %s module!", this->name());
return NULL;
}
diff --git a/src/mainwin.cc b/src/mainwin.cc
index 20f3c7c..ff6ce3e 100644
--- a/src/mainwin.cc
+++ b/src/mainwin.cc
@@ -575,11 +575,11 @@ void MainWindow::load()
if (!this->fileName.isEmpty()) {
QFile file(this->fileName);
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
- PRINTA("Failed to open file: %1 (%2)", this->fileName, file.errorString());
+ PRINTB("Failed to open file: %s (%s)", this->fileName.toStdString() % file.errorString().toStdString());
}
else {
QString text = QTextStream(&file).readAll();
- PRINTA("Loaded design `%1'.", this->fileName);
+ PRINTB("Loaded design '%s'.", this->fileName.toStdString());
editor->setPlainText(text);
}
}
@@ -788,7 +788,7 @@ void MainWindow::compileCSG(bool procevents)
if (highlight_terms.size() > 0)
{
- PRINTF("Compiling highlights (%zu CSG Trees)...", highlight_terms.size());
+ PRINTB("Compiling highlights (%zu CSG Trees)...", highlight_terms.size());
if (procevents)
QApplication::processEvents();
@@ -801,7 +801,7 @@ void MainWindow::compileCSG(bool procevents)
if (background_terms.size() > 0)
{
- PRINTF("Compiling background (%zu CSG Trees)...", background_terms.size());
+ PRINTB("Compiling background (%zu CSG Trees)...", background_terms.size());
if (procevents)
QApplication::processEvents();
@@ -813,11 +813,11 @@ void MainWindow::compileCSG(bool procevents)
}
if (root_chain->polysets.size() > Preferences::inst()->getValue("advanced/openCSGLimit").toUInt()) {
- PRINTF("WARNING: Normalized tree has %d elements!", int(root_chain->polysets.size()));
- PRINTF("WARNING: OpenCSG rendering has been disabled.");
+ PRINTB("WARNING: Normalized tree has %d elements!", root_chain->polysets.size());
+ PRINT("WARNING: OpenCSG rendering has been disabled.");
}
else {
- PRINTF("Normalized CSG tree has %d elements", int(root_chain->polysets.size()));
+ PRINTB("Normalized CSG tree has %d elements", root_chain->polysets.size());
this->opencsgRenderer = new OpenCSGRenderer(this->root_chain,
this->highlights_chain,
this->background_chain,
@@ -828,7 +828,7 @@ void MainWindow::compileCSG(bool procevents)
this->background_chain);
PRINT("CSG generation finished.");
int s = t.elapsed() / 1000;
- PRINTF("Total rendering time: %d hours, %d minutes, %d seconds", s / (60*60), (s / 60) % 60, s % 60);
+ PRINTB("Total rendering time: %d hours, %d minutes, %d seconds", (s / (60*60)) % ((s / 60) % 60) % (s % 60));
if (procevents)
QApplication::processEvents();
}
@@ -943,11 +943,11 @@ void MainWindow::actionSave()
setCurrentOutput();
QFile file(this->fileName);
if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text)) {
- PRINTA("Failed to open file for writing: %1 (%2)", this->fileName, file.errorString());
+ PRINTB("Failed to open file for writing: %s (%s)", this->fileName.toStdString() % file.errorString().toStdString());
}
else {
QTextStream(&file) << this->editor->toPlainText();
- PRINTA("Saved design `%1'.", this->fileName);
+ PRINTB("Saved design '%s'.", this->fileName.toStdString());
this->editor->setContentModified(false);
}
clearCurrentOutput();
@@ -1174,31 +1174,31 @@ void MainWindow::actionRenderCGALDone(CGAL_Nef_polyhedron *root_N)
CGALCache::instance()->print();
if (root_N->dim == 2) {
- PRINTF(" Top level object is a 2D object:");
- PRINTF(" Empty: %6s", root_N->p2->is_empty() ? "yes" : "no");
- PRINTF(" Plane: %6s", root_N->p2->is_plane() ? "yes" : "no");
- PRINTF(" Vertices: %6d", (int)root_N->p2->explorer().number_of_vertices());
- PRINTF(" Halfedges: %6d", (int)root_N->p2->explorer().number_of_halfedges());
- PRINTF(" Edges: %6d", (int)root_N->p2->explorer().number_of_edges());
- PRINTF(" Faces: %6d", (int)root_N->p2->explorer().number_of_faces());
- PRINTF(" FaceCycles: %6d", (int)root_N->p2->explorer().number_of_face_cycles());
- PRINTF(" ConnComp: %6d", (int)root_N->p2->explorer().number_of_connected_components());
+ PRINT(" Top level object is a 2D object:");
+ PRINTB(" Empty: %6s", (root_N->p2->is_empty() ? "yes" : "no"));
+ PRINTB(" Plane: %6s", (root_N->p2->is_plane() ? "yes" : "no"));
+ PRINTB(" Vertices: %6d", root_N->p2->explorer().number_of_vertices());
+ PRINTB(" Halfedges: %6d", root_N->p2->explorer().number_of_halfedges());
+ PRINTB(" Edges: %6d", root_N->p2->explorer().number_of_edges());
+ PRINTB(" Faces: %6d", root_N->p2->explorer().number_of_faces());
+ PRINTB(" FaceCycles: %6d", root_N->p2->explorer().number_of_face_cycles());
+ PRINTB(" ConnComp: %6d", root_N->p2->explorer().number_of_connected_components());
}
if (root_N->dim == 3) {
- PRINTF(" Top level object is a 3D object:");
- PRINTF(" Simple: %6s", root_N->p3->is_simple() ? "yes" : "no");
- PRINTF(" Valid: %6s", root_N->p3->is_valid() ? "yes" : "no");
- PRINTF(" Vertices: %6d", (int)root_N->p3->number_of_vertices());
- PRINTF(" Halfedges: %6d", (int)root_N->p3->number_of_halfedges());
- PRINTF(" Edges: %6d", (int)root_N->p3->number_of_edges());
- PRINTF(" Halffacets: %6d", (int)root_N->p3->number_of_halffacets());
- PRINTF(" Facets: %6d", (int)root_N->p3->number_of_facets());
- PRINTF(" Volumes: %6d", (int)root_N->p3->number_of_volumes());
+ PRINT(" Top level object is a 3D object:");
+ PRINTB(" Simple: %6s", (root_N->p3->is_simple() ? "yes" : "no"));
+ PRINTB(" Valid: %6s", (root_N->p3->is_valid() ? "yes" : "no"));
+ PRINTB(" Vertices: %6d", root_N->p3->number_of_vertices());
+ PRINTB(" Halfedges: %6d", root_N->p3->number_of_halfedges());
+ PRINTB(" Edges: %6d", root_N->p3->number_of_edges());
+ PRINTB(" Halffacets: %6d", root_N->p3->number_of_halffacets());
+ PRINTB(" Facets: %6d", root_N->p3->number_of_facets());
+ PRINTB(" Volumes: %6d", root_N->p3->number_of_volumes());
}
int s = this->progresswidget->elapsedTime() / 1000;
- PRINTF("Total rendering time: %d hours, %d minutes, %d seconds", s / (60*60), (s / 60) % 60, s % 60);
+ PRINTB("Total rendering time: %d hours, %d minutes, %d seconds", (s / (60*60)) % ((s / 60) % 60) % (s % 60));
this->root_N = root_N;
if (!this->root_N->empty()) {
@@ -1313,21 +1313,21 @@ void MainWindow::actionExportSTLorOFF(bool)
this->fileName.isEmpty() ? "Untitled"+suffix : QFileInfo(this->fileName).baseName()+suffix,
stl_mode ? "STL Files (*.stl)" : "OFF Files (*.off)");
if (stl_filename.isEmpty()) {
- PRINTF("No filename specified. %s export aborted.", stl_mode ? "STL" : "OFF");
+ PRINTB("No filename specified. %s export aborted.", (stl_mode ? "STL" : "OFF"));
clearCurrentOutput();
return;
}
std::ofstream fstream(stl_filename.toUtf8());
if (!fstream.is_open()) {
- PRINTA("Can't open file \"%1\" for export", stl_filename);
+ PRINTB("Can't open file \"%s\" for export", stl_filename.toStdString());
}
else {
if (stl_mode) export_stl(this->root_N, fstream);
else export_off(this->root_N, fstream);
fstream.close();
- PRINTF("%s export finished.", stl_mode ? "STL" : "OFF");
+ PRINTB("%s export finished.", (stl_mode ? "STL" : "OFF"));
}
clearCurrentOutput();
@@ -1366,19 +1366,19 @@ void MainWindow::actionExportDXF()
this->fileName.isEmpty() ? "Untitled.dxf" : QFileInfo(this->fileName).baseName()+".dxf",
"DXF Files (*.dxf)");
if (dxf_filename.isEmpty()) {
- PRINTF("No filename specified. DXF export aborted.");
+ PRINT("No filename specified. DXF export aborted.");
clearCurrentOutput();
return;
}
std::ofstream fstream(dxf_filename.toUtf8());
if (!fstream.is_open()) {
- PRINTA("Can't open file \"%s\" for export", dxf_filename);
+ PRINTB("Can't open file \"%s\" for export", dxf_filename.toStdString());
}
else {
export_dxf(this->root_N, fstream);
fstream.close();
- PRINTF("DXF export finished.");
+ PRINT("DXF export finished.");
}
clearCurrentOutput();
@@ -1399,19 +1399,19 @@ void MainWindow::actionExportCSG()
this->fileName.isEmpty() ? "Untitled.csg" : QFileInfo(this->fileName).baseName()+".csg",
"CSG Files (*.csg)");
if (csg_filename.isEmpty()) {
- PRINTF("No filename specified. CSG export aborted.");
+ PRINT("No filename specified. CSG export aborted.");
clearCurrentOutput();
return;
}
std::ofstream fstream(csg_filename.toUtf8());
if (!fstream.is_open()) {
- PRINTA("Can't open file \"%s\" for export", csg_filename);
+ PRINTB("Can't open file \"%s\" for export", csg_filename.toStdString());
}
else {
fstream << this->tree.getString(*this->root_node) << "\n";
fstream.close();
- PRINTF("CSG export finished.");
+ PRINT("CSG export finished.");
}
clearCurrentOutput();
@@ -1425,7 +1425,7 @@ void MainWindow::actionExportImage()
QString img_filename = QFileDialog::getSaveFileName(this,
"Export Image", "", "PNG Files (*.png)");
if (img_filename.isEmpty()) {
- PRINTF("No filename specified. Image export aborted.");
+ PRINT("No filename specified. Image export aborted.");
clearCurrentOutput();
return;
}
diff --git a/src/module.cc b/src/module.cc
index ba0112d..6641ff7 100644
--- a/src/module.cc
+++ b/src/module.cc
@@ -93,7 +93,7 @@ AbstractNode *ModuleInstantiation::evaluate(const Context *ctx) const
{
AbstractNode *node = NULL;
if (this->ctx) {
- PRINTF("WARNING: Ignoring recursive module instantiation of '%s'.", modname.c_str());
+ PRINTB("WARNING: Ignoring recursive module instantiation of '%s'.", modname);
} else {
// FIXME: Casting away const..
ModuleInstantiation *that = (ModuleInstantiation*)this;
diff --git a/src/openscad.cc b/src/openscad.cc
index 9d5e44b..c687372 100644
--- a/src/openscad.cc
+++ b/src/openscad.cc
@@ -292,7 +292,7 @@ int main(int argc, char **argv)
fs::current_path(original_path);
std::ofstream fstream(csg_output_file);
if (!fstream.is_open()) {
- PRINTF("Can't open file \"%s\" for export", csg_output_file);
+ PRINTB("Can't open file \"%s\" for export", csg_output_file);
}
else {
fstream << tree.getString(*root_node) << "\n";
@@ -322,7 +322,7 @@ int main(int argc, char **argv)
}
std::ofstream fstream(stl_output_file);
if (!fstream.is_open()) {
- PRINTF("Can't open file \"%s\" for export", stl_output_file);
+ PRINTB("Can't open file \"%s\" for export", stl_output_file);
}
else {
export_stl(&root_N, fstream);
@@ -341,7 +341,7 @@ int main(int argc, char **argv)
}
std::ofstream fstream(off_output_file);
if (!fstream.is_open()) {
- PRINTF("Can't open file \"%s\" for export", off_output_file);
+ PRINTB("Can't open file \"%s\" for export", off_output_file);
}
else {
export_off(&root_N, fstream);
@@ -356,7 +356,7 @@ int main(int argc, char **argv)
}
std::ofstream fstream(dxf_output_file);
if (!fstream.is_open()) {
- PRINTF("Can't open file \"%s\" for export", dxf_output_file);
+ PRINTB("Can't open file \"%s\" for export", dxf_output_file);
}
else {
export_dxf(&root_N, fstream);
diff --git a/src/parser.y b/src/parser.y
index 7e27bfe..15a754b 100644
--- a/src/parser.y
+++ b/src/parser.y
@@ -559,7 +559,7 @@ int parserlex(void)
void yyerror (char const *s)
{
// FIXME: We leak memory on parser errors...
- PRINTF("Parser error in line %d: %s\n", lexerget_lineno(), s);
+ PRINTB("Parser error in line %d: %s\n", lexerget_lineno() % s);
module = NULL;
}
@@ -593,7 +593,7 @@ AbstractModule *parse(const char *text, const char *path, int debug)
Module::ModuleContainer::iterator curr = iter++;
curr->second = Module::compile_library(curr->first);
if (!curr->second) {
- PRINTF("WARNING: Failed to compile library `%s'.", curr->first.c_str());
+ PRINTB("WARNING: Failed to compile library '%s'.", curr->first);
module->usedlibs.erase(curr);
}
}
@@ -615,7 +615,7 @@ Module *Module::compile_library(const std::string &filename)
std::string cache_id = idstream.str();
if (libs_cache.find(filename) != libs_cache.end() && libs_cache[filename].cache_id == cache_id) {
- PRINTF("%s", libs_cache[filename].msg.c_str());
+ PRINTB("%s", libs_cache[filename].msg);
return &(*libs_cache[filename].mod);
}
@@ -635,7 +635,7 @@ Module *Module::compile_library(const std::string &filename)
print_messages_push();
- PRINTF("Compiling library `%s'.", filename.c_str());
+ PRINTB("Compiling library '%s'.", filename);
libs_cache_ent e = { NULL, cache_id, std::string("WARNING: Library `") + filename + "' tries to recursively use itself!" };
if (libs_cache.find(filename) != libs_cache.end())
delete libs_cache[filename].mod;
diff --git a/src/primitives.cc b/src/primitives.cc
index 466a0c7..feaa1a4 100644
--- a/src/primitives.cc
+++ b/src/primitives.cc
@@ -148,11 +148,11 @@ AbstractNode *PrimitiveModule::evaluate(const Context *ctx, const ModuleInstanti
node->fa = c.lookup_variable("$fa").num;
if (node->fs < F_MINIMUM) {
- PRINTF("WARNING: $fs too small - clamping to %f", F_MINIMUM);
+ PRINTB("WARNING: $fs too small - clamping to %f", F_MINIMUM);
node->fs = F_MINIMUM;
}
if (node->fa < F_MINIMUM) {
- PRINTF("WARNING: $fa too small - clamping to %f", F_MINIMUM);
+ PRINTB("WARNING: $fa too small - clamping to %f", F_MINIMUM);
node->fa = F_MINIMUM;
}
@@ -505,7 +505,7 @@ sphere_next_r2:
for (size_t i=0; i<this->points.vec.size(); i++) {
double x,y;
if (!this->points.vec[i]->getv2(x, y)) {
- PRINTF("ERROR: Unable to convert point at index %d to a vec2 of numbers", int(i));
+ PRINTB("ERROR: Unable to convert point at index %d to a vec2 of numbers", i);
delete p;
return NULL;
}
diff --git a/src/printutils.cc b/src/printutils.cc
index 0749587..a8b62aa 100644
--- a/src/printutils.cc
+++ b/src/printutils.cc
@@ -1,6 +1,5 @@
#include "printutils.h"
#include <stdio.h>
-#include <QDate>
std::list<std::string> print_messages_stack;
OutputHandlerFunc *outputhandler = NULL;
diff --git a/src/printutils.h b/src/printutils.h
index 761e6c8..521682c 100644
--- a/src/printutils.h
+++ b/src/printutils.h
@@ -4,7 +4,7 @@
#include <string>
#include <list>
#include <iostream>
-#include <QFileInfo>
+#include <boost/format.hpp>
typedef void (OutputHandlerFunc)(const std::string &msg, void *userdata);
extern OutputHandlerFunc *outputhandler;
@@ -17,13 +17,9 @@ void print_messages_push();
void print_messages_pop();
void PRINT(const std::string &msg);
-#define PRINTF(_fmt, ...) do { QString _m; _m.sprintf(_fmt, ##__VA_ARGS__); PRINT(_m.toStdString()); } while (0)
-#define PRINTA(_fmt, ...) do { QString _m = QString(_fmt).arg(__VA_ARGS__); PRINT(_m.toStdString()); } while (0)
+#define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
void PRINT_NOCACHE(const std::string &msg);
-#define PRINTF_NOCACHE(_fmt, ...) do { QString _m; _m.sprintf(_fmt, ##__VA_ARGS__); PRINT_NOCACHE(_m.toStdString()); } while (0)
-#define PRINTA_NOCACHE(_fmt, ...) do { QString _m = QString(_fmt).arg(__VA_ARGS__); PRINT_NOCACHE(_m.toStdString()); } while (0)
-
-std::ostream &operator<<(std::ostream &os, const QFileInfo &fi);
+#define PRINTB_NOCACHE(_fmt, _arg) do { PRINT_NOCACHE(str(boost::format(_fmt) % _arg)); } while (0)
#endif
diff --git a/src/projection.cc b/src/projection.cc
index a712800..d3e7e94 100644
--- a/src/projection.cc
+++ b/src/projection.cc
@@ -72,7 +72,7 @@ AbstractNode *ProjectionModule::evaluate(const Context *ctx, const ModuleInstant
PolySet *ProjectionNode::evaluate_polyset(PolySetEvaluator *evaluator) const
{
if (!evaluator) {
- PRINTF("WARNING: No suitable PolySetEvaluator found for %s module!", this->name().c_str());
+ PRINTB("WARNING: No suitable PolySetEvaluator found for %s module!", this->name());
return NULL;
}
diff --git a/src/rotateextrude.cc b/src/rotateextrude.cc
index 0da30ce..e279cf1 100644
--- a/src/rotateextrude.cc
+++ b/src/rotateextrude.cc
@@ -67,7 +67,7 @@ AbstractNode *RotateExtrudeModule::evaluate(const Context *ctx, const ModuleInst
Value scale = c.lookup_variable("scale", true);
if (!file.text.empty()) {
- PRINTF("DEPRECATED: Support for reading files in rotate_extrude will be removed in future releases. Use a child import() instead.");
+ PRINT("DEPRECATED: Support for reading files in rotate_extrude will be removed in future releases. Use a child import() instead.");
node->filename = c.getAbsolutePath(file.text);
}
@@ -93,7 +93,7 @@ AbstractNode *RotateExtrudeModule::evaluate(const Context *ctx, const ModuleInst
PolySet *RotateExtrudeNode::evaluate_polyset(PolySetEvaluator *evaluator) const
{
if (!evaluator) {
- PRINTF("WARNING: No suitable PolySetEvaluator found for %s module!", this->name().c_str());
+ PRINTB("WARNING: No suitable PolySetEvaluator found for %s module!", this->name());
return NULL;
}
diff --git a/src/surface.cc b/src/surface.cc
index fe1c6aa..e927beb 100644
--- a/src/surface.cc
+++ b/src/surface.cc
@@ -100,7 +100,7 @@ PolySet *SurfaceNode::evaluate_polyset(class PolySetEvaluator *) const
std::ifstream stream(filename.c_str());
if (!stream.good()) {
- PRINTF("WARNING: Can't open DAT file `%s'.", filename.c_str());
+ PRINTB("WARNING: Can't open DAT file '%s'.", filename);
return NULL;
}
@@ -132,7 +132,7 @@ PolySet *SurfaceNode::evaluate_polyset(class PolySetEvaluator *) const
}
catch (boost::bad_lexical_cast &blc) {
if (!stream.eof()) {
- PRINTF("WARNING: Illegal value in '%s': %s", filename.c_str(), blc.what());
+ PRINTB("WARNING: Illegal value in '%s': %s", filename % blc.what());
}
break;
}
diff --git a/tests/regression/echotest/dim-all-expected.txt b/tests/regression/echotest/dim-all-expected.txt
index 60f36d5..a16c580 100644
--- a/tests/regression/echotest/dim-all-expected.txt
+++ b/tests/regression/echotest/dim-all-expected.txt
@@ -1,16 +1,16 @@
-WARNING: Unsupported DXF Entity `LEADER' (1) in `dim-all.dxf'.
+WARNING: Unsupported DXF Entity 'LEADER' (1) in "dim-all.dxf".
ECHO: linearX = 51.44957554275
-WARNING: Unsupported DXF Entity `LEADER' (1) in `dim-all.dxf'.
+WARNING: Unsupported DXF Entity 'LEADER' (1) in "dim-all.dxf".
ECHO: linearY = 29.13025467434
-WARNING: Unsupported DXF Entity `LEADER' (1) in `dim-all.dxf'.
+WARNING: Unsupported DXF Entity 'LEADER' (1) in "dim-all.dxf".
ECHO: aligned = 60
-WARNING: Unsupported DXF Entity `LEADER' (1) in `dim-all.dxf'.
+WARNING: Unsupported DXF Entity 'LEADER' (1) in "dim-all.dxf".
ECHO: ordinateX = -49.17542445724
-WARNING: Unsupported DXF Entity `LEADER' (1) in `dim-all.dxf'.
+WARNING: Unsupported DXF Entity 'LEADER' (1) in "dim-all.dxf".
ECHO: ordinateY = 30.86974532565
-WARNING: Unsupported DXF Entity `LEADER' (1) in `dim-all.dxf'.
+WARNING: Unsupported DXF Entity 'LEADER' (1) in "dim-all.dxf".
ECHO: radius = 60
-WARNING: Unsupported DXF Entity `LEADER' (1) in `dim-all.dxf'.
+WARNING: Unsupported DXF Entity 'LEADER' (1) in "dim-all.dxf".
ECHO: diameter = 120
-WARNING: Unsupported DXF Entity `LEADER' (1) in `dim-all.dxf'.
+WARNING: Unsupported DXF Entity 'LEADER' (1) in "dim-all.dxf".
ECHO: arc = 59.03624346792
contact: Jan Huwald // Impressum