diff options
author | Szymon Kłos <szymon.klos@collabora.com> | 2019-10-11 21:54:39 +0200 |
---|---|---|
committer | Szymon Kłos <szymon.klos@collabora.com> | 2019-10-14 18:11:24 +0200 |
commit | 5b08e2023db64741dbe54e36b0fed16395adf98e (patch) | |
tree | 41c7296df0ca5a8ba4606d0df08a81fc7f98e5ce /vcl | |
parent | 35e6ada72631379053fbf620e79ddaeafc9659e9 (diff) |
jsdialogs: send units for numeric fields
Change-Id: I63b984856926a613e38319d6d769cab64601c504
Reviewed-on: https://gerrit.libreoffice.org/80692
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/source/control/field.cxx | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/vcl/source/control/field.cxx b/vcl/source/control/field.cxx index ffc6956d4cf2..83644c5e5657 100644 --- a/vcl/source/control/field.cxx +++ b/vcl/source/control/field.cxx @@ -46,6 +46,74 @@ using namespace ::comphelper; namespace { +std::string FieldUnitToString(FieldUnit unit) +{ + switch(unit) + { + case FieldUnit::NONE: + return ""; + + case FieldUnit::MM: + return "mm"; + + case FieldUnit::CM: + return "cm"; + + case FieldUnit::M: + return "m"; + + case FieldUnit::KM: + return "km"; + + case FieldUnit::TWIP: + return "twip"; + + case FieldUnit::POINT: + return "point"; + + case FieldUnit::PICA: + return "pica"; + + case FieldUnit::INCH: + return "inch"; + + case FieldUnit::FOOT: + return "foot"; + + case FieldUnit::MILE: + return "mile"; + + case FieldUnit::CHAR: + return "char"; + + case FieldUnit::LINE: + return "line"; + + case FieldUnit::CUSTOM: + return "custom"; + + case FieldUnit::PERCENT: + return "percent"; + + case FieldUnit::MM_100TH: + return "mm100th"; + + case FieldUnit::PIXEL: + return "pixel"; + + case FieldUnit::DEGREE: + return "degree"; + + case FieldUnit::SECOND: + return "second"; + + case FieldUnit::MILLISECOND: + return "millisecond"; + } + + return ""; +} + sal_Int64 ImplPower10( sal_uInt16 n ) { sal_uInt16 i; @@ -807,6 +875,14 @@ void NumericField::Last() SpinField::Last(); } +boost::property_tree::ptree NumericField::DumpAsPropertyTree() +{ + boost::property_tree::ptree aTree(SpinField::DumpAsPropertyTree()); + aTree.put("min", GetMin()); + aTree.put("max", GetMax()); + return aTree; +} + namespace { Size calcMinimumSize(const Edit &rSpinField, const NumericFormatter &rFormatter) @@ -1665,6 +1741,15 @@ void MetricField::CustomConvert() maCustomConvertLink.Call( *this ); } +boost::property_tree::ptree MetricField::DumpAsPropertyTree() +{ + boost::property_tree::ptree aTree(SpinField::DumpAsPropertyTree()); + aTree.put("min", GetMin()); + aTree.put("max", GetMax()); + aTree.put("unit", FieldUnitToString(GetUnit())); + return aTree; +} + MetricBox::MetricBox(vcl::Window* pParent, WinBits nWinStyle) : ComboBox(pParent, nWinStyle) , MetricFormatter(this) |