[Libreoffice-commits] core.git: chart2/AllLangResTarget_chartcontroller.mk chart2/Library_chartcontroller.mk chart2/source chart2/uiconfig chart2/UIConfig_chart2.mk extras/source

Olivier Hallot olivier.hallot at edx.srv.br
Fri Jan 17 08:10:14 PST 2014


 chart2/AllLangResTarget_chartcontroller.mk                 |    1 
 chart2/Library_chartcontroller.mk                          |    1 
 chart2/UIConfig_chart2.mk                                  |    1 
 chart2/source/controller/dialogs/RangeEdit.cxx             |   57 --
 chart2/source/controller/dialogs/ResourceIds.hrc           |    2 
 chart2/source/controller/dialogs/dlg_DataSource.cxx        |    7 
 chart2/source/controller/dialogs/dlg_DataSource.hrc        |   27 
 chart2/source/controller/dialogs/tp_DataSource.cxx         |  328 ++++--------
 chart2/source/controller/dialogs/tp_DataSource.hrc         |   44 -
 chart2/source/controller/dialogs/tp_DataSource.hxx         |   42 -
 chart2/source/controller/dialogs/tp_DataSource.src         |  174 ------
 chart2/source/controller/dialogs/tp_DataSourceControls.cxx |   15 
 chart2/source/controller/dialogs/tp_DataSourceControls.hxx |   11 
 chart2/source/controller/dialogs/tp_RangeChooser.hxx       |    1 
 chart2/source/controller/inc/HelpIds.hrc                   |    2 
 chart2/source/controller/inc/RangeEdit.hxx                 |   46 -
 chart2/source/controller/inc/dlg_DataSource.hxx            |    1 
 chart2/uiconfig/ui/datarangedialog.ui                      |   14 
 chart2/uiconfig/ui/tp_DataSource.ui                        |  354 +++++++++++++
 extras/source/glade/libreoffice-catalog.xml.in             |    3 
 20 files changed, 536 insertions(+), 595 deletions(-)

