LibreOffice Module extensions (master) 1
|
#include <cellbindinghandler.hxx>
Public Member Functions | |
CellBindingPropertyHandler (const css::uno::Reference< css::uno::XComponentContext > &_rxContext) | |
Public Member Functions inherited from cppu::ImplHelper1< class Ifc1 > | |
virtual css::uno::Any SAL_CALL | queryInterface (css::uno::Type const &rType) 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 Member Functions | |
virtual | ~CellBindingPropertyHandler () override |
virtual OUString SAL_CALL | getImplementationName () override |
virtual css::uno::Sequence< OUString > SAL_CALL | getSupportedServiceNames () override |
virtual css::uno::Any SAL_CALL | getPropertyValue (const OUString &_rPropertyName) override |
virtual void SAL_CALL | setPropertyValue (const OUString &_rPropertyName, const css::uno::Any &_rValue) override |
virtual css::uno::Any SAL_CALL | convertToPropertyValue (const OUString &_rPropertyName, const css::uno::Any &_rControlValue) override |
virtual css::uno::Any SAL_CALL | convertToControlValue (const OUString &_rPropertyName, const css::uno::Any &_rPropertyValue, const css::uno::Type &_rControlValueType) override |
virtual css::uno::Sequence< OUString > SAL_CALL | getActuatingProperties () override |
virtual void SAL_CALL | actuatingPropertyChanged (const OUString &_rActuatingPropertyName, const css::uno::Any &_rNewValue, const css::uno::Any &_rOldValue, const css::uno::Reference< css::inspection::XObjectInspectorUI > &_rxInspectorUI, sal_Bool _bFirstTimeInit) override |
virtual css::uno::Sequence< css::beans::Property > | doDescribeSupportedProperties () const override |
virtual void | onNewComponent () override |
called when XPropertyHandler::inspect has been called, and we thus have a new component to inspect More... | |
Protected Member Functions inherited from pcr::PropertyHandlerComponent | |
PropertyHandlerComponent (const css::uno::Reference< css::uno::XComponentContext > &_rxContext) | |
virtual OUString SAL_CALL | getImplementationName () override=0 |
virtual sal_Bool SAL_CALL | supportsService (const OUString &ServiceName) final override |
virtual css::uno::Sequence< OUString > SAL_CALL | getSupportedServiceNames () override=0 |
Protected Member Functions inherited from pcr::PropertyHandler | |
PropertyHandler (const css::uno::Reference< css::uno::XComponentContext > &_rxContext) | |
virtual | ~PropertyHandler () override |
virtual void SAL_CALL | inspect (const css::uno::Reference< css::uno::XInterface > &_rxIntrospectee) override |
virtual css::uno::Sequence< css::beans::Property > SAL_CALL | getSupportedProperties () override |
virtual css::uno::Sequence< OUString > SAL_CALL | getSupersededProperties () override |
virtual css::uno::Sequence< OUString > SAL_CALL | getActuatingProperties () override |
virtual css::uno::Any SAL_CALL | convertToPropertyValue (const OUString &_rPropertyName, const css::uno::Any &_rControlValue) override |
virtual css::uno::Any SAL_CALL | convertToControlValue (const OUString &_rPropertyName, const css::uno::Any &_rPropertyValue, const css::uno::Type &_rControlValueType) override |
virtual css::beans::PropertyState SAL_CALL | getPropertyState (const OUString &_rPropertyName) override |
virtual css::inspection::LineDescriptor SAL_CALL | describePropertyLine (const OUString &_rPropertyName, const css::uno::Reference< css::inspection::XPropertyControlFactory > &_rxControlFactory) override |
virtual sal_Bool SAL_CALL | isComposable (const OUString &_rPropertyName) override |
virtual css::inspection::InteractiveSelectionResult SAL_CALL | onInteractivePropertySelection (const OUString &_rPropertyName, sal_Bool _bPrimary, css::uno::Any &_rData, const css::uno::Reference< css::inspection::XObjectInspectorUI > &_rxInspectorUI) override |
virtual void SAL_CALL | actuatingPropertyChanged (const OUString &_rActuatingPropertyName, const css::uno::Any &_rNewValue, const css::uno::Any &_rOldValue, const css::uno::Reference< css::inspection::XObjectInspectorUI > &_rxInspectorUI, sal_Bool _bFirstTimeInit) override |
virtual void SAL_CALL | addPropertyChangeListener (const css::uno::Reference< css::beans::XPropertyChangeListener > &_rxListener) override |
virtual void SAL_CALL | removePropertyChangeListener (const css::uno::Reference< css::beans::XPropertyChangeListener > &_rxListener) override |
virtual sal_Bool SAL_CALL | suspend (sal_Bool _bSuspend) override |
virtual void SAL_CALL | disposing () override |
virtual css::uno::Sequence< css::beans::Property > | doDescribeSupportedProperties () const =0 |
virtual void | onNewComponent () |
called when XPropertyHandler::inspect has been called, and we thus have a new component to inspect More... | |
void | firePropertyChange (const OUString &_rPropName, PropertyId _nPropId, const css::uno::Any &_rOldValue, const css::uno::Any &_rNewValue) |
fires the change in a property value to our listener (if any) More... | |
weld::Window * | impl_getDefaultDialogFrame_nothrow () const |
retrieves a window which can be used as parent for dialogs More... | |
PropertyId | impl_getPropertyId_throwUnknownProperty (const OUString &_rPropertyName) const |
retrieves the property id for a given property name More... | |
PropertyId | impl_getPropertyId_throwRuntime (const OUString &_rPropertyName) const |
retrieves the property id for a given property name More... | |
PropertyId | impl_getPropertyId_nothrow (const OUString &_rPropertyName) const |
retrieves the property id for a given property name More... | |
void | addStringPropertyDescription (std::vector< css::beans::Property > &_rProperties, const OUString &_rPropertyName) const |
adds a description for the given string property to the given property vector Most probably to be called from within getSupportedProperties More... | |
void | addInt32PropertyDescription (std::vector< css::beans::Property > &_rProperties, const OUString &_rPropertyName, sal_Int16 _nAttribs=0) const |
adds a description for the given int32 property to the given property vector More... | |
void | addInt16PropertyDescription (std::vector< css::beans::Property > &_rProperties, const OUString &_rPropertyName, sal_Int16 _nAttribs=0) const |
adds a description for the given int16 property to the given property vector More... | |
void | addDoublePropertyDescription (std::vector< css::beans::Property > &_rProperties, const OUString &_rPropertyName, sal_Int16 _nAttribs) const |
adds a description for the given double property to the given property vector More... | |
void | addDatePropertyDescription (std::vector< css::beans::Property > &_rProperties, const OUString &_rPropertyName, sal_Int16 _nAttribs) const |
adds a description for the given date property to the given property vector More... | |
void | addTimePropertyDescription (std::vector< css::beans::Property > &_rProperties, const OUString &_rPropertyName, sal_Int16 _nAttribs) const |
adds a description for the given time property to the given property vector More... | |
void | addDateTimePropertyDescription (std::vector< css::beans::Property > &_rProperties, const OUString &_rPropertyName, sal_Int16 _nAttribs) const |
adds a description for the given DateTime property to the given property vector More... | |
void | implAddPropertyDescription (std::vector< css::beans::Property > &_rProperties, const OUString &_rPropertyName, const css::uno::Type &_rType, sal_Int16 _nAttribs=0) const |
adds a Property, given by name only, to a given vector of Properties More... | |
const css::beans::Property * | impl_getPropertyFromId_nothrow (PropertyId _nPropId) const |
retrieves a property given by handle More... | |
const css::beans::Property & | impl_getPropertyFromId_throw (PropertyId _nPropId) const |
retrieves a property given by handle More... | |
bool | impl_isSupportedProperty_nothrow (PropertyId _nPropId) const |
determines whether a given property id is part of our supported properties More... | |
const css::beans::Property & | impl_getPropertyFromName_throw (const OUString &_rPropertyName) const |
retrieves a property given by name More... | |
OUString | impl_getPropertyNameFromId_nothrow (PropertyId _nPropId) const |
get the name of a property given by handle More... | |
css::uno::Reference< css::frame::XModel > | impl_getContextDocument_nothrow () const |
returns the value of the ContextDocument property in the ComponentContext which was used to create this handler. More... | |
void | impl_setContextDocumentModified_nothrow () const |
marks the context document as modified More... | |
bool | impl_componentHasProperty_throw (const OUString &_rPropName) const |
determines whether our component has a given property More... | |
sal_Int16 | impl_getDocumentMeasurementUnit_throw () const |
determines the default measure unit for the document in which our component lives More... | |
Protected Member Functions inherited from cppu::ImplHelper1< class Ifc1 > | |
~ImplHelper1 () SAL_NOEXCEPT | |
Private Member Functions | |
void | impl_updateDependentProperty_nothrow (PropertyId _nPropId, const css::uno::Reference< css::inspection::XObjectInspectorUI > &_rxInspectorUI) const |
updates a property (UI) whose state depends on more than one other property More... | |
Private Attributes | |
std::unique_ptr< CellBindingHelper > | m_pHelper |
::rtl::Reference< IPropertyEnumRepresentation > | m_pCellExchangeConverter |
Additional Inherited Members | |
Protected Attributes inherited from pcr::PropertyHandler | |
css::uno::Reference< css::uno::XComponentContext > | m_xContext |
the context in which the instance was created More... | |
css::uno::Reference< css::beans::XPropertySet > | m_xComponent |
the component we're inspecting More... | |
css::uno::Reference< css::beans::XPropertySetInfo > | m_xComponentPropertyInfo |
info about our component's properties More... | |
css::uno::Reference< css::script::XTypeConverter > | m_xTypeConverter |
type converter, needed on various occasions More... | |
std::unique_ptr< OPropertyInfoService > | m_pInfoService |
access to property meta data More... | |
Protected Attributes inherited from cppu::BaseMutex | |
mutable::osl::Mutex | m_aMutex |
Definition at line 36 of file cellbindinghandler.hxx.
|
explicit |
Definition at line 47 of file cellbindinghandler.cxx.
References get().
|
overrideprotectedvirtual |
Definition at line 77 of file cellbindinghandler.cxx.
|
overrideprotectedvirtual |
Reimplemented from pcr::PropertyHandler.
Definition at line 91 of file cellbindinghandler.cxx.
References Any, Exception, pcr::PropertyHandler::impl_componentHasProperty_throw(), pcr::PropertyHandler::impl_getPropertyId_throwRuntime(), pcr::PropertyHandler::impl_isSupportedProperty_nothrow(), impl_updateDependentProperty_nothrow(), cppu::BaseMutex::m_aMutex, m_pHelper, PROPERTY_BOUND_CELL, PROPERTY_CELL_EXCHANGE_TYPE, PROPERTY_CONTROLSOURCE, PROPERTY_EMPTY_IS_NULL, PROPERTY_FILTERPROPOSAL, PROPERTY_ID_BOUND_CELL, PROPERTY_ID_BOUNDCOLUMN, PROPERTY_ID_CELL_EXCHANGE_TYPE, PROPERTY_ID_CONTROLSOURCE, PROPERTY_ID_EMPTY_IS_NULL, PROPERTY_ID_FILTERPROPOSAL, PROPERTY_ID_LIST_CELL_RANGE, PROPERTY_LISTSOURCE, PROPERTY_LISTSOURCETYPE, PROPERTY_STRINGITEMLIST, PROPERTY_TYPEDITEMLIST, setPropertyValue(), and TOOLS_WARN_EXCEPTION.
|
overrideprotectedvirtual |
Reimplemented from pcr::PropertyHandler.
Definition at line 390 of file cellbindinghandler.cxx.
References Any, cppu::BaseMutex::m_aMutex, m_pCellExchangeConverter, m_pHelper, pcr::PropertyHandler::m_pInfoService, PROPERTY_ID_BOUND_CELL, PROPERTY_ID_CELL_EXCHANGE_TYPE, and PROPERTY_ID_LIST_CELL_RANGE.
|
overrideprotectedvirtual |
Reimplemented from pcr::PropertyHandler.
Definition at line 340 of file cellbindinghandler.cxx.
References Any, getPropertyValue(), cppu::BaseMutex::m_aMutex, m_pCellExchangeConverter, m_pHelper, pcr::PropertyHandler::m_pInfoService, PROPERTY_CELL_EXCHANGE_TYPE, PROPERTY_ID_BOUND_CELL, PROPERTY_ID_CELL_EXCHANGE_TYPE, and PROPERTY_ID_LIST_CELL_RANGE.
|
overrideprotectedvirtual |
Implements pcr::PropertyHandler.
Definition at line 441 of file cellbindinghandler.cxx.
References aProperties, comphelper::containerToSequence(), m_pHelper, nPos, Property, PROPERTY_BOUND_CELL, PROPERTY_CELL_EXCHANGE_TYPE, PROPERTY_ID_BOUND_CELL, PROPERTY_ID_CELL_EXCHANGE_TYPE, PROPERTY_ID_LIST_CELL_RANGE, and PROPERTY_LIST_CELL_RANGE.
|
overrideprotectedvirtual |
Reimplemented from pcr::PropertyHandler.
Definition at line 82 of file cellbindinghandler.cxx.
References PROPERTY_BOUND_CELL, PROPERTY_CONTROLSOURCE, and PROPERTY_LIST_CELL_RANGE.
|
overrideprotectedvirtual |
Implements pcr::PropertyHandlerComponent.
Definition at line 54 of file cellbindinghandler.cxx.
|
overrideprotectedvirtual |
Definition at line 222 of file cellbindinghandler.cxx.
References Any, pcr::PropertyHandler::impl_getPropertyId_throwUnknownProperty(), pcr::CellBindingHelper::isCellBinding(), pcr::CellBindingHelper::isCellIntegerBinding(), pcr::CellBindingHelper::isCellRangeListSource(), cppu::BaseMutex::m_aMutex, m_pHelper, PROPERTY_ID_BOUND_CELL, PROPERTY_ID_CELL_EXCHANGE_TYPE, and PROPERTY_ID_LIST_CELL_RANGE.
Referenced by convertToPropertyValue(), impl_updateDependentProperty_nothrow(), and setPropertyValue().
|
overrideprotectedvirtual |
Implements pcr::PropertyHandlerComponent.
Definition at line 60 of file cellbindinghandler.cxx.
|
private |
updates a property (UI) whose state depends on more than one other property
->actuatingPropertyChanged is called for certain properties in whose changes we expressed interes (->getActuatingProperty). Now such a property change can result in simple UI updates, for instance another property being enabled or disabled.
However, it can also result in a more complex change: The current (UI) state might depend on the value of more than one other property. Those dependent properties (their UI, more precisely) are updated in this method.
_nPropid | the ->PropertyId of the dependent property whose UI state is to be updated |
_rxInspectorUI | provides access to the property browser UI. Must not be <NULL>. |
Definition at line 194 of file cellbindinghandler.cxx.
References Exception, getPropertyValue(), pcr::PropertyHandler::impl_isSupportedProperty_nothrow(), PROPERTY_BOUND_CELL, PROPERTY_BOUNDCOLUMN, PROPERTY_ID_BOUNDCOLUMN, PROPERTY_LIST_CELL_RANGE, and TOOLS_WARN_EXCEPTION.
Referenced by actuatingPropertyChanged().
|
overrideprotectedvirtual |
called when XPropertyHandler::inspect has been called, and we thus have a new component to inspect
Reimplemented from pcr::PropertyHandler.
Definition at line 66 of file cellbindinghandler.cxx.
References DBG_ASSERT, pcr::PropertyHandler::impl_getContextDocument_nothrow(), pcr::CellBindingHelper::isSpreadsheetDocument(), m_pHelper, pcr::PropertyHandler::m_xComponent, and pcr::PropertyHandler::onNewComponent().
|
overrideprotectedvirtual |
Definition at line 268 of file cellbindinghandler.cxx.
References Any, Exception, pcr::PropertyHandler::firePropertyChange(), getPropertyValue(), pcr::PropertyHandler::impl_getPropertyId_throwUnknownProperty(), pcr::PropertyHandler::impl_setContextDocumentModified_nothrow(), pcr::CellBindingHelper::isCellIntegerBinding(), cppu::BaseMutex::m_aMutex, m_pHelper, PROPERTY_ID_BOUND_CELL, PROPERTY_ID_CELL_EXCHANGE_TYPE, PROPERTY_ID_LIST_CELL_RANGE, and TOOLS_WARN_EXCEPTION.
Referenced by actuatingPropertyChanged().
|
private |
Definition at line 40 of file cellbindinghandler.hxx.
Referenced by convertToControlValue(), and convertToPropertyValue().
|
private |
Definition at line 39 of file cellbindinghandler.hxx.
Referenced by actuatingPropertyChanged(), convertToControlValue(), convertToPropertyValue(), doDescribeSupportedProperties(), getPropertyValue(), onNewComponent(), and setPropertyValue().