fix baseline build (old cairo) - 'cairo_rectangle_int_t' does not name a type
[LibreOffice.git] / sc / source / filter / inc / scflt.hxx
blobee5d5760e0a3a5f970ea6da5fd719144be3263fb
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_SC_SOURCE_FILTER_INC_SCFLT_HXX
21 #define INCLUDED_SC_SOURCE_FILTER_INC_SCFLT_HXX
23 #include "viewopti.hxx"
24 #include "collect.hxx"
25 #include <tools/solar.h>
27 // Error numbers
28 #define errUnknownFormat 1
29 #define errUnknownID 2
30 #define errOutOfMemory 3
32 // Identifiers in FileFormat
33 #define ColWidthID 1
34 #define ColAttrID 2
35 #define RowHeightID 3
36 #define RowAttrID 4
37 #define FontID 5
38 #define NameID 6
39 #define TableID 7
40 #define ObjectID 8
41 #define PatternID 9
42 #define DataBaseID 10
44 // Row/Column Flags
45 #define crfSoftBreak 1
46 #define crfHardBreak 2
47 #define crfHidden 4
49 // Cell types
50 #define ctValue 1
51 #define ctString 2
52 #define ctFormula 3
53 #define ctNote 4
55 // Font Styles
56 #define ffDontCare 0x00
57 #define ffRoman 0x10
58 #define ffSwiss 0x20
59 #define ffModern 0x30
60 #define ffScript 0x40
61 #define ffDecorative 0x50
63 // Font Weight
64 #define fwNormal 400
66 // Font attributes
67 #define atNone 0
68 #define atBold 1
69 #define atItalic 2
70 #define atUnderline 4
71 #define atStrikeOut 8
73 // Horizontal alignment
74 #define hjLeft 1
75 #define hjCenter 2
76 #define hjRight 3
78 // Vertical alignment
79 #define vjTop 1
80 #define vjCenter 2
81 #define vjBottom 3
83 // Allignment flags
84 #define ojWordBreak 0x01
85 #define ojBottomTop 0x02
86 #define ojTopBottom 0x04
88 // Cell grid
89 #define raNone 0
90 #define raGray12 1
91 #define raGray25 2
92 #define raGray50 3
93 #define raGray75 4
95 // Cell protection
96 #define paProtect 1
97 #define paHideFormula 2
98 #define paHideAll 4
99 #define paHidePrint 8
101 // Number format flags
102 #define vfStandard 0
103 #define vfMoney 1
104 #define vfThousend 2
105 #define vfPercent 3
106 #define vfExponent 4
107 #define vfZerro 5
108 #define vfDate 6
109 #define vfTime 7
110 #define vfBoolean 8
111 #define vfStandardRed 9
112 #define vfMoneyRed 10
113 #define vfThousendRed 11
114 #define vfPercentRed 12
115 #define vfExponentRed 13
116 #define vfFormula 14
117 #define vfString 15
119 // Date format flags
120 #define df_NDMY_Long 0
121 #define df_DMY_Long 1
122 #define df_MY_Long 2
123 #define df_NDM_Long 3
124 #define df_DM_Long 4
125 #define df_M_Long 5
126 #define df_NDMY_Short 6
127 #define df_DMY_Short 7
128 #define df_MY_Short 8
129 #define df_NDM_Short 9
130 #define df_DM_Short 10
131 #define df_M_Short 11
132 #define df_Q_Long 12
133 #define df_Q_Short 13
135 // Time format flags
136 #define tf_HMS_Long 0
137 #define tf_HM_Long 1
138 #define tf_HMS_Short 2
139 #define tf_HM_Short 3
141 // Attributes for format template
142 #define pfValue 0x01
143 #define pfFont 0x02
144 #define pfJustify 0x04
145 #define pfFrame 0x08
146 #define pfRaster 0x10
147 #define pfProtection 0x20
149 // Display flags for table
150 #define dfFormula 0x0001 // formula
151 #define dfZerro 0x0002 // zero values
152 #define dfGrid 0x0004 // grid
153 #define dfSyntax 0x0020 // Syntax Highlighting
154 #define dfObjectAll 0x0080 // show objects
155 #define dfObjectFrame 0x0100 // objects as place holder
156 #define dfObjectNone 0x0200 // do not show objects
157 #define dfNoteMark 0x0400 // NoteMark
159 // Object types
160 #define otOle 1
161 #define otImage 2
162 #define otChart 3
164 // Date/Time
165 struct Sc10DateTime
167 sal_uInt16 Year;
168 sal_uInt16 Month;
169 sal_uInt16 Day;
170 sal_uInt16 Hour;
171 sal_uInt16 Min;
172 sal_uInt16 Sec;
175 // Number formats
176 struct Sc10ValueFormat
178 sal_uInt8 Format; // number, currency, percentage,...
179 sal_uInt8 Info; // number of decimals, or positions, or Date/Time format
180 Sc10ValueFormat()
181 : Format(0)
182 , Info(0)
187 // Font definition
188 struct Sc10LogFont
190 sal_Int16 lfHeight;
191 sal_Int16 lfWidth;
192 sal_Int16 lfEscapement;
193 sal_Int16 lfOrientation;
194 sal_Int16 lfWeight;
195 sal_uInt8 lfItalic;
196 sal_uInt8 lfUnderline;
197 sal_uInt8 lfStrikeOut;
198 sal_uInt8 lfCharSet;
199 sal_uInt8 lfOutPrecision;
200 sal_uInt8 lfClipPrecision;
201 sal_uInt8 lfQuality;
202 sal_uInt8 lfPitchAndFamily;
203 sal_Char lfFaceName[32];
205 Sc10LogFont()
206 : lfHeight(0)
207 , lfWidth(0)
208 , lfEscapement(0)
209 , lfOrientation(0)
210 , lfWeight(0)
211 , lfItalic(0)
212 , lfUnderline(0)
213 , lfStrikeOut(0)
214 , lfCharSet(0)
215 , lfOutPrecision(0)
216 , lfClipPrecision(0)
217 , lfQuality(0)
218 , lfPitchAndFamily(0)
220 memset(lfFaceName, 0, sizeof(lfFaceName));
223 bool operator==( const Sc10LogFont& rData ) const;
226 // RGB-Color values
227 struct Sc10Color
229 sal_uInt8 Dummy;
230 sal_uInt8 Blue;
231 sal_uInt8 Green;
232 sal_uInt8 Red;
233 bool operator==( const Sc10Color& rColor ) const;
234 Sc10Color()
235 : Dummy(0)
236 , Blue(0)
237 , Green(0)
238 , Red(0)
243 // Block definition
244 struct Sc10BlockRect
246 sal_Int16 x1;
247 sal_Int16 y1;
248 sal_Int16 x2;
249 sal_Int16 y2;
250 Sc10BlockRect()
251 : x1(0)
252 , y1(0)
253 , x2(0)
254 , y2(0)
259 // Data range
260 struct Sc10DataBaseRec
262 sal_Char Name[32];
263 SCTAB Tab;
264 Sc10BlockRect Block;
265 sal_uInt8 RowHeader;
266 sal_Int16 SortField0;
267 sal_uInt8 SortUpOrder0;
268 sal_Int16 SortField1;
269 sal_uInt8 SortUpOrder1;
270 sal_Int16 SortField2;
271 sal_uInt8 SortUpOrder2;
272 sal_uInt8 IncludeFormat;
273 sal_Int16 QueryField0;
274 sal_Int16 QueryOp0;
275 sal_uInt8 QueryByString0;
276 sal_Char QueryString0[64];
277 double QueryValue0;
278 sal_Int16 QueryConnect1;
279 sal_Int16 QueryField1;
280 sal_Int16 QueryOp1;
281 sal_uInt8 QueryByString1;
282 sal_Char QueryString1[64];
283 double QueryValue1;
284 sal_Int16 QueryConnect2;
285 sal_Int16 QueryField2;
286 sal_Int16 QueryOp2;
287 sal_uInt8 QueryByString2;
288 sal_Char QueryString2[64];
289 double QueryValue2;
290 Sc10DataBaseRec()
291 : Tab(0)
292 , RowHeader(0)
293 , SortField0(0)
294 , SortUpOrder0(0)
295 , SortField1(0)
296 , SortUpOrder1(0)
297 , SortField2(0)
298 , SortUpOrder2(0)
299 , IncludeFormat(0)
300 , QueryField0(0)
301 , QueryOp0(0)
302 , QueryByString0(0)
303 , QueryValue0(0.0)
304 , QueryConnect1(0)
305 , QueryField1(0)
306 , QueryOp1(0)
307 , QueryByString1(0)
308 , QueryValue1(0.0)
309 , QueryConnect2(0)
310 , QueryField2(0)
311 , QueryOp2(0)
312 , QueryByString2(0)
313 , QueryValue2(0.0)
315 memset(Name, 0, sizeof(Name));
316 memset(QueryString0, 0, sizeof(QueryString0));
317 memset(QueryString1, 0, sizeof(QueryString1));
318 memset(QueryString2, 0, sizeof(QueryString2));
322 // Header/Footer
323 struct Sc10HeadFootLine
325 sal_Char Title[128];
326 Sc10LogFont LogFont;
327 sal_uInt8 HorJustify;
328 sal_uInt8 VerJustify;
329 sal_uInt16 Raster;
330 sal_uInt16 Frame;
331 Sc10Color TextColor;
332 Sc10Color BackColor;
333 Sc10Color RasterColor;
334 sal_uInt16 FrameColor; // Nibble coded colors left-top right-bottom
335 sal_uInt16 Reserved;
337 bool operator==( const Sc10HeadFootLine& rData ) const;
340 // page format
341 struct Sc10PageFormat
343 Sc10HeadFootLine HeadLine;
344 Sc10HeadFootLine FootLine;
345 sal_Int16 Orientation;
346 sal_Int16 Width;
347 sal_Int16 Height;
348 sal_Int16 NonPrintableX;
349 sal_Int16 NonPrintableY;
350 sal_Int16 Left;
351 sal_Int16 Top;
352 sal_Int16 Right;
353 sal_Int16 Bottom;
354 sal_Int16 Head;
355 sal_Int16 Foot;
356 sal_uInt8 HorCenter;
357 sal_uInt8 VerCenter;
358 sal_uInt8 PrintGrid;
359 sal_uInt8 PrintColRow;
360 sal_uInt8 PrintNote;
361 sal_uInt8 TopBottomDir;
362 sal_Char PrintAreaName[32];
363 Sc10BlockRect PrintArea;
364 sal_Char PrnZoom[6]; // Pascal 6 Byte RealNumber
365 SCTAB FirstPageNo;
366 sal_Int16 RowRepeatStart;
367 sal_Int16 RowRepeatEnd;
368 sal_Int16 ColRepeatStart;
369 sal_Int16 ColRepeatEnd;
370 sal_Char Reserved[26];
372 bool operator==( const Sc10PageFormat& rData ) const;
375 // Table protection
376 struct Sc10TableProtect
378 sal_Char PassWord[16];
379 sal_uInt16 Flags;
380 sal_uInt8 Protect;
383 // Document protection
384 struct Sc10SheetProtect
386 sal_Char PassWord[16];
387 sal_uInt16 Flags;
388 sal_uInt8 Protect;
389 Sc10SheetProtect()
390 : Flags(0)
391 , Protect(0)
393 memset(PassWord, 0, sizeof(PassWord));
397 // FileHeader StarCalc 1.0 Datei
398 struct Sc10FileHeader
400 sal_Char CopyRight[30];
401 sal_uInt16 Version;
402 sal_Char Reserved[32];
405 // User-Defined File Definition
406 struct Sc10FileInfo
408 sal_Char Title[64];
409 sal_Char Thema[64];
410 sal_Char Keys[64];
411 sal_Char Note[256];
412 sal_Char InfoLabel0[16];
413 sal_Char InfoLabel1[16];
414 sal_Char InfoLabel2[16];
415 sal_Char InfoLabel3[16];
416 sal_Char Info0[32];
417 sal_Char Info1[32];
418 sal_Char Info2[32];
419 sal_Char Info3[32];
420 sal_Char CreateAuthor[64];
421 sal_Char ChangeAuthor[64];
422 sal_Char PrintAuthor[64];
423 Sc10DateTime CreateDate;
424 Sc10DateTime ChangeDate;
425 Sc10DateTime PrintDate;
426 sal_uInt32 PageCount;
427 sal_uInt32 ChartCount;
428 sal_uInt32 PictureCount;
429 sal_uInt32 GraphCount;
430 sal_uInt32 OleCount;
431 sal_uInt32 NoteCount;
432 sal_uInt32 TextCellCount;
433 sal_uInt32 ValueCellCount;
434 sal_uInt32 FormulaCellCount;
435 sal_uInt32 CellCount;
436 sal_Char Reserved[52];
439 // Last Cursor position
440 struct Sc10EditStateInfo
442 // Cursor Position
443 sal_uInt16 CarretX;
444 sal_uInt16 CarretY;
445 sal_uInt16 CarretZ;
446 // left-top corner of the table
447 sal_uInt16 DeltaX;
448 sal_uInt16 DeltaY;
449 sal_uInt16 DeltaZ;
450 // redundant in StarCalc 3.0
451 sal_uInt8 DataBaseMode;
452 sal_Char Reserved[51];
455 // Attribut entry
456 struct Sc10ColData
458 sal_uInt16 Row;
459 sal_uInt16 Value;
462 // Cell-Attribute definition
463 struct Sc10ColAttr
465 sal_uInt16 Count;
466 Sc10ColData* pData;
468 Sc10ColAttr()
469 : Count(0)
470 , pData(NULL)
473 ~Sc10ColAttr() { delete [] pData; }
476 // GraphHeader
477 struct Sc10GraphHeader
479 sal_uInt8 Typ; // Type of Grafik (Ole-Objekt, Image (Bitmap of MetaFile), Chart-Object)
480 sal_Int16 CarretX; // Cell Position of Grafik
481 sal_Int16 CarretY;
482 sal_Int16 CarretZ;
483 sal_Int32 x; // x,y distance to cell border in pixels (pixels, as Grafics are stored in window)
484 sal_Int32 y;
485 sal_Int32 w; // w,h width and height in pixels
486 sal_Int32 h;
487 sal_uInt8 IsRelPos; // position relativ to cell, or absolute in the table
488 sal_uInt8 DoPrint; // print Grafic?
489 sal_uInt16 FrameType; // Frame type around Grafic (none, simple, double, simple thick, double thick)
490 sal_uInt8 IsTransparent; // show background?
491 Sc10Color FrameColor; // FrameColor as RGB value
492 Sc10Color BackColor; // BackGroundColor as RGB value
493 sal_Char Reserved[32]; // Reserved
496 // ImageHeader
497 struct Sc10ImageHeader
499 sal_Char FileName[128]; // file name of the original inserted image
500 sal_Int16 Typ; // image type (Bitmap or Metafile)
501 sal_uInt8 Linked; // not possible
502 sal_Int16 x1; // original image size (only for Metafiles)
503 sal_Int16 y1;
504 sal_Int16 x2;
505 sal_Int16 y2;
506 sal_uInt32 Size; // image size in BYTES
509 // ChartHeader
510 struct Sc10ChartHeader
512 sal_Int16 MM; // Meatfile structure MapMode, Width, Hight
513 sal_Int16 xExt;
514 sal_Int16 yExt;
515 sal_uInt32 Size; // image size in BYTES
518 // ChartSheetData
519 struct Sc10ChartSheetData
521 sal_uInt8 HasTitle; // has the Chart a title in the table
522 sal_Int16 TitleX; // cell position of title
523 sal_Int16 TitleY;
524 sal_uInt8 HasSubTitle; // has the Chart a sub-title in the table
525 sal_Int16 SubTitleX; // cell position of sub-title
526 sal_Int16 SubTitleY;
527 sal_uInt8 HasLeftTitle; // has the Chart a left-title in the table
528 sal_Int16 LeftTitleX; // cell position of left-title
529 sal_Int16 LeftTitleY;
530 sal_uInt8 HasLegend; // has the Chart a legend in the table
531 sal_Int16 LegendX1; // cells for legend
532 sal_Int16 LegendY1;
533 sal_Int16 LegendX2;
534 sal_Int16 LegendY2;
535 sal_uInt8 HasLabel; // has the Chart axis labels in the table
536 sal_Int16 LabelX1; // cells for axis labels
537 sal_Int16 LabelY1;
538 sal_Int16 LabelX2;
539 sal_Int16 LabelY2;
540 sal_Int16 DataX1; // cells for Data
541 sal_Int16 DataY1;
542 sal_Int16 DataX2;
543 sal_Int16 DataY2;
544 sal_Char Reserved[64];
547 typedef sal_Char Sc10ChartText[30];
549 struct Sc10ChartTypeData
551 sal_Int16 NumSets;
552 sal_Int16 NumPoints;
553 sal_Int16 DrawMode;
554 sal_Int16 GraphType;
555 sal_Int16 GraphStyle;
556 sal_Char GraphTitle[80];
557 sal_Char BottomTitle[80];
558 sal_Int16 SymbolData[256];
559 sal_Int16 ColorData[256];
560 sal_Int16 ThickLines[256];
561 sal_Int16 PatternData[256];
562 sal_Int16 LinePatternData[256];
563 sal_Int16 NumGraphStyles[11];
564 sal_Int16 ShowLegend;
565 Sc10ChartText LegendText[256];
566 sal_Int16 ExplodePie;
567 sal_Int16 FontUse;
568 sal_Int16 FontFamily[5];
569 sal_Int16 FontStyle[5];
570 sal_Int16 FontSize[5];
571 sal_Int16 GridStyle;
572 sal_Int16 Labels;
573 sal_Int16 LabelEvery;
574 Sc10ChartText LabelText[50];
575 sal_Char LeftTitle[80];
576 sal_Char Reserved[4646];
579 // FontAttribut
580 class Sc10FontData : public ScDataObject
582 public:
583 sal_Int16 Height;
584 sal_uInt8 CharSet;
585 sal_uInt8 PitchAndFamily;
586 sal_Char FaceName[32];
588 Sc10FontData( const Sc10FontData& rData )
589 : ScDataObject( rData )
590 , Height( rData.Height )
591 , CharSet( rData.CharSet )
592 , PitchAndFamily( rData.PitchAndFamily )
594 strncpy( FaceName, rData.FaceName, sizeof(FaceName) );
595 FaceName[sizeof(FaceName)-1] = 0;
597 Sc10FontData( SvStream& rStream );
598 virtual ScDataObject* Clone() const SAL_OVERRIDE { return new Sc10FontData(*this); }
601 // Font-Collection
602 class Sc10FontCollection : public ScCollection
604 protected:
605 sal_uLong nError;
606 public:
607 Sc10FontCollection( SvStream& rStream );
608 sal_uLong GetError() { return nError; }
609 Sc10FontData* At(sal_uInt16 nIndex) { return static_cast<Sc10FontData*>(ScCollection::At(nIndex)); }
610 private:
611 using ScCollection::At;
614 //Range-Data
615 class Sc10NameData : public ScDataObject
617 public :
618 sal_Char Name[32];
619 sal_Char Reference[64];
620 sal_Char Reserved[12];
622 Sc10NameData(const Sc10NameData& rData) :
623 ScDataObject( rData )
625 strncpy(Name, rData.Name, sizeof(Name));
626 Name[sizeof(Name)-1] = 0;
627 strncpy(Reference, rData.Reference, sizeof(Reference));
628 Reference[sizeof(Reference)-1] = 0;
629 memcpy(Reserved, rData.Reserved, sizeof(Reserved));
631 Sc10NameData(SvStream& rStream);
632 virtual ScDataObject* Clone() const SAL_OVERRIDE { return new Sc10NameData(*this); }
635 // Range-Collection
636 class Sc10NameCollection : public ScCollection
638 protected:
639 sal_uLong nError;
640 public:
641 Sc10NameCollection(SvStream& rStream);
642 sal_uLong GetError() { return nError; }
643 Sc10NameData* At(sal_uInt16 nIndex) { return static_cast<Sc10NameData*>(ScCollection::At(nIndex)); }
644 private:
645 using ScCollection::At;
648 // Template-Data
649 class Sc10PatternData : public ScDataObject
651 public:
652 sal_Char Name[32];
653 Sc10ValueFormat ValueFormat;
654 Sc10LogFont LogFont;
655 sal_uInt16 Attr;
656 sal_uInt16 Justify;
657 sal_uInt16 Frame;
658 sal_uInt16 Raster;
659 sal_uInt16 nColor;
660 sal_uInt16 FrameColor;
661 sal_uInt16 Flags;
662 sal_uInt16 FormatFlags;
663 sal_Char Reserved[8];
665 Sc10PatternData(const Sc10PatternData& rData) :
666 ScDataObject( rData )
668 strncpy(Name, rData.Name, sizeof(Name));
669 Name[sizeof(Name)-1] = 0;
670 memcpy(&ValueFormat, &rData.ValueFormat, sizeof(ValueFormat));
671 memcpy(&LogFont, &rData.LogFont, sizeof(LogFont));
672 Attr = rData.Attr;
673 Justify = rData.Justify;
674 Frame = rData.Frame;
675 Raster = rData.Raster;
676 nColor = rData.nColor;
677 FrameColor = rData.FrameColor;
678 Flags = rData.Flags;
679 FormatFlags = rData.FormatFlags;
680 memcpy(Reserved, rData.Reserved, sizeof(Reserved));
682 Sc10PatternData(SvStream& rStream);
683 virtual ScDataObject* Clone() const SAL_OVERRIDE { return new Sc10PatternData(*this); }
686 // Template-Collection
687 class Sc10PatternCollection : public ScCollection
689 protected:
690 sal_uLong nError;
691 public:
692 Sc10PatternCollection(SvStream& rStream);
693 sal_uLong GetError() { return nError; }
694 Sc10PatternData* At(sal_uInt16 nIndex) { return static_cast<Sc10PatternData*>(ScCollection::At(nIndex)); }
695 private:
696 using ScCollection::At;
699 // DataBank-Data
700 class Sc10DataBaseData : public ScDataObject
702 public:
703 Sc10DataBaseRec DataBaseRec;
705 Sc10DataBaseData(const Sc10DataBaseData& rData) :
706 ScDataObject( rData )
708 memcpy(&DataBaseRec, &rData.DataBaseRec, sizeof(DataBaseRec));
710 Sc10DataBaseData(SvStream& rStream);
711 virtual ScDataObject* Clone() const SAL_OVERRIDE { return new Sc10DataBaseData(*this); }
714 // DataBank-Collection
715 class Sc10DataBaseCollection : public ScCollection
717 protected:
718 sal_uLong nError;
719 sal_Char ActName[32];
720 public:
721 Sc10DataBaseCollection(SvStream& rStream);
722 sal_uLong GetError() { return nError; }
723 Sc10DataBaseData* At(sal_uInt16 nIndex) { return static_cast<Sc10DataBaseData*>(ScCollection::At(nIndex)); }
724 private:
725 using ScCollection::At;
728 class Sc10PageData : public ScDataObject
730 public:
731 Sc10PageFormat aPageFormat;
732 Sc10PageData( const Sc10PageFormat& rFormat ) : aPageFormat(rFormat) {}
733 bool operator==( const Sc10PageData& rData ) const
734 { return aPageFormat == rData.aPageFormat; }
735 virtual ScDataObject* Clone() const SAL_OVERRIDE;
738 // PageFormat-Collection
739 class Sc10PageCollection : public ScCollection
741 public:
742 Sc10PageCollection() : ScCollection(1,1) {};
743 Sc10PageData* At(sal_uInt16 nIndex) { return static_cast<Sc10PageData*>(ScCollection::At(nIndex)); }
744 sal_uInt16 InsertFormat( const Sc10PageFormat& rData );
745 void PutToDoc( ScDocument* pDoc );
746 private:
747 using ScCollection::At;
750 class ScfStreamProgressBar;
752 // Import-Class
753 class Sc10Import
755 SvStream& rStream;
756 ScDocument* pDoc;
757 Sc10Color TextPalette[16];
758 Sc10Color BackPalette[16];
759 Sc10Color RasterPalette[16];
760 Sc10Color FramePalette[16];
761 Sc10SheetProtect SheetProtect;
762 Sc10FontCollection* pFontCollection;
763 Sc10NameCollection* pNameCollection;
764 Sc10PatternCollection* pPatternCollection;
765 Sc10DataBaseCollection* pDataBaseCollection;
766 sal_uLong nError;
767 SCTAB nShowTab;
768 ScViewOptions aSc30ViewOpt;
769 ScfStreamProgressBar* pPrgrsBar;
771 public:
772 Sc10Import( SvStream& rStr, ScDocument* pDocument );
773 ~Sc10Import();
775 sal_uLong Import();
776 void LoadFileHeader();
777 void LoadFileInfo();
778 void LoadEditStateInfo();
779 void LoadProtect();
780 void LoadViewColRowBar();
781 void LoadScrZoom();
782 void LoadPalette();
783 void LoadFontCollection();
784 void LoadNameCollection();
785 void ImportNameCollection();
786 void LoadPatternCollection();
787 void LoadDataBaseCollection();
788 void LoadTables();
789 void LoadCol(SCCOL Col, SCTAB Tab);
790 void LoadColAttr(SCCOL Col, SCTAB Tab);
791 void LoadAttr(Sc10ColAttr& rAttr);
792 static void ChangeFormat(sal_uInt16 nFormat, sal_uInt16 nInfo, sal_uLong& nKey);
793 void LoadObjects();
796 #endif
798 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */