1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 #ifndef DBAUI_DRIVERSETTINGS_HXX
28 #define DBAUI_DRIVERSETTINGS_HXX
29 
30 #ifndef _DBAUI_DSNTYPES_HXX_
31 #include "dsntypes.hxx"
32 #endif
33 #include <svl/poolitem.hxx>
34 #include <vector>
35 
36 class SfxTabPage;
37 class Window;
38 namespace dbaui
39 {
40 	/// a collection class for all details a driver needs
41 	class ODriversSettings
42 	{
43 	public:
44 
45 		/** filles the IDs of the settings which are reflected in indirect data source properties
46             (aka properties in the css.sdb.DataSource.Info sequence)
47 
48             @param	_eType
49 				The Type of the data source.
50 			@param	_out_rDetailsIds
51 				Will be filled.
52 		*/
53 		static void getSupportedIndirectSettings( const ::rtl::OUString& _sURLPrefix,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _xFactory,::std::vector< sal_Int32>& _out_rDetailsIds );
54 
55 		/** Creates the detail page for Dbase
56 		*/
57 		static	SfxTabPage*	CreateDbase2( Window* _pParent, const SfxItemSet& _rAttrSet );
58 
59 		/** Creates the detail page for ado
60 		*/
61         static	SfxTabPage*	CreateDbase( Window* _pParent, const SfxItemSet& _rAttrSet );
62 
63 		/** Creates the detail page for ado
64 		*/
65 		static	SfxTabPage*	CreateAdo( Window* _pParent, const SfxItemSet& _rAttrSet );
66 
67 		/** Creates the detail page for ODBC
68 		*/
69 		static	SfxTabPage*	CreateODBC( Window* _pParent, const SfxItemSet& _rAttrSet );
70 
71 		/** Creates the detail page for user
72 		*/
73 		static	SfxTabPage*	CreateUser( Window* _pParent, const SfxItemSet& _rAttrSet );
74 
75 		/** Creates the detail page for MySQLODBC
76 		*/
77 		static	SfxTabPage*	CreateMySQLODBC( Window* _pParent, const SfxItemSet& _rAttrSet );
78 
79 		/** Creates the detail page for MySQLJDBC
80 		*/
81 		static	SfxTabPage*	CreateMySQLJDBC( Window* _pParent, const SfxItemSet& _rAttrSet );
82 
83         /** Creates the detail page for MySQLNATIVE
84 		*/
85 		static	SfxTabPage*	CreateMySQLNATIVE( Window* _pParent, const SfxItemSet& _rAttrSet );
86 
87 		/** Creates the detail page for Oracle JDBC
88 		*/
89 		static SfxTabPage*	CreateOracleJDBC( Window* pParent, const SfxItemSet& _rAttrSet );
90 
91 		/** Creates the detail page for Adabas
92 		*/
93 		static	SfxTabPage*	CreateAdabas( Window* _pParent, const SfxItemSet& _rAttrSet );
94 
95 		/** Creates the detail page for LDAP
96 		*/
97 		static	SfxTabPage*	CreateLDAP( Window* _pParent, const SfxItemSet& _rAttrSet );
98 
99 		/// Creates the detail page for Text
100 		static	SfxTabPage*	CreateText( Window* _pParent, const SfxItemSet& _rAttrSet );
101 
102 
103 		/// creates the GeneratedValues page
104 		static	SfxTabPage*	CreateGeneratedValuesPage( Window* _pParent, const SfxItemSet& _rAttrSet );
105 
106 		/// creates the "Special Settings" page of the "Advanced Settings" dialog
107 		static	SfxTabPage*	CreateSpecialSettingsPage( Window* _pParent, const SfxItemSet& _rAttrSet );
108 	};
109 }
110 
111 #endif // DBAUI_DRIVERSETTINGS_HXX
112 
113