LibreOffice Module toolkit (master) 1
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
UnoControlListBoxModel Class Reference

#include <unocontrols.hxx>

Inheritance diagram for UnoControlListBoxModel:
[legend]
Collaboration diagram for UnoControlListBoxModel:
[legend]

Public Member Functions

 UnoControlListBoxModel (const css::uno::Reference< css::uno::XComponentContext > &rxContext, ConstructorMode const i_mode=ConstructDefault)
 
 UnoControlListBoxModel (const UnoControlListBoxModel &i_rSource)
 
virtual ~UnoControlListBoxModel () override
 
rtl::Reference< UnoControlModelClone () const override
 
virtual void ImplNormalizePropertySequence (const sal_Int32 _nCount, sal_Int32 *_pHandles, css::uno::Any *_pValues, sal_Int32 *_pValidHandles) const override
 
css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo () override
 
OUString SAL_CALL getServiceName () override
 
OUString SAL_CALL getImplementationName () override
 
css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override
 
virtual ::sal_Int32 SAL_CALL getItemCount () override
 
virtual void SAL_CALL insertItem (::sal_Int32 Position, const OUString &ItemText, const OUString &ItemImageURL) override
 
virtual void SAL_CALL insertItemText (::sal_Int32 Position, const OUString &ItemText) override
 
virtual void SAL_CALL insertItemImage (::sal_Int32 Position, const OUString &ItemImageURL) override
 
virtual void SAL_CALL removeItem (::sal_Int32 Position) override
 
virtual void SAL_CALL removeAllItems () override
 
virtual void SAL_CALL setItemText (::sal_Int32 Position, const OUString &ItemText) override
 
virtual void SAL_CALL setItemImage (::sal_Int32 Position, const OUString &ItemImageURL) override
 
virtual void SAL_CALL setItemTextAndImage (::sal_Int32 Position, const OUString &ItemText, const OUString &ItemImageURL) override
 
virtual void SAL_CALL setItemData (::sal_Int32 Position, const css::uno::Any &DataValue) override
 
virtual OUString SAL_CALL getItemText (::sal_Int32 Position) override
 
virtual OUString SAL_CALL getItemImage (::sal_Int32 Position) override
 
virtual css::beans::Pair< OUString, OUString > SAL_CALL getItemTextAndImage (::sal_Int32 Position) override
 
virtual css::uno::Any SAL_CALL getItemData (::sal_Int32 Position) override
 
virtual css::uno::Sequence< css::beans::Pair< OUString, OUString > > SAL_CALL getAllItems () override
 
virtual void SAL_CALL addItemListListener (const css::uno::Reference< css::awt::XItemListListener > &Listener) override
 
virtual void SAL_CALL removeItemListListener (const css::uno::Reference< css::awt::XItemListListener > &Listener) override
 
void setFastPropertyValue_NoBroadcast (std::unique_lock< std::mutex > &rGuard, sal_Int32 nHandle, const css::uno::Any &rValue) override
 
- Public Member Functions inherited from cppu::AggImplInheritanceHelper1< class BaseClass, class Ifc1 >
 AggImplInheritanceHelper1 ()
 
virtual css::uno::Any SAL_CALL queryInterface (css::uno::Type const &rType) SAL_OVERRIDE
 
virtual css::uno::Any SAL_CALL queryAggregation (css::uno::Type const &rType) SAL_OVERRIDE
 
virtual void SAL_CALL acquire () SAL_NOEXCEPT SAL_OVERRIDE
 
virtual void SAL_CALL release () SAL_NOEXCEPT SAL_OVERRIDE
 
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes () SAL_OVERRIDE
 
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId () SAL_OVERRIDE
 

Protected Types

enum  ConstructorMode {
  ConstructDefault ,
  ConstructWithoutProperties
}
 

Protected Member Functions

css::uno::Any ImplGetDefaultValue (sal_uInt16 nPropId) const override
 
::cppu::IPropertyArrayHelpergetInfoHelper () override
 
- Protected Member Functions inherited from cppu::AggImplInheritanceHelper1< class BaseClass, class Ifc1 >
 AggImplInheritanceHelper1 (T1 const &arg1)
 
 AggImplInheritanceHelper1 (T1 const &arg1, T2 const &arg2)
 
 AggImplInheritanceHelper1 (T1 const &arg1, T2 const &arg2, T3 const &arg3)
 
 AggImplInheritanceHelper1 (T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4)
 
 AggImplInheritanceHelper1 (T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5)
 
 AggImplInheritanceHelper1 (T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5, T6 const &arg6)
 

Protected Attributes

std::unique_ptr< UnoControlListBoxModel_Datam_xData
 
::comphelper::OInterfaceContainerHelper4< css::awt::XItemListListener > m_aItemListListeners
 

Private Member Functions

void impl_notifyItemListEvent (std::unique_lock< std::mutex > &rGuard, const sal_Int32 i_nItemPosition, const ::std::optional< OUString > &i_rItemText, const ::std::optional< OUString > &i_rItemImageURL, void(SAL_CALL css::awt::XItemListListener::*NotificationMethod)(const css::awt::ItemListEvent &))
 
void impl_handleInsert (std::unique_lock< std::mutex > &rGuard, const sal_Int32 i_nItemPosition, const ::std::optional< OUString > &i_rItemText, const ::std::optional< OUString > &i_rItemImageURL)
 
void impl_handleRemove (const sal_Int32 i_nItemPosition, std::unique_lock< std::mutex > &i_rClearBeforeNotify)
 
void impl_handleModify (const sal_Int32 i_nItemPosition, const ::std::optional< OUString > &i_rItemText, const ::std::optional< OUString > &i_rItemImageURL, std::unique_lock< std::mutex > &i_rClearBeforeNotify)
 
void impl_getStringItemList (std::unique_lock< std::mutex > &rGuard, ::std::vector< OUString > &o_rStringItems) const
 
void impl_setStringItemList (std::unique_lock< std::mutex > &rGuard, const ::std::vector< OUString > &i_rStringItems)
 

Detailed Description

Definition at line 724 of file unocontrols.hxx.

Member Enumeration Documentation

◆ ConstructorMode

Enumerator
ConstructDefault 
ConstructWithoutProperties 

Definition at line 727 of file unocontrols.hxx.

Constructor & Destructor Documentation

◆ UnoControlListBoxModel() [1/2]

UnoControlListBoxModel::UnoControlListBoxModel ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
ConstructorMode const  i_mode = ConstructDefault 
)

◆ UnoControlListBoxModel() [2/2]

UnoControlListBoxModel::UnoControlListBoxModel ( const UnoControlListBoxModel i_rSource)

Definition at line 2064 of file unocontrols.cxx.

References m_xData.

◆ ~UnoControlListBoxModel()

UnoControlListBoxModel::~UnoControlListBoxModel ( )
overridevirtual

Definition at line 2070 of file unocontrols.cxx.

Member Function Documentation

◆ addItemListListener()

void SAL_CALL UnoControlListBoxModel::addItemListListener ( const css::uno::Reference< css::awt::XItemListListener > &  Listener)
overridevirtual

◆ Clone()

rtl::Reference< UnoControlModel > UnoControlListBoxModel::Clone ( ) const
inlineoverride

Definition at line 741 of file unocontrols.hxx.

◆ getAllItems()

Sequence< beans::Pair< OUString, OUString > > SAL_CALL UnoControlListBoxModel::getAllItems ( )
overridevirtual

Definition at line 2324 of file unocontrols.cxx.

References m_aMutex, and m_xData.

◆ getImplementationName()

OUString UnoControlListBoxModel::getImplementationName ( )
override

Definition at line 2074 of file unocontrols.cxx.

◆ getInfoHelper()

cppu::IPropertyArrayHelper & UnoControlListBoxModel::getInfoHelper ( )
overrideprotected

Definition at line 2101 of file unocontrols.cxx.

References aHelper.

Referenced by getPropertySetInfo().

◆ getItemCount()

