diff options
author | Caolán McNamara <caolanm@redhat.com> | 2018-11-26 20:30:25 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2018-11-27 21:10:52 +0100 |
commit | 0f25a3c36f27fd51453b9a9115f236b83c143684 (patch) | |
tree | 011ca20c47b3ecfce2638df467256d547c04f27b /chart2 | |
parent | 471d6c3653b8b8006db022c5d94af7503adfdc56 (diff) |
weld DataSourceDialog
Change-Id: I4d3eb8aa354043d3ff57b4996db7b28ad25e0262
Reviewed-on: https://gerrit.libreoffice.org/64072
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'chart2')
-rw-r--r-- | chart2/source/controller/dialogs/dlg_DataSource.cxx | 138 | ||||
-rw-r--r-- | chart2/source/controller/dialogs/tp_DataSource.cxx | 30 | ||||
-rw-r--r-- | chart2/source/controller/dialogs/tp_DataSource.hxx | 4 | ||||
-rw-r--r-- | chart2/source/controller/dialogs/tp_RangeChooser.cxx | 24 | ||||
-rw-r--r-- | chart2/source/controller/dialogs/tp_RangeChooser.hxx | 4 | ||||
-rw-r--r-- | chart2/source/controller/inc/dlg_DataSource.hxx | 25 | ||||
-rw-r--r-- | chart2/source/controller/main/ChartController.cxx | 4 | ||||
-rw-r--r-- | chart2/uiconfig/ui/datarangedialog.ui | 113 | ||||
-rw-r--r-- | chart2/uiconfig/ui/tp_DataSource.ui | 386 | ||||
-rw-r--r-- | chart2/uiconfig/ui/tp_RangeChooser.ui | 82 |
10 files changed, 461 insertions, 349 deletions
diff --git a/chart2/source/controller/dialogs/dlg_DataSource.cxx b/chart2/source/controller/dialogs/dlg_DataSource.cxx index 76b03043b1dd..86651bcfd6bd 100644 --- a/chart2/source/controller/dialogs/dlg_DataSource.cxx +++ b/chart2/source/controller/dialogs/dlg_DataSource.cxx @@ -76,41 +76,6 @@ Reference< chart2::XChartTypeTemplate > DocumentChartTypeTemplateProvider::getCu return m_xTemplate; } -class DataSourceTabControl : public TabControl -{ -public: - explicit DataSourceTabControl(vcl::Window* pParent); - - virtual bool DeactivatePage() override; - - void DisableTabToggling(); - void EnableTabToggling(); - -private: - bool m_bTogglingEnabled; -}; - -DataSourceTabControl::DataSourceTabControl(vcl::Window* pParent) - : TabControl(pParent) - , m_bTogglingEnabled(true) -{ -} - -bool DataSourceTabControl::DeactivatePage() -{ - return TabControl::DeactivatePage() && m_bTogglingEnabled; -} - -void DataSourceTabControl::DisableTabToggling() -{ - m_bTogglingEnabled = false; -} - -void DataSourceTabControl::EnableTabToggling() -{ - m_bTogglingEnabled = true; -} - sal_uInt16 DataSourceDialog::m_nLastPageId = 0; enum DataSourceDialogPages @@ -119,56 +84,47 @@ enum DataSourceDialogPages TP_DATA_SOURCE = 2 }; -DataSourceDialog::DataSourceDialog(vcl::Window * pParent, +DataSourceDialog::DataSourceDialog(weld::Window * pParent, const Reference< XChartDocument > & xChartDocument, const Reference< uno::XComponentContext > & xContext) - : TabDialog(pParent, "DataRangeDialog", - "modules/schart/ui/datarangedialog.ui") + : GenericDialogController(pParent, "modules/schart/ui/datarangedialog.ui", + "DataRangeDialog") , m_apDocTemplateProvider(new DocumentChartTypeTemplateProvider(xChartDocument)) , m_apDialogModel(new DialogModel(xChartDocument, xContext)) - , m_pTabControl(VclPtr<DataSourceTabControl>::Create(get_content_area())) , m_pRangeChooserTabPage(nullptr) , m_pDataSourceTabPage(nullptr) , m_bRangeChooserTabIsValid(true) , m_bDataSourceTabIsValid(true) -{ - get(m_pBtnOK, "ok"); - - m_pTabControl->Show(); - - m_pRangeChooserTabPage = VclPtr<RangeChooserTabPage>::Create(TabPageParent(m_pTabControl), *(m_apDialogModel.get()), - m_apDocTemplateProvider.get(), this, true /* bHideDescription */ ); - m_pDataSourceTabPage = VclPtr<DataSourceTabPage>::Create(TabPageParent(m_pTabControl), *(m_apDialogModel.get()), - m_apDocTemplateProvider.get(), this, true /* bHideDescription */ ); - - m_pTabControl->InsertPage( TP_RANGECHOOSER, SchResId(STR_PAGE_DATA_RANGE) ); - m_pTabControl->InsertPage( TP_DATA_SOURCE, SchResId(STR_OBJECT_DATASERIES_PLURAL) ); - - m_pTabControl->SetTabPage( TP_DATA_SOURCE, m_pDataSourceTabPage ); - m_pTabControl->SetTabPage( TP_RANGECHOOSER, m_pRangeChooserTabPage ); - - m_pTabControl->SelectTabPage( m_nLastPageId ); + , m_bTogglingEnabled(true) + , m_xTabControl(m_xBuilder->weld_notebook("notebook")) + , m_xBtnOK(m_xBuilder->weld_button("ok")) +{ + TabPageParent aRangeParent(m_xTabControl->get_page("range"), this); + m_pRangeChooserTabPage = VclPtr<RangeChooserTabPage>::Create(aRangeParent, *(m_apDialogModel.get()), + m_apDocTemplateProvider.get(), nullptr, true /* bHideDescription */ ); + TabPageParent aSeriesParent(m_xTabControl->get_page("series"), this); + m_pDataSourceTabPage = VclPtr<DataSourceTabPage>::Create(aSeriesParent, *(m_apDialogModel.get()), + m_apDocTemplateProvider.get(), nullptr, true /* bHideDescription */ ); + m_xTabControl->connect_enter_page(LINK(this, DataSourceDialog, ActivatePageHdl)); + m_xTabControl->connect_leave_page(LINK(this, DataSourceDialog, DeactivatePageHdl)); + ActivatePageHdl(m_xTabControl->get_current_page_ident()); + if (m_nLastPageId != 0) + { + m_xTabControl->set_current_page(m_nLastPageId); + ActivatePageHdl(m_xTabControl->get_current_page_ident()); + } } DataSourceDialog::~DataSourceDialog() { - disposeOnce(); -} - -void DataSourceDialog::dispose() -{ m_pRangeChooserTabPage.disposeAndClear(); m_pDataSourceTabPage.disposeAndClear(); - if (m_pTabControl) - m_nLastPageId = m_pTabControl->GetCurPageId(); - m_pTabControl.disposeAndClear(); - m_pBtnOK.clear(); - TabDialog::dispose(); + m_nLastPageId = m_xTabControl->get_current_page(); } -short DataSourceDialog::Execute() +short DataSourceDialog::run() { - short nResult = TabDialog::Execute(); + short nResult = GenericDialogController::run(); if( nResult == RET_OK ) { if( m_pRangeChooserTabPage ) @@ -179,25 +135,48 @@ short DataSourceDialog::Execute() return nResult; } +IMPL_LINK(DataSourceDialog, ActivatePageHdl, const OString&, rPage, void) +{ + if (rPage == "range") + m_pRangeChooserTabPage->ActivatePage(); + else if (rPage == "series") + m_pDataSourceTabPage->ActivatePage(); +} + +// allow/disallow user to leave page +IMPL_LINK_NOARG(DataSourceDialog, DeactivatePageHdl, const OString&, bool) +{ + return m_bTogglingEnabled; +} + +void DataSourceDialog::DisableTabToggling() +{ + m_bTogglingEnabled = false; +} + +void DataSourceDialog::EnableTabToggling() +{ + m_bTogglingEnabled = true; +} + void DataSourceDialog::setInvalidPage( TabPage * pTabPage ) { - if( pTabPage == m_pRangeChooserTabPage ) + if (pTabPage == m_pRangeChooserTabPage) m_bRangeChooserTabIsValid = false; - else if( pTabPage == m_pDataSourceTabPage ) + else if (pTabPage == m_pDataSourceTabPage) m_bDataSourceTabIsValid = false; - if( ! (m_bRangeChooserTabIsValid && m_bDataSourceTabIsValid )) + if (!(m_bRangeChooserTabIsValid && m_bDataSourceTabIsValid)) { - m_pBtnOK->Enable( false ); - OSL_ASSERT( m_pTabControl ); + m_xBtnOK->set_sensitive(false); // note: there seems to be no suitable mechanism to address pages by // identifier, at least it is unclear what the page identifiers are. // @todo: change the fixed numbers to identifiers if( m_bRangeChooserTabIsValid ) - m_pTabControl->SetCurPageId( m_pTabControl->GetPageId( 1 )); + m_xTabControl->set_current_page(1); else if( m_bDataSourceTabIsValid ) - m_pTabControl->SetCurPageId( m_pTabControl->GetPageId( 0 )); - m_pTabControl->DisableTabToggling(); + m_xTabControl->set_current_page(0); + DisableTabToggling(); } } @@ -208,11 +187,10 @@ void DataSourceDialog::setValidPage( TabPage * pTabPage ) else if( pTabPage == m_pDataSourceTabPage ) m_bDataSourceTabIsValid = true; - if( m_bRangeChooserTabIsValid && m_bDataSourceTabIsValid ) + if (m_bRangeChooserTabIsValid && m_bDataSourceTabIsValid) { - m_pBtnOK->Enable(); - OSL_ASSERT( m_pTabControl ); - m_pTabControl->EnableTabToggling(); + m_xBtnOK->set_sensitive(true); + EnableTabToggling(); } } diff --git a/chart2/source/controller/dialogs/tp_DataSource.cxx b/chart2/source/controller/dialogs/tp_DataSource.cxx index 5b1ef9ff44e4..758664428019 100644 --- a/chart2/source/controller/dialogs/tp_DataSource.cxx +++ b/chart2/source/controller/dialogs/tp_DataSource.cxx @@ -124,11 +124,20 @@ void lcl_enableRangeChoosing( bool bEnable, Dialog * pDialog ) { if( pDialog ) { - pDialog->Show( !bEnable ); pDialog->SetModalInputMode( !bEnable ); + pDialog->Show( !bEnable ); } } +void lcl_enableRangeChoosing(bool bEnable, weld::DialogController* pDialog) +{ + if (!pDialog) + return; + weld::Dialog* pDlg = pDialog->getDialog(); + pDlg->set_modal(!bEnable); + pDlg->show(!bEnable); +} + void lcl_addLSequenceToDataSource( const Reference< chart2::data::XLabeledDataSequence > & xLSequence, const Reference< chart2::data::XDataSource > & xSource ) @@ -178,7 +187,9 @@ DataSourceTabPage::DataSourceTabPage(TabPageParent pParent, DialogModel & rDialo , m_pCurrentRangeChoosingField( nullptr ) , m_bIsDirty( false ) , m_pParentDialog( pParentDialog ) - , m_pTabPageNotifiable( dynamic_cast< TabPageNotifiable * >( pParentDialog )) + , m_pParentController(pParent.pController) + , m_pTabPageNotifiable(pParentDialog ? dynamic_cast<TabPageNotifiable*>(pParentDialog) + : dynamic_cast<TabPageNotifiable*>(m_pParentController)) , m_xFT_CAPTION(m_xBuilder->weld_label("FT_CAPTION_FOR_WIZARD")) , m_xFT_SERIES(m_xBuilder->weld_label("FT_SERIES")) , m_xLB_SERIES(m_xBuilder->weld_tree_view("LB_SERIES")) @@ -232,7 +243,6 @@ DataSourceTabPage::DataSourceTabPage(TabPageParent pParent, DialogModel & rDialo // select first series if (m_xLB_SERIES->n_children()) m_xLB_SERIES->select(0); - m_xLB_SERIES->grab_focus(); } void DataSourceTabPage::InsertRoleLBEntry(const OUString& rRole, const OUString& rRange) @@ -260,6 +270,7 @@ void DataSourceTabPage::ActivatePage() { OWizardPage::ActivatePage(); updateControlsFromDialogModel(); + m_xLB_SERIES->grab_focus(); } void DataSourceTabPage::initializePage() @@ -340,8 +351,6 @@ void DataSourceTabPage::updateControlsFromDialogModel() void DataSourceTabPage::fillSeriesListBox() { - m_xLB_SERIES->freeze(); - Reference< XDataSeries > xSelected; SeriesEntry* pEntry = nullptr; int nEntry = m_xLB_SERIES->get_selected_index(); @@ -353,6 +362,8 @@ void DataSourceTabPage::fillSeriesListBox() bool bHasSelectedEntry = (pEntry != nullptr); int nSelectedEntry = -1; + + m_xLB_SERIES->freeze(); m_xLB_SERIES->clear(); std::vector< DialogModel::tSeriesWithChartTypeByName > aSeries( @@ -464,15 +475,15 @@ void DataSourceTabPage::updateControlState() m_xIMB_RANGE_CAT->show(bShowIB); - m_xFT_SERIES->set_sensitive(true); - m_xLB_SERIES->set_sensitive(true); - m_xFT_ROLE->set_sensitive(bHasSelectedSeries); m_xLB_ROLE->set_sensitive(bHasSelectedSeries); m_xFT_RANGE->set_sensitive(bHasValidRole); m_xEDT_RANGE->set_sensitive(bHasValidRole); + m_xFT_SERIES->set_sensitive(true); + m_xLB_SERIES->set_sensitive(true); + m_xIMB_RANGE_MAIN->show(bShowIB); isValid(); @@ -548,6 +559,7 @@ IMPL_LINK_NOARG(DataSourceTabPage, MainRangeButtonClickedHdl, weld::Button&, voi } lcl_enableRangeChoosing( true, m_pParentDialog ); + lcl_enableRangeChoosing( true, m_pParentController ); m_rDialogModel.getRangeSelectionHelper()->chooseRange( aSelectedRolesRange, aUIStr, *this ); } else @@ -564,6 +576,7 @@ IMPL_LINK_NOARG(DataSourceTabPage, CategoriesRangeButtonClickedHdl, weld::Button OUString aStr(SchResId(m_xFT_CATEGORIES->get_visible() ? STR_DATA_SELECT_RANGE_FOR_CATEGORIES : STR_DATA_SELECT_RANGE_FOR_DATALABELS)); lcl_enableRangeChoosing(true, m_pParentDialog); + lcl_enableRangeChoosing(true, m_pParentController); m_rDialogModel.getRangeSelectionHelper()->chooseRange( m_rDialogModel.getCategoriesRange(), aStr, *this ); } @@ -744,6 +757,7 @@ void DataSourceTabPage::listeningFinished( updateControlState(); lcl_enableRangeChoosing(false, m_pParentDialog); + lcl_enableRangeChoosing(false, m_pParentController); } void DataSourceTabPage::disposingRangeSelection() diff --git a/chart2/source/controller/dialogs/tp_DataSource.hxx b/chart2/source/controller/dialogs/tp_DataSource.hxx index 6357a42b437b..0d237ffa79a5 100644 --- a/chart2/source/controller/dialogs/tp_DataSource.hxx +++ b/chart2/source/controller/dialogs/tp_DataSource.hxx @@ -62,11 +62,12 @@ public: bool bHideDescription = false); virtual ~DataSourceTabPage() override; + virtual void ActivatePage() override; + void commitPage(); private: // OWizardPage - virtual void ActivatePage() override; virtual void dispose() override; virtual bool commitPage( ::svt::WizardTypes::CommitPageReason eReason ) override; @@ -127,6 +128,7 @@ private: bool m_bIsDirty; VclPtr<Dialog> m_pParentDialog; + weld::DialogController* m_pParentController; TabPageNotifiable * m_pTabPageNotifiable; std::unique_ptr<weld::Label> m_xFT_CAPTION; diff --git a/chart2/source/controller/dialogs/tp_RangeChooser.cxx b/chart2/source/controller/dialogs/tp_RangeChooser.cxx index 158266f00d42..130ab64df371 100644 --- a/chart2/source/controller/dialogs/tp_RangeChooser.cxx +++ b/chart2/source/controller/dialogs/tp_RangeChooser.cxx @@ -43,15 +43,24 @@ namespace } } - void lcl_enableRangeChoosing( bool bEnable, Dialog * pDialog ) + void lcl_enableRangeChoosing(bool bEnable, Dialog * pDialog) { if( pDialog ) { - pDialog->Show( !bEnable ); pDialog->SetModalInputMode( !bEnable ); + pDialog->Show(!bEnable); } } + void lcl_enableRangeChoosing(bool bEnable, weld::DialogController* pDialog) + { + if (!pDialog) + return; + weld::Dialog* pDlg = pDialog->getDialog(); + pDlg->set_modal(!bEnable); + pDlg->show(!bEnable); + } + } // anonymous namespace namespace chart @@ -63,15 +72,17 @@ using ::com::sun::star::uno::Sequence; RangeChooserTabPage::RangeChooserTabPage(TabPageParent pParent, DialogModel & rDialogModel, ChartTypeTemplateProvider* pTemplateProvider, - Dialog * pParentDialog, bool bHideDescription /* = false */) + Dialog* pParentDialog, bool bHideDescription /* = false */) : OWizardPage(pParent, "modules/schart/ui/tp_RangeChooser.ui", "tp_RangeChooser") , m_nChangingControlCalls(0) , m_bIsDirty(false) , m_aLastValidRangeString() , m_pTemplateProvider(pTemplateProvider) , m_rDialogModel( rDialogModel ) - , m_pParentDialog( pParentDialog ) - , m_pTabPageNotifiable( dynamic_cast< TabPageNotifiable * >( pParentDialog )) + , m_pParentDialog(pParentDialog) + , m_pParentController(pParent.pController) + , m_pTabPageNotifiable(pParentDialog ? dynamic_cast<TabPageNotifiable*>(pParentDialog) + : dynamic_cast<TabPageNotifiable*>(m_pParentController)) , m_xFT_Caption(m_xBuilder->weld_label("FT_CAPTION_FOR_WIZARD")) , m_xFT_Range(m_xBuilder->weld_label("FT_RANGE")) , m_xED_Range(m_xBuilder->weld_entry("ED_RANGE")) @@ -140,6 +151,7 @@ void RangeChooserTabPage::ActivatePage() { OWizardPage::ActivatePage(); initControlsFromModel(); + m_xED_Range->grab_focus(); } void RangeChooserTabPage::initControlsFromModel() @@ -352,6 +364,7 @@ IMPL_LINK_NOARG(RangeChooserTabPage, ChooseRangeHdl, weld::Button&, void) OUString aTitle = m_xFTTitle->get_label(); lcl_enableRangeChoosing( true, m_pParentDialog ); + lcl_enableRangeChoosing( true, m_pParentController ); m_rDialogModel.getRangeSelectionHelper()->chooseRange( aRange, aTitle, *this ); } @@ -378,6 +391,7 @@ void RangeChooserTabPage::listeningFinished( const OUString & rNewRange ) changeDialogModelAccordingToControls(); lcl_enableRangeChoosing( false, m_pParentDialog ); + lcl_enableRangeChoosing( false, m_pParentController ); } void RangeChooserTabPage::disposingRangeSelection() { diff --git a/chart2/source/controller/dialogs/tp_RangeChooser.hxx b/chart2/source/controller/dialogs/tp_RangeChooser.hxx index fb7325d72e13..c020ccceb1ea 100644 --- a/chart2/source/controller/dialogs/tp_RangeChooser.hxx +++ b/chart2/source/controller/dialogs/tp_RangeChooser.hxx @@ -47,12 +47,13 @@ public: virtual void listeningFinished( const OUString & rNewRange ) override; virtual void disposingRangeSelection() override; + virtual void ActivatePage() override; + void commitPage(); private: //OWizardPage - virtual void ActivatePage() override; virtual bool commitPage( ::svt::WizardTypes::CommitPageReason eReason ) override; //TabPage @@ -78,6 +79,7 @@ private: DialogModel & m_rDialogModel; VclPtr<Dialog> m_pParentDialog; + weld::DialogController* m_pParentController; TabPageNotifiable * m_pTabPageNotifiable; std::unique_ptr<weld::Label> m_xFT_Caption; diff --git a/chart2/source/controller/inc/dlg_DataSource.hxx b/chart2/source/controller/inc/dlg_DataSource.hxx index 1e0eac3b5271..64273e9d5b20 100644 --- a/chart2/source/controller/inc/dlg_DataSource.hxx +++ b/chart2/source/controller/inc/dlg_DataSource.hxx @@ -19,8 +19,7 @@ #ifndef INCLUDED_CHART2_SOURCE_CONTROLLER_INC_DLG_DATASOURCE_HXX #define INCLUDED_CHART2_SOURCE_CONTROLLER_INC_DLG_DATASOURCE_HXX -#include <vcl/tabdlg.hxx> -#include <vcl/button.hxx> +#include <vcl/weld.hxx> #include <vcl/vclptr.hxx> #include "TabPageNotifiable.hxx" @@ -42,35 +41,41 @@ class ChartTypeTemplateProvider; class DialogModel; class DataSourceDialog final : - public TabDialog, + public weld::GenericDialogController, public TabPageNotifiable { public: explicit DataSourceDialog( - vcl::Window * pParent, + weld::Window * pParent, const css::uno::Reference< css::chart2::XChartDocument > & xChartDocument, const css::uno::Reference< css::uno::XComponentContext > & xContext ); virtual ~DataSourceDialog() override; - virtual void dispose() override; - // from Dialog (base of TabDialog) - virtual short Execute() override; + // from GenericDialogController base + virtual short run() override; // TabPageNotifiable virtual void setInvalidPage( TabPage * pTabPage ) override; virtual void setValidPage( TabPage * pTabPage ) override; private: + void DisableTabToggling(); + void EnableTabToggling(); + + DECL_LINK(ActivatePageHdl, const OString&, void); + DECL_LINK(DeactivatePageHdl, const OString&, bool); + std::unique_ptr< ChartTypeTemplateProvider > m_apDocTemplateProvider; std::unique_ptr< DialogModel > m_apDialogModel; - VclPtr<DataSourceTabControl> m_pTabControl; - VclPtr<OKButton> m_pBtnOK; - VclPtr<RangeChooserTabPage> m_pRangeChooserTabPage; VclPtr<DataSourceTabPage> m_pDataSourceTabPage; bool m_bRangeChooserTabIsValid; bool m_bDataSourceTabIsValid; + bool m_bTogglingEnabled; + + std::unique_ptr<weld::Notebook> m_xTabControl; + std::unique_ptr<weld::Button> m_xBtnOK; static sal_uInt16 m_nLastPageId; }; diff --git a/chart2/source/controller/main/ChartController.cxx b/chart2/source/controller/main/ChartController.cxx index d9f246fc2bd2..3350e5e521d1 100644 --- a/chart2/source/controller/main/ChartController.cxx +++ b/chart2/source/controller/main/ChartController.cxx @@ -1358,8 +1358,8 @@ void ChartController::executeDispatch_SourceData() SchResId(STR_ACTION_EDIT_DATA_RANGES), m_xUndoManager); SolarMutexGuard aSolarGuard; - ScopedVclPtrInstance< ::chart::DataSourceDialog > aDlg( GetChartWindow(), xChartDoc, m_xCC ); - if( aDlg->Execute() == RET_OK ) + ::chart::DataSourceDialog aDlg(GetChartFrame(), xChartDoc, m_xCC); + if (aDlg.run() == RET_OK) { impl_adaptDataSeriesAutoResize(); aUndoGuard.commit(); diff --git a/chart2/uiconfig/ui/datarangedialog.ui b/chart2/uiconfig/ui/datarangedialog.ui index b82c9a5882a6..ca28c6f1392d 100644 --- a/chart2/uiconfig/ui/datarangedialog.ui +++ b/chart2/uiconfig/ui/datarangedialog.ui @@ -1,12 +1,19 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Generated with glade 3.18.3 --> +<!-- Generated with glade 3.22.1 --> <interface domain="chart"> <requires lib="gtk+" version="3.18"/> <object class="GtkDialog" id="DataRangeDialog"> <property name="can_focus">False</property> <property name="border_width">6</property> <property name="title" translatable="yes" context="datarangedialog|DataRangeDialog">Data Ranges</property> + <property name="resizable">False</property> + <property name="modal">True</property> + <property name="default_width">0</property> + <property name="default_height">0</property> <property name="type_hint">dialog</property> + <child> + <placeholder/> + </child> <child internal-child="vbox"> <object class="GtkBox" id="dialog-vbox1"> <property name="can_focus">False</property> @@ -70,7 +77,109 @@ </packing> </child> <child> - <placeholder/> + <object class="GtkNotebook" id="notebook"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="scrollable">True</property> + <property name="enable_popup">True</property> + <child> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + <child type="tab"> + <object class="GtkLabel" id="range"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="datarangedialog|range">Data Range</property> + </object> + <packing> + <property name="tab_fill">False</property> + </packing> + </child> + <child> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="position">1</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel" id="series"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="datarangedialog|series">Data Series</property> + </object> + <packing> + <property name="position">1</property> + <property name="tab_fill">False</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> </child> </object> </child> diff --git a/chart2/uiconfig/ui/tp_DataSource.ui b/chart2/uiconfig/ui/tp_DataSource.ui index cc7aaa7c70b4..7d41f8a116a7 100644 --- a/chart2/uiconfig/ui/tp_DataSource.ui +++ b/chart2/uiconfig/ui/tp_DataSource.ui @@ -32,52 +32,27 @@ <column type="gchararray"/> </columns> </object> - <object class="GtkTreeStore" id="liststore2"> - <columns> - <!-- column-name text --> - <column type="gchararray"/> - <!-- column-name text2 --> - <column type="gchararray"/> - <!-- column-name id --> - <column type="gchararray"/> - </columns> - </object> - <object class="GtkBox" id="tp_DataSource"> + <object class="GtkGrid" id="tp_DataSource"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</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="label" translatable="yes" context="tp_DataSource|FT_CAPTION_FOR_WIZARD">Customize Data Ranges for Individual Data Series</property> - <property name="xalign">0</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> + <property name="column_spacing">6</property> <child> - <object class="GtkBox" id="box1"> + <object class="GtkGrid" id="box1"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="hexpand">True</property> <property name="vexpand">True</property> - <property name="spacing">12</property> + <property name="column_spacing">12</property> <child> - <object class="GtkBox" id="box2"> + <object class="GtkGrid" 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> + <property name="row_spacing">6</property> <child> <object class="GtkLabel" id="FT_SERIES"> <property name="visible">True</property> @@ -88,9 +63,8 @@ <property name="xalign">0</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> </packing> </child> <child> @@ -128,9 +102,8 @@ </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left_attach">0</property> + <property name="top_attach">1</property> </packing> </child> <child> @@ -146,6 +119,7 @@ <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> + <property name="hexpand">True</property> <property name="use_underline">True</property> </object> <packing> @@ -205,230 +179,260 @@ </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> + <property name="left_attach">0</property> + <property name="top_attach">2</property> </packing> </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkGrid" id="grid2"> + <object class="GtkGrid"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="valign">start</property> <property name="hexpand">True</property> <property name="vexpand">True</property> - <property name="row_spacing">6</property> <child> - <object class="GtkLabel" id="FT_ROLE"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="tp_DataSource|FT_ROLE">_Data ranges:</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">LB_ROLE</property> - <property name="xalign">0</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkScrolledWindow"> + <object class="GtkGrid" id="grid2"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="valign">start</property> <property name="hexpand">True</property> <property name="vexpand">True</property> - <property name="shadow_type">in</property> + <property name="orientation">vertical</property> + <property name="row_spacing">6</property> + <child> + <object class="GtkLabel" id="FT_ROLE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="tp_DataSource|FT_ROLE">_Data ranges:</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">LB_ROLE</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> <child> - <object class="GtkTreeView" id="LB_ROLE"> + <object class="GtkScrolledWindow"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="hexpand">True</property> <property name="vexpand">True</property> - <property name="model">liststore2</property> - <property name="headers_visible">False</property> - <property name="headers_clickable">False</property> - <property name="search_column">0</property> - <property name="show_expanders">False</property> - <child internal-child="selection"> - <object class="GtkTreeSelection" id="treeview-selection2"/> - </child> + <property name="shadow_type">in</property> <child> - <object class="GtkTreeViewColumn" id="treeviewcolumn2"> + <object class="GtkTreeView" id="LB_ROLE"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="model">liststore2</property> + <property name="headers_visible">False</property> + <property name="headers_clickable">False</property> + <property name="search_column">0</property> + <property name="show_expanders">False</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> <child> - <object class="GtkCellRendererText" id="cellrenderertext2"/> - <attributes> - <attribute name="text">0</attribute> - </attributes> + <object class="GtkTreeViewColumn" id="treeviewcolumn2"> + <child> + <object class="GtkCellRendererText" id="cellrenderertext2"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> </child> - </object> - </child> - <child> - <object class="GtkTreeViewColumn" id="treeviewcolumn3"> <child> - <object class="GtkCellRendererText" id="cellrenderertext3"/> - <attributes> - <attribute name="text">1</attribute> - </attributes> + <object class="GtkTreeViewColumn" id="treeviewcolumn3"> + <child> + <object class="GtkCellRendererText" id="cellrenderertext3"/> + <attributes> + <attribute name="text">1</attribute> + </attributes> + </child> + </object> </child> </object> </child> </object> - </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="FT_RANGE"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="tp_DataSource|FT_RANGE">Ran_ge for %VALUETYPE</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">EDT_RANGE</property> - <property name="xalign">0</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">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">True</property> - <property name="hexpand">True</property> - </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="IMB_RANGE_MAIN"> - <property name="visible">True</property> - <property name="can_focus">True</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> + <property name="left_attach">0</property> + <property name="top_attach">1</property> </packing> </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">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"> + <object class="GtkLabel" id="FT_RANGE"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label" translatable="yes" context="tp_DataSource|FT_CATEGORIES">_Categories</property> + <property name="label" translatable="yes" context="tp_DataSource|FT_RANGE">Ran_ge for %VALUETYPE</property> <property name="use_underline">True</property> - <property name="mnemonic_widget">EDT_CATEGORIES</property> + <property name="mnemonic_widget">EDT_RANGE</property> <property name="xalign">0</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">2</property> </packing> </child> <child> - <object class="GtkLabel" id="FT_DATALABELS"> + <object class="GtkGrid" id="box5"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label" translatable="yes" context="tp_DataSource|FT_DATALABELS">Data _labels</property> - <property name="use_underline">True</property> - <property name="xalign">0</property> + <property name="hexpand">True</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkEntry" id="EDT_RANGE"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="activates_default">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="IMB_RANGE_MAIN"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="image">imageIMB_RANGE_MAIN</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left_attach">0</property> + <property name="top_attach">3</property> </packing> </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">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"> + <object class="GtkGrid" id="box4"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hexpand">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="label" translatable="yes" context="tp_DataSource|FT_CATEGORIES">_Categories</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">EDT_CATEGORIES</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="FT_DATALABELS"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="tp_DataSource|FT_DATALABELS">Data _labels</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">4</property> </packing> </child> <child> - <object class="GtkButton" id="IMB_RANGE_CAT"> + <object class="GtkGrid" id="box6"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="image">imageIMB_RANGE_CAT</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkEntry" id="EDT_CATEGORIES"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="activates_default">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="IMB_RANGE_CAT"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="image">imageIMB_RANGE_CAT</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left_attach">0</property> + <property name="top_attach">5</property> </packing> </child> </object> <packing> <property name="left_attach">0</property> - <property name="top_attach">5</property> + <property name="top_attach">0</property> </packing> </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left_attach">1</property> + <property name="top_attach">0</property> </packing> </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> </packing> </child> + <child> + <object class="GtkLabel" id="FT_CAPTION_FOR_WIZARD"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="tp_DataSource|FT_CAPTION_FOR_WIZARD">Customize Data Ranges for Individual Data Series</property> + <property name="xalign">0</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + </object> + <object class="GtkTreeStore" id="liststore2"> + <columns> + <!-- column-name text --> + <column type="gchararray"/> + <!-- column-name text2 --> + <column type="gchararray"/> + <!-- column-name id --> + <column type="gchararray"/> + </columns> </object> </interface> diff --git a/chart2/uiconfig/ui/tp_RangeChooser.ui b/chart2/uiconfig/ui/tp_RangeChooser.ui index 8d306e91d37d..2684913d3595 100644 --- a/chart2/uiconfig/ui/tp_RangeChooser.ui +++ b/chart2/uiconfig/ui/tp_RangeChooser.ui @@ -8,18 +8,16 @@ <property name="tooltip_text" translatable="yes" context="tp_RangeChooser|imageIB_RANGE|tooltip_text">Select data range</property> <property name="icon_name">chart2/res/selectrange.png</property> </object> - <object class="GtkBox" id="tp_RangeChooser"> + <object class="GtkGrid" id="tp_RangeChooser"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="border_width">6</property> - <property name="spacing">12</property> <child> - <object class="GtkBox" id="box1"> + <object class="GtkGrid" id="box1"> <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> + <property name="row_spacing">6</property> <child> <object class="GtkLabel" id="FT_CAPTION_FOR_WIZARD"> <property name="visible">True</property> @@ -31,17 +29,16 @@ </attributes> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkBox" id="box2"> + <object class="GtkGrid" id="box2"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="hexpand">True</property> - <property name="spacing">12</property> + <property name="column_spacing">6</property> <child> <object class="GtkLabel" id="FT_RANGE"> <property name="visible">True</property> @@ -52,9 +49,8 @@ <property name="xalign">0</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> </packing> </child> <child> @@ -65,9 +61,8 @@ <property name="activates_default">True</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left_attach">1</property> + <property name="top_attach">0</property> </packing> </child> <child> @@ -79,16 +74,14 @@ <property name="image">imageIB_RANGE</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> + <property name="left_attach">2</property> + <property name="top_attach">0</property> </packing> </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left_attach">0</property> + <property name="top_attach">1</property> </packing> </child> <child> @@ -103,9 +96,8 @@ <property name="draw_indicator">True</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> + <property name="left_attach">0</property> + <property name="top_attach">2</property> </packing> </child> <child> @@ -120,9 +112,8 @@ <property name="group">RB_DATAROWS</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">3</property> + <property name="left_attach">0</property> + <property name="top_attach">3</property> </packing> </child> <child> @@ -136,9 +127,8 @@ <property name="draw_indicator">True</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">4</property> + <property name="left_attach">0</property> + <property name="top_attach">4</property> </packing> </child> <child> @@ -152,9 +142,8 @@ <property name="draw_indicator">True</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">5</property> + <property name="left_attach">0</property> + <property name="top_attach">5</property> </packing> </child> <child> @@ -163,9 +152,8 @@ <property name="can_focus">False</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">6</property> + <property name="left_attach">0</property> + <property name="top_attach">6</property> </packing> </child> <child> @@ -179,9 +167,8 @@ <property name="draw_indicator">True</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">7</property> + <property name="left_attach">0</property> + <property name="top_attach">7</property> </packing> </child> <child> @@ -246,9 +233,8 @@ </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">8</property> + <property name="left_attach">0</property> + <property name="top_attach">8</property> </packing> </child> <child> @@ -257,16 +243,14 @@ <property name="label" translatable="yes" context="tp_RangeChooser|STR_PAGE_DATA_RANGE">Data Range</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">11</property> + <property name="left_attach">0</property> + <property name="top_attach">9</property> </packing> </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> </packing> </child> </object> |