summaryrefslogtreecommitdiff
path: root/forms/source/component/Filter.cxx
diff options
context:
space:
mode:
authorRüdiger Timm <rt@openoffice.org>2008-12-16 13:30:53 +0000
committerRüdiger Timm <rt@openoffice.org>2008-12-16 13:30:53 +0000
commit4d25bb492c1a82be70808b7f66296abf8923b226 (patch)
treee6f5f779ba0ac68e2085ecc2611afc168d6220a4 /forms/source/component/Filter.cxx
parent53c54b688dcd1594c2275ca591935019ba84d398 (diff)
CWS-TOOLING: integrate CWS rtlcontrols
2008-12-11 21:08:49 +0100 fs r265367 : CONTEXT_WRITING_MODE is transient 2008-12-11 21:08:00 +0100 fs r265365 : REGISTER_PROP_3 2008-12-11 20:53:44 +0100 fs r265362 : ContextWritingMode is not MAYBEVOID 2008-12-11 15:29:08 +0100 fs r265315 : prevent a deadlock during complex.dbaccess.DatabaseDocument test 2008-12-11 15:01:13 +0100 fs r265304 : manual RESYNC to m37 2008-12-10 20:04:38 +0100 pl r265230 : #i30631# fix a snafu in mirroring 2008-12-10 19:14:45 +0100 pl r265229 : #i30631# rework PaintToDevice for RTL controls 2008-12-05 10:19:13 +0100 fs r264893 : #i10000# ImplInitSettings => ImplInitWindow (ImplInitSettings clashed with base classes ImplInitSettings on unxsols4) 2008-12-03 12:55:24 +0100 fs r264768 : #i100000# 2008-12-03 07:11:48 +0100 fs r264741 : #i10000# 2008-12-02 10:37:51 +0100 fs r264670 : CWS-TOOLING: rebase CWS rtlcontrols to trunk@264325 (milestone: DEV300:m36) 2008-12-02 09:27:50 +0100 fs r264660 : merge from trunk 2008-11-25 10:28:36 +0100 ama r264277 : Fix #i94572# 2008-11-24 11:46:48 +0100 fs r264218 : #i30631# proper context writing mode 2008-11-24 09:38:04 +0100 fs r264204 : #i30631# (approved by PL) 2008-11-24 09:35:47 +0100 fs r264203 : #i30631# Context/WritingMode 2008-11-24 09:33:36 +0100 fs r264202 : #i30631# Context/WritingMode 2008-11-24 09:31:53 +0100 fs r264200 : #i30631# RTL 2008-11-19 08:51:48 +0100 fs r263963 : #i10000# 2008-11-18 20:58:11 +0100 fs r263878 : #i10000# 2008-11-18 15:30:44 +0100 fs r263778 : migrate the CWS from CVS to SVN the CVS changes contained in this change set are the ones between the following two CVS tags: CWS_DEV300_RTLCONTROLS_ANCHOR CWS_DEV300_RTLCONTROLS_PRE_MIGRATION 2008-11-18 12:29:04 +0100 ama r263762 : Fix #i94572#: Context direction for drawing objects 2008-11-18 12:25:50 +0100 ama r263761 : Fix #i94572#: Context direction for drawing objects 2008-11-18 12:02:30 +0100 ama r263759 : Fix #i94572#: Context direction for drawing objects
Diffstat (limited to 'forms/source/component/Filter.cxx')
-rw-r--r--forms/source/component/Filter.cxx77
1 files changed, 41 insertions, 36 deletions
diff --git a/forms/source/component/Filter.cxx b/forms/source/component/Filter.cxx
index eb5c032b9fc4..0ddab1faecdb 100644
--- a/forms/source/component/Filter.cxx
+++ b/forms/source/component/Filter.cxx
@@ -33,6 +33,7 @@
#include "Filter.hxx"
+#include "FormComponent.hxx"
#include "frm_module.hxx"
#include "frm_resource.hrc"
#include "frm_resource.hxx"
@@ -203,66 +204,70 @@ namespace frm
{
UnoControl::createPeer( rxToolkit, rParentPeer );
- Reference< XVclWindowPeer > xVclWindow( getPeer(), UNO_QUERY );
- Any aValue;
- if (xVclWindow.is())
+ try
{
- switch (m_nControlClass)
+ Reference< XVclWindowPeer > xVclWindow( getPeer(), UNO_QUERY_THROW );
+ switch ( m_nControlClass )
{
case FormComponentType::CHECKBOX:
{
// checkboxes always have a tristate-mode
- sal_Bool bB(sal_True);
- aValue.setValue(&bB,::getBooleanCppuType());
- xVclWindow->setProperty(PROPERTY_TRISTATE, aValue);
+ xVclWindow->setProperty( PROPERTY_TRISTATE, makeAny( sal_Bool( sal_True ) ) );
+ xVclWindow->setProperty( PROPERTY_STATE, makeAny( sal_Int32( STATE_DONTKNOW ) ) );
- aValue <<= (sal_Int32)STATE_DONTKNOW;
- xVclWindow->setProperty(PROPERTY_STATE, aValue);
+ Reference< XCheckBox > xBox( getPeer(), UNO_QUERY_THROW );
+ xBox->addItemListener( this );
- Reference< XCheckBox > xBox( getPeer(), UNO_QUERY );
- xBox->addItemListener(this);
+ }
+ break;
- } break;
case FormComponentType::RADIOBUTTON:
{
- aValue <<= (sal_Int32)STATE_NOCHECK;
- xVclWindow->setProperty(PROPERTY_STATE, aValue);
+ xVclWindow->setProperty( PROPERTY_STATE, makeAny( sal_Int32( STATE_NOCHECK ) ) );
+
+ Reference< XRadioButton > xRadio( getPeer(), UNO_QUERY_THROW );
+ xRadio->addItemListener( this );
+ }
+ break;
- Reference< XRadioButton > xRadio( getPeer(), UNO_QUERY );
- xRadio->addItemListener(this);
- } break;
case FormComponentType::LISTBOX:
{
- Reference< XListBox > xListBox( getPeer(), UNO_QUERY );
- xListBox->addItemListener(this);
+ Reference< XListBox > xListBox( getPeer(), UNO_QUERY_THROW );
+ xListBox->addItemListener( this );
}
- case FormComponentType::COMBOBOX: // no break;
+ // no break
+
+ case FormComponentType::COMBOBOX:
{
- sal_Bool bB(sal_True);
- aValue.setValue(&bB,::getBooleanCppuType());
- xVclWindow->setProperty(PROPERTY_AUTOCOMPLETE, aValue);
+ xVclWindow->setProperty(PROPERTY_AUTOCOMPLETE, makeAny( sal_Bool( sal_True ) ) );
}
- default: // no break;
+ // no break
+
+ default:
{
Reference< XWindow > xWindow( getPeer(), UNO_QUERY );
- xWindow->addFocusListener(this);
+ xWindow->addFocusListener( this );
Reference< XTextComponent > xText( getPeer(), UNO_QUERY );
if (xText.is())
xText->setMaxTextLen(0);
- } break;
+ }
+ break;
}
- }
- // filter controls are _never_ readonly
- // #107013# - 2002-02-03 - fs@openoffice.org
- Reference< XPropertySet > xModel( getModel(), UNO_QUERY );
- OSL_ENSURE( xModel.is(), "OFilterControl::createPeer: no model!" );
- Reference< XPropertySetInfo > xModelPSI;
- if ( xModel.is() )
- xModelPSI = xModel->getPropertySetInfo();
- if ( xModelPSI.is() && xModelPSI->hasPropertyByName( PROPERTY_READONLY ) )
- xVclWindow->setProperty( PROPERTY_READONLY, makeAny( sal_False ) );
+ OControl::initFormControlPeer( getPeer() );
+
+ // filter controls are _never_ readonly
+ // #107013# - 2002-02-03 - fs@openoffice.org
+ Reference< XPropertySet > xModel( getModel(), UNO_QUERY_THROW );
+ Reference< XPropertySetInfo > xModelPSI( xModel->getPropertySetInfo(), UNO_SET_THROW );
+ if ( xModelPSI->hasPropertyByName( PROPERTY_READONLY ) )
+ xVclWindow->setProperty( PROPERTY_READONLY, makeAny( sal_Bool( sal_False ) ) );
+ }
+ catch( const Exception& )
+ {
+ DBG_UNHANDLED_EXCEPTION();
+ }
if (m_bFilterList)
m_bFilterListFilled = sal_False;