dbaccess/source/ui/dlg/sqlmessage.cxx |   27 +++++---
 dbaccess/source/ui/inc/sqlmessage.hxx |   12 +--
 sw/uiconfig/swriter/ui/ccdialog.ui    |  105 ++++++++++++++++------------------
 vcl/qt5/QtInstanceBuilder.cxx         |    1 
 4 files changed, 74 insertions(+), 71 deletions(-)

New commits:
commit 114c01ee31df90bac06328ffcc167478d7e19a51
Author:     Michael Weghorn <[email protected]>
AuthorDate: Fri Feb 20 15:12:41 2026 +0100
Commit:     Michael Weghorn <[email protected]>
CommitDate: Sat Feb 21 02:33:31 2026 +0100

    tdf#130857 qt weld: Support sw "Copy To" dialog
    
    This means that native Qt widgets are used for that dialog
    now when using the qt5 or qt6 VCL plugin and starting LO with
    environment variable SAL_VCL_QT_USE_WELDED_WIDGETS=1 set.
    
    The dialog can be triggered like this:
    
    * start Writer
    * run the "Tools" -> "Mail Merge" wizard to the end
      (with setting database,...) and close with "Finish"
    * press the "Send Email Messages" button in the toolbar
    * in the "Email merged document" dialog, press the "Copy to..."
      button
    
    Change-Id: I8639ef676f1d83c11b1394f441473fb067ea0ea5
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199870
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <[email protected]>

diff --git a/vcl/qt5/QtInstanceBuilder.cxx b/vcl/qt5/QtInstanceBuilder.cxx
index 9582a3e23b72..73e7e20b1e60 100644
--- a/vcl/qt5/QtInstanceBuilder.cxx
+++ b/vcl/qt5/QtInstanceBuilder.cxx
@@ -206,6 +206,7 @@ constexpr auto SUPPORTED_UI_FILES = 
frozen::make_unordered_set<std::u16string_vi
     u"modules/swriter/ui/bibliographyentry.ui",
     u"modules/swriter/ui/captiondialog.ui",
     u"modules/swriter/ui/captionoptions.ui",
+    u"modules/swriter/ui/ccdialog.ui",
     u"modules/swriter/ui/columndialog.ui",
     u"modules/swriter/ui/columnwidth.ui",
     u"modules/swriter/ui/createaddresslist.ui",
commit 8b3603e1b23a98dd92637f5e57c301e0785ad59d
Author:     Michael Weghorn <[email protected]>
AuthorDate: Fri Feb 20 15:07:59 2026 +0100
Commit:     Michael Weghorn <[email protected]>
CommitDate: Sat Feb 21 02:33:25 2026 +0100

    sw: Resave ccdialog.ui with glade 3.40
    
    The dialog can be triggered like this:
    
    * start Writer
    * run the "Tools" -> "Mail Merge" wizard to the end
      (with setting database,...) and close with "Finish"
    * press the "Send Email Messages" button in the toolbar
    * in the "Email merged document" dialog, press the "Copy to..."
      button
    
    Change-Id: I7891befcc7e792b01be7a3758bb3d1f813fae357
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199869
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <[email protected]>

diff --git a/sw/uiconfig/swriter/ui/ccdialog.ui 
b/sw/uiconfig/swriter/ui/ccdialog.ui
index 2705ee6fc65b..0c449ecdddbd 100644
--- a/sw/uiconfig/swriter/ui/ccdialog.ui
+++ b/sw/uiconfig/swriter/ui/ccdialog.ui
@@ -1,32 +1,32 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.36.0 -->
+<!-- Generated with glade 3.40.0 -->
 <interface domain="sw">
   <requires lib="gtk+" version="3.24"/>
   <object class="GtkDialog" id="CCDialog">
-    <property name="can_focus">False</property>
-    <property name="border_width">6</property>
+    <property name="can-focus">False</property>
+    <property name="border-width">6</property>
     <property name="title" translatable="yes" context="ccdialog|CCDialog">Copy 
To</property>
     <property name="modal">True</property>
-    <property name="default_width">0</property>
-    <property name="default_height">0</property>
-    <property name="type_hint">dialog</property>
+    <property name="default-width">0</property>
+    <property name="default-height">0</property>
+    <property name="type-hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
-        <property name="can_focus">False</property>
+        <property name="can-focus">False</property>
         <property name="orientation">vertical</property>
         <property name="spacing">12</property>
         <child internal-child="action_area">
           <object class="GtkButtonBox" id="dialog-action_area1">
-            <property name="can_focus">False</property>
-            <property name="layout_style">end</property>
+            <property name="can-focus">False</property>
+            <property name="layout-style">end</property>
             <child>
               <object class="GtkButton" id="ok">
                 <property name="label" translatable="yes" 
context="stock">_OK</property>
                 <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="can_default">True</property>
-                <property name="has_default">True</property>
-                <property name="receives_default">True</property>
+                <property name="can-focus">True</property>
+                <property name="can-default">True</property>
+                <property name="has-default">True</property>
+                <property name="receives-default">True</property>
                 <property name="use-underline">True</property>
               </object>
               <packing>
@@ -39,8 +39,8 @@
               <object class="GtkButton" id="cancel">
                 <property name="label" translatable="yes" 
context="stock">_Cancel</property>
                 <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">True</property>
+                <property name="can-focus">True</property>
+                <property name="receives-default">True</property>
                 <property name="use-underline">True</property>
               </object>
               <packing>
@@ -53,8 +53,8 @@
               <object class="GtkButton" id="help">
                 <property name="label" translatable="yes" 
context="stock">_Help</property>
                 <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">True</property>
+                <property name="can-focus">True</property>
+                <property name="receives-default">True</property>
                 <property name="use-underline">True</property>
               </object>
               <packing>
@@ -68,80 +68,80 @@
           <packing>
             <property name="expand">False</property>
             <property name="fill">True</property>
-            <property name="pack_type">end</property>
+            <property name="pack-type">end</property>
             <property name="position">0</property>
           </packing>
         </child>
         <child>
           <object class="GtkFrame" id="frame1">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
+            <property name="can-focus">False</property>
             <property name="hexpand">True</property>
             <property name="vexpand">True</property>
-            <property name="label_xalign">0</property>
-            <property name="shadow_type">none</property>
+            <property name="label-xalign">0</property>
+            <property name="shadow-type">none</property>
             <child>
-              <!-- n-columns=1 n-rows=1 -->
+              <!-- n-columns=2 n-rows=3 -->
               <object class="GtkGrid" id="grid1">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="hexpand">True</property>
-                <property name="vexpand">True</property>
-                <property name="row_spacing">6</property>
-                <property name="column_spacing">12</property>
+                <property name="can-focus">False</property>
                 <property name="margin-start">12</property>
                 <property name="margin-top">6</property>
+                <property name="hexpand">True</property>
+                <property name="vexpand">True</property>
+                <property name="row-spacing">6</property>
+                <property name="column-spacing">12</property>
                 <child>
                   <object class="GtkLabel" id="label2">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="ccdialog|label2">_Cc:</property>
-                    <property name="use_underline">True</property>
-                    <property name="mnemonic_widget">cc</property>
+                    <property name="use-underline">True</property>
+                    <property name="mnemonic-widget">cc</property>
                     <property name="xalign">1</property>
                   </object>
                   <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">0</property>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">0</property>
                   </packing>
                 </child>
                 <child>
                   <object class="GtkLabel" id="label3">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="ccdialog|label3">_Bcc:</property>
-                    <property name="use_underline">True</property>
-                    <property name="mnemonic_widget">bcc</property>
+                    <property name="use-underline">True</property>
+                    <property name="mnemonic-widget">bcc</property>
                     <property name="xalign">1</property>
                   </object>
                   <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">1</property>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">1</property>
                   </packing>
                 </child>
                 <child>
                   <object class="GtkLabel" id="label4">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="ccdialog|label4">Note: Separate email addresses with a semicolon 
(;).</property>
-                    <property name="use_underline">True</property>
+                    <property name="use-underline">True</property>
                     <property name="xalign">0</property>
                     <attributes>
-                      <attribute name="scale" value="0.9"/>
+                      <attribute name="scale" value="0.90000000000000002"/>
                     </attributes>
                   </object>
                   <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">2</property>
+                    <property name="left-attach">0</property>
+                    <property name="top-attach">2</property>
                     <property name="width">2</property>
                   </packing>
                 </child>
                 <child>
                   <object class="GtkEntry" id="cc">
                     <property name="visible">True</property>
-                    <property name="can_focus">True</property>
+                    <property name="can-focus">True</property>
                     <property name="hexpand">True</property>
-                    <property name="activates_default">True</property>
+                    <property name="activates-default">True</property>
                     <property name="truncate-multiline">True</property>
                     <child internal-child="accessible">
                       <object class="AtkObject" id="cc-atkobject">
@@ -150,16 +150,16 @@
                     </child>
                   </object>
                   <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">0</property>
+                    <property name="left-attach">1</property>
+                    <property name="top-attach">0</property>
                   </packing>
                 </child>
                 <child>
                   <object class="GtkEntry" id="bcc">
                     <property name="visible">True</property>
-                    <property name="can_focus">True</property>
+                    <property name="can-focus">True</property>
                     <property name="hexpand">True</property>
-                    <property name="activates_default">True</property>
+                    <property name="activates-default">True</property>
                     <property name="truncate-multiline">True</property>
                     <child internal-child="accessible">
                       <object class="AtkObject" id="bcc-atkobject">
@@ -168,8 +168,8 @@
                     </child>
                   </object>
                   <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">1</property>
+                    <property name="left-attach">1</property>
+                    <property name="top-attach">1</property>
                   </packing>
                 </child>
               </object>
@@ -177,7 +177,7 @@
             <child type="label">
               <object class="GtkLabel" id="label1">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
+                <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="ccdialog|label1">Send a Copy of This Mail To...</property>
                 <attributes>
                   <attribute name="weight" value="bold"/>
@@ -198,8 +198,5 @@
       <action-widget response="-6">cancel</action-widget>
       <action-widget response="-11">help</action-widget>
     </action-widgets>
-    <child type="titlebar">
-      <placeholder/>
-    </child>
   </object>
 </interface>
commit b63cec2b7c9514c10d681e8c49d8fa06b280e771
Author:     Michael Weghorn <[email protected]>
AuthorDate: Fri Feb 20 15:00:06 2026 +0100
Commit:     Michael Weghorn <[email protected]>
CommitDate: Sat Feb 21 02:33:19 2026 +0100

    dbaccess: Make MessageType an enum class
    
    Change-Id: I8fdf5d7a82b863f7533cb426e4679ac7fab3f91b
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199868
    Reviewed-by: Michael Weghorn <[email protected]>
    Tested-by: Jenkins

diff --git a/dbaccess/source/ui/dlg/sqlmessage.cxx 
b/dbaccess/source/ui/dlg/sqlmessage.cxx
index da89d5f94fea..361d8dc8dbfc 100644
--- a/dbaccess/source/ui/dlg/sqlmessage.cxx
+++ b/dbaccess/source/ui/dlg/sqlmessage.cxx
@@ -489,14 +489,21 @@ void OSQLMessageBox::Construct(weld::Window* pParent, 
MessBoxStyle _nStyle, Mess
 {
     // init the image
     MessageType eType( _eImage );
-    if ( eType == AUTO )
+    if (eType == MessageType::AUTO)
     {
         switch ( m_pImpl->aDisplayInfo[0].eType )
         {
-        case SQLExceptionInfo::TYPE::SQLException: eType = Error;    break;
-        case SQLExceptionInfo::TYPE::SQLWarning:   eType = Warning;  break;
-        case SQLExceptionInfo::TYPE::SQLContext:   eType = Info;     break;
-        default: OSL_FAIL( "OSQLMessageBox::Construct: invalid type!" );
+            case SQLExceptionInfo::TYPE::SQLException:
+                eType = MessageType::Error;
+                break;
+            case SQLExceptionInfo::TYPE::SQLWarning:
+                eType = MessageType::Warning;
+                break;
+            case SQLExceptionInfo::TYPE::SQLContext:
+                eType = MessageType::Info;
+                break;
+            default:
+                OSL_FAIL("OSQLMessageBox::Construct: invalid type!");
         }
     }
     VclMessageType eMessageType;
@@ -505,16 +512,16 @@ void OSQLMessageBox::Construct(weld::Window* pParent, 
MessBoxStyle _nStyle, Mess
         default:
             OSL_FAIL( "OSQLMessageBox::impl_initImage: unsupported image 
type!" );
             [[fallthrough]];
-        case Info:
+        case MessageType::Info:
             eMessageType = VclMessageType::Info;
             break;
-        case Warning:
+        case MessageType::Warning:
             eMessageType = VclMessageType::Warning;
             break;
-        case Error:
+        case MessageType::Error:
             eMessageType = VclMessageType::Error;
             break;
-        case Query:
+        case MessageType::Query:
             eMessageType = VclMessageType::Question;
             break;
     }
@@ -533,7 +540,7 @@ OSQLMessageBox::OSQLMessageBox(weld::Window* pParent, const 
SQLExceptionInfo& rE
     : m_pImpl(new SQLMessageBox_Impl(rException))
     , m_sHelpURL(std::move(sHelpURL))
 {
-    Construct(pParent, nStyle, AUTO);
+    Construct(pParent, nStyle, MessageType::AUTO);
 }
 
 OSQLMessageBox::OSQLMessageBox(weld::Window* pParent, const OUString& rTitle, 
const OUString& rMessage, MessBoxStyle nStyle, MessageType eType, const 
::dbtools::SQLExceptionInfo* pAdditionalErrorInfo )
diff --git a/dbaccess/source/ui/inc/sqlmessage.hxx 
b/dbaccess/source/ui/inc/sqlmessage.hxx
index 6f065cf9cc66..9372190c4be3 100644
--- a/dbaccess/source/ui/inc/sqlmessage.hxx
+++ b/dbaccess/source/ui/inc/sqlmessage.hxx
@@ -29,7 +29,7 @@
 namespace dbaui
 {
 
-enum MessageType
+enum class MessageType
 {
     Info,
     Error,
@@ -91,12 +91,10 @@ public:
         @param  rMessage    the detailed message to display
         @param  _eType      determines the image to use. AUTO is disallowed in 
this constructor version
     */
-    OSQLMessageBox(weld::Window* pParent,
-                const OUString& rTitle,
-                const OUString& rMessage,
-                MessBoxStyle nStyle = MessBoxStyle::Ok | 
MessBoxStyle::DefaultOk,
-                MessageType _eType = Info,
-                const ::dbtools::SQLExceptionInfo* _pAdditionalErrorInfo = 
nullptr );
+    OSQLMessageBox(weld::Window* pParent, const OUString& rTitle, const 
OUString& rMessage,
+                   MessBoxStyle nStyle = MessBoxStyle::Ok | 
MessBoxStyle::DefaultOk,
+                   MessageType _eType = MessageType::Info,
+                   const ::dbtools::SQLExceptionInfo* _pAdditionalErrorInfo = 
nullptr);
 
     void set_title(const OUString& rTitle) { m_xDialog->set_title(rTitle); }
     void add_button(const OUString& rText, int nResponse, const OUString& 
rHelpId = {}) { m_xDialog->add_button(rText, nResponse, rHelpId); }

Reply via email to