summaryrefslogtreecommitdiff
path: root/toolkit
diff options
context:
space:
mode:
authorIlhan Yesil <ilhanyesil@gmx.de>2022-06-15 12:52:34 +0200
committerMichael Weghorn <m.weghorn@posteo.de>2022-06-17 08:15:14 +0200
commit0f1837306ae5c2c2e10f256b872c46b0bfba00dd (patch)
tree495865bf49f88535936383cc174a8e4b2229889d /toolkit
parent0cea5d817434c5f7ccc8816f7f5e29a4ba95f8f0 (diff)
tdf#149575 UnoControlTabPageContainer: Handle tab image
Setting a tab page's image in the tab button is done via method 'XTabPageModel.setImageURL'. Change-Id: Ideb096f88037dac26abe90fccae2251dcce84659 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135900 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Diffstat (limited to 'toolkit')
-rw-r--r--toolkit/source/awt/vclxtabpagecontainer.cxx2
-rw-r--r--toolkit/source/controls/controlmodelcontainerbase.cxx4
-rw-r--r--toolkit/source/controls/tabpagemodel.cxx1
3 files changed, 7 insertions, 0 deletions
diff --git a/toolkit/source/awt/vclxtabpagecontainer.cxx b/toolkit/source/awt/vclxtabpagecontainer.cxx
index 80124c9de868..18e12cdab488 100644
--- a/toolkit/source/awt/vclxtabpagecontainer.cxx
+++ b/toolkit/source/awt/vclxtabpagecontainer.cxx
@@ -224,6 +224,8 @@ void VCLXTabPageContainer::propertiesChange(const::css::uno::Sequence<PropertyCh
pTabCtrl->SetPageEnabled(nId, xTabPageModel->getEnabled());
} else if (rEvent.PropertyName == GetPropertyName(BASEPROPERTY_TITLE)) {
pTabCtrl->SetPageText(nId, xTabPageModel->getTitle());
+ } else if (rEvent.PropertyName == GetPropertyName(BASEPROPERTY_IMAGEURL)) {
+ pTabCtrl->SetPageImage(nId, TkResMgr::getImageFromURL(xTabPageModel->getImageURL()));
}
}
}
diff --git a/toolkit/source/controls/controlmodelcontainerbase.cxx b/toolkit/source/controls/controlmodelcontainerbase.cxx
index 677d000f9e50..9099c65cc553 100644
--- a/toolkit/source/controls/controlmodelcontainerbase.cxx
+++ b/toolkit/source/controls/controlmodelcontainerbase.cxx
@@ -768,6 +768,10 @@ OUString SAL_CALL ControlModelContainerBase::getImageURL()
void SAL_CALL ControlModelContainerBase::setImageURL( const OUString& _imageurl )
{
m_sImageURL = _imageurl;
+ SolarMutexGuard aGuard;
+ Reference<XPropertySet> xThis(*this, UNO_QUERY);
+ xThis->setPropertyValue(GetPropertyName(BASEPROPERTY_IMAGEURL), Any(_imageurl));
+
}
OUString SAL_CALL ControlModelContainerBase::getToolTip()
{
diff --git a/toolkit/source/controls/tabpagemodel.cxx b/toolkit/source/controls/tabpagemodel.cxx
index c82e54e417c6..cbfbebd78c51 100644
--- a/toolkit/source/controls/tabpagemodel.cxx
+++ b/toolkit/source/controls/tabpagemodel.cxx
@@ -52,6 +52,7 @@ UnoControlTabPageModel::UnoControlTabPageModel( Reference< XComponentContext > c
ImplRegisterProperty( BASEPROPERTY_SCROLLHEIGHT );
ImplRegisterProperty( BASEPROPERTY_SCROLLTOP );
ImplRegisterProperty( BASEPROPERTY_SCROLLLEFT );
+ ImplRegisterProperty( BASEPROPERTY_IMAGEURL );
}
OUString SAL_CALL UnoControlTabPageModel::getImplementationName()