diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-04-11 22:25:23 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2017-04-12 09:36:20 +0200 |
commit | f1bbafc584ba538c21ee156e411903ed142cac2a (patch) | |
tree | 34a471868cbb85ea7aa26413fe87e5afac4781ec /cui | |
parent | 61f43d0327c81bb2df88734c9572e489e4a9de31 (diff) |
Convert rtl_uString -> OUString in jfw_get/setVMParameters
Change-Id: I55f96873661f686cd9625d69523718ccb54659dc
Diffstat (limited to 'cui')
-rw-r--r-- | cui/source/options/optjava.cxx | 77 | ||||
-rw-r--r-- | cui/source/options/optjava.hxx | 7 |
2 files changed, 18 insertions, 66 deletions
diff --git a/cui/source/options/optjava.cxx b/cui/source/options/optjava.cxx index 84c9fef6ca1b..03a2c6232d83 100644 --- a/cui/source/options/optjava.cxx +++ b/cui/source/options/optjava.cxx @@ -17,6 +17,10 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ +#include <sal/config.h> + +#include <vector> + #include <config_features.h> #include "optaboutconfig.hxx" @@ -63,35 +67,6 @@ using namespace ::com::sun::star::ucb; using namespace ::com::sun::star::ui::dialogs; using namespace ::com::sun::star::uno; -#if HAVE_FEATURE_JAVA - -static bool areListsEqual( const Sequence< OUString >& rListA, const Sequence< OUString >& rListB ) -{ - bool bRet = true; - const sal_Int32 nLen = rListA.getLength(); - - if ( rListB.getLength() != nLen ) - bRet = false; - else - { - const OUString* pStringA = rListA.getConstArray(); - const OUString* pStringB = rListB.getConstArray(); - - for ( sal_Int32 i = 0; i < nLen; ++i ) - { - if ( *pStringA++ != *pStringB++ ) - { - bRet = false; - break; - } - } - } - - return bRet; -} - -#endif - class SvxJavaListBox : public svx::SvxRadioButtonListBox { private: @@ -138,10 +113,6 @@ SvxJavaOptionsPage::SvxJavaOptionsPage( vcl::Window* pParent, const SfxItemSet& : SfxTabPage(pParent, "OptAdvancedPage", "cui/ui/optadvancedpage.ui", &rSet) , m_pParamDlg(nullptr) , m_pPathDlg(nullptr) -#if HAVE_FEATURE_JAVA - , m_parParameters(nullptr) - , m_nParamSize(0) -#endif , m_aResetIdle("cui options SvxJavaOptionsPage Reset") , xDialogListener(new ::svt::DialogClosedListener()) { @@ -293,21 +264,14 @@ IMPL_LINK_NOARG(SvxJavaOptionsPage, AddHdl_Impl, Button*, void) IMPL_LINK_NOARG(SvxJavaOptionsPage, ParameterHdl_Impl, Button*, void) { #if HAVE_FEATURE_JAVA - Sequence< OUString > aParameterList; + std::vector< OUString > aParameterList; if ( !m_pParamDlg ) { m_pParamDlg = VclPtr<SvxJavaParameterDlg>::Create( this ); - javaFrameworkError eErr = jfw_getVMParameters( &m_parParameters, &m_nParamSize ); - if ( JFW_E_NONE == eErr && m_parParameters && m_nParamSize > 0 ) + javaFrameworkError eErr = jfw_getVMParameters( &m_parParameters ); + if ( JFW_E_NONE == eErr && !m_parParameters.empty() ) { - rtl_uString** pParamArr = m_parParameters; - aParameterList.realloc( m_nParamSize ); - OUString* pParams = aParameterList.getArray(); - for ( sal_Int32 i = 0; i < m_nParamSize; ++i ) - { - rtl_uString* pParam = *pParamArr++; - pParams[i] = OUString( pParam ); - } + aParameterList = m_parParameters; m_pParamDlg->SetParameters( aParameterList ); } } @@ -319,7 +283,7 @@ IMPL_LINK_NOARG(SvxJavaOptionsPage, ParameterHdl_Impl, Button*, void) if ( m_pParamDlg->Execute() == RET_OK ) { - if ( !areListsEqual( aParameterList, m_pParamDlg->GetParameters() ) ) + if ( aParameterList != m_pParamDlg->GetParameters() ) { aParameterList = m_pParamDlg->GetParameters(); if ( jfw_isVMRunning() ) @@ -632,15 +596,8 @@ bool SvxJavaOptionsPage::FillItemSet( SfxItemSet* /*rCoreSet*/ ) javaFrameworkError eErr = JFW_E_NONE; if ( m_pParamDlg ) { - Sequence< OUString > aParamList = m_pParamDlg->GetParameters(); - sal_Int32 i, nSize = aParamList.getLength(); - rtl_uString** pParamArr = static_cast<rtl_uString**>(rtl_allocateMemory( sizeof(rtl_uString*) * nSize )); - const OUString* pList = aParamList.getConstArray(); - for ( i = 0; i < nSize; ++i ) - pParamArr[i] = pList[i].pData; - eErr = jfw_setVMParameters( pParamArr, nSize ); + eErr = jfw_setVMParameters( m_pParamDlg->GetParameters() ); SAL_WARN_IF(JFW_E_NONE != eErr, "cui.options", "SvxJavaOptionsPage::FillItemSet(): error in jfw_setVMParameters"); - rtl_freeMemory( pParamArr ); bModified = true; } @@ -879,13 +836,12 @@ short SvxJavaParameterDlg::Execute() } -Sequence< OUString > SvxJavaParameterDlg::GetParameters() const +std::vector< OUString > SvxJavaParameterDlg::GetParameters() const { sal_Int32 nCount = m_pAssignedList->GetEntryCount(); - Sequence< OUString > aParamList( nCount ); - OUString* pArray = aParamList.getArray(); + std::vector< OUString > aParamList; for ( sal_Int32 i = 0; i < nCount; ++i ) - pArray[i] = OUString( m_pAssignedList->GetEntry(i) ); + aParamList.push_back( m_pAssignedList->GetEntry(i) ); return aParamList; } @@ -897,14 +853,11 @@ void SvxJavaParameterDlg::DisableButtons() DisableRemoveButton(); } -void SvxJavaParameterDlg::SetParameters( Sequence< OUString >& rParams ) +void SvxJavaParameterDlg::SetParameters( std::vector< OUString > const & rParams ) { m_pAssignedList->Clear(); - sal_uLong i, nCount = rParams.getLength(); - const OUString* pArray = rParams.getConstArray(); - for ( i = 0; i < nCount; ++i ) + for (auto const & sParam: rParams) { - OUString sParam = OUString( *pArray++ ); m_pAssignedList->InsertEntry( sParam ); } DisableEditButton(); diff --git a/cui/source/options/optjava.hxx b/cui/source/options/optjava.hxx index 47fb0a85e32c..6598dfda5c70 100644 --- a/cui/source/options/optjava.hxx +++ b/cui/source/options/optjava.hxx @@ -66,9 +66,8 @@ private: #if HAVE_FEATURE_JAVA std::vector<std::unique_ptr<JavaInfo>> m_parJavaInfo; - rtl_uString** m_parParameters; + std::vector<OUString> m_parParameters; OUString m_pClassPath; - sal_Int32 m_nParamSize; #endif OUString m_sInstallText; OUString m_sAccessibilityText; @@ -165,8 +164,8 @@ public: virtual short Execute() override; - css::uno::Sequence< OUString > GetParameters() const; - void SetParameters( css::uno::Sequence< OUString >& rParams ); + std::vector< OUString > GetParameters() const; + void SetParameters( std::vector< OUString > const & rParams ); void DisableButtons(); void EditParameter(); }; |