vcl/CustomTarget_qt5_moc.mk        |    1 
 vcl/CustomTarget_qt6_moc.mk        |    1 
 vcl/Library_vclplug_qt5.mk         |    1 
 vcl/Library_vclplug_qt6.mk         |    1 
 vcl/inc/qt5/QtInstanceBuilder.hxx  |    2 
 vcl/inc/qt5/QtInstanceTreeView.hxx |  185 +++++++++++
 vcl/inc/qt6/QtInstanceTreeView.hxx |   12 
 vcl/qt5/QtBuilder.cxx              |    5 
 vcl/qt5/QtInstanceBuilder.cxx      |    9 
 vcl/qt5/QtInstanceTreeView.cxx     |  572 +++++++++++++++++++++++++++++++++++++
 vcl/qt6/QtInstanceTreeView.cxx     |   12 
 11 files changed, 797 insertions(+), 4 deletions(-)

New commits:
commit d0ea15aacebf4cad09dee90725dc06f5dde43ade
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Sat Nov 9 00:28:06 2024 +0100
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Sat Nov 9 19:05:28 2024 +0100

    tdf#130857 qt weld: Add QtInstanceTreeView skeleton
    
    Add a new QtInstanceTreeView class that is the
    weld::TreeView implementation using a native
    Qt widget. It uses a QTreeView.
    
    Initially, all methods trigger an assert;
    the actual logic still needs to be implemented
    in future commits.
    
    Let QtBuilder handle "GtkTreeView" objects by
    creating a QTreeView.
    
    Let QtInstanceBuilder::weld_treeview return
    an instance of the new class.
    
    Change-Id: Ia3e694dbef9033fe45a6d2bdbe09fc021cd47c58
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176307
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>

diff --git a/vcl/CustomTarget_qt5_moc.mk b/vcl/CustomTarget_qt5_moc.mk
index 5af117c05488..ace904832882 100644
--- a/vcl/CustomTarget_qt5_moc.mk
+++ b/vcl/CustomTarget_qt5_moc.mk
@@ -24,6 +24,7 @@ $(call gb_CustomTarget_get_target,vcl/qt5) : \
        $(gb_CustomTarget_workdir)/vcl/qt5/QtInstanceMessageDialog.moc \
        $(gb_CustomTarget_workdir)/vcl/qt5/QtInstanceProgressBar.moc \
        $(gb_CustomTarget_workdir)/vcl/qt5/QtInstanceRadioButton.moc \
+       $(gb_CustomTarget_workdir)/vcl/qt5/QtInstanceTreeView.moc \
        $(gb_CustomTarget_workdir)/vcl/qt5/QtInstanceWindow.moc \
        $(gb_CustomTarget_workdir)/vcl/qt5/QtMainWindow.moc \
        $(gb_CustomTarget_workdir)/vcl/qt5/QtMenu.moc \
diff --git a/vcl/CustomTarget_qt6_moc.mk b/vcl/CustomTarget_qt6_moc.mk
index ddb805833b66..bc961a273404 100644
--- a/vcl/CustomTarget_qt6_moc.mk
+++ b/vcl/CustomTarget_qt6_moc.mk
@@ -24,6 +24,7 @@ $(call gb_CustomTarget_get_target,vcl/qt6) : \
        $(gb_CustomTarget_workdir)/vcl/qt6/QtInstanceMessageDialog.moc \
        $(gb_CustomTarget_workdir)/vcl/qt6/QtInstanceProgressBar.moc \
        $(gb_CustomTarget_workdir)/vcl/qt6/QtInstanceRadioButton.moc \
+       $(gb_CustomTarget_workdir)/vcl/qt6/QtInstanceTreeView.moc \
        $(gb_CustomTarget_workdir)/vcl/qt6/QtInstanceWindow.moc \
        $(gb_CustomTarget_workdir)/vcl/qt6/QtMainWindow.moc \
        $(gb_CustomTarget_workdir)/vcl/qt6/QtMenu.moc \
diff --git a/vcl/Library_vclplug_qt5.mk b/vcl/Library_vclplug_qt5.mk
index 8923204fed94..6a61cd334c35 100644
--- a/vcl/Library_vclplug_qt5.mk
+++ b/vcl/Library_vclplug_qt5.mk
@@ -115,6 +115,7 @@ $(eval $(call gb_Library_add_exception_objects,vclplug_qt5,\
     vcl/qt5/QtInstanceRadioButton \
     vcl/qt5/QtInstanceSpinButton \
     vcl/qt5/QtInstanceTextView \
+    vcl/qt5/QtInstanceTreeView \
     vcl/qt5/QtInstanceWidget \
     vcl/qt5/QtInstanceWindow \
     vcl/qt5/QtMainWindow \
diff --git a/vcl/Library_vclplug_qt6.mk b/vcl/Library_vclplug_qt6.mk
index e6ec9491c5e5..188c5e71fd66 100644
--- a/vcl/Library_vclplug_qt6.mk
+++ b/vcl/Library_vclplug_qt6.mk
@@ -114,6 +114,7 @@ $(eval $(call gb_Library_add_exception_objects,vclplug_qt6,\
     vcl/qt6/QtInstanceRadioButton \
     vcl/qt6/QtInstanceSpinButton \
     vcl/qt6/QtInstanceTextView \
+    vcl/qt6/QtInstanceTreeView \
     vcl/qt6/QtInstanceWidget \
     vcl/qt6/QtInstanceWindow \
     vcl/qt6/QtMainWindow \
diff --git a/vcl/inc/qt5/QtInstanceBuilder.hxx 
b/vcl/inc/qt5/QtInstanceBuilder.hxx
index 70b072dbd4da..c1d562940777 100644
--- a/vcl/inc/qt5/QtInstanceBuilder.hxx
+++ b/vcl/inc/qt5/QtInstanceBuilder.hxx
@@ -64,7 +64,7 @@ public:
     virtual std::unique_ptr<weld::ComboBox> weld_combo_box(const OUString& 
rId) override;
     virtual std::unique_ptr<weld::EntryTreeView>
     weld_entry_tree_view(const OUString&, const OUString&, const OUString&) 
override;
-    virtual std::unique_ptr<weld::TreeView> weld_tree_view(const OUString&) 
override;
+    virtual std::unique_ptr<weld::TreeView> weld_tree_view(const OUString& 
rId) override;
     virtual std::unique_ptr<weld::IconView> weld_icon_view(const OUString&) 
override;
     virtual std::unique_ptr<weld::Label> weld_label(const OUString&) override;
     virtual std::unique_ptr<weld::TextView> weld_text_view(const OUString& 
rId) override;
diff --git a/vcl/inc/qt5/QtInstanceTreeView.hxx 
b/vcl/inc/qt5/QtInstanceTreeView.hxx
new file mode 100644
index 000000000000..8cfd98588002
--- /dev/null
+++ b/vcl/inc/qt5/QtInstanceTreeView.hxx
@@ -0,0 +1,185 @@
+/* -*- 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 "QtInstanceWidget.hxx"
+
+#include <QtWidgets/QTreeView>
+
+class QtInstanceTreeView : public QObject, public QtInstanceWidget, public 
virtual weld::TreeView
+{
+    Q_OBJECT
+
+    QTreeView* m_pTreeView;
+
+public:
+    QtInstanceTreeView(QTreeView* pTreeView);
+
+    virtual void insert(const weld::TreeIter* pParent, int pos, const 
OUString* pStr,
+                        const OUString* pId, const OUString* pIconName,
+                        VirtualDevice* pImageSurface, bool bChildrenOnDemand,
+                        weld::TreeIter* pRet) override;
+
+    virtual void insert_separator(int pos, const OUString& rId) override;
+
+    virtual OUString get_selected_text() const override;
+    virtual OUString get_selected_id() const override;
+
+    virtual void enable_toggle_buttons(weld::ColumnToggleType eType) override;
+
+    virtual void set_clicks_to_toggle(int nToggleBehavior) override;
+
+    virtual int get_selected_index() const override;
+    virtual void select(int pos) override;
+    virtual void unselect(int pos) override;
+    virtual void remove(int pos) override;
+    virtual OUString get_text(int row, int col = -1) const override;
+    virtual void set_text(int row, const OUString& rText, int col = -1) 
override;
+    virtual void set_sensitive(int row, bool bSensitive, int col = -1) 
override;
+    virtual bool get_sensitive(int row, int col) const override;
+    virtual void set_id(int row, const OUString& rId) override;
+    virtual void set_toggle(int row, TriState eState, int col = -1) override;
+    virtual TriState get_toggle(int row, int col = -1) const override;
+    virtual void set_image(int row, const OUString& rImage, int col = -1) 
override;
+    virtual void set_image(int row, VirtualDevice& rImage, int col = -1) 
override;
+    virtual void set_image(int row, const 
css::uno::Reference<css::graphic::XGraphic>& rImage,
+                           int col = -1) override;
+    virtual void set_text_emphasis(int row, bool bOn, int col) override;
+    virtual bool get_text_emphasis(int row, int col) const override;
+    virtual void set_text_align(int row, double fAlign, int col) override;
+    virtual void swap(int pos1, int pos2) override;
+    virtual std::vector<int> get_selected_rows() const override;
+    virtual void set_font_color(int pos, const Color& rColor) override;
+    virtual void scroll_to_row(int row) override;
+    virtual bool is_selected(int pos) const override;
+    virtual int get_cursor_index() const override;
+    virtual void set_cursor(int pos) override;
+
+    virtual int find_text(const OUString& rText) const override;
+    virtual OUString get_id(int pos) const override;
+    virtual int find_id(const OUString& rId) const override;
+
+    virtual std::unique_ptr<weld::TreeIter> make_iterator(const 
weld::TreeIter* pOrig
+                                                          = nullptr) const 
override;
+    virtual void copy_iterator(const weld::TreeIter& rSource, weld::TreeIter& 
rDest) const override;
+    virtual bool get_selected(weld::TreeIter* pIter) const override;
+    virtual bool get_cursor(weld::TreeIter* pIter) const override;
+    virtual void set_cursor(const weld::TreeIter& rIter) override;
+    virtual bool get_iter_first(weld::TreeIter& rIter) const override;
+    virtual bool iter_next_sibling(weld::TreeIter& rIter) const override;
+    virtual bool iter_previous_sibling(weld::TreeIter& rIter) const override;
+    virtual bool iter_next(weld::TreeIter& rIter) const override;
+    virtual bool iter_previous(weld::TreeIter& rIter) const override;
+    virtual bool iter_children(weld::TreeIter& rIter) const override;
+    virtual bool iter_parent(weld::TreeIter& rIter) const override;
+    virtual int get_iter_depth(const weld::TreeIter& rIter) const override;
+    virtual int get_iter_index_in_parent(const weld::TreeIter& rIter) const 
override;
+
+    virtual int iter_compare(const weld::TreeIter& a, const weld::TreeIter& b) 
const override;
+    virtual bool iter_has_child(const weld::TreeIter& rIter) const override;
+    virtual int iter_n_children(const weld::TreeIter& rIter) const override;
+    virtual void remove(const weld::TreeIter& rIter) override;
+    virtual void select(const weld::TreeIter& rIter) override;
+    virtual void unselect(const weld::TreeIter& rIter) override;
+    virtual void set_extra_row_indent(const weld::TreeIter& rIter, int 
nIndentLevel) override;
+    virtual void set_text(const weld::TreeIter& rIter, const OUString& rStr, 
int col = -1) override;
+    virtual void set_sensitive(const weld::TreeIter& rIter, bool bSensitive, 
int col = -1) override;
+    virtual bool get_sensitive(const weld::TreeIter& rIter, int col) const 
override;
+    virtual void set_text_emphasis(const weld::TreeIter& rIter, bool bOn, int 
col) override;
+    virtual bool get_text_emphasis(const weld::TreeIter& rIter, int col) const 
override;
+    virtual void set_text_align(const weld::TreeIter& rIter, double fAlign, 
int col) override;
+    virtual void set_toggle(const weld::TreeIter& rIter, TriState bOn, int col 
= -1) override;
+    virtual TriState get_toggle(const weld::TreeIter& rIter, int col = -1) 
const override;
+    virtual OUString get_text(const weld::TreeIter& rIter, int col = -1) const 
override;
+    virtual void set_id(const weld::TreeIter& rIter, const OUString& rId) 
override;
+    virtual OUString get_id(const weld::TreeIter& rIter) const override;
+    virtual void set_image(const weld::TreeIter& rIter, const OUString& rImage,
+                           int col = -1) override;
+    virtual void set_image(const weld::TreeIter& rIter, VirtualDevice& rImage,
+                           int col = -1) override;
+    virtual void set_image(const weld::TreeIter& rIter,
+                           const css::uno::Reference<css::graphic::XGraphic>& 
rImage,
+                           int col = -1) override;
+    virtual void set_font_color(const weld::TreeIter& rIter, const Color& 
rColor) override;
+    virtual void scroll_to_row(const weld::TreeIter& rIter) override;
+    virtual bool is_selected(const weld::TreeIter& rIter) const override;
+
+    virtual void move_subtree(weld::TreeIter& rNode, const weld::TreeIter* 
pNewParent,
+                              int nIndexInNewParent) override;
+
+    virtual void all_foreach(const std::function<bool(weld::TreeIter&)>& func) 
override;
+    virtual void selected_foreach(const std::function<bool(weld::TreeIter&)>& 
func) override;
+    virtual void visible_foreach(const std::function<bool(weld::TreeIter&)>& 
func) override;
+    virtual void bulk_insert_for_each(
+        int nSourceCount, const std::function<void(weld::TreeIter&, int 
nSourceIndex)>& func,
+        const weld::TreeIter* pParent = nullptr, const std::vector<int>* 
pFixedWidths = nullptr,
+        bool bGoingToSetText = false) override;
+
+    virtual bool get_row_expanded(const weld::TreeIter& rIter) const override;
+    virtual void expand_row(const weld::TreeIter& rIter) override;
+    virtual void collapse_row(const weld::TreeIter& rIter) override;
+    virtual void set_children_on_demand(const weld::TreeIter& rIter,
+                                        bool bChildrenOnDemand) override;
+    virtual bool get_children_on_demand(const weld::TreeIter& rIter) const 
override;
+    virtual void set_show_expanders(bool bShow) override;
+
+    virtual void start_editing(const weld::TreeIter& rEntry) override;
+    virtual void end_editing() override;
+
+    virtual void enable_drag_source(rtl::Reference<TransferDataContainer>& 
rTransferable,
+                                    sal_uInt8 eDNDConstants) override;
+
+    virtual int n_children() const override;
+
+    virtual void make_sorted() override;
+    virtual void make_unsorted() override;
+    virtual bool get_sort_order() const override;
+    virtual void set_sort_order(bool bAscending) override;
+
+    virtual void set_sort_indicator(TriState eState, int nColumn) override;
+    virtual TriState get_sort_indicator(int nColumn) const override;
+
+    virtual int get_sort_column() const override;
+    virtual void set_sort_column(int nColumn) override;
+
+    virtual void clear() override;
+    virtual int get_height_rows(int nRows) const override;
+
+    virtual void columns_autosize() override;
+    virtual void set_column_fixed_widths(const std::vector<int>& rWidths) 
override;
+    virtual void set_column_editables(const std::vector<bool>& rEditables) 
override;
+    virtual int get_column_width(int nCol) const override;
+    virtual void set_centered_column(int nCol) override;
+    virtual OUString get_column_title(int nColumn) const override;
+    virtual void set_column_title(int nColumn, const OUString& rTitle) 
override;
+
+    virtual void set_selection_mode(SelectionMode eMode) override;
+    virtual int count_selected_rows() const override;
+    virtual void remove_selection() override;
+
+    virtual bool changed_by_hover() const override;
+
+    virtual void vadjustment_set_value(int nValue) override;
+    virtual int vadjustment_get_value() const override;
+
+    virtual void set_column_custom_renderer(int nColumn, bool bEnable) 
override;
+    virtual void queue_draw() override;
+
+    virtual bool get_dest_row_at_pos(const Point& rPos, weld::TreeIter* 
pResult, bool bDnDMode,
+                                     bool bAutoScroll = true) override;
+    virtual void unset_drag_dest_row() override;
+    virtual tools::Rectangle get_row_area(const weld::TreeIter& rIter) const 
override;
+    virtual weld::TreeView* get_drag_source() const override;
+
+    using QtInstanceWidget::set_sensitive;
+    using QtInstanceWidget::get_sensitive;
+};
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/inc/qt6/QtInstanceTreeView.hxx 
b/vcl/inc/qt6/QtInstanceTreeView.hxx
new file mode 100644
index 000000000000..b2e38dcac08a
--- /dev/null
+++ b/vcl/inc/qt6/QtInstanceTreeView.hxx
@@ -0,0 +1,12 @@
+/* -*- 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 "../qt5/QtInstanceTreeView.hxx"
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/qt5/QtBuilder.cxx b/vcl/qt5/QtBuilder.cxx
index b5838e191bfa..1249cc104536 100644
--- a/vcl/qt5/QtBuilder.cxx
+++ b/vcl/qt5/QtBuilder.cxx
@@ -29,6 +29,7 @@
 #include <QtWidgets/QPushButton>
 #include <QtWidgets/QRadioButton>
 #include <QtWidgets/QScrollArea>
+#include <QtWidgets/QTreeView>
 
 namespace
 {
@@ -268,6 +269,10 @@ QObject* QtBuilder::makeObject(QObject* pParent, 
std::u16string_view sName, cons
     {
         pObject = new QPlainTextEdit(pParentWidget);
     }
+    else if (sName == u"GtkTreeView")
+    {
+        pObject = new QTreeView(pParentWidget);
+    }
     else
     {
         SAL_WARN("vcl.qt", "Widget type not supported yet: "
diff --git a/vcl/qt5/QtInstanceBuilder.cxx b/vcl/qt5/QtInstanceBuilder.cxx
index ae6567f0a3e8..84ac30fcbb6d 100644
--- a/vcl/qt5/QtInstanceBuilder.cxx
+++ b/vcl/qt5/QtInstanceBuilder.cxx
@@ -26,6 +26,7 @@
 #include <QtInstanceRadioButton.hxx>
 #include <QtInstanceSpinButton.hxx>
 #include <QtInstanceTextView.hxx>
+#include <QtInstanceTreeView.hxx>
 
 QtInstanceBuilder::QtInstanceBuilder(QWidget* pParent, std::u16string_view 
sUIRoot,
                                      const OUString& rUIFile)
@@ -291,10 +292,12 @@ QtInstanceBuilder::weld_entry_tree_view(const OUString&, 
const OUString&, const
     return nullptr;
 }
 
-std::unique_ptr<weld::TreeView> QtInstanceBuilder::weld_tree_view(const 
OUString&)
+std::unique_ptr<weld::TreeView> QtInstanceBuilder::weld_tree_view(const 
OUString& rId)
 {
-    assert(false && "Not implemented yet");
-    return nullptr;
+    QTreeView* pTreeView = m_xBuilder->get<QTreeView>(rId);
+    std::unique_ptr<weld::TreeView> xRet(pTreeView ? 
std::make_unique<QtInstanceTreeView>(pTreeView)
+                                                   : nullptr);
+    return xRet;
 }
 
 std::unique_ptr<weld::IconView> QtInstanceBuilder::weld_icon_view(const 
OUString&)
diff --git a/vcl/qt5/QtInstanceTreeView.cxx b/vcl/qt5/QtInstanceTreeView.cxx
new file mode 100644
index 000000000000..708b3b76f132
--- /dev/null
+++ b/vcl/qt5/QtInstanceTreeView.cxx
@@ -0,0 +1,572 @@
+/* -*- 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 <QtInstanceTreeView.hxx>
+#include <QtInstanceTreeView.moc>
+
+#include <vcl/qt/QtUtils.hxx>
+
+QtInstanceTreeView::QtInstanceTreeView(QTreeView* pTreeView)
+    : QtInstanceWidget(pTreeView)
+    , m_pTreeView(pTreeView)
+{
+    assert(m_pTreeView);
+}
+
+void QtInstanceTreeView::insert(const weld::TreeIter*, int, const OUString*, 
const OUString*,
+                                const OUString*, VirtualDevice*, bool, 
weld::TreeIter*)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::insert_separator(int, const OUString&)
+{
+    assert(false && "Not implemented yet");
+}
+
+OUString QtInstanceTreeView::get_selected_text() const
+{
+    assert(false && "Not implemented yet");
+    return OUString();
+}
+
+OUString QtInstanceTreeView::get_selected_id() const
+{
+    assert(false && "Not implemented yet");
+    return OUString();
+}
+
+void QtInstanceTreeView::enable_toggle_buttons(weld::ColumnToggleType)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_clicks_to_toggle(int) { assert(false && "Not 
implemented yet"); }
+
+int QtInstanceTreeView::get_selected_index() const
+{
+    assert(false && "Not implemented yet");
+    return -1;
+}
+
+void QtInstanceTreeView::select(int) { assert(false && "Not implemented yet"); 
}
+
+void QtInstanceTreeView::unselect(int) { assert(false && "Not implemented 
yet"); }
+
+void QtInstanceTreeView::remove(int) { assert(false && "Not implemented yet"); 
}
+
+OUString QtInstanceTreeView::get_text(int, int) const
+{
+    assert(false && "Not implemented yet");
+    return OUString();
+}
+
+void QtInstanceTreeView::set_text(int, const OUString&, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_sensitive(int, bool, int) { assert(false && "Not 
implemented yet"); }
+
+bool QtInstanceTreeView::get_sensitive(int, int) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::set_id(int, const OUString&) { assert(false && "Not 
implemented yet"); }
+
+void QtInstanceTreeView::set_toggle(int, TriState, int) { assert(false && "Not 
implemented yet"); }
+
+TriState QtInstanceTreeView::get_toggle(int, int) const
+{
+    assert(false && "Not implemented yet");
+    return TRISTATE_INDET;
+}
+
+void QtInstanceTreeView::set_image(int, const OUString&, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_image(int, VirtualDevice&, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_image(int, const 
css::uno::Reference<css::graphic::XGraphic>&, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_text_emphasis(int, bool, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+bool QtInstanceTreeView::get_text_emphasis(int, int) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::set_text_align(int, double, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::swap(int, int) { assert(false && "Not implemented 
yet"); }
+
+std::vector<int> QtInstanceTreeView::get_selected_rows() const
+{
+    assert(false && "Not implemented yet");
+    return std::vector<int>();
+}
+
+void QtInstanceTreeView::set_font_color(int, const Color&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::scroll_to_row(int) { assert(false && "Not implemented 
yet"); }
+
+bool QtInstanceTreeView::is_selected(int) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+int QtInstanceTreeView::get_cursor_index() const
+{
+    assert(false && "Not implemented yet");
+    return -1;
+}
+
+void QtInstanceTreeView::set_cursor(int) { assert(false && "Not implemented 
yet"); }
+
+int QtInstanceTreeView::find_text(const OUString&) const
+{
+    assert(false && "Not implemented yet");
+    return -1;
+}
+
+OUString QtInstanceTreeView::get_id(int) const
+{
+    assert(false && "Not implemented yet");
+    return OUString();
+}
+
+int QtInstanceTreeView::find_id(const OUString&) const
+{
+    assert(false && "Not implemented yet");
+    return -1;
+}
+
+std::unique_ptr<weld::TreeIter> QtInstanceTreeView::make_iterator(const 
weld::TreeIter*) const
+{
+    assert(false && "Not implemented yet");
+    return nullptr;
+}
+
+void QtInstanceTreeView::copy_iterator(const weld::TreeIter&, weld::TreeIter&) 
const
+{
+    assert(false && "Not implemented yet");
+}
+
+bool QtInstanceTreeView::get_selected(weld::TreeIter*) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+bool QtInstanceTreeView::get_cursor(weld::TreeIter*) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::set_cursor(const weld::TreeIter&)
+{
+    assert(false && "Not implemented yet");
+}
+
+bool QtInstanceTreeView::get_iter_first(weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+bool QtInstanceTreeView::iter_next_sibling(weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+bool QtInstanceTreeView::iter_previous_sibling(weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+bool QtInstanceTreeView::iter_next(weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+bool QtInstanceTreeView::iter_previous(weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+bool QtInstanceTreeView::iter_children(weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+bool QtInstanceTreeView::iter_parent(weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+int QtInstanceTreeView::get_iter_depth(const weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return -1;
+}
+
+int QtInstanceTreeView::get_iter_index_in_parent(const weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return -1;
+}
+
+int QtInstanceTreeView::iter_compare(const weld::TreeIter&, const 
weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return 0;
+}
+
+bool QtInstanceTreeView::iter_has_child(const weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+int QtInstanceTreeView::iter_n_children(const weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return -1;
+}
+
+void QtInstanceTreeView::remove(const weld::TreeIter&) { assert(false && "Not 
implemented yet"); }
+
+void QtInstanceTreeView::select(const weld::TreeIter&) { assert(false && "Not 
implemented yet"); }
+
+void QtInstanceTreeView::unselect(const weld::TreeIter&) { assert(false && 
"Not implemented yet"); }
+
+void QtInstanceTreeView::set_extra_row_indent(const weld::TreeIter&, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_text(const weld::TreeIter&, const OUString&, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_sensitive(const weld::TreeIter&, bool, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+bool QtInstanceTreeView::get_sensitive(const weld::TreeIter&, int) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::set_text_emphasis(const weld::TreeIter&, bool, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+bool QtInstanceTreeView::get_text_emphasis(const weld::TreeIter&, int) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::set_text_align(const weld::TreeIter&, double, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_toggle(const weld::TreeIter&, TriState, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+TriState QtInstanceTreeView::get_toggle(const weld::TreeIter&, int) const
+{
+    assert(false && "Not implemented yet");
+    return TRISTATE_INDET;
+}
+
+OUString QtInstanceTreeView::get_text(const weld::TreeIter&, int) const
+{
+    assert(false && "Not implemented yet");
+    return OUString();
+}
+
+void QtInstanceTreeView::set_id(const weld::TreeIter&, const OUString&)
+{
+    assert(false && "Not implemented yet");
+}
+
+OUString QtInstanceTreeView::get_id(const weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return OUString();
+}
+
+void QtInstanceTreeView::set_image(const weld::TreeIter&, const OUString&, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_image(const weld::TreeIter&, VirtualDevice&, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_image(const weld::TreeIter&,
+                                   const 
css::uno::Reference<css::graphic::XGraphic>&, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_font_color(const weld::TreeIter&, const Color&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::scroll_to_row(const weld::TreeIter&)
+{
+    assert(false && "Not implemented yet");
+}
+
+bool QtInstanceTreeView::is_selected(const weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::move_subtree(weld::TreeIter&, const weld::TreeIter*, 
int)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::all_foreach(const 
std::function<bool(weld::TreeIter&)>&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::selected_foreach(const 
std::function<bool(weld::TreeIter&)>&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::visible_foreach(const 
std::function<bool(weld::TreeIter&)>&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::bulk_insert_for_each(
+    int, const std::function<void(weld::TreeIter&, int nSourceIndex)>&, const 
weld::TreeIter*,
+    const std::vector<int>*, bool)
+{
+    assert(false && "Not implemented yet");
+}
+
+bool QtInstanceTreeView::get_row_expanded(const weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::expand_row(const weld::TreeIter&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::collapse_row(const weld::TreeIter&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_children_on_demand(const weld::TreeIter&, bool)
+{
+    assert(false && "Not implemented yet");
+}
+
+bool QtInstanceTreeView::get_children_on_demand(const weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::set_show_expanders(bool) { assert(false && "Not 
implemented yet"); }
+
+void QtInstanceTreeView::start_editing(const weld::TreeIter&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::end_editing() { assert(false && "Not implemented 
yet"); }
+
+void 
QtInstanceTreeView::enable_drag_source(rtl::Reference<TransferDataContainer>&, 
sal_uInt8)
+{
+    assert(false && "Not implemented yet");
+}
+
+int QtInstanceTreeView::n_children() const
+{
+    assert(false && "Not implemented yet");
+    return 0;
+}
+
+void QtInstanceTreeView::make_sorted() { assert(false && "Not implemented 
yet"); }
+
+void QtInstanceTreeView::make_unsorted() { assert(false && "Not implemented 
yet"); }
+
+bool QtInstanceTreeView::get_sort_order() const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::set_sort_order(bool) { assert(false && "Not 
implemented yet"); }
+
+void QtInstanceTreeView::set_sort_indicator(TriState, int)
+{
+    assert(false && "Not implemented yet");
+}
+
+TriState QtInstanceTreeView::get_sort_indicator(int) const
+{
+    assert(false && "Not implemented yet");
+    return TRISTATE_INDET;
+}
+
+int QtInstanceTreeView::get_sort_column() const
+{
+    assert(false && "Not implemented yet");
+    return -1;
+}
+
+void QtInstanceTreeView::set_sort_column(int) { assert(false && "Not 
implemented yet"); }
+
+void QtInstanceTreeView::clear() { assert(false && "Not implemented yet"); }
+
+int QtInstanceTreeView::get_height_rows(int) const
+{
+    assert(false && "Not implemented yet");
+    return 0;
+}
+
+void QtInstanceTreeView::columns_autosize() { assert(false && "Not implemented 
yet"); }
+
+void QtInstanceTreeView::set_column_fixed_widths(const std::vector<int>&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_column_editables(const std::vector<bool>&)
+{
+    assert(false && "Not implemented yet");
+}
+
+int QtInstanceTreeView::get_column_width(int) const
+{
+    assert(false && "Not implemented yet");
+    return 0;
+}
+
+void QtInstanceTreeView::set_centered_column(int) { assert(false && "Not 
implemented yet"); }
+
+OUString QtInstanceTreeView::get_column_title(int) const
+{
+    assert(false && "Not implemented yet");
+    return OUString();
+}
+
+void QtInstanceTreeView::set_column_title(int, const OUString&)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::set_selection_mode(SelectionMode)
+{
+    assert(false && "Not implemented yet");
+}
+
+int QtInstanceTreeView::count_selected_rows() const
+{
+    assert(false && "Not implemented yet");
+    return 0;
+}
+
+void QtInstanceTreeView::remove_selection() { assert(false && "Not implemented 
yet"); }
+
+bool QtInstanceTreeView::changed_by_hover() const
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::vadjustment_set_value(int) { assert(false && "Not 
implemented yet"); }
+
+int QtInstanceTreeView::vadjustment_get_value() const
+{
+    assert(false && "Not implemented yet");
+    return -1;
+}
+
+void QtInstanceTreeView::set_column_custom_renderer(int, bool)
+{
+    assert(false && "Not implemented yet");
+}
+
+void QtInstanceTreeView::queue_draw() { assert(false && "Not implemented 
yet"); }
+
+bool QtInstanceTreeView::get_dest_row_at_pos(const Point&, weld::TreeIter*, 
bool, bool)
+{
+    assert(false && "Not implemented yet");
+    return false;
+}
+
+void QtInstanceTreeView::unset_drag_dest_row() { assert(false && "Not 
implemented yet"); }
+
+tools::Rectangle QtInstanceTreeView::get_row_area(const weld::TreeIter&) const
+{
+    assert(false && "Not implemented yet");
+    return tools::Rectangle();
+}
+
+weld::TreeView* QtInstanceTreeView::get_drag_source() const
+{
+    assert(false && "Not implemented yet");
+    return nullptr;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/qt6/QtInstanceTreeView.cxx b/vcl/qt6/QtInstanceTreeView.cxx
new file mode 100644
index 000000000000..3bc38fd72d54
--- /dev/null
+++ b/vcl/qt6/QtInstanceTreeView.cxx
@@ -0,0 +1,12 @@
+/* -*- 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 "../qt5/QtInstanceTreeView.cxx"
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Reply via email to