344 lines
14 KiB
C++
344 lines
14 KiB
C++
/*************************************************************************
|
|
*
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
*
|
|
* Copyright 2000, 2010 Oracle and/or its affiliates.
|
|
*
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
|
*
|
|
* This file is part of OpenOffice.org.
|
|
*
|
|
* OpenOffice.org is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU Lesser General Public License version 3
|
|
* only, as published by the Free Software Foundation.
|
|
*
|
|
* OpenOffice.org is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Lesser General Public License version 3 for more details
|
|
* (a copy is included in the LICENSE file that accompanied this code).
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
* version 3 along with OpenOffice.org. If not, see
|
|
* <http://www.openoffice.org/license.html>
|
|
* for a copy of the LGPLv3 License.
|
|
*
|
|
************************************************************************/
|
|
|
|
#ifndef DBAUI_DBSETUPCONNECTIONPAGES_HXX
|
|
#define DBAUI_DBSETUPCONNECTIONPAGES_HXX
|
|
|
|
#ifndef DBAUI_CONNECTIONPAGESETUP_HXX
|
|
#include "ConnectionPageSetup.hxx"
|
|
#endif
|
|
|
|
#include "adminpages.hxx"
|
|
#include "admincontrols.hxx"
|
|
#include "curledit.hxx"
|
|
#include "TextConnectionHelper.hxx"
|
|
|
|
#include <svtools/roadmapwizard.hxx>
|
|
#include <ucbhelper/content.hxx>
|
|
#include <vcl/field.hxx>
|
|
|
|
|
|
//.........................................................................
|
|
namespace dbaui
|
|
|
|
{
|
|
//.........................................................................
|
|
|
|
class IDatabaseSettingsDialog;
|
|
// static OGenericAdministrationPage* CreateDbaseTabPage( Window* pParent, const SfxItemSet& _rAttrSet );
|
|
|
|
|
|
//========================================================================
|
|
//= OSpreadSheetConnectionPageSetup
|
|
//========================================================================
|
|
class OSpreadSheetConnectionPageSetup : public OConnectionTabPageSetup
|
|
{
|
|
public:
|
|
virtual BOOL FillItemSet ( SfxItemSet& _rCoreAttrs );
|
|
static OGenericAdministrationPage* CreateSpreadSheetTabPage( Window* pParent, const SfxItemSet& _rAttrSet );
|
|
OSpreadSheetConnectionPageSetup(Window* pParent, const SfxItemSet& _rCoreAttrs);
|
|
|
|
protected:
|
|
CheckBox m_aCBPasswordrequired;
|
|
virtual ~OSpreadSheetConnectionPageSetup();
|
|
|
|
protected:
|
|
virtual void implInitControls(const SfxItemSet& _rSet, sal_Bool _bSaveValue);
|
|
virtual void fillControls(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual void fillWindows(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
|
|
};
|
|
|
|
//========================================================================
|
|
//= OTextConnectionPage
|
|
//========================================================================
|
|
class OTextConnectionPageSetup : public OConnectionTabPageSetup
|
|
{
|
|
public:
|
|
virtual BOOL FillItemSet ( SfxItemSet& _rCoreAttrs );
|
|
static OGenericAdministrationPage* CreateTextTabPage( Window* pParent, const SfxItemSet& _rAttrSet );
|
|
OTextConnectionPageSetup( Window* pParent, const SfxItemSet& _rCoreAttrs );
|
|
OTextConnectionHelper* m_pTextConnectionHelper;
|
|
private:
|
|
|
|
protected:
|
|
virtual ~OTextConnectionPageSetup();
|
|
virtual sal_Bool prepareLeave();
|
|
virtual void implInitControls(const SfxItemSet& _rSet, sal_Bool _bSaveValue);
|
|
virtual void fillControls(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual void fillWindows(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
bool checkTestConnection();
|
|
|
|
private:
|
|
DECL_LINK(ImplGetExtensionHdl, OTextConnectionHelper*);
|
|
};
|
|
|
|
//========================================================================
|
|
//= OLDAPConnectionPageSetup
|
|
//========================================================================
|
|
class OLDAPConnectionPageSetup : public OGenericAdministrationPage
|
|
{
|
|
public:
|
|
virtual BOOL FillItemSet ( SfxItemSet& _rCoreAttrs );
|
|
static OGenericAdministrationPage* CreateLDAPTabPage( Window* pParent, const SfxItemSet& _rAttrSet );
|
|
OLDAPConnectionPageSetup( Window* pParent, const SfxItemSet& _rCoreAttrs );
|
|
virtual Link getControlModifiedLink() { return LINK(this, OLDAPConnectionPageSetup, OnEditModified); }
|
|
|
|
protected:
|
|
virtual void implInitControls(const SfxItemSet& _rSet, sal_Bool _bSaveValue);
|
|
virtual void fillControls(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual void fillWindows(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
DECL_LINK(OnEditModified,Edit*);
|
|
|
|
private:
|
|
FixedText m_aFTHeaderText;
|
|
FixedText m_aFTHelpText;
|
|
FixedText m_aFTHostServer;
|
|
Edit m_aETHostServer;
|
|
FixedText m_aFTBaseDN;
|
|
Edit m_aETBaseDN;
|
|
FixedText m_aFTPortNumber;
|
|
NumericField m_aNFPortNumber;
|
|
FixedText m_aFTDefaultPortNumber;
|
|
CheckBox m_aCBUseSSL;
|
|
};
|
|
|
|
//========================================================================
|
|
//= MySQLNativeSetupPage
|
|
//========================================================================
|
|
class MySQLNativeSetupPage : public OGenericAdministrationPage
|
|
{
|
|
private:
|
|
FixedText m_aHeader;
|
|
FixedText m_aHelpText;
|
|
MySQLNativeSettings m_aMySQLSettings;
|
|
|
|
public:
|
|
MySQLNativeSetupPage( Window* _pParent, const SfxItemSet& _rCoreAttrs );
|
|
|
|
static OGenericAdministrationPage* Create( Window* pParent, const SfxItemSet& _rAttrSet );
|
|
|
|
protected:
|
|
virtual void fillControls( ::std::vector< ISaveValueWrapper* >& _rControlList );
|
|
virtual void fillWindows( ::std::vector< ISaveValueWrapper* >& _rControlList );
|
|
|
|
virtual BOOL FillItemSet( SfxItemSet& _rCoreAttrs );
|
|
virtual void implInitControls(const SfxItemSet& _rSet, sal_Bool _bSaveValue);
|
|
|
|
virtual Link getControlModifiedLink();
|
|
|
|
private:
|
|
DECL_LINK( OnModified, Edit* );
|
|
};
|
|
|
|
//========================================================================
|
|
//= OGeneralSpecialJDBCConnectionPageSetup
|
|
//========================================================================
|
|
class OGeneralSpecialJDBCConnectionPageSetup : public OGenericAdministrationPage
|
|
{
|
|
public:
|
|
OGeneralSpecialJDBCConnectionPageSetup( Window* pParent
|
|
, USHORT _nResId
|
|
, const SfxItemSet& _rCoreAttrs
|
|
, USHORT _nPortId
|
|
, USHORT _nDefaultPortResId
|
|
, USHORT _nHelpTextResId
|
|
, USHORT _nHeaderTextResId
|
|
, USHORT _nDriverClassId );
|
|
static OGenericAdministrationPage* CreateMySQLJDBCTabPage( Window* pParent, const SfxItemSet& _rAttrSet );
|
|
static OGenericAdministrationPage* CreateOracleJDBCTabPage( Window* pParent, const SfxItemSet& _rAttrSet );
|
|
|
|
protected:
|
|
virtual BOOL FillItemSet( SfxItemSet& _rCoreAttrs );
|
|
virtual void implInitControls(const SfxItemSet& _rSet, sal_Bool _bSaveValue);
|
|
virtual void fillControls(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual void fillWindows(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual Link getControlModifiedLink() { return LINK(this, OGeneralSpecialJDBCConnectionPageSetup, OnEditModified); }
|
|
|
|
DECL_LINK(OnTestJavaClickHdl,PushButton*);
|
|
DECL_LINK(OnEditModified,Edit*);
|
|
FixedText m_aFTHelpText;
|
|
FixedText m_aFTDatabasename;
|
|
Edit m_aETDatabasename;
|
|
FixedText m_aFTHostname;
|
|
Edit m_aETHostname;
|
|
FixedText m_aFTPortNumber;
|
|
FixedText m_aFTDefaultPortNumber;
|
|
NumericField m_aNFPortNumber;
|
|
|
|
|
|
FixedText m_aFTDriverClass;
|
|
Edit m_aETDriverClass;
|
|
PushButton m_aPBTestJavaDriver;
|
|
|
|
String m_sDefaultJdbcDriverName;
|
|
USHORT m_nPortId;
|
|
};
|
|
|
|
|
|
//========================================================================
|
|
//= OJDBCConnectionPageSetup
|
|
//========================================================================
|
|
class OJDBCConnectionPageSetup : public OConnectionTabPageSetup
|
|
{
|
|
public:
|
|
OJDBCConnectionPageSetup( Window* pParent, const SfxItemSet& _rCoreAttrs );
|
|
static OGenericAdministrationPage* CreateJDBCTabPage( Window* pParent, const SfxItemSet& _rAttrSet );
|
|
|
|
protected:
|
|
virtual bool checkTestConnection();
|
|
|
|
virtual BOOL FillItemSet( SfxItemSet& _rCoreAttrs );
|
|
virtual void implInitControls(const SfxItemSet& _rSet, sal_Bool _bSaveValue);
|
|
virtual void fillControls(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual void fillWindows(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
|
|
DECL_LINK(OnTestJavaClickHdl,PushButton*);
|
|
DECL_LINK(OnEditModified,Edit*);
|
|
FixedText m_aFTDriverClass;
|
|
Edit m_aETDriverClass;
|
|
PushButton m_aPBTestJavaDriver;
|
|
};
|
|
|
|
|
|
|
|
//========================================================================
|
|
//= OJDBCConnectionPageSetup
|
|
//========================================================================
|
|
class OMySQLIntroPageSetup : public OGenericAdministrationPage
|
|
{
|
|
public:
|
|
enum ConnectionType
|
|
{
|
|
VIA_ODBC,
|
|
VIA_JDBC,
|
|
VIA_NATIVE
|
|
};
|
|
|
|
OMySQLIntroPageSetup( Window* pParent, const SfxItemSet& _rCoreAttrs);
|
|
|
|
static OMySQLIntroPageSetup* CreateMySQLIntroTabPage( Window* _pParent, const SfxItemSet& _rAttrSet );
|
|
ConnectionType getMySQLMode();
|
|
Link maClickHdl;
|
|
void SetClickHdl( const Link& rLink ) { maClickHdl = rLink; }
|
|
const Link& GetClickHdl() const { return maClickHdl; }
|
|
DECL_LINK(ImplClickHdl, OMySQLIntroPageSetup*);
|
|
|
|
|
|
|
|
|
|
protected:
|
|
virtual BOOL FillItemSet(SfxItemSet& _rSet);
|
|
virtual void implInitControls(const SfxItemSet& _rSet, sal_Bool _bSaveValue);
|
|
virtual void fillControls(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual void fillWindows(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual ~OMySQLIntroPageSetup();
|
|
|
|
private:
|
|
RadioButton m_aRB_ODBCDatabase;
|
|
RadioButton m_aRB_JDBCDatabase;
|
|
RadioButton m_aRB_NATIVEDatabase;
|
|
FixedText m_aFT_ConnectionMode;
|
|
FixedText m_aFT_Helptext;
|
|
FixedText m_aFT_Headertext;
|
|
|
|
DECL_LINK(OnSetupModeSelected, RadioButton*);
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//========================================================================
|
|
//= OAuthentificationPageSetup
|
|
//========================================================================
|
|
class OAuthentificationPageSetup : public OGenericAdministrationPage
|
|
{
|
|
public:
|
|
virtual BOOL FillItemSet ( SfxItemSet& _rCoreAttrs );
|
|
static OGenericAdministrationPage* CreateAuthentificationTabPage( Window* pParent, const SfxItemSet& _rAttrSet );
|
|
OAuthentificationPageSetup(Window* pParent, const SfxItemSet& _rCoreAttrs);
|
|
|
|
protected:
|
|
FixedText m_aFTHelpText;
|
|
FixedText m_aFTHeaderText;
|
|
FixedText m_aFTUserName;
|
|
Edit m_aETUserName;
|
|
CheckBox m_aCBPasswordRequired;
|
|
PushButton m_aPBTestConnection;
|
|
virtual ~OAuthentificationPageSetup();
|
|
|
|
protected:
|
|
virtual void implInitControls(const SfxItemSet& _rSet, sal_Bool _bSaveValue);
|
|
virtual void fillControls(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual void fillWindows(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
};
|
|
|
|
|
|
|
|
//========================================================================
|
|
//= OFinalDBPageSetup
|
|
//========================================================================
|
|
class OFinalDBPageSetup : public OGenericAdministrationPage
|
|
{
|
|
public:
|
|
virtual BOOL FillItemSet ( SfxItemSet& _rCoreAttrs );
|
|
static OGenericAdministrationPage* CreateFinalDBTabPageSetup( Window* pParent, const SfxItemSet& _rAttrSet);
|
|
|
|
FixedText m_aFTFinalHeader;
|
|
FixedText m_aFTFinalHelpText;
|
|
RadioButton m_aRBRegisterDataSource;
|
|
RadioButton m_aRBDontregisterDataSource;
|
|
FixedText m_aFTAdditionalSettings;
|
|
CheckBox m_aCBOpenAfterwards;
|
|
CheckBox m_aCBStartTableWizard;
|
|
FixedText m_aFTFinalText;
|
|
|
|
OFinalDBPageSetup(Window* pParent, const SfxItemSet& _rCoreAttrs);
|
|
sal_Bool IsDatabaseDocumentToBeRegistered();
|
|
sal_Bool IsDatabaseDocumentToBeOpened();
|
|
sal_Bool IsTableWizardToBeStarted();
|
|
void enableTableWizardCheckBox( sal_Bool _bSupportsTableCreation);
|
|
|
|
/// may be used in SetXXXHdl calls to controls, is a link to <method>OnControlModified</method>
|
|
Link getControlModifiedLink() { return LINK(this, OGenericAdministrationPage, OnControlModified); }
|
|
|
|
DECL_LINK(OnOpenSelected, CheckBox*);
|
|
protected:
|
|
virtual ~OFinalDBPageSetup();
|
|
|
|
protected:
|
|
virtual void implInitControls(const SfxItemSet& _rSet, sal_Bool _bSaveValue);
|
|
virtual void fillControls(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
virtual void fillWindows(::std::vector< ISaveValueWrapper* >& _rControlList);
|
|
};
|
|
|
|
//.........................................................................
|
|
} // namespace dbaui
|
|
//.........................................................................
|
|
|
|
#endif
|