|  | /************************************************************** | 
|  | * | 
|  | * Licensed to the Apache Software Foundation (ASF) under one | 
|  | * or more contributor license agreements.  See the NOTICE file | 
|  | * distributed with this work for additional information | 
|  | * regarding copyright ownership.  The ASF licenses this file | 
|  | * to you under the Apache License, Version 2.0 (the | 
|  | * "License"); you may not use this file except in compliance | 
|  | * with the License.  You may obtain a copy of the License at | 
|  | * | 
|  | *   http://www.apache.org/licenses/LICENSE-2.0 | 
|  | * | 
|  | * Unless required by applicable law or agreed to in writing, | 
|  | * software distributed under the License is distributed on an | 
|  | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | 
|  | * KIND, either express or implied.  See the License for the | 
|  | * specific language governing permissions and limitations | 
|  | * under the License. | 
|  | * | 
|  | *************************************************************/ | 
|  |  | 
|  |  | 
|  |  | 
|  | // MARKER(update_precomp.py): autogen include statement, do not remove | 
|  | #include "precompiled_svx.hxx" | 
|  |  | 
|  | #ifndef SVX_SOURCE_FORM_XFM_ADDCONDITION_HXX | 
|  | #include "xfm_addcondition.hxx" | 
|  | #endif | 
|  |  | 
|  | /** === begin UNO includes === **/ | 
|  | /** === end UNO includes === **/ | 
|  | #include <cppuhelper/typeprovider.hxx> | 
|  | #include "datanavi.hxx" | 
|  | #include <vcl/msgbox.hxx> | 
|  |  | 
|  | //........................................................................ | 
|  | namespace svxform | 
|  | { | 
|  | //........................................................................ | 
|  |  | 
|  | #define PROPERTY_ID_BINDING             5724 | 
|  | #define PROPERTY_ID_FORM_MODEL          5725 | 
|  | #define PROPERTY_ID_FACET_NAME          5726 | 
|  | #define PROPERTY_ID_CONDITION_VALUE     5727 | 
|  |  | 
|  | using namespace ::com::sun::star::uno; | 
|  | using namespace ::com::sun::star::lang; | 
|  | using namespace ::com::sun::star::beans; | 
|  | using namespace ::com::sun::star::xforms; | 
|  |  | 
|  | //==================================================================== | 
|  | //= OAddConditionDialog | 
|  | //==================================================================== | 
|  | //-------------------------------------------------------------------- | 
|  | Reference< XInterface > SAL_CALL OAddConditionDialog_Create( const Reference< XMultiServiceFactory > & _rxORB ) | 
|  | { | 
|  | return OAddConditionDialog::Create( _rxORB ); | 
|  | } | 
|  |  | 
|  | //-------------------------------------------------------------------- | 
|  | Sequence< ::rtl::OUString > SAL_CALL OAddConditionDialog_GetSupportedServiceNames() | 
|  | { | 
|  | ::comphelper::StringSequence aSupported( 1 ); | 
|  | aSupported.getArray()[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.xforms.ui.dialogs.AddCondition" ) ); | 
|  | return aSupported; | 
|  | } | 
|  |  | 
|  | //-------------------------------------------------------------------- | 
|  | ::rtl::OUString SAL_CALL OAddConditionDialog_GetImplementationName() | 
|  | { | 
|  | return ::rtl::OUString::createFromAscii( "org.openoffice.comp.svx.OAddConditionDialog" ); | 
|  | } | 
|  |  | 
|  | //==================================================================== | 
|  | //= OAddConditionDialog | 
|  | //==================================================================== | 
|  | //-------------------------------------------------------------------- | 
|  | OAddConditionDialog::OAddConditionDialog( const Reference< XMultiServiceFactory >& _rxORB ) | 
|  | :OAddConditionDialogBase( _rxORB ) | 
|  | { | 
|  | registerProperty( | 
|  | ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Binding" ) ), | 
|  | PROPERTY_ID_BINDING, | 
|  | PropertyAttribute::TRANSIENT, | 
|  | &m_xBinding, | 
|  | ::getCppuType( &m_xBinding ) | 
|  | ); | 
|  |  | 
|  | registerProperty( | 
|  | ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "FacetName" ) ), | 
|  | PROPERTY_ID_FACET_NAME, | 
|  | PropertyAttribute::TRANSIENT, | 
|  | &m_sFacetName, | 
|  | ::getCppuType( &m_sFacetName ) | 
|  | ); | 
|  |  | 
|  | registerProperty( | 
|  | ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "ConditionValue" ) ), | 
|  | PROPERTY_ID_CONDITION_VALUE, | 
|  | PropertyAttribute::TRANSIENT, | 
|  | &m_sConditionValue, | 
|  | ::getCppuType( &m_sConditionValue ) | 
|  | ); | 
|  |  | 
|  | registerProperty( | 
|  | ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "FormModel" ) ), | 
|  | PROPERTY_ID_FORM_MODEL, | 
|  | PropertyAttribute::TRANSIENT, | 
|  | &m_xWorkModel, | 
|  | ::getCppuType( &m_xWorkModel ) | 
|  | ); | 
|  | } | 
|  |  | 
|  | //------------------------------------------------------------------------- | 
|  | Sequence<sal_Int8> SAL_CALL OAddConditionDialog::getImplementationId(  ) throw(RuntimeException) | 
|  | { | 
|  | static ::cppu::OImplementationId * pId = 0; | 
|  | if (! pId) | 
|  | { | 
|  | ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() ); | 
|  | if (! pId) | 
|  | { | 
|  | static ::cppu::OImplementationId aId; | 
|  | pId = &aId; | 
|  | } | 
|  | } | 
|  | return pId->getImplementationId(); | 
|  | } | 
|  |  | 
|  | //------------------------------------------------------------------------- | 
|  | Reference< XInterface > SAL_CALL OAddConditionDialog::Create( const Reference< XMultiServiceFactory >& _rxFactory ) | 
|  | { | 
|  | return *( new OAddConditionDialog( _rxFactory ) ); | 
|  | } | 
|  |  | 
|  | //------------------------------------------------------------------------- | 
|  | ::rtl::OUString SAL_CALL OAddConditionDialog::getImplementationName() throw(RuntimeException) | 
|  | { | 
|  | return OAddConditionDialog_GetImplementationName(); | 
|  | } | 
|  |  | 
|  | //------------------------------------------------------------------------- | 
|  | Sequence< ::rtl::OUString > SAL_CALL OAddConditionDialog::getSupportedServiceNames() throw(RuntimeException) | 
|  | { | 
|  | return OAddConditionDialog_GetSupportedServiceNames(); | 
|  | } | 
|  |  | 
|  | //------------------------------------------------------------------------- | 
|  | Reference<XPropertySetInfo>  SAL_CALL OAddConditionDialog::getPropertySetInfo() throw(RuntimeException) | 
|  | { | 
|  | return createPropertySetInfo( getInfoHelper() ); | 
|  | } | 
|  |  | 
|  | //------------------------------------------------------------------------- | 
|  | ::cppu::IPropertyArrayHelper& OAddConditionDialog::getInfoHelper() | 
|  | { | 
|  | return *const_cast< OAddConditionDialog* >( this )->getArrayHelper(); | 
|  | } | 
|  |  | 
|  | //------------------------------------------------------------------------------ | 
|  | ::cppu::IPropertyArrayHelper* OAddConditionDialog::createArrayHelper( ) const | 
|  | { | 
|  | Sequence< Property > aProperties; | 
|  | describeProperties( aProperties ); | 
|  | return new ::cppu::OPropertyArrayHelper( aProperties ); | 
|  | } | 
|  |  | 
|  | //------------------------------------------------------------------------------ | 
|  | Dialog*	OAddConditionDialog::createDialog(Window* _pParent) | 
|  | { | 
|  | if ( !m_xBinding.is() || !m_sFacetName.getLength() ) | 
|  | throw RuntimeException( ::rtl::OUString(), *this ); | 
|  |  | 
|  | return new AddConditionDialog( _pParent, m_sFacetName, m_xBinding ); | 
|  | } | 
|  |  | 
|  | //------------------------------------------------------------------------------ | 
|  | void OAddConditionDialog::executedDialog( sal_Int16 _nExecutionResult ) | 
|  | { | 
|  | OAddConditionDialogBase::executedDialog( _nExecutionResult ); | 
|  | if ( _nExecutionResult == RET_OK ) | 
|  | m_sConditionValue = static_cast< AddConditionDialog* >( m_pDialog )->GetCondition(); | 
|  | } | 
|  |  | 
|  | //........................................................................ | 
|  | } // namespace svxformv | 
|  | //........................................................................ | 
|  |  |