diff options
author | Olivier Hallot <olivier.hallot@edx.srv.br> | 2014-01-01 22:59:27 -0200 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2014-01-17 16:09:50 +0000 |
commit | 9c4032921cfb11c8786e2a371286a7d8384c74d8 (patch) | |
tree | e5dd4d84467335e72f66aeab13dca9026ea191ff | |
parent | 92bede3900e84d4f08efb81757ec95c518c7fa76 (diff) |
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@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
20 files changed, 536 insertions, 595 deletions
diff --git a/chart2/AllLangResTarget_chartcontroller.mk b/chart2/AllLangResTarget_chartcontroller.mk index d15c4f5827d5..c5ca48db6180 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 ea7cb8a9ae9b..d4f309f0070e 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 38f1beb5f984..c40bac7888f9 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 345eb9b2b505..000000000000 --- 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 45b860102ba5..415f6cf9b268 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 7384b1a0f76b..5dd1e127205b 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 25412aee7684..000000000000 --- 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 236cb70becb6..f307c94c2ced 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 2ac81cee686c..000000000000 --- 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 bb74276ab064..94f4692704b7 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 da129546f2ee..000000000000 --- 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 44511ce8322d..11ebbcf9df75 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 5bfbd9f8f0d0..e373469e7a34 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 fd45ed3f635f..923b701447a7 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 e9d425777193..089a601b00ee 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 e6fb992f83b3..000000000000 --- 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 e5ae6b0c68eb..e3c1af883e56 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 c4473ac953ac..7eaa0df1b0f2 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 000000000000..a0f20a8e13c3 --- /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 56572f206c28..23e367f82758 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"/> |