summaryrefslogtreecommitdiff
authorKatarina Behrens <bubli@bubli.org>2014-02-04 10:40:48 (GMT)
committer Caolán McNamara <caolanm@redhat.com>2014-02-13 11:04:31 (GMT)
commitcfa4f622caa155dd8ab1215a324dd409cd447cd6 (patch) (side-by-side diff)
tree663c4af57718446bcc4ca0c339ba9e30358b93ff
parent89cc3438ed1768265fe25921178a8ccb61c35f98 (diff)
downloadcore-cfa4f622caa155dd8ab1215a324dd409cd447cd6.zip
core-cfa4f622caa155dd8ab1215a324dd409cd447cd6.tar.gz
Converted pivot table layout dlg to .ui
pimped up dialog a bit, added mnemonics Change-Id: I4585d9a3a1c96b45c7eedea8a5be41ec717139dd
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--sc/UIConfig_scalc.mk1
-rw-r--r--sc/source/ui/dbgui/fieldwnd.cxx90
-rw-r--r--sc/source/ui/dbgui/pvlaydlg.cxx462
-rw-r--r--sc/source/ui/inc/fieldwnd.hxx10
-rw-r--r--sc/source/ui/inc/pvlaydlg.hxx69
-rw-r--r--sc/uiconfig/scalc/ui/pivottablelayout.ui697
6 files changed, 1066 insertions, 263 deletions
diff --git a/sc/UIConfig_scalc.mk b/sc/UIConfig_scalc.mk
index f68519b..ac2f383 100644
--- a/sc/UIConfig_scalc.mk
+++ b/sc/UIConfig_scalc.mk
@@ -123,6 +123,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/scalc,\
sc/uiconfig/scalc/ui/paradialog \
sc/uiconfig/scalc/ui/paratemplatedialog \
sc/uiconfig/scalc/ui/pivotfielddialog \
+ sc/uiconfig/scalc/ui/pivottablelayout \
sc/uiconfig/scalc/ui/printareasdialog \
sc/uiconfig/scalc/ui/printeroptions \
sc/uiconfig/scalc/ui/protectsheetdlg \
diff --git a/sc/source/ui/dbgui/fieldwnd.cxx b/sc/source/ui/dbgui/fieldwnd.cxx
index ca91ab6..2026a10 100644
--- a/sc/source/ui/dbgui/fieldwnd.cxx
+++ b/sc/source/ui/dbgui/fieldwnd.cxx
@@ -118,7 +118,7 @@ ScAccessibleDataPilotControl *ScDPFieldControlBase::AccessRef::operator -> () co
ScDPFieldControlBase::ScDPFieldControlBase(
ScPivotLayoutDlg* pParent, const ResId& rResId, FixedText* pCaption, const char* pcHelpId) :
- Control(pParent, rResId),
+ Control(pParent),
mpDlg(pParent),
mpCaption(pCaption),
mnFieldSelected(0)
@@ -129,6 +129,21 @@ ScDPFieldControlBase::ScDPFieldControlBase(
maName = MnemonicGenerator::EraseAllMnemonicChars( pCaption->GetText() );
}
+ScDPFieldControlBase::ScDPFieldControlBase( Window* pParent ) :
+ Control (pParent),
+ mnFieldSelected(0)
+{
+}
+
+void ScDPFieldControlBase::Init( ScPivotLayoutDlg* pDlg, FixedText* pCaption )
+{
+ mpDlg = pDlg;
+ mpCaption = pCaption;
+
+ if (pCaption)
+ maName = MnemonicGenerator::EraseAllMnemonicChars( pCaption->GetText() );
+}
+
ScDPFieldControlBase::~ScDPFieldControlBase()
{
AccessRef aRef( mxAccessible );
@@ -897,6 +912,19 @@ ScDPHorFieldControl::ScDPHorFieldControl(
AppendPaintable(&maScroll);
}
+ScDPHorFieldControl::ScDPHorFieldControl ( Window* pParent ) :
+ ScDPFieldControlBase( pParent ),
+ maScroll(this, WB_HORZ | WB_DRAG),
+ mnFieldBtnRowCount(0),
+ mnFieldBtnColCount(0)
+{
+ maScroll.SetScrollHdl( LINK(this, ScDPHorFieldControl, ScrollHdl) );
+ maScroll.SetEndScrollHdl( LINK(this, ScDPHorFieldControl, EndScrollHdl) );
+ maScroll.Hide();
+
+ AppendPaintable(&maScroll);
+}
+
ScDPHorFieldControl::~ScDPHorFieldControl()
{
}
@@ -1149,6 +1177,17 @@ ScDPPageFieldControl::ScDPPageFieldControl(
{
}
+ScDPPageFieldControl::ScDPPageFieldControl ( Window* pParent ) :
+ ScDPHorFieldControl( pParent )
+{
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeScDPPageFieldControl( Window *pParent, VclBuilder::stringmap & )
+{
+ return new ScDPPageFieldControl( pParent );
+}
+
+
ScDPPageFieldControl::~ScDPPageFieldControl()
{
}
@@ -1171,6 +1210,16 @@ ScDPColFieldControl::ScDPColFieldControl(
{
}
+ScDPColFieldControl::ScDPColFieldControl ( Window* pParent ) :
+ ScDPHorFieldControl( pParent )
+{
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeScDPColFieldControl( Window *pParent, VclBuilder::stringmap & )
+{
+ return new ScDPColFieldControl( pParent );
+}
+
ScDPColFieldControl::~ScDPColFieldControl()
{
}
@@ -1200,6 +1249,24 @@ ScDPRowFieldControl::ScDPRowFieldControl(
AppendPaintable(&maScroll);
}
+ScDPRowFieldControl::ScDPRowFieldControl ( Window* pParent ) :
+ ScDPFieldControlBase( pParent ),
+ maScroll(this, WB_VERT | WB_DRAG),
+ mnColumnBtnCount(0)
+{
+ maScroll.SetScrollHdl( LINK(this, ScDPRowFieldControl, ScrollHdl) );
+ maScroll.SetEndScrollHdl( LINK(this, ScDPRowFieldControl, EndScrollHdl) );
+ maScroll.Show(false);
+
+ AppendPaintable(&maScroll);
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeScDPRowFieldControl( Window *pParent, VclBuilder::stringmap & )
+{
+ return new ScDPRowFieldControl( pParent );
+}
+
+
ScDPRowFieldControl::~ScDPRowFieldControl()
{
}
@@ -1424,6 +1491,17 @@ ScDPSelectFieldControl::ScDPSelectFieldControl(
SetName(OUString(ScResId(STR_SELECT)));
}
+ScDPSelectFieldControl::ScDPSelectFieldControl( Window* pParent ):
+ ScDPHorFieldControl( pParent )
+{
+ //SetName(OUString(ScResId(STR_SELECT)));
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeScDPSelectFieldControl( Window *pParent, VclBuilder::stringmap & )
+{
+ return new ScDPSelectFieldControl( pParent );
+}
+
ScDPSelectFieldControl::~ScDPSelectFieldControl()
{
}
@@ -1446,6 +1524,16 @@ ScDPDataFieldControl::ScDPDataFieldControl(
{
}
+ScDPDataFieldControl::ScDPDataFieldControl( Window* pParent ):
+ ScDPHorFieldControl( pParent )
+{
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeScDPDataFieldControl( Window *pParent, VclBuilder::stringmap & )
+{
+ return new ScDPDataFieldControl( pParent );
+}
+
ScDPDataFieldControl::~ScDPDataFieldControl()
{
}
diff --git a/sc/source/ui/dbgui/pvlaydlg.cxx b/sc/source/ui/dbgui/pvlaydlg.cxx
index d7e43d5..f7e2001 100644
--- a/sc/source/ui/dbgui/pvlaydlg.cxx
+++ b/sc/source/ui/dbgui/pvlaydlg.cxx
@@ -45,6 +45,7 @@
#include <sfx2/dispatch.hxx>
#include <vcl/msgbox.hxx>
+#include <vcl/layout.hxx>
#include "dbdocfun.hxx"
#include "uiitems.hxx"
@@ -84,50 +85,33 @@ Point DlgPos2WndPos( const Point& rPt, const Window& rWnd )
return aWndPt;
}
+static const OString* getFuncNames()
+{
+ static const OString gFuncNames[ PIVOT_MAXFUNC ] =
+ {
+ OString("sum") ,
+ OString("count") ,
+ OString("mean") ,
+ OString("max") ,
+ OString("min") ,
+ OString("product"),
+ OString("count2"),
+ OString("stdev") ,
+ OString("stdevp") ,
+ OString("var") ,
+ OString("varp") ,
+ };
+ return &gFuncNames[0];
+}
+
} // namespace
ScPivotLayoutDlg::ScPivotLayoutDlg( SfxBindings* pB, SfxChildWindow* pCW, Window* pParent, const ScDPObject& rDPObject, bool bNewOutput ) :
- ScAnyRefDlg( pB, pCW, pParent, RID_SCDLG_PIVOT_LAYOUT ),
-
- maFlLayout( this, ScResId( FL_LAYOUT ) ),
- maFtPage( this, ScResId( FT_PAGE ) ),
- maWndPage( this, ScResId( WND_PAGE ), &maFtPage, HID_SC_DPLAY_PAGE ),
- maFtCol( this, ScResId( FT_COL ) ),
- maWndCol( this, ScResId( WND_COL ), &maFtCol, HID_SC_DPLAY_COLUMN ),
- maFtRow( this, ScResId( FT_ROW ) ),
- maWndRow( this, ScResId( WND_ROW ), &maFtRow, HID_SC_DPLAY_ROW ),
- maFtData( this, ScResId( FT_DATA ) ),
- maWndData( this, ScResId( WND_DATA ), &maFtData, HID_SC_DPLAY_DATA ),
- maWndSelect( this, ScResId( WND_SELECT ), NULL, HID_SC_DPLAY_SELECT ),
- maFtInfo( this, ScResId( FT_INFO ) ),
-
- maFlAreas( this, ScResId( FL_OUTPUT ) ),
- maFtInArea( this, ScResId( FT_INAREA) ),
- maEdInPos( this, this, &maFtInArea, ScResId( ED_INAREA) ),
- maRbInPos( this, ScResId( RB_INAREA ), &maEdInPos, this ),
- maLbOutPos( this, ScResId( LB_OUTAREA ) ),
- maFtOutArea( this, ScResId( FT_OUTAREA ) ),
- maEdOutPos( this, this, &maFtOutArea, ScResId( ED_OUTAREA ) ),
- maRbOutPos( this, ScResId( RB_OUTAREA ), &maEdOutPos, this ),
- maBtnIgnEmptyRows( this, ScResId( BTN_IGNEMPTYROWS ) ),
- maBtnDetectCat( this, ScResId( BTN_DETECTCAT ) ),
- maBtnTotalCol( this, ScResId( BTN_TOTALCOL ) ),
- maBtnTotalRow( this, ScResId( BTN_TOTALROW ) ),
- maBtnFilter( this, ScResId( BTN_FILTER ) ),
- maBtnDrillDown( this, ScResId( BTN_DRILLDOWN ) ),
-
- maBtnOk( this, ScResId( BTN_OK ) ),
- maBtnCancel( this, ScResId( BTN_CANCEL ) ),
- maBtnHelp( this, ScResId( BTN_HELP ) ),
- maBtnRemove( this, ScResId( BTN_REMOVE ) ),
- maBtnOptions( this, ScResId( BTN_OPTIONS ) ),
- maBtnMore( this, ScResId( BTN_MORE ) ),
-
+ ScAnyRefDlg( pB, pCW, pParent, "PivotTableLayout", "modules/scalc/ui/pivottablelayout.ui" ),
mxDlgDPObject( new ScDPObject( rDPObject ) ),
mpViewData( ((ScTabViewShell*)SfxViewShell::Current())->GetViewData() ),
mpDoc( ((ScTabViewShell*)SfxViewShell::Current())->GetViewData()->GetDocument() ),
mpRefInputEdit(NULL),
-
maStrUndefined(SC_RESSTR(SCSTR_UNDEFINED)),
maStrNewTable(SC_RESSTR(SCSTR_NEWTABLE)),
mbIsDrag(false),
@@ -135,76 +119,103 @@ ScPivotLayoutDlg::ScPivotLayoutDlg( SfxBindings* pB, SfxChildWindow* pCW, Window
mnOffset(0),
mbRefInputMode( false )
{
+ get( mpFtPage, "page_text" );
+ get( mpWndPage, "pagefield" );
+ get( mpFtCol, "column_text" );
+ get( mpWndCol, "columnfield" );
+ get( mpFtRow, "row_text" );
+ get( mpWndRow, "rowfield" );
+ get( mpFtData, "data_text" );
+ get( mpWndData, "datafield" );
+ get( mpWndSelect, "buttonfield" );
+ get( mpFtInfo, "info" );
+
+ mpWndPage->Init( this, mpFtPage );
+ mpWndCol->Init( this, mpFtCol );
+ mpWndRow->Init( this, mpFtRow );
+ mpWndData->Init( this, mpFtData );
+ mpWndSelect->Init( this, NULL );
+ mpWndSelect->SetName( get<FixedText>("select_text")->GetText());
+
+ get( mpFtInArea, "select_from" );
+ get( mpEdInPos, "rangesel1" );
+ get( mpRbInPos, "changebutton1" );
+ get( mpLbOutPos, "target_area" );
+ get( mpFtOutArea, "results_to" );
+ get( mpEdOutPos, "rangesel2" );
+ get( mpRbOutPos, "changebutton2" );
+ get( mpBtnIgnEmptyRows, "ignore_empty" );
+ get( mpBtnDetectCat, "detect_category" );
+ get( mpBtnTotalCol, "total_cols" );
+ get( mpBtnTotalRow, "total_rows" );
+ get( mpBtnFilter, "add_filter" );
+ get( mpBtnDrillDown, "drill_down" );
+
+ get( mpBtnOk, "ok" );
+ get( mpBtnCancel, "cancel" );
+ get( mpBtnRemove, "remove" );
+ get( mpBtnOptions, "options" );
+ get( mpExpander, "more" );
+ mpExpander->SetExpandedHdl( LINK( this, ScPivotLayoutDlg, ExpandHdl ) );
+
mxDlgDPObject->FillOldParam( maPivotData );
mxDlgDPObject->FillLabelData( maPivotData );
- maBtnRemove.SetClickHdl( LINK( this, ScPivotLayoutDlg, ClickHdl ) );
- maBtnOptions.SetClickHdl( LINK( this, ScPivotLayoutDlg, ClickHdl ) );
+ mpBtnRemove->SetClickHdl( LINK( this, ScPivotLayoutDlg, ClickHdl ) );
+ mpBtnOptions->SetClickHdl( LINK( this, ScPivotLayoutDlg, ClickHdl ) );
maFuncNames.reserve( PIVOT_MAXFUNC );
- for ( sal_uInt16 i = 1; i <= PIVOT_MAXFUNC; ++i )
- maFuncNames.push_back(ScResId(i).toString());
-
- maBtnMore.AddWindow( &maFlAreas );
- maBtnMore.AddWindow( &maFtInArea );
- maBtnMore.AddWindow( &maEdInPos );
- maBtnMore.AddWindow( &maRbInPos );
- maBtnMore.AddWindow( &maFtOutArea );
- maBtnMore.AddWindow( &maLbOutPos );
- maBtnMore.AddWindow( &maEdOutPos );
- maBtnMore.AddWindow( &maRbOutPos );
- maBtnMore.AddWindow( &maBtnIgnEmptyRows );
- maBtnMore.AddWindow( &maBtnDetectCat );
- maBtnMore.AddWindow( &maBtnTotalCol );
- maBtnMore.AddWindow( &maBtnTotalRow );
- maBtnMore.AddWindow( &maBtnFilter );
- maBtnMore.AddWindow( &maBtnDrillDown );
- maBtnMore.SetClickHdl( LINK( this, ScPivotLayoutDlg, MoreClickHdl ) );
+ const OString* pFuncNames = getFuncNames();
+ for ( sal_uInt16 i = 0; i < PIVOT_MAXFUNC; ++i )
+ {
+ OUString tmpText = get<FixedText>(pFuncNames[i])->GetText();
+ maFuncNames.push_back(tmpText);
+ }
maFieldCtrls.reserve(5);
- maFieldCtrls.push_back(&maWndPage);
- maFieldCtrls.push_back(&maWndCol);
- maFieldCtrls.push_back(&maWndRow);
- maFieldCtrls.push_back(&maWndData);
- maFieldCtrls.push_back(&maWndSelect);
+ maFieldCtrls.push_back(mpWndPage);
+ maFieldCtrls.push_back(mpWndCol);
+ maFieldCtrls.push_back(mpWndRow);
+ maFieldCtrls.push_back(mpWndData);
+ maFieldCtrls.push_back(mpWndSelect);
InitControlAndDlgSizes();
if (mxDlgDPObject->GetSheetDesc())
{
- maEdInPos.Enable();
- maRbInPos.Enable();
+ mpEdInPos->Enable();
+ mpRbInPos->Enable();
const ScSheetSourceDesc* p = mxDlgDPObject->GetSheetDesc();
OUString aRangeName = p->GetRangeName();
if (!aRangeName.isEmpty())
- maEdInPos.SetText(aRangeName);
+ mpEdInPos->SetText(aRangeName);
else
{
maOldRange = p->GetSourceRange();
OUString aStr(maOldRange.Format(SCR_ABS_3D, mpDoc, mpDoc->GetAddressConvention()));
- maEdInPos.SetText(aStr);
+ mpEdInPos->SetText(aStr);
}
}
else
{
// data is not reachable, so could be a remote database
- maEdInPos.Disable();
- maRbInPos.Disable();
+ mpEdInPos->Disable();
+ mpRbInPos->Disable();
}
InitFieldWindows();
- maLbOutPos.SetSelectHdl( LINK( this, ScPivotLayoutDlg, SelAreaHdl ) );
- maEdOutPos.SetModifyHdl( LINK( this, ScPivotLayoutDlg, EdOutModifyHdl ) );
- maEdInPos.SetModifyHdl( LINK( this, ScPivotLayoutDlg, EdInModifyHdl ) );
- maBtnOk.SetClickHdl( LINK( this, ScPivotLayoutDlg, OkHdl ) );
- maBtnCancel.SetClickHdl( LINK( this, ScPivotLayoutDlg, CancelHdl ) );
+ mpLbOutPos->SetSelectHdl( LINK( this, ScPivotLayoutDlg, SelAreaHdl ) );
+ mpEdOutPos->SetModifyHdl( LINK( this, ScPivotLayoutDlg, EdOutModifyHdl ) );
+ mpEdInPos->SetModifyHdl( LINK( this, ScPivotLayoutDlg, EdInModifyHdl ) );
+ mpBtnOk->SetClickHdl( LINK( this, ScPivotLayoutDlg, OkHdl ) );
+ mpBtnCancel->SetClickHdl( LINK( this, ScPivotLayoutDlg, CancelHdl ) );
// Set focus handler for the reference edit text boxes.
Link aGetFocusLink = LINK(this, ScPivotLayoutDlg, GetRefEditFocusHdl);
- if (maEdInPos.IsEnabled())
- maEdInPos.SetGetFocusHdl(aGetFocusLink);
- maEdOutPos.SetGetFocusHdl(aGetFocusLink);
+ if (mpEdInPos->IsEnabled())
+ mpEdInPos->SetGetFocusHdl(aGetFocusLink);
+ mpEdOutPos->SetGetFocusHdl(aGetFocusLink);
if ( mpViewData && mpDoc )
{
@@ -214,9 +225,9 @@ ScPivotLayoutDlg::ScPivotLayoutDlg( SfxBindings* pB, SfxChildWindow* pCW, Window
* um sinnvolle Bereiche handelt
*/
- maLbOutPos.Clear();
- maLbOutPos.InsertEntry( maStrUndefined, 0 );
- maLbOutPos.InsertEntry( maStrNewTable, 1 );
+ mpLbOutPos->Clear();
+ mpLbOutPos->InsertEntry( maStrUndefined, 0 );
+ mpLbOutPos->InsertEntry( maStrNewTable, 1 );
ScAreaNameIterator aIter( mpDoc );
OUString aName;
@@ -225,11 +236,11 @@ ScPivotLayoutDlg::ScPivotLayoutDlg( SfxBindings* pB, SfxChildWindow* pCW, Window
{
if ( !aIter.WasDBName() ) // hier keine DB-Bereiche !
{
- sal_uInt16 nInsert = maLbOutPos.InsertEntry( aName );
+ sal_uInt16 nInsert = mpLbOutPos->InsertEntry( aName );
OUString aRefStr(aRange.aStart.Format(SCA_ABS_3D, mpDoc, mpDoc->GetAddressConvention()));
maRefStrs.push_back(new OUString(aRefStr));
- maLbOutPos.SetEntryData(nInsert, &maRefStrs.back());
+ mpLbOutPos->SetEntryData(nInsert, &maRefStrs.back());
}
}
}
@@ -237,9 +248,9 @@ ScPivotLayoutDlg::ScPivotLayoutDlg( SfxBindings* pB, SfxChildWindow* pCW, Window
if (bNewOutput)
{
// Output to a new sheet by default for a brand-new output.
- maLbOutPos.SelectEntryPos(1);
- maEdOutPos.Disable();
- maRbOutPos.Disable();
+ mpLbOutPos->SelectEntryPos(1);
+ mpEdOutPos->Disable();
+ mpRbOutPos->Disable();
}
else
{
@@ -251,29 +262,27 @@ ScPivotLayoutDlg::ScPivotLayoutDlg( SfxBindings* pB, SfxChildWindow* pCW, Window
ScAddress( maPivotData.nCol,
maPivotData.nRow,
maPivotData.nTab ).Format(STD_FORMAT, mpDoc, mpDoc->GetAddressConvention());
- maEdOutPos.SetText( aStr );
+ mpEdOutPos->SetText( aStr );
maOutputRefStr = aStr;
EdOutModifyHdl(0);
}
else
{
- maLbOutPos.SelectEntryPos( maLbOutPos.GetEntryCount()-1 );
+ mpLbOutPos->SelectEntryPos( mpLbOutPos->GetEntryCount()-1 );
SelAreaHdl(NULL);
}
}
- maBtnIgnEmptyRows.Check( maPivotData.bIgnoreEmptyRows );
- maBtnDetectCat .Check( maPivotData.bDetectCategories );
- maBtnTotalCol .Check( maPivotData.bMakeTotalCol );
- maBtnTotalRow .Check( maPivotData.bMakeTotalRow );
+ mpBtnIgnEmptyRows->Check( maPivotData.bIgnoreEmptyRows );
+ mpBtnDetectCat->Check( maPivotData.bDetectCategories );
+ mpBtnTotalCol->Check( maPivotData.bMakeTotalCol );
+ mpBtnTotalRow->Check( maPivotData.bMakeTotalRow );
const ScDPSaveData* pSaveData = mxDlgDPObject->GetSaveData();
- maBtnFilter.Check( !pSaveData || pSaveData->GetFilterButton() );
- maBtnDrillDown.Check( !pSaveData || pSaveData->GetDrillDown() );
-
- GrabFieldFocus( maWndSelect );
+ mpBtnFilter->Check( !pSaveData || pSaveData->GetFilterButton() );
+ mpBtnDrillDown->Check( !pSaveData || pSaveData->GetDrillDown() );
- FreeResource();
+ GrabFieldFocus( mpWndSelect );
}
ScPivotLayoutDlg::~ScPivotLayoutDlg()
@@ -302,11 +311,11 @@ void ScPivotLayoutDlg::InitWndSelect(const ScDPLabelDataVector& rLabels)
// original dimension if available. Be aware that duplicate
// dimensions may have different layout names.
ScPivotFuncData aFunc(maLabelData[i].mnCol, maLabelData[i].mnFuncMask);
- maWndSelect.AppendField(maLabelData[i].getDisplayName(), aFunc);
+ mpWndSelect->AppendField(maLabelData[i].getDisplayName(), aFunc);
}
}
- maWndSelect.ResetScrollBar();
- maWndSelect.Paint(Rectangle());
+ mpWndSelect->ResetScrollBar();
+ mpWndSelect->Paint(Rectangle());
}
void ScPivotLayoutDlg::InitWndData(const vector<ScPivotField>& rFields)
@@ -332,11 +341,11 @@ void ScPivotLayoutDlg::InitWndData(const vector<ScPivotField>& rFields)
aStr += pData->maName;
}
- maWndData.AppendField(aStr, aFunc);
+ mpWndData->AppendField(aStr, aFunc);
pData->mnFuncMask = nMask;
}
}
- maWndData.ResetScrollBar();
+ mpWndData->ResetScrollBar();
}
void ScPivotLayoutDlg::InitFieldWindow( const vector<ScPivotField>& rFields, ScPivotFieldType eType )
@@ -370,22 +379,22 @@ void ScPivotLayoutDlg::InitFieldWindows()
InitWndData(maPivotData.maDataFields);
}
-void ScPivotLayoutDlg::GrabFieldFocus( ScDPFieldControlBase& rFieldWindow )
+void ScPivotLayoutDlg::GrabFieldFocus( ScDPFieldControlBase* rFieldWindow )
{
- if( rFieldWindow.IsEmpty() )
+ if( rFieldWindow->IsEmpty() )
{
- if( maWndSelect.IsEmpty() )
- maBtnOk.GrabFocus();
+ if( mpWndSelect->IsEmpty() )
+ mpBtnOk->GrabFocus();
else
- maWndSelect.GrabFocus();
+ mpWndSelect->GrabFocus();
}
else
- rFieldWindow.GrabFocus();
+ rFieldWindow->GrabFocus();
}
void ScPivotLayoutDlg::AddField( size_t nFromIndex, ScPivotFieldType eToType, const Point& rAtPos )
{
- ScPivotFuncData aFunc = maWndSelect.GetFuncData(nFromIndex); // local copy
+ ScPivotFuncData aFunc = mpWndSelect->GetFuncData(nFromIndex); // local copy
bool bAllowed = IsOrientationAllowed(aFunc.mnCol, eToType);
if (!bAllowed)
@@ -444,7 +453,7 @@ void ScPivotLayoutDlg::AddField( size_t nFromIndex, ScPivotFieldType eToType, co
void ScPivotLayoutDlg::AppendField(size_t nFromIndex, ScPivotFieldType eToType)
{
- ScPivotFuncData aFunc = maWndSelect.GetFuncData(nFromIndex); // local copy
+ ScPivotFuncData aFunc = mpWndSelect->GetFuncData(nFromIndex); // local copy
size_t nAt = 0;
ScDPFieldControlBase* toWnd = GetFieldWindow(eToType);
@@ -707,7 +716,7 @@ void ScPivotLayoutDlg::RemoveField( ScPivotFieldType eFromType, size_t nIndex )
pWnd->DeleteFieldByIndex(nIndex);
if (pWnd->IsEmpty())
- GrabFieldFocus(maWndSelect);
+ GrabFieldFocus(mpWndSelect);
}
PointerStyle ScPivotLayoutDlg::NotifyMouseButtonDown( ScPivotFieldType eType, size_t nFieldIndex )
@@ -763,7 +772,7 @@ void ScPivotLayoutDlg::NotifyDoubleClick( ScPivotFieldType eType, size_t nFieldI
// list of names of all data fields
vector<ScDPName> aDataFieldNames;
vector<ScDPFieldControlBase::FuncItem> aFuncItems;
- maWndData.GetAllFuncItems(aFuncItems);
+ mpWndData->GetAllFuncItems(aFuncItems);
vector<ScDPFieldControlBase::FuncItem>::const_iterator it = aFuncItems.begin(), itEnd = aFuncItems.end();
for (; it != itEnd; ++it)
{
@@ -803,7 +812,7 @@ void ScPivotLayoutDlg::NotifyDoubleClick( ScPivotFieldType eType, size_t nFieldI
case PIVOTFIELDTYPE_DATA:
{
- ScPivotFuncData& rFuncData = maWndData.GetFuncData(nFieldIndex);
+ ScPivotFuncData& rFuncData = mpWndData->GetFuncData(nFieldIndex);
boost::scoped_ptr<AbstractScDPFunctionDlg> pDlg(
pFact->CreateScDPFunctionDlg(
this, maLabelData, *pData, rFuncData));
@@ -816,7 +825,7 @@ void ScPivotLayoutDlg::NotifyDoubleClick( ScPivotFieldType eType, size_t nFieldI
if (bFuncChanged)
// Get the new duplicate count since the function has changed.
- rFuncData.mnDupCount = maWndData.GetNextDupCount(rFuncData, nFieldIndex);
+ rFuncData.mnDupCount = mpWndData->GetNextDupCount(rFuncData, nFieldIndex);
ScDPLabelData* p = GetLabelData(rFuncData.mnCol);
OUString aStr = p->maLayoutName;
@@ -826,7 +835,7 @@ void ScPivotLayoutDlg::NotifyDoubleClick( ScPivotFieldType eType, size_t nFieldI
aStr = GetFuncString (rFuncData.mnFuncMask);
aStr += p->maName;
}
- maWndData.SetFieldText(aStr, nFieldIndex, rFuncData.mnDupCount);
+ mpWndData->SetFieldText(aStr, nFieldIndex, rFuncData.mnDupCount);
}
}
break;
@@ -852,8 +861,8 @@ void ScPivotLayoutDlg::NotifyFieldFocus( ScPivotFieldType eType, bool bGotFocus
if ( bEnable && bGotFocus && pWnd && pWnd->IsEmpty() )
bEnable = false;
- maBtnRemove.Enable( bEnable );
- maBtnOptions.Enable( bEnable );
+ mpBtnRemove->Enable( bEnable );
+ mpBtnOptions->Enable( bEnable );
if( bGotFocus )
meLastActiveType = eType;
}
@@ -871,10 +880,10 @@ void ScPivotLayoutDlg::NotifyMoveFieldToEnd( ScPivotFieldType eToType )
else
pWnd->GrabFocus();
if( meLastActiveType == PIVOTFIELDTYPE_SELECT )
- maWndSelect.SelectNext();
+ mpWndSelect->SelectNext();
}
else
- GrabFieldFocus( maWndSelect );
+ GrabFieldFocus( mpWndSelect );
}
void ScPivotLayoutDlg::NotifyRemoveField( ScPivotFieldType eType, size_t nFieldIndex )
@@ -887,7 +896,7 @@ Size ScPivotLayoutDlg::GetStdFieldBtnSize() const
{
// This size is static but is platform dependent. The field button size
// is calculated relative to the size of the OK button.
- double w = static_cast<double>(maBtnOk.GetSizePixel().Width()) * 0.70;
+ double w = static_cast<double>(mpBtnOk->GetSizePixel().Width()) * 0.70;
return Size(static_cast<long>(w), FIELD_BTN_HEIGHT);
}
@@ -1087,39 +1096,39 @@ void ScPivotLayoutDlg::InitControlAndDlgSizes()
long nFldW = GetStdFieldBtnSize().Width();
long nFldH = GetStdFieldBtnSize().Height();
- maWndData.SetSizePixel(
- Size(maWndSelect.GetPosPixel().X() - maWndData.GetPosPixel().X() - FIELD_AREA_GAP*4,
+ mpWndData->SetSizePixel(
+ Size(mpWndSelect->GetPosPixel().X() - mpWndData->GetPosPixel().X() - FIELD_AREA_GAP*4,
185));
- maWndPage.SetSizePixel(
- Size(maWndData.GetSizePixel().Width() + 85,
- maWndCol.GetPosPixel().Y() - maWndPage.GetPosPixel().Y() - FIELD_AREA_GAP));
- maWndRow.SetSizePixel(
- Size(maWndData.GetPosPixel().X()-maWndRow.GetPosPixel().X() - FIELD_AREA_GAP,
- maWndData.GetSizePixel().Height()));
- maWndCol.SetSizePixel(
- Size(maWndData.GetPosPixel().X() - maWndCol.GetPosPixel().X() + maWndData.GetSizePixel().Width(),
- maWndData.GetPosPixel().Y() - maWndCol.GetPosPixel().Y() - FIELD_AREA_GAP));
+ mpWndPage->SetSizePixel(
+ Size(mpWndData->GetSizePixel().Width() + 85,
+ mpWndCol->GetPosPixel().Y() - mpWndPage->GetPosPixel().Y() - FIELD_AREA_GAP));
+ mpWndRow->SetSizePixel(
+ Size(mpWndData->GetPosPixel().X()-mpWndRow->GetPosPixel().X() - FIELD_AREA_GAP,
+ mpWndData->GetSizePixel().Height()));
+ mpWndCol->SetSizePixel(
+ Size(mpWndData->GetPosPixel().X() - mpWndCol->GetPosPixel().X() + mpWndData->GetSizePixel().Width(),
+ mpWndData->GetPosPixel().Y() - mpWndCol->GetPosPixel().Y() - FIELD_AREA_GAP));
// #i29203# align right border of page window with data window
- long nDataPosX = maWndData.GetPosPixel().X() + maWndData.GetSizePixel().Width();
- maWndPage.SetPosPixel(
- Point(nDataPosX - maWndPage.GetSizePixel().Width(),
- maWndPage.GetPosPixel().Y()));
+ long nDataPosX = mpWndData->GetPosPixel().X() + mpWndData->GetSizePixel().Width();
+ mpWndPage->SetPosPixel(
+ Point(nDataPosX - mpWndPage->GetSizePixel().Width(),
+ mpWndPage->GetPosPixel().Y()));
// selection area
long nLineSize = 10; // number of fields per column.
long nH = OUTER_MARGIN_VER + nLineSize* nFldH + nLineSize * ROW_FIELD_BTN_GAP;
nH += ROW_FIELD_BTN_GAP;
nH += GetSettings().GetStyleSettings().GetScrollBarSize() + OUTER_MARGIN_VER;
- maWndSelect.SetSizePixel(
+ mpWndSelect->SetSizePixel(
Size(2 * nFldW + ROW_FIELD_BTN_GAP + 10, nH));
- maWndPage.CalcSize();
- maWndRow.CalcSize();
- maWndCol.CalcSize();
- maWndData.CalcSize();
- maWndSelect.CalcSize();
+ mpWndPage->CalcSize();
+ mpWndRow->CalcSize();
+ mpWndCol->CalcSize();
+ mpWndData->CalcSize();
+ mpWndSelect->CalcSize();
AdjustDlgSize();
}
@@ -1148,9 +1157,9 @@ void ScPivotLayoutDlg::AdjustDlgSize()
// if it overlaps, and if it does, make the dialog size larger.
Size aWndSize = GetSizePixel();
- Point aPosText = maFtInfo.GetPosPixel();
- Size aSizeText = maFtInfo.GetSizePixel();
- long nYRef = maWndData.GetPosPixel().Y() + maWndData.GetSizePixel().Height();
+ Point aPosText = mpFtInfo->GetPosPixel();
+ Size aSizeText = mpFtInfo->GetSizePixel();
+ long nYRef = mpWndData->GetPosPixel().Y() + mpWndData->GetSizePixel().Height();
if (aPosText.Y() > nYRef)
// This text is visible. No need to adjust.
return;
@@ -1170,22 +1179,21 @@ void ScPivotLayoutDlg::AdjustDlgSize()
// Move the relevant controls downward.
std::vector<Window*> aWndToMove;
aWndToMove.reserve(16);
- aWndToMove.push_back(&maFtInfo);
- aWndToMove.push_back(&maBtnMore);
- aWndToMove.push_back(&maFlAreas);
- aWndToMove.push_back(&maFtInArea);
- aWndToMove.push_back(&maEdInPos);
- aWndToMove.push_back(&maRbInPos);
- aWndToMove.push_back(&maFtOutArea);
- aWndToMove.push_back(&maLbOutPos);
- aWndToMove.push_back(&maEdOutPos);
- aWndToMove.push_back(&maRbOutPos);
- aWndToMove.push_back(&maBtnIgnEmptyRows);
- aWndToMove.push_back(&maBtnDetectCat);
- aWndToMove.push_back(&maBtnTotalCol);
- aWndToMove.push_back(&maBtnTotalRow);
- aWndToMove.push_back(&maBtnFilter);
- aWndToMove.push_back(&maBtnDrillDown);
+ aWndToMove.push_back(mpFtInfo);
+ //aWndToMove.push_back(mpBtnMore);
+ aWndToMove.push_back(mpFtInArea);
+ aWndToMove.push_back(mpEdInPos);
+ aWndToMove.push_back(mpRbInPos);
+ aWndToMove.push_back(mpFtOutArea);
+ aWndToMove.push_back(mpLbOutPos);
+ aWndToMove.push_back(mpEdOutPos);
+ aWndToMove.push_back(mpRbOutPos);
+ aWndToMove.push_back(mpBtnIgnEmptyRows);
+ aWndToMove.push_back(mpBtnDetectCat);
+ aWndToMove.push_back(mpBtnTotalCol);
+ aWndToMove.push_back(mpBtnTotalRow);
+ aWndToMove.push_back(mpBtnFilter);
+ aWndToMove.push_back(mpBtnDrillDown);
std::for_each(aWndToMove.begin(), aWndToMove.end(), MoveWndDown(nDelta));
}
@@ -1194,16 +1202,16 @@ bool ScPivotLayoutDlg::GetPivotArrays(
vector<ScPivotField>& rRowFields, vector<ScPivotField>& rDataFields )
{
vector<ScPivotField> aPageFields;
- maWndPage.ConvertToPivotArray(aPageFields);
+ mpWndPage->ConvertToPivotArray(aPageFields);
vector<ScPivotField> aColFields;
- maWndCol.ConvertToPivotArray(aColFields);
+ mpWndCol->ConvertToPivotArray(aColFields);
vector<ScPivotField> aRowFields;
- maWndRow.ConvertToPivotArray(aRowFields);
+ mpWndRow->ConvertToPivotArray(aRowFields);
vector<ScPivotField> aDataFields;
- maWndData.ConvertToPivotArray(aDataFields);
+ mpWndData->ConvertToPivotArray(aDataFields);
sheet::DataPilotFieldOrientation eOrientDataLayout = sheet::DataPilotFieldOrientation_ROW;
ScDPSaveData* pSaveData = mxDlgDPObject->GetSaveData();
@@ -1234,7 +1242,7 @@ bool ScPivotLayoutDlg::GetPivotArrays(
void ScPivotLayoutDlg::UpdateSrcRange()
{
- OUString aSrcStr = maEdInPos.GetText();
+ OUString aSrcStr = mpEdInPos->GetText();
sal_uInt16 nResult = ScRange().Parse(aSrcStr, mpDoc, mpDoc->GetAddressConvention());
DataSrcType eSrcType = SRC_INVALID;
ScRange aNewRange;
@@ -1246,7 +1254,7 @@ void ScPivotLayoutDlg::UpdateSrcRange()
ConvertDoubleRef(mpDoc, aSrcStr, 1, start, end, mpDoc->GetAddressConvention());
aNewRange.aStart = start.GetAddress();
aNewRange.aEnd = end.GetAddress();
- maEdInPos.SetRefValid(true);
+ mpEdInPos->SetRefValid(true);
eSrcType = SRC_REF;
}
else
@@ -1265,18 +1273,18 @@ void ScPivotLayoutDlg::UpdateSrcRange()
}
}
- maEdInPos.SetRefValid(bValid);
+ mpEdInPos->SetRefValid(bValid);
if (!bValid)
{
// All attempts have failed. Give up.
- maBtnOk.Disable();
+ mpBtnOk->Disable();
return;
}
eSrcType = SRC_NAME;
}
- maBtnOk.Enable();
+ mpBtnOk->Enable();
// Now update the data src range or range name with the dp object.
ScSheetSourceDesc inSheet = *mxDlgDPObject->GetSheetDesc();
@@ -1297,8 +1305,8 @@ void ScPivotLayoutDlg::UpdateSrcRange()
// message. In the future we should display the error message
// somewhere in the dialog to let the user know of the reason
// for error.
- maEdInPos.SetRefValid(false);
- maBtnOk.Disable();
+ mpEdInPos->SetRefValid(false);
+ mpBtnOk->Disable();
return;
}
}
@@ -1317,11 +1325,11 @@ void ScPivotLayoutDlg::UpdateSrcRange()
mxDlgDPObject->FillLabelData(maPivotData);
maLabelData.clear();
- maWndSelect.ClearFields();
- maWndData.ClearFields();
- maWndRow.ClearFields();
- maWndCol.ClearFields();
- maWndPage.ClearFields();
+ mpWndSelect->ClearFields();
+ mpWndData->ClearFields();
+ mpWndRow->ClearFields();
+ mpWndCol->ClearFields();
+ mpWndPage->ClearFields();
InitFieldWindows();
RepaintFieldWindows();
@@ -1329,45 +1337,45 @@ void ScPivotLayoutDlg::UpdateSrcRange()
void ScPivotLayoutDlg::UpdateOutputPos()
{
- sal_uInt16 nSelPos = maLbOutPos.GetSelectEntryPos();
- OUString aEntryStr = maLbOutPos.GetEntry(nSelPos);
+ sal_uInt16 nSelPos = mpLbOutPos->GetSelectEntryPos();
+ OUString aEntryStr = mpLbOutPos->GetEntry(nSelPos);
if (aEntryStr == maStrNewTable)
{
// New sheet as output.
- maEdOutPos.Disable();
- maRbOutPos.Disable();
- maEdOutPos.SetText(OUString()); // Clear the reference text.
+ mpEdOutPos->Disable();
+ mpRbOutPos->Disable();
+ mpEdOutPos->SetText(OUString()); // Clear the reference text.
}
else if (aEntryStr == maStrUndefined)
{
- maEdOutPos.Enable();
- maRbOutPos.Enable();
- maEdOutPos.SetText(maOutputRefStr);
+ mpEdOutPos->Enable();
+ mpRbOutPos->Enable();
+ mpEdOutPos->SetText(maOutputRefStr);
OutputPosUpdated();
}
else
{
// Named range as output. Get its corresponding reference string.
- const OUString* p = (const OUString*)maLbOutPos.GetEntryData(nSelPos);
+ const OUString* p = (const OUString*)mpLbOutPos->GetEntryData(nSelPos);
if (p)
- maEdOutPos.SetText(*p);
+ mpEdOutPos->SetText(*p);
}
}
void ScPivotLayoutDlg::OutputPosUpdated()
{
- OUString aOutPosStr = maEdOutPos.GetText();
+ OUString aOutPosStr = mpEdOutPos->GetText();
sal_uInt16 nResult = ScAddress().Parse(aOutPosStr, mpDoc, mpDoc->GetAddressConvention());
if (!(nResult & SCA_VALID))
{
// Not a valid reference.
- maEdOutPos.SetRefValid(false);
+ mpEdOutPos->SetRefValid(false);
return;
}
- maEdOutPos.SetRefValid(true);
+ mpEdOutPos->SetRefValid(true);
boost::ptr_vector<OUString>::const_iterator it =
std::find(maRefStrs.begin(), maRefStrs.end(), aOutPosStr);
@@ -1375,7 +1383,7 @@ void ScPivotLayoutDlg::OutputPosUpdated()
if (it == maRefStrs.end())
{
// This is NOT one of the named ranges.
- maLbOutPos.SelectEntryPos(0);
+ mpLbOutPos->SelectEntryPos(0);
return;
}
@@ -1383,7 +1391,7 @@ void ScPivotLayoutDlg::OutputPosUpdated()
// offset for the top two entries which are reserved for something else.
boost::ptr_vector<OUString>::const_iterator itBeg = maRefStrs.begin();
size_t nPos = std::distance(itBeg, it);
- maLbOutPos.SelectEntryPos(nPos+2);
+ mpLbOutPos->SelectEntryPos(nPos+2);
}
namespace {
@@ -1397,23 +1405,23 @@ void EnableAndGrabFocus(formula::RefEdit& rEdit)
}
-void ScPivotLayoutDlg::MoreBtnClicked()
+void ScPivotLayoutDlg::ExpanderClicked()
{
- mbRefInputMode = maBtnMore.GetState();
- if (!maBtnMore.GetState())
+ mbRefInputMode = mpExpander->get_expanded();
+ if (!mpExpander->get_expanded())
return;
- formula::RefEdit* p = maEdInPos.IsEnabled() ? &maEdInPos : &maEdOutPos;
+ formula::RefEdit* p = mpEdInPos->IsEnabled() ? mpEdInPos : mpEdOutPos;
EnableAndGrabFocus(*p);
}
void ScPivotLayoutDlg::RepaintFieldWindows()
{
Rectangle aRect; // currently has no effect whatsoever.
- maWndPage.Paint(aRect);
- maWndCol.Paint(aRect);
- maWndRow.Paint(aRect);
- maWndData.Paint(aRect);
+ mpWndPage->Paint(aRect);
+ mpWndCol->Paint(aRect);
+ mpWndRow->Paint(aRect);
+ mpWndData->Paint(aRect);
}
ScDPFieldControlBase* ScPivotLayoutDlg::GetFieldWindow(ScPivotFieldType eType)
@@ -1421,15 +1429,15 @@ ScDPFieldControlBase* ScPivotLayoutDlg::GetFieldWindow(ScPivotFieldType eType)
switch (eType)
{
case PIVOTFIELDTYPE_PAGE:
- return &maWndPage;
+ return mpWndPage;
case PIVOTFIELDTYPE_COL:
- return &maWndCol;
+ return mpWndCol;
case PIVOTFIELDTYPE_ROW:
- return &maWndRow;
+ return mpWndRow;
case PIVOTFIELDTYPE_DATA:
- return &maWndData;
+ return mpWndData;
case PIVOTFIELDTYPE_SELECT:
- return &maWndSelect;
+ return mpWndSelect;
default:
;
}
@@ -1443,16 +1451,16 @@ void ScPivotLayoutDlg::GetOtherFieldWindows(ScPivotFieldType eType, ScDPFieldCon
switch (eType)
{
case PIVOTFIELDTYPE_PAGE:
- rpWnd1 = &maWndRow;
- rpWnd2 = &maWndCol;
+ rpWnd1 = mpWndRow;
+ rpWnd2 = mpWndCol;
break;
case PIVOTFIELDTYPE_COL:
- rpWnd1 = &maWndPage;
- rpWnd2 = &maWndRow;
+ rpWnd1 = mpWndPage;
+ rpWnd2 = mpWndRow;
break;
case PIVOTFIELDTYPE_ROW:
- rpWnd1 = &maWndPage;
- rpWnd2 = &maWndCol;
+ rpWnd1 = mpWndPage;
+ rpWnd2 = mpWndCol;
break;
default:
;
@@ -1467,12 +1475,12 @@ void ScPivotLayoutDlg::SetReference( const ScRange& rRef, ScDocument* pDoc )
if ( rRef.aStart != rRef.aEnd )
RefInputStart(mpRefInputEdit);
- if (mpRefInputEdit == &maEdInPos)
+ if (mpRefInputEdit == mpEdInPos)
{
OUString aRefStr(rRef.Format(SCR_ABS_3D, pDoc, pDoc->GetAddressConvention()));
mpRefInputEdit->SetRefString(aRefStr);
}
- else if (mpRefInputEdit == &maEdOutPos)
+ else if (mpRefInputEdit == mpEdOutPos)
{
OUString aRefStr(rRef.aStart.Format(STD_FORMAT, pDoc, pDoc->GetAddressConvention()));
mpRefInputEdit->SetRefString(aRefStr);
@@ -1493,9 +1501,9 @@ void ScPivotLayoutDlg::SetActive()
if (mpRefInputEdit)
mpRefInputEdit->GrabFocus();
- if (mpRefInputEdit == &maEdInPos)
+ if (mpRefInputEdit == mpEdInPos)
EdInModifyHdl( NULL );
- else if (mpRefInputEdit == &maEdOutPos)
+ else if (mpRefInputEdit == mpEdOutPos)
EdOutModifyHdl( NULL );
}
else
@@ -1512,12 +1520,12 @@ IMPL_LINK( ScPivotLayoutDlg, ClickHdl, PushButton *, pBtn )
if (!pWnd)
return 0;
- if( pBtn == &maBtnRemove )
+ if( pBtn == mpBtnRemove )
{
RemoveField( meLastActiveType, pWnd->GetSelectedField() );
if( !pWnd->IsEmpty() ) pWnd->GrabFocus();
}
- else if( pBtn == &maBtnOptions )
+ else if( pBtn == mpBtnOptions )
{
NotifyDoubleClick( meLastActiveType, pWnd->GetSelectedField() );
pWnd->GrabFocus();
@@ -1527,19 +1535,19 @@ IMPL_LINK( ScPivotLayoutDlg, ClickHdl, PushButton *, pBtn )
IMPL_LINK_NOARG(ScPivotLayoutDlg, OkHdl)
{
- OUString aOutPosStr = maEdOutPos.GetText();
+ OUString aOutPosStr = mpEdOutPos->GetText();
ScAddress aAdrDest;
- bool bToNewTable = (maLbOutPos.GetSelectEntryPos() == 1);
+ bool bToNewTable = (mpLbOutPos->GetSelectEntryPos() == 1);
sal_uInt16 nResult = !bToNewTable ? aAdrDest.Parse( aOutPosStr, mpDoc, mpDoc->GetAddressConvention() ) : 0;
if (!bToNewTable && (aOutPosStr.isEmpty() || (nResult & SCA_VALID) != SCA_VALID))
{
// Invalid reference. Bail out.
- if ( !maBtnMore.GetState() )
- maBtnMore.SetState(true);
+ if ( !mpExpander->get_expanded() )
+ mpExpander->set_expanded(true);
ErrorBox(this, WinBits(WB_OK | WB_DEF_OK), ScGlobal::GetRscString(STR_INVALID_TABREF)).Execute();
- maEdOutPos.GrabFocus();
+ mpEdOutPos->GrabFocus();
return 0;
}
@@ -1564,12 +1572,12 @@ IMPL_LINK_NOARG(ScPivotLayoutDlg, OkHdl)
ScRange aOutRange( aAdrDest ); // bToNewTable is passed separately
ScDPSaveData aSaveData;
- aSaveData.SetIgnoreEmptyRows( maBtnIgnEmptyRows.IsChecked() );
- aSaveData.SetRepeatIfEmpty( maBtnDetectCat.IsChecked() );
- aSaveData.SetColumnGrand( maBtnTotalCol.IsChecked() );
- aSaveData.SetRowGrand( maBtnTotalRow.IsChecked() );
- aSaveData.SetFilterButton( maBtnFilter.IsChecked() );
- aSaveData.SetDrillDown( maBtnDrillDown.IsChecked() );
+ aSaveData.SetIgnoreEmptyRows( mpBtnIgnEmptyRows->IsChecked() );
+ aSaveData.SetRepeatIfEmpty( mpBtnDetectCat->IsChecked() );
+ aSaveData.SetColumnGrand( mpBtnTotalCol->IsChecked() );
+ aSaveData.SetRowGrand( mpBtnTotalRow->IsChecked() );
+ aSaveData.SetFilterButton( mpBtnFilter->IsChecked() );
+ aSaveData.SetDrillDown( mpBtnDrillDown->IsChecked() );
uno::Reference<sheet::XDimensionsSupplier> xSource = mxDlgDPObject->GetSource();
@@ -1691,9 +1699,9 @@ IMPL_LINK_NOARG(ScPivotLayoutDlg, CancelHdl)
return 0;
}
-IMPL_LINK_NOARG(ScPivotLayoutDlg, MoreClickHdl)
+IMPL_LINK_NOARG(ScPivotLayoutDlg, ExpandHdl)
{
- MoreBtnClicked();
+ ExpanderClicked();
return 0;
}
diff --git a/sc/source/ui/inc/fieldwnd.hxx b/sc/source/ui/inc/fieldwnd.hxx
index 1fdbe99..3b88bfc 100644
--- a/sc/source/ui/inc/fieldwnd.hxx
+++ b/sc/source/ui/inc/fieldwnd.hxx
@@ -25,6 +25,7 @@
#include <vcl/ctrl.hxx>
#include <vcl/fixed.hxx>
#include <vcl/scrbar.hxx>
+#include <vcl/layout.hxx>
#include "address.hxx"
#include "pivot.hxx"
@@ -91,10 +92,13 @@ public:
ScDPFieldControlBase(
ScPivotLayoutDlg* pParent, const ResId& rResId, FixedText* pCaption, const char* pcHelpId);
+ ScDPFieldControlBase( Window* pParent );
virtual ~ScDPFieldControlBase();
virtual void CalcSize() = 0;
+ virtual void Init( ScPivotLayoutDlg* pDlg, FixedText* pCaption );
+
virtual bool IsValidIndex( size_t nIndex ) const = 0;
/** @return The pixel position of a field (without bound check). */
virtual Point GetFieldPosition( size_t nIndex ) = 0;
@@ -276,6 +280,7 @@ protected:
public:
ScDPHorFieldControl(
ScPivotLayoutDlg* pDialog, const ResId& rResId, FixedText* pCaption, const char* pcHelpId);
+ ScDPHorFieldControl( Window* pParent );
virtual ~ScDPHorFieldControl();
@@ -313,6 +318,7 @@ class ScDPPageFieldControl : public ScDPHorFieldControl
public:
ScDPPageFieldControl(
ScPivotLayoutDlg* pDialog, const ResId& rResId, FixedText* pCaption, const char* pcHelpId);
+ ScDPPageFieldControl( Window* pParent );
virtual ~ScDPPageFieldControl();
virtual ScPivotFieldType GetFieldType() const;
@@ -326,6 +332,7 @@ class ScDPColFieldControl : public ScDPHorFieldControl
public:
ScDPColFieldControl(
ScPivotLayoutDlg* pDialog, const ResId& rResId, FixedText* pCaption, const char* pcHelpId);
+ ScDPColFieldControl( Window* pParent );
virtual ~ScDPColFieldControl();
virtual ScPivotFieldType GetFieldType() const;
@@ -342,6 +349,7 @@ class ScDPRowFieldControl : public ScDPFieldControlBase
public:
ScDPRowFieldControl(
ScPivotLayoutDlg* pDialog, const ResId& rResId, FixedText* pCaption, const char* pcHelpId);
+ ScDPRowFieldControl( Window* pParent );
virtual ~ScDPRowFieldControl();
@@ -383,6 +391,7 @@ class ScDPSelectFieldControl : public ScDPHorFieldControl
public:
ScDPSelectFieldControl(
ScPivotLayoutDlg* pDialog, const ResId& rResId, FixedText* pCaption, const char* pcHelpId);
+ ScDPSelectFieldControl( Window* pParent );
virtual ~ScDPSelectFieldControl();
virtual ScPivotFieldType GetFieldType() const;
@@ -396,6 +405,7 @@ class ScDPDataFieldControl : public ScDPHorFieldControl
public:
ScDPDataFieldControl(
ScPivotLayoutDlg* pParent, const ResId& rResId, FixedText* pCaption, const char* pcHelpId);
+ ScDPDataFieldControl( Window* pParent );
virtual ~ScDPDataFieldControl();
virtual ScPivotFieldType GetFieldType() const;
diff --git a/sc/source/ui/inc/pvlaydlg.hxx b/sc/source/ui/inc/pvlaydlg.hxx
index 318f4e9..b4548ce 100644
--- a/sc/source/ui/inc/pvlaydlg.hxx
+++ b/sc/source/ui/inc/pvlaydlg.hxx
@@ -139,7 +139,7 @@ private:
/** Fills the field windows from the current pivot table settings. */
void InitFieldWindows();
/** Sets focus to the specified field control, if it is not empty. */
- void GrabFieldFocus( ScDPFieldControlBase& rFieldWindow );
+ void GrabFieldFocus( ScDPFieldControlBase* rFieldWindow );
void InitWndSelect(const ScDPLabelDataVector& rLabels);
void InitWndData(const std::vector<ScPivotField>& rFields);
@@ -166,7 +166,7 @@ private:
void UpdateSrcRange();
void UpdateOutputPos();
void OutputPosUpdated();
- void MoreBtnClicked();
+ void ExpanderClicked();
void RepaintFieldWindows();
@@ -188,7 +188,7 @@ private:
DECL_LINK( ClickHdl, PushButton * );
DECL_LINK( OkHdl, void * );
DECL_LINK( CancelHdl, void * );
- DECL_LINK( MoreClickHdl, void * );
+ DECL_LINK( ExpandHdl, void * );
DECL_LINK( EdOutModifyHdl, void * );
DECL_LINK( EdInModifyHdl, void * );
DECL_LINK( SelAreaHdl, void * );
@@ -197,41 +197,40 @@ private:
private:
typedef boost::scoped_ptr<ScDPObject> ScDPObjectPtr;
- FixedLine maFlLayout;
- FixedText maFtPage;
- ScDPPageFieldControl maWndPage;
- FixedText maFtCol;
- ScDPColFieldControl maWndCol;
- FixedText maFtRow;
- ScDPRowFieldControl maWndRow;
- FixedText maFtData;
- ScDPDataFieldControl maWndData;
- ScDPSelectFieldControl maWndSelect;
- FixedInfo maFtInfo;
+ FixedText* mpFtPage;
+ ScDPPageFieldControl* mpWndPage;
+ FixedText* mpFtCol;
+ ScDPColFieldControl* mpWndCol;
+ FixedText* mpFtRow;
+ ScDPRowFieldControl* mpWndRow;
+ FixedText* mpFtData;
+ ScDPDataFieldControl* mpWndData;
+ ScDPSelectFieldControl* mpWndSelect;
+ FixedText* mpFtInfo;
std::vector<ScDPFieldControlBase*> maFieldCtrls;
- FixedLine maFlAreas;
- FixedText maFtInArea;
- ::formula::RefEdit maEdInPos;
- ::formula::RefButton maRbInPos;
- ListBox maLbOutPos;
- FixedText maFtOutArea;
- formula::RefEdit maEdOutPos;
- formula::RefButton maRbOutPos;
- CheckBox maBtnIgnEmptyRows;
- CheckBox maBtnDetectCat;
- CheckBox maBtnTotalCol;
- CheckBox maBtnTotalRow;
- CheckBox maBtnFilter;
- CheckBox maBtnDrillDown;
-
- OKButton maBtnOk;
- CancelButton maBtnCancel;
- HelpButton maBtnHelp;
- PushButton maBtnRemove;
- PushButton maBtnOptions;
- MoreButton maBtnMore;
+ FixedText* mpFtInArea;
+ ::formula::RefEdit* mpEdInPos;
+ ::formula::RefButton* mpRbInPos;
+ ListBox* mpLbOutPos;
+ FixedText* mpFtOutArea;
+ formula::RefEdit* mpEdOutPos;
+ formula::RefButton* mpRbOutPos;
+ CheckBox* mpBtnIgnEmptyRows;
+ CheckBox* mpBtnDetectCat;
+ CheckBox* mpBtnTotalCol;
+ CheckBox* mpBtnTotalRow;
+ CheckBox* mpBtnFilter;
+ CheckBox* mpBtnDrillDown;
+
+ OKButton* mpBtnOk;
+ CancelButton* mpBtnCancel;
+ PushButton* mpBtnRemove;
+ PushButton* mpBtnOptions;
+ //FIXME: replace with expander
+ //MoreButton* mpBtnMore;
+ VclExpander* mpExpander;
std::vector<OUString> maFuncNames; /// Localized function names from resource.
boost::ptr_vector<OUString> maRefStrs; /// Reference strings stored with the output list box.
ScDPObjectPtr mxDlgDPObject; /// Clone of the pivot table object this dialog is based on.
diff --git a/sc/uiconfig/scalc/ui/pivottablelayout.ui b/sc/uiconfig/scalc/ui/pivottablelayout.ui
new file mode 100644
index 0000000..efc0716
--- a/dev/null
+++ b/sc/uiconfig/scalc/ui/pivottablelayout.ui
@@ -0,0 +1,697 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <!-- interface-requires gtk+ 3.0 -->
+ <object class="GtkDialog" id="PivotTableLayout">
+ <property name="can_focus">False</property>
+ <property name="border_width">6</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="spacing">12</property>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox" id="dialog-action_area1">
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="layout_style">start</property>
+ <child>
+ <object class="GtkButton" id="ok">
+ <property name="label">gtk-ok</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="has_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="cancel">
+ <property name="label">gtk-cancel</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>
+ <child>
+ <object class="GtkButton" id="remove">
+ <property name="label">gtk-remove</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">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="options">
+ <property name="label" translatable="yes">Options...</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</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="GtkBox" id="box1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkBox" id="box2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkBox" id="box5">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="sclo-ScDPPageFieldControl" id="pagefield">
+ <property name="visible">True</property>
+ <property name="can_focus">False</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="row_spacing">6</property>
+ <property name="column_spacing">6</property>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <object class="sclo-ScDPColFieldControl" id="columnfield">
+ <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="sclo-ScDPRowFieldControl" id="rowfield">
+ <property name="visible">True</property>
+ <property name="can_focus">False</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="sclo-ScDPDataFieldControl" id="datafield">
+ <property name="visible">True</property>
+ <property name="can_focus">False</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>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="info">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Drag the fields from the right into the desired position</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="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="sclo-ScDPSelectFieldControl" id="buttonfield">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkExpander" id="more">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkFrame" id="frame1">
+ <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="alignment1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="left_padding">12</property>
+ <property name="top_padding">6</property>
+ <child>
+ <object class="GtkBox" id="box3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkBox" id="box4">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkLabel" id="select_from">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Selection from:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">rangesel1</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="foruilo-RefEdit" id="rangesel1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="foruilo-RefButton" id="changebutton1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</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="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box6">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkLabel" id="results_to">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Res_ults to:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">rangesel2</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBox" id="target_area">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="foruilo-RefEdit" id="rangesel2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="foruilo-RefButton" id="changebutton2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</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="GtkGrid" id="grid3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="row_spacing">6</property>
+ <property name="column_spacing">6</property>
+ <child>
+ <object class="GtkCheckButton" id="ignore_empty">
+ <property name="label" translatable="yes">Ignore _empty rows</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="detect_category">
+ <property name="label" translatable="yes">_Identify categories</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">1</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="total_cols">
+ <property name="label" translatable="yes">Total colum_ns</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">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="total_rows">
+ <property name="label" translatable="yes">_Total rows</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">1</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="add_filter">
+ <property name="label" translatable="yes">_Add filter</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">2</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="drill_down">
+ <property name="label" translatable="yes">Ena_ble drill to details</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">1</property>
+ <property name="top_attach">2</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">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Result</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </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">More</property>
+ </object>
+ </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="page_text">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Page Fields</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="column_text">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Column Fields</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="row_text">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Row Fields</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="data_text">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Data Fields</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">5</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="select_text">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Selection area</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">6</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="sum">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Sum - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">7</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="count">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Count - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">8</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="mean">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Mean - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">9</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="max">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Max - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">10</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="min">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Min - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">11</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="product">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Product - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">12</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="count2">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Count - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">13</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="stdev">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">StDev - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">14</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="stdevp">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">StDevP - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">15</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="var">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Var - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">16</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="varp">
+ <property name="visible">False</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">VarP - </property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">17</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">ok</action-widget>
+ <action-widget response="0">cancel</action-widget>
+ <action-widget response="0">help</action-widget>
+ <action-widget response="0">remove</action-widget>
+ <action-widget response="0">options</action-widget>
+ </action-widgets>
+ </object>
+</interface>