1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
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.
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).
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.
26 ************************************************************************/
28 // MARKER(update_precomp.py): autogen include statement, do not remove
29 #include "precompiled_rsc.hxx"
31 /****************** I N C L U D E S **************************************/
32 // C and C++ Includes.
40 // Programmabhaengige Includes.
41 #include <rsctree.hxx>
43 #include <rscrange.hxx>
44 #include <rscconst.hxx>
45 #include <rscflag.hxx>
47 #include <rsccont.hxx>
49 #include <rscclass.hxx>
54 #include <yyrscyacc.hxx>
56 /****************** M a c r o s ******************************************/
57 #define INS_WINBIT( pClass, WinBit ) \
58 InsWinBit( pClass, #WinBit, n##WinBit##Id );
60 /****************** C O D E **********************************************/
61 void NameToVerCtrl( RSCINST
& aVersion
, RscTop
* pClass
,
62 RscTop
* pClassString
)
66 NameToVerCtrl( aVersion
, (RscTop
*)pClass
->Left(), pClassString
);
71 // Namen in Versionskontrolle einsetzen
73 GetElement( aVersion
, RscId( pClass
->GetTypId() ),
74 pClassString
, RSCINST(), &aVI
);
75 aStr
= aVI
.pClass
->GetVariable( aVI
, pHS
->getID( "TEXT" ),
77 aStr
.pClass
->SetString( aStr
, pHS
->getString( pClass
->GetId() ).getStr() );
79 NameToVerCtrl( aVersion
, (RscTop
*)pClass
->Right(), pClassString
);
83 /*************************************************************************
88 |* Ersterstellung MM 22.03.91
89 |* Letzte Aenderung MM 27.06.91
91 *************************************************************************/
92 void RscTypCont::Init()
94 RscEnum
* pFieldUnits
;
95 RscEnum
* pTimeFieldFormat
;
100 RscEnum
* pMessButtons
;
101 RscEnum
* pMessDefButton
;
102 RscTupel
* pGeometry
;
103 RscArray
* pLangGeometry
;
104 RscCont
* pStringList
;
105 RscArray
* pLangStringList
;
106 RscTupel
* pStringTupel
;
107 RscTupel
* pStringLongTupel
;
108 RscCont
* pStringTupelList
;
109 RscCont
* pStringLongTupelList
;
110 RscArray
* pLangStringTupelList
;
111 RscArray
* pLangStringLongTupelList
;
114 RscTop
* pClassString
;
115 RscTop
* pClassStringArray
;
116 RscTop
* pClassBitmap
;
117 RscTop
* pClassColor
;
118 RscTop
* pClassImage
;
119 RscTop
* pClassImageList
;
120 RscTop
* pClassWindow
;
121 RscTop
* pClassSystemWindow
;
122 RscTop
* pClassWorkWindow
;
123 RscTop
* pClassDialog
;
124 RscTop
* pClassModalDialog
;
125 RscTop
* pClassModelessDialog
;
126 RscTop
* pClassControl
;
127 RscTop
* pClassButton
;
128 RscTop
* pClassCheckBox
;
129 RscTop
* pClassPushButton
;
130 RscTop
* pClassOKButton
;
131 RscTop
* pClassCancelButton
;
132 RscTop
* pClassHelpButton
;
133 RscTop
* pClassRadioButton
;
134 RscTop
* pClassImageRadioButton
;
135 RscTop
* pClassImageButton
;
136 RscTop
* pClassTriStateBox
;
138 RscTop
* pClassMultiLineEdit
;
139 RscTop
* pClassScrollBar
;
140 RscTop
* pClassListBox
;
141 RscTop
* pClassMultiListBox
;
142 RscTop
* pClassComboBox
;
143 RscTop
* pClassFixedText
;
144 RscTop
* pClassFixedBitmap
;
145 RscTop
* pClassFixedImage
;
146 RscTop
* pClassGroupBox
;
147 RscTop
* pClassKeyCode
;
148 RscTop
* pLangClassKeyCode
;
149 RscTop
* pClassAccelItem
;
150 RscTop
* pClassAccel
;
151 RscTop
* pClassMenuItem
;
153 RscTop
* pClassMenuButton
;
154 RscTop
* pClassMessBox
;
155 RscTop
* pClassInfoBox
;
156 RscTop
* pClassWarningBox
;
157 RscTop
* pClassErrorBox
;
158 RscTop
* pClassQueryBox
;
159 RscTop
* pClassSplitter
;
160 RscTop
* pClassSplitWindow
;
161 RscTop
* pClassSpinButton
;
164 RscTop
* pClassSpinField
;
165 RscTop
* pClassPatternField
;
166 RscTop
* pClassNumericField
;
167 RscTop
* pClassMetricField
;
168 RscTop
* pClassCurrencyField
;
169 RscTop
* pClassLongCurrencyField
;
170 RscTop
* pClassDateField
;
171 RscTop
* pClassTimeField
;
172 RscTop
* pClassPatternBox
;
173 RscTop
* pClassNumericBox
;
174 RscTop
* pClassMetricBox
;
175 RscTop
* pClassCurrencyBox
;
176 RscTop
* pClassLongCurrencyBox
;
177 RscTop
* pClassDateBox
;
178 RscTop
* pClassTimeBox
;
179 RscTop
* pClassDockingWindow
;
180 RscTop
* pClassToolBoxItem
;
181 RscTop
* pClassToolBox
;
182 RscTop
* pClassStatusBar
;
183 RscTop
* pClassMoreButton
;
184 RscTop
* pClassFloatingWindow
;
185 RscTop
* pClassTabPage
;
186 RscTop
* pClassTabDialog
;
187 RscTop
* pClassTabControlItem
;
188 RscTop
* pClassTabControl
;
189 RscTop
* pClassFixedLine
;
190 RscTop
* pClassScrollBarBox
;
191 RscTop
* pClassSfxStyleFamilyItem
;
192 RscTop
* pClassSfxTemplateDialog
;
193 RscTop
* pClassSfxSlotInfo
;
197 aNmTb
.SetSort( sal_False
);
199 /********** C O M P I L E R T Y P E N ******************************/
200 aNmTb
.Put( "LINE", LINE
, (long)0 );
201 aNmTb
.Put( "NOT", NOT
, (long)0 );
202 aNmTb
.Put( "DEFINE", DEFINE
, (long)0 );
203 aNmTb
.Put( "INCLUDE", INCLUDE
, (long)0 );
204 aNmTb
.Put( "DEFAULT", DEFAULT
, (long)0 );
205 aNmTb
.Put( "class", CLASS
, (long)0 );
206 aNmTb
.Put( "extendable", EXTENDABLE
, (long)0 );
207 aNmTb
.Put( "writeifset", WRITEIFSET
, (long)0 );
209 /* Werte fuer Aufzaehlungstypen */
210 aNmTb
.Put( "TRUE", BOOLEAN
, (long)sal_True
);
211 aNmTb
.Put( "FALSE", BOOLEAN
, (long)sal_False
);
214 /* Vordefinierte HilfeId's */
215 aNmTb
.Put( "HELP_INDEX", NUMBER
, OOO_HELP_INDEX
);
216 aNmTb
.Put( "HELP_HELPONHELP", NUMBER
, OOO_HELP_HELPONHELP
);
219 aNmTb
.Put( "XSCALE", XSCALE
, (long)0 );
220 aNmTb
.Put( "YSCALE", YSCALE
, (long)0 );
221 aNmTb
.Put( "RGB", RGB
, (long)0 );
222 aNmTb
.Put( "POSSIZE", GEOMETRY
, (long)0 );
223 aNmTb
.Put( "POS", POSITION
, (long)0 );
224 aNmTb
.Put( "SIZE", DIMENSION
, (long)0 );
225 aNmTb
.Put( "ZoomInOutputSize", INZOOMOUTPUTSIZE
,(long)0 );
226 aNmTb
.Put( "FloatingPos", FLOATINGPOS
, (long)0 );
228 /********** B A S I S T Y P E N ************************************/
230 /********** S H O R T ************************************************/
231 aShort
.SetRange( -32768, 32767 );
233 /********** U S H O R T **********************************************/
234 aUShort
.SetRange( 0, 0xFFFF );
236 /********** L O N G **************************************************/
237 aLong
.SetRange( SAL_MIN_INT32
, SAL_MAX_INT32
);
238 aEnumLong
.SetRange( SAL_MIN_INT32
, SAL_MAX_INT32
);
240 /********** I D U S H O R T ******************************************/
241 aIdUShort
.SetRange( 0, 0xFFFF );
243 /********** I D N O Z E R O U S H O R T ******************************/
244 aIdNoZeroUShort
.SetRange( 1, 0xFFFF );
246 /********** N O Z E R O S H O R T ************************************/
247 aNoZeroShort
.SetRange( -32768, 32767 );
248 aNoZeroShort
.SetOutRange( 0 );
250 /********** R A N G E S H O R T **************************************/
251 a1to12Short
.SetRange( 1, 12 );
252 a0to23Short
.SetRange( 0, 23 );
253 a1to31Short
.SetRange( 1, 31 );
254 a0to59Short
.SetRange( 0, 59 );
255 a0to99Short
.SetRange( 0, 99 );
256 a0to9999Short
.SetRange( 0, 9999 );
258 /********** I D R A N G E ********************************************/
259 aIdLong
.SetRange( SAL_MIN_INT32
, SAL_MAX_INT32
);
262 /********** W I N B I T S F L A G ************************************/
263 // Variablenname fuer WinBits
264 nWinBitVarId
= aNmTb
.Put( "_WinBits", VARNAME
);
267 nBorderId
= pHS
->getID( "WB_BORDER" );
268 aWinBits
.SetConstant( nBorderId
, sal::static_int_cast
<sal_Int32
>(WB_BORDER
) );
269 nHideId
= pHS
->getID( "WB_HIDE" );
270 aWinBits
.SetConstant( nHideId
, sal::static_int_cast
<sal_Int32
>(WB_HIDE
) );
271 nClipChildrenId
= pHS
->getID( "WB_CLIPCHILDREN" );
272 aWinBits
.SetConstant( nClipChildrenId
, sal::static_int_cast
<sal_Int32
>(WB_CLIPCHILDREN
) );
273 nSizeableId
= pHS
->getID( "WB_SIZEABLE" );
274 aWinBits
.SetConstant( nSizeableId
, sal::static_int_cast
<sal_Int32
>(WB_SIZEABLE
) );
275 nMoveableId
= pHS
->getID( "WB_MOVEABLE" );
276 aWinBits
.SetConstant( nMoveableId
, sal::static_int_cast
<sal_Int32
>(WB_MOVEABLE
) );
277 nMinimizeId
= pHS
->getID( "WB_MINABLE" );
278 aWinBits
.SetConstant( nMinimizeId
, 0 /*WB_MINABLE*/ );
279 nMaximizeId
= pHS
->getID( "WB_MAXABLE" );
280 aWinBits
.SetConstant( nMaximizeId
, 0 /*WB_MAXABLE*/ );
281 nCloseableId
= pHS
->getID( "WB_CLOSEABLE" );
282 aWinBits
.SetConstant( nCloseableId
, sal::static_int_cast
<sal_Int32
>(WB_CLOSEABLE
) );
283 nAppId
= pHS
->getID( "WB_APP" );
284 aWinBits
.SetConstant( nAppId
, sal::static_int_cast
<sal_Int32
>(WB_APP
) );
285 nTabstopId
= pHS
->getID( "WB_TABSTOP" );
286 aWinBits
.SetConstant( nTabstopId
, sal::static_int_cast
<sal_Int32
>(WB_TABSTOP
) );
287 nGroupId
= pHS
->getID( "WB_GROUP" );
288 aWinBits
.SetConstant( nGroupId
, sal::static_int_cast
<sal_Int32
>(WB_GROUP
) );
289 nSysmodalId
= pHS
->getID( "WB_SYSMODAL" );
290 aWinBits
.SetConstant( nSysmodalId
, 0 /*WB_SYSMODAL*/ );
293 nLeftId
= pHS
->getID( "WB_LEFT" );
294 aWinBits
.SetConstant( nLeftId
, sal::static_int_cast
<sal_Int32
>(WB_LEFT
) );
295 nCenterId
= pHS
->getID( "WB_CENTER" );
296 aWinBits
.SetConstant( nCenterId
, sal::static_int_cast
<sal_Int32
>(WB_CENTER
) );
297 nRightId
= pHS
->getID( "WB_RIGHT" );
298 aWinBits
.SetConstant( nRightId
, sal::static_int_cast
<sal_Int32
>(WB_RIGHT
) );
299 nTopId
= pHS
->getID( "WB_TOP" );
300 aWinBits
.SetConstant( nTopId
, sal::static_int_cast
<sal_Int32
>(WB_TOP
) );
301 nVCenterId
= pHS
->getID( "WB_VCENTER" );
302 aWinBits
.SetConstant( nVCenterId
, sal::static_int_cast
<sal_Int32
>(WB_VCENTER
) );
303 nBottomId
= pHS
->getID( "WB_BOTTOM" );
304 aWinBits
.SetConstant( nBottomId
, sal::static_int_cast
<sal_Int32
>(WB_BOTTOM
) );
305 nHScrollId
= pHS
->getID( "WB_HSCROLL" );
306 aWinBits
.SetConstant( nHScrollId
, sal::static_int_cast
<sal_Int32
>(WB_HSCROLL
) );
307 nVScrollId
= pHS
->getID( "WB_VSCROLL" );
308 aWinBits
.SetConstant( nVScrollId
, sal::static_int_cast
<sal_Int32
>(WB_VSCROLL
) );
309 nSortId
= pHS
->getID( "WB_SORT" );
310 aWinBits
.SetConstant( nSortId
, sal::static_int_cast
<sal_Int32
>(WB_SORT
) );
311 nDefaultId
= pHS
->getID( "WB_DEFBUTTON" );
312 aWinBits
.SetConstant( nDefaultId
, sal::static_int_cast
<sal_Int32
>(WB_DEFBUTTON
) );
313 nRepeatId
= pHS
->getID( "WB_REPEAT" );
314 aWinBits
.SetConstant( nRepeatId
, sal::static_int_cast
<sal_Int32
>(WB_REPEAT
) );
315 nSVLookId
= pHS
->getID( "WB_SVLOOK" );
316 aWinBits
.SetConstant( nSVLookId
, sal::static_int_cast
<sal_Int32
>(WB_3DLOOK
) );
317 nDropDownId
= pHS
->getID( "WB_DROPDOWN" );
318 aWinBits
.SetConstant( nDropDownId
, sal::static_int_cast
<sal_Int32
>(WB_DROPDOWN
) );
319 nPassWordId
= pHS
->getID( "WB_PASSWORD" );
320 aWinBits
.SetConstant( nPassWordId
, sal::static_int_cast
<sal_Int32
>(WB_PASSWORD
) );
321 nReadOnlyId
= pHS
->getID( "WB_READONLY" );
322 aWinBits
.SetConstant( nReadOnlyId
, sal::static_int_cast
<sal_Int32
>(WB_READONLY
) );
323 nAutoSizeId
= pHS
->getID( "WB_AUTOSIZE" );
324 aWinBits
.SetConstant( nAutoSizeId
, sal::static_int_cast
<sal_Int32
>(WB_AUTOSIZE
) );
325 nSpinId
= pHS
->getID( "WB_SPIN" );
326 aWinBits
.SetConstant( nSpinId
, sal::static_int_cast
<sal_Int32
>(WB_SPIN
) );
327 nTabControlId
= pHS
->getID( "WB_DIALOGCONTROL" );
328 aWinBits
.SetConstant( nTabControlId
, sal::static_int_cast
<sal_Int32
>(WB_DIALOGCONTROL
) );
329 nSimpleModeId
= pHS
->getID( "WB_SIMPLEMODE" );
330 aWinBits
.SetConstant( nSimpleModeId
, sal::static_int_cast
<sal_Int32
>(WB_SIMPLEMODE
) );
331 nDragId
= pHS
->getID( "WB_DRAG" );
332 aWinBits
.SetConstant( nDragId
, sal::static_int_cast
<sal_Int32
>(WB_DRAG
) );
333 nScrollId
= pHS
->getID( "WB_SCROLL" );
334 aWinBits
.SetConstant( nScrollId
, sal::static_int_cast
<sal_Int32
>(WB_SCROLL
) );
335 nZoomableId
= pHS
->getID( "WB_ZOOMABLE" );
336 aWinBits
.SetConstant( nZoomableId
, sal::static_int_cast
<sal_Int32
>(WB_ROLLABLE
) );
337 nHideWhenDeactivateId
= pHS
->getID( "WB_HIDEWHENDEACTIVATE" );
338 aWinBits
.SetConstant( nHideWhenDeactivateId
, 0 /*WB_HIDEWHENDEACTIVATE*/ );
339 nAutoHScrollId
= pHS
->getID( "WB_AUTOHSCROLL" );
340 aWinBits
.SetConstant( nAutoHScrollId
, sal::static_int_cast
<sal_Int32
>(WB_AUTOHSCROLL
) );
341 nAutoVScrollId
= pHS
->getID( "WB_AUTOVSCROLL" );
342 aWinBits
.SetConstant( nAutoVScrollId
, sal::static_int_cast
<sal_Int32
>(WB_AUTOVSCROLL
) );
343 nDDExtraWidthId
= pHS
->getID( "WB_DDEXTRAWIDTH" );
344 aWinBits
.SetConstant( nDDExtraWidthId
, 0 /*WB_DDEXTRAWIDTH*/ );
345 nWordBreakId
= pHS
->getID( "WB_WORDBREAK" );
346 aWinBits
.SetConstant( nWordBreakId
, sal::static_int_cast
<sal_Int32
>(WB_WORDBREAK
) );
347 nLeftLabelId
= pHS
->getID( "WB_LEFTLABEL" );
348 aWinBits
.SetConstant( nLeftLabelId
, 0 /*WB_LEFTLABEL*/ );
349 nHasLinesId
= pHS
->getID( "WB_HASLINES" );
350 aWinBits
.SetConstant( nHasLinesId
, sal::static_int_cast
<sal_Int32
>(WB_HASLINES
) );
351 nHasButtonsId
= pHS
->getID( "WB_HASBUTTONS" );
352 aWinBits
.SetConstant( nHasButtonsId
, sal::static_int_cast
<sal_Int32
>(WB_HASBUTTONS
) );
353 nRectStyleId
= pHS
->getID( "WB_RECTSTYLE" );
354 aWinBits
.SetConstant( nRectStyleId
, sal::static_int_cast
<sal_Int32
>(WB_RECTSTYLE
) );
355 nLineSpacingId
= pHS
->getID( "WB_LINESPACING" );
356 aWinBits
.SetConstant( nLineSpacingId
, sal::static_int_cast
<sal_Int32
>(WB_LINESPACING
) );
357 nSmallStyleId
= pHS
->getID( "WB_SMALLSTYLE" );
358 aWinBits
.SetConstant( nSmallStyleId
, sal::static_int_cast
<sal_Int32
>(WB_SMALLSTYLE
) );
359 nEnableResizingId
= pHS
->getID( "WB_ENABLERESIZING" );
360 aWinBits
.SetConstant( nEnableResizingId
, 0 /*WB_ENABLERESIZING*/ );
361 nDockableId
= pHS
->getID( "WB_DOCKABLE" );
362 aWinBits
.SetConstant( nDockableId
, sal::static_int_cast
<sal_Int32
>(WB_DOCKABLE
) );
363 nScaleId
= pHS
->getID( "WB_SCALE" );
364 aWinBits
.SetConstant( nScaleId
, sal::static_int_cast
<sal_Int32
>(WB_SCALE
) );
365 nIgnoreTabId
= pHS
->getID( "WB_IGNORETAB" );
366 aWinBits
.SetConstant( nIgnoreTabId
, sal::static_int_cast
<sal_Int32
>(WB_IGNORETAB
) );
367 nNoSplitDrawId
= pHS
->getID( "WB_NOSPLITDRAW" );
368 aWinBits
.SetConstant( nNoSplitDrawId
, sal::static_int_cast
<sal_Int32
>(WB_NOSPLITDRAW
) );
369 nTopImageId
= pHS
->getID( "WB_TOPIMAGE" );
370 aWinBits
.SetConstant( nTopImageId
, sal::static_int_cast
<sal_Int32
>(WB_TOPIMAGE
) );
371 nNoLabelId
= pHS
->getID( "WB_NOLABEL" );
372 aWinBits
.SetConstant( nNoLabelId
, sal::static_int_cast
<sal_Int32
>(WB_NOLABEL
) );
373 nVertId
= pHS
->getID( "WB_VERT" );
374 aWinBits
.SetConstant( nVertId
, sal::static_int_cast
<sal_Int32
>(WB_VERT
) );
375 nSysWinId
= pHS
->getID( "WB_SYSTEMWINDOW" );
376 aWinBits
.SetConstant( nSysWinId
, sal::static_int_cast
<sal_Int32
>(WB_SYSTEMWINDOW
) );
379 /********** I n i t B a s i c T y p e s **************************/
381 aBaseLst
.Insert( pFieldUnits
= InitFieldUnitsType(), LIST_APPEND
);
382 aBaseLst
.Insert( pTimeFieldFormat
= InitTimeFieldFormat(), LIST_APPEND
);
383 aBaseLst
.Insert( pColor
= InitColor(), LIST_APPEND
);
384 aBaseLst
.Insert( pMapUnit
= InitMapUnit(), LIST_APPEND
);
385 aBaseLst
.Insert( pKey
= InitKey(), LIST_APPEND
);
386 aBaseLst
.Insert( pTriState
= InitTriState(), LIST_APPEND
);
387 aBaseLst
.Insert( pMessButtons
= InitMessButtons(), LIST_APPEND
);
388 aBaseLst
.Insert( pMessDefButton
= InitMessDefButton(), LIST_APPEND
);
390 aBaseLst
.Insert( pGeometry
= InitGeometry(), LIST_APPEND
);
391 aBaseLst
.Insert( pLangGeometry
= InitLangGeometry( pGeometry
),
393 aBaseLst
.Insert( pStringList
= InitStringList(), LIST_APPEND
);
394 aBaseLst
.Insert( pLangStringList
= InitLangStringList( pStringList
),
396 aBaseLst
.Insert( pStringTupel
= InitStringTupel(), LIST_APPEND
);
397 aBaseLst
.Insert( pStringTupelList
= InitStringTupelList( pStringTupel
),
399 aBaseLst
.Insert( pLangStringTupelList
=
400 InitLangStringTupelList( pStringTupelList
), LIST_APPEND
);
401 aBaseLst
.Insert( pStringLongTupel
= InitStringLongTupel(), LIST_APPEND
);
402 aBaseLst
.Insert( pStringLongTupelList
= InitStringLongTupelList( pStringLongTupel
),
404 aBaseLst
.Insert( pLangStringLongTupelList
=
405 InitLangStringLongTupelList( pStringLongTupelList
), LIST_APPEND
);
408 /********** R E S O U R C E T Y P E N ******************************/
409 /********** R S C M G R **********************************************/
410 pRoot
= pClassMgr
= InitClassMgr();
412 /********** V e r s i o n s k o n t r o l l e ************************/
413 aVersion
.pClass
= new RscClass( pHS
->getID( "VersionControl" ),
414 RSC_VERSIONCONTROL
, pClassMgr
);
415 aVersion
= aVersion
.pClass
->Create( NULL
, RSCINST() );
417 /********** S T R I N G **********************************************/
418 pClassString
= InitClassString( pClassMgr
);
419 pRoot
->Insert( pClassString
);
421 // String als Referenzklasse des Basisstrings einsetzen
422 aString
.SetRefClass( pClassString
);
424 /********** S T R I N G L I S T **************************************/
426 nId
= pHS
->getID( "StringArray" );
427 pClassStringArray
= new RscClass( nId
, RSC_STRINGARRAY
, pClassMgr
);
428 pClassStringArray
->SetCallPar( *pStdPar1
, *pStdPar2
, *pStdParType
);
429 aNmTb
.Put( nId
, CLASSNAME
, pClassStringArray
);
430 pRoot
->Insert( pClassStringArray
);
433 nId
= aNmTb
.Put( "ItemList", VARNAME
);
434 pClassStringArray
->SetVariable( nId
, pLangStringLongTupelList
);
436 /********** B I T M A P **********************************************/
437 pClassBitmap
= InitClassBitmap( pClassMgr
);
438 pRoot
->Insert( pClassBitmap
);
442 /********** C O L O R ************************************************/
443 pClassColor
= InitClassColor( pClassMgr
, pColor
);
444 pRoot
->Insert( pClassColor
);
446 /********** I M A G E ************************************************/
447 pClassImage
= InitClassImage( pClassMgr
, pClassBitmap
, pClassColor
);
448 pRoot
->Insert( pClassImage
);
450 /********** I M A G E L I S T ****************************************/
451 pClassImageList
= InitClassImageList( pClassMgr
, pClassBitmap
,
452 pClassColor
, pStringLongTupelList
);
453 pRoot
->Insert( pClassImageList
);
455 /********** W I N D O W **********************************************/
456 pClassWindow
= InitClassWindow( pClassMgr
, pMapUnit
,
458 pRoot
->Insert( pClassWindow
);
462 /********** S Y S T E M W I N D O W **********************************/
463 pClassSystemWindow
= InitClassSystemWindow( pClassWindow
);
464 //aBaseLst.Insert( pClassSystemWindow, LIST_APPEND );
465 pRoot
->Insert( pClassSystemWindow
);
467 /********** W O R K W I N D O W **************************************/
468 pClassWorkWindow
= InitClassWorkWindow( pClassSystemWindow
);
469 pRoot
->Insert( pClassWorkWindow
);
471 /********** D I A L O G **********************************************/
473 pClassDialog
= new RscClass( pHS
->getID( "Dialog" ),
474 RSC_DIALOG
, pClassSystemWindow
);
475 pClassDialog
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
476 aBaseLst
.Insert( pClassDialog
, LIST_APPEND
);
478 /********** M O D A L D I A L O G ***********************************/
480 pClassModalDialog
= InitClassModalDialog( pClassDialog
);
481 pRoot
->Insert( pClassModalDialog
);
483 /********** M O D E L E S S D I A L O G ******************************/
485 pClassModelessDialog
= InitClassModelessDialog( pClassDialog
);
486 pRoot
->Insert( pClassModelessDialog
);
489 /********** C O N T R O L ********************************************/
490 pClassControl
= InitClassControl( pClassWindow
);
491 pRoot
->Insert( pClassControl
);
493 /********** B U T T O N **********************************************/
495 nId
= pHS
->getID( "Button" );
496 pClassButton
= new RscClass( nId
, RSC_BUTTON
, pClassControl
);
497 pClassButton
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
498 aNmTb
.Put( nId
, CLASSNAME
, pClassButton
);
499 pRoot
->Insert( pClassButton
);
501 /********** C H E C K B O X ******************************************/
502 pClassCheckBox
= InitClassCheckBox( pClassButton
);
503 pRoot
->Insert( pClassCheckBox
);
505 /********** P U S H B U T T O N **************************************/
507 pClassPushButton
= InitClassPushButton( pClassButton
);
508 pRoot
->Insert( pClassPushButton
);
510 /********** H E L P B U T T O N **************************************/
512 nId
= pHS
->getID( "HelpButton" );
513 pClassHelpButton
= new RscClass( nId
, RSC_HELPBUTTON
,
515 pClassHelpButton
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
516 aNmTb
.Put( nId
, CLASSNAME
, pClassHelpButton
);
517 pRoot
->Insert( pClassHelpButton
);
519 /********** O K B U T T O N ******************************************/
521 nId
= pHS
->getID( "OKButton" );
522 pClassOKButton
= new RscClass( nId
, RSC_OKBUTTON
,
524 pClassOKButton
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
525 aNmTb
.Put( nId
, CLASSNAME
, pClassOKButton
);
526 pRoot
->Insert( pClassOKButton
);
528 /********** C A N C E L B U T T O N **********************************/
530 nId
= pHS
->getID( "CancelButton" );
531 pClassCancelButton
= new RscClass( nId
, RSC_CANCELBUTTON
,
533 pClassCancelButton
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
534 aNmTb
.Put( nId
, CLASSNAME
, pClassCancelButton
);
535 pRoot
->Insert( pClassCancelButton
);
538 /********** R A D I O B U T T O N ************************************/
539 pClassRadioButton
= InitClassRadioButton( pClassButton
);
540 pRoot
->Insert( pClassRadioButton
);
542 /********** I m a g e R a d i o B u t t o n **************************/
543 nId
= pHS
->getID( "ImageRadioButton" );
544 pClassImageRadioButton
= InitClassImageRadioButton( pClassRadioButton
,
546 pRoot
->Insert( pClassImageRadioButton
);
548 /********** T R I S T A T E B O X ************************************/
549 pClassTriStateBox
= InitClassTriStateBox( pClassControl
, pTriState
);
550 pRoot
->Insert( pClassTriStateBox
);
552 /********** I M A G E B U T T O N ************************************/
553 pClassImageButton
= InitClassImageButton( pClassPushButton
,
554 pClassImage
, pTriState
);
555 pRoot
->Insert( pClassImageButton
);
557 /********** E D I T **************************************************/
558 pClassEdit
= InitClassEdit( pClassControl
);
559 pRoot
->Insert( pClassEdit
);
561 /********** M U L T I L I N E E D I T ********************************/
562 pClassMultiLineEdit
= InitClassMultiLineEdit( pClassEdit
);
563 pRoot
->Insert( pClassMultiLineEdit
);
565 /********** S C R O L L B A R ****************************************/
566 pClassScrollBar
= InitClassScrollBar( pClassControl
);
567 pRoot
->Insert( pClassScrollBar
);
571 /********** L I S T B O X ********************************************/
572 pClassListBox
= InitClassListBox( pClassControl
, pLangStringLongTupelList
);
573 pRoot
->Insert( pClassListBox
);
575 /********** M U L T I L I S T B O X **********************************/
576 pClassMultiListBox
= InitClassMultiListBox( pClassListBox
);
577 pRoot
->Insert( pClassMultiListBox
);
579 /********** C O M B O B O X ******************************************/
580 pClassComboBox
= InitClassComboBox( pClassEdit
, pLangStringList
);
581 pRoot
->Insert( pClassComboBox
);
583 /********** F I X E D T E X T ****************************************/
584 pClassFixedText
= InitClassFixedText( pClassControl
);
585 pRoot
->Insert( pClassFixedText
);
587 /********** F i x e d B i t m a p ************************************/
588 pClassFixedBitmap
= InitClassFixedBitmap( pClassControl
, pClassBitmap
);
589 pRoot
->Insert( pClassFixedBitmap
);
591 /********** F i x e d I m a g e **************************************/
592 pClassFixedImage
= InitClassFixedImage( pClassControl
, pClassImage
);
593 pRoot
->Insert( pClassFixedImage
);
595 /********** G R O U P B O X ******************************************/
597 nId
= pHS
->getID( "GroupBox" );
598 pClassGroupBox
= new RscClass( nId
, RSC_GROUPBOX
, pClassControl
);
599 pClassGroupBox
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
600 aNmTb
.Put( nId
, CLASSNAME
, pClassGroupBox
);
601 pRoot
->Insert( pClassGroupBox
);
603 /********** K E Y C O D E ********************************************/
604 pClassKeyCode
= InitClassKeyCode( pClassMgr
, pKey
);
605 pRoot
->Insert( pClassKeyCode
);
607 pLangClassKeyCode
= new RscClassArray( pHS
->getID( "LangKeyCode" ),
608 RSC_KEYCODE
, pClassKeyCode
, &aLangType
);
609 aBaseLst
.Insert( pLangClassKeyCode
);
612 /********** A C C E L I T E M ***************************************/
613 pClassAccelItem
= InitClassAccelItem( pClassMgr
, pLangClassKeyCode
);
614 pRoot
->Insert( pClassAccelItem
);
617 /********** A C C E L E R A T O R ************************************/
618 pClassAccel
= InitClassAccel( pClassMgr
, pClassAccelItem
);
619 pRoot
->Insert( pClassAccel
);
620 nAcceleratorType
= pClassAccel
->GetId();
622 /********** A C C E L I T E M ***************************************/
623 // pClassAccel ist erst hier definiert
624 nId
= aNmTb
.Put( "SubAccelerator", VARNAME
);
625 pClassAccelItem
->SetVariable( nId
, pClassAccel
, NULL
, VAR_SVDYNAMIC
,
628 /********** M E N U I T E M ******************************************/
629 pClassMenuItem
= InitClassMenuItem( pClassMgr
, pClassBitmap
,
631 pRoot
->Insert( pClassMenuItem
);
633 /********** M E N U **************************************************/
634 pClassMenu
= InitClassMenu( pClassMgr
, pClassMenuItem
);
635 pRoot
->Insert( pClassMenu
);
637 /********** M E N U I T E M ******************************************/
638 // pClassMenu ist erst hier definiert
639 nId
= aNmTb
.Put( "SubMenu", VARNAME
);
640 pClassMenuItem
->SetVariable( nId
, pClassMenu
, NULL
, VAR_SVDYNAMIC
,
643 /********** M E N U B U T T O N **************************************/
644 pClassMenuButton
= InitClassMenuButton( pClassControl
, pClassMenu
);
645 pRoot
->Insert( pClassMenuButton
);
647 /********** M E S S A G E B O X **************************************/
648 pClassMessBox
= InitClassMessBox( pClassMgr
, pMessButtons
,
650 pRoot
->Insert( pClassMessBox
);
652 /********** I N F O B O X ********************************************/
654 nId
= pHS
->getID( "InfoBox" );
655 pClassInfoBox
= new RscClass( nId
, RSC_INFOBOX
, pClassMessBox
);
656 pClassInfoBox
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
657 aNmTb
.Put( nId
, CLASSNAME
, pClassInfoBox
);
658 pRoot
->Insert( pClassInfoBox
);
660 /********** W A R N I N G B O X **************************************/
662 nId
= pHS
->getID( "WarningBox" );
663 pClassWarningBox
= new RscClass( nId
, RSC_WARNINGBOX
, pClassMessBox
);
664 pClassWarningBox
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
665 aNmTb
.Put( nId
, CLASSNAME
, pClassWarningBox
);
666 pRoot
->Insert( pClassWarningBox
);
668 /********** E R R O R B O X ******************************************/
670 nId
= pHS
->getID( "ErrorBox" );
671 pClassErrorBox
= new RscClass( nId
, RSC_ERRORBOX
, pClassMessBox
);
672 pClassErrorBox
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
673 aNmTb
.Put( nId
, CLASSNAME
, pClassErrorBox
);
674 pRoot
->Insert( pClassErrorBox
);
676 /********** Q U E R Y B O X ******************************************/
678 nId
= pHS
->getID( "QueryBox" );
679 pClassQueryBox
= new RscClass( nId
, RSC_QUERYBOX
, pClassMessBox
);
680 pClassQueryBox
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
681 aNmTb
.Put( nId
, CLASSNAME
, pClassQueryBox
);
682 pRoot
->Insert( pClassQueryBox
);
685 /********** S P L I T T E R ******************************************/
686 pClassSplitter
= InitClassSplitter( pClassWindow
);
687 pRoot
->Insert( pClassSplitter
);
689 /********** S P L I T W I N D O W ************************************/
690 pClassSplitWindow
= InitClassSplitWindow( pClassWindow
);
691 pRoot
->Insert( pClassSplitWindow
);
693 /********** S P I N B U T T O N **************************************/
695 nId
= pHS
->getID( "SpinButton" );
696 pClassSpinButton
= new RscClass( nId
, RSC_SPINBUTTON
, pClassControl
);
697 pClassSpinButton
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
698 aNmTb
.Put( nId
, CLASSNAME
, pClassSpinButton
);
702 // Clientvariablen einfuegen
705 pClient
= new RscClient( pHS
->getID( "sal_Bool" ), RSC_NOTYPE
,
706 &aWinBits
, nRepeatId
),
708 nId
= aNmTb
.Put( "Repeat", VARNAME
);
709 pClassSpinButton
->SetVariable( nId
, pClient
, NULL
,
710 VAR_NODATAINST
, 0, nWinBitVarId
);
712 pRoot
->Insert( pClassSpinButton
);
715 /********** T I M E **************************************************/
716 pClassTime
= InitClassTime( pClassMgr
);
717 pRoot
->Insert( pClassTime
);
719 /********** D A T E **************************************************/
720 pClassDate
= InitClassDate( pClassMgr
);
721 pRoot
->Insert( pClassDate
);
724 /********** S P I N F I E L D ****************************************/
725 pClassSpinField
= InitClassSpinField( pClassEdit
);
726 pRoot
->Insert( pClassSpinField
);
729 /********** P A T T E R N F I E L D **********************************/
730 { // Mehrfachvererbung von Hand
731 RscTop
* pClassTmp
= InitClassPatternFormatter( pClassSpinField
);
732 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
734 pClassPatternField
= InitClassPatternField( pClassTmp
);
735 pRoot
->Insert( pClassPatternField
);
737 /********** N U M E R I C F I E L D **********************************/
738 { // Mehrfachvererbung von Hand
739 RscTop
* pClassTmp
= InitClassNumericFormatter( pClassSpinField
);
740 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
742 pClassNumericField
= InitClassNumericField( pClassTmp
);
743 pRoot
->Insert( pClassNumericField
);
745 /********** M E T R I C F I E L D ************************************/
746 { // Mehrfachvererbung von Hand
747 RscTop
* pClassTmp
= InitClassNumericFormatter( pClassSpinField
);
748 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
749 pClassTmp
= InitClassMetricFormatter( pClassTmp
, pFieldUnits
);
750 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
752 pClassMetricField
= InitClassMetricField( pClassTmp
);
753 pRoot
->Insert( pClassMetricField
);
755 /********** C U R R E N C Y F I E L D ********************************/
756 { // Mehrfachvererbung von Hand
757 RscTop
* pClassTmp
= InitClassNumericFormatter( pClassSpinField
);
758 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
759 pClassTmp
= InitClassCurrencyFormatter( pClassTmp
, pFieldUnits
);
760 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
762 pClassCurrencyField
= InitClassCurrencyField( "CurrencyField", RSC_CURRENCYFIELD
, pClassTmp
);
763 pRoot
->Insert( pClassCurrencyField
);
765 pClassLongCurrencyField
= InitClassCurrencyField( "LongCurrencyField", RSC_LONGCURRENCYFIELD
, pClassTmp
);
766 pRoot
->Insert( pClassLongCurrencyField
);
769 /********** D A T E F I E L D ****************************************/
770 { // Mehrfachvererbung von Hand
771 RscTop
* pClassTmp
= InitClassDateFormatter( pClassSpinField
, pClassDate
);
772 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
774 pClassDateField
= InitClassDateField( pClassTmp
, pClassDate
);
775 pRoot
->Insert( pClassDateField
);
777 /********** T I M E F I E L D ****************************************/
778 { // Mehrfachvererbung von Hand
779 RscTop
* pClassTmp
= InitClassTimeFormatter( pClassSpinField
, pClassTime
,
781 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
783 pClassTimeField
= InitClassTimeField( pClassTmp
, pClassTime
);
784 pRoot
->Insert( pClassTimeField
);
786 /********** P A T T E R N B O X **************************************/
787 { // Mehrfachvererbung von Hand
788 RscTop
* pClassTmp
= InitClassPatternFormatter( pClassComboBox
);
789 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
791 pClassPatternBox
= InitClassPatternBox( pClassTmp
);
792 pRoot
->Insert( pClassPatternBox
);
794 /********** N U M E R I C B O X **************************************/
795 { // Mehrfachvererbung von Hand
796 RscTop
* pClassTmp
= InitClassNumericFormatter( pClassComboBox
);
797 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
799 pClassNumericBox
= InitClassNumericBox( pClassTmp
);
800 pRoot
->Insert( pClassNumericBox
);
804 /********** M E T R I C B O X ****************************************/
805 { // Mehrfachvererbung von Hand
806 RscTop
* pClassTmp
= InitClassNumericFormatter( pClassComboBox
);
807 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
808 pClassTmp
= InitClassMetricFormatter( pClassTmp
, pFieldUnits
);
809 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
811 pClassMetricBox
= InitClassMetricBox( pClassTmp
);
812 pRoot
->Insert( pClassMetricBox
);
814 /********** C U R R E N C Y B O X ************************************/
815 { // Mehrfachvererbung von Hand
816 RscTop
* pClassTmp
= InitClassNumericFormatter( pClassComboBox
);
817 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
818 pClassTmp
= InitClassCurrencyFormatter( pClassTmp
, pFieldUnits
);
819 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
821 pClassCurrencyBox
= InitClassCurrencyBox( "CurrencyBox", RSC_CURRENCYBOX
, pClassTmp
);
822 pRoot
->Insert( pClassCurrencyBox
);
824 pClassLongCurrencyBox
= InitClassCurrencyBox( "LongCurrencyBox", RSC_LONGCURRENCYBOX
, pClassTmp
);
825 pRoot
->Insert( pClassLongCurrencyBox
);
827 /********** D A T E B O X ********************************************/
828 { // Mehrfachvererbung von Hand
829 RscTop
* pClassTmp
= InitClassDateFormatter( pClassComboBox
, pClassDate
);
830 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
832 pClassDateBox
= InitClassDateBox( pClassTmp
, pClassDate
);
833 pRoot
->Insert( pClassDateBox
);
835 /********** T I M E B O X ********************************************/
836 { // Mehrfachvererbung von Hand
837 RscTop
* pClassTmp
= InitClassTimeFormatter( pClassComboBox
, pClassTime
,
839 aBaseLst
.Insert( pClassTmp
, LIST_APPEND
);
841 pClassTimeBox
= InitClassTimeBox( pClassTmp
, pClassTime
);
842 pRoot
->Insert( pClassTimeBox
);
844 /********** D O C K I N G W I N D O W ********************************/
845 pClassDockingWindow
= InitClassDockingWindow( pClassWindow
, pMapUnit
);
846 pRoot
->Insert( pClassDockingWindow
);
848 /********** T O O L B O X I T E M ************************************/
849 pClassToolBoxItem
= InitClassToolBoxItem( pClassMgr
, pClassBitmap
,
850 pClassImage
, pTriState
);
851 pRoot
->Insert( pClassToolBoxItem
);
853 /********** T O O L B O X ********************************************/
854 pClassToolBox
= InitClassToolBox( pClassDockingWindow
, pClassToolBoxItem
,
856 pRoot
->Insert( pClassToolBox
);
858 /********** S T A T U S B A R ****************************************/
859 pClassStatusBar
= InitClassStatusBar( pClassWindow
);
860 pRoot
->Insert( pClassStatusBar
);
862 /********** M O R E B U T T O N **************************************/
863 pClassMoreButton
= InitClassMoreButton( pClassPushButton
, pMapUnit
);
864 pRoot
->Insert( pClassMoreButton
);
866 /********** F L O A T W I N D O W ************************************/
867 pClassFloatingWindow
= InitClassFloatingWindow( pClassSystemWindow
,
869 pRoot
->Insert( pClassFloatingWindow
);
871 /********** T A B P A G E ********************************************/
873 nId
= pHS
->getID( "TabPage" );
875 new RscClass( nId
, RSC_TABPAGE
, pClassWindow
);
876 pClassTabPage
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
877 aNmTb
.Put( nId
, CLASSNAME
, pClassTabPage
);
878 pRoot
->Insert( pClassTabPage
);
880 /********** T A B D I A L O G ****************************************/
882 nId
= pHS
->getID( "TabDialog" );
884 new RscClass( nId
, RSC_TABDIALOG
, pClassModalDialog
);
885 pClassTabDialog
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
886 aNmTb
.Put( nId
, CLASSNAME
, pClassTabDialog
);
887 pRoot
->Insert( pClassTabDialog
);
889 /********** T A B C O N T R O L I T E M *******************************/
890 pClassTabControlItem
= InitClassTabControlItem( pClassMgr
,
892 pRoot
->Insert( pClassTabControlItem
);
894 /********** T A B C O N T R O L **************************************/
895 pClassTabControl
= InitClassTabControl( pClassControl
,
896 pClassTabControlItem
);
897 pRoot
->Insert( pClassTabControl
);
899 /********** F I X E D L I N E ****************************************/
901 nId
= pHS
->getID( "FixedLine" );
903 new RscClass( nId
, RSC_FIXEDLINE
, pClassControl
);
904 pClassFixedLine
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
906 INS_WINBIT(pClassFixedLine
,Vert
)
908 aNmTb
.Put( nId
, CLASSNAME
, pClassFixedLine
);
909 pRoot
->Insert( pClassFixedLine
);
911 /********** S C R O L L B A R B O X **********************************/
913 nId
= pHS
->getID( "ScrollBarBox" );
915 new RscClass( nId
, RSC_SCROLLBARBOX
, pClassWindow
);
916 pClassScrollBarBox
->SetCallPar( *pWinPar1
, *pWinPar2
, *pWinParType
);
917 aNmTb
.Put( nId
, CLASSNAME
, pClassScrollBarBox
);
918 pRoot
->Insert( pClassScrollBarBox
);
919 INS_WINBIT(pClassScrollBarBox
,Sizeable
)
921 /********** S F X S T Y L E F A M I L Y I T E M **********************/
922 pClassSfxStyleFamilyItem
= InitClassSfxStyleFamilyItem( pClassMgr
,
925 pLangStringLongTupelList
);
926 pRoot
->Insert( pClassSfxStyleFamilyItem
);
928 /********** S F X T E M P L A T E D I A L O G ************************/
929 pClassSfxTemplateDialog
= InitClassSfxTemplateDialog( pClassMgr
,
930 pClassSfxStyleFamilyItem
);
931 pRoot
->Insert( pClassSfxTemplateDialog
);
933 /********** S F X I N F O I T E M ************************************/
934 pClassSfxSlotInfo
= InitClassSfxSlotInfo( pClassMgr
);
935 pRoot
->Insert( pClassSfxSlotInfo
);
937 NameToVerCtrl( aVersion
, pRoot
, pClassString
);