vcl/uiconfig/ui/querydialog.ui      |   11 +++++-
 vcl/unx/generic/print/genprnpsp.cxx |   63 ++++++++++++++----------------------
 2 files changed, 35 insertions(+), 39 deletions(-)

New commits:
commit 388cee7be6d27fefeadc709c501b700817bce5fd
Author: Caolán McNamara <caol...@redhat.com>
Date:   Thu Apr 12 10:41:12 2018 +0100

    weld QueryString
    
    Change-Id: I0caf5b563349bf8260f266b0f4658306c9ec72d9
    Reviewed-on: https://gerrit.libreoffice.org/52771
    Tested-by: Jenkins <c...@libreoffice.org>
    Reviewed-by: Caolán McNamara <caol...@redhat.com>
    Tested-by: Caolán McNamara <caol...@redhat.com>

diff --git a/vcl/uiconfig/ui/querydialog.ui b/vcl/uiconfig/ui/querydialog.ui
index 454c0cd67557..cc3278e9f73b 100644
--- a/vcl/uiconfig/ui/querydialog.ui
+++ b/vcl/uiconfig/ui/querydialog.ui
@@ -1,11 +1,14 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.18.3 -->
+<!-- Generated with glade 3.20.4 -->
 <interface domain="vcl">
   <requires lib="gtk+" version="3.18"/>
   <object class="GtkDialog" id="QueryDialog">
     <property name="can_focus">False</property>
     <property name="border_width">6</property>
     <property name="title" translatable="yes" 
context="querydialog|QueryDialog">New Data Type</property>
+    <property name="modal">True</property>
+    <property name="default_width">0</property>
+    <property name="default_height">0</property>
     <property name="type_hint">normal</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
@@ -67,9 +70,9 @@
               <object class="GtkLabel" id="label">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
-                <property name="xalign">0</property>
                 <property name="use_underline">True</property>
                 <property name="mnemonic_widget">entry</property>
+                <property name="xalign">0</property>
               </object>
               <packing>
                 <property name="left_attach">0</property>
@@ -81,6 +84,7 @@
                 <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>
@@ -100,5 +104,8 @@
       <action-widget response="-5">ok</action-widget>
       <action-widget response="-6">cancel</action-widget>
     </action-widgets>
+    <child>
+      <placeholder/>
+    </child>
   </object>
 </interface>
diff --git a/vcl/unx/generic/print/genprnpsp.cxx 
b/vcl/unx/generic/print/genprnpsp.cxx
index 53f9576b6eac..b2d46d91d753 100644
--- a/vcl/unx/generic/print/genprnpsp.cxx
+++ b/vcl/unx/generic/print/genprnpsp.cxx
@@ -37,16 +37,13 @@
 #include <comphelper/fileurl.hxx>
 #include <rtl/ustring.hxx>
 
-#include <vcl/button.hxx>
-#include <vcl/dialog.hxx>
-#include <vcl/edit.hxx>
-#include <vcl/fixed.hxx>
 #include <vcl/idle.hxx>
-#include <vcl/svapp.hxx>
 #include <vcl/print.hxx>
 #include <vcl/pdfwriter.hxx>
 #include <printerinfomanager.hxx>
+#include <vcl/svapp.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/weld.hxx>
 #include <strings.hrc>
 #include <saldatabasic.hxx>
 #include <unx/genprn.h>
@@ -88,63 +85,55 @@ static OUString getPdfDir( const PrinterInfo& rInfo )
 
 namespace
 {
-    class QueryString : public ModalDialog
+    class QueryString : public weld::GenericDialogController
     {
     private:
-        VclPtr<OKButton>    m_pOKButton;
-        VclPtr<FixedText>   m_pFixedText;
-        VclPtr<Edit>        m_pEdit;
         OUString&           m_rReturnValue;
 
-        DECL_LINK( ClickBtnHdl, Button*, void );
+        std::unique_ptr<weld::Button> m_xOKButton;
+        std::unique_ptr<weld::Label> m_xFixedText;
+        std::unique_ptr<weld::Entry> m_xEdit;
+
+        DECL_LINK( ClickBtnHdl, weld::Button&, void );
 
     public:
         // parent window, Query text, initial value
-        QueryString(vcl::Window*, OUString const &, OUString &);
-        virtual ~QueryString() override { disposeOnce(); }
-        virtual void dispose() override
-        {
-            m_pOKButton.clear();
-            m_pFixedText.clear();
-            m_pEdit.clear();
-            ModalDialog::dispose();
-        }
+        QueryString(weld::Window*, OUString const &, OUString &);
     };
 
     /*
      *  QueryString
      */
-    QueryString::QueryString(vcl::Window* pParent, OUString const & rQuery, 
OUString& rRet)
-        : ModalDialog(pParent, "QueryDialog",
-            "vcl/ui/querydialog.ui" )
+    QueryString::QueryString(weld::Window* pParent, OUString const & rQuery, 
OUString& rRet)
+        : GenericDialogController(pParent, "vcl/ui/querydialog.ui", 
"QueryDialog")
         , m_rReturnValue( rRet )
+        , m_xOKButton(m_xBuilder->weld_button("ok"))
+        , m_xFixedText(m_xBuilder->weld_label("label"))
+        , m_xEdit(m_xBuilder->weld_entry("entry"))
     {
-        get(m_pOKButton, "ok");
-        get(m_pFixedText, "label");
-        get(m_pEdit, "entry");
-
-        m_pOKButton->SetClickHdl(LINK(this, QueryString, ClickBtnHdl));
-        m_pFixedText->SetText(rQuery);
-        m_pEdit->SetText(m_rReturnValue);
-        SetText(rQuery);
+        m_xOKButton->connect_clicked(LINK(this, QueryString, ClickBtnHdl));
+        m_xFixedText->set_label(rQuery);
+        m_xEdit->set_text(m_rReturnValue);
+        m_xDialog->set_title(rQuery);
     }
 
-    IMPL_LINK( QueryString, ClickBtnHdl, Button*, pButton, void )
+    IMPL_LINK(QueryString, ClickBtnHdl, weld::Button&, rButton, void)
     {
-        if (pButton == m_pOKButton)
+        if (&rButton == m_xOKButton.get())
         {
-            m_rReturnValue = m_pEdit->GetText();
-            EndDialog( 1 );
+            m_rReturnValue = m_xEdit->get_text();
+            m_xDialog->response(RET_OK);
         }
         else
-            EndDialog();
+            m_xDialog->response(RET_CANCEL);
     }
 
     int QueryFaxNumber(OUString& rNumber)
     {
         OUString aTmpString(VclResId(SV_PRINT_QUERYFAXNUMBER_TXT));
-        ScopedVclPtrInstance< QueryString > aQuery( nullptr, aTmpString, 
rNumber );
-        return aQuery->Execute();
+        vcl::Window* pWin = Application::GetDefDialogParent();
+        QueryString aQuery(pWin ? pWin->GetFrameWeld() : nullptr, aTmpString, 
rNumber);
+        return aQuery.run();
     }
 }
 
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to