update dev300-m58
[ooovba.git] / extensions / source / propctrlr / pcrunodialogs.cxx
blob95e865ee9f692b87f4c90b3febe9d77c682eb75b
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: pcrunodialogs.cxx,v $
10 * $Revision: 1.8 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 // MARKER(update_precomp.py): autogen include statement, do not remove
32 #include "precompiled_extensions.hxx"
33 #include "pcrunodialogs.hxx"
34 #include "formstrings.hxx"
35 #include "pcrstrings.hxx"
36 #include "taborder.hxx"
37 #include "pcrcommon.hxx"
39 extern "C" void SAL_CALL createRegistryInfo_OTabOrderDialog()
41 ::pcr::OAutoRegistration< ::pcr::OTabOrderDialog > aAutoRegistration;
44 //........................................................................
45 namespace pcr
47 //........................................................................
49 using namespace ::com::sun::star::uno;
50 using namespace ::com::sun::star::lang;
51 using namespace ::com::sun::star::beans;
53 //====================================================================
54 //= OTabOrderDialog
55 //====================================================================
56 //---------------------------------------------------------------------
57 OTabOrderDialog::OTabOrderDialog( const Reference< XComponentContext >& _rxContext )
58 :OGenericUnoDialog( _rxContext )
60 registerProperty( PROPERTY_CONTROLCONTEXT, OWN_PROPERTY_ID_CONTROLCONTEXT,
61 PropertyAttribute::BOUND | PropertyAttribute::TRANSIENT,
62 &m_xControlContext, ::getCppuType( &m_xControlContext ) );
64 registerProperty( PROPERTY_TABBINGMODEL, OWN_PROPERTY_ID_TABBINGMODEL,
65 PropertyAttribute::BOUND | PropertyAttribute::TRANSIENT,
66 &m_xTabbingModel, ::getCppuType( &m_xTabbingModel ) );
69 //---------------------------------------------------------------------
70 OTabOrderDialog::~OTabOrderDialog()
72 if ( m_pDialog )
74 ::osl::MutexGuard aGuard( m_aMutex );
75 if ( m_pDialog )
76 destroyDialog();
80 //---------------------------------------------------------------------
81 Sequence<sal_Int8> SAL_CALL OTabOrderDialog::getImplementationId( ) throw(RuntimeException)
83 static ::cppu::OImplementationId aId;
84 return aId.getImplementationId();
87 //---------------------------------------------------------------------
88 Reference< XInterface > SAL_CALL OTabOrderDialog::Create( const Reference< XComponentContext >& _rxContext )
90 return *( new OTabOrderDialog( _rxContext ) );
93 //---------------------------------------------------------------------
94 ::rtl::OUString SAL_CALL OTabOrderDialog::getImplementationName() throw(RuntimeException)
96 return getImplementationName_static();
99 //---------------------------------------------------------------------
100 ::rtl::OUString OTabOrderDialog::getImplementationName_static() throw(RuntimeException)
102 return ::rtl::OUString::createFromAscii( "org.openoffice.comp.form.ui.OTabOrderDialog" );
105 //---------------------------------------------------------------------
106 ::comphelper::StringSequence SAL_CALL OTabOrderDialog::getSupportedServiceNames() throw(RuntimeException)
108 return getSupportedServiceNames_static();
111 //---------------------------------------------------------------------
112 ::comphelper::StringSequence OTabOrderDialog::getSupportedServiceNames_static() throw(RuntimeException)
114 ::comphelper::StringSequence aSupported(1);
115 aSupported.getArray()[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.ui.TabOrderDialog" ) );
116 return aSupported;
119 //---------------------------------------------------------------------
120 Reference<XPropertySetInfo> SAL_CALL OTabOrderDialog::getPropertySetInfo() throw(RuntimeException)
122 Reference<XPropertySetInfo> xInfo( createPropertySetInfo( getInfoHelper() ) );
123 return xInfo;
126 //---------------------------------------------------------------------
127 ::cppu::IPropertyArrayHelper& OTabOrderDialog::getInfoHelper()
129 return *const_cast< OTabOrderDialog* >( this )->getArrayHelper();
132 //--------------------------------------------------------------------------
133 ::cppu::IPropertyArrayHelper* OTabOrderDialog::createArrayHelper( ) const
135 Sequence< Property > aProps;
136 describeProperties( aProps );
137 return new ::cppu::OPropertyArrayHelper( aProps );
140 //--------------------------------------------------------------------------
141 Dialog* OTabOrderDialog::createDialog( Window* _pParent )
143 return new TabOrderDialog( _pParent, m_xTabbingModel, m_xControlContext, m_aContext.getLegacyServiceFactory() );
146 //........................................................................
147 } // namespace pcr
148 //........................................................................