diff options
-rw-r--r-- | sc/UIConfig_scalc.mk | 1 | ||||
-rw-r--r-- | sc/inc/helpids.h | 2 | ||||
-rw-r--r-- | sc/inc/sc.hrc | 1 | ||||
-rw-r--r-- | sc/source/ui/dbgui/pvfundlg.cxx | 187 | ||||
-rw-r--r-- | sc/source/ui/dbgui/pvfundlg.src | 204 | ||||
-rw-r--r-- | sc/source/ui/inc/pvfundlg.hxx | 51 | ||||
-rw-r--r-- | sc/uiconfig/scalc/ui/datafieldoptionsdialog.ui | 574 |
7 files changed, 689 insertions, 331 deletions
diff --git a/sc/UIConfig_scalc.mk b/sc/UIConfig_scalc.mk index ac2f383aaf36..29bf45659764 100644 --- a/sc/UIConfig_scalc.mk +++ b/sc/UIConfig_scalc.mk @@ -75,6 +75,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/scalc,\ sc/uiconfig/scalc/ui/createnamesdialog \ sc/uiconfig/scalc/ui/databaroptions \ sc/uiconfig/scalc/ui/datafielddialog \ + sc/uiconfig/scalc/ui/datafieldoptionsdialog \ sc/uiconfig/scalc/ui/dataform \ sc/uiconfig/scalc/ui/datastreams \ sc/uiconfig/scalc/ui/definedatabaserangedialog \ diff --git a/sc/inc/helpids.h b/sc/inc/helpids.h index b93ca2289d32..6e5ec3bd0818 100644 --- a/sc/inc/helpids.h +++ b/sc/inc/helpids.h @@ -142,8 +142,6 @@ #define HID_SC_DRAW_RENAME "SC_HID_SC_DRAW_RENAME" -#define HID_SC_DPSUBT_OPT "SC_HID_SC_DPSUBT_OPT" -#define HID_SC_DPSUBT_HIDE "SC_HID_SC_DPSUBT_HIDE" #define HID_SC_DPNUMGROUP "SC_HID_SC_DPNUMGROUP" #define HID_SC_DPDATEGROUP "SC_HID_SC_DPDATEGROUP" #define HID_SC_DPDATEGROUP_LB "SC_HID_SC_DPDATEGROUP_LB" diff --git a/sc/inc/sc.hrc b/sc/inc/sc.hrc index 4cbfb88f04c0..3ed851abd2d8 100644 --- a/sc/inc/sc.hrc +++ b/sc/inc/sc.hrc @@ -1070,7 +1070,6 @@ #define RID_SCDLG_DAPISERVICE (SC_DIALOGS_START + 130) -#define RID_SCDLG_DPSUBTOTAL_OPT (SC_DIALOGS_START + 134) #define RID_SCDLG_DPNUMGROUP (SC_DIALOGS_START + 135) #define RID_SCDLG_DPDATEGROUP (SC_DIALOGS_START + 136) #define RID_SCDLG_DPSHOWDETAIL (SC_DIALOGS_START + 137) diff --git a/sc/source/ui/dbgui/pvfundlg.cxx b/sc/source/ui/dbgui/pvfundlg.cxx index 3f5839e22975..a6c7f7b051f7 100644 --- a/sc/source/ui/dbgui/pvfundlg.cxx +++ b/sc/source/ui/dbgui/pvfundlg.cxx @@ -523,38 +523,36 @@ IMPL_LINK( ScDPSubtotalDlg, ClickHdl, PushButton*, pBtn ) ScDPSubtotalOptDlg::ScDPSubtotalOptDlg( Window* pParent, ScDPObject& rDPObj, const ScDPLabelData& rLabelData, const ScDPNameVec& rDataFields, - bool bEnableLayout ) : - ModalDialog ( pParent, ScResId( RID_SCDLG_DPSUBTOTAL_OPT ) ), - maFlSortBy ( this, ScResId( FL_SORT_BY ) ), - maLbSortBy ( this, ScResId( LB_SORT_BY ) ), - maRbSortAsc ( this, ScResId( RB_SORT_ASC ) ), - maRbSortDesc ( this, ScResId( RB_SORT_DESC ) ), - maRbSortMan ( this, ScResId( RB_SORT_MAN ) ), - maFlLayout ( this, ScResId( FL_LAYOUT ) ), - maFtLayout ( this, ScResId( FT_LAYOUT ) ), - maLbLayout ( this, ScResId( LB_LAYOUT ) ), - maCbLayoutEmpty ( this, ScResId( CB_LAYOUT_EMPTY ) ), - maFlAutoShow ( this, ScResId( FL_AUTOSHOW ) ), - maCbShow ( this, ScResId( CB_SHOW ) ), - maNfShow ( this, ScResId( NF_SHOW ) ), - maFtShow ( this, ScResId( FT_SHOW ) ), - maFtShowFrom ( this, ScResId( FT_SHOW_FROM ) ), - maLbShowFrom ( this, ScResId( LB_SHOW_FROM ) ), - maFtShowUsing ( this, ScResId( FT_SHOW_USING ) ), - maLbShowUsing ( this, ScResId( LB_SHOW_USING ) ), - maFlHide ( this, ScResId( FL_HIDE ) ), - maLbHide ( this, ScResId( CT_HIDE ) ), - maFtHierarchy ( this, ScResId( FT_HIERARCHY ) ), - maLbHierarchy ( this, ScResId( LB_HIERARCHY ) ), - maBtnOk ( this, ScResId( BTN_OK ) ), - maBtnCancel ( this, ScResId( BTN_CANCEL ) ), - maBtnHelp ( this, ScResId( BTN_HELP ) ), - maLbLayoutWrp ( maLbLayout, spLayoutMap ), - maLbShowFromWrp ( maLbShowFrom, spShowFromMap ), - mrDPObj ( rDPObj ), - maLabelData ( rLabelData ) + bool bEnableLayout ) + : ModalDialog(pParent, "DataFieldOptionsDialog", + "modules/scalc/ui/datafieldoptionsdialog.ui") + , mrDPObj(rDPObj) + , maLabelData(rLabelData) { - FreeResource(); + get(m_pLbSortBy, "sortby"); + m_pLbSortBy->set_width_request(m_pLbSortBy->approximate_char_width() * 20); + get(m_pRbSortAsc, "ascending"); + get(m_pRbSortDesc, "descending"); + get(m_pRbSortMan, "manual"); + get(m_pLayoutFrame, "layoutframe"); + get(m_pLbLayout, "layout"); + get(m_pCbLayoutEmpty, "emptyline"); + get(m_pCbShow, "show"); + get(m_pNfShow, "items"); + get(m_pFtShow, "showft"); + get(m_pFtShowFrom, "showfromft"); + get(m_pLbShowFrom, "from"); + get(m_pFtShowUsing, "usingft"); + get(m_pLbShowUsing, "using"); + get(m_pHideFrame, "hideframe"); + get(m_pLbHide, "hideitems"); + m_pLbHide->set_height_request(GetTextHeight() * 5); + get(m_pFtHierarchy, "hierarchyft"); + get(m_pLbHierarchy, "hierarchy"); + + m_xLbLayoutWrp.reset(new ScDPListBoxWrapper(*m_pLbLayout, spLayoutMap)); + m_xLbShowFromWrp.reset(new ScDPListBoxWrapper(*m_pLbShowFrom, spShowFromMap)); + Init( rDataFields, bEnableLayout ); } @@ -562,34 +560,34 @@ void ScDPSubtotalOptDlg::FillLabelData( ScDPLabelData& rLabelData ) const { // *** SORTING *** - if( maRbSortMan.IsChecked() ) + if( m_pRbSortMan->IsChecked() ) rLabelData.maSortInfo.Mode = DataPilotFieldSortMode::MANUAL; - else if( maLbSortBy.GetSelectEntryPos() == SC_SORTNAME_POS ) + else if( m_pLbSortBy->GetSelectEntryPos() == SC_SORTNAME_POS ) rLabelData.maSortInfo.Mode = DataPilotFieldSortMode::NAME; else rLabelData.maSortInfo.Mode = DataPilotFieldSortMode::DATA; - ScDPName aFieldName = GetFieldName(maLbSortBy.GetSelectEntry()); + ScDPName aFieldName = GetFieldName(m_pLbSortBy->GetSelectEntry()); if (!aFieldName.maName.isEmpty()) { rLabelData.maSortInfo.Field = ScDPUtil::createDuplicateDimensionName(aFieldName.maName, aFieldName.mnDupCount); - rLabelData.maSortInfo.IsAscending = maRbSortAsc.IsChecked(); + rLabelData.maSortInfo.IsAscending = m_pRbSortAsc->IsChecked(); } // *** LAYOUT MODE *** - rLabelData.maLayoutInfo.LayoutMode = maLbLayoutWrp.GetControlValue(); - rLabelData.maLayoutInfo.AddEmptyLines = maCbLayoutEmpty.IsChecked(); + rLabelData.maLayoutInfo.LayoutMode = m_xLbLayoutWrp->GetControlValue(); + rLabelData.maLayoutInfo.AddEmptyLines = m_pCbLayoutEmpty->IsChecked(); // *** AUTO SHOW *** - aFieldName = GetFieldName(maLbShowUsing.GetSelectEntry()); + aFieldName = GetFieldName(m_pLbShowUsing->GetSelectEntry()); if (!aFieldName.maName.isEmpty()) { - rLabelData.maShowInfo.IsEnabled = maCbShow.IsChecked(); - rLabelData.maShowInfo.ShowItemsMode = maLbShowFromWrp.GetControlValue(); - rLabelData.maShowInfo.ItemCount = sal::static_int_cast<sal_Int32>( maNfShow.GetValue() ); + rLabelData.maShowInfo.IsEnabled = m_pCbShow->IsChecked(); + rLabelData.maShowInfo.ShowItemsMode = m_xLbShowFromWrp->GetControlValue(); + rLabelData.maShowInfo.ItemCount = sal::static_int_cast<sal_Int32>( m_pNfShow->GetValue() ); rLabelData.maShowInfo.DataField = ScDPUtil::createDuplicateDimensionName(aFieldName.maName, aFieldName.mnDupCount); } @@ -597,13 +595,13 @@ void ScDPSubtotalOptDlg::FillLabelData( ScDPLabelData& rLabelData ) const // *** HIDDEN ITEMS *** rLabelData.maMembers = maLabelData.maMembers; - sal_uLong nVisCount = maLbHide.GetEntryCount(); + sal_uLong nVisCount = m_pLbHide->GetEntryCount(); for( sal_uInt16 nPos = 0; nPos < nVisCount; ++nPos ) - rLabelData.maMembers[nPos].mbVisible = !maLbHide.IsChecked(nPos); + rLabelData.maMembers[nPos].mbVisible = !m_pLbHide->IsChecked(nPos); // *** HIERARCHY *** - rLabelData.mnUsedHier = maLbHierarchy.GetSelectEntryCount() ? maLbHierarchy.GetSelectEntryPos() : 0; + rLabelData.mnUsedHier = m_pLbHierarchy->GetSelectEntryCount() ? m_pLbHierarchy->GetSelectEntryPos() : 0; } void ScDPSubtotalOptDlg::Init( const ScDPNameVec& rDataFields, bool bEnableLayout ) @@ -613,110 +611,105 @@ void ScDPSubtotalOptDlg::Init( const ScDPNameVec& rDataFields, bool bEnableLayou sal_Int32 nSortMode = maLabelData.maSortInfo.Mode; // sort fields list box - maLbSortBy.InsertEntry(maLabelData.getDisplayName()); + m_pLbSortBy->InsertEntry(maLabelData.getDisplayName()); for( ScDPNameVec::const_iterator aIt = rDataFields.begin(), aEnd = rDataFields.end(); aIt != aEnd; ++aIt ) { // Cache names for later lookup. maDataFieldNameMap.insert(NameMapType::value_type(aIt->maLayoutName, *aIt)); - maLbSortBy.InsertEntry( aIt->maLayoutName ); - maLbShowUsing.InsertEntry( aIt->maLayoutName ); // for AutoShow + m_pLbSortBy->InsertEntry( aIt->maLayoutName ); + m_pLbShowUsing->InsertEntry( aIt->maLayoutName ); // for AutoShow } - if( maLbSortBy.GetEntryCount() > SC_SORTDATA_POS ) - maLbSortBy.SetSeparatorPos( SC_SORTDATA_POS - 1 ); + if( m_pLbSortBy->GetEntryCount() > SC_SORTDATA_POS ) + m_pLbSortBy->SetSeparatorPos( SC_SORTDATA_POS - 1 ); sal_uInt16 nSortPos = SC_SORTNAME_POS; if( nSortMode == DataPilotFieldSortMode::DATA ) { - nSortPos = FindListBoxEntry( maLbSortBy, maLabelData.maSortInfo.Field, SC_SORTDATA_POS ); - if( nSortPos >= maLbSortBy.GetEntryCount() ) + nSortPos = FindListBoxEntry( *m_pLbSortBy, maLabelData.maSortInfo.Field, SC_SORTDATA_POS ); + if( nSortPos >= m_pLbSortBy->GetEntryCount() ) { nSortPos = SC_SORTNAME_POS; nSortMode = DataPilotFieldSortMode::MANUAL; } } - maLbSortBy.SelectEntryPos( nSortPos ); + m_pLbSortBy->SelectEntryPos( nSortPos ); // sorting mode - maRbSortAsc.SetClickHdl( LINK( this, ScDPSubtotalOptDlg, RadioClickHdl ) ); - maRbSortDesc.SetClickHdl( LINK( this, ScDPSubtotalOptDlg, RadioClickHdl ) ); - maRbSortMan.SetClickHdl( LINK( this, ScDPSubtotalOptDlg, RadioClickHdl ) ); + m_pRbSortAsc->SetClickHdl( LINK( this, ScDPSubtotalOptDlg, RadioClickHdl ) ); + m_pRbSortDesc->SetClickHdl( LINK( this, ScDPSubtotalOptDlg, RadioClickHdl ) ); + m_pRbSortMan->SetClickHdl( LINK( this, ScDPSubtotalOptDlg, RadioClickHdl ) ); RadioButton* pRBtn = 0; switch( nSortMode ) { case DataPilotFieldSortMode::NONE: case DataPilotFieldSortMode::MANUAL: - pRBtn = &maRbSortMan; + pRBtn = m_pRbSortMan; break; default: - pRBtn = maLabelData.maSortInfo.IsAscending ? &maRbSortAsc : &maRbSortDesc; + pRBtn = maLabelData.maSortInfo.IsAscending ? m_pRbSortAsc : m_pRbSortDesc; } pRBtn->Check(); RadioClickHdl( pRBtn ); // *** LAYOUT MODE *** - maFlLayout.Enable( bEnableLayout ); - maFtLayout.Enable( bEnableLayout ); - maLbLayout.Enable( bEnableLayout ); - maCbLayoutEmpty.Enable( bEnableLayout ); + m_pLayoutFrame->Enable(bEnableLayout); - maLbLayoutWrp.SetControlValue( maLabelData.maLayoutInfo.LayoutMode ); - maCbLayoutEmpty.Check( maLabelData.maLayoutInfo.AddEmptyLines ); + m_xLbLayoutWrp->SetControlValue( maLabelData.maLayoutInfo.LayoutMode ); + m_pCbLayoutEmpty->Check( maLabelData.maLayoutInfo.AddEmptyLines ); // *** AUTO SHOW *** - maCbShow.Check( maLabelData.maShowInfo.IsEnabled ); - maCbShow.SetClickHdl( LINK( this, ScDPSubtotalOptDlg, CheckHdl ) ); + m_pCbShow->Check( maLabelData.maShowInfo.IsEnabled ); + m_pCbShow->SetClickHdl( LINK( this, ScDPSubtotalOptDlg, CheckHdl ) ); - maLbShowFromWrp.SetControlValue( maLabelData.maShowInfo.ShowItemsMode ); + m_xLbShowFromWrp->SetControlValue( maLabelData.maShowInfo.ShowItemsMode ); long nCount = static_cast< long >( maLabelData.maShowInfo.ItemCount ); if( nCount < 1 ) nCount = SC_SHOW_DEFAULT; - maNfShow.SetValue( nCount ); + m_pNfShow->SetValue( nCount ); - // maLbShowUsing already filled above - maLbShowUsing.SelectEntry( maLabelData.maShowInfo.DataField ); - if( maLbShowUsing.GetSelectEntryPos() >= maLbShowUsing.GetEntryCount() ) - maLbShowUsing.SelectEntryPos( 0 ); + // m_pLbShowUsing already filled above + m_pLbShowUsing->SelectEntry( maLabelData.maShowInfo.DataField ); + if( m_pLbShowUsing->GetSelectEntryPos() >= m_pLbShowUsing->GetEntryCount() ) + m_pLbShowUsing->SelectEntryPos( 0 ); - CheckHdl( &maCbShow ); // enable/disable dependent controls + CheckHdl(m_pCbShow); // enable/disable dependent controls // *** HIDDEN ITEMS *** - maLbHide.SetHelpId( HID_SC_DPSUBT_HIDE ); InitHideListBox(); // *** HIERARCHY *** if( maLabelData.maHiers.getLength() > 1 ) { - lclFillListBox( maLbHierarchy, maLabelData.maHiers ); + lclFillListBox( *m_pLbHierarchy, maLabelData.maHiers ); sal_Int32 nHier = maLabelData.mnUsedHier; if( (nHier < 0) || (nHier >= maLabelData.maHiers.getLength()) ) nHier = 0; - maLbHierarchy.SelectEntryPos( static_cast< sal_uInt16 >( nHier ) ); - maLbHierarchy.SetSelectHdl( LINK( this, ScDPSubtotalOptDlg, SelectHdl ) ); + m_pLbHierarchy->SelectEntryPos( static_cast< sal_uInt16 >( nHier ) ); + m_pLbHierarchy->SetSelectHdl( LINK( this, ScDPSubtotalOptDlg, SelectHdl ) ); } else { - maFtHierarchy.Disable(); - maLbHierarchy.Disable(); + m_pFtHierarchy->Disable(); + m_pLbHierarchy->Disable(); } } void ScDPSubtotalOptDlg::InitHideListBox() { - maLbHide.Clear(); - lclFillListBox( maLbHide, maLabelData.maMembers ); + m_pLbHide->Clear(); + lclFillListBox( *m_pLbHide, maLabelData.maMembers ); size_t n = maLabelData.maMembers.size(); for (size_t i = 0; i < n; ++i) - maLbHide.CheckEntryPos(static_cast<sal_uInt16>(i), !maLabelData.maMembers[i].mbVisible); - bool bEnable = maLbHide.GetEntryCount() > 0; - maFlHide.Enable( bEnable ); - maLbHide.Enable( bEnable ); + m_pLbHide->CheckEntryPos(static_cast<sal_uInt16>(i), !maLabelData.maMembers[i].mbVisible); + bool bEnable = m_pLbHide->GetEntryCount() > 0; + m_pHideFrame->Enable(bEnable); } ScDPName ScDPSubtotalOptDlg::GetFieldName(const OUString& rLayoutName) const @@ -747,32 +740,32 @@ sal_uInt16 ScDPSubtotalOptDlg::FindListBoxEntry( IMPL_LINK( ScDPSubtotalOptDlg, RadioClickHdl, RadioButton*, pBtn ) { - maLbSortBy.Enable( pBtn != &maRbSortMan ); + m_pLbSortBy->Enable( pBtn != m_pRbSortMan ); return 0; } IMPL_LINK( ScDPSubtotalOptDlg, CheckHdl, CheckBox*, pCBox ) { - if( pCBox == &maCbShow ) + if (pCBox == m_pCbShow) { - bool bEnable = maCbShow.IsChecked(); - maNfShow.Enable( bEnable ); - maFtShow.Enable( bEnable ); - maFtShowFrom.Enable( bEnable ); - maLbShowFrom.Enable( bEnable ); - - bool bEnableUsing = bEnable && (maLbShowUsing.GetEntryCount() > 0); - maFtShowUsing.Enable( bEnableUsing ); - maLbShowUsing.Enable( bEnableUsing ); + bool bEnable = m_pCbShow->IsChecked(); + m_pNfShow->Enable( bEnable ); + m_pFtShow->Enable( bEnable ); + m_pFtShowFrom->Enable( bEnable ); + m_pLbShowFrom->Enable( bEnable ); + + bool bEnableUsing = bEnable && (m_pLbShowUsing->GetEntryCount() > 0); + m_pFtShowUsing->Enable(bEnableUsing); + m_pLbShowUsing->Enable(bEnableUsing); } return 0; } IMPL_LINK( ScDPSubtotalOptDlg, SelectHdl, ListBox*, pLBox ) { - if( pLBox == &maLbHierarchy ) + if (pLBox == m_pLbHierarchy) { - mrDPObj.GetMembers(maLabelData.mnCol, maLbHierarchy.GetSelectEntryPos(), maLabelData.maMembers); + mrDPObj.GetMembers(maLabelData.mnCol, m_pLbHierarchy->GetSelectEntryPos(), maLabelData.maMembers); InitHideListBox(); } return 0; diff --git a/sc/source/ui/dbgui/pvfundlg.src b/sc/source/ui/dbgui/pvfundlg.src index 3fc2210dc6a5..98af0ca57cf7 100644 --- a/sc/source/ui/dbgui/pvfundlg.src +++ b/sc/source/ui/dbgui/pvfundlg.src @@ -39,210 +39,6 @@ StringArray SCSTR_DPFUNCLISTBOX // ---------------------------------------------------------------------------- -ModalDialog RID_SCDLG_DPSUBTOTAL_OPT -{ - OutputSize = TRUE; - HelpId = HID_SC_DPSUBT_OPT; - SVLook = TRUE; - Size = MAP_APPFONT( 266, 240 ); - Moveable = TRUE; - Closeable = FALSE; - Hide = TRUE; - FixedLine FL_SORT_BY - { - Pos = MAP_APPFONT( 6, 3 ); - Size = MAP_APPFONT( 198, 8 ); - Text [ en-US ] = "Sort ~by"; - }; - ListBox LB_SORT_BY - { - HelpID = "sc:ListBox:RID_SCDLG_DPSUBTOTAL_OPT:LB_SORT_BY"; - Pos = MAP_APPFONT( 12, 26 ); - Size = MAP_APPFONT( 96, 120 ); - TabStop = TRUE; - Border = TRUE; - DropDown = TRUE; - }; - RadioButton RB_SORT_ASC - { - HelpID = "sc:RadioButton:RID_SCDLG_DPSUBTOTAL_OPT:RB_SORT_ASC"; - Pos = MAP_APPFONT( 114, 14 ); - Size = MAP_APPFONT( 84, 10 ); - TabStop = TRUE; - Text [ en-US ] = "~Ascending"; - }; - RadioButton RB_SORT_DESC - { - HelpID = "sc:RadioButton:RID_SCDLG_DPSUBTOTAL_OPT:RB_SORT_DESC"; - Pos = MAP_APPFONT( 114, 28 ); - Size = MAP_APPFONT( 84, 10 ); - TabStop = TRUE; - Text [ en-US ] = "~Descending"; - }; - RadioButton RB_SORT_MAN - { - HelpID = "sc:RadioButton:RID_SCDLG_DPSUBTOTAL_OPT:RB_SORT_MAN"; - Pos = MAP_APPFONT( 114, 42 ); - Size = MAP_APPFONT( 84, 10 ); - TabStop = TRUE; - Text [ en-US ] = "~Manual"; - }; - FixedLine FL_LAYOUT - { - Pos = MAP_APPFONT( 6, 56 ); - Size = MAP_APPFONT( 198, 8 ); - Text [ en-US ] = "Display options"; - }; - FixedText FT_LAYOUT - { - Pos = MAP_APPFONT( 12, 69 ); - Size = MAP_APPFONT( 70, 8 ); - Text [ en-US ] = "~Layout"; - }; - ListBox LB_LAYOUT - { - HelpID = "sc:ListBox:RID_SCDLG_DPSUBTOTAL_OPT:LB_LAYOUT"; - Pos = MAP_APPFONT( 84, 67 ); - Size = MAP_APPFONT( 114, 120 ); - TabStop = TRUE; - Border = TRUE; - DropDown = TRUE; - StringList [ en-US ] = - { - < "Tabular layout"; Default; >; - < "Outline layout with subtotals at the top"; Default; >; - < "Outline layout with subtotals at the bottom"; Default; >; - }; - }; - CheckBox CB_LAYOUT_EMPTY - { - HelpID = "sc:CheckBox:RID_SCDLG_DPSUBTOTAL_OPT:CB_LAYOUT_EMPTY"; - Pos = MAP_APPFONT( 12, 85 ); - Size = MAP_APPFONT( 186, 10 ); - TabStop = TRUE; - Text [ en-US ] = "~Empty line after each item"; - }; - FixedLine FL_AUTOSHOW - { - Pos = MAP_APPFONT( 6, 99 ); - Size = MAP_APPFONT( 198, 8 ); - Text [ en-US ] = "Show automatically"; - }; - CheckBox CB_SHOW - { - HelpID = "sc:CheckBox:RID_SCDLG_DPSUBTOTAL_OPT:CB_SHOW"; - Pos = MAP_APPFONT( 12, 112 ); - Size = MAP_APPFONT( 70, 10 ); - TabStop = TRUE; - Text[ en-US ] = "~Show"; - }; - NumericField NF_SHOW - { - HelpID = "sc:NumericField:RID_SCDLG_DPSUBTOTAL_OPT:NF_SHOW"; - Pos = MAP_APPFONT( 84, 110 ); - Size = MAP_APPFONT( 30, 12 ); - TabStop = TRUE; - Border = TRUE; - Repeat = TRUE; - Spin = TRUE; - Minimum = 1; - Maximum = 999; - SpinSize = 1; - StrictFormat = TRUE; - }; - FixedText FT_SHOW - { - Pos = MAP_APPFONT( 118, 112 ); - Size = MAP_APPFONT( 80, 8 ); - Text [ en-US ] = "items"; - }; - FixedText FT_SHOW_FROM - { - Pos = MAP_APPFONT( 22, 128 ); - Size = MAP_APPFONT( 60, 8 ); - Text [ en-US ] = "~From"; - }; - ListBox LB_SHOW_FROM - { - HelpID = "sc:ListBox:RID_SCDLG_DPSUBTOTAL_OPT:LB_SHOW_FROM"; - Pos = MAP_APPFONT( 84, 126 ); - Size = MAP_APPFONT( 114, 50 ); - TabStop = TRUE; - Border = TRUE; - DropDown = TRUE; - StringList [ en-US ] = - { - < "Top"; Default; >; - < "Bottom"; Default; >; - }; - }; - FixedText FT_SHOW_USING - { - Pos = MAP_APPFONT( 22, 144 ); - Size = MAP_APPFONT( 60, 8 ); - Text [ en-US ] = "~Using field"; - }; - ListBox LB_SHOW_USING - { - HelpID = "sc:ListBox:RID_SCDLG_DPSUBTOTAL_OPT:LB_SHOW_USING"; - Pos = MAP_APPFONT( 84, 142 ); - Size = MAP_APPFONT( 114, 120 ); - TabStop = TRUE; - Border = TRUE; - DropDown = TRUE; - }; - FixedLine FL_HIDE - { - Pos = MAP_APPFONT( 6, 160 ); - Size = MAP_APPFONT( 198, 8 ); - Text [ en-US ] = "Hide i~tems"; - }; - Control CT_HIDE - { - Pos = MAP_APPFONT( 12, 171 ); - Size = MAP_APPFONT( 186, 45 ); - TabStop = TRUE; - Border = TRUE; - }; - FixedText FT_HIERARCHY - { - Pos = MAP_APPFONT( 6, 224 ); - Size = MAP_APPFONT( 76, 8 ); - Text [ en-US ] = "Hierarch~y"; - }; - ListBox LB_HIERARCHY - { - HelpID = "sc:ListBox:RID_SCDLG_DPSUBTOTAL_OPT:LB_HIERARCHY"; - Pos = MAP_APPFONT( 84, 222 ); - Size = MAP_APPFONT( 114, 120 ); - TabStop = TRUE; - Border = TRUE; - DropDown = TRUE; - }; - OKButton BTN_OK - { - Pos = MAP_APPFONT( 210, 6 ); - Size = MAP_APPFONT( 50, 14 ); - TabStop = TRUE; - DefButton = TRUE; - }; - CancelButton BTN_CANCEL - { - Pos = MAP_APPFONT( 210, 23 ); - Size = MAP_APPFONT( 50, 14 ); - TabStop = TRUE; - }; - HelpButton BTN_HELP - { - Pos = MAP_APPFONT( 210, 43 ); - Size = MAP_APPFONT( 50, 14 ); - TabStop = TRUE; - }; - Text [ en-US ] = "Data Field Options"; -}; - -// ---------------------------------------------------------------------------- - ModalDialog RID_SCDLG_DPSHOWDETAIL { OutputSize = TRUE; diff --git a/sc/source/ui/inc/pvfundlg.hxx b/sc/source/ui/inc/pvfundlg.hxx index 44e6300a2e49..f1de479b2f8a 100644 --- a/sc/source/ui/inc/pvfundlg.hxx +++ b/sc/source/ui/inc/pvfundlg.hxx @@ -20,10 +20,13 @@ #ifndef SC_PVFUNDLG_HXX #define SC_PVFUNDLG_HXX +#include <boost/scoped_ptr.hpp> + #include <com/sun/star/sheet/DataPilotFieldReference.hpp> #include <com/sun/star/sheet/DataPilotFieldSortInfo.hpp> #include <vcl/fixed.hxx> +#include <vcl/layout.hxx> #include <vcl/lstbox.hxx> #include <vcl/dialog.hxx> #include <vcl/button.hxx> @@ -162,33 +165,27 @@ private: DECL_LINK( SelectHdl, ListBox* ); private: - FixedLine maFlSortBy; - ListBox maLbSortBy; - RadioButton maRbSortAsc; - RadioButton maRbSortDesc; - RadioButton maRbSortMan; - FixedLine maFlLayout; - FixedText maFtLayout; - ListBox maLbLayout; - CheckBox maCbLayoutEmpty; - FixedLine maFlAutoShow; - CheckBox maCbShow; - NumericField maNfShow; - FixedText maFtShow; - FixedText maFtShowFrom; - ListBox maLbShowFrom; - FixedText maFtShowUsing; - ListBox maLbShowUsing; - FixedLine maFlHide; - SvxCheckListBox maLbHide; - FixedText maFtHierarchy; - ListBox maLbHierarchy; - OKButton maBtnOk; - CancelButton maBtnCancel; - HelpButton maBtnHelp; - - ScDPListBoxWrapper maLbLayoutWrp; /// Wrapper for direct usage of API constants. - ScDPListBoxWrapper maLbShowFromWrp; /// Wrapper for direct usage of API constants. + ListBox* m_pLbSortBy; + RadioButton* m_pRbSortAsc; + RadioButton* m_pRbSortDesc; + RadioButton* m_pRbSortMan; + VclContainer* m_pLayoutFrame; + ListBox* m_pLbLayout; + CheckBox* m_pCbLayoutEmpty; + CheckBox* m_pCbShow; + NumericField* m_pNfShow; + FixedText* m_pFtShow; + FixedText* m_pFtShowFrom; + ListBox* m_pLbShowFrom; + FixedText* m_pFtShowUsing; + ListBox* m_pLbShowUsing; + VclContainer* m_pHideFrame; + SvxCheckListBox* m_pLbHide; + FixedText* m_pFtHierarchy; + ListBox* m_pLbHierarchy; + + boost::scoped_ptr<ScDPListBoxWrapper> m_xLbLayoutWrp; /// Wrapper for direct usage of API constants. + boost::scoped_ptr<ScDPListBoxWrapper> m_xLbShowFromWrp; /// Wrapper for direct usage of API constants. ScDPObject& mrDPObj; /// The DataPilot object (for member names). ScDPLabelData maLabelData; /// Cache for members data. diff --git a/sc/uiconfig/scalc/ui/datafieldoptionsdialog.ui b/sc/uiconfig/scalc/ui/datafieldoptionsdialog.ui new file mode 100644 index 000000000000..e71439af5a83 --- /dev/null +++ b/sc/uiconfig/scalc/ui/datafieldoptionsdialog.ui @@ -0,0 +1,574 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.16.1 --> +<interface> + <requires lib="gtk+" version="3.0"/> + <!-- interface-requires LibreOffice 1.0 --> + <object class="GtkAdjustment" id="adjustment1"> + <property name="lower">1</property> + <property name="upper">999</property> + <property name="value">1</property> + <property name="step_increment">1</property> + <property name="page_increment">10</property> + </object> + <object class="GtkDialog" id="DataFieldOptionsDialog"> + <property name="can_focus">False</property> + <property name="border_width">6</property> + <property name="title" translatable="yes">Data Field Options</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox1"> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">12</property> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area1"> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="add"> + <property name="label">gtk-add</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="has_default">True</property> + <property name="receives_default">True</property> + <property name="use_stock">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="close"> + <property name="label">gtk-close</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">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="help"> + <property name="label">gtk-help</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_stock">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="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</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="row_spacing">12</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="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="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkRadioButton" id="ascending"> + <property name="label" translatable="yes">_Ascending</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="active">True</property> + <property name="draw_indicator">True</property> + <property name="group">descending</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="GtkRadioButton" id="descending"> + <property name="label" translatable="yes">_Descending</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> + <property name="group">manual</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="GtkRadioButton" id="manual"> + <property name="label" translatable="yes">_Manual</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> + <property name="group">ascending</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="sortby"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">2</property> + </packing> + </child> + <child> + <placeholder/> + </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">Sort by</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </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="GtkFrame" id="layoutframe"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkCheckButton" id="emptyline"> + <property name="label" translatable="yes">_Empty line after each item</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">1</property> + <property name="width">2</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Layout</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">layout</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="GtkComboBoxText" id="layout"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <items> + <item translatable="yes">Tabular layout</item> + <item translatable="yes">Outline layout with subtotals at the top</item> + <item translatable="yes">Outline layout with subtotals at the bottom</item> + </items> + </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> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Display options</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </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="GtkFrame" id="showframe"> + <property name="visible">True</property> + <property name="can_focus">False</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="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> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkCheckButton" id="show"> + <property name="label" translatable="yes">_Show</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> + <accessibility> + <relation type="label-for" target="items"/> + </accessibility> + </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="GtkLabel" id="showfromft"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_From</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">from</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="usingft"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Using field</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">using</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkLabel" id="showft"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">items</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">layout</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="GtkSpinButton" id="items"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="adjustment">adjustment1</property> + <accessibility> + <relation type="labelled-by" target="show"/> + </accessibility> + </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="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="GtkComboBoxText" id="from"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <items> + <item translatable="yes">Top</item> + <item translatable="yes">Bottom</item> + </items> + </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="GtkComboBoxText" id="using"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Show automatically</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="hideframe"> + <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="alignment4"> + <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="svxcorelo-SvxCheckListBox" id="hideitems:border"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <child internal-child="selection"> + <object class="GtkTreeSelection" id="Check List Box-selection1"/> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Hide items</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">3</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkComboBoxText" id="hierarchy"> + <property name="visible">True</property> + <property name="can_focus">False</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="hierarchyft"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">Hierarch_y</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">hierarchy</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> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">4</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> + </object> + </child> + <action-widgets> + <action-widget response="0">add</action-widget> + <action-widget response="0">close</action-widget> + <action-widget response="0">help</action-widget> + </action-widgets> + </object> + <object class="GtkSizeGroup" id="sizegroup1"> + <widgets> + <widget name="label3"/> + <widget name="show"/> + <widget name="showfromft"/> + <widget name="usingft"/> + </widgets> + </object> + <object class="GtkSizeGroup" id="sizegroup2"> + <widgets> + <widget name="layout"/> + <widget name="hierarchy"/> + </widgets> + </object> +</interface> |