diff options
author | Caolán McNamara <caolanm@redhat.com> | 2013-02-05 23:11:38 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-02-08 10:51:11 +0000 |
commit | 0aa5b4398e0bdd01315b2521fc2c827b58f49d39 (patch) | |
tree | 37ca8f7365ada48f9e3cd9c28fbfa50295b25479 /cui | |
parent | bc5e09608952caf57d72c81cca43af7a930b3b19 (diff) |
move java options page .ui to cui and adapt code
Change-Id: I481a4bbe06a5d0b3fb8701181d49d84d628fdd32
Diffstat (limited to 'cui')
-rw-r--r-- | cui/UI_cui.mk | 1 | ||||
-rw-r--r-- | cui/source/inc/helpid.hrc | 2 | ||||
-rw-r--r-- | cui/source/inc/radiobtnbox.hxx | 2 | ||||
-rw-r--r-- | cui/source/options/fontsubs.cxx | 2 | ||||
-rw-r--r-- | cui/source/options/optjava.cxx | 252 | ||||
-rw-r--r-- | cui/source/options/optjava.hrc | 30 | ||||
-rw-r--r-- | cui/source/options/optjava.hxx | 22 | ||||
-rw-r--r-- | cui/source/options/optjava.src | 108 | ||||
-rw-r--r-- | cui/source/options/radiobtnbox.cxx | 5 | ||||
-rw-r--r-- | cui/uiconfig/ui/optadvancedpage.ui | 381 |
10 files changed, 528 insertions, 277 deletions
diff --git a/cui/UI_cui.mk b/cui/UI_cui.mk index 3767fd1b0c41..db290b731543 100644 --- a/cui/UI_cui.mk +++ b/cui/UI_cui.mk @@ -32,6 +32,7 @@ $(eval $(call gb_UI_add_uifiles,cui,\ cui/uiconfig/ui/objectnamedialog \ cui/uiconfig/ui/objecttitledescdialog \ cui/uiconfig/ui/optaccessibilitypage \ + cui/uiconfig/ui/optadvancedpage \ cui/uiconfig/ui/optappearancepage \ cui/uiconfig/ui/optfontspage \ cui/uiconfig/ui/personalization_tab \ diff --git a/cui/source/inc/helpid.hrc b/cui/source/inc/helpid.hrc index e224426a3681..43e79e1cc5a4 100644 --- a/cui/source/inc/helpid.hrc +++ b/cui/source/inc/helpid.hrc @@ -42,8 +42,6 @@ #define HID_LNGDLG_NUM_PREBREAK "CUI_HID_LNGDLG_NUM_PREBREAK" #define HID_OPTIONS_COLORCONFIG_SAVE_SCHEME "CUI_HID_OPTIONS_COLORCONFIG_SAVE_SCHEME" #define HID_OPTIONS_PATHS_SELECTFOLDER "CUI_HID_OPTIONS_PATHS_SELECTFOLDER" -#define HID_OPTIONS_JAVA "CUI_HID_OPTIONS_JAVA" -#define HID_OPTIONS_JAVA_LIST "CUI_HID_OPTIONS_JAVA_LIST" #define HID_OPTIONS_JAVA_PARAMETER "CUI_HID_OPTIONS_JAVA_PARAMETER" #define HID_OPTIONS_JAVA_CLASSPATH "CUI_HID_OPTIONS_JAVA_CLASSPATH" #define HID_SVXPAGE_JSEARCH_OPTIONS "CUI_HID_SVXPAGE_JSEARCH_OPTIONS" diff --git a/cui/source/inc/radiobtnbox.hxx b/cui/source/inc/radiobtnbox.hxx index 627efe0fc3ab..c6c3b43c4ca0 100644 --- a/cui/source/inc/radiobtnbox.hxx +++ b/cui/source/inc/radiobtnbox.hxx @@ -44,6 +44,8 @@ public: void HandleEntryChecked( SvTreeListEntry* _pEntry ); const Point& GetCurMousePoint() const; + + long GetControlColumnWidth() const; }; } // end of namespace ::svx diff --git a/cui/source/options/fontsubs.cxx b/cui/source/options/fontsubs.cxx index 43aa22c6a56a..87afaf944b56 100644 --- a/cui/source/options/fontsubs.cxx +++ b/cui/source/options/fontsubs.cxx @@ -404,7 +404,7 @@ void SvxFontSubstCheckListBox::setColSizes() aStaticTabs[2] = nMax; aStaticTabs[3] = nDoubleMax; aStaticTabs[4] = nDoubleMax + nRest/2; - SvxSimpleTable::SetTabs(&aStaticTabs[0], MAP_PIXEL); + SvxSimpleTable::SetTabs(aStaticTabs, MAP_PIXEL); } void SvxFontSubstCheckListBox::Resize() diff --git a/cui/source/options/optjava.cxx b/cui/source/options/optjava.cxx index 821bb9284dfc..a5389cab2cc8 100644 --- a/cui/source/options/optjava.cxx +++ b/cui/source/options/optjava.cxx @@ -83,100 +83,110 @@ bool areListsEqual( const Sequence< ::rtl::OUString >& rListA, const Sequence< : return bRet; } +class SvxJavaListBox : public svx::SvxRadioButtonListBox +{ +private: + const OUString m_sAccessibilityText; +public: + SvxJavaListBox(SvxSimpleTableContainer& rParent, const OUString &rAccessibilityText) + : SvxRadioButtonListBox(rParent) + , m_sAccessibilityText(rAccessibilityText) + { + } + void setColSizes() + { + HeaderBar &rBar = GetTheHeaderBar(); + if (rBar.GetItemCount() < 4) + return; + long nCheckWidth = std::max(GetControlColumnWidth() + 12, + rBar.LogicToPixel(Size(15, 0), MAP_APPFONT).Width()); + long nVersionWidth = 12 + + std::max(rBar.GetTextWidth(rBar.GetItemText(3)), + GetTextWidth(OUString("0.0.0_00-icedtea"))); + long nFeatureWidth = 12 + + std::max(rBar.GetTextWidth(rBar.GetItemText(4)), + GetTextWidth(m_sAccessibilityText)); + long nVendorWidth = + std::max(GetSizePixel().Width() - (nCheckWidth + nVersionWidth + nFeatureWidth), + 6 + std::max(rBar.GetTextWidth(rBar.GetItemText(2)), + GetTextWidth(OUString("Sun Microsystems Inc.")))); + long aStaticTabs[]= { 4, 0, 0, 0, 0, 0 }; + aStaticTabs[2] = nCheckWidth; + aStaticTabs[3] = aStaticTabs[2] + nVendorWidth; + aStaticTabs[4] = aStaticTabs[3] + nVersionWidth; + SvxSimpleTable::SetTabs(aStaticTabs, MAP_PIXEL); + } + virtual void Resize() + { + svx::SvxRadioButtonListBox::Resize(); + setColSizes(); + } +}; + // class SvxJavaOptionsPage ---------------------------------------------- -SvxJavaOptionsPage::SvxJavaOptionsPage( Window* pParent, const SfxItemSet& rSet ) : - - SfxTabPage( pParent, CUI_RES( RID_SVXPAGE_OPTIONS_JAVA ), rSet ), - - m_aJavaLine ( this, CUI_RES( FL_JAVA ) ), - m_aJavaEnableCB ( this, CUI_RES( CB_JAVA_ENABLE ) ), - m_aJavaFoundLabel ( this, CUI_RES( FT_JAVA_FOUND ) ), - m_aJavaListContainer(this, CUI_RES(LB_JAVA)), - m_aJavaList(m_aJavaListContainer), - m_aJavaPathText ( this, CUI_RES( FT_JAVA_PATH ) ), - m_aAddBtn ( this, CUI_RES( PB_ADD ) ), - m_aParameterBtn ( this, CUI_RES( PB_PARAMETER ) ), - m_aClassPathBtn ( this, CUI_RES( PB_CLASSPATH ) ), - - m_pParamDlg ( NULL ), - m_pPathDlg ( NULL ), - m_parJavaInfo ( NULL ), - m_parParameters ( NULL ), - m_pClassPath ( NULL ), - m_nInfoSize ( 0 ), - m_nParamSize ( 0 ), - m_sInstallText ( CUI_RES( STR_INSTALLED_IN ) ), - m_sAccessibilityText( CUI_RES( STR_ACCESSIBILITY ) ), - m_sAddDialogText ( CUI_RES( STR_ADDDLGTEXT ) ), - - m_aExperimental ( this, CUI_RES( FL_EXPERIMENTAL ) ), - m_aExperimentalCB ( this, CUI_RES( CB_EXPERIMENTAL ) ), - m_aMacroCB ( this, CUI_RES( CB_MACRO ) ), - - xDialogListener ( new ::svt::DialogClosedListener() ) +SvxJavaOptionsPage::SvxJavaOptionsPage( Window* pParent, const SfxItemSet& rSet ) + : SfxTabPage(pParent, "OptAdvancedPage", "cui/ui/optadvancedpage.ui", rSet) + , m_pParamDlg(NULL) + , m_pPathDlg(NULL) + , m_parJavaInfo(NULL) + , m_parParameters(NULL) + , m_pClassPath(NULL) + , m_nInfoSize(0) + , m_nParamSize(0) + , xDialogListener(new ::svt::DialogClosedListener()) { - m_aJavaEnableCB.SetClickHdl( LINK( this, SvxJavaOptionsPage, EnableHdl_Impl ) ); - m_aJavaList.SetCheckButtonHdl( LINK( this, SvxJavaOptionsPage, CheckHdl_Impl ) ); - m_aJavaList.SetSelectHdl( LINK( this, SvxJavaOptionsPage, SelectHdl_Impl ) ); - m_aAddBtn.SetClickHdl( LINK( this, SvxJavaOptionsPage, AddHdl_Impl ) ); - m_aParameterBtn.SetClickHdl( LINK( this, SvxJavaOptionsPage, ParameterHdl_Impl ) ); - m_aClassPathBtn.SetClickHdl( LINK( this, SvxJavaOptionsPage, ClassPathHdl_Impl ) ); + get(m_pJavaEnableCB, "javaenabled"); + get(m_pJavaBox, "javabox"); + get(m_pJavaPathText, "javapath"); + m_sInstallText = m_pJavaPathText->GetText(); + get(m_pAddBtn, "add"); + get(m_pParameterBtn, "parameters"); + get(m_pClassPathBtn, "classpath"); + get(m_pExperimentalCB, "experimental"); + get(m_pMacroCB, "macrorecording"); + m_sAccessibilityText = get<FixedText>("a11y")->GetText(); + m_sAddDialogText = get<FixedText>("selectruntime")->GetText(); + + SvxSimpleTableContainer *pJavaListContainer = get<SvxSimpleTableContainer>("javas"); + Size aControlSize(177, 60); + aControlSize = LogicToPixel(aControlSize, MAP_APPFONT); + pJavaListContainer->set_width_request(aControlSize.Width()); + pJavaListContainer->set_height_request(aControlSize.Height()); + m_pJavaList = new SvxJavaListBox(*pJavaListContainer, m_sAccessibilityText); + + long aStaticTabs[]= { 4, 0, 0, 0, 0 }; + + m_pJavaList->SvxSimpleTable::SetTabs( aStaticTabs ); + + OUStringBuffer sHeader; + sHeader.append("\t").append(get<FixedText>("vendor")->GetText()) + .append("\t").append(get<FixedText>("version")->GetText()) + .append("\t").append(get<FixedText>("features")->GetText()) + .append("\t"); + m_pJavaList->InsertHeaderEntry(sHeader.makeStringAndClear(), HEADERBAR_APPEND, HIB_LEFT); + m_pJavaList->setColSizes(); + + m_pJavaEnableCB->SetClickHdl( LINK( this, SvxJavaOptionsPage, EnableHdl_Impl ) ); + m_pJavaList->SetCheckButtonHdl( LINK( this, SvxJavaOptionsPage, CheckHdl_Impl ) ); + m_pJavaList->SetSelectHdl( LINK( this, SvxJavaOptionsPage, SelectHdl_Impl ) ); + m_pAddBtn->SetClickHdl( LINK( this, SvxJavaOptionsPage, AddHdl_Impl ) ); + m_pParameterBtn->SetClickHdl( LINK( this, SvxJavaOptionsPage, ParameterHdl_Impl ) ); + m_pClassPathBtn->SetClickHdl( LINK( this, SvxJavaOptionsPage, ClassPathHdl_Impl ) ); m_aResetTimer.SetTimeoutHdl( LINK( this, SvxJavaOptionsPage, ResetHdl_Impl ) ); m_aResetTimer.SetTimeout( RESET_TIMEOUT ); - static long aStaticTabs[]= - { - 5, 0, 15, 90, 130, 300 - }; - - m_aJavaList.SvxSimpleTable::SetTabs( aStaticTabs ); - rtl::OUStringBuffer sHeader; - sHeader.append('\t'); - sHeader.append(CUI_RESSTR(STR_HEADER_VENDOR)); - sHeader.append('\t'); - sHeader.append(CUI_RESSTR(STR_HEADER_VERSION)); - sHeader.append('\t'); - sHeader.append(CUI_RESSTR(STR_HEADER_FEATURES)); - sHeader.append('\t'); - m_aJavaList.InsertHeaderEntry( sHeader.makeStringAndClear(), HEADERBAR_APPEND, HIB_LEFT ); - - m_aJavaList.SetHelpId( HID_OPTIONS_JAVA_LIST ); - - FreeResource(); - xDialogListener->SetDialogClosedLink( LINK( this, SvxJavaOptionsPage, DialogClosedHdl ) ); - EnableHdl_Impl( &m_aJavaEnableCB ); + EnableHdl_Impl(m_pJavaEnableCB); jfw_lock(); - - //check if the text fits into the class path button - Size aButtonSize = m_aClassPathBtn.GetOutputSizePixel(); - sal_Int32 nTextWidth = m_aClassPathBtn.GetTextWidth(m_aClassPathBtn.GetText()); - //add some additional space - sal_Int32 nDiff = nTextWidth + 4 - aButtonSize.Width(); - if( nDiff > 0) - { - Point aPos(m_aClassPathBtn.GetPosPixel()); - aPos.X() -= nDiff; - aButtonSize.Width() += nDiff; - m_aClassPathBtn.SetPosSizePixel(aPos, aButtonSize); - aPos = m_aAddBtn.GetPosPixel(); - aPos.X() -= nDiff; - m_aAddBtn.SetPosSizePixel(aPos, aButtonSize); - aPos = m_aParameterBtn.GetPosPixel(); - aPos.X() -= nDiff; - m_aParameterBtn.SetPosSizePixel(aPos, aButtonSize); - Size aSize = m_aJavaListContainer.GetSizePixel(); - aSize.Width() -= nDiff; - m_aJavaListContainer.SetSizePixel(aSize); - } } // ----------------------------------------------------------------------- SvxJavaOptionsPage::~SvxJavaOptionsPage() { + delete m_pJavaList; delete m_pParamDlg; delete m_pPathDlg; ClearJavaInfo(); @@ -194,15 +204,9 @@ SvxJavaOptionsPage::~SvxJavaOptionsPage() IMPL_LINK_NOARG(SvxJavaOptionsPage, EnableHdl_Impl) { - sal_Bool bEnable = m_aJavaEnableCB.IsChecked(); - m_aJavaFoundLabel.Enable( bEnable ); - m_aJavaPathText.Enable( bEnable ); - m_aAddBtn.Enable( bEnable ); - m_aParameterBtn.Enable( bEnable ); - m_aClassPathBtn.Enable( bEnable ); - - bEnable ? m_aJavaList.EnableTable() : m_aJavaList.DisableTable(); - + sal_Bool bEnable = m_pJavaEnableCB->IsChecked(); + m_pJavaBox->Enable(bEnable); + bEnable ? m_pJavaList->EnableTable() : m_pJavaList->DisableTable(); return 0; } @@ -210,10 +214,10 @@ IMPL_LINK_NOARG(SvxJavaOptionsPage, EnableHdl_Impl) IMPL_LINK( SvxJavaOptionsPage, CheckHdl_Impl, SvxSimpleTable *, pList ) { - SvTreeListEntry* pEntry = pList ? m_aJavaList.GetEntry( m_aJavaList.GetCurMousePoint() ) - : m_aJavaList.FirstSelected(); + SvTreeListEntry* pEntry = pList ? m_pJavaList->GetEntry( m_pJavaList->GetCurMousePoint() ) + : m_pJavaList->FirstSelected(); if ( pEntry ) - m_aJavaList.HandleEntryChecked( pEntry ); + m_pJavaList->HandleEntryChecked( pEntry ); return 0; } @@ -222,14 +226,14 @@ IMPL_LINK( SvxJavaOptionsPage, CheckHdl_Impl, SvxSimpleTable *, pList ) IMPL_LINK_NOARG(SvxJavaOptionsPage, SelectHdl_Impl) { // set installation directory info - SvTreeListEntry* pEntry = m_aJavaList.FirstSelected(); + SvTreeListEntry* pEntry = m_pJavaList->FirstSelected(); DBG_ASSERT( pEntry, "SvxJavaOptionsPage::SelectHdl_Impl(): no entry" ); String* pLocation = static_cast< String* >( pEntry->GetUserData() ); DBG_ASSERT( pLocation, "invalid location string" ); String sInfo = m_sInstallText; if ( pLocation ) sInfo += *pLocation; - m_aJavaPathText.SetText( sInfo ); + m_pJavaPathText->SetText(sInfo); return 0; } @@ -416,21 +420,21 @@ void SvxJavaOptionsPage::ClearJavaInfo() void SvxJavaOptionsPage::ClearJavaList() { - SvTreeListEntry* pEntry = m_aJavaList.First(); + SvTreeListEntry* pEntry = m_pJavaList->First(); while ( pEntry ) { String* pLocation = static_cast< String* >( pEntry->GetUserData() ); delete pLocation; - pEntry = m_aJavaList.Next( pEntry ); + pEntry = m_pJavaList->Next( pEntry ); } - m_aJavaList.Clear(); + m_pJavaList->Clear(); } // ----------------------------------------------------------------------- void SvxJavaOptionsPage::LoadJREs() { - WaitObject aWaitObj( &m_aJavaList ); + WaitObject aWaitObj(m_pJavaList); javaFrameworkError eErr = jfw_findAllJREs( &m_parJavaInfo, &m_nInfoSize ); if ( JFW_E_NONE == eErr && m_parJavaInfo ) { @@ -459,9 +463,9 @@ void SvxJavaOptionsPage::LoadJREs() JavaInfo* pCmpInfo = *parInfo++; if ( jfw_areEqualJavaInfo( pCmpInfo, pSelectedJava ) ) { - SvTreeListEntry* pEntry = m_aJavaList.GetEntry(i); + SvTreeListEntry* pEntry = m_pJavaList->GetEntry(i); if ( pEntry ) - m_aJavaList.HandleEntryChecked( pEntry ); + m_pJavaList->HandleEntryChecked( pEntry ); break; } } @@ -482,7 +486,7 @@ void SvxJavaOptionsPage::AddJRE( JavaInfo* _pInfo ) sEntry.append('\t'); if ( ( _pInfo->nFeatures & JFW_FEATURE_ACCESSBRIDGE ) == JFW_FEATURE_ACCESSBRIDGE ) sEntry.append(m_sAccessibilityText); - SvTreeListEntry* pEntry = m_aJavaList.InsertEntry(sEntry.makeStringAndClear()); + SvTreeListEntry* pEntry = m_pJavaList->InsertEntry(sEntry.makeStringAndClear()); INetURLObject aLocObj( ::rtl::OUString( _pInfo->sLocation ) ); String* pLocation = new String( aLocObj.getFSysPath( INetURLObject::FSYS_DETECT ) ); pEntry->SetUserData( pLocation ); @@ -492,22 +496,22 @@ void SvxJavaOptionsPage::AddJRE( JavaInfo* _pInfo ) void SvxJavaOptionsPage::HandleCheckEntry( SvTreeListEntry* _pEntry ) { - m_aJavaList.Select( _pEntry, sal_True ); - SvButtonState eState = m_aJavaList.GetCheckButtonState( _pEntry ); + m_pJavaList->Select( _pEntry, sal_True ); + SvButtonState eState = m_pJavaList->GetCheckButtonState( _pEntry ); if ( SV_BUTTON_CHECKED == eState ) { // we have radio button behavior -> so uncheck the other entries - SvTreeListEntry* pEntry = m_aJavaList.First(); + SvTreeListEntry* pEntry = m_pJavaList->First(); while ( pEntry ) { if ( pEntry != _pEntry ) - m_aJavaList.SetCheckButtonState( pEntry, SV_BUTTON_UNCHECKED ); - pEntry = m_aJavaList.Next( pEntry ); + m_pJavaList->SetCheckButtonState( pEntry, SV_BUTTON_UNCHECKED ); + pEntry = m_pJavaList->Next( pEntry ); } } else - m_aJavaList.SetCheckButtonState( _pEntry, SV_BUTTON_CHECKED ); + m_pJavaList->SetCheckButtonState( _pEntry, SV_BUTTON_CHECKED ); } // ----------------------------------------------------------------------- @@ -552,14 +556,14 @@ void SvxJavaOptionsPage::AddFolder( const ::rtl::OUString& _rFolder ) jfw_addJRELocation( pInfo->sLocation ); AddJRE( pInfo ); m_aAddedInfos.push_back( pInfo ); - nPos = m_aJavaList.GetEntryCount() - 1; + nPos = m_pJavaList->GetEntryCount() - 1; } else jfw_freeJavaInfo( pInfo ); - SvTreeListEntry* pEntry = m_aJavaList.GetEntry( nPos ); - m_aJavaList.Select( pEntry ); - m_aJavaList.SetCheckButtonState( pEntry, SV_BUTTON_CHECKED ); + SvTreeListEntry* pEntry = m_pJavaList->GetEntry( nPos ); + m_pJavaList->Select( pEntry ); + m_pJavaList->SetCheckButtonState( pEntry, SV_BUTTON_CHECKED ); HandleCheckEntry( pEntry ); bStartAgain = false; } @@ -611,17 +615,17 @@ sal_Bool SvxJavaOptionsPage::FillItemSet( SfxItemSet& /*rCoreSet*/ ) bModified = sal_True; } - if ( m_aExperimentalCB.IsChecked() != m_aExperimentalCB.GetSavedValue() ) + if ( m_pExperimentalCB->IsChecked() != m_pExperimentalCB->GetSavedValue() ) { SvtMiscOptions aMiscOpt; - aMiscOpt.SetExperimentalMode( m_aExperimentalCB.IsChecked() ); + aMiscOpt.SetExperimentalMode( m_pExperimentalCB->IsChecked() ); bModified = sal_True; } - if ( m_aMacroCB.IsChecked() != m_aMacroCB.GetSavedValue() ) + if ( m_pMacroCB->IsChecked() != m_pMacroCB->GetSavedValue() ) { SvtMiscOptions aMiscOpt; - aMiscOpt.SetMacroRecorderMode( m_aMacroCB.IsChecked() ); + aMiscOpt.SetMacroRecorderMode( m_pMacroCB->IsChecked() ); bModified = sal_True; } @@ -639,10 +643,10 @@ sal_Bool SvxJavaOptionsPage::FillItemSet( SfxItemSet& /*rCoreSet*/ ) } } - sal_uLong nCount = m_aJavaList.GetEntryCount(); + sal_uLong nCount = m_pJavaList->GetEntryCount(); for ( sal_uLong i = 0; i < nCount; ++i ) { - if ( m_aJavaList.GetCheckButtonState( m_aJavaList.GetEntry(i) ) == SV_BUTTON_CHECKED ) + if ( m_pJavaList->GetCheckButtonState( m_pJavaList->GetEntry(i) ) == SV_BUTTON_CHECKED ) { JavaInfo* pInfo = NULL; if ( i < static_cast< sal_uLong >( m_nInfoSize ) ) @@ -683,9 +687,9 @@ sal_Bool SvxJavaOptionsPage::FillItemSet( SfxItemSet& /*rCoreSet*/ ) eErr = jfw_getEnabled( &bEnabled ); DBG_ASSERT( JFW_E_NONE == eErr, "SvxJavaOptionsPage::FillItemSet(): error in jfw_getEnabled" ); - if ( bEnabled != m_aJavaEnableCB.IsChecked() ) + if ( bEnabled != m_pJavaEnableCB->IsChecked() ) { - eErr = jfw_setEnabled( m_aJavaEnableCB.IsChecked() ); + eErr = jfw_setEnabled( m_pJavaEnableCB->IsChecked() ); DBG_ASSERT( JFW_E_NONE == eErr, "SvxJavaOptionsPage::FillItemSet(): error in jfw_setEnabled" ); bModified = sal_True; @@ -707,13 +711,13 @@ void SvxJavaOptionsPage::Reset( const SfxItemSet& /*rSet*/ ) javaFrameworkError eErr = jfw_getEnabled( &bEnabled ); if ( eErr != JFW_E_NONE ) bEnabled = sal_False; - m_aJavaEnableCB.Check( bEnabled ); - EnableHdl_Impl( &m_aJavaEnableCB ); + m_pJavaEnableCB->Check( bEnabled ); + EnableHdl_Impl(m_pJavaEnableCB); - m_aExperimentalCB.Check( aMiscOpt.IsExperimentalMode() ); - m_aExperimentalCB.SaveValue(); - m_aMacroCB.Check( aMiscOpt.IsMacroRecorderMode() ); - m_aMacroCB.SaveValue(); + m_pExperimentalCB->Check( aMiscOpt.IsExperimentalMode() ); + m_pExperimentalCB->SaveValue(); + m_pMacroCB->Check( aMiscOpt.IsMacroRecorderMode() ); + m_pMacroCB->SaveValue(); m_aResetTimer.Start(); } diff --git a/cui/source/options/optjava.hrc b/cui/source/options/optjava.hrc index ca1ced83b5ce..6a37d5caa7b2 100644 --- a/cui/source/options/optjava.hrc +++ b/cui/source/options/optjava.hrc @@ -20,30 +20,6 @@ // defines --------------------------------------------------------------- -// class SvxJavaOptionsPage ---------------------------------------------- - -#define FL_JAVA 10 -#define CB_JAVA_ENABLE 11 -#define FT_JAVA_FOUND 12 -#define LB_JAVA 13 -#define FT_JAVA_PATH 14 - -#define FL_EXPERIMENTAL 15 -#define CB_EXPERIMENTAL 16 -#define CB_MACRO 17 - -#define PB_ADD 20 -#define PB_PARAMETER 21 -#define PB_CLASSPATH 22 - -#define STR_INSTALLED_IN 30 -#define STR_ACCESSIBILITY 31 -#define STR_ADDDLGTEXT 32 - -#define STR_HEADER_VENDOR 40 -#define STR_HEADER_VERSION 41 -#define STR_HEADER_FEATURES 42 - // class SvxJavaParameterDlg --------------------------------------------- #define FT_PARAMETER 10 @@ -74,11 +50,5 @@ #define PB_PATH_ESC 32 #define PB_PATH_HLP 33 - - - - - - #endif // #ifndef _SVX_OPTJAVA_HRC diff --git a/cui/source/options/optjava.hxx b/cui/source/options/optjava.hxx index 7e7d9f5a8ec2..cdd96b7fdb3c 100644 --- a/cui/source/options/optjava.hxx +++ b/cui/source/options/optjava.hxx @@ -36,21 +36,20 @@ typedef struct _JavaInfo JavaInfo; class SvxJavaParameterDlg; class SvxJavaClassPathDlg; +class SvxJavaListBox; // class SvxJavaOptionsPage ---------------------------------------------- class SvxJavaOptionsPage : public SfxTabPage { private: - FixedLine m_aJavaLine; - CheckBox m_aJavaEnableCB; - FixedText m_aJavaFoundLabel; - SvxSimpleTableContainer m_aJavaListContainer; - svx::SvxRadioButtonListBox m_aJavaList; - FixedText m_aJavaPathText; - PushButton m_aAddBtn; - PushButton m_aParameterBtn; - PushButton m_aClassPathBtn; + CheckBox* m_pJavaEnableCB; + VclContainer* m_pJavaBox; + SvxJavaListBox* m_pJavaList; + FixedText* m_pJavaPathText; + PushButton* m_pAddBtn; + PushButton* m_pParameterBtn; + PushButton* m_pClassPathBtn; SvxJavaParameterDlg* m_pParamDlg; SvxJavaClassPathDlg* m_pPathDlg; @@ -65,9 +64,8 @@ private: String m_sAddDialogText; Timer m_aResetTimer; - FixedLine m_aExperimental; - CheckBox m_aExperimentalCB; - CheckBox m_aMacroCB; + CheckBox* m_pExperimentalCB; + CheckBox* m_pMacroCB; ::std::vector< JavaInfo* > m_aAddedInfos; diff --git a/cui/source/options/optjava.src b/cui/source/options/optjava.src index 4ee27517a2bf..597cd9dbd07d 100644 --- a/cui/source/options/optjava.src +++ b/cui/source/options/optjava.src @@ -20,114 +20,6 @@ #include <cuires.hrc> #include "helpid.hrc" -// RID_SVXPAGE_OPTIONS_JAVA ---------------------------------------------- - -TabPage RID_SVXPAGE_OPTIONS_JAVA -{ - HelpId = HID_OPTIONS_JAVA ; - OutputSize = TRUE ; - SVLook = TRUE ; - Hide = TRUE ; - Size = MAP_APPFONT ( TP_WIDTH , TP_HEIGHT ) ; - Text [ en-US ] = "Java" ; - - FixedLine FL_JAVA - { - Pos = MAP_APPFONT ( 6 , 3 ) ; - Size = MAP_APPFONT ( 248 , 8 ) ; - Text [ en-US ] = "Java options" ; - }; - CheckBox CB_JAVA_ENABLE - { - HelpID = "cui:CheckBox:RID_SVXPAGE_OPTIONS_JAVA:CB_JAVA_ENABLE"; - Pos = MAP_APPFONT ( 12, 14 ) ; - Size = MAP_APPFONT ( 242 , 10 ) ; - Text [ en-US ] = "~Use a Java runtime environment" ; - }; - FixedText FT_JAVA_FOUND - { - Pos = MAP_APPFONT ( 21 , 27 ) ; - Size = MAP_APPFONT ( 233 , 8 ) ; - Text [ en-US ] = "~Java runtime environments (JRE) already installed:" ; - }; - Control LB_JAVA - { - Pos = MAP_APPFONT ( 21 , 38 ) ; - Size = MAP_APPFONT ( 177 , 60 ) ; - Border = TRUE ; - TabStop = TRUE ; - }; - FixedText FT_JAVA_PATH - { - Pos = MAP_APPFONT ( 21 , 100 ) ; - Size = MAP_APPFONT ( 233 , 8 ) ; - NoLabel = TRUE ; - }; - PushButton PB_ADD - { - HelpID = "cui:PushButton:RID_SVXPAGE_OPTIONS_JAVA:PB_ADD"; - Pos = MAP_APPFONT ( 204 , 38 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - Text [ en-US ] = "~Add..." ; - }; - PushButton PB_PARAMETER - { - HelpID = "cui:PushButton:RID_SVXPAGE_OPTIONS_JAVA:PB_PARAMETER"; - Pos = MAP_APPFONT ( 204 , 55 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - Text [ en-US ] = "~Parameters..." ; - }; - PushButton PB_CLASSPATH - { - HelpID = "cui:PushButton:RID_SVXPAGE_OPTIONS_JAVA:PB_CLASSPATH"; - Pos = MAP_APPFONT ( 204 , 72 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - Text [ en-US ] = "~Class Path..." ; - }; - FixedLine FL_EXPERIMENTAL - { - Pos = MAP_APPFONT ( 6 , 120 ) ; - Size = MAP_APPFONT ( 248 , 8 ) ; - Text [ en-US ] = "Optional (unstable) options" ; - }; - CheckBox CB_EXPERIMENTAL - { - Pos = MAP_APPFONT( 12, 130 ); - Size = MAP_APPFONT ( 242 , 10 ); - Text [ en-US ] = "Enable experimental features"; - }; - CheckBox CB_MACRO - { - Pos = MAP_APPFONT( 12, 140 ); - Size = MAP_APPFONT ( 242 , 10 ); - Text [ en-US ] = "Enable macro recording"; - }; - String STR_INSTALLED_IN - { - Text [ en-US ] = "Location: " ; - }; - String STR_ACCESSIBILITY - { - Text [ en-US ] = "with accessibility support" ; - }; - String STR_ADDDLGTEXT - { - Text [ en-US ] = "Select a Java Runtime Environment" ; - }; - String STR_HEADER_VENDOR - { - Text [ en-US ] = "Vendor" ; - }; - String STR_HEADER_VERSION - { - Text [ en-US ] = "Version" ; - }; - String STR_HEADER_FEATURES - { - Text [ en-US ] = "Features" ; - }; -}; - // RID_SVXDLG_JAVA_PARAMETER --------------------------------------------- ModalDialog RID_SVXDLG_JAVA_PARAMETER diff --git a/cui/source/options/radiobtnbox.cxx b/cui/source/options/radiobtnbox.cxx index 599b573c9835..a19c89cef714 100644 --- a/cui/source/options/radiobtnbox.cxx +++ b/cui/source/options/radiobtnbox.cxx @@ -89,6 +89,11 @@ const Point& SvxRadioButtonListBox::GetCurMousePoint() const return m_aCurMousePoint; } +long SvxRadioButtonListBox::GetControlColumnWidth() const +{ + return pCheckButtonData->Width(); +} + } // end of namespace ::svx /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/cui/uiconfig/ui/optadvancedpage.ui b/cui/uiconfig/ui/optadvancedpage.ui new file mode 100644 index 000000000000..9b3a76e71b91 --- /dev/null +++ b/cui/uiconfig/ui/optadvancedpage.ui @@ -0,0 +1,381 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <!-- interface-requires gtk+ 3.0 --> + <object class="GtkBox" id="OptAdvancedPage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">18</property> + <child> + <object class="GtkFrame" id="frame1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkBox" id="box2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <object class="GtkCheckButton" id="javaenabled"> + <property name="label" translatable="yes">_Use a Java runtime environment</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkAlignment" id="alignment2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="left_padding">12</property> + <child> + <object class="GtkBox" id="javabox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> + <property name="spacing">12</property> + <child> + <object class="GtkLabel" id="label2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Java runtime environments (JRE) already installed:</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">javas</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkButtonBox" id="buttonbox1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">12</property> + <property name="layout_style">start</property> + <child> + <object class="GtkButton" id="add"> + <property name="label">_Add...</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="parameters"> + <property name="label" translatable="yes">_Parameters...</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="classpath"> + <property name="label" translatable="yes">_Class Path...</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <child> + <object class="GtkGrid" id="grid3"> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkLabel" id="vendor"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">Vendor</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="version"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">Version</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="features"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">Features</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="a11y"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">with accessibility support</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="selectruntime"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Select a Java Runtime Environment</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="svxcorelo:SvxSimpleTableContainer" id="javas"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="javapath"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="yalign">0.49000000953674316</property> + <property name="label" translatable="yes">Location: </property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Java options</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkCheckButton" id="experimental"> + <property name="label" translatable="yes">Enable experimental features</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="macrorecording"> + <property name="label" translatable="yes">Enable macro recording</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="xalign">0</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label12"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Optional (unstable) options</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> +</interface> |