sal_Int32 SAL_CALL UnoControlListBoxModel::getItemCount ( )
override

Definition at line 2181 of file unocontrols.cxx.

References m_aMutex, and m_xData.

◆ getItemData()

Any SAL_CALL UnoControlListBoxModel::getItemData ( ::sal_Int32  Position)
overridevirtual

Definition at line 2316 of file unocontrols.cxx.

References Any, ListItem, m_aMutex, and m_xData.

◆ getItemImage()

OUString SAL_CALL UnoControlListBoxModel::getItemImage ( ::sal_Int32  Position)
overridevirtual

Definition at line 2300 of file unocontrols.cxx.

References ListItem, m_aMutex, and m_xData.

◆ getItemText()

OUString SAL_CALL UnoControlListBoxModel::getItemText ( ::sal_Int32  Position)
overridevirtual

Definition at line 2292 of file unocontrols.cxx.

References ListItem, m_aMutex, and m_xData.

◆ getItemTextAndImage()

beans::Pair< OUString, OUString > SAL_CALL UnoControlListBoxModel::getItemTextAndImage ( ::sal_Int32  Position)
overridevirtual

Definition at line 2308 of file unocontrols.cxx.

References ListItem, m_aMutex, and m_xData.

◆ getPropertySetInfo()

uno::Reference< beans::XPropertySetInfo > UnoControlListBoxModel::getPropertySetInfo ( )
override

Definition at line 2109 of file unocontrols.cxx.

References getInfoHelper().

◆ getServiceName()

OUString UnoControlListBoxModel::getServiceName ( )
override

Definition at line 2085 of file unocontrols.cxx.

◆ getSupportedServiceNames()

css::uno::Sequence< OUString > UnoControlListBoxModel::getSupportedServiceNames ( )
override

◆ impl_getStringItemList()

void UnoControlListBoxModel::impl_getStringItemList ( std::unique_lock< std::mutex > &  rGuard,
::std::vector< OUString > &  o_rStringItems 
) const
private

◆ impl_handleInsert()

void UnoControlListBoxModel::impl_handleInsert ( std::unique_lock< std::mutex > &  rGuard,
const sal_Int32  i_nItemPosition,
const ::std::optional< OUString > &  i_rItemText,
const ::std::optional< OUString > &  i_rItemImageURL 
)
private

◆ impl_handleModify()

void UnoControlListBoxModel::impl_handleModify ( const sal_Int32  i_nItemPosition,
const ::std::optional< OUString > &  i_rItemText,
const ::std::optional< OUString > &  i_rItemImageURL,
std::unique_lock< std::mutex > &  i_rClearBeforeNotify 
)
private

◆ impl_handleRemove()

void UnoControlListBoxModel::impl_handleRemove ( const sal_Int32  i_nItemPosition,
std::unique_lock< std::mutex > &  i_rClearBeforeNotify 
)
private

◆ impl_notifyItemListEvent()

void UnoControlListBoxModel::impl_notifyItemListEvent ( std::unique_lock< std::mutex > &  rGuard,
const sal_Int32  i_nItemPosition,
const ::std::optional< OUString > &  i_rItemText,
const ::std::optional< OUString > &  i_rItemImageURL,
void(SAL_CALL css::awt::XItemListListener::*)(const css::awt::ItemListEvent &)  NotificationMethod 
)
private

◆ impl_setStringItemList()

void UnoControlListBoxModel::impl_setStringItemList ( std::unique_lock< std::mutex > &  rGuard,
const ::std::vector< OUString > &  i_rStringItems 
)
private

◆ ImplGetDefaultValue()

uno::Any UnoControlListBoxModel::ImplGetDefaultValue ( sal_uInt16  nPropId) const
overrideprotected

◆ ImplNormalizePropertySequence()

void UnoControlListBoxModel::ImplNormalizePropertySequence ( const sal_Int32  _nCount,
sal_Int32 *  _pHandles,
css::uno::Any *  _pValues,
sal_Int32 *  _pValidHandles 
) const
overridevirtual
Parameters
_pHandlesthe number of entries in the arrays
_pValuesthe handles of the properties to set
_pValidHandlesthe values of the properties to set pointer to the valid handles, allowed to be adjusted

Definition at line 2168 of file unocontrols.cxx.

References BASEPROPERTY_SELECTEDITEMS, BASEPROPERTY_STRINGITEMLIST, BASEPROPERTY_TYPEDITEMLIST, and UnoControlModel::ImplNormalizePropertySequence().

◆ insertItem()

void SAL_CALL UnoControlListBoxModel::insertItem ( ::sal_Int32  Position,
const OUString &  ItemText,
const OUString &  ItemImageURL 
)
overridevirtual

Definition at line 2188 of file unocontrols.cxx.

References impl_handleInsert(), ListItem, m_aMutex, and m_xData.

◆ insertItemImage()

void SAL_CALL UnoControlListBoxModel::insertItemImage ( ::sal_Int32  Position,
const OUString &  ItemImageURL 
)
overridevirtual

Definition at line 2213 of file unocontrols.cxx.

References impl_handleInsert(), ListItem, m_aMutex, and m_xData.

◆ insertItemText()

void SAL_CALL UnoControlListBoxModel::insertItemText ( ::sal_Int32  Position,
const OUString &  ItemText 
)
overridevirtual

Definition at line 2201 of file unocontrols.cxx.

References impl_handleInsert(), ListItem, m_aMutex, and m_xData.

◆ removeAllItems()

void SAL_CALL UnoControlListBoxModel::removeAllItems ( )
overridevirtual

Definition at line 2236 of file unocontrols.cxx.

References impl_handleRemove(), m_aMutex, and m_xData.

◆ removeItem()

void SAL_CALL UnoControlListBoxModel::removeItem ( ::sal_Int32  Position)
overridevirtual

Definition at line 2225 of file unocontrols.cxx.

References impl_handleRemove(), m_aMutex, and m_xData.

◆ removeItemListListener()

void SAL_CALL UnoControlListBoxModel::removeItemListListener ( const css::uno::Reference< css::awt::XItemListListener > &  Listener)
overridevirtual

◆ setFastPropertyValue_NoBroadcast()

void UnoControlListBoxModel::setFastPropertyValue_NoBroadcast ( std::unique_lock< std::mutex > &  rGuard,
sal_Int32  nHandle,
const css::uno::Any &  rValue 
)
override

◆ setItemData()

void SAL_CALL UnoControlListBoxModel::setItemData ( ::sal_Int32  Position,
const css::uno::Any &  DataValue 
)
overridevirtual

Definition at line 2284 of file unocontrols.cxx.

References ListItem, m_aMutex, and m_xData.

◆ setItemImage()

void SAL_CALL UnoControlListBoxModel::setItemImage ( ::sal_Int32  Position,
const OUString &  ItemImageURL 
)
overridevirtual

Definition at line 2259 of file unocontrols.cxx.

References impl_handleModify(), ListItem, m_aMutex, and m_xData.

◆ setItemText()

void SAL_CALL UnoControlListBoxModel::setItemText ( ::sal_Int32  Position,
const OUString &  ItemText 
)
overridevirtual

Definition at line 2247 of file unocontrols.cxx.

References impl_handleModify(), ListItem, m_aMutex, and m_xData.

◆ setItemTextAndImage()

void SAL_CALL UnoControlListBoxModel::setItemTextAndImage ( ::sal_Int32  Position,
const OUString &  ItemText,
const OUString &  ItemImageURL 
)
overridevirtual

Definition at line 2271 of file unocontrols.cxx.

References impl_handleModify(), ListItem, m_aMutex, and m_xData.

Member Data Documentation

◆ m_aItemListListeners

::comphelper::OInterfaceContainerHelper4<css::awt::XItemListListener> UnoControlListBoxModel::m_aItemListListeners
protected

◆ m_xData

std::unique_ptr<UnoControlListBoxModel_Data> UnoControlListBoxModel::m_xData
protected

The documentation for this class was generated from the following files: