X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FCockpit%2Fpanel.cxx;h=ad4465878fbab12d58dad6783aee3b689bb8fa64;hb=c0b4531d04215f76f9cf65afbdaed6b7c0b32634;hp=de9a7877866653942f97814f17346401ac0caf95;hpb=8e5a884428f713257a1aea1ebce2bbb65b6cd437;p=flightgear.git diff --git a/src/Cockpit/panel.cxx b/src/Cockpit/panel.cxx index de9a78778..ad4465878 100644 --- a/src/Cockpit/panel.cxx +++ b/src/Cockpit/panel.cxx @@ -53,7 +53,6 @@ // my hardware/driver requires many more. #define POFF_UNITS 4 - //////////////////////////////////////////////////////////////////////// // Local functions. //////////////////////////////////////////////////////////////////////// @@ -1092,8 +1091,9 @@ FGTextLayer::Chunk::Chunk (const string &text, const string &fmt) } FGTextLayer::Chunk::Chunk (ChunkType type, const SGPropertyNode * node, - const string &fmt, float mult, float offs) - : _type(type), _fmt(fmt), _mult(mult), _offs(offs) + const string &fmt, float mult, float offs, + bool truncation) + : _type(type), _fmt(fmt), _mult(mult), _offs(offs), _trunc(truncation) { if (_fmt.empty()) { if (type == TEXT_VALUE) @@ -1117,7 +1117,9 @@ FGTextLayer::Chunk::getValue () const sprintf(_buf, _fmt.c_str(), _node->getStringValue()); break; case DOUBLE_VALUE: - sprintf(_buf, _fmt.c_str(), _offs + _node->getFloatValue() * _mult); + double d = _offs + _node->getFloatValue() * _mult; + if (_trunc) d = (d < 0) ? -floor(-d) : floor(d); + sprintf(_buf, _fmt.c_str(), d); break; } return _buf;