diff options
author | Noel Grandin <noelgrandin@gmail.com> | 2024-05-15 19:03:32 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2024-05-16 08:47:32 +0200 |
commit | f3cced4ab2c3ddb7a83fd697334df490b11a9c8f (patch) | |
tree | e18aecd9aa4323216b475efac74531d29a16b601 /xmlhelp | |
parent | 8cda679913bac83324c222c31c417f2ee7e2924b (diff) |
use more officecfg in xmlhelp::TVChildTarget
Change-Id: I3d5762e275317937c4ce3aafaf9e3a359efc2907
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167703
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Diffstat (limited to 'xmlhelp')
-rw-r--r-- | xmlhelp/source/cxxhelp/inc/tvread.hxx | 22 | ||||
-rw-r--r-- | xmlhelp/source/treeview/tvfactory.cxx | 2 | ||||
-rw-r--r-- | xmlhelp/source/treeview/tvread.cxx | 135 |
3 files changed, 14 insertions, 145 deletions
diff --git a/xmlhelp/source/cxxhelp/inc/tvread.hxx b/xmlhelp/source/cxxhelp/inc/tvread.hxx index 08bfdb6482da..dea63c0814eb 100644 --- a/xmlhelp/source/cxxhelp/inc/tvread.hxx +++ b/xmlhelp/source/cxxhelp/inc/tvread.hxx @@ -178,7 +178,7 @@ namespace treeview { TVChildTarget( const ConfigData& configData,TVDom* tvDom ); - TVChildTarget( const css::uno::Reference< css::uno::XComponentContext >& xContext ); + TVChildTarget(); virtual ~TVChildTarget() override; @@ -202,25 +202,7 @@ namespace treeview { private: std::vector< rtl::Reference< TVRead > > Elements; - static ConfigData init( - const css::uno::Reference< css::uno::XComponentContext >& xContext ); - - static css::uno::Reference< css::lang::XMultiServiceFactory > - getConfiguration( - const css::uno::Reference< css::uno::XComponentContext >& rxContext ); - - static css::uno::Reference< css::container::XHierarchicalNameAccess > - getHierAccess( const css::uno::Reference< css::lang::XMultiServiceFactory >& rxProvider, - const char* file ); - - static OUString - getKey( const css::uno::Reference< css::container::XHierarchicalNameAccess >& xHierAccess, - const char* key ); - - static bool - getBooleanKey( - const css::uno::Reference< css::container::XHierarchicalNameAccess >& xHierAccess, - const char* key); + static ConfigData init(); static void subst( OUString& instpath ); diff --git a/xmlhelp/source/treeview/tvfactory.cxx b/xmlhelp/source/treeview/tvfactory.cxx index 4d6c3d5d5771..d4a4906a31b0 100644 --- a/xmlhelp/source/treeview/tvfactory.cxx +++ b/xmlhelp/source/treeview/tvfactory.cxx @@ -84,7 +84,7 @@ TVFactory::createInstanceWithArguments( { if( ! m_xHDS.is() ) { - m_xHDS = cppu::getXWeak(new TVChildTarget( m_xContext )); + m_xHDS = cppu::getXWeak(new TVChildTarget()); } OUString hierview; diff --git a/xmlhelp/source/treeview/tvread.cxx b/xmlhelp/source/treeview/tvread.cxx index 054ad493849a..1e815fe6a393 100644 --- a/xmlhelp/source/treeview/tvread.cxx +++ b/xmlhelp/source/treeview/tvread.cxx @@ -39,6 +39,8 @@ #include <com/sun/star/uri/XVndSunStarExpandUrl.hpp> #include <i18nlangtag/languagetag.hxx> #include <unotools/pathoptions.hxx> +#include <officecfg/Office/Common.hxx> +#include <officecfg/Setup.hxx> #include <memory> #include <utility> @@ -367,9 +369,9 @@ TVChildTarget::TVChildTarget( const ConfigData& configData,TVDom* tvDom ) Elements[i] = new TVRead( configData,tvDom->children[i].get() ); } -TVChildTarget::TVChildTarget( const Reference< XComponentContext >& xContext ) +TVChildTarget::TVChildTarget() { - ConfigData configData = init( xContext ); + ConfigData configData = init(); if( configData.locale.isEmpty() || configData.system.isEmpty() ) return; @@ -572,20 +574,17 @@ TVChildTarget::hasByHierarchicalName( const OUString& aName ) return hasByName( aName ); } -ConfigData TVChildTarget::init( const Reference< XComponentContext >& xContext ) +ConfigData TVChildTarget::init() { ConfigData configData; - Reference< XMultiServiceFactory > sProvider( getConfiguration(xContext) ); /**********************************************************************/ /* reading Office.Common */ /**********************************************************************/ - Reference< XHierarchicalNameAccess > xHierAccess( getHierAccess( sProvider, - "org.openoffice.Office.Common" ) ); - configData.system = getKey(xHierAccess,"Help/System"); - bool showBasic( getBooleanKey(xHierAccess,"Help/ShowBasic") ); - OUString instPath( getKey( xHierAccess,"Path/Current/Help" ) ); + configData.system = officecfg::Office::Common::Help::System::get(); + bool showBasic = officecfg::Office::Common::Help::ShowBasic::get(); + OUString instPath = officecfg::Office::Common::Path::Current::Help::get(); if( instPath.isEmpty() ) // try to determine path from default instPath = "$(instpath)/help"; @@ -597,40 +596,14 @@ ConfigData TVChildTarget::init( const Reference< XComponentContext >& xContext ) /* reading setup */ /**********************************************************************/ - xHierAccess = getHierAccess( sProvider, - "org.openoffice.Setup" ); - - OUString setupversion( getKey( xHierAccess,"Product/ooSetupVersion" ) ); - OUString setupextension; - - try - { - Reference< lang::XMultiServiceFactory > xConfigProvider = theDefaultProvider::get( xContext ); - - uno::Sequence<uno::Any> lParams(comphelper::InitAnyPropertySequence( - { - {"nodepath", uno::Any(u"/org.openoffice.Setup/Product"_ustr)} - })); - - // open it - uno::Reference< uno::XInterface > xCFG( xConfigProvider->createInstanceWithArguments( - u"com.sun.star.configuration.ConfigurationAccess"_ustr, - lParams) ); - - uno::Reference< container::XNameAccess > xDirectAccess(xCFG, uno::UNO_QUERY); - uno::Any aRet = xDirectAccess->getByName(u"ooSetupExtension"_ustr); - - aRet >>= setupextension; - } - catch ( uno::Exception& ) - { - } + OUString setupversion = officecfg::Setup::Product::ooSetupVersion::get(); + OUString setupextension = officecfg::Setup::Product::ooSetupExtension::get(); configData.m_vReplacement[0] = utl::ConfigManager::getProductName(); configData.m_vReplacement[1] = setupversion + " " + setupextension; // productVersion // m_vReplacement[2...4] (vendorName/-Version/-Short) are empty strings - configData.locale = getKey(xHierAccess,"L10N/ooLocale"); + configData.locale = officecfg::Setup::L10N::ooLocale::get(); // Determine fileurl from url and locale OUString url; @@ -730,92 +703,6 @@ ConfigData TVChildTarget::init( const Reference< XComponentContext >& xContext ) return configData; } -Reference< XMultiServiceFactory > -TVChildTarget::getConfiguration(const Reference< XComponentContext >& rxContext) -{ - Reference< XMultiServiceFactory > xProvider; - if( rxContext.is() ) - { - try - { - xProvider = theDefaultProvider::get( rxContext ); - } - catch( const css::uno::Exception& ) - { - OSL_ENSURE( xProvider.is(),"can not instantiate configuration" ); - } - } - - return xProvider; -} - -Reference< XHierarchicalNameAccess > -TVChildTarget::getHierAccess( const Reference< XMultiServiceFactory >& sProvider, - const char* file ) -{ - Reference< XHierarchicalNameAccess > xHierAccess; - - if( sProvider.is() ) - { - try - { - xHierAccess = - Reference< XHierarchicalNameAccess > - ( sProvider->createInstanceWithArguments( u"com.sun.star.configuration.ConfigurationAccess"_ustr, { Any(OUString::createFromAscii(file)) }), - UNO_QUERY ); - } - catch( const css::uno::Exception& ) - { - } - } - - return xHierAccess; -} - -OUString -TVChildTarget::getKey( const Reference< XHierarchicalNameAccess >& xHierAccess, - const char* key ) -{ - OUString instPath; - if( xHierAccess.is() ) - { - Any aAny; - try - { - aAny = - xHierAccess->getByHierarchicalName( OUString::createFromAscii( key ) ); - } - catch( const css::container::NoSuchElementException& ) - { - } - aAny >>= instPath; - } - return instPath; -} - -bool -TVChildTarget::getBooleanKey(const Reference< - XHierarchicalNameAccess >& xHierAccess, - const char* key) -{ - bool ret = false; - if( xHierAccess.is() ) - { - Any aAny; - try - { - aAny = - xHierAccess->getByHierarchicalName( - OUString::createFromAscii(key)); - } - catch( const css::container::NoSuchElementException& ) - { - } - aAny >>= ret; - } - return ret; -} - void TVChildTarget::subst( OUString& instpath ) { SvtPathOptions aOptions; |