officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu |    8 
 sc/Library_sc.mk                                                  |    1 
 sc/UIConfig_scalc.mk                                              |    1 
 sc/inc/SheetView.hxx                                              |    7 
 sc/inc/SheetViewManager.hxx                                       |    3 
 sc/inc/sc.hrc                                                     |    1 
 sc/sdi/scalc.sdi                                                  |   18 +
 sc/sdi/tabvwsh.sdi                                                |    1 
 sc/source/core/data/SheetView.cxx                                 |    3 
 sc/source/core/data/SheetViewManager.cxx                          |    8 
 sc/source/ui/dialogs/SelectSheetViewDialog.cxx                    |   92 +++++
 sc/source/ui/inc/dialogs/SelectSheetViewDialog.hxx                |   42 ++
 sc/source/ui/inc/viewfunc.hxx                                     |    1 
 sc/source/ui/view/tabvwsh3.cxx                                    |   18 +
 sc/source/ui/view/tabvwsha.cxx                                    |    1 
 sc/source/ui/view/viewfun3.cxx                                    |   28 -
 sc/uiconfig/scalc/ui/selectsheetviewdialog.ui                     |  161 
++++++++++
 vcl/jsdialog/enabled.cxx                                          |    3 
 18 files changed, 380 insertions(+), 17 deletions(-)

New commits:
commit 3b0ea28e061f9335b907ae8febfadf8fc04c599b
Author:     Tomaž Vajngerl <[email protected]>
AuthorDate: Mon Oct 6 23:49:50 2025 +0900
Commit:     Tomaž Vajngerl <[email protected]>
CommitDate: Fri Oct 10 14:00:06 2025 +0200

    sc: add a SelectSheetView command to select a sheet view
    
    This adds a command that opens a dialog to show all the available
    sheet views for the current sheet. Selecting a sheet view will
    switch to that sheet view (or default view) on OK.
    
    This also adds name as a parameter to SheetView class, so we can
    store a name of the sheet view. The name is currently generated
    and is in a format of "Temp SheetView #".
    
    Change-Id: I11accc30780991f74da97120bb4085ef283a0564
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191978
    Reviewed-by: Miklos Vajna <[email protected]>
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192149
    Tested-by: Jenkins
    Reviewed-by: Tomaž Vajngerl <[email protected]>

diff --git a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu 
b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
index a9d1175b75c4..3dcb94e9369e 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
@@ -2725,6 +2725,14 @@
           <value>1</value>
         </prop>
       </node>
+      <node oor:name=".uno:SelectSheetView" oor:op="replace">
+        <prop oor:name="Label" oor:type="xs:string">
+          <value xml:lang="en-US">Select Sheet View</value>
+        </prop>
+        <prop oor:name="Properties" oor:type="xs:int">
+          <value>1</value>
+        </prop>
+      </node>
       <node oor:name=".uno:ExitSheetView" oor:op="replace">
         <prop oor:name="Label" oor:type="xs:string">
           <value xml:lang="en-US">Exit Sheet View</value>
diff --git a/sc/Library_sc.mk b/sc/Library_sc.mk
index 724c24b1de00..7a4c6a34cc14 100644
--- a/sc/Library_sc.mk
+++ b/sc/Library_sc.mk
@@ -435,6 +435,7 @@ $(eval $(call gb_Library_add_exception_objects,sc,\
     sc/source/ui/dbgui/sfiltdlg \
     sc/source/ui/dbgui/validate \
     sc/source/ui/dialogs/searchresults \
+    sc/source/ui/dialogs/SelectSheetViewDialog \
     sc/source/ui/dialogs/SparklineDialog \
     sc/source/ui/dialogs/SparklineDataRangeDialog \
     sc/source/ui/docshell/arealink \
diff --git a/sc/UIConfig_scalc.mk b/sc/UIConfig_scalc.mk
index 84ff69d9bc3e..6b4026af9734 100644
--- a/sc/UIConfig_scalc.mk
+++ b/sc/UIConfig_scalc.mk
@@ -228,6 +228,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/scalc,\
        sc/uiconfig/scalc/ui/searchresults \
        sc/uiconfig/scalc/ui/selectdatasource \
        sc/uiconfig/scalc/ui/selectrange \
+       sc/uiconfig/scalc/ui/selectsheetviewdialog \
        sc/uiconfig/scalc/ui/selectsource \
        sc/uiconfig/scalc/ui/sheetprintpage \
        sc/uiconfig/scalc/ui/sharedocumentdlg \
diff --git a/sc/inc/SheetView.hxx b/sc/inc/SheetView.hxx
index 4411f56b7b1d..4f4e2258004f 100644
--- a/sc/inc/SheetView.hxx
+++ b/sc/inc/SheetView.hxx
@@ -8,7 +8,9 @@
  */
 
 #pragma once
+
 #include "types.hxx"
+#include <rtl/ustring.hxx>
 
 class ScTable;
 
@@ -24,13 +26,16 @@ class SheetView
 private:
     ScTable* mpTable = nullptr;
     bool mbSynced = true;
+    OUString maName;
 
 public:
-    SheetView(ScTable* pTable);
+    SheetView(ScTable* pTable, OUString const& rName);
 
     ScTable* getTablePointer() const;
     SCTAB getTableNumber() const;
 
+    OUString const& GetName() { return maName; }
+
     /** A sheet view is valid if the pointer to the table is set */
     bool isValid() const;
 
diff --git a/sc/inc/SheetViewManager.hxx b/sc/inc/SheetViewManager.hxx
index b8562c568eeb..3687197d3619 100644
--- a/sc/inc/SheetViewManager.hxx
+++ b/sc/inc/SheetViewManager.hxx
@@ -26,12 +26,15 @@ class SC_DLLPUBLIC SheetViewManager
 {
 private:
     std::vector<std::shared_ptr<SheetView>> maViews;
+    sal_Int32 maNameCounter = 0;
 
     bool isValidSheetViewID(SheetViewID nID) const
     {
         return nID >= 0 && o3tl::make_unsigned(nID) < maViews.size();
     }
 
+    OUString generateName();
+
 public:
     SheetViewManager();
 
diff --git a/sc/inc/sc.hrc b/sc/inc/sc.hrc
index cd2e11463981..51e78553ae2b 100644
--- a/sc/inc/sc.hrc
+++ b/sc/inc/sc.hrc
@@ -290,6 +290,7 @@ class SvxZoomSliderItem;
 #define FID_SWITCH_TO_NEXT_SHEET_VIEW     (VIEW_MENU_START + 13)
 #define FID_SWITCH_TO_PREVIOUS_SHEET_VIEW (VIEW_MENU_START + 14)
 #define FID_EXIT_SHEET_VIEW     (VIEW_MENU_START + 15)
+#define FID_SELECT_SHEET_VIEW   (VIEW_MENU_START + 16)
 
 #define FID_CHG_ACCEPT          (VIEW_MENU_START + 18)// DANGER DIRTY ID
 #define FID_CHG_COMMENT         (VIEW_MENU_START + 19)// DANGER DIRTY ID
diff --git a/sc/sdi/scalc.sdi b/sc/sdi/scalc.sdi
index e05cfa78c43b..ebab09fef7fc 100644
--- a/sc/sdi/scalc.sdi
+++ b/sc/sdi/scalc.sdi
@@ -6121,6 +6121,24 @@ SfxBoolItem SwitchToPreviousSheetView 
FID_SWITCH_TO_PREVIOUS_SHEET_VIEW
     GroupId = SfxGroupId::View
 ]
 
+SfxBoolItem SelectSheetView FID_SELECT_SHEET_VIEW
+[
+    /* flags */
+    AutoUpdate = FALSE,
+    FastCall = FALSE,
+    ReadOnlyDoc = TRUE,
+    Toggle = FALSE,
+    Container = FALSE,
+    RecordAbsolute = FALSE,
+    RecordPerSet;
+
+    /* config */
+    AccelConfig = TRUE,
+    MenuConfig = FALSE,
+    ToolBoxConfig = FALSE,
+    GroupId = SfxGroupId::View
+]
+
 SfxBoolItem ExitSheetView FID_EXIT_SHEET_VIEW
 [
     /* flags */
diff --git a/sc/sdi/tabvwsh.sdi b/sc/sdi/tabvwsh.sdi
index e3bb2dfedbcb..753e606b8bec 100644
--- a/sc/sdi/tabvwsh.sdi
+++ b/sc/sdi/tabvwsh.sdi
@@ -212,6 +212,7 @@ interface TableEditView
     FID_SWITCH_TO_NEXT_SHEET_VIEW [ ExecMethod = Execute; StateMethod = 
GetState; ]
     FID_SWITCH_TO_PREVIOUS_SHEET_VIEW [ ExecMethod = Execute; StateMethod = 
GetState; ]
     FID_EXIT_SHEET_VIEW [ ExecMethod = Execute; StateMethod = GetState; ]
+    FID_SELECT_SHEET_VIEW [ ExecMethod = Execute; StateMethod = GetState; ]
     FID_NORMALVIEWMODE  [ ExecMethod = Execute; StateMethod = GetState; ]
     FID_PAGEBREAKMODE   [ ExecMethod = Execute; StateMethod = GetState; ]
     SID_REPAINT         [ ExecMethod = Execute; StateMethod = GetState; ]
diff --git a/sc/source/core/data/SheetView.cxx 
b/sc/source/core/data/SheetView.cxx
index a445b0380c63..0c51d5ea6678 100644
--- a/sc/source/core/data/SheetView.cxx
+++ b/sc/source/core/data/SheetView.cxx
@@ -12,8 +12,9 @@
 
 namespace sc
 {
-SheetView::SheetView(ScTable* pTable)
+SheetView::SheetView(ScTable* pTable, OUString const& rName)
     : mpTable(pTable)
+    , maName(rName)
 {
 }
 
diff --git a/sc/source/core/data/SheetViewManager.cxx 
b/sc/source/core/data/SheetViewManager.cxx
index ca8cbd38b169..3ffed7b9f9e1 100644
--- a/sc/source/core/data/SheetViewManager.cxx
+++ b/sc/source/core/data/SheetViewManager.cxx
@@ -17,7 +17,7 @@ SheetViewManager::SheetViewManager() {}
 SheetViewID SheetViewManager::create(ScTable* pSheetViewTable)
 {
     SheetViewID nID(maViews.size());
-    maViews.emplace_back(std::make_shared<SheetView>(pSheetViewTable));
+    maViews.emplace_back(std::make_shared<SheetView>(pSheetViewTable, 
generateName()));
     return nID;
 }
 
@@ -116,6 +116,12 @@ void SheetViewManager::unsyncAllSheetViews()
         pSheetView->unsync();
     }
 }
+
+OUString SheetViewManager::generateName()
+{
+    maNameCounter++;
+    return u"Temp SheetView " + OUString::number(maNameCounter);
+}
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/ui/dialogs/SelectSheetViewDialog.cxx 
b/sc/source/ui/dialogs/SelectSheetViewDialog.cxx
new file mode 100644
index 000000000000..10595a6dd0de
--- /dev/null
+++ b/sc/source/ui/dialogs/SelectSheetViewDialog.cxx
@@ -0,0 +1,92 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include <dialogs/SelectSheetViewDialog.hxx>
+#include <sal/config.h>
+#include <o3tl/safeint.hxx>
+#include <memory>
+
+#include <viewdata.hxx>
+#include <SheetViewManager.hxx>
+
+namespace sc
+{
+class SheetViewListEntry
+{
+    std::shared_ptr<SheetView> mpSheetView;
+    sc::SheetViewID mnSheetViewID = sc::InvalidSheetViewID;
+
+public:
+    SheetViewListEntry(std::shared_ptr<SheetView> const& pSheetView, 
sc::SheetViewID nSheetViewID)
+        : mpSheetView(pSheetView)
+        , mnSheetViewID(nSheetViewID)
+    {
+    }
+
+    OUString getName() const { return mpSheetView->GetName(); }
+    sc::SheetViewID getSheetViewID() const { return mnSheetViewID; }
+};
+
+SelectSheetViewDialog::SelectSheetViewDialog(weld::Window* pParent, 
ScViewData& rViewData)
+    : GenericDialogController(pParent, 
u"modules/scalc/ui/selectsheetviewdialog.ui"_ustr,
+                              u"SelectSheetViewDialog"_ustr)
+    , mrViewData(rViewData)
+    , m_xEntryTree(m_xBuilder->weld_tree_view(u"entry-list"_ustr))
+{
+    m_xEntryTree->connect_selection_changed(LINK(this, SelectSheetViewDialog, 
NameModifyHdl));
+
+    ScDocument& rDocument = mrViewData.GetDocument();
+
+    auto pSheetManager = 
rDocument.GetSheetViewManager(mrViewData.GetTabNumber());
+
+    m_xEntryTree->freeze();
+    m_xEntryTree->clear();
+
+    OUString sActiveID = u"-1"_ustr;
+    m_xEntryTree->append(u"-1"_ustr, u"Default View"_ustr);
+
+    sc::SheetViewID nSheetViewID = 0;
+
+    for (auto const& pSheetView : pSheetManager->getSheetViews())
+    {
+        if (pSheetView)
+        {
+            auto& aEntry = m_aEntries.emplace_back(pSheetView, nSheetViewID);
+            OUString sID = OUString::number(m_aEntries.size() - 1);
+            if (nSheetViewID == mrViewData.GetSheetViewID())
+                sActiveID = sID;
+            m_xEntryTree->append(sID, aEntry.getName());
+        }
+        nSheetViewID++;
+    }
+    m_xEntryTree->thaw();
+
+    m_xEntryTree->select_id(sActiveID);
+}
+
+SelectSheetViewDialog::~SelectSheetViewDialog() {}
+
+IMPL_LINK_NOARG(SelectSheetViewDialog, NameModifyHdl, weld::TreeView&, void)
+{
+    m_nCurrentIndex = m_xEntryTree->get_selected_id().toInt32();
+}
+
+sc::SheetViewID SelectSheetViewDialog::getSelectedSheetViewID() const
+{
+    if (m_nCurrentIndex == sc::DefaultSheetViewID)
+        return sc::DefaultSheetViewID;
+
+    if (m_nCurrentIndex < 0 || o3tl::make_unsigned(m_nCurrentIndex) >= 
m_aEntries.size())
+        return sc::InvalidSheetViewID;
+
+    return m_aEntries[m_nCurrentIndex].getSheetViewID();
+}
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/ui/inc/dialogs/SelectSheetViewDialog.hxx 
b/sc/source/ui/inc/dialogs/SelectSheetViewDialog.hxx
new file mode 100644
index 000000000000..c9a8eecebb09
--- /dev/null
+++ b/sc/source/ui/inc/dialogs/SelectSheetViewDialog.hxx
@@ -0,0 +1,42 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#pragma once
+
+#include <vector>
+#include <sal/types.h>
+#include <vcl/weld.hxx>
+#include <SheetViewTypes.hxx>
+
+class ScViewData;
+class ScDocument;
+
+namespace sc
+{
+class SheetViewListEntry;
+
+/** Dialog to show all sheet views and allows to select one to be used */
+class SelectSheetViewDialog : public weld::GenericDialogController
+{
+    ScViewData& mrViewData;
+    std::unique_ptr<weld::TreeView> m_xEntryTree;
+    std::vector<SheetViewListEntry> m_aEntries;
+    sal_Int32 m_nCurrentIndex = -1;
+
+    DECL_LINK(NameModifyHdl, weld::TreeView&, void);
+
+public:
+    SelectSheetViewDialog(weld::Window* pParent, ScViewData& rViewData);
+    virtual ~SelectSheetViewDialog() override;
+
+    sc::SheetViewID getSelectedSheetViewID() const;
+};
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/ui/inc/viewfunc.hxx b/sc/source/ui/inc/viewfunc.hxx
index 5385f4f8d857..0ed2d8ee58bd 100644
--- a/sc/source/ui/inc/viewfunc.hxx
+++ b/sc/source/ui/inc/viewfunc.hxx
@@ -371,6 +371,7 @@ public:
     void RemoveCurrentSheetView();
     void SwitchSheetView(sc::SwitchSheetViewDirection eDirection);
     void ExitSheetView(); // Switch to default view
+    void SelectSheetView(sc::SheetViewID nSelectSheetViewID);
 
                                                 // Internal helper functions
 protected:
diff --git a/sc/source/ui/view/tabvwsh3.cxx b/sc/source/ui/view/tabvwsh3.cxx
index 9fb981539321..7c3b3fc6a536 100644
--- a/sc/source/ui/view/tabvwsh3.cxx
+++ b/sc/source/ui/view/tabvwsh3.cxx
@@ -65,6 +65,7 @@
 
 #include <svx/dialog/ThemeDialog.hxx>
 #include <ThemeColorChanger.hxx>
+#include <dialogs/SelectSheetViewDialog.hxx>
 
 namespace
 {
@@ -1062,6 +1063,23 @@ void ScTabViewShell::Execute( SfxRequest& rReq )
         case FID_EXIT_SHEET_VIEW:
             ExitSheetView();
         break;
+        case FID_SELECT_SHEET_VIEW:
+        {
+            ScViewData& rViewData = GetViewData();
+            auto pDialog = 
std::make_shared<sc::SelectSheetViewDialog>(GetFrameWeld(), rViewData);
+            weld::DialogController::runAsync(pDialog, [this, 
pDialog](sal_uInt32 nResult) {
+                if (RET_OK != nResult)
+                    return;
+
+                sc::SheetViewID nID = pDialog->getSelectedSheetViewID();
+                if (nID != sc::InvalidSheetViewID)
+                {
+                    SelectSheetView(nID);
+                }
+            });
+            rReq.Done();
+        }
+        break;
 
         case SID_ATTR_ZOOM: // status row
         case FID_SCALE:
diff --git a/sc/source/ui/view/tabvwsha.cxx b/sc/source/ui/view/tabvwsha.cxx
index f1521d0fc25d..3463000eb212 100644
--- a/sc/source/ui/view/tabvwsha.cxx
+++ b/sc/source/ui/view/tabvwsha.cxx
@@ -399,6 +399,7 @@ void ScTabViewShell::GetState( SfxItemSet& rSet )
             case FID_REMOVE_SHEET_VIEW:
             case FID_SWITCH_TO_NEXT_SHEET_VIEW:
             case FID_SWITCH_TO_PREVIOUS_SHEET_VIEW:
+            case FID_SELECT_SHEET_VIEW:
             case FID_EXIT_SHEET_VIEW:
                 {
                     if (GetViewData().GetDocShell().IsReadOnly() || 
IsCurrentLokViewReadOnly())
diff --git a/sc/source/ui/view/viewfun3.cxx b/sc/source/ui/view/viewfun3.cxx
index 4953a9bb3c78..7889ffc6989a 100644
--- a/sc/source/ui/view/viewfun3.cxx
+++ b/sc/source/ui/view/viewfun3.cxx
@@ -2097,6 +2097,9 @@ void ScViewFunc::RemoveCurrentSheetView()
 
     ScDocument& rDocument = GetViewData().GetDocument();
     SCTAB nTab = GetViewData().GetTabNumber();
+    if (rDocument.IsSheetView(nTab))
+        return;
+
     auto pSheetManager = rDocument.GetSheetViewManager(nTab);
     if (!pSheetManager)
         return;
@@ -2113,35 +2116,34 @@ void ScViewFunc::RemoveCurrentSheetView()
 
 void ScViewFunc::SwitchSheetView(sc::SwitchSheetViewDirection eDirection)
 {
-    SCTAB nTab = GetViewData().GetTabNumber();
     ScDocument& rDocument = GetViewData().GetDocument();
-    if (rDocument.IsSheetView(nTab))
-        return;
-
-    sc::SheetViewID nSheetViewID = GetViewData().GetSheetViewID();
+    SCTAB nTab = GetViewData().GetTabNumber();
     auto pSheetManager = rDocument.GetSheetViewManager(nTab);
+    sc::SheetViewID nSheetViewID = GetViewData().GetSheetViewID();
 
     sc::SheetViewID nSwitchSheetViewID = eDirection == 
sc::SwitchSheetViewDirection::Next
                                             ? 
pSheetManager->getNextSheetView(nSheetViewID)
                                             : 
pSheetManager->getPreviousSheetView(nSheetViewID);
-
-    GetViewData().SetSheetViewID(nSwitchSheetViewID);
-
-    SheetViewChanged();
+    SelectSheetView(nSwitchSheetViewID);
 }
 
 void ScViewFunc::ExitSheetView()
+{
+    SelectSheetView(sc::DefaultSheetViewID);
+}
+
+void ScViewFunc::SelectSheetView(sc::SheetViewID nSelectSheetViewID)
 {
     SCTAB nTab = GetViewData().GetTabNumber();
-    ScDocument& rDocument = GetViewData().GetDocument();
-    if (rDocument.IsSheetView(nTab))
+
+    if (GetViewData().GetDocument().IsSheetView(nTab))
         return;
 
     sc::SheetViewID nSheetViewID = GetViewData().GetSheetViewID();
-    if (nSheetViewID == sc::DefaultSheetViewID)
+    if (nSheetViewID == nSelectSheetViewID)
         return;
 
-    GetViewData().SetSheetViewID(sc::DefaultSheetViewID);
+    GetViewData().SetSheetViewID(nSelectSheetViewID);
 
     SheetViewChanged();
 }
diff --git a/sc/uiconfig/scalc/ui/selectsheetviewdialog.ui 
b/sc/uiconfig/scalc/ui/selectsheetviewdialog.ui
new file mode 100644
index 000000000000..7541b58debc7
--- /dev/null
+++ b/sc/uiconfig/scalc/ui/selectsheetviewdialog.ui
@@ -0,0 +1,161 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.40.0 -->
+<interface domain="sc">
+  <requires lib="gtk+" version="3.20"/>
+  <object class="GtkTreeStore" id="liststore1">
+    <columns>
+      <!-- column-name text -->
+      <column type="gchararray"/>
+      <!-- column-name id -->
+      <column type="gchararray"/>
+    </columns>
+  </object>
+  <object class="GtkDialog" id="SelectSheetViewDialog">
+    <property name="can-focus">False</property>
+    <property name="hexpand">True</property>
+    <property name="vexpand">True</property>
+    <property name="border-width">6</property>
+    <property name="title" translatable="yes" 
context="selectsheetviewdialog|SelectSheetView">Select Sheet View</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="hexpand">True</property>
+        <property name="vexpand">True</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>
+            <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="use-underline">True</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="ok-atkobject">
+                    <property name="AtkObject::accessible-description" 
translatable="yes" context="selectsheetviewdialog|extended_tip|ok">Saves all 
changes and closes dialog.</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <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="use-underline">True</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="cancel-atkobject">
+                    <property name="AtkObject::accessible-description" 
translatable="yes" context="selectsheetviewdialog|extended_tip|cancel">Closes 
dialog and discards all changes.</property>
+                  </object>
+                </child>
+              </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" 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="use-underline">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</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">1</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkBox" id="entry-box">
+            <property name="visible">True</property>
+            <property name="can-focus">False</property>
+            <property name="hexpand">True</property>
+            <property name="vexpand">True</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">12</property>
+            <child>
+              <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="shadow-type">in</property>
+                <child>
+                  <object class="GtkTreeView" id="entry-list">
+                    <property name="visible">True</property>
+                    <property name="can-focus">True</property>
+                    <property name="hexpand">True</property>
+                    <property name="vexpand">True</property>
+                    <property name="model">liststore1</property>
+                    <property name="headers-visible">False</property>
+                    <property name="headers-clickable">False</property>
+                    <property name="search-column">0</property>
+                    <property name="show-expanders">False</property>
+                    <child>
+                      <object class="GtkTreeViewColumn" id="treeviewcolumn3">
+                        <child>
+                          <object class="GtkCellRendererText" 
id="cellrenderertext3"/>
+                          <attributes>
+                            <attribute name="text">0</attribute>
+                          </attributes>
+                        </child>
+                      </object>
+                    </child>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="entry-list-atkobject">
+                        <property name="AtkObject::accessible-description" 
translatable="yes" 
context="selectsheetviewdialog|extended_tip|entry-list">Available sheet 
views.</property>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">True</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-5">ok</action-widget>
+      <action-widget response="-6">cancel</action-widget>
+      <action-widget response="-11">help</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/vcl/jsdialog/enabled.cxx b/vcl/jsdialog/enabled.cxx
index 0eb206119c98..67ca2de7ca56 100644
--- a/vcl/jsdialog/enabled.cxx
+++ b/vcl/jsdialog/enabled.cxx
@@ -195,7 +195,8 @@ constexpr auto ScalcDialogList
         { u"modules/scalc/ui/warnautocorrect.ui" },
         { u"modules/scalc/ui/ztestdialog.ui" },
         { u"modules/scalc/ui/definedatabaserangedialog.ui" },
-        { u"modules/scalc/ui/selectrange.ui" }
+        { u"modules/scalc/ui/selectrange.ui" },
+        { u"modules/scalc/ui/selectsheetviewdialog.ui" },
     });
 
 constexpr auto SwriterDialogList

Reply via email to