summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sc/UIConfig_scalc.mk1
-rw-r--r--sc/inc/helpids.h2
-rw-r--r--sc/inc/sc.hrc1
-rw-r--r--sc/source/ui/dbgui/pvfundlg.cxx187
-rw-r--r--sc/source/ui/dbgui/pvfundlg.src204
-rw-r--r--sc/source/ui/inc/pvfundlg.hxx51
-rw-r--r--sc/uiconfig/scalc/ui/datafieldoptionsdialog.ui574
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>