1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * Copyright 2000, 2010 Oracle and/or its affiliates.
8 * OpenOffice.org - a multi-platform office productivity suite
10 * This file is part of OpenOffice.org.
12 * OpenOffice.org is free software: you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 3
14 * only, as published by the Free Software Foundation.
16 * OpenOffice.org is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License version 3 for more details
20 * (a copy is included in the LICENSE file that accompanied this code).
22 * You should have received a copy of the GNU Lesser General Public License
23 * version 3 along with OpenOffice.org. If not, see
24 * <http://www.openoffice.org/license.html>
25 * for a copy of the LGPLv3 License.
27 ************************************************************************/
29 #ifndef DBACCESS_ADVANCEDSETTINGS_HXX
30 #define DBACCESS_ADVANCEDSETTINGS_HXX
32 #include "adminpages.hxx"
35 /** === begin UNO includes === **/
36 /** === end UNO includes === **/
38 #include <svtools/dialogcontrolling.hxx>
40 #include <vcl/lstbox.hxx>
41 #include <vcl/field.hxx>
45 //........................................................................
48 //........................................................................
50 struct BooleanSettingDesc
;
51 typedef ::std::vector
< BooleanSettingDesc
> BooleanSettingDescs
;
53 //====================================================================
54 //= SpecialSettingsPage
55 //====================================================================
56 /** implements the "Special Settings" page of the advanced database settings
58 class SpecialSettingsPage
: public OGenericAdministrationPage
62 CheckBox
* m_pIsSQL92Check
;
63 CheckBox
* m_pAppendTableAlias
;
64 CheckBox
* m_pAsBeforeCorrelationName
;
65 CheckBox
* m_pEnableOuterJoin
;
66 CheckBox
* m_pIgnoreDriverPrivileges
;
67 CheckBox
* m_pParameterSubstitution
;
68 CheckBox
* m_pSuppressVersionColumn
;
71 CheckBox
* m_pIndexAppendix
;
72 CheckBox
* m_pDosLineEnds
;
73 CheckBox
* m_pCheckRequiredFields
;
74 CheckBox
* m_pIgnoreCurrency
;
75 CheckBox
* m_pEscapeDateTime
;
76 CheckBox
* m_pPrimaryKeySupport
;
77 CheckBox
* m_pRespectDriverResultSetType
;
79 FixedText
* m_pBooleanComparisonModeLabel
;
80 ListBox
* m_pBooleanComparisonMode
;
82 FixedText
* m_pMaxRowScanLabel
;
83 NumericField
* m_pMaxRowScan
;
85 ::svt::ControlDependencyManager
86 m_aControlDependencies
;
88 BooleanSettingDescs m_aBooleanSettings
;
90 bool m_bHasBooleanComparisonMode
;
91 bool m_bHasMaxRowScan
;
94 virtual sal_Bool
FillItemSet ( SfxItemSet
& _rCoreAttrs
);
96 SpecialSettingsPage(Window
* pParent
, const SfxItemSet
& _rCoreAttrs
, const DataSourceMetaData
& _rDSMeta
);
99 virtual ~SpecialSettingsPage();
101 // OGenericAdministrationPage overridables
102 virtual void implInitControls (const SfxItemSet
& _rSet
, sal_Bool _bSaveValue
);
104 // <method>OGenericAdministrationPage::fillControls</method>
105 virtual void fillControls(::std::vector
< ISaveValueWrapper
* >& _rControlList
);
107 // <method>OGenericAdministrationPage::fillWindows</method>
108 virtual void fillWindows(::std::vector
< ISaveValueWrapper
* >& _rControlList
);
111 void impl_initBooleanSettings();
114 //====================================================================
115 //= GeneratedValuesPage
116 //====================================================================
117 class GeneratedValuesPage
: public OGenericAdministrationPage
121 FixedLine m_aAutoFixedLine
;
122 CheckBox m_aAutoRetrievingEnabled
;
123 FixedText m_aAutoIncrementLabel
;
124 Edit m_aAutoIncrement
;
125 FixedText m_aAutoRetrievingLabel
;
126 Edit m_aAutoRetrieving
;
128 ::svt::ControlDependencyManager
129 m_aControlDependencies
;
132 virtual sal_Bool
FillItemSet (SfxItemSet
& _rCoreAttrs
);
134 GeneratedValuesPage( Window
* pParent
, const SfxItemSet
& _rCoreAttrs
);
137 // nControlFlags ist eine Kombination der CBTP_xxx-Konstanten
138 virtual ~GeneratedValuesPage();
140 // must be overloaded by subclasses, but it isn't pure virtual
141 virtual void implInitControls(const SfxItemSet
& _rSet
, sal_Bool _bSaveValue
);
143 // <method>OGenericAdministrationPage::fillControls</method>
144 virtual void fillControls(::std::vector
< ISaveValueWrapper
* >& _rControlList
);
146 // <method>OGenericAdministrationPage::fillWindows</method>
147 virtual void fillWindows(::std::vector
< ISaveValueWrapper
* >& _rControlList
);
150 DECL_LINK( OnCheckBoxClick
, CheckBox
* );
153 //........................................................................
155 //........................................................................
157 #endif // DBACCESS_ADVANCEDSETTINGS_HXX
159 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */