summaryrefslogtreecommitdiff
path: root/vbahelper
diff options
context:
space:
mode:
authorNoel Power <noel.power@suse.com>2013-04-23 18:13:37 +0100
committerNoel Power <noel.power@suse.com>2013-05-09 14:11:18 +0100
commit4bad1a8e314269f2538133eb241135a225ac3f4f (patch)
treeb608bf79ffd0b34bd74d142cd89bb58cda498618 /vbahelper
parent3fb03cc873280c49e04c59062c1ad21b53c7f5df (diff)
support api initiated change_event for combox & textbox
Change-Id: Iff51a184792e9d12accb902df1772fc07589443b
Diffstat (limited to 'vbahelper')
-rw-r--r--vbahelper/source/msforms/vbacombobox.cxx4
-rw-r--r--vbahelper/source/msforms/vbatextbox.cxx3
2 files changed, 7 insertions, 0 deletions
diff --git a/vbahelper/source/msforms/vbacombobox.cxx b/vbahelper/source/msforms/vbacombobox.cxx
index 30f72379380b..6933884baf55 100644
--- a/vbahelper/source/msforms/vbacombobox.cxx
+++ b/vbahelper/source/msforms/vbacombobox.cxx
@@ -120,7 +120,11 @@ void SAL_CALL
ScVbaComboBox::setValue( const uno::Any& _value ) throw (uno::RuntimeException)
{
// booleans are converted to uppercase strings
+ OUString oldValue = extractStringFromAny( getValue(), OUString(), true );
m_xProps->setPropertyValue( sSourceName, uno::Any( extractStringFromAny( _value, OUString(), true ) ) );
+ OUString newValue = extractStringFromAny( getValue(), OUString(), true );
+ if ( oldValue != newValue )
+ fireChangeEvent();
}
// see Value
diff --git a/vbahelper/source/msforms/vbatextbox.cxx b/vbahelper/source/msforms/vbatextbox.cxx
index d4d10c147204..f61087ed7d1b 100644
--- a/vbahelper/source/msforms/vbatextbox.cxx
+++ b/vbahelper/source/msforms/vbatextbox.cxx
@@ -59,6 +59,7 @@ ScVbaTextBox::getText() throw (css::uno::RuntimeException)
void SAL_CALL
ScVbaTextBox::setText( const OUString& _text ) throw (css::uno::RuntimeException)
{
+ OUString oldText( getText() );
if ( !mbDialog )
{
uno::Reference< text::XTextRange > xTextRange( m_xProps, uno::UNO_QUERY_THROW );
@@ -66,6 +67,8 @@ ScVbaTextBox::setText( const OUString& _text ) throw (css::uno::RuntimeException
}
else
m_xProps->setPropertyValue( "Text" , uno::makeAny( _text ) );
+ if ( oldText != _text )
+ fireChangeEvent();
}
sal_Int32 SAL_CALL