New commits:
commit 9c4032921cfb11c8786e2a371286a7d8384c74d8
Author: Olivier Hallot <olivier.hallot at edx.srv.br>
Date:   Wed Jan 1 22:59:27 2014 -0200

    Convert chart data source tab page & dialog to .ui
    
    Conflicts:
    	chart2/source/controller/dialogs/dlg_DataSource.cxx
    	chart2/source/controller/inc/dlg_DataSource.hxx
    
    Change-Id: Ic3e3adc578156161f16254862e1ca33a8ad9e1f6
    Reviewed-on: https://gerrit.libreoffice.org/7255
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/chart2/AllLangResTarget_chartcontroller.mk b/chart2/AllLangResTarget_chartcontroller.mk
index d15c4f5..c5ca48d 100644
--- a/chart2/AllLangResTarget_chartcontroller.mk
+++ b/chart2/AllLangResTarget_chartcontroller.mk
@@ -35,7 +35,6 @@ $(eval $(call gb_SrsTarget_add_files,chart2/res,\
     chart2/source/controller/dialogs/Strings.src \
     chart2/source/controller/dialogs/Strings_Statistic.src \
     chart2/source/controller/dialogs/tp_ChartType.src \
-    chart2/source/controller/dialogs/tp_DataSource.src \
 ))
 
 $(eval $(call gb_SrsTarget_add_nonlocalizable_files,chart2/res,\
diff --git a/chart2/Library_chartcontroller.mk b/chart2/Library_chartcontroller.mk
index ea7cb8a..d4f309f 100644
--- a/chart2/Library_chartcontroller.mk
+++ b/chart2/Library_chartcontroller.mk
@@ -107,7 +107,6 @@ $(eval $(call gb_Library_add_exception_objects,chartcontroller,\
     chart2/source/controller/dialogs/dlg_ShapeParagraph \
     chart2/source/controller/dialogs/dlg_View3D \
     chart2/source/controller/dialogs/ObjectNameProvider \
-    chart2/source/controller/dialogs/RangeEdit \
     chart2/source/controller/dialogs/RangeSelectionButton \
     chart2/source/controller/dialogs/RangeSelectionHelper \
     chart2/source/controller/dialogs/RangeSelectionListener \
diff --git a/chart2/UIConfig_chart2.mk b/chart2/UIConfig_chart2.mk
index 38f1beb..c40bac7 100644
--- a/chart2/UIConfig_chart2.mk
+++ b/chart2/UIConfig_chart2.mk
@@ -50,6 +50,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/schart,\
 	chart2/uiconfig/ui/tp_axisLabel \
 	chart2/uiconfig/ui/tp_AxisPositions \
 	chart2/uiconfig/ui/tp_DataLabel \
+	chart2/uiconfig/ui/tp_DataSource \
 	chart2/uiconfig/ui/tp_ErrorBars \
 	chart2/uiconfig/ui/tp_LegendPosition \
 	chart2/uiconfig/ui/tp_PolarOptions \
diff --git a/chart2/source/controller/dialogs/RangeEdit.cxx b/chart2/source/controller/dialogs/RangeEdit.cxx
deleted file mode 100644
index 345eb9b..0000000
--- a/chart2/source/controller/dialogs/RangeEdit.cxx
+++ /dev/null
@@ -1,57 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "RangeEdit.hxx"
-
-namespace chart
-{
-
-// class RangeEdit
-RangeEdit::RangeEdit( Window* pParent, const ResId& rResId):
-    Edit( pParent , rResId )
-{
-    EnableUpdateData( 1000 );
-}
-
-RangeEdit::~RangeEdit()
-{
-}
-
-void RangeEdit::SetKeyInputHdl( const Link& rKeyInputLink )
-{
-    m_aKeyInputLink = rKeyInputLink;
-}
-
-void RangeEdit::KeyInput( const KeyEvent& rKEvt )
-{
-    const KeyCode& rKeyCode = rKEvt.GetKeyCode();
-    if( !rKeyCode.GetModifier() && rKeyCode.GetCode() == KEY_F2 )
-    {
-        if ( m_aKeyInputLink.IsSet() )
-        {
-            m_aKeyInputLink.Call( NULL );
-        }
-    }
-    else
-       Edit::KeyInput( rKEvt );
-}
-
-} //namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/controller/dialogs/ResourceIds.hrc b/chart2/source/controller/dialogs/ResourceIds.hrc
index 45b8601..415f6cf 100644
--- a/chart2/source/controller/dialogs/ResourceIds.hrc
+++ b/chart2/source/controller/dialogs/ResourceIds.hrc
@@ -44,8 +44,6 @@
 #define TP_SCALE        903
 #define TP_AXIS_POSITIONS   904
 #define TP_CHARTTYPE    910
-#define TP_RANGECHOOSER 911
-#define TP_DATA_SOURCE  914
 
 #define TP_3D_SCENEGEOMETRY     915
 #define TP_3D_SCENEAPPEARANCE   916
diff --git a/chart2/source/controller/dialogs/dlg_DataSource.cxx b/chart2/source/controller/dialogs/dlg_DataSource.cxx
index 7384b1a..5dd1e12 100644
--- a/chart2/source/controller/dialogs/dlg_DataSource.cxx
+++ b/chart2/source/controller/dialogs/dlg_DataSource.cxx
@@ -18,7 +18,6 @@
  */
 
 #include "dlg_DataSource.hxx"
-#include "dlg_DataSource.hrc"
 #include "Strings.hrc"
 #include "ResId.hxx"
 #include "ChartTypeTemplateProvider.hxx"
@@ -124,6 +123,12 @@ void DataSourceTabControl::EnableTabToggling()
 
 sal_uInt16 DataSourceDialog::m_nLastPageId = 0;
 
+enum DataSourceDialogPages
+{
+    TP_RANGECHOOSER = 1,
+    TP_DATA_SOURCE = 2
+};
+
 DataSourceDialog::DataSourceDialog(Window * pParent,
     const Reference< XChartDocument > & xChartDocument,
     const Reference< uno::XComponentContext > & xContext)
diff --git a/chart2/source/controller/dialogs/dlg_DataSource.hrc b/chart2/source/controller/dialogs/dlg_DataSource.hrc
deleted file mode 100644
index 25412ae..0000000
--- a/chart2/source/controller/dialogs/dlg_DataSource.hrc
+++ /dev/null
@@ -1,27 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#include "ResourceIds.hrc"
-
-#define TABCTRL 1
-
-#define BTN_OK 1
-#define BTN_CANCEL 2
-#define BTN_HELP 3
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/controller/dialogs/tp_DataSource.cxx b/chart2/source/controller/dialogs/tp_DataSource.cxx
index 236cb70..f307c94 100644
--- a/chart2/source/controller/dialogs/tp_DataSource.cxx
+++ b/chart2/source/controller/dialogs/tp_DataSource.cxx
@@ -18,7 +18,6 @@
  */
 
 #include "tp_DataSource.hxx"
-#include "tp_DataSource.hrc"
 #include "Strings.hrc"
 #include "ResId.hxx"
 #include "chartview/ChartSfxItemIds.hxx"
@@ -134,23 +133,6 @@ static long lcl_pRoleListBoxTabs[] =
         0, 0, 75
     };
 
-void lcl_ShowChooserButton(
-    ::chart::RangeSelectionButton & rChooserButton,
-    Edit & rEditField,
-    sal_Bool bShow )
-{
-    if( rChooserButton.IsVisible() != bShow )
-    {
-        rChooserButton.Show( bShow );
-        sal_Int32 nWidthDiff = 12 + 4;
-        if( bShow )
-            nWidthDiff = -nWidthDiff;
-        Size aSize = rChooserButton.PixelToLogic( rEditField.GetSizePixel(), MAP_APPFONT );
-        aSize.setWidth( aSize.getWidth() + nWidthDiff );
-        rEditField.SetSizePixel( rChooserButton.LogicToPixel( aSize, MAP_APPFONT ));
-    }
-}
-
 void lcl_enableRangeChoosing( bool bEnable, Dialog * pDialog )
 {
     if( pDialog )
@@ -219,25 +201,9 @@ DataSourceTabPage::DataSourceTabPage(
     ChartTypeTemplateProvider* pTemplateProvider,
     Dialog * pParentDialog,
     bool bHideDescription /* = false */ ) :
-        ::svt::OWizardPage( pParent, SchResId( TP_DATA_SOURCE )),
-
-    m_aFT_CAPTION     ( this, SchResId( FT_CAPTION_FOR_WIZARD )),
-    m_aFT_SERIES      ( this, SchResId( FT_SERIES      )),
-    m_apLB_SERIES( new SeriesListBox( this, SchResId( LB_SERIES ))),
-    m_aBTN_ADD        ( this, SchResId( BTN_ADD        )),
-    m_aBTN_REMOVE     ( this, SchResId( BTN_REMOVE     )),
-    m_aBTN_UP         ( this, SchResId( BTN_UP         )),
-    m_aBTN_DOWN       ( this, SchResId( BTN_DOWN       )),
-    m_aFT_ROLE        ( this, SchResId( FT_ROLE        )),
-    m_aLB_ROLE        ( this, SchResId( LB_ROLE        )),
-    m_aFT_RANGE       ( this, SchResId( FT_RANGE       )),
-    m_aEDT_RANGE      ( this, SchResId( EDT_RANGE      )),
-    m_aIMB_RANGE_MAIN ( this, SchResId( IMB_RANGE_MAIN )),
-    m_aFT_CATEGORIES  ( this, SchResId( FT_CATEGORIES  )),
-    m_aFT_DATALABELS  ( this, SchResId( FT_DATALABELS  )),
-    m_aEDT_CATEGORIES ( this, SchResId( EDT_CATEGORIES )),
-    m_aIMB_RANGE_CAT  ( this, SchResId( IMB_RANGE_CAT  )),
-
+        ::svt::OWizardPage( pParent
+                           ,"tp_DataSource"
+                           ,"modules/schart/ui/tp_DataSource.ui"),
     m_pTemplateProvider( pTemplateProvider ),
     m_rDialogModel( rDialogModel ),
 
@@ -246,105 +212,80 @@ DataSourceTabPage::DataSourceTabPage(
     m_pParentDialog( pParentDialog ),
     m_pTabPageNotifiable( dynamic_cast< TabPageNotifiable * >( pParentDialog ))
 {
-    FreeResource();
 
-    if( bHideDescription )
-    {
-        // note: the offset should be a negative value for shifting upwards, the
-        // 4 is for the offset difference between a wizard page and a tab-page
-        long nYOffset = - ( m_aFT_SERIES.GetPosPixel().getY() - m_aFT_CAPTION.GetPosPixel().getY() + 4 );
-        long nUpShift = - 2;
-        long nYResize = - (nYOffset - nUpShift);
-        m_aFT_CAPTION.Hide();
-
-        // shift list boxes and enlarge them by the space saved by hiding the caption
-        lcl_shiftControlY( m_aFT_SERIES, nYOffset );
-        lcl_shiftControlY( *(m_apLB_SERIES.get()), nYOffset );
-        lcl_increaseHeightOfControl( *(m_apLB_SERIES.get()), nYResize );
-
-        lcl_shiftControlY( m_aFT_ROLE, nYOffset );
-        lcl_shiftControlY( m_aLB_ROLE, nYOffset );
-        lcl_increaseHeightOfControl( m_aLB_ROLE, nYResize );
-
-        lcl_shiftControlY( m_aBTN_ADD, nUpShift );
-        lcl_shiftControlY( m_aBTN_REMOVE, nUpShift );
-        lcl_shiftControlY( m_aBTN_UP, nUpShift );
-        lcl_shiftControlY( m_aBTN_DOWN, nUpShift );
-        lcl_shiftControlY( m_aFT_RANGE, nUpShift );
-        lcl_shiftControlY( m_aEDT_RANGE, nUpShift );
-        lcl_shiftControlY( m_aIMB_RANGE_MAIN, nUpShift );
-        lcl_shiftControlY( m_aFT_CATEGORIES, nUpShift );
-        lcl_shiftControlY( m_aFT_DATALABELS, nUpShift );
-        lcl_shiftControlY( m_aEDT_CATEGORIES, nUpShift );
-        lcl_shiftControlY( m_aIMB_RANGE_CAT, nUpShift );
-    }
-    else
-    {
-        // make font of caption bold
-        Font aFont( m_aFT_CAPTION.GetControlFont() );
-        aFont.SetWeight( WEIGHT_BOLD );
-        m_aFT_CAPTION.SetControlFont( aFont );
+    get(m_pFT_CAPTION     ,"FT_CAPTION_FOR_WIZARD");
+    get(m_pFT_SERIES      ,"FT_SERIES");
 
-        // no mnemonic
-        m_aFT_CAPTION.SetStyle( m_aFT_CAPTION.GetStyle() | WB_NOLABEL );
-    }
+    get(m_pLB_SERIES     ,"LB_SERIES");
+
+    get(m_pBTN_ADD        ,"BTN_ADD");
+    get(m_pBTN_REMOVE     ,"BTN_REMOVE");
+    get(m_pBTN_UP         ,"BTN_UP");
+    get(m_pBTN_DOWN       ,"BTN_DOWN");
+    get(m_pFT_ROLE        ,"FT_ROLE");
+    get(m_pLB_ROLE        ,"LB_ROLE");
+    get(m_pFT_RANGE       ,"FT_RANGE");
+    get(m_pEDT_RANGE      ,"EDT_RANGE");
+    get(m_pIMB_RANGE_MAIN ,"IMB_RANGE_MAIN");
+    get(m_pFT_CATEGORIES  ,"FT_CATEGORIES");
+    get(m_pFT_DATALABELS  ,"FT_DATALABELS");
+    get(m_pEDT_CATEGORIES ,"EDT_CATEGORIES");
+    get(m_pIMB_RANGE_CAT  ,"IMB_RANGE_CAT");
 
-    m_aFixedTextRange = OUString( m_aFT_RANGE.GetText() );
+    m_pFT_CAPTION->Show(!bHideDescription);
+
+    m_aFixedTextRange = OUString( m_pFT_RANGE->GetText() );
     this->SetText( SCH_RESSTR( STR_OBJECT_DATASERIES_PLURAL ) );
 
     // set handlers
-    m_apLB_SERIES->SetSelectHdl( LINK( this, DataSourceTabPage, SeriesSelectionChangedHdl ));
-
-    m_aLB_ROLE.SetStyle( m_aLB_ROLE.GetStyle() | WB_HSCROLL | WB_CLIPCHILDREN );
-    m_aLB_ROLE.SetSelectionMode( SINGLE_SELECTION );
-    m_aLB_ROLE.SetSelectHdl( LINK( this, DataSourceTabPage, RoleSelectionChangedHdl ));
+    m_pLB_SERIES->SetSelectHdl( LINK( this, DataSourceTabPage, SeriesSelectionChangedHdl ));
 
-    m_aEDT_RANGE.SetKeyInputHdl( LINK( this, DataSourceTabPage, MainRangeButtonClickedHdl ));
-    m_aEDT_CATEGORIES.SetKeyInputHdl( LINK( this, DataSourceTabPage, CategoriesRangeButtonClickedHdl ));
+    m_pLB_ROLE->SetSelectHdl( LINK( this, DataSourceTabPage, RoleSelectionChangedHdl ));
 
-    m_aIMB_RANGE_MAIN.SetClickHdl( LINK( this, DataSourceTabPage, MainRangeButtonClickedHdl ));
-    m_aIMB_RANGE_CAT.SetClickHdl( LINK( this, DataSourceTabPage, CategoriesRangeButtonClickedHdl ));
+    m_pIMB_RANGE_MAIN->SetClickHdl( LINK( this, DataSourceTabPage, MainRangeButtonClickedHdl ));
+    m_pIMB_RANGE_CAT->SetClickHdl( LINK( this, DataSourceTabPage, CategoriesRangeButtonClickedHdl ));
 
-    m_aBTN_ADD.SetClickHdl( LINK( this, DataSourceTabPage, AddButtonClickedHdl ));
-    m_aBTN_REMOVE.SetClickHdl( LINK( this, DataSourceTabPage, RemoveButtonClickedHdl ));
+    m_pBTN_ADD->SetClickHdl( LINK( this, DataSourceTabPage, AddButtonClickedHdl ));
+    m_pBTN_REMOVE->SetClickHdl( LINK( this, DataSourceTabPage, RemoveButtonClickedHdl ));
 
-    m_aBTN_UP.SetClickHdl( LINK( this, DataSourceTabPage, UpButtonClickedHdl ));
-    m_aBTN_DOWN.SetClickHdl( LINK( this, DataSourceTabPage, DownButtonClickedHdl ));
+    m_pBTN_UP->SetClickHdl( LINK( this, DataSourceTabPage, UpButtonClickedHdl ));
+    m_pBTN_DOWN->SetClickHdl( LINK( this, DataSourceTabPage, DownButtonClickedHdl ));
 
-    m_aEDT_RANGE.SetModifyHdl( LINK( this, DataSourceTabPage, RangeModifiedHdl ));
-    m_aEDT_CATEGORIES.SetModifyHdl( LINK( this, DataSourceTabPage, RangeModifiedHdl ));
-    m_aEDT_RANGE.SetUpdateDataHdl( LINK( this, DataSourceTabPage, RangeUpdateDataHdl ));
-    m_aEDT_CATEGORIES.SetUpdateDataHdl( LINK( this, DataSourceTabPage, RangeUpdateDataHdl ));
+    m_pEDT_RANGE->SetModifyHdl( LINK( this, DataSourceTabPage, RangeModifiedHdl ));
+    m_pEDT_CATEGORIES->SetModifyHdl( LINK( this, DataSourceTabPage, RangeModifiedHdl ));
+    m_pEDT_RANGE->SetUpdateDataHdl( LINK( this, DataSourceTabPage, RangeUpdateDataHdl ));
+    m_pEDT_CATEGORIES->SetUpdateDataHdl( LINK( this, DataSourceTabPage, RangeUpdateDataHdl ));
 
     // #i75179# enable setting the background to a different color
-    m_aEDT_RANGE.SetStyle( m_aEDT_RANGE.GetStyle() | WB_FORCECTRLBACKGROUND );
-    m_aEDT_CATEGORIES.SetStyle( m_aEDT_CATEGORIES.GetStyle() | WB_FORCECTRLBACKGROUND );
+    m_pEDT_RANGE->SetStyle( m_pEDT_RANGE->GetStyle() | WB_FORCECTRLBACKGROUND );
+    m_pEDT_CATEGORIES->SetStyle( m_pEDT_CATEGORIES->GetStyle() | WB_FORCECTRLBACKGROUND );
 
     // set symbol font for arrows
     // note: StarSymbol is substituted to OpenSymbol for OOo
-    Font aSymbolFont( m_aBTN_UP.GetFont());
+    Font aSymbolFont( m_pBTN_UP->GetFont());
     aSymbolFont.SetName( "StarSymbol" );
-    m_aBTN_UP.SetControlFont( aSymbolFont );
-    m_aBTN_DOWN.SetControlFont( aSymbolFont );
+    m_pBTN_UP->SetControlFont( aSymbolFont );
+    m_pBTN_DOWN->SetControlFont( aSymbolFont );
 
     // set button text
     sal_Unicode cBlackUpPointingTriangle( 0x25b2 );
     sal_Unicode cBlackDownPointingTriangle( 0x25bc );
-    m_aBTN_UP.SetText( OUString( cBlackUpPointingTriangle ));
-    m_aBTN_DOWN.SetText( OUString( cBlackDownPointingTriangle ));
+    m_pBTN_UP->SetText( OUString( cBlackUpPointingTriangle ));
+    m_pBTN_DOWN->SetText( OUString( cBlackDownPointingTriangle ));
 
     // init controls
-    m_aLB_ROLE.SetTabs( lcl_pRoleListBoxTabs, MAP_APPFONT );
-    m_aLB_ROLE.Show();
+    m_pLB_ROLE->SetTabs( lcl_pRoleListBoxTabs, MAP_APPFONT );
+    m_pLB_ROLE->Show();
 
     updateControlsFromDialogModel();
 
     // select first series
-    if( m_apLB_SERIES->First())
-        m_apLB_SERIES->Select( m_apLB_SERIES->First());
-    m_apLB_SERIES->GrabFocus();
-    m_aBTN_UP.SetAccessibleName(SCH_RESSTR(STR_BUTTON_UP));
-    m_aBTN_DOWN.SetAccessibleName(SCH_RESSTR(STR_BUTTON_DOWN));
+    if( m_pLB_SERIES->First())
+        m_pLB_SERIES->Select( m_pLB_SERIES->First());
+    m_pLB_SERIES->GrabFocus();
+
+    m_pBTN_UP->SetAccessibleName(SCH_RESSTR(STR_BUTTON_UP));
+    m_pBTN_DOWN->SetAccessibleName(SCH_RESSTR(STR_BUTTON_DOWN));
 }
 
 DataSourceTabPage::~DataSourceTabPage()
@@ -407,12 +348,12 @@ bool DataSourceTabPage::isValid()
 {
     bool bRoleRangeValid = true;
     bool bCategoriesRangeValid = true;
-    bool bHasSelectedEntry = (m_apLB_SERIES->FirstSelected() != 0);
+    bool bHasSelectedEntry = (m_pLB_SERIES->FirstSelected() != 0);
 
     if( bHasSelectedEntry )
-        bRoleRangeValid = isRangeFieldContentValid( m_aEDT_RANGE );
-    if( m_aEDT_CATEGORIES.IsEnabled() )
-        bCategoriesRangeValid = isRangeFieldContentValid( m_aEDT_CATEGORIES );
+        bRoleRangeValid = isRangeFieldContentValid( *m_pEDT_RANGE );
+    if( m_pEDT_CATEGORIES->IsEnabled() )
+        bCategoriesRangeValid = isRangeFieldContentValid( *m_pEDT_CATEGORIES );
     bool bValid = ( bRoleRangeValid && bCategoriesRangeValid );
 
     if( m_pTabPageNotifiable )
@@ -438,23 +379,23 @@ void DataSourceTabPage::updateControlsFromDialogModel()
     SeriesSelectionChangedHdl( 0 );
 
     // categories
-    m_aEDT_CATEGORIES.SetText( m_rDialogModel.getCategoriesRange() );
+    m_pEDT_CATEGORIES->SetText( m_rDialogModel.getCategoriesRange() );
 
     updateControlState();
 }
 
 void DataSourceTabPage::fillSeriesListBox()
 {
-    m_apLB_SERIES->SetUpdateMode( sal_False );
+    m_pLB_SERIES->SetUpdateMode( sal_False );
 
     Reference< XDataSeries > xSelected;
-    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->FirstSelected());
+    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->FirstSelected());
     if( pEntry )
         xSelected.set( pEntry->m_xDataSeries );
 
     bool bHasSelectedEntry = (pEntry != 0);
     SvTreeListEntry * pSelectedEntry = 0;
-    m_apLB_SERIES->Clear();
+    m_pLB_SERIES->Clear();
 
     ::std::vector< DialogModel::tSeriesWithChartTypeByName > aSeries(
         m_rDialogModel.getAllDataSeriesWithLabel() );
@@ -484,7 +425,7 @@ void DataSourceTabPage::fillSeriesListBox()
             ++nUnnamedSeriesIndex;
         }
         pEntry = dynamic_cast< SeriesEntry * >(
-            m_apLB_SERIES->InsertEntry( aLabel ));
+            m_pLB_SERIES->InsertEntry( aLabel ));
         if( pEntry )
         {
             pEntry->m_xDataSeries.set( (*aIt).second.first );
@@ -495,20 +436,20 @@ void DataSourceTabPage::fillSeriesListBox()
     }
 
     if( bHasSelectedEntry && pSelectedEntry )
-        m_apLB_SERIES->Select( pSelectedEntry );
+        m_pLB_SERIES->Select( pSelectedEntry );
 
-    m_apLB_SERIES->SetUpdateMode( sal_True );
+    m_pLB_SERIES->SetUpdateMode( sal_True );
 }
 
 void DataSourceTabPage::fillRoleListBox()
 {
-    SeriesEntry * pSeriesEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->FirstSelected());
+    SeriesEntry * pSeriesEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->FirstSelected());
     bool bHasSelectedEntry = (pSeriesEntry != 0);
 
