diff options
author | Szymon Kłos <szymon.klos@collabora.com> | 2020-12-16 23:00:11 +0300 |
---|---|---|
committer | Szymon Kłos <szymon.klos@collabora.com> | 2021-01-14 10:21:29 +0100 |
commit | 95bddeaa8176ca4c79274632fce24181dcd8bc0a (patch) | |
tree | 0ba3e8513dce5365554355b218f2fae9768b1c02 /vcl/jsdialog/jsdialogbuilder.cxx | |
parent | 5ade3c6ce8324247a5a3bc052b4299115c5a8471 (diff) |
jsdialogs: implemented IconView
Change-Id: I05f5009efc879aaf3fc6055ff8dfa7c26aa33d1b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108983
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109244
Tested-by: Jenkins
Diffstat (limited to 'vcl/jsdialog/jsdialogbuilder.cxx')
-rw-r--r-- | vcl/jsdialog/jsdialogbuilder.cxx | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/vcl/jsdialog/jsdialogbuilder.cxx b/vcl/jsdialog/jsdialogbuilder.cxx index 921552a7d32c..81ba11f92fb9 100644 --- a/vcl/jsdialog/jsdialogbuilder.cxx +++ b/vcl/jsdialog/jsdialogbuilder.cxx @@ -667,6 +667,18 @@ std::unique_ptr<weld::Expander> JSInstanceBuilder::weld_expander(const OString& return pWeldWidget; } +std::unique_ptr<weld::IconView> JSInstanceBuilder::weld_icon_view(const OString& id) +{ + ::IconView* pIconView = m_xBuilder->get<::IconView>(id); + auto pWeldWidget + = pIconView ? std::make_unique<JSIconView>(this, pIconView, this, false) : nullptr; + + if (pWeldWidget) + RememberWidget(id, pWeldWidget.get()); + + return pWeldWidget; +} + weld::MessageDialog* JSInstanceBuilder::CreateMessageDialog(weld::Widget* pParent, VclMessageType eMessageType, VclButtonsType eButtonType, @@ -1056,4 +1068,42 @@ void JSExpander::set_expanded(bool bExpand) notifyDialogState(); } +JSIconView::JSIconView(JSDialogSender* pSender, ::IconView* pIconView, SalInstanceBuilder* pBuilder, + bool bTakeOwnership) + : JSWidget<SalInstanceIconView, ::IconView>(pSender, pIconView, pBuilder, bTakeOwnership) +{ +} + +void JSIconView::insert(int pos, const OUString* pStr, const OUString* pId, + const OUString* pIconName, weld::TreeIter* pRet) +{ + SalInstanceIconView::insert(pos, pStr, pId, pIconName, pRet); + notifyDialogState(); +} + +void JSIconView::insert(int pos, const OUString* pStr, const OUString* pId, + const VirtualDevice* pIcon, weld::TreeIter* pRet) +{ + SalInstanceIconView::insert(pos, pStr, pId, pIcon, pRet); + notifyDialogState(); +} + +void JSIconView::clear() +{ + SalInstanceIconView::clear(); + notifyDialogState(); +} + +void JSIconView::select(int pos) +{ + SalInstanceIconView::select(pos); + notifyDialogState(); +} + +void JSIconView::unselect(int pos) +{ + SalInstanceIconView::unselect(pos); + notifyDialogState(); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ |