From 6846f2f204dbaaf9f32c2f717eb39d3a01711087 Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Sat, 6 Oct 2018 20:54:44 +0100 Subject: weld NewDataTypeDialog MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Ice5146e72baba397e60fbcb8d64d1ddaeb32e45c Reviewed-on: https://gerrit.libreoffice.org/61481 Tested-by: Jenkins Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara --- extensions/source/propctrlr/newdatatype.cxx | 30 +++++++--------------- extensions/source/propctrlr/newdatatype.hxx | 21 ++++++--------- .../propctrlr/xsdvalidationpropertyhandler.cxx | 6 ++--- .../uiconfig/spropctrlr/ui/datatypedialog.ui | 9 ++++++- 4 files changed, 28 insertions(+), 38 deletions(-) (limited to 'extensions') diff --git a/extensions/source/propctrlr/newdatatype.cxx b/extensions/source/propctrlr/newdatatype.cxx index 6aa4dc633992..8c2876e73b38 100644 --- a/extensions/source/propctrlr/newdatatype.cxx +++ b/extensions/source/propctrlr/newdatatype.cxx @@ -28,15 +28,13 @@ namespace pcr //= NewDataTypeDialog - NewDataTypeDialog::NewDataTypeDialog( vcl::Window* _pParent, const OUString& _rNameBase, const std::vector< OUString >& _rProhibitedNames ) - : ModalDialog( _pParent, "DataTypeDialog", - "modules/spropctrlr/ui/datatypedialog.ui" ) + NewDataTypeDialog::NewDataTypeDialog(weld::Window* pParent, const OUString& _rNameBase, const std::vector< OUString >& _rProhibitedNames) + : GenericDialogController(pParent, "modules/spropctrlr/ui/datatypedialog.ui", "DataTypeDialog") , m_aProhibitedNames( _rProhibitedNames.begin(), _rProhibitedNames.end() ) + , m_xName(m_xBuilder->weld_entry("entry")) + , m_xOK(m_xBuilder->weld_button("ok")) { - get(m_pName, "entry"); - get(m_pOK, "ok"); - - m_pName->SetModifyHdl( LINK( this, NewDataTypeDialog, OnNameModified ) ); + m_xName->connect_changed(LINK(this, NewDataTypeDialog, OnNameModified)); // find an initial name // for this, first remove trailing digits @@ -61,32 +59,22 @@ namespace pcr } while ( m_aProhibitedNames.find( sInitialName ) != m_aProhibitedNames.end() ); - m_pName->SetText( sInitialName ); - OnNameModified( *m_pName ); + m_xName->set_text(sInitialName); + OnNameModified(*m_xName); } NewDataTypeDialog::~NewDataTypeDialog() { - disposeOnce(); - } - - void NewDataTypeDialog::dispose() - { - m_pName.clear(); - m_pOK.clear(); - ModalDialog::dispose(); } - IMPL_LINK_NOARG( NewDataTypeDialog, OnNameModified, Edit&, void ) + IMPL_LINK_NOARG(NewDataTypeDialog, OnNameModified, weld::Entry&, void) { OUString sCurrentName = GetName(); bool bNameIsOK = ( !sCurrentName.isEmpty() ) && ( m_aProhibitedNames.find( sCurrentName ) == m_aProhibitedNames.end() ); - m_pOK->Enable( bNameIsOK ); + m_xOK->set_sensitive(bNameIsOK); } - - } // namespace pcr diff --git a/extensions/source/propctrlr/newdatatype.hxx b/extensions/source/propctrlr/newdatatype.hxx index 9185d1f02100..19a88f31c75f 100644 --- a/extensions/source/propctrlr/newdatatype.hxx +++ b/extensions/source/propctrlr/newdatatype.hxx @@ -20,10 +20,7 @@ #ifndef INCLUDED_EXTENSIONS_SOURCE_PROPCTRLR_NEWDATATYPE_HXX #define INCLUDED_EXTENSIONS_SOURCE_PROPCTRLR_NEWDATATYPE_HXX -#include -#include -#include -#include +#include #include #include @@ -32,24 +29,22 @@ namespace pcr { //= NewDataTypeDialog - class NewDataTypeDialog : public ModalDialog + class NewDataTypeDialog : public weld::GenericDialogController { private: - VclPtr m_pName; - VclPtr m_pOK; - - std::set< OUString > m_aProhibitedNames; + std::set m_aProhibitedNames; + std::unique_ptr m_xName; + std::unique_ptr m_xOK; public: - NewDataTypeDialog(vcl::Window* _pParent, const OUString& _rNameBase, + NewDataTypeDialog(weld::Window* _pParent, const OUString& _rNameBase, const std::vector< OUString >& _rProhibitedNames ); virtual ~NewDataTypeDialog() override; - virtual void dispose() override; - OUString GetName() const { return m_pName->GetText(); } + OUString GetName() const { return m_xName->get_text(); } private: - DECL_LINK( OnNameModified, Edit&, void ); + DECL_LINK(OnNameModified, weld::Entry&, void); }; diff --git a/extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx b/extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx index 37eb19bdf6da..ec4d6c9f914a 100644 --- a/extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx +++ b/extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx @@ -488,11 +488,11 @@ namespace pcr std::vector< OUString > aExistentNames; m_pHelper->getAvailableDataTypeNames( aExistentNames ); - ScopedVclPtrInstance aDialog( nullptr, pType->getName(), aExistentNames ); // TODO/eForms: proper parent - if ( aDialog->Execute() != RET_OK ) + NewDataTypeDialog aDialog( nullptr, pType->getName(), aExistentNames ); // TODO/eForms: proper parent + if (aDialog.run() != RET_OK) return false; - _rNewName = aDialog->GetName(); + _rNewName = aDialog.GetName(); return true; } diff --git a/extensions/uiconfig/spropctrlr/ui/datatypedialog.ui b/extensions/uiconfig/spropctrlr/ui/datatypedialog.ui index 043196eade9f..be40857a472d 100644 --- a/extensions/uiconfig/spropctrlr/ui/datatypedialog.ui +++ b/extensions/uiconfig/spropctrlr/ui/datatypedialog.ui @@ -1,12 +1,18 @@ - + False 6 New Data Type + True + 0 + 0 normal + + + False @@ -97,6 +103,7 @@ True True True + True 0 -- cgit