-    SvTreeListEntry * pRoleEntry =  m_aLB_ROLE.FirstSelected();
+    SvTreeListEntry * pRoleEntry =  m_pLB_ROLE->FirstSelected();
     sal_uLong nRoleIndex = SAL_MAX_UINT32;
     if( pRoleEntry )
-        nRoleIndex = m_aLB_ROLE.GetModel()->GetAbsPos( pRoleEntry );
+        nRoleIndex = m_pLB_ROLE->GetModel()->GetAbsPos( pRoleEntry );
 
     if( bHasSelectedEntry )
     {
@@ -519,70 +460,73 @@ void DataSourceTabPage::fillRoleListBox()
                 pSeriesEntry->m_xChartType ));
 
         // fill role list
-        m_aLB_ROLE.SetUpdateMode( sal_False );
-        m_aLB_ROLE.Clear();
-        m_aLB_ROLE.RemoveSelection();
+        m_pLB_ROLE->SetUpdateMode( sal_False );
+        m_pLB_ROLE->Clear();
+        m_pLB_ROLE->RemoveSelection();
 
         for( DialogModel::tRolesWithRanges::const_iterator aIt( aRoles.begin());
              aIt != aRoles.end(); ++ aIt )
         {
-            m_aLB_ROLE.InsertEntry( lcl_GetRoleLBEntry( aIt->first, aIt->second ));
+            m_pLB_ROLE->InsertEntry( lcl_GetRoleLBEntry( aIt->first, aIt->second ));
         }
 
         // series may contain no roles, check listbox size before selecting entries
-        if( m_aLB_ROLE.GetEntryCount() > 0 )
+        if( m_pLB_ROLE->GetEntryCount() > 0 )
         {
-            if( nRoleIndex >= m_aLB_ROLE.GetEntryCount())
+            if( nRoleIndex >= m_pLB_ROLE->GetEntryCount())
                 nRoleIndex = 0;
-            m_aLB_ROLE.Select( m_aLB_ROLE.GetEntry( nRoleIndex ));
+            m_pLB_ROLE->Select( m_pLB_ROLE->GetEntry( nRoleIndex ));
         }
 
-        m_aLB_ROLE.SetUpdateMode( sal_True );
+        m_pLB_ROLE->SetUpdateMode( sal_True );
     }
 }
 
 void DataSourceTabPage::updateControlState()
 {
-    SvTreeListEntry * pSeriesEntry = m_apLB_SERIES->FirstSelected();
+    SvTreeListEntry * pSeriesEntry = m_pLB_SERIES->FirstSelected();
     bool bHasSelectedSeries = (pSeriesEntry != 0);
     bool bHasValidRole = false;
     bool bHasRangeChooser = m_rDialogModel.getRangeSelectionHelper()->hasRangeSelection();
 
     if( bHasSelectedSeries )
     {
-        SvTreeListEntry * pRoleEntry =  m_aLB_ROLE.FirstSelected();
+        SvTreeListEntry * pRoleEntry =  m_pLB_ROLE->FirstSelected();
         bHasValidRole = (pRoleEntry != 0);
     }
 
-    m_aBTN_ADD.Enable( true );
-    m_aBTN_REMOVE.Enable( bHasSelectedSeries );
+    m_pBTN_ADD->Enable( true );
+    m_pBTN_REMOVE->Enable( bHasSelectedSeries );
 
-    m_aBTN_UP.Enable( bHasSelectedSeries && (pSeriesEntry != m_apLB_SERIES->First()));
-    m_aBTN_DOWN.Enable( bHasSelectedSeries && (pSeriesEntry != m_apLB_SERIES->Last()));
+    m_pBTN_UP->Enable( bHasSelectedSeries && (pSeriesEntry != m_pLB_SERIES->First()));
+    m_pBTN_DOWN->Enable( bHasSelectedSeries && (pSeriesEntry != m_pLB_SERIES->Last()));
 
     bool bHasCategories = m_rDialogModel.isCategoryDiagram();
 
-    m_aFT_DATALABELS.Show(!bHasCategories);
-    m_aFT_CATEGORIES.Show( bHasCategories);
+    m_pFT_DATALABELS->Show(!bHasCategories);
+    m_pFT_CATEGORIES->Show( bHasCategories);
     sal_Bool bShowIB = bHasRangeChooser;
-    lcl_ShowChooserButton( m_aIMB_RANGE_CAT, m_aEDT_CATEGORIES, bShowIB );
 
-    m_aFT_SERIES.Enable();
-    m_apLB_SERIES->Enable();
+    m_pIMB_RANGE_CAT->Show(bShowIB);
+
+    m_pFT_SERIES->Enable();
+    m_pLB_SERIES->Enable();
+
+    m_pFT_ROLE->Enable( bHasSelectedSeries );
+    m_pLB_ROLE->Enable( bHasSelectedSeries );
+
+    m_pFT_RANGE->Enable( bHasValidRole );
+    m_pEDT_RANGE->Enable( bHasValidRole );
 
-    m_aFT_ROLE.Enable( bHasSelectedSeries );
-    m_aLB_ROLE.Enable( bHasSelectedSeries );
+    m_pIMB_RANGE_MAIN->Show(bShowIB);
 
-    m_aFT_RANGE.Enable( bHasValidRole );
-    m_aEDT_RANGE.Enable( bHasValidRole );
-    lcl_ShowChooserButton( m_aIMB_RANGE_MAIN, m_aEDT_RANGE, bShowIB );
     isValid();
 }
 
 IMPL_LINK_NOARG(DataSourceTabPage, SeriesSelectionChangedHdl)
 {
     m_rDialogModel.startControllerLockTimer();
-    if( m_apLB_SERIES->FirstSelected())
+    if( m_pLB_SERIES->FirstSelected())
     {
         fillRoleListBox();
         RoleSelectionChangedHdl( 0 );
@@ -595,23 +539,23 @@ IMPL_LINK_NOARG(DataSourceTabPage, SeriesSelectionChangedHdl)
 IMPL_LINK_NOARG(DataSourceTabPage, RoleSelectionChangedHdl)
 {
     m_rDialogModel.startControllerLockTimer();
-    SvTreeListEntry * pEntry = m_aLB_ROLE.FirstSelected();
+    SvTreeListEntry * pEntry = m_pLB_ROLE->FirstSelected();
     if( pEntry )
     {
-        OUString aSelectedRoleUI = lcl_GetSelectedRole( m_aLB_ROLE, true );
-        OUString aSelectedRange = lcl_GetSelectedRolesRange( m_aLB_ROLE );
+        OUString aSelectedRoleUI = lcl_GetSelectedRole( *m_pLB_ROLE, true );
+        OUString aSelectedRange = lcl_GetSelectedRolesRange( *m_pLB_ROLE );
 
         // replace role in fixed text label
         const OUString aReplacementStr( "%VALUETYPE" );
         sal_Int32 nIndex = m_aFixedTextRange.indexOf( aReplacementStr );
         if( nIndex != -1 )
         {
-            m_aFT_RANGE.SetText(
+            m_pFT_RANGE->SetText(
                 m_aFixedTextRange.replaceAt(
                             nIndex, aReplacementStr.getLength(), aSelectedRoleUI ));
         }
 
-        m_aEDT_RANGE.SetText( aSelectedRange );
+        m_pEDT_RANGE->SetText( aSelectedRange );
         isValid();
     }
 
@@ -621,17 +565,17 @@ IMPL_LINK_NOARG(DataSourceTabPage, RoleSelectionChangedHdl)
 IMPL_LINK_NOARG(DataSourceTabPage, MainRangeButtonClickedHdl)
 {
     OSL_ASSERT( m_pCurrentRangeChoosingField == 0 );
-    m_pCurrentRangeChoosingField = & m_aEDT_RANGE;
-    if( !m_aEDT_RANGE.GetText().isEmpty() &&
+    m_pCurrentRangeChoosingField = m_pEDT_RANGE;
+    if( !m_pEDT_RANGE->GetText().isEmpty() &&
         ! updateModelFromControl( m_pCurrentRangeChoosingField ))
         return 0;
 
-    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->FirstSelected());
+    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->FirstSelected());
     bool bHasSelectedEntry = (pEntry != 0);
 
-    OUString aSelectedRolesRange = lcl_GetSelectedRolesRange( m_aLB_ROLE );
+    OUString aSelectedRolesRange = lcl_GetSelectedRolesRange( *m_pLB_ROLE );
 
-    if( bHasSelectedEntry && (m_aLB_ROLE.FirstSelected() != 0))
+    if( bHasSelectedEntry && (m_pLB_ROLE->FirstSelected() != 0))
     {
         OUString aUIStr(SCH_RESSTR(STR_DATA_SELECT_RANGE_FOR_SERIES));
 
@@ -641,7 +585,7 @@ IMPL_LINK_NOARG(DataSourceTabPage, MainRangeButtonClickedHdl)
         if( nIndex != -1 )
         {
             aUIStr = aUIStr.replaceAt( nIndex, aReplacement.getLength(),
-                                       lcl_GetSelectedRole( m_aLB_ROLE, true ));
+                                       lcl_GetSelectedRole( *m_pLB_ROLE, true ));
         }
         // replace series name
         aReplacement = "%SERIESNAME";
@@ -649,7 +593,7 @@ IMPL_LINK_NOARG(DataSourceTabPage, MainRangeButtonClickedHdl)
         if( nIndex != -1 )
         {
             aUIStr = aUIStr.replaceAt( nIndex, aReplacement.getLength(),
-                                       OUString( m_apLB_SERIES->GetEntryText( pEntry )));
+                                       OUString( m_pLB_SERIES->GetEntryText( pEntry )));
         }
 
         lcl_enableRangeChoosing( true, m_pParentDialog );
@@ -664,12 +608,12 @@ IMPL_LINK_NOARG(DataSourceTabPage, MainRangeButtonClickedHdl)
 IMPL_LINK_NOARG(DataSourceTabPage, CategoriesRangeButtonClickedHdl)
 {
     OSL_ASSERT( m_pCurrentRangeChoosingField == 0 );
-    m_pCurrentRangeChoosingField = & m_aEDT_CATEGORIES;
-    if( !m_aEDT_CATEGORIES.GetText().isEmpty() &&
+    m_pCurrentRangeChoosingField = m_pEDT_CATEGORIES;
+    if( !m_pEDT_CATEGORIES->GetText().isEmpty() &&
         ! updateModelFromControl( m_pCurrentRangeChoosingField ))
         return 0;
 
-    OUString aStr( SCH_RESSTR( m_aFT_CATEGORIES.IsVisible() ? STR_DATA_SELECT_RANGE_FOR_CATEGORIES : STR_DATA_SELECT_RANGE_FOR_DATALABELS ));
+    OUString aStr( SCH_RESSTR( m_pFT_CATEGORIES->IsVisible() ? STR_DATA_SELECT_RANGE_FOR_CATEGORIES : STR_DATA_SELECT_RANGE_FOR_DATALABELS ));
     lcl_enableRangeChoosing( true, m_pParentDialog );
     m_rDialogModel.getRangeSelectionHelper()->chooseRange(
         m_rDialogModel.getCategoriesRange(), aStr, *this );
@@ -679,7 +623,7 @@ IMPL_LINK_NOARG(DataSourceTabPage, CategoriesRangeButtonClickedHdl)
 IMPL_LINK_NOARG(DataSourceTabPage, AddButtonClickedHdl)
 {
     m_rDialogModel.startControllerLockTimer();
-    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->FirstSelected());
+    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->FirstSelected());
     Reference< XDataSeries > xSeriesToInsertAfter;
     Reference< XChartType > xChartTypeForNewSeries;
     if( m_pTemplateProvider )
@@ -704,12 +648,12 @@ IMPL_LINK_NOARG(DataSourceTabPage, AddButtonClickedHdl)
 
     fillSeriesListBox();
     // note the box was cleared and refilled, so pEntry is invalid now
-    SvTreeListEntry * pSelEntry = m_apLB_SERIES->FirstSelected();
+    SvTreeListEntry * pSelEntry = m_pLB_SERIES->FirstSelected();
     if( pSelEntry )
     {
-        SvTreeListEntry * pNextEntry = m_apLB_SERIES->Next( pSelEntry );
+        SvTreeListEntry * pNextEntry = m_pLB_SERIES->Next( pSelEntry );
         if( pNextEntry )
-            m_apLB_SERIES->Select( pNextEntry );
+            m_pLB_SERIES->Select( pNextEntry );
     }
     SeriesSelectionChangedHdl( 0 );
 
@@ -719,17 +663,16 @@ IMPL_LINK_NOARG(DataSourceTabPage, AddButtonClickedHdl)
 IMPL_LINK_NOARG(DataSourceTabPage, RemoveButtonClickedHdl)
 {
     m_rDialogModel.startControllerLockTimer();
-    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->FirstSelected());
+    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->FirstSelected());
     if( pEntry )
     {
         Reference< XDataSeries > xNewSelSeries;
-        SeriesEntry * pNewSelEntry = dynamic_cast< SeriesEntry * >(
-            m_apLB_SERIES->Next( pEntry ));
+        SeriesEntry * pNewSelEntry = dynamic_cast< SeriesEntry * >(m_pLB_SERIES->Next( pEntry ));
         if( pNewSelEntry )
             xNewSelSeries.set( pNewSelEntry->m_xDataSeries );
         else
         {
-            pNewSelEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->Prev( pEntry ));
+            pNewSelEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->Prev( pEntry ));
             if( pNewSelEntry )
                 xNewSelSeries.set( pNewSelEntry->m_xDataSeries );
         }
@@ -737,22 +680,22 @@ IMPL_LINK_NOARG(DataSourceTabPage, RemoveButtonClickedHdl)
         m_rDialogModel.deleteSeries( pEntry->m_xDataSeries, pEntry->m_xChartType );
         setDirty();
 
-        m_apLB_SERIES->RemoveSelection();
+        m_pLB_SERIES->RemoveSelection();
         fillSeriesListBox();
 
         // select previous or next series
         //@improve: see methods GetModel()->GetAbsPos()/GetEntry() for absolute list positions
         if( xNewSelSeries.is())
         {
-            pEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->First());
+            pEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->First());
             while( pEntry )
             {
                 if( pEntry->m_xDataSeries == xNewSelSeries )
                 {
-                    m_apLB_SERIES->Select( pEntry );
+                    m_pLB_SERIES->Select( pEntry );
                     break;
                 }
-                pEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->Next( pEntry ));
+                pEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->Next( pEntry ));
             }
         }
         SeriesSelectionChangedHdl( 0 );
@@ -764,7 +707,7 @@ IMPL_LINK_NOARG(DataSourceTabPage, RemoveButtonClickedHdl)
 IMPL_LINK_NOARG(DataSourceTabPage, UpButtonClickedHdl)
 {
     m_rDialogModel.startControllerLockTimer();
-    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->FirstSelected());
+    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->FirstSelected());
     bool bHasSelectedEntry = (pEntry != 0);
 
     if( bHasSelectedEntry )
@@ -781,7 +724,7 @@ IMPL_LINK_NOARG(DataSourceTabPage, UpButtonClickedHdl)
 IMPL_LINK_NOARG(DataSourceTabPage, DownButtonClickedHdl)
 {
     m_rDialogModel.startControllerLockTimer();
-    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->FirstSelected());
+    SeriesEntry * pEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->FirstSelected());
     bool bHasSelectedEntry = (pEntry != 0);
 
     if( bHasSelectedEntry )
@@ -813,9 +756,9 @@ IMPL_LINK( DataSourceTabPage, RangeUpdateDataHdl, Edit*, pEdit )
     {
         setDirty();
         updateModelFromControl( pEdit );
-        if( pEdit== &m_aEDT_RANGE )
+        if( pEdit== m_pEDT_RANGE )
         {
-            if( ! lcl_UpdateCurrentSeriesName( *m_apLB_SERIES ))
+            if( ! lcl_UpdateCurrentSeriesName( *m_pLB_SERIES ))
                 fillSeriesListBox();
         }
     }
@@ -825,8 +768,7 @@ IMPL_LINK( DataSourceTabPage, RangeUpdateDataHdl, Edit*, pEdit )
     return 0;
 }
 
-void DataSourceTabPage::listeningFinished(
-    const OUString & rNewRange )
+void DataSourceTabPage::listeningFinished(const OUString & rNewRange )
 {
     // rNewRange becomes invalid after removing the listener
     OUString aRange( rNewRange );
@@ -845,19 +787,19 @@ void DataSourceTabPage::listeningFinished(
         m_pCurrentRangeChoosingField->GrabFocus();
     }
 
-    if( m_pCurrentRangeChoosingField == & m_aEDT_RANGE )
+    if( m_pCurrentRangeChoosingField == m_pEDT_RANGE )
     {
-        m_aEDT_RANGE.SetText( aRange );
+        m_pEDT_RANGE->SetText( aRange );
         setDirty();
     }
-    else if( m_pCurrentRangeChoosingField == & m_aEDT_CATEGORIES )
+    else if( m_pCurrentRangeChoosingField == m_pEDT_CATEGORIES )
     {
-        m_aEDT_CATEGORIES.SetText( aRange );
+        m_pEDT_CATEGORIES->SetText( aRange );
         setDirty();
     }
 
     updateModelFromControl( m_pCurrentRangeChoosingField );
-    if( ! lcl_UpdateCurrentSeriesName( *m_apLB_SERIES ))
+    if( ! lcl_UpdateCurrentSeriesName( *m_pLB_SERIES ))
         fillSeriesListBox();
 
     m_pCurrentRangeChoosingField = 0;
@@ -883,12 +825,12 @@ bool DataSourceTabPage::updateModelFromControl( Edit * pField )
     bool bAll = (pField == 0);
     Reference< data::XDataProvider > xDataProvider( m_rDialogModel.getDataProvider());
 
-    if( bAll || (pField == & m_aEDT_CATEGORIES) )
+    if( bAll || (pField == m_pEDT_CATEGORIES) )
     {
         Reference< data::XLabeledDataSequence > xLabeledSeq( m_rDialogModel.getCategories() );
         if( xDataProvider.is())
         {
-            OUString aRange( m_aEDT_CATEGORIES.GetText());
+            OUString aRange( m_pEDT_CATEGORIES->GetText());
             if( !aRange.isEmpty())
             {
                 // create or change categories
@@ -916,17 +858,17 @@ bool DataSourceTabPage::updateModelFromControl( Edit * pField )
         }
     }
 
-    SeriesEntry * pSeriesEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->FirstSelected());
+    SeriesEntry * pSeriesEntry = dynamic_cast< SeriesEntry * >( m_pLB_SERIES->FirstSelected());
     bool bHasSelectedEntry = (pSeriesEntry != 0);
 
     if( bHasSelectedEntry )
     {
-        if( bAll || (pField == & m_aEDT_RANGE) )
+        if( bAll || (pField == m_pEDT_RANGE) )
         {
             try
             {
-                OUString aSelectedRole = lcl_GetSelectedRole( m_aLB_ROLE );
-                OUString aRange( m_aEDT_RANGE.GetText());
+                OUString aSelectedRole = lcl_GetSelectedRole( *m_pLB_ROLE );
+                OUString aRange( m_pEDT_RANGE->GetText());
                 OUString aSequenceRole( aSelectedRole );
                 bool bIsLabel = (aSequenceRole == lcl_aLabelRole );
                 OUString aSequenceNameForLabel( lcl_GetSequenceNameForLabel( pSeriesEntry ));
@@ -1023,7 +965,7 @@ bool DataSourceTabPage::updateModelFromControl( Edit * pField )
                     }
                 }
 
-                lcl_UpdateCurrentRange( m_aLB_ROLE, aSelectedRole, aRange );
+                lcl_UpdateCurrentRange( *m_pLB_ROLE, aSelectedRole, aRange );
             }
             catch( const uno::Exception & ex )
             {
diff --git a/chart2/source/controller/dialogs/tp_DataSource.hrc b/chart2/source/controller/dialogs/tp_DataSource.hrc
deleted file mode 100644
index 2ac81ce..0000000
--- a/chart2/source/controller/dialogs/tp_DataSource.hrc
+++ /dev/null
@@ -1,44 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "ResourceIds.hrc"
-
-#define FT_CAPTION_FOR_WIZARD 1
-
-#define FT_SERIES         10
-#define LB_SERIES         20
-#define BTN_ADD           30
-#define BTN_REMOVE        40
-
-#define FT_ROLE           50
-#define LB_ROLE           60
-
-#define FT_RANGE          70
-#define EDT_RANGE         80
-#define IMB_RANGE_MAIN    90
-
-#define FT_CATEGORIES     110
-#define FT_DATALABELS     111
-#define EDT_CATEGORIES    120
-#define IMB_RANGE_CAT     130
-
-#define BTN_UP            140
-#define BTN_DOWN          150
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/controller/dialogs/tp_DataSource.hxx b/chart2/source/controller/dialogs/tp_DataSource.hxx
index bb74276..94f4692 100644
--- a/chart2/source/controller/dialogs/tp_DataSource.hxx
+++ b/chart2/source/controller/dialogs/tp_DataSource.hxx
@@ -46,8 +46,6 @@
 #include <vector>
 
 #include "RangeSelectionListener.hxx"
-#include "RangeSelectionButton.hxx"
-#include "RangeEdit.hxx"
 
 namespace chart
 {
@@ -126,26 +124,26 @@ protected:
     void fillRoleListBox();
 
 private:
-    FixedText               m_aFT_CAPTION;
-    FixedText               m_aFT_SERIES;
-    boost::scoped_ptr< SvTreeListBox > m_apLB_SERIES;
-    PushButton              m_aBTN_ADD;
-    PushButton              m_aBTN_REMOVE;
-    PushButton              m_aBTN_UP;
-    PushButton              m_aBTN_DOWN;
-
-    FixedText               m_aFT_ROLE;
-    SvTabListBox            m_aLB_ROLE;
-    FixedText               m_aFT_RANGE;
-    RangeEdit               m_aEDT_RANGE;
-    RangeSelectionButton    m_aIMB_RANGE_MAIN;
-
-    FixedText               m_aFT_CATEGORIES;
-    FixedText               m_aFT_DATALABELS;//used for xy charts
-    RangeEdit               m_aEDT_CATEGORIES;
-    RangeSelectionButton    m_aIMB_RANGE_CAT;
-
-    OUString         m_aFixedTextRange;
+    FixedText*     m_pFT_CAPTION;
+    FixedText*     m_pFT_SERIES;
+    SvTreeListBox* m_pLB_SERIES;
+    PushButton*    m_pBTN_ADD;
+    PushButton*    m_pBTN_REMOVE;
+    PushButton*    m_pBTN_UP;
+    PushButton*    m_pBTN_DOWN;
+
+    FixedText*     m_pFT_ROLE;
+    SvTabListBox*  m_pLB_ROLE;
+    FixedText*     m_pFT_RANGE;
+    Edit*          m_pEDT_RANGE;
+    PushButton*    m_pIMB_RANGE_MAIN;
+
+    FixedText*     m_pFT_CATEGORIES;
+    FixedText*     m_pFT_DATALABELS;//used for xy charts
+    Edit*          m_pEDT_CATEGORIES;
+    PushButton*    m_pIMB_RANGE_CAT;
+
+    OUString       m_aFixedTextRange;
 
     ChartTypeTemplateProvider * m_pTemplateProvider;
     DialogModel &               m_rDialogModel;
diff --git a/chart2/source/controller/dialogs/tp_DataSource.src b/chart2/source/controller/dialogs/tp_DataSource.src
deleted file mode 100644
index da12954..0000000
--- a/chart2/source/controller/dialogs/tp_DataSource.src
+++ /dev/null
@@ -1,174 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#include "tp_DataSource.hrc"
-#include "HelpIds.hrc"
-
-TabPage TP_DATA_SOURCE
-{
-    HelpID = "chart2:TabPage:TP_DATA_SOURCE";
-    Hide = TRUE;
-    Size = MAP_APPFONT ( 248, 140 );
-    SVLook = TRUE ;
-
-    // ----------------------------------------
-
-    FixedText FT_CAPTION_FOR_WIZARD
-    {
-        Pos = MAP_APPFONT ( 5 , 8  ) ;
-        Size = MAP_APPFONT ( 238 , 10 ) ;
-        Text [ en-US ] = "Customize data ranges for individual data series" ;
-    };
-
-    FixedText FT_SERIES
-    {
-        Pos  = MAP_APPFONT ( 6 , 22  );
-        Size = MAP_APPFONT ( 72 , 8 );
-
-        Text [ en-US ] = "Data ~series";
-    };
-    Control LB_SERIES
-    {
-        HelpID = HID_SCH_SERIES_LIST ;
-        Border = TRUE;
-        TabStop = TRUE;
-        // DropDown = FALSE;
-        Pos  = MAP_APPFONT ( 6 , 32  );
-        Size = MAP_APPFONT ( 72 , 69 );
-    };
-
-    FixedText FT_ROLE
-    {
-        Pos  = MAP_APPFONT ( 82 , 22  );
-        Size = MAP_APPFONT ( 160 , 8 );
-
-        Text [ en-US ] = "~Data ranges";
-    };
-    Control LB_ROLE
-    {
-        HelpID = HID_SCH_DATA_RANGES_LIST ;
-        Border = TRUE;
-        TabStop = TRUE;
-        Pos  = MAP_APPFONT ( 82 , 32  );
-        Size = MAP_APPFONT ( 160 , 43 );
-    };
-
-    // ----------------------------------------
-
-    FixedText FT_RANGE
-    {
-        Pos  = MAP_APPFONT ( 82 , 79  );
-        Size = MAP_APPFONT ( 160 , 8 );
-
-        Text [ en-US ] = "Ran~ge for %VALUETYPE";
-    };
-    Edit EDT_RANGE
-    {
-        HelpID = "chart2:Edit:TP_DATA_SOURCE:EDT_RANGE";
-        Border = TRUE;
-        TabStop = TRUE;
-        Pos  = MAP_APPFONT ( 82 , 89  );
-        Size = MAP_APPFONT ( 144 , 12 );
-    };
-    ImageButton IMB_RANGE_MAIN
-    {
-        HelpID = "chart2:ImageButton:TP_DATA_SOURCE:IMB_RANGE_MAIN";
-        TabStop = TRUE;
-        Pos  = MAP_APPFONT ( 228 , 88  );
-        Size = MAP_APPFONT ( 14 , 14 );
-    };
-
-    // ----------------------------------------
-
-    FixedText FT_CATEGORIES
-    {
-        Pos  = MAP_APPFONT ( 82 , 107  );
-        Size = MAP_APPFONT ( 160 , 8 );
-
-        Text [ en-US ] = "~Categories";
-    };
-
-    FixedText FT_DATALABELS
-    {
-        Pos  = MAP_APPFONT ( 82 , 107  );
-        Size = MAP_APPFONT ( 160 , 8 );
-
-        Text [ en-US ] = "Data ~labels" ;
-    };
-
-    Edit EDT_CATEGORIES
-    {
-        HelpID = "chart2:Edit:TP_DATA_SOURCE:EDT_CATEGORIES";
-        Border = TRUE;
-        TabStop = TRUE;
-        Pos  = MAP_APPFONT ( 82 , 117  );
-        Size = MAP_APPFONT ( 144 , 12 );
-    };
-    ImageButton IMB_RANGE_CAT
-    {
-        HelpID = "chart2:ImageButton:TP_DATA_SOURCE:IMB_RANGE_CAT";
-        TabStop = TRUE;
-        Pos  = MAP_APPFONT ( 228 , 116  );
-        Size = MAP_APPFONT ( 14 , 14 );
-    };
-
-    // ----------------------------------------
-
-    PushButton BTN_ADD
-    {
-        HelpID = "chart2:PushButton:TP_DATA_SOURCE:BTN_ADD";
-        TabStop = TRUE;
-        Disable = FALSE;
-        Pos  = MAP_APPFONT ( 6 , 105  );
-        Size = MAP_APPFONT ( 54 , 14 );
-
-        Text [ en-US ] = "~Add";
-    };
-    PushButton BTN_REMOVE
-    {
-        HelpID = "chart2:PushButton:TP_DATA_SOURCE:BTN_REMOVE";
-        TabStop = TRUE;
-        Disable = TRUE;
-        Pos  = MAP_APPFONT ( 6 , 121  );
-        Size = MAP_APPFONT ( 54 , 14 );
-
-        Text [ en-US ] = "~Remove";
-    };
-
-    // Note: Text is only a black triangle symbol
-    PushButton BTN_UP
-    {
-        HelpID = "chart2:PushButton:TP_DATA_SOURCE:BTN_UP";
-        TabStop = TRUE;
-        Disable = TRUE;
-        Pos  = MAP_APPFONT ( 64 , 105  );
-        Size = MAP_APPFONT ( 14 , 14 );
-    };
-
-    // Note: Text is only a black triangle symbol
-    PushButton BTN_DOWN
-    {
-        HelpID = "chart2:PushButton:TP_DATA_SOURCE:BTN_DOWN";
-        TabStop = TRUE;
-        Disable = TRUE;
-        Pos  = MAP_APPFONT ( 64 , 121  );
-        Size = MAP_APPFONT ( 14 , 14 );
-    };
-};
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/controller/dialogs/tp_DataSourceControls.cxx b/chart2/source/controller/dialogs/tp_DataSourceControls.cxx
index 44511ce..11ebbcf 100644
--- a/chart2/source/controller/dialogs/tp_DataSourceControls.cxx
+++ b/chart2/source/controller/dialogs/tp_DataSourceControls.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <vcl/layout.hxx>
 #include "tp_DataSourceControls.hxx"
 
 using namespace ::com::sun::star;
@@ -30,12 +31,18 @@ namespace chart
 SeriesEntry::~SeriesEntry()
 {}
 
-SeriesListBox::SeriesListBox( Window* pParent, const ResId & rResId ) :
-        SvTreeListBox( pParent, rResId )
+SeriesListBox::SeriesListBox(Window* pParent, WinBits nStyle)
+    : SvTreeListBox(pParent, nStyle)
 {}
 
-SeriesListBox::~SeriesListBox()
-{}
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeSeriesListBox(Window *pParent, VclBuilder::stringmap &rMap)
+{
+    WinBits nWinStyle = 0;
+    OString sBorder = VclBuilder::extractCustomProperty(rMap);
+    if (!sBorder.isEmpty())
+        nWinStyle |= WB_BORDER;
+    return new SeriesListBox(pParent, nWinStyle);
+}
 
 SvTreeListEntry* SeriesListBox::CreateEntry() const
 {
diff --git a/chart2/source/controller/dialogs/tp_DataSourceControls.hxx b/chart2/source/controller/dialogs/tp_DataSourceControls.hxx
index 5bfbd9f..e373469 100644
--- a/chart2/source/controller/dialogs/tp_DataSourceControls.hxx
+++ b/chart2/source/controller/dialogs/tp_DataSourceControls.hxx
@@ -38,21 +38,16 @@ public:
     virtual ~SeriesEntry();
 
     /// the corresponding data series
-    ::com::sun::star::uno::Reference<
-            ::com::sun::star::chart2::XDataSeries >
-        m_xDataSeries;
+    ::com::sun::star::uno::Reference<::com::sun::star::chart2::XDataSeries > m_xDataSeries;
 
     /// the chart type that contains the series (via XDataSeriesContainer)
-    ::com::sun::star::uno::Reference<
-            ::com::sun::star::chart2::XChartType >
-        m_xChartType;
+    ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XChartType > m_xChartType;
 };
 
 class SeriesListBox : public ::SvTreeListBox
 {
 public:
-    explicit SeriesListBox( Window* pParent, const ResId & rResId );
-    ~SeriesListBox( );
+    explicit SeriesListBox(Window* pParent, WinBits nStyle);
 
     virtual SvTreeListEntry* CreateEntry() const;
 };
diff --git a/chart2/source/controller/dialogs/tp_RangeChooser.hxx b/chart2/source/controller/dialogs/tp_RangeChooser.hxx
index fd45ed3..923b701 100644
--- a/chart2/source/controller/dialogs/tp_RangeChooser.hxx
+++ b/chart2/source/controller/dialogs/tp_RangeChooser.hxx
@@ -23,7 +23,6 @@
 #include "RangeSelectionListener.hxx"
 #include "RangeSelectionButton.hxx"
 #include "TabPageNotifiable.hxx"
-#include "RangeEdit.hxx"
 
 #include <com/sun/star/chart2/XChartDocument.hpp>
 #include <com/sun/star/chart2/data/XDataProvider.hpp>
diff --git a/chart2/source/controller/inc/HelpIds.hrc b/chart2/source/controller/inc/HelpIds.hrc
index e9d4257..089a601 100644
--- a/chart2/source/controller/inc/HelpIds.hrc
+++ b/chart2/source/controller/inc/HelpIds.hrc
@@ -26,8 +26,6 @@
 #define HID_SCH_CTL_TYPE                                    "CHART2_HID_SCH_CTL_TYPE"
 #define HID_SCH_CTL_VARIANT                                 "CHART2_HID_SCH_CTL_VARIANT"
 #define HID_SCH_NUM_OF_LINES                                "CHART2_HID_SCH_NUM_OF_LINES"
-#define HID_SCH_SERIES_LIST                                 "CHART2_HID_SCH_SERIES_LIST"
-#define HID_SCH_DATA_RANGES_LIST                            "CHART2_HID_SCH_DATA_RANGES_LIST"
 //
 
 #define HID_SCH_TBI_DATA_INSERT_ROW                         "CHART2_HID_SCH_TBI_DATA_INSERT_ROW"
diff --git a/chart2/source/controller/inc/RangeEdit.hxx b/chart2/source/controller/inc/RangeEdit.hxx
deleted file mode 100644
index e6fb992..0000000
--- a/chart2/source/controller/inc/RangeEdit.hxx
+++ /dev/null
@@ -1,46 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#ifndef INCLUDED_CHART2_SOURCE_CONTROLLER_INC_RANGEEDIT_HXX
-#define INCLUDED_CHART2_SOURCE_CONTROLLER_INC_RANGEEDIT_HXX
-
-#include <vcl/edit.hxx>
-#include <vcl/accel.hxx>
-#include <tools/link.hxx>
-
-namespace chart
-{
-
-class RangeEdit : public Edit
-{
-public:
-    explicit            RangeEdit( Window* pParent, const ResId& rResId);
-    virtual             ~RangeEdit();
-
-    // KeyInput method
-    void                SetKeyInputHdl( const Link& rKeyInputLink );
-    virtual void        KeyInput( const KeyEvent& rKEvt );
-
-private:
-    Link                m_aKeyInputLink;
-};
-
-} //namespace chart
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/controller/inc/dlg_DataSource.hxx b/chart2/source/controller/inc/dlg_DataSource.hxx
index e5ae6b0..e3c1af8 100644
--- a/chart2/source/controller/inc/dlg_DataSource.hxx
+++ b/chart2/source/controller/inc/dlg_DataSource.hxx
@@ -26,6 +26,7 @@
 // header for class OKButton
 #include <vcl/button.hxx>
 
+
 #include "TabPageNotifiable.hxx"
 #include <com/sun/star/uno/XComponentContext.hpp>
 #include <com/sun/star/chart2/XChartDocument.hpp>
diff --git a/chart2/uiconfig/ui/datarangedialog.ui b/chart2/uiconfig/ui/datarangedialog.ui
index c4473ac..7eaa0df 100644
--- a/chart2/uiconfig/ui/datarangedialog.ui
+++ b/chart2/uiconfig/ui/datarangedialog.ui
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.16.0 on Fri Jan 10 20:18:05 2014 -->
+<!-- Generated with glade 3.16.0 on Fri Jan 17 15:55:31 2014 -->
 <interface>
   <!-- interface-requires gtk+ 3.0 -->
   <object class="GtkDialog" id="DataRangeDialog">
@@ -69,17 +69,7 @@
           </packing>
         </child>
         <child>
-          <object class="GtkNotebook" id="tabcontrol">
-            <property name="visible">True</property>
-            <property name="can_focus">False</property>
-            <property name="hexpand">True</property>
-            <property name="vexpand">True</property>
-          </object>
-          <packing>
-            <property name="expand">False</property>
-            <property name="fill">True</property>
-            <property name="position">1</property>
-          </packing>
+          <placeholder/>
         </child>
       </object>
     </child>
diff --git a/chart2/uiconfig/ui/tp_DataSource.ui b/chart2/uiconfig/ui/tp_DataSource.ui
new file mode 100644
index 0000000..a0f20a8
--- /dev/null
+++ b/chart2/uiconfig/ui/tp_DataSource.ui
@@ -0,0 +1,354 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.16.0 on Fri Jan 17 15:46:56 2014 -->
+<interface>
+  <!-- interface-requires gtk+ 3.0 -->
+  <!-- interface-requires LibreOffice 1.0 -->
+  <object class="GtkImage" id="imageIMB_RANGE_CAT">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <property name="tooltip_text" translatable="yes">Select data range</property>
+    <property name="pixbuf">chart2/res/selectrange.png</property>
+  </object>
+  <object class="GtkImage" id="imageIMB_RANGE_MAIN">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <property name="tooltip_text" translatable="yes">Select data range</property>
+    <property name="pixbuf">chart2/res/selectrange.png</property>
+  </object>
+  <object class="GtkBox" id="tp_DataSource">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <property name="border_width">6</property>
+    <property name="orientation">vertical</property>
+    <property name="spacing">6</property>
+    <child>
+      <object class="GtkLabel" id="FT_CAPTION_FOR_WIZARD">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="xalign">0</property>
+        <property name="label" translatable="yes">Customize data ranges for individual data series</property>
+        <attributes>
+          <attribute name="weight" value="bold"/>
+        </attributes>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">True</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="margin_left">6</property>
+        <property name="hexpand">True</property>
+        <property name="vexpand">True</property>
+        <property name="spacing">12</property>
+        <child>
+          <object class="GtkBox" id="box2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="vexpand">True</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkLabel" id="FT_SERIES">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Data _series:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">LB_SERIES:border</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="chartcontrollerlo-SeriesListBox" id="LB_SERIES:border">
+                <property name="width_request">200</property>
+                <property name="height_request">200</property>
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="vexpand">True</property>
+                <child internal-child="selection">
+                  <object class="GtkTreeSelection" id="Chart Series ListBox-selection1"/>
+                </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="grid1">
+                <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="GtkButton" id="BTN_ADD">
+                    <property name="label" translatable="yes">_Add</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="receives_default">True</property>
+                    <property name="use_underline">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="GtkButton" id="BTN_UP">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="receives_default">True</property>
+                    <property name="always_show_image">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="GtkButton" id="BTN_REMOVE">
+                    <property name="label" translatable="yes">_Remove</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="receives_default">True</property>
+                    <property name="hexpand">True</property>
+                    <property name="use_underline">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="GtkButton" id="BTN_DOWN">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="receives_default">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>
+              </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="box3">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="hexpand">True</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkLabel" id="FT_ROLE">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">_Data ranges:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">LB_ROLE:border</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="svtlo-SvTabListBox" id="LB_ROLE:border">
+                <property name="width_request">440</property>
+                <property name="height_request">100</property>
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="hexpand">True</property>
+                <child internal-child="selection">
+                  <object class="GtkTreeSelection" id="Tab List-selection1"/>
+                </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="FT_RANGE">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Ran_ge for %VALUETYPE</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">EDT_RANGE</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkBox" id="box5">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="hexpand">True</property>
+                <property name="spacing">12</property>
+                <child>
+                  <object class="GtkEntry" id="EDT_RANGE">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="invisible_char">•</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="IMB_RANGE_MAIN">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="receives_default">True</property>
+                    <property name="image">imageIMB_RANGE_MAIN</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">3</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkBox" id="box4">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="orientation">vertical</property>
+                <child>
+                  <object class="GtkLabel" id="FT_CATEGORIES">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">_Categories</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">EDT_CATEGORIES</property>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="FT_DATALABELS">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Data _labels</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">4</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkBox" id="box6">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="hexpand">True</property>
+                <property name="spacing">12</property>
+                <child>
+                  <object class="GtkEntry" id="EDT_CATEGORIES">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="invisible_char">•</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="IMB_RANGE_CAT">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="receives_default">True</property>
+                    <property name="image">imageIMB_RANGE_CAT</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">5</property>
+              </packing>
+            </child>
+          </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">1</property>
+      </packing>
+    </child>
+  </object>
+</interface>
diff --git a/extras/source/glade/libreoffice-catalog.xml.in b/extras/source/glade/libreoffice-catalog.xml.in
index 56572f2..23e367f 100644
--- a/extras/source/glade/libreoffice-catalog.xml.in
+++ b/extras/source/glade/libreoffice-catalog.xml.in
@@ -426,6 +426,9 @@
       </properties>
     </glade-widget-class>
 
+    <glade-widget-class title="Chart Series ListBox" name="chartcontrollerlo-SeriesListBox"
+                        generic-name="Chart Series ListBox" parent="svtlo-SvTreeListBox"
+                        icon-name="widget-gtk-treeview"/>
     <glade-widget-class title="DD ListBox" name="swuilo-DDListBox"
                         generic-name="DD ListBox" parent="svtlo-SvTreeListBox"
                         icon-name="widget-gtk-treeview"/>


More information about the Libreoffice-commits mailing list