1*b1cdbd2cSJim Jagielski /**************************************************************
2*b1cdbd2cSJim Jagielski  *
3*b1cdbd2cSJim Jagielski  * Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski  * or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski  * distributed with this work for additional information
6*b1cdbd2cSJim Jagielski  * regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski  * to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski  * "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski  * with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski  *
11*b1cdbd2cSJim Jagielski  *   http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski  *
13*b1cdbd2cSJim Jagielski  * Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski  * software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski  * KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski  * specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski  * under the License.
19*b1cdbd2cSJim Jagielski  *
20*b1cdbd2cSJim Jagielski  *************************************************************/
21*b1cdbd2cSJim Jagielski 
22*b1cdbd2cSJim Jagielski 
23*b1cdbd2cSJim Jagielski 
24*b1cdbd2cSJim Jagielski #ifndef ADABASUI_NEWDB_HXX
25*b1cdbd2cSJim Jagielski #include "ANewDb.hxx"
26*b1cdbd2cSJim Jagielski #endif
27*b1cdbd2cSJim Jagielski #ifndef _CPPUHELPER_TYPEPROVIDER_HXX_
28*b1cdbd2cSJim Jagielski #include <cppuhelper/typeprovider.hxx>
29*b1cdbd2cSJim Jagielski #endif
30*b1cdbd2cSJim Jagielski #ifndef _DBHELPER_DBEXCEPTION_HXX_
31*b1cdbd2cSJim Jagielski #include <connectivity/dbexception.hxx>
32*b1cdbd2cSJim Jagielski #endif
33*b1cdbd2cSJim Jagielski #ifndef adabasui_ADABAS_CREATEDB_HXX
34*b1cdbd2cSJim Jagielski #include "AdabasNewDb.hxx"
35*b1cdbd2cSJim Jagielski #endif
36*b1cdbd2cSJim Jagielski #ifndef adabasui_SHARED_DBUSTRINGS_HRC
37*b1cdbd2cSJim Jagielski #include "adabasuistrings.hrc"
38*b1cdbd2cSJim Jagielski #endif
39*b1cdbd2cSJim Jagielski #ifndef _SV_MSGBOX_HXX
40*b1cdbd2cSJim Jagielski #include <vcl/msgbox.hxx>
41*b1cdbd2cSJim Jagielski #endif
42*b1cdbd2cSJim Jagielski 
43*b1cdbd2cSJim Jagielski using namespace adabasui;
44*b1cdbd2cSJim Jagielski using namespace dbtools;
45*b1cdbd2cSJim Jagielski 
46*b1cdbd2cSJim Jagielski using namespace ::com::sun::star::sdbc;
47*b1cdbd2cSJim Jagielski using namespace ::com::sun::star::sdbcx;
48*b1cdbd2cSJim Jagielski using namespace ::com::sun::star::sdb;
49*b1cdbd2cSJim Jagielski 
createRegistryInfo_OAdabasCreateDialog()50*b1cdbd2cSJim Jagielski extern "C" void SAL_CALL createRegistryInfo_OAdabasCreateDialog()
51*b1cdbd2cSJim Jagielski {
52*b1cdbd2cSJim Jagielski 	static OMultiInstanceAutoRegistration< OAdabasCreateDialog > aAutoRegistration;
53*b1cdbd2cSJim Jagielski }
54*b1cdbd2cSJim Jagielski 
55*b1cdbd2cSJim Jagielski 
56*b1cdbd2cSJim Jagielski using namespace ::com::sun::star::uno;
57*b1cdbd2cSJim Jagielski using namespace ::com::sun::star::lang;
58*b1cdbd2cSJim Jagielski using namespace ::com::sun::star::beans;
59*b1cdbd2cSJim Jagielski 
60*b1cdbd2cSJim Jagielski //=========================================================================
61*b1cdbd2cSJim Jagielski //-------------------------------------------------------------------------
OAdabasCreateDialog(const Reference<XMultiServiceFactory> & _rxORB)62*b1cdbd2cSJim Jagielski OAdabasCreateDialog::OAdabasCreateDialog(const Reference< XMultiServiceFactory >& _rxORB)
63*b1cdbd2cSJim Jagielski 	:OAdabasCreateDialogBase(_rxORB)
64*b1cdbd2cSJim Jagielski 	,m_pDialog(NULL)
65*b1cdbd2cSJim Jagielski {
66*b1cdbd2cSJim Jagielski 	registerProperty(PROPERTY_CREATECATALOG,	PROPERTY_ID_CREATECATALOG,		PropertyAttribute::TRANSIENT,&m_xCreateCatalog,		::getCppuType(&m_xCreateCatalog));
67*b1cdbd2cSJim Jagielski 	registerProperty(PROPERTY_DATABASENAME,		PROPERTY_ID_DATABASENAME,		PropertyAttribute::TRANSIENT,&m_sDatabaseName,		::getCppuType(&m_sDatabaseName));
68*b1cdbd2cSJim Jagielski 	registerProperty(PROPERTY_CONTROL_USER,		PROPERTY_ID_CONTROL_USER,		PropertyAttribute::TRANSIENT,&m_sControlUser,		::getCppuType(&m_sControlUser));
69*b1cdbd2cSJim Jagielski 	registerProperty(PROPERTY_CONTROL_PASSWORD, PROPERTY_ID_CONTROL_PASSWORD,	PropertyAttribute::TRANSIENT,&m_sControlPassword,	::getCppuType(&m_sControlPassword));
70*b1cdbd2cSJim Jagielski 	registerProperty(PROPERTY_USER,				PROPERTY_ID_USER,				PropertyAttribute::TRANSIENT,&m_sUser,				::getCppuType(&m_sUser));
71*b1cdbd2cSJim Jagielski 	registerProperty(PROPERTY_PASSWORD,			PROPERTY_ID_PASSWORD,			PropertyAttribute::TRANSIENT,&m_sUserPassword,		::getCppuType(&m_sUserPassword));
72*b1cdbd2cSJim Jagielski 	registerProperty(PROPERTY_CACHESIZE,		PROPERTY_ID_CACHESIZE,			PropertyAttribute::TRANSIENT,&m_nCacheSize,			::getCppuType(&m_nCacheSize));
73*b1cdbd2cSJim Jagielski }
74*b1cdbd2cSJim Jagielski 
75*b1cdbd2cSJim Jagielski //-------------------------------------------------------------------------
getImplementationId()76*b1cdbd2cSJim Jagielski Sequence<sal_Int8> SAL_CALL OAdabasCreateDialog::getImplementationId(  ) throw(RuntimeException)
77*b1cdbd2cSJim Jagielski {
78*b1cdbd2cSJim Jagielski 	static ::cppu::OImplementationId aId;
79*b1cdbd2cSJim Jagielski 	return aId.getImplementationId();
80*b1cdbd2cSJim Jagielski }
81*b1cdbd2cSJim Jagielski 
82*b1cdbd2cSJim Jagielski //-------------------------------------------------------------------------
Create(const Reference<XMultiServiceFactory> & _rxFactory)83*b1cdbd2cSJim Jagielski Reference< XInterface > SAL_CALL OAdabasCreateDialog::Create(const Reference< XMultiServiceFactory >& _rxFactory)
84*b1cdbd2cSJim Jagielski {
85*b1cdbd2cSJim Jagielski 	return *(new OAdabasCreateDialog(_rxFactory));
86*b1cdbd2cSJim Jagielski }
87*b1cdbd2cSJim Jagielski 
88*b1cdbd2cSJim Jagielski //-------------------------------------------------------------------------
getImplementationName()89*b1cdbd2cSJim Jagielski ::rtl::OUString SAL_CALL OAdabasCreateDialog::getImplementationName() throw(RuntimeException)
90*b1cdbd2cSJim Jagielski {
91*b1cdbd2cSJim Jagielski 	return getImplementationName_Static();
92*b1cdbd2cSJim Jagielski }
93*b1cdbd2cSJim Jagielski 
94*b1cdbd2cSJim Jagielski //-------------------------------------------------------------------------
getImplementationName_Static()95*b1cdbd2cSJim Jagielski ::rtl::OUString OAdabasCreateDialog::getImplementationName_Static() throw(RuntimeException)
96*b1cdbd2cSJim Jagielski {
97*b1cdbd2cSJim Jagielski 	return ::rtl::OUString::createFromAscii("org.openoffice.comp.adabasui.AdabasCreateDialog");
98*b1cdbd2cSJim Jagielski }
99*b1cdbd2cSJim Jagielski 
100*b1cdbd2cSJim Jagielski //-------------------------------------------------------------------------
getSupportedServiceNames()101*b1cdbd2cSJim Jagielski ::comphelper::StringSequence SAL_CALL OAdabasCreateDialog::getSupportedServiceNames() throw(RuntimeException)
102*b1cdbd2cSJim Jagielski {
103*b1cdbd2cSJim Jagielski 	return getSupportedServiceNames_Static();
104*b1cdbd2cSJim Jagielski }
105*b1cdbd2cSJim Jagielski 
106*b1cdbd2cSJim Jagielski //-------------------------------------------------------------------------
getSupportedServiceNames_Static()107*b1cdbd2cSJim Jagielski ::comphelper::StringSequence OAdabasCreateDialog::getSupportedServiceNames_Static() throw(RuntimeException)
108*b1cdbd2cSJim Jagielski {
109*b1cdbd2cSJim Jagielski 	::comphelper::StringSequence aSupported(1);
110*b1cdbd2cSJim Jagielski 	aSupported.getArray()[0] = ::rtl::OUString::createFromAscii("com.sun.star.sdb.AdabasCreationDialog");
111*b1cdbd2cSJim Jagielski 	return aSupported;
112*b1cdbd2cSJim Jagielski }
113*b1cdbd2cSJim Jagielski 
114*b1cdbd2cSJim Jagielski //-------------------------------------------------------------------------
getPropertySetInfo()115*b1cdbd2cSJim Jagielski Reference<XPropertySetInfo>  SAL_CALL OAdabasCreateDialog::getPropertySetInfo() throw(RuntimeException)
116*b1cdbd2cSJim Jagielski {
117*b1cdbd2cSJim Jagielski 	Reference<XPropertySetInfo>  xInfo( createPropertySetInfo( getInfoHelper() ) );
118*b1cdbd2cSJim Jagielski 	return xInfo;
119*b1cdbd2cSJim Jagielski }
120*b1cdbd2cSJim Jagielski 
121*b1cdbd2cSJim Jagielski //-------------------------------------------------------------------------
getInfoHelper()122*b1cdbd2cSJim Jagielski ::cppu::IPropertyArrayHelper& OAdabasCreateDialog::getInfoHelper()
123*b1cdbd2cSJim Jagielski {
124*b1cdbd2cSJim Jagielski 	return *const_cast<OAdabasCreateDialog*>(this)->getArrayHelper();
125*b1cdbd2cSJim Jagielski }
126*b1cdbd2cSJim Jagielski 
127*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------------
createArrayHelper() const128*b1cdbd2cSJim Jagielski ::cppu::IPropertyArrayHelper* OAdabasCreateDialog::createArrayHelper( ) const
129*b1cdbd2cSJim Jagielski {
130*b1cdbd2cSJim Jagielski 	Sequence< Property > aProps;
131*b1cdbd2cSJim Jagielski 	describeProperties(aProps);
132*b1cdbd2cSJim Jagielski 	return new ::cppu::OPropertyArrayHelper(aProps);
133*b1cdbd2cSJim Jagielski }
134*b1cdbd2cSJim Jagielski 
135*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------------
createDialog(Window * _pParent)136*b1cdbd2cSJim Jagielski Dialog*	OAdabasCreateDialog::createDialog(Window* _pParent)
137*b1cdbd2cSJim Jagielski {
138*b1cdbd2cSJim Jagielski 	if(!m_xCreateCatalog.is())
139*b1cdbd2cSJim Jagielski 		throw SQLException();
140*b1cdbd2cSJim Jagielski 	m_pDialog = new OAdabasNewDbDlg(_pParent,m_xCreateCatalog,m_aContext.getLegacyServiceFactory());
141*b1cdbd2cSJim Jagielski 	return m_pDialog;
142*b1cdbd2cSJim Jagielski }
143*b1cdbd2cSJim Jagielski // -----------------------------------------------------------------------------
executedDialog(sal_Int16 _nExecutionResult)144*b1cdbd2cSJim Jagielski void OAdabasCreateDialog::executedDialog(sal_Int16 _nExecutionResult)
145*b1cdbd2cSJim Jagielski {
146*b1cdbd2cSJim Jagielski 	if(m_pDialog && _nExecutionResult == RET_OK)
147*b1cdbd2cSJim Jagielski 	{ // fill the variables
148*b1cdbd2cSJim Jagielski 		m_sDatabaseName		= m_pDialog->GetDatabaseName();
149*b1cdbd2cSJim Jagielski 		m_sControlUser		= m_pDialog->GetControlUser();
150*b1cdbd2cSJim Jagielski 		m_sControlPassword	= m_pDialog->GetControlPassword();
151*b1cdbd2cSJim Jagielski 		m_sUser				= m_pDialog->GetUser();
152*b1cdbd2cSJim Jagielski 		m_sUserPassword		= m_pDialog->GetUserPassword();
153*b1cdbd2cSJim Jagielski 		m_nCacheSize		= m_pDialog->GetCacheSize();
154*b1cdbd2cSJim Jagielski 	}
155*b1cdbd2cSJim Jagielski }
156*b1cdbd2cSJim Jagielski // -----------------------------------------------------------------------------
157*b1cdbd2cSJim Jagielski 
158