summaryrefslogtreecommitdiff
path: root/svx
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-05-14 12:20:41 +0100
committerCaolán McNamara <caolanm@redhat.com>2018-05-14 15:03:50 +0200
commit881bb00dc39d65560e26a60b34ae05d1ac662bc0 (patch)
treef16bc8dd9eaac2ad534970cc1ddd778288bda851 /svx
parentf645481d29d09c412d34ea6cbba89135d10babee (diff)
weld AddInstanceDialog
Change-Id: I69bcb7fb9c18922a5de03e6f2dedd915a5851712 Reviewed-on: https://gerrit.libreoffice.org/54313 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'svx')
-rw-r--r--svx/source/form/datanavi.cxx71
-rw-r--r--svx/source/inc/datanavi.hxx34
-rw-r--r--svx/uiconfig/ui/addinstancedialog.ui21
3 files changed, 63 insertions, 63 deletions
diff --git a/svx/source/form/datanavi.cxx b/svx/source/form/datanavi.cxx
index 06eade7b63b1..7d97015284b4 100644
--- a/svx/source/form/datanavi.cxx
+++ b/svx/source/form/datanavi.cxx
@@ -1624,13 +1624,13 @@ namespace svxform
OString sIdent(pBtn->GetCurItemIdent());
if (sIdent == "instancesadd")
{
- ScopedVclPtrInstance< AddInstanceDialog > aDlg( this, false );
- if ( aDlg->Execute() == RET_OK )
+ AddInstanceDialog aDlg(GetFrameWeld(), false);
+ if (aDlg.run() == RET_OK)
{
sal_uInt16 nInst = GetNewPageId();
- OUString sName = aDlg->GetName();
- OUString sURL = aDlg->GetURL();
- bool bLinkOnce = aDlg->IsLinkInstance();
+ OUString sName = aDlg.GetName();
+ OUString sURL = aDlg.GetURL();
+ bool bLinkOnce = aDlg.IsLinkInstance();
try
{
xUIHelper->newInstance( sName, sURL, !bLinkOnce );
@@ -1655,16 +1655,16 @@ namespace svxform
XFormsPage* pPage = GetCurrentPage( nId );
if ( pPage )
{
- ScopedVclPtrInstance< AddInstanceDialog > aDlg( this, true );
- aDlg->SetName( pPage->GetInstanceName() );
- aDlg->SetURL( pPage->GetInstanceURL() );
- aDlg->SetLinkInstance( pPage->GetLinkOnce() );
- OUString sOldName = aDlg->GetName();
- if ( aDlg->Execute() == RET_OK )
+ AddInstanceDialog aDlg(GetFrameWeld(), true);
+ aDlg.SetName( pPage->GetInstanceName() );
+ aDlg.SetURL( pPage->GetInstanceURL() );
+ aDlg.SetLinkInstance( pPage->GetLinkOnce() );
+ OUString sOldName = aDlg.GetName();
+ if (aDlg.run() == RET_OK)
{
- OUString sNewName = aDlg->GetName();
- OUString sURL = aDlg->GetURL();
- bool bLinkOnce = aDlg->IsLinkInstance();
+ OUString sNewName = aDlg.GetName();
+ OUString sURL = aDlg.GetURL();
+ bool bLinkOnce = aDlg.IsLinkInstance();
try
{
xUIHelper->renameInstance( sOldName,
@@ -3339,20 +3339,20 @@ namespace svxform
ModalDialog::dispose();
}
- AddInstanceDialog::AddInstanceDialog(vcl::Window* pParent, bool _bEdit)
- : ModalDialog(pParent, "AddInstanceDialog" , "svx/ui/addinstancedialog.ui")
+ AddInstanceDialog::AddInstanceDialog(weld::Window* pParent, bool _bEdit)
+ : GenericDialogController(pParent, "svx/ui/addinstancedialog.ui", "AddInstanceDialog")
+ , m_xNameED(m_xBuilder->weld_entry("name"))
+ , m_xURLFT(m_xBuilder->weld_label("urlft"))
+ , m_xURLED(new URLBox(m_xBuilder->weld_combo_box_text("url")))
+ , m_xFilePickerBtn(m_xBuilder->weld_button("browse"))
+ , m_xLinkInstanceCB(m_xBuilder->weld_check_button("link"))
+ , m_xAltTitle(m_xBuilder->weld_label("alttitle"))
{
- get(m_pNameED, "name");
- get(m_pURLFT, "urlft");
- get(m_pURLED, "url");
- get(m_pFilePickerBtn, "browse");
- get(m_pLinkInstanceCB, "link");
-
- if ( _bEdit )
- SetText(get<FixedText>("alttitle")->GetText());
+ if (_bEdit)
+ m_xDialog->set_title(m_xAltTitle->get_label());
- m_pURLED->DisableHistory();
- m_pFilePickerBtn->SetClickHdl( LINK( this, AddInstanceDialog, FilePickerHdl ) );
+ m_xURLED->DisableHistory();
+ m_xFilePickerBtn->connect_clicked(LINK(this, AddInstanceDialog, FilePickerHdl));
// load the filter name from fps resource
m_sAllFilterName = Translate::get(STR_FILTERNAME_ALL, Translate::Create("fps"));
@@ -3360,24 +3360,13 @@ namespace svxform
AddInstanceDialog::~AddInstanceDialog()
{
- disposeOnce();
- }
-
- void AddInstanceDialog::dispose()
- {
- m_pNameED.clear();
- m_pURLFT.clear();
- m_pURLED.clear();
- m_pFilePickerBtn.clear();
- m_pLinkInstanceCB.clear();
- ModalDialog::dispose();
}
- IMPL_LINK_NOARG(AddInstanceDialog, FilePickerHdl, Button*, void)
+ IMPL_LINK_NOARG(AddInstanceDialog, FilePickerHdl, weld::Button&, void)
{
::sfx2::FileDialogHelper aDlg(
css::ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE,
- FileDialogFlags::NONE, GetFrameWeld());
+ FileDialogFlags::NONE, m_xDialog.get());
INetURLObject aFile( SvtPathOptions().GetWorkPath() );
aDlg.AddFilter( m_sAllFilterName, FILEDIALOG_FILTER_ALL );
@@ -3386,8 +3375,8 @@ namespace svxform
aDlg.SetCurrentFilter( sFilterName );
aDlg.SetDisplayDirectory( aFile.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
- if( aDlg.Execute() == ERRCODE_NONE )
- m_pURLED->SetText( aDlg.GetPath() );
+ if (aDlg.Execute() == ERRCODE_NONE)
+ m_xURLED->SetText( aDlg.GetPath() );
}
LinkedInstanceWarningBox::LinkedInstanceWarningBox(weld::Widget* pParent)
diff --git a/svx/source/inc/datanavi.hxx b/svx/source/inc/datanavi.hxx
index b424c472de0b..cc66523361aa 100644
--- a/svx/source/inc/datanavi.hxx
+++ b/svx/source/inc/datanavi.hxx
@@ -85,7 +85,6 @@ namespace svxform
class DataNavigatorWindow;
class AddInstanceDialog;
-
class DataTreeListBox : public SvTreeListBox
{
private:
@@ -604,33 +603,32 @@ namespace svxform
};
- class AddInstanceDialog : public ModalDialog
+ class AddInstanceDialog : public weld::GenericDialogController
{
private:
- VclPtr<Edit> m_pNameED;
- VclPtr<FixedText> m_pURLFT;
- VclPtr<SvtURLBox> m_pURLED;
- VclPtr<PushButton> m_pFilePickerBtn;
- VclPtr<CheckBox> m_pLinkInstanceCB;
-
OUString m_sAllFilterName;
- DECL_LINK(FilePickerHdl, Button*, void);
+ std::unique_ptr<weld::Entry> m_xNameED;
+ std::unique_ptr<weld::Label> m_xURLFT;
+ std::unique_ptr<URLBox> m_xURLED;
+ std::unique_ptr<weld::Button> m_xFilePickerBtn;
+ std::unique_ptr<weld::CheckButton> m_xLinkInstanceCB;
+ std::unique_ptr<weld::Label> m_xAltTitle;
+
+ DECL_LINK(FilePickerHdl, weld::Button&, void);
public:
- AddInstanceDialog( vcl::Window* pParent, bool _bEdit );
+ AddInstanceDialog(weld::Window* pParent, bool _bEdit);
virtual ~AddInstanceDialog() override;
- virtual void dispose() override;
- OUString GetName() const { return m_pNameED->GetText(); }
- void SetName( const OUString& _rName ) { m_pNameED->SetText( _rName );}
- OUString GetURL() const { return m_pURLED->GetText(); }
- void SetURL( const OUString& _rURL ) { m_pURLED->SetText( _rURL );}
- bool IsLinkInstance() const { return m_pLinkInstanceCB->IsChecked(); }
- void SetLinkInstance( bool _bLink ) { m_pLinkInstanceCB->Check(_bLink); }
+ OUString GetName() const { return m_xNameED->get_text(); }
+ void SetName( const OUString& _rName ) { m_xNameED->set_text( _rName );}
+ OUString GetURL() const { return m_xURLED->get_active_text(); }
+ void SetURL( const OUString& _rURL ) { m_xURLED->SetText( _rURL );}
+ bool IsLinkInstance() const { return m_xLinkInstanceCB->get_active(); }
+ void SetLinkInstance( bool _bLink ) { m_xLinkInstanceCB->set_active(_bLink); }
};
-
class LinkedInstanceWarningBox : public weld::MessageDialogController
{
public:
diff --git a/svx/uiconfig/ui/addinstancedialog.ui b/svx/uiconfig/ui/addinstancedialog.ui
index 0f84988af2e6..f08a49b71d0a 100644
--- a/svx/uiconfig/ui/addinstancedialog.ui
+++ b/svx/uiconfig/ui/addinstancedialog.ui
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.18.3 -->
+<!-- Generated with glade 3.22.1 -->
<interface domain="svx">
<requires lib="gtk+" version="3.18"/>
<requires lib="LibreOffice" version="1.0"/>
@@ -7,7 +7,13 @@
<property name="can_focus">False</property>
<property name="border_width">6</property>
<property name="title" translatable="yes" context="addinstancedialog|AddInstanceDialog">Add Instance</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>
@@ -81,6 +87,7 @@
<object class="GtkEntry" id="name">
<property name="visible">True</property>
<property name="can_focus">True</property>
+ <property name="activates_default">True</property>
<property name="width_chars">46</property>
</object>
<packing>
@@ -93,10 +100,10 @@
<object class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="xalign">1</property>
<property name="label" translatable="yes" context="addinstancedialog|label2">_Name:</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">name</property>
+ <property name="xalign">1</property>
</object>
<packing>
<property name="left_attach">0</property>
@@ -119,10 +126,10 @@
<object class="GtkLabel" id="urlft">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="xalign">1</property>
<property name="label" translatable="yes" context="addinstancedialog|urlft">_URL:</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">name</property>
+ <property name="xalign">1</property>
</object>
<packing>
<property name="left_attach">0</property>
@@ -130,10 +137,16 @@
</packing>
</child>
<child>
- <object class="svtlo-SvtURLBox" id="url">
+ <object class="GtkComboBoxText" id="url">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
+ <property name="has_entry">True</property>
+ <child internal-child="entry">
+ <object class="GtkEntry">
+ <property name="can_focus">True</property>
+ </object>
+ </child>
</object>
<packing>
<property name="left_attach">1</property>