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
28#include "dbaccess_helpid.hrc"
29#include "dbu_dlg.hrc"
30#include "advancedsettings.hrc"
31
32//-------------------------------------------------------------------------
33
34#define AUTO_DATAHANDLING(AUTO_Y)                                                   \
35    FixedLine FL_DATAHANDLING                                                       \
36    {                                                                               \
37        Pos = MAP_APPFONT ( RELATED_CONTROLS , AUTO_Y ) ;                           \
38        Size = MAP_APPFONT ( ADVANCED_PAGE_X - 2*RELATED_CONTROLS , FIXEDTEXT_HEIGHT ) ;        \
39        Text [ en-US ] = "Options";                                                 \
40    };
41
42//-------------------------------------------------------------------------
43
44#define AUTO_SQL92CHECK(AUTO_Y)                                                     \
45    CheckBox CB_SQL92CHECK                                                          \
46    {                                                                               \
47        Pos     = MAP_APPFONT ( 6 , AUTO_Y) ;                                       \
48        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
49        TabStop = TRUE ;                                                            \
50        HelpId = HID_DSADMIN_SQL92CHECK;                                            \
51        Text[ en-US ] = "Use SQL92 naming constraints";                             \
52    };
53
54//-------------------------------------------------------------------------
55
56#define AUTO_APPENDTABLEALIAS(AUTO_Y)                                               \
57    CheckBox CB_APPENDTABLEALIAS                                                    \
58    {                                                                               \
59        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
60        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12  , CHECKBOX_HEIGHT ) ;          \
61        TabStop = TRUE ;                                                            \
62        HelpId = HID_DSADMIN_APPENDTABLEALIAS;                                      \
63        Text[ en-US ] = "Append the table alias name on SELECT statements";         \
64    };
65
66//-------------------------------------------------------------------------
67
68#define AUTO_AS_BEFORE_CORR_NAME(AUTO_Y)                                            \
69    CheckBox CB_AS_BEFORE_CORR_NAME                                                 \
70    {                                                                               \
71        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
72        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12  , CHECKBOX_HEIGHT ) ;          \
73        TabStop = TRUE ;                                                            \
74        HelpId = HID_DSADMIN_AS_BEFORE_CORRELATION_NAME;                            \
75        Text[ en-US ] = "Use keyword AS before table alias names";                  \
76    };
77
78//-------------------------------------------------------------------------
79
80#define AUTO_ENABLEOUTERJOIN(AUTO_Y)                                                \
81    CheckBox CB_ENABLEOUTERJOIN                                                     \
82    {                                                                               \
83        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
84        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
85        TabStop = TRUE ;                                                            \
86        HelpId = HID_DSADMIN_ENABLEOUTERJOIN;                                       \
87        Text [ en-US ] = "Use Outer Join syntax '{OJ }'";                           \
88    };
89
90
91//-------------------------------------------------------------------------
92
93#define AUTO_IGNOREDRIVER_PRIV(AUTO_Y)                                              \
94    CheckBox CB_IGNOREDRIVER_PRIV                                                   \
95    {                                                                               \
96        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
97        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
98        TabStop = TRUE ;                                                            \
99        HelpId = HID_DSADMIN_IGNOREDRIVER_PRIV;                                     \
100        Text[ en-US ] = "Ignore the privileges from the database driver";           \
101    };
102
103//-------------------------------------------------------------------------
104
105#define AUTO_PARAMETERNAMESUBST(AUTO_Y)                                             \
106    CheckBox CB_PARAMETERNAMESUBST                                                  \
107    {                                                                               \
108        Pos     = MAP_APPFONT ( 6 , AUTO_Y) ;                                       \
109        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
110        TabStop = TRUE ;                                                            \
111        HelpId = HID_DSADMIN_PARAMETERNAMESUBST;                                    \
112        Text[ en-US ] = "Replace named parameters with '?'";                        \
113    };
114
115//-------------------------------------------------------------------------
116
117#define AUTO_SUPPRESVERSIONCOLUMN(AUTO_Y)                                           \
118    CheckBox CB_SUPPRESVERSIONCL                                                    \
119    {                                                                               \
120        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
121        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
122        TabStop = TRUE ;                                                            \
123        HelpId = HID_DSADMIN_SUPPRESS_VERSIONCL;                                    \
124        Text [ en-US ] = "Display version columns (when available)";                \
125    };
126
127//-------------------------------------------------------------------------
128
129#define AUTO_CATALOG(AUTO_Y)                                                        \
130    CheckBox CB_CATALOG                                                             \
131    {                                                                               \
132        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
133        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
134        TabStop = TRUE ;                                                            \
135        HelpId = HID_DSADMIN_CATALOG;                                               \
136        Text [ en-US ] = "Use catalog name in SELECT statements";                   \
137    };
138
139
140//-------------------------------------------------------------------------
141
142#define AUTO_SCHEMA(AUTO_Y)                                                         \
143    CheckBox CB_SCHEMA                                                              \
144    {                                                                               \
145        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
146        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
147        TabStop = TRUE ;                                                            \
148        HelpId = HID_DSADMIN_SCHEMA;                                                \
149        Text [ en-US ] = "Use schema name in SELECT statements";                    \
150    };
151
152//-------------------------------------------------------------------------
153
154#define AUTO_IGNOREINDEXAPPENDIX(AUTO_Y)                                            \
155    CheckBox CB_IGNOREINDEXAPPENDIX                                                 \
156    {                                                                               \
157        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
158        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12  , CHECKBOX_HEIGHT ) ;          \
159        TabStop = TRUE ;                                                            \
160        HelpId = HID_DSADMIN_IGNOREINDEXAPPENDIX;                                   \
161        Text[ en-US ] = "Create index with ASC or DESC statement";                  \
162    };
163
164//-------------------------------------------------------------------------
165
166#define AUTO_DOSLINEENDS(AUTO_Y)                                                    \
167    CheckBox CB_DOSLINEENDS                                                         \
168    {                                                                               \
169        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
170        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
171        TabStop = TRUE ;                                                            \
172        HelpId = HID_DSADMIN_DOSLINEENDS;                                           \
173        Text [ en-US ] = "End text lines with CR+LF";                               \
174    };
175
176//-------------------------------------------------------------------------
177#define AUTO_IGNORECURRENCY(AUTO_Y)											        \
178	CheckBox CB_IGNORECURRENCY														\
179	{																				\
180		Pos		= MAP_APPFONT ( 6 , AUTO_Y ) ;										\
181		Size	= MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;			\
182		TabStop = TRUE ;															\
183		HelpId = HID_DSADMIN_IGNORECURRENCY;										\
184		Text [ en-US ] = "Ignore currency field information";						\
185	};
186
187//-------------------------------------------------------------------------
188
189#define AUTO_CHECKREQUIRED(AUTO_Y)                                                  \
190    CheckBox CB_CHECK_REQUIRED                                                      \
191    {                                                                               \
192        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
193        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
194        TabStop = TRUE ;                                                            \
195        HelpId = HID_DSADMIN_CHECK_REQUIRED_FIELDS;                                 \
196        Text [ en-US ] = "Form data input checks for required fields";            \
197    };
198
199#define AUTO_ESCAPE_DATETIME(AUTO_Y)                                                \
200    CheckBox CB_ESCAPE_DATETIME                                                     \
201    {                                                                               \
202        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
203        Size    = MAP_APPFONT ( ADVANCED_PAGE_X -12 , CHECKBOX_HEIGHT ) ;           \
204        TabStop = TRUE ;                                                            \
205        HelpId = HID_DSADMIN_ESCAPE_DATETIME;                                       \
206        Text [ en-US ] = "Use ODBC conformant date/time literals";                  \
207    };
208
209
210#define AUTO_PRIMARY_KEY_SUPPORT(AUTO_Y)                                            \
211    CheckBox CB_PRIMARY_KEY_SUPPORT                                                 \
212    {                                                                               \
213        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
214        Size    = MAP_APPFONT ( ADVANCED_PAGE_X - 12 , CHECKBOX_HEIGHT ) ;          \
215        TabStop = TRUE ;                                                            \
216        HelpId = HID_DSADMIN_PRIMARY_KEY_SUPPORT;                                   \
217        Text [ en-US ] = "Supports primary keys";                                   \
218    };
219
220#define AUTO_RESPECTRESULTSETTYPE(AUTO_Y)                                            \
221    CheckBox CB_RESPECTRESULTSETTYPE                                                 \
222    {                                                                               \
223        Pos     = MAP_APPFONT ( 6 , AUTO_Y ) ;                                      \
224        Size    = MAP_APPFONT ( ADVANCED_PAGE_X - 12 , CHECKBOX_HEIGHT ) ;          \
225        TabStop = TRUE ;                                                            \
226        HelpId = HID_DSADMIN_RESPECTRESULTSETTYPE;                                   \
227        Text [ en-US ] = "Respect the result set type from the database driver";                                   \
228    };
229
230
231//-------------------------------------------------------------------------
232
233#define WORKAROUND                                                                  \
234        StringList [ en-US ] =                                                      \
235		{                                                                           \
236			< "Default" ; Default ; > ;                                             \
237			< "SQL" ; Default ; > ;                                                 \
238			< "Mixed" ; Default ; > ;                                               \
239			< "MS Access" ; Default ; > ;                                           \
240		};
241
242
243#define AUTO_BOOLEANCOMPARISON(AUTO_Y)                                              \
244    FixedText FT_BOOLEANCOMPARISON                                                  \
245    {                                                                               \
246        Pos     = MAP_APPFONT ( START_X , AUTO_Y + ( LISTBOX_HEIGHT - CHECKBOX_HEIGHT ) / 2 ) ;   \
247        Size    = MAP_APPFONT ( 100 , CHECKBOX_HEIGHT );                            \
248        Text [ en-US ] = "Comparison of Boolean values";                            \
249    };                                                                              \
250    ListBox LB_BOOLEANCOMPARISON                                                    \
251    {                                                                               \
252        Pos     = MAP_APPFONT ( START_X + 100, AUTO_Y ) ;                           \
253        Size    = MAP_APPFONT ( 60 , LISTBOX_HEIGHT ) ;                             \
254        TabStop = TRUE ;                                                            \
255        SvLook = TRUE;                                                              \
256        DropDown = TRUE;                                                            \
257        Border = TRUE;                                                              \
258        HelpId = HID_DSADMIN_BOOLEANCOMPARISON;                                     \
259        WORKAROUND                                                                  \
260    };                                                                              \
261
262#define AUTO_MAXROWSCAN(AUTO_Y)                                              \
263    FixedText FT_MAXROWSCAN                                                  \
264    {                                                                               \
265        Pos     = MAP_APPFONT ( START_X , AUTO_Y + ( LISTBOX_HEIGHT - CHECKBOX_HEIGHT ) / 2 ) ;   \
266        Size    = MAP_APPFONT ( 100 , CHECKBOX_HEIGHT );                            \
267        Text [ en-US ] = "Rows to scan column types";                               \
268    };                                                                              \
269    NumericField NF_MAXROWSCAN                                                      \
270    {                                                                               \
271        Pos     = MAP_APPFONT ( START_X + 100, AUTO_Y ) ;                           \
272        Size    = MAP_APPFONT ( 60 , EDIT_HEIGHT ) ;                                \
273        TabStop = TRUE ;                                                            \
274        NoThousandSep = TRUE;                                                       \
275        Border = TRUE;                                                              \
276        HelpId = HID_DSADMIN_MAXROWSCAN;                                            \
277    };                                                                              \
278
279
280//-------------------------------------------------------------------------
281
282TabPage PAGE_GENERATED_VALUES
283{
284    HelpID = "dbaccess:TabPage:PAGE_GENERATED_VALUES";
285    SVLook = TRUE ;
286    Pos = MAP_APPFONT ( 0 , 0 ) ;
287    Size = MAP_APPFONT ( ADVANCED_PAGE_X , ADVANCED_PAGE_Y ) ;
288    Hide = TRUE;
289
290    FixedLine FL_SEPARATORAUTO
291    {
292        Pos = MAP_APPFONT ( 4, UNRELATED_CONTROLS ) ;
293        Size = MAP_APPFONT ( ADVANCED_PAGE_X - 2*RELATED_CONTROLS , FIXEDTEXT_HEIGHT ) ;
294        Text [ en-US ] = "Settings";
295    };
296
297    CheckBox CB_RETRIEVE_AUTO
298    {
299        Pos     = MAP_APPFONT ( 6 , UNRELATED_CONTROLS + FIXEDTEXT_HEIGHT + RELATED_CONTROLS) ;
300        Size    = MAP_APPFONT ( ADVANCED_PAGE_X - 2*UNRELATED_CONTROLS , CHECKBOX_HEIGHT ) ;
301        TabStop = TRUE ;
302        HelpId = HID_DSADMIN_AUTORETRIEVEENABLED;
303        Text [ en-US ] = "Re~trieve generated values";
304    };
305
306    FixedText FT_AUTOINCREMENTVALUE
307    {
308        Pos     = MAP_APPFONT ( 15 , UNRELATED_CONTROLS + FIXEDTEXT_HEIGHT + 2*RELATED_CONTROLS + CHECKBOX_HEIGHT ) ;
309        Size = MAP_APPFONT ( ADVANCED_PAGE_X - 15 - 6 , FIXEDTEXT_HEIGHT ) ;
310        Text[ en-US ] = "~Auto-increment statement";
311    };
312
313    Edit ET_AUTOINCREMENTVALUE
314    {
315        Border = TRUE ;
316        Pos     = MAP_APPFONT ( 15 , UNRELATED_CONTROLS + 2*FIXEDTEXT_HEIGHT + CHECKBOX_HEIGHT + 3*RELATED_CONTROLS ) ;
317        Size = MAP_APPFONT ( ADVANCED_PAGE_X - 15 - 2*UNRELATED_CONTROLS , EDIT_HEIGHT ) ;
318        TabStop = TRUE ;
319        HelpId = HID_DSADMIN_AUTOINCREMENTVALUE;
320    };
321
322    FixedText FT_RETRIEVE_AUTO
323    {
324        Pos     = MAP_APPFONT ( 15 , UNRELATED_CONTROLS + 2*FIXEDTEXT_HEIGHT + CHECKBOX_HEIGHT + 4*RELATED_CONTROLS + EDIT_HEIGHT) ;
325        Size = MAP_APPFONT ( ADVANCED_PAGE_X - 15 - 6 , 10 ) ;
326        Text [ en-US ] = "~Query of generated values";
327    };
328
329    Edit ET_RETRIEVE_AUTO
330    {
331        Border = TRUE ;
332        Pos     = MAP_APPFONT ( 15 , UNRELATED_CONTROLS + 3*FIXEDTEXT_HEIGHT + CHECKBOX_HEIGHT + 5*RELATED_CONTROLS + EDIT_HEIGHT ) ;
333        Size = MAP_APPFONT ( ADVANCED_PAGE_X - 15 - 2*UNRELATED_CONTROLS, EDIT_HEIGHT ) ;
334        TabStop = TRUE ;
335        HelpId = HID_DSADMIN_RETRIEVE_AUTO;
336    };
337};
338
339//-------------------------------------------------------------------------
340
341TabPage PAGE_ADVANCED_SETTINGS_SPECIAL
342{
343    HelpID = "dbaccess:TabPage:PAGE_ADVANCED_SETTINGS_SPECIAL";
344    SVLook = TRUE ;
345    Pos = MAP_APPFONT ( 0 , 0 ) ;
346    Size = MAP_APPFONT ( ADVANCED_PAGE_X , ADVANCED_PAGE_Y ) ;
347    Hide = TRUE;
348    AUTO_DATAHANDLING(            RELATED_CONTROLS )
349    AUTO_SQL92CHECK(            1*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +                      RELATED_CONTROLS )
350    AUTO_APPENDTABLEALIAS(      2*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +  1*CHECKBOX_HEIGHT + RELATED_CONTROLS )
351    AUTO_AS_BEFORE_CORR_NAME(   3*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +  2*CHECKBOX_HEIGHT + RELATED_CONTROLS )
352    AUTO_ENABLEOUTERJOIN(       4*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +  3*CHECKBOX_HEIGHT + RELATED_CONTROLS )
353    AUTO_IGNOREDRIVER_PRIV(     5*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +  4*CHECKBOX_HEIGHT + RELATED_CONTROLS )
354    AUTO_PARAMETERNAMESUBST(    6*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +  5*CHECKBOX_HEIGHT + RELATED_CONTROLS )
355    AUTO_SUPPRESVERSIONCOLUMN(  7*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +  6*CHECKBOX_HEIGHT + RELATED_CONTROLS )
356    AUTO_CATALOG(               8*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +  7*CHECKBOX_HEIGHT + RELATED_CONTROLS )
357    AUTO_SCHEMA(                9*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +  8*CHECKBOX_HEIGHT + RELATED_CONTROLS )
358    AUTO_IGNOREINDEXAPPENDIX(  10*RELATED_CONTROLS + FIXEDTEXT_HEIGHT +  9*CHECKBOX_HEIGHT + RELATED_CONTROLS )
359    AUTO_DOSLINEENDS(          11*RELATED_CONTROLS + FIXEDTEXT_HEIGHT + 10*CHECKBOX_HEIGHT + RELATED_CONTROLS )
360    AUTO_CHECKREQUIRED(        12*RELATED_CONTROLS + FIXEDTEXT_HEIGHT + 11*CHECKBOX_HEIGHT + RELATED_CONTROLS )
361    AUTO_IGNORECURRENCY(       13*RELATED_CONTROLS + FIXEDTEXT_HEIGHT + 12*CHECKBOX_HEIGHT + RELATED_CONTROLS )
362    AUTO_ESCAPE_DATETIME(      14*RELATED_CONTROLS + FIXEDTEXT_HEIGHT + 14*CHECKBOX_HEIGHT + RELATED_CONTROLS )
363    AUTO_PRIMARY_KEY_SUPPORT(  15*RELATED_CONTROLS + FIXEDTEXT_HEIGHT + 15*CHECKBOX_HEIGHT + RELATED_CONTROLS )
364    AUTO_RESPECTRESULTSETTYPE( 16*RELATED_CONTROLS + FIXEDTEXT_HEIGHT + 16*CHECKBOX_HEIGHT + RELATED_CONTROLS )
365    AUTO_BOOLEANCOMPARISON(    17*RELATED_CONTROLS + FIXEDTEXT_HEIGHT + 15*CHECKBOX_HEIGHT + RELATED_CONTROLS + ( LISTBOX_HEIGHT - CHECKBOX_HEIGHT ) / 2 )
366    AUTO_MAXROWSCAN(           18*RELATED_CONTROLS + FIXEDTEXT_HEIGHT + 15*CHECKBOX_HEIGHT + RELATED_CONTROLS + ( LISTBOX_HEIGHT - CHECKBOX_HEIGHT ) / 2 )
367};
368
369//-------------------------------------------------------------------------
370
371TabDialog DLG_DATABASE_ADVANCED
372{
373    OutputSize = TRUE ;
374    SVLook = TRUE ;
375    Moveable = TRUE ;
376    Closeable = TRUE ;
377    Hide = TRUE;
378    HelpId = HID_DSADMIN_ADVANCED;
379
380    TabControl 1
381    {
382        OutputSize = TRUE ;
383        HelpId = HID_DSADMIN_TABCONTROL;
384    };
385
386    String STR_GENERATED_VALUE
387    {
388        Text [ en-US ] = "Generated Values";
389    };
390
391    String STR_DS_BEHAVIOUR
392    {
393        Text [ en-US ] = "Special Settings";
394    };
395
396    Text [ en-US ] = "Advanced Settings" ;
397};
398