[Libreoffice-commits] core.git: cui/source cui/uiconfig

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Tue Feb 5 16:44:12 UTC 2019


 cui/source/options/certpath.cxx |  161 ++++++++++++++--------------------
 cui/source/options/certpath.hxx |   37 +++----
 cui/source/options/optinet2.cxx |    7 -
 cui/source/options/optinet2.hxx |    2 
 cui/uiconfig/ui/certdialog.ui   |  188 ++++++++++++++++++++++------------------
 5 files changed, 197 insertions(+), 198 deletions(-)

New commits:
commit db9e1ef04d13ecc1b8f8f156b059173143ea03ea
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Tue Feb 5 12:38:02 2019 +0000
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Tue Feb 5 17:43:46 2019 +0100

    weld CertPathDialog
    
    Change-Id: I73c5aa3694d2580b707c2ce769e3e9ffbc076ec8
    Reviewed-on: https://gerrit.libreoffice.org/67406
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/cui/source/options/certpath.cxx b/cui/source/options/certpath.cxx
index e06981b3867f..4a83dad29b94 100644
--- a/cui/source/options/certpath.cxx
+++ b/cui/source/options/certpath.cxx
@@ -23,32 +23,32 @@
 
 using namespace ::com::sun::star;
 
-CertPathDialog::CertPathDialog(vcl::Window* pParent)
-    : ModalDialog(pParent, "CertDialog", "cui/ui/certdialog.ui")
+CertPathDialog::CertPathDialog(weld::Window* pParent)
+    : GenericDialogController(pParent, "cui/ui/certdialog.ui", "CertDialog")
+    , m_xAddBtn(m_xBuilder->weld_button("add"))
+    , m_xOKBtn(m_xBuilder->weld_button("ok"))
+    , m_xCertPathList(m_xBuilder->weld_tree_view("paths"))
+    , m_xAddDialogLabel(m_xBuilder->weld_label("certdir"))
+    , m_xManualLabel(m_xBuilder->weld_label("manual"))
 {
-    get(m_pOKBtn, "ok");
-    get(m_pAddBtn, "add");
-    get(m_pCertPathListContainer, "paths");
-    Size aSize(LogicToPixel(Size(210, 60), MapMode(MapUnit::MapAppFont)));
-    m_pCertPathListContainer->set_width_request(aSize.Width());
-    m_pCertPathListContainer->set_height_request(aSize.Height());
-    m_pCertPathList =
-        VclPtr<svx::SvxRadioButtonListBox>::Create(*m_pCertPathListContainer, 0);
-    m_sAddDialogText = get<FixedText>("certdir")->GetText();
-    m_sManual = get<FixedText>("manual")->GetText();
-
-    static long aStaticTabs[] = { 0, 15, 75 };
-    m_pCertPathList->SvSimpleTable::SetTabs( SAL_N_ELEMENTS(aStaticTabs), aStaticTabs );
-
-    OUString sProfile(get<FixedText>("profile")->GetText());
-    OUString sDirectory(get<FixedText>("dir")->GetText());
-    OUString sHeader = "\t" + sProfile + "\t" + sDirectory;
-
-    m_pCertPathList->InsertHeaderEntry( sHeader, HEADERBAR_APPEND, HeaderBarItemBits::LEFT );
-    m_pCertPathList->SetCheckButtonHdl( LINK( this, CertPathDialog, CheckHdl_Impl ) );
-
-    m_pAddBtn->SetClickHdl( LINK( this, CertPathDialog, AddHdl_Impl ) );
-    m_pOKBtn->SetClickHdl( LINK( this, CertPathDialog, OKHdl_Impl ) );
+    m_sAddDialogText = m_xAddDialogLabel->get_label();
+    m_sManual = m_xManualLabel->get_label();
+
+    m_xCertPathList->set_size_request(m_xCertPathList->get_approximate_digit_width() * 70,
+                                      m_xCertPathList->get_height_rows(6));
+
+    std::vector<int> aWidths;
+    aWidths.push_back(m_xCertPathList->get_approximate_digit_width() * 3 + 6);
+    aWidths.push_back(m_xCertPathList->get_approximate_digit_width() * 20);
+    m_xCertPathList->set_column_fixed_widths(aWidths);
+
+    std::vector<int> aRadioColumns;
+    aRadioColumns.push_back(0);
+    m_xCertPathList->set_toggle_columns_as_radio(aRadioColumns);
+
+    m_xCertPathList->connect_toggled(LINK(this, CertPathDialog, CheckHdl_Impl));
+    m_xAddBtn->connect_clicked( LINK( this, CertPathDialog, AddHdl_Impl ) );
+    m_xOKBtn->connect_clicked( LINK( this, CertPathDialog, OKHdl_Impl ) );
 
     try
     {
@@ -69,12 +69,15 @@ CertPathDialog::CertPathDialog(vcl::Window* pParent)
 
             if (!profile.isEmpty())
             {
+                m_xCertPathList->insert(nullptr, -1, nullptr, nullptr, nullptr,
+                                        nullptr, nullptr, false);
+                const int nRow = m_xCertPathList->n_children() - 1;
+                m_xCertPathList->set_toggle(nRow, false, 0);
+                OUString sEntry = OUString::createFromAscii(productNames[i]) + ":" + profile;
+                m_xCertPathList->set_text(nRow, sEntry, 1);
                 OUString sProfilePath = xMozillaBootstrap->getProfilePath( productTypes[i], profile );
-                OUString sEntry = "\t" + OUString::createFromAscii(productNames[i]) + ":" + profile
-                                + "\t" + sProfilePath;
-                SvTreeListEntry *pEntry = m_pCertPathList->InsertEntry(sEntry);
-                OUString* pCertPath = new OUString(sProfilePath);
-                pEntry->SetUserData(pCertPath);
+                m_xCertPathList->set_text(nRow, sProfilePath, 2);
+                m_xCertPathList->set_id(nRow, sProfilePath);
             }
         }
     }
@@ -82,13 +85,6 @@ CertPathDialog::CertPathDialog(vcl::Window* pParent)
     {
     }
 
-    SvTreeListEntry *pEntry = m_pCertPathList->GetEntry(0);
-    if (pEntry)
-    {
-        m_pCertPathList->SetCheckButtonState(pEntry, SvButtonState::Checked);
-        HandleCheckEntry(pEntry);
-    }
-
     try
     {
         OUString sUserSetCertPath =
@@ -105,9 +101,15 @@ CertPathDialog::CertPathDialog(vcl::Window* pParent)
     const char* pEnv = getenv("MOZILLA_CERTIFICATE_FOLDER");
     if (pEnv)
         AddCertPath("$MOZILLA_CERTIFICATE_FOLDER", OUString(pEnv, strlen(pEnv), osl_getThreadTextEncoding()));
+
+    if (m_xCertPathList->n_children())
+    {
+        m_xCertPathList->set_toggle(0, true, 0);
+        HandleEntryChecked(0);
+    }
 }
 
-IMPL_LINK_NOARG(CertPathDialog, OKHdl_Impl, Button*, void)
+IMPL_LINK_NOARG(CertPathDialog, OKHdl_Impl, weld::Button&, void)
 {
     try
     {
@@ -122,90 +124,67 @@ IMPL_LINK_NOARG(CertPathDialog, OKHdl_Impl, Button*, void)
         SAL_WARN("cui.options", "CertPathDialog::OKHdl_Impl(): " << e);
     }
 
-    EndDialog(RET_OK);
+    m_xDialog->response(RET_OK);
 }
 
 OUString CertPathDialog::getDirectory() const
 {
-    SvTreeListEntry* pEntry = m_pCertPathList->FirstSelected();
-    void* pCertPath = pEntry ? pEntry->GetUserData() : nullptr;
-    return pCertPath ? *static_cast<OUString*>(pCertPath) : OUString();
+    int nEntry = m_xCertPathList->get_selected_index();
+    if (nEntry == -1)
+        return OUString();
+    return m_xCertPathList->get_id(nEntry);
 }
 
 CertPathDialog::~CertPathDialog()
 {
-    disposeOnce();
-}
-
-void CertPathDialog::dispose()
-{
-    SvTreeListEntry* pEntry = m_pCertPathList->First();
-    while (pEntry)
-    {
-        OUString* pCertPath = static_cast<OUString*>(pEntry->GetUserData());
-        delete pCertPath;
-        pEntry = m_pCertPathList->Next( pEntry );
-    }
-    m_pCertPathList.disposeAndClear();
-    m_pCertPathListContainer.clear();
-    m_pAddBtn.clear();
-    m_pOKBtn.clear();
-    ModalDialog::dispose();
 }
 
-IMPL_LINK( CertPathDialog, CheckHdl_Impl, SvTreeListBox*, pList, void )
+IMPL_LINK(CertPathDialog, CheckHdl_Impl, const row_col&, rRowCol, void)
 {
-    SvTreeListEntry* pEntry = pList ? m_pCertPathList->GetEntry(m_pCertPathList->GetCurMousePoint())
-                                : m_pCertPathList->FirstSelected();
-    if (pEntry)
-        m_pCertPathList->HandleEntryChecked(pEntry);
+    HandleEntryChecked(rRowCol.first);
 }
 
-void CertPathDialog::HandleCheckEntry( SvTreeListEntry* _pEntry )
+void CertPathDialog::HandleEntryChecked(int nRow)
 {
-    m_pCertPathList->Select( _pEntry );
-    SvButtonState eState = m_pCertPathList->GetCheckButtonState( _pEntry );
-
-    if (SvButtonState::Checked == eState)
+    m_xCertPathList->select(nRow);
+    bool bChecked = m_xCertPathList->get_toggle(nRow, 0);
+    if (bChecked)
     {
-        // uncheck the other entries
-        SvTreeListEntry* pEntry = m_pCertPathList->First();
-        while (pEntry)
+        // we have radio button behavior -> so uncheck the other entries
+        int nCount = m_xCertPathList->n_children();
+        for (int i = 0; i < nCount; ++i)
         {
-            if (pEntry != _pEntry)
-                m_pCertPathList->SetCheckButtonState(pEntry, SvButtonState::Unchecked);
-            pEntry = m_pCertPathList->Next(pEntry);
+            if (i != nRow)
+                m_xCertPathList->set_toggle(i, false, 0);
         }
     }
-    else
-        m_pCertPathList->SetCheckButtonState(_pEntry, SvButtonState::Checked);
 }
 
 void CertPathDialog::AddCertPath(const OUString &rProfile, const OUString &rPath)
 {
-    SvTreeListEntry* pEntry = m_pCertPathList->First();
-    while (pEntry)
+    for (int i = 0, nCount = m_xCertPathList->n_children(); i < nCount; ++i)
     {
-        OUString* pCertPath = static_cast<OUString*>(pEntry->GetUserData());
+        OUString sCertPath = m_xCertPathList->get_id(i);
         //already exists, just select the original one
-        if (*pCertPath == rPath)
+        if (sCertPath == rPath)
         {
-            m_pCertPathList->SetCheckButtonState(pEntry, SvButtonState::Checked);
-            HandleCheckEntry(pEntry);
+            m_xCertPathList->set_toggle(i, true, 0);
+            HandleEntryChecked(i);
             return;
         }
-        pEntry = m_pCertPathList->Next(pEntry);
     }
 
-    OUString sEntry( "\t" + rProfile + "\t" + rPath );
-    pEntry = m_pCertPathList->InsertEntry(sEntry);
-    OUString* pCertPath = new OUString(rPath);
-    pEntry->SetUserData(pCertPath);
-    m_pCertPathList->SetCheckButtonState(pEntry, SvButtonState::Checked);
-    HandleCheckEntry(pEntry);
+    m_xCertPathList->insert(nullptr, -1, nullptr, nullptr, nullptr,
+                            nullptr, nullptr, false);
+    const int nRow = m_xCertPathList->n_children() - 1;
+    m_xCertPathList->set_toggle(nRow, true, 0);
+    m_xCertPathList->set_text(nRow, rProfile, 1);
+    m_xCertPathList->set_text(nRow, rPath, 2);
+    m_xCertPathList->set_id(nRow, rPath);
+    HandleEntryChecked(nRow);
 }
 
-IMPL_LINK_NOARG(CertPathDialog, AddHdl_Impl, Button*, void)
+IMPL_LINK_NOARG(CertPathDialog, AddHdl_Impl, weld::Button&, void)
 {
     try
     {
diff --git a/cui/source/options/certpath.hxx b/cui/source/options/certpath.hxx
index ff373df5a996..c55f0c9000ab 100644
--- a/cui/source/options/certpath.hxx
+++ b/cui/source/options/certpath.hxx
@@ -10,32 +10,29 @@
 #ifndef INCLUDED_CUI_SOURCE_OPTIONS_CERTPATH_HXX
 #define INCLUDED_CUI_SOURCE_OPTIONS_CERTPATH_HXX
 
-#include <sfx2/basedlgs.hxx>
-#include <svtools/simptabl.hxx>
-#include <vcl/button.hxx>
-#include <vcl/fixed.hxx>
-#include <radiobtnbox.hxx>
+#include <vcl/weld.hxx>
 
-class CertPathDialog : public ModalDialog
+class CertPathDialog : public weld::GenericDialogController
 {
 private:
-    VclPtr<SvSimpleTableContainer> m_pCertPathListContainer;
-    VclPtr<svx::SvxRadioButtonListBox> m_pCertPathList;
-    VclPtr<PushButton> m_pAddBtn;
-    VclPtr<OKButton>   m_pOKBtn;
-    OUString    m_sAddDialogText;
-    OUString    m_sManual;
-
-    DECL_LINK(CheckHdl_Impl, SvTreeListBox*, void);
-    DECL_LINK(AddHdl_Impl, Button*, void);
-    DECL_LINK(OKHdl_Impl, Button*, void);
-
-    void HandleCheckEntry(SvTreeListEntry* _pEntry);
+    std::unique_ptr<weld::Button> m_xAddBtn;
+    std::unique_ptr<weld::Button> m_xOKBtn;
+    std::unique_ptr<weld::TreeView> m_xCertPathList;
+    std::unique_ptr<weld::Label> m_xAddDialogLabel;
+    std::unique_ptr<weld::Label> m_xManualLabel;
+    OUString m_sAddDialogText;
+    OUString m_sManual;
+
+    typedef std::pair<int, int> row_col;
+    DECL_LINK(CheckHdl_Impl, const row_col&, void);
+    DECL_LINK(AddHdl_Impl, weld::Button&, void);
+    DECL_LINK(OKHdl_Impl, weld::Button&, void);
+
+    void HandleEntryChecked(int nRow);
     void AddCertPath(const OUString &rProfile, const OUString &rPath);
 public:
-    explicit CertPathDialog(vcl::Window* pParent);
+    explicit CertPathDialog(weld::Window* pParent);
     virtual ~CertPathDialog() override;
-    virtual void dispose() override;
 
     OUString getDirectory() const;
 };
diff --git a/cui/source/options/optinet2.cxx b/cui/source/options/optinet2.cxx
index f4fa1ffb3594..c269d87fdda5 100644
--- a/cui/source/options/optinet2.cxx
+++ b/cui/source/options/optinet2.cxx
@@ -575,7 +575,6 @@ IMPL_STATIC_LINK( SvxProxyTabPage, LoseFocusHdl_Impl, Control&, rControl, void )
 SvxSecurityTabPage::SvxSecurityTabPage(vcl::Window* pParent, const SfxItemSet& rSet)
     : SfxTabPage(pParent, "OptSecurityPage", "cui/ui/optsecuritypage.ui", &rSet)
     , mpSecOptions(new SvtSecurityOptions)
-    , mpCertPathDlg(nullptr)
 {
     get(m_pSecurityOptionsPB, "options");
     get(m_pSavePasswordsCB, "savepassword");
@@ -624,7 +623,7 @@ SvxSecurityTabPage::~SvxSecurityTabPage()
 void SvxSecurityTabPage::dispose()
 {
     mpSecOptions.reset();
-    mpCertPathDlg.disposeAndClear();
+    mpCertPathDlg.reset();
     m_xSecOptDlg.reset();
     m_pSecurityOptionsPB.clear();
     m_pSavePasswordsCB.clear();
@@ -796,10 +795,10 @@ IMPL_LINK_NOARG(SvxSecurityTabPage, ShowPasswordsHdl, Button*, void)
 IMPL_LINK_NOARG(SvxSecurityTabPage, CertPathPBHdl, Button*, void)
 {
     if (!mpCertPathDlg)
-        mpCertPathDlg = VclPtr<CertPathDialog>::Create(this);
+        mpCertPathDlg.reset(new CertPathDialog(GetDialogFrameWeld()));
 
     OUString sOrig = mpCertPathDlg->getDirectory();
-    short nRet = mpCertPathDlg->Execute();
+    short nRet = mpCertPathDlg->run();
 
     if (nRet == RET_OK && sOrig != mpCertPathDlg->getDirectory())
     {
diff --git a/cui/source/options/optinet2.hxx b/cui/source/options/optinet2.hxx
index 546560f29c50..a5334c157052 100644
--- a/cui/source/options/optinet2.hxx
+++ b/cui/source/options/optinet2.hxx
@@ -129,7 +129,7 @@ private:
     std::unique_ptr<SvtSecurityOptions>         mpSecOptions;
     std::unique_ptr<svx::SecurityOptionsDialog> m_xSecOptDlg;
 
-    VclPtr<CertPathDialog> mpCertPathDlg;
+    std::unique_ptr<CertPathDialog> mpCertPathDlg;
 
     OUString            m_sPasswordStoringDeactivateStr;
 
diff --git a/cui/uiconfig/ui/certdialog.ui b/cui/uiconfig/ui/certdialog.ui
index 6415f9b2d735..8a90f1d32862 100644
--- a/cui/uiconfig/ui/certdialog.ui
+++ b/cui/uiconfig/ui/certdialog.ui
@@ -1,31 +1,50 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.16.1 -->
+<!-- Generated with glade 3.22.1 -->
 <interface domain="cui">
   <requires lib="gtk+" version="3.18"/>
-  <requires lib="LibreOffice" version="1.0"/>
+  <object class="GtkTreeStore" id="liststore1">
+    <columns>
+      <!-- column-name check1 -->
+      <column type="gboolean"/>
+      <!-- column-name text -->
+      <column type="gchararray"/>
+      <!-- column-name text2 -->
+      <column type="gchararray"/>
+      <!-- column-name id -->
+      <column type="gchararray"/>
+      <!-- column-name checkvis1 -->
+      <column type="gboolean"/>
+    </columns>
+  </object>
   <object class="GtkDialog" id="CertDialog">
     <property name="can_focus">False</property>
     <property name="border_width">6</property>
     <property name="title" translatable="yes" context="certdialog|CertDialog">Certificate Path</property>
+    <property name="modal">True</property>
+    <property name="default_width">0</property>
     <property name="type_hint">normal</property>
+    <property name="skip_pager_hint">True</property>
+    <child>
+      <placeholder/>
+    </child>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
         <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">
+          <object class="GtkButtonBox">
             <property name="can_focus">False</property>
             <property name="layout_style">end</property>
             <child>
-              <object class="GtkButton" id="ok">
-                <property name="label">gtk-ok</property>
+              <object class="GtkButton" id="add">
+                <property name="label" translatable="yes" context="certdialog|add">_Add...</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="use_stock">True</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -48,6 +67,22 @@
               </packing>
             </child>
             <child>
+              <object class="GtkButton" id="ok">
+                <property name="label">gtk-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="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+            <child>
               <object class="GtkButton" id="help">
                 <property name="label">gtk-help</property>
                 <property name="visible">True</property>
@@ -58,40 +93,13 @@
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">True</property>
-                <property name="position">0</property>
+                <property name="position">3</property>
                 <property name="secondary">True</property>
               </packing>
             </child>
           </object>
           <packing>
             <property name="expand">False</property>
-            <property name="fill">True</property>
-            <property name="pack_type">end</property>
-            <property name="position">0</property>
-          </packing>
-        </child>
-        <child internal-child="action_area">
-          <object class="GtkButtonBox" >
-            <property name="can_focus">False</property>
-            <child>
-                  <object class="GtkButton" id="add">
-                    <property name="label" translatable="yes" context="certdialog|add">_Add...</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="use_underline">True</property>
-                  </object>
-                  <packing>
-                    <property name="expand">False</property>
-                    <property name="fill">False</property>
-                    <property name="position">0</property>
-                  </packing>
-            </child>
-          </object>
-          <packing>
-            <property name="expand">False</property>
             <property name="fill">False</property>
             <property name="pack_type">end</property>
             <property name="position">3</property>
@@ -124,19 +132,18 @@
                       <object class="GtkLabel" id="label2">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
-                        <property name="yalign">0</property>
                         <property name="label" translatable="yes" context="certdialog|label2">Select or add the correct Network Security Services Certificate directory to use for digital signatures:</property>
                         <property name="use_underline">True</property>
                         <property name="wrap">True</property>
                         <property name="mnemonic_widget">paths</property>
+                        <property name="width_chars">60</property>
                         <property name="max_width_chars">60</property>
+                        <property name="xalign">0</property>
+                        <property name="yalign">0</property>
                       </object>
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -153,36 +160,6 @@
                           <packing>
                             <property name="left_attach">0</property>
                             <property name="top_attach">0</property>
-                            <property name="width">1</property>
-                            <property name="height">1</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="profile">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="label" translatable="yes" context="certdialog|profile">Profile</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="top_attach">0</property>
-                            <property name="width">1</property>
-                            <property name="height">1</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="dir">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="label" translatable="yes" context="certdialog|dir">Directory</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">2</property>
-                            <property name="top_attach">0</property>
-                            <property name="width">1</property>
-                            <property name="height">1</property>
                           </packing>
                         </child>
                         <child>
@@ -192,36 +169,83 @@
                             <property name="label" translatable="yes" context="certdialog|certdir">Select a Certificate directory</property>
                           </object>
                           <packing>
-                            <property name="left_attach">0</property>
-                            <property name="top_attach">1</property>
-                            <property name="width">3</property>
-                            <property name="height">1</property>
+                            <property name="left_attach">1</property>
+                            <property name="top_attach">0</property>
                           </packing>
                         </child>
                       </object>
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
-                      <object class="svtlo-SvSimpleTableContainer" id="paths">
+                      <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="search_column">0</property>
-                        <child internal-child="selection">
-                          <object class="GtkTreeSelection" id="Simple Table Container-selection3"/>
+                        <property name="shadow_type">in</property>
+                        <child>
+                          <object class="GtkTreeView" id="paths">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">True</property>
+                            <property name="vexpand">True</property>
+                            <property name="model">liststore1</property>
+                            <property name="search_column">0</property>
+                            <property name="show_expanders">False</property>
+                            <child internal-child="selection">
+                              <object class="GtkTreeSelection" id="Macro Library List-selection2"/>
+                            </child>
+                            <child>
+                              <object class="GtkTreeViewColumn" id="treeviewcolumn4">
+                                <property name="resizable">True</property>
+                                <property name="spacing">6</property>
+                                <property name="alignment">0.5</property>
+                                <child>
+                                  <object class="GtkCellRendererToggle" id="cellrenderer5">
+                                    <property name="radio">True</property>
+                                  </object>
+                                  <attributes>
+                                    <attribute name="visible">4</attribute>
+                                    <attribute name="active">0</attribute>
+                                  </attributes>
+                                </child>
+                              </object>
+                            </child>
+                            <child>
+                              <object class="GtkTreeViewColumn" id="treeviewcolumn5">
+                                <property name="resizable">True</property>
+                                <property name="spacing">6</property>
+                                <property name="title" translatable="yes" context="certdialog|profile">Profile</property>
+                                <child>
+                                  <object class="GtkCellRendererText" id="cellrenderer4"/>
+                                  <attributes>
+                                    <attribute name="text">1</attribute>
+                                  </attributes>
+                                </child>
+                              </object>
+                            </child>
+                            <child>
+                              <object class="GtkTreeViewColumn" id="treeviewcolumn1">
+                                <property name="resizable">True</property>
+                                <property name="spacing">6</property>
+                                <property name="title" translatable="yes" context="certdialog|dir">Directory</property>
+                                <child>
+                                  <object class="GtkCellRendererText" id="cellrenderer1"/>
+                                  <attributes>
+                                    <attribute name="text">2</attribute>
+                                  </attributes>
+                                </child>
+                              </object>
+                            </child>
+                          </object>
                         </child>
                       </object>
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">2</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                   </object>
@@ -248,10 +272,10 @@
       </object>
     </child>
     <action-widgets>
-      <action-widget response="-5">ok</action-widget>
+      <action-widget response="101">add</action-widget>
       <action-widget response="-6">cancel</action-widget>
+      <action-widget response="-5">ok</action-widget>
       <action-widget response="-11">help</action-widget>
-      <action-widget response="0">add</action-widget>
     </action-widgets>
   </object>
 </interface>


More information about the Libreoffice-commits mailing list