diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2021-03-19 17:39:28 +0900 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2021-03-21 09:20:24 +0100 |
commit | 31d4f6c35a10a4bee4f4aebb86f05f8a9fd872bb (patch) | |
tree | 955b713ce8b621fe6fac8ea5c770bed9b0aac182 /sfx2 | |
parent | 296f39567b49d6edb054648e7e633ac0bb7111e1 (diff) |
devtools: improve value strings for objects in object inspector
Change-Id: Ia290c51a8a9c6ff44bc2ae13adfe938e5b48bdd3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112788
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/devtools/ObjectInspectorTreeHandler.cxx | 43 |
1 files changed, 15 insertions, 28 deletions
diff --git a/sfx2/source/devtools/ObjectInspectorTreeHandler.cxx b/sfx2/source/devtools/ObjectInspectorTreeHandler.cxx index 4e823fec2008..b56cb02cdb30 100644 --- a/sfx2/source/devtools/ObjectInspectorTreeHandler.cxx +++ b/sfx2/source/devtools/ObjectInspectorTreeHandler.cxx @@ -91,8 +91,7 @@ OUString convertBasicValueToString(const uno::Any& aValue, if (!aValue.hasValue()) return SfxResId(STR_ANY_VALUE_NULL); - uno::Type aValType = aValue.getValueType(); - uno::TypeClass eType = aValType.getTypeClass(); + uno::TypeClass eType = aValue.getValueTypeClass(); switch (eType) { @@ -229,15 +228,15 @@ OUString convertAnyToString(const uno::Any& aValue, aRetStr = SfxResId(STR_ANY_VALUE_NULL); else { - OUString aString = getInterfaceName(xInterface, xContext); - if (!aString.isEmpty()) - aRetStr = "{" + aString + "} "; - OUString aImplementationClass = getInterfaceImplementationClass(xInterface); if (aImplementationClass.isEmpty()) aImplementationClass = SfxResId(STR_CLASS_UNKNOWN); aRetStr - += SfxResId(STR_PROPERTY_VALUE_OBJECT).replaceFirst("%1", aImplementationClass); + = SfxResId(STR_PROPERTY_VALUE_OBJECT).replaceFirst("%1", aImplementationClass); + + OUString aString = getInterfaceName(xInterface, xContext); + if (!aString.isEmpty()) + aRetStr += " {" + aString + "}"; } break; } @@ -266,36 +265,24 @@ OUString convertAnyToShortenedString(const uno::Any& aValue, uno::TypeClass eType = aValue.getValueTypeClass(); + constexpr const sal_Int32 constMaxStringLength = 60; + switch (eType) { case uno::TypeClass_INTERFACE: { - uno::Reference<uno::XInterface> xInterface(aValue, uno::UNO_QUERY); - if (!xInterface.is()) - aRetStr = SfxResId(STR_ANY_VALUE_NULL); - else - { - OUString aString = getInterfaceName(xInterface, xContext); - if (!aString.isEmpty()) - aRetStr = "{" + aString + "} "; - - OUString aImplementationClass = getInterfaceImplementationClass(xInterface); - if (aImplementationClass.isEmpty()) - aImplementationClass = SfxResId(STR_CLASS_UNKNOWN); - aRetStr - += SfxResId(STR_PROPERTY_VALUE_OBJECT).replaceFirst("%1", aImplementationClass); + aRetStr = convertAnyToString(aValue, xContext); - if (aRetStr.getLength() > 43) - aRetStr = OUString::Concat(aRetStr.subView(0, 40)) + u"..."; - } + if (aRetStr.getLength() > constMaxStringLength + 3) + aRetStr = OUString::Concat(aRetStr.subView(0, constMaxStringLength)) + u"..."; break; } case uno::TypeClass_STRING: { - OUString aStringValue = u"\"" + aValue.get<OUString>() + u"\""; - if (aStringValue.getLength() > 44) - aStringValue = OUString::Concat(aStringValue.subView(0, 40)) + u"\"..."; - aRetStr = aStringValue; + OUString aString = convertAnyToString(aValue, xContext); + if (aString.getLength() > constMaxStringLength + 4) + aString = OUString::Concat(aString.subView(0, constMaxStringLength)) + u"\"..."; + aRetStr = aString.replaceAll("\n", " "); break; } default: |