1*cdf0e10cSrcweir /************************************************************************* 2*cdf0e10cSrcweir * 3*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*cdf0e10cSrcweir * 5*cdf0e10cSrcweir * Copyright 2000, 2010 Oracle and/or its affiliates. 6*cdf0e10cSrcweir * 7*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite 8*cdf0e10cSrcweir * 9*cdf0e10cSrcweir * This file is part of OpenOffice.org. 10*cdf0e10cSrcweir * 11*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify 12*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3 13*cdf0e10cSrcweir * only, as published by the Free Software Foundation. 14*cdf0e10cSrcweir * 15*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful, 16*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details 19*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code). 20*cdf0e10cSrcweir * 21*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License 22*cdf0e10cSrcweir * version 3 along with OpenOffice.org. If not, see 23*cdf0e10cSrcweir * <http://www.openoffice.org/license.html> 24*cdf0e10cSrcweir * for a copy of the LGPLv3 License. 25*cdf0e10cSrcweir * 26*cdf0e10cSrcweir ************************************************************************/ 27*cdf0e10cSrcweir 28*cdf0e10cSrcweir #ifndef _RSCDB_HXX 29*cdf0e10cSrcweir #define _RSCDB_HXX 30*cdf0e10cSrcweir 31*cdf0e10cSrcweir #include <rscall.h> 32*cdf0e10cSrcweir #include <rsckey.hxx> 33*cdf0e10cSrcweir #include <rscconst.hxx> 34*cdf0e10cSrcweir #include <rscflag.hxx> 35*cdf0e10cSrcweir #include <rscrange.hxx> 36*cdf0e10cSrcweir #include <rscstr.hxx> 37*cdf0e10cSrcweir #include <rscarray.hxx> 38*cdf0e10cSrcweir #include <rscdef.hxx> 39*cdf0e10cSrcweir 40*cdf0e10cSrcweir #include <vector> 41*cdf0e10cSrcweir #include <map> 42*cdf0e10cSrcweir 43*cdf0e10cSrcweir class RscError; 44*cdf0e10cSrcweir class REResourceList; 45*cdf0e10cSrcweir class RscTupel; 46*cdf0e10cSrcweir class RscCont; 47*cdf0e10cSrcweir class RscCmdLine; 48*cdf0e10cSrcweir 49*cdf0e10cSrcweir struct WriteRcContext 50*cdf0e10cSrcweir { 51*cdf0e10cSrcweir FILE * fOutput; 52*cdf0e10cSrcweir rtl::OString aOutputRc; 53*cdf0e10cSrcweir rtl::OString aOutputSysList; 54*cdf0e10cSrcweir RscCmdLine* pCmdLine; 55*cdf0e10cSrcweir }; 56*cdf0e10cSrcweir 57*cdf0e10cSrcweir /****************** R s c T y p C o n ************************************/ 58*cdf0e10cSrcweir // Liste die alle Basistypen enthaelt 59*cdf0e10cSrcweir DECLARE_LIST( RscBaseList, RscTop * ) 60*cdf0e10cSrcweir 61*cdf0e10cSrcweir // Tabelle fuer Systemabhaengige Resourcen 62*cdf0e10cSrcweir struct RscSysEntry 63*cdf0e10cSrcweir { 64*cdf0e10cSrcweir sal_uInt32 nKey; 65*cdf0e10cSrcweir sal_uInt32 nRscTyp; 66*cdf0e10cSrcweir ByteString aFileName; 67*cdf0e10cSrcweir sal_uInt32 nTyp; 68*cdf0e10cSrcweir sal_uInt32 nRefId; 69*cdf0e10cSrcweir }; 70*cdf0e10cSrcweir DECLARE_LIST( RscSysList, RscSysEntry * ) 71*cdf0e10cSrcweir 72*cdf0e10cSrcweir class RscTypCont 73*cdf0e10cSrcweir { 74*cdf0e10cSrcweir CharSet nSourceCharSet; 75*cdf0e10cSrcweir sal_uInt32 nMachineId; // Globaler Maschinentyp 76*cdf0e10cSrcweir RSCBYTEORDER_TYPE nByteOrder; // Intel oder 77*cdf0e10cSrcweir ByteString aLanguage; // output language 78*cdf0e10cSrcweir std::vector< sal_uInt32 > aLangFallbacks; // language fallback list (entry 0 is language itself) 79*cdf0e10cSrcweir ByteString aSearchPath; // Suchen der Bitmap, Icon, Pointer 80*cdf0e10cSrcweir ByteString aSysSearchPath; // aSearchPath plus language specific paths 81*cdf0e10cSrcweir sal_uInt32 nUniqueId; // eindeutiger Id fuer Systemresourcen 82*cdf0e10cSrcweir sal_uLong nFilePos; // Position in der Datei ( MTF ) 83*cdf0e10cSrcweir sal_uInt32 nPMId; // eindeutiger Id fuer PM-Rseourcefile 84*cdf0e10cSrcweir // muss groesser als RSC_VERSIONCONTROL_ID sein 85*cdf0e10cSrcweir RscTop * pRoot; // Zeiger auf die Wurzel vom Typenbaum 86*cdf0e10cSrcweir RSCINST aVersion; // Versionskontrollinstanz 87*cdf0e10cSrcweir 88*cdf0e10cSrcweir RscBaseList aBaseLst; // Liste der einfachen Resourceklasse 89*cdf0e10cSrcweir RscSysList aSysLst; // Liste der Systemresourcen 90*cdf0e10cSrcweir 91*cdf0e10cSrcweir Atom nWinBitVarId; // Name der Winbitvariablen 92*cdf0e10cSrcweir Atom nBorderId; 93*cdf0e10cSrcweir Atom nHideId; 94*cdf0e10cSrcweir Atom nClipChildrenId; 95*cdf0e10cSrcweir Atom nSizeableId; 96*cdf0e10cSrcweir Atom nMoveableId; 97*cdf0e10cSrcweir Atom nMinimizeId; 98*cdf0e10cSrcweir Atom nMaximizeId; 99*cdf0e10cSrcweir Atom nCloseableId; 100*cdf0e10cSrcweir Atom nAppId; 101*cdf0e10cSrcweir Atom nTabstopId; 102*cdf0e10cSrcweir Atom nGroupId; 103*cdf0e10cSrcweir Atom nSysmodalId; 104*cdf0e10cSrcweir Atom nLeftId; 105*cdf0e10cSrcweir Atom nCenterId; 106*cdf0e10cSrcweir Atom nRightId; 107*cdf0e10cSrcweir Atom nTopId; 108*cdf0e10cSrcweir Atom nVCenterId; 109*cdf0e10cSrcweir Atom nBottomId; 110*cdf0e10cSrcweir Atom nHScrollId; 111*cdf0e10cSrcweir Atom nVScrollId; 112*cdf0e10cSrcweir Atom nSortId; 113*cdf0e10cSrcweir Atom nDefaultId; 114*cdf0e10cSrcweir Atom nSVLookId; 115*cdf0e10cSrcweir Atom nRepeatId; 116*cdf0e10cSrcweir Atom nDropDownId; 117*cdf0e10cSrcweir Atom nPassWordId; 118*cdf0e10cSrcweir Atom nReadOnlyId; 119*cdf0e10cSrcweir Atom nAutoSizeId; 120*cdf0e10cSrcweir Atom nSpinId; 121*cdf0e10cSrcweir Atom nTabControlId; 122*cdf0e10cSrcweir Atom nSimpleModeId; 123*cdf0e10cSrcweir Atom nDragId; 124*cdf0e10cSrcweir Atom nScrollId; 125*cdf0e10cSrcweir Atom nZoomableId; 126*cdf0e10cSrcweir Atom nHideWhenDeactivateId; 127*cdf0e10cSrcweir Atom nAutoHScrollId; 128*cdf0e10cSrcweir Atom nAutoVScrollId; 129*cdf0e10cSrcweir Atom nDDExtraWidthId; 130*cdf0e10cSrcweir Atom nWordBreakId; 131*cdf0e10cSrcweir Atom nLeftLabelId; 132*cdf0e10cSrcweir Atom nHasLinesId; 133*cdf0e10cSrcweir Atom nHasButtonsId; 134*cdf0e10cSrcweir Atom nRectStyleId; 135*cdf0e10cSrcweir Atom nLineSpacingId; 136*cdf0e10cSrcweir Atom nSmallStyleId; 137*cdf0e10cSrcweir Atom nEnableResizingId; 138*cdf0e10cSrcweir Atom nDockableId; 139*cdf0e10cSrcweir Atom nScaleId; 140*cdf0e10cSrcweir Atom nIgnoreTabId; 141*cdf0e10cSrcweir Atom nNoSplitDrawId; 142*cdf0e10cSrcweir Atom nTopImageId; 143*cdf0e10cSrcweir Atom nNoLabelId; 144*cdf0e10cSrcweir Atom nVertId; 145*cdf0e10cSrcweir Atom nSysWinId; 146*cdf0e10cSrcweir 147*cdf0e10cSrcweir void Init(); // Initialisiert Klassen und Tabelle 148*cdf0e10cSrcweir void SETCONST( RscConst *, const char *, sal_uInt32 ); 149*cdf0e10cSrcweir void SETCONST( RscConst *, Atom, sal_uInt32 ); 150*cdf0e10cSrcweir RscEnum * InitLangType(); 151*cdf0e10cSrcweir RscEnum * InitFieldUnitsType(); 152*cdf0e10cSrcweir RscEnum * InitTimeFieldFormat(); 153*cdf0e10cSrcweir RscEnum * InitColor(); 154*cdf0e10cSrcweir RscEnum * InitMapUnit(); 155*cdf0e10cSrcweir RscEnum * InitKey(); 156*cdf0e10cSrcweir RscEnum * InitTriState(); 157*cdf0e10cSrcweir RscEnum * InitMessButtons(); 158*cdf0e10cSrcweir RscEnum * InitMessDefButton(); 159*cdf0e10cSrcweir RscTupel * InitGeometry(); 160*cdf0e10cSrcweir RscArray * InitLangGeometry( RscTupel * pGeo ); 161*cdf0e10cSrcweir RscArray * InitSystemGeometry( RscTupel * pGeo ); 162*cdf0e10cSrcweir RscCont * InitStringList(); 163*cdf0e10cSrcweir RscArray * InitLangStringList( RscCont * pStrLst ); 164*cdf0e10cSrcweir RscTupel * InitStringTupel(); 165*cdf0e10cSrcweir RscTupel * InitStringLongTupel(); 166*cdf0e10cSrcweir RscCont * InitStringTupelList( RscTupel * pStringTupel ); 167*cdf0e10cSrcweir RscCont * InitStringLongTupelList( RscTupel * pStringLongTupel ); 168*cdf0e10cSrcweir RscArray * InitLangStringTupelList( RscCont * pStrTupelLst ); 169*cdf0e10cSrcweir RscArray * InitLangStringLongTupelList( RscCont * pStrLongTupelLst ); 170*cdf0e10cSrcweir 171*cdf0e10cSrcweir RscTop * InitClassMgr(); 172*cdf0e10cSrcweir RscTop * InitClassString( RscTop * pSuper ); 173*cdf0e10cSrcweir RscTop * InitClassBitmap( RscTop * pSuper ); 174*cdf0e10cSrcweir RscTop * InitClassColor( RscTop * pSuper, RscEnum * pColor ); 175*cdf0e10cSrcweir RscTop * InitClassImage( RscTop * pSuper, RscTop *pClassBitmap, 176*cdf0e10cSrcweir RscTop * pClassColor ); 177*cdf0e10cSrcweir RscTop * InitClassImageList( RscTop * pSuper, RscTop *pClassBitmap, 178*cdf0e10cSrcweir RscTop * pClassColor, RscCont * pStrLst ); 179*cdf0e10cSrcweir RscTop * InitClassWindow( RscTop * pSuper, RscEnum * pMapUnit, 180*cdf0e10cSrcweir RscArray * pLangGeo ); 181*cdf0e10cSrcweir RscTop * InitClassSystemWindow( RscTop * pSuper ); 182*cdf0e10cSrcweir RscTop * InitClassWorkWindow( RscTop * pSuper ); 183*cdf0e10cSrcweir RscTop * InitClassModalDialog( RscTop * pSuper ); 184*cdf0e10cSrcweir RscTop * InitClassModelessDialog( RscTop * pSuper ); 185*cdf0e10cSrcweir RscTop * InitClassControl( RscTop * pSuper ); 186*cdf0e10cSrcweir RscTop * InitClassCheckBox( RscTop * pSuper ); 187*cdf0e10cSrcweir RscTop * InitClassPushButton( RscTop * pSuper ); 188*cdf0e10cSrcweir RscTop * InitClassTriStateBox( RscTop * pSuper, RscEnum * pTriState ); 189*cdf0e10cSrcweir RscTop * InitClassMenuButton( RscTop * pSuper, RscTop * pClasMenu ); 190*cdf0e10cSrcweir RscTop * InitClassImageButton( RscTop * pSuper, RscTop * pClassImage, 191*cdf0e10cSrcweir RscEnum * pTriState ); 192*cdf0e10cSrcweir RscTop * InitClassEdit( RscTop * pSuper ); 193*cdf0e10cSrcweir RscTop * InitClassMultiLineEdit( RscTop * pSuper ); 194*cdf0e10cSrcweir RscTop * InitClassScrollBar( RscTop * pSuper ); 195*cdf0e10cSrcweir RscTop * InitClassListBox( RscTop * pSuper, RscArray * pStrLst ); 196*cdf0e10cSrcweir RscTop * InitClassMultiListBox( RscTop * pSuper ); 197*cdf0e10cSrcweir RscTop * InitClassComboBox( RscTop * pSuper, RscArray * pStrLst ); 198*cdf0e10cSrcweir RscTop * InitClassFixedText( RscTop * pSuper ); 199*cdf0e10cSrcweir RscTop * InitClassFixedBitmap( RscTop * pSuper, RscTop * pClassBitmap ); 200*cdf0e10cSrcweir RscTop * InitClassFixedImage( RscTop * pSuper, RscTop * pClassImage ); 201*cdf0e10cSrcweir RscTop * InitClassRadioButton( RscTop * pSuper ); 202*cdf0e10cSrcweir RscTop * InitClassImageRadioButton( RscTop * pSuper, RscTop * pClassImage ); 203*cdf0e10cSrcweir RscTop * InitClassKeyCode( RscTop * pSuper, RscEnum * pKey ); 204*cdf0e10cSrcweir RscTop * InitClassAccelItem( RscTop * pSuper, RscTop * pKeyCode ); 205*cdf0e10cSrcweir RscTop * InitClassAccel( RscTop * pSuper, RscTop * pClassAccelItem ); 206*cdf0e10cSrcweir RscTop * InitClassMenuItem( RscTop * pSuper, RscTop * pClassBitmap, 207*cdf0e10cSrcweir RscTop * pClassKeyCode ); 208*cdf0e10cSrcweir RscTop * InitClassMenu( RscTop * pSuper, RscTop * pMenuItem ); 209*cdf0e10cSrcweir RscTop * InitClassMessBox( RscTop * pSuper, 210*cdf0e10cSrcweir RscEnum * pMessButtons, 211*cdf0e10cSrcweir RscEnum * pMessDefButton ); 212*cdf0e10cSrcweir RscTop * InitClassSplitter( RscTop * pSuper ); 213*cdf0e10cSrcweir RscTop * InitClassSplitWindow( RscTop * pSuper ); 214*cdf0e10cSrcweir RscTop * InitClassTime( RscTop * pSuper ); 215*cdf0e10cSrcweir RscTop * InitClassDate( RscTop * pSuper ); 216*cdf0e10cSrcweir 217*cdf0e10cSrcweir RscTop * InitClassPatternFormatter( RscTop * pSuper ); 218*cdf0e10cSrcweir RscTop * InitClassNumericFormatter( RscTop * pSuper ); 219*cdf0e10cSrcweir RscTop * InitClassMetricFormatter( RscTop * pSuper, 220*cdf0e10cSrcweir RscEnum * pFieldUnits ); 221*cdf0e10cSrcweir RscTop * InitClassCurrencyFormatter( RscTop * pSuper, 222*cdf0e10cSrcweir RscEnum * pFieldUnits ); 223*cdf0e10cSrcweir RscTop * InitClassDateFormatter( RscTop * pSuper, RscTop * pClassDate ); 224*cdf0e10cSrcweir RscTop * InitClassTimeFormatter( RscTop * pSuper, RscTop * pClassTime, 225*cdf0e10cSrcweir RscEnum * pTimeFieldFormat ); 226*cdf0e10cSrcweir 227*cdf0e10cSrcweir RscTop * InitClassSpinField( RscTop * pSuper ); 228*cdf0e10cSrcweir RscTop * InitClassPatternField( RscTop * pSuper ); 229*cdf0e10cSrcweir RscTop * InitClassNumericField( RscTop * pSuper ); 230*cdf0e10cSrcweir RscTop * InitClassMetricField( RscTop * pSuper ); 231*cdf0e10cSrcweir RscTop * InitClassCurrencyField( const char * pClassName, sal_uInt32 nRT, 232*cdf0e10cSrcweir RscTop * pSuper ); 233*cdf0e10cSrcweir RscTop * InitClassDateField( RscTop * pSuper, RscTop * pClassDate ); 234*cdf0e10cSrcweir RscTop * InitClassTimeField( RscTop * pSuper, RscTop * pClassTime ); 235*cdf0e10cSrcweir RscTop * InitClassPatternBox( RscTop * pSuper ); 236*cdf0e10cSrcweir RscTop * InitClassNumericBox( RscTop * pSuper ); 237*cdf0e10cSrcweir RscTop * InitClassMetricBox( RscTop * pSuper ); 238*cdf0e10cSrcweir RscTop * InitClassCurrencyBox( const char * pClassName, sal_uInt32 nRT, 239*cdf0e10cSrcweir RscTop * pSuper ); 240*cdf0e10cSrcweir RscTop * InitClassDateBox( RscTop * pSuper, RscTop * pClassDate ); 241*cdf0e10cSrcweir RscTop * InitClassTimeBox( RscTop * pSuper, RscTop * pClassTime ); 242*cdf0e10cSrcweir 243*cdf0e10cSrcweir RscTop * InitClassDockingWindow( RscTop * pSuper, 244*cdf0e10cSrcweir RscEnum * pMapUnit ); 245*cdf0e10cSrcweir RscTop * InitClassToolBoxItem( RscTop * pSuper, RscTop * pClassBitmap, 246*cdf0e10cSrcweir RscTop * pClassImage, 247*cdf0e10cSrcweir RscEnum * pTriState ); 248*cdf0e10cSrcweir RscTop * InitClassToolBox( RscTop * pSuper, RscTop * pClassToolBoxItem, 249*cdf0e10cSrcweir RscTop * pClassImageList ); 250*cdf0e10cSrcweir RscTop * InitClassStatusBar( RscTop * pSuper ); 251*cdf0e10cSrcweir RscTop * InitClassMoreButton( RscTop * pSuper, RscEnum * pMapUnit ); 252*cdf0e10cSrcweir RscTop * InitClassFloatingWindow( RscTop * pSuper, 253*cdf0e10cSrcweir RscEnum * pMapUnit ); 254*cdf0e10cSrcweir RscTop * InitClassTabControlItem( RscTop * pSuper, 255*cdf0e10cSrcweir RscTop * pClassTabPage ); 256*cdf0e10cSrcweir RscTop * InitClassTabControl( RscTop * pSuper, 257*cdf0e10cSrcweir RscTop * pClassTabControlItem ); 258*cdf0e10cSrcweir RscTop * InitClassSfxStyleFamilyItem( RscTop * pSuper, 259*cdf0e10cSrcweir RscTop * pClassBitmap, 260*cdf0e10cSrcweir RscTop * pClassImage, 261*cdf0e10cSrcweir RscArray * pStrLst ); 262*cdf0e10cSrcweir RscTop * InitClassSfxTemplateDialog( RscTop * pSuper, 263*cdf0e10cSrcweir RscTop * pStyleFamily ); 264*cdf0e10cSrcweir RscTop * InitClassSfxSlotInfo( RscTop * pSuper ); 265*cdf0e10cSrcweir 266*cdf0e10cSrcweir void InsWinBit( RscTop * pClass, const ByteString & rName, 267*cdf0e10cSrcweir Atom nVal ); 268*cdf0e10cSrcweir void WriteInc( FILE * fOutput, sal_uLong lKey ); 269*cdf0e10cSrcweir 270*cdf0e10cSrcweir public: 271*cdf0e10cSrcweir RscBool aBool; 272*cdf0e10cSrcweir RscRange aShort; 273*cdf0e10cSrcweir RscRange aUShort; 274*cdf0e10cSrcweir RscLongRange aLong; 275*cdf0e10cSrcweir RscLongEnumRange aEnumLong; 276*cdf0e10cSrcweir RscIdRange aIdUShort; 277*cdf0e10cSrcweir RscIdRange aIdNoZeroUShort; 278*cdf0e10cSrcweir RscBreakRange aNoZeroShort; 279*cdf0e10cSrcweir RscRange a1to12Short; 280*cdf0e10cSrcweir RscRange a0to23Short; 281*cdf0e10cSrcweir RscRange a1to31Short; 282*cdf0e10cSrcweir RscRange a0to59Short; 283*cdf0e10cSrcweir RscRange a0to99Short; 284*cdf0e10cSrcweir RscRange a0to9999Short; 285*cdf0e10cSrcweir RscIdRange aIdLong; 286*cdf0e10cSrcweir RscString aString; 287*cdf0e10cSrcweir RscString aStringLiteral; 288*cdf0e10cSrcweir RscFlag aWinBits; 289*cdf0e10cSrcweir RscLangEnum aLangType; 290*cdf0e10cSrcweir RscLangArray aLangString; 291*cdf0e10cSrcweir RscLangArray aLangShort; 292*cdf0e10cSrcweir 293*cdf0e10cSrcweir Atom nAcceleratorType; 294*cdf0e10cSrcweir 295*cdf0e10cSrcweir RscError* pEH; // Fehlerhandler 296*cdf0e10cSrcweir RscNameTable aNmTb; // Tabelle fuer Namen 297*cdf0e10cSrcweir RscFileTab aFileTab; // Tabelle der Dateinamen 298*cdf0e10cSrcweir sal_uInt32 nFlags; 299*cdf0e10cSrcweir std::map<sal_uInt64, sal_uLong> aIdTranslator; //Ordnet Resourcetypen und Id's einen Id zu 300*cdf0e10cSrcweir //(unter PM), oder eine Dateiposition (MTF) 301*cdf0e10cSrcweir 302*cdf0e10cSrcweir RscTypCont( RscError *, RSCBYTEORDER_TYPE, const ByteString & rSearchPath, sal_uInt32 nFlags ); 303*cdf0e10cSrcweir ~RscTypCont(); 304*cdf0e10cSrcweir 305*cdf0e10cSrcweir Atom AddLanguage( const char* ); 306*cdf0e10cSrcweir 307*cdf0e10cSrcweir sal_Bool IsPreload() const 308*cdf0e10cSrcweir { return (nFlags & PRELOAD_FLAG) ? sal_True : sal_False; } 309*cdf0e10cSrcweir sal_Bool IsSmart() const 310*cdf0e10cSrcweir { return (nFlags & SMART_FLAG) ? sal_True : sal_False; } 311*cdf0e10cSrcweir sal_Bool IsSysResTest() const 312*cdf0e10cSrcweir { return (nFlags & NOSYSRESTEST_FLAG) ? sal_False : sal_True; } 313*cdf0e10cSrcweir sal_Bool IsSrsDefault() const 314*cdf0e10cSrcweir { return (nFlags & SRSDEFAULT_FLAG) ? sal_True : sal_False; } 315*cdf0e10cSrcweir ByteString ChangeLanguage( const ByteString& rNewLang ); 316*cdf0e10cSrcweir const std::vector< sal_uInt32 >& GetFallbacks() const 317*cdf0e10cSrcweir { return aLangFallbacks; } 318*cdf0e10cSrcweir 319*cdf0e10cSrcweir RSCBYTEORDER_TYPE GetByteOrder() const { return nByteOrder; } 320*cdf0e10cSrcweir CharSet GetSourceCharSet() const { return nSourceCharSet; } 321*cdf0e10cSrcweir CharSet SetSourceCharSet( CharSet aCharSet ) 322*cdf0e10cSrcweir { 323*cdf0e10cSrcweir CharSet aOld = nSourceCharSet; 324*cdf0e10cSrcweir nSourceCharSet = aCharSet; 325*cdf0e10cSrcweir return aOld; 326*cdf0e10cSrcweir } 327*cdf0e10cSrcweir void SetSearchPath( const ByteString & rStr) { aSearchPath = rStr; } 328*cdf0e10cSrcweir ByteString GetSearchPath() const { return aSearchPath; } 329*cdf0e10cSrcweir void SetSysSearchPath( const ByteString& rStr ) { aSysSearchPath = rStr; } 330*cdf0e10cSrcweir ByteString GetSysSearchPath() const { return aSysSearchPath; } 331*cdf0e10cSrcweir void InsertType( RscTop * pType ) 332*cdf0e10cSrcweir { 333*cdf0e10cSrcweir aBaseLst.Insert( pType, LIST_APPEND ); 334*cdf0e10cSrcweir } 335*cdf0e10cSrcweir RscTop * SearchType( Atom nTypId ); 336*cdf0e10cSrcweir RscTop * Search( Atom typ ); 337*cdf0e10cSrcweir CLASS_DATA Search( Atom typ, const RscId & rId ); 338*cdf0e10cSrcweir void Delete( Atom typ, const RscId & rId ); 339*cdf0e10cSrcweir // loescht alle Resourceobjekte diese Datei 340*cdf0e10cSrcweir void Delete( sal_uLong lFileKey ); 341*cdf0e10cSrcweir RscTop * GetRoot() { return( pRoot ); }; 342*cdf0e10cSrcweir sal_uInt32 PutSysName( sal_uInt32 nRscTyp, char * pName, sal_uInt32 nConst, 343*cdf0e10cSrcweir sal_uInt32 nId, sal_Bool bFirst ); 344*cdf0e10cSrcweir void ClearSysNames(); 345*cdf0e10cSrcweir ERRTYPE WriteRc( WriteRcContext& rContext ); 346*cdf0e10cSrcweir void WriteSrc( FILE * fOutput, sal_uLong nFileIndex, 347*cdf0e10cSrcweir CharSet nCharSet, sal_Bool bName = sal_True ); 348*cdf0e10cSrcweir ERRTYPE WriteHxx( FILE * fOutput, sal_uLong nFileKey); 349*cdf0e10cSrcweir ERRTYPE WriteCxx( FILE * fOutput, sal_uLong nFileKey, 350*cdf0e10cSrcweir const ByteString & rHxxName ); 351*cdf0e10cSrcweir void WriteSyntax( FILE * fOutput ); 352*cdf0e10cSrcweir void WriteRcCtor( FILE * fOutput ); 353*cdf0e10cSrcweir void FillNameIdList( REResourceList * pList, sal_uLong lFileKey ); 354*cdf0e10cSrcweir sal_Bool MakeConsistent( RscInconsList * pList ); 355*cdf0e10cSrcweir sal_uInt32 PutTranslatorKey( sal_uInt64 nKey ); 356*cdf0e10cSrcweir void IncFilePos( sal_uLong nOffset ){ nFilePos += nOffset; } 357*cdf0e10cSrcweir }; 358*cdf0e10cSrcweir 359*cdf0e10cSrcweir #endif 360