Update ooo320-m1
[ooovba.git] / sc / source / filter / inc / scflt.hxx
blobb9e696f7f33e4002fa16961674ee04ee93d8a601
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: scflt.hxx,v $
10 * $Revision: 1.9 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef SC_SCFLT_HXX
32 #define SC_SCFLT_HXX
34 #include "viewopti.hxx"
35 #include "collect.hxx"
36 #include <tools/solar.h>
38 // FehlerNummern
39 #define errUnknownFormat 1
40 #define errUnknownID 2
41 #define errOutOfMemory 3
43 // Identifiers im FileFormat
44 #define ColWidthID 1
45 #define ColAttrID 2
46 #define RowHeightID 3
47 #define RowAttrID 4
48 #define FontID 5
49 #define NameID 6
50 #define TableID 7
51 #define ObjectID 8
52 #define PatternID 9
53 #define DataBaseID 10
55 // Zeilen/Spalten Flags
56 #define crfSoftBreak 1
57 #define crfHardBreak 2
58 #define crfHidden 4
60 // Zelltypen
61 #define ctValue 1
62 #define ctString 2
63 #define ctFormula 3
64 #define ctNote 4
66 // FontStyles
67 #define ffDontCare 0x00
68 #define ffRoman 0x10
69 #define ffSwiss 0x20
70 #define ffModern 0x30
71 #define ffScript 0x40
72 #define ffDecorative 0x50
74 // FontWeight
75 #define fwNormal 400
77 // FontAttribute
78 #define atNone 0
79 #define atBold 1
80 #define atItalic 2
81 #define atUnderline 4
82 #define atStrikeOut 8
84 // Horizontale Ausrichtung
85 #define hjNone 0
86 #define hjLeft 1
87 #define hjCenter 2
88 #define hjRight 3
90 // Vertikale Ausrichtung
91 #define vjNone 0
92 #define vjTop 1
93 #define vjCenter 2
94 #define vjBottom 3
96 // AusrichtungsFlags
97 #define ojWordBreak 0x01
98 #define ojBottomTop 0x02
99 #define ojTopBottom 0x04
101 // ZellRaster
102 #define raNone 0
103 #define raGray12 1
104 #define raGray25 2
105 #define raGray50 3
106 #define raGray75 4
107 #define raGray100 5
109 // Zellschutz
110 #define paProtect 1
111 #define paHideFormula 2
112 #define paHideAll 4
113 #define paHidePrint 8
115 // ZahlenFormatFlags
116 #define vfStandard 0
117 #define vfMoney 1
118 #define vfThousend 2
119 #define vfPercent 3
120 #define vfExponent 4
121 #define vfZerro 5
122 #define vfDate 6
123 #define vfTime 7
124 #define vfBoolean 8
125 #define vfStandardRed 9
126 #define vfMoneyRed 10
127 #define vfThousendRed 11
128 #define vfPercentRed 12
129 #define vfExponentRed 13
130 #define vfFormula 14
131 #define vfString 15
132 #define vfNone 16
134 // DatumsFormatFlags
135 #define df_NDMY_Long 0
136 #define df_DMY_Long 1
137 #define df_MY_Long 2
138 #define df_NDM_Long 3
139 #define df_DM_Long 4
140 #define df_M_Long 5
141 #define df_NDMY_Short 6
142 #define df_DMY_Short 7
143 #define df_MY_Short 8
144 #define df_NDM_Short 9
145 #define df_DM_Short 10
146 #define df_M_Short 11
147 #define df_Q_Long 12
148 #define df_Q_Short 13
150 // ZeitFormatFlags
151 #define tf_HMS_Long 0
152 #define tf_HM_Long 1
153 #define tf_HMS_Short 2
154 #define tf_HM_Short 3
156 // Attribute fuer FormatVorlage
157 #define pfValue 0x01
158 #define pfFont 0x02
159 #define pfJustify 0x04
160 #define pfFrame 0x08
161 #define pfRaster 0x10
162 #define pfProtection 0x20
164 // Displayflags fuer die Tabelle
165 #define dfFormula 0x0001 // Formeln
166 #define dfZerro 0x0002 // Nullwerte
167 #define dfGrid 0x0004 // Gitternetz
168 #define dfPageBreak 0x0008 // Seitenumbruch
169 #define dfColRowBar 0x0010 // Zeilen/Spalten Koepfe (Dummy)
170 #define dfSyntax 0x0020 // Syntax Highlighting
171 #define dfPrintPage 0x0040 // Druckbildansicht (Dummy)
172 #define dfObjectAll 0x0080 // Objekte anzeigen
173 #define dfObjectFrame 0x0100 // Objekte als Platzhalter
174 #define dfObjectNone 0x0200 // Objekte nicht anzeigen
175 #define dfNoteMark 0x0400 // Notizanzeiger
176 #define dfProtectMark 0x0800 // Schutzanzeiger
178 // Objekt Typen
179 #define otNone 0 // s.u.
180 #define otOle 1
181 #define otImage 2
182 #define otChart 3
184 // Grafik Typen
185 #define gtNone 0 // Kann nicht vorkommen
186 #define gtOle 1 // Ole 1.0 Objekt
187 #define gtImage 2 // Image (Bitmap oder Metafile)
188 #define gtChart 3 // Chart
190 // Datum/Uhrzeit
191 struct Sc10DateTime
193 USHORT Year;
194 USHORT Month;
195 USHORT Day;
196 USHORT Hour;
197 USHORT Min;
198 USHORT Sec;
201 // ZahlenFormate
202 struct Sc10ValueFormat
204 BYTE Format; // Zahl, Waehrung, Prozent etc.
205 BYTE Info; // Anzahl Nachkommastellen, Anzahl Stellen, bzw. Datums/Zeitformat
208 // Fontbeschreibung
209 struct Sc10LogFont
211 INT16 lfHeight;
212 INT16 lfWidth;
213 INT16 lfEscapement;
214 INT16 lfOrientation;
215 INT16 lfWeight;
216 BYTE lfItalic;
217 BYTE lfUnderline;
218 BYTE lfStrikeOut;
219 BYTE lfCharSet;
220 BYTE lfOutPrecision;
221 BYTE lfClipPrecision;
222 BYTE lfQuality;
223 BYTE lfPitchAndFamily;
224 sal_Char lfFaceName[32];
226 int operator==( const Sc10LogFont& rData ) const;
229 // RGB-Frabwerte
230 struct Sc10Color
232 BYTE Dummy;
233 BYTE Blue;
234 BYTE Green;
235 BYTE Red;
236 int operator==( const Sc10Color& rColor ) const;
239 // Blockbeschreibung
240 struct Sc10BlockRect
242 INT16 x1;
243 INT16 y1;
244 INT16 x2;
245 INT16 y2;
248 // Datenbank-Bereich
249 struct Sc10DataBaseRec
251 sal_Char Name[32];
252 INT16 Tab;
253 Sc10BlockRect Block;
254 BYTE RowHeader;
255 INT16 SortField0;
256 BYTE SortUpOrder0;
257 INT16 SortField1;
258 BYTE SortUpOrder1;
259 INT16 SortField2;
260 BYTE SortUpOrder2;
261 BYTE IncludeFormat;
262 INT16 QueryField0;
263 INT16 QueryOp0;
264 BYTE QueryByString0;
265 sal_Char QueryString0[64];
266 double QueryValue0;
267 INT16 QueryConnect1;
268 INT16 QueryField1;
269 INT16 QueryOp1;
270 BYTE QueryByString1;
271 sal_Char QueryString1[64];
272 double QueryValue1;
273 INT16 QueryConnect2;
274 INT16 QueryField2;
275 INT16 QueryOp2;
276 BYTE QueryByString2;
277 sal_Char QueryString2[64];
278 double QueryValue2;
281 // Kopf/Fusszeilen-Beschreibung
282 struct Sc10HeadFootLine
284 sal_Char Title[128];
285 Sc10LogFont LogFont;
286 BYTE HorJustify;
287 BYTE VerJustify;
288 USHORT Raster;
289 USHORT Frame;
290 Sc10Color TextColor;
291 Sc10Color BackColor;
292 Sc10Color RasterColor;
293 USHORT FrameColor; // Nibble Codierte Farben link oben rechts unten
294 USHORT Reserved;
296 int operator==( const Sc10HeadFootLine& rData ) const;
299 // Seitenformat
300 struct Sc10PageFormat
302 Sc10HeadFootLine HeadLine;
303 Sc10HeadFootLine FootLine;
304 INT16 Orientation;
305 INT16 Width;
306 INT16 Height;
307 INT16 NonPrintableX;
308 INT16 NonPrintableY;
309 INT16 Left;
310 INT16 Top;
311 INT16 Right;
312 INT16 Bottom;
313 INT16 Head;
314 INT16 Foot;
315 BYTE HorCenter;
316 BYTE VerCenter;
317 BYTE PrintGrid;
318 BYTE PrintColRow;
319 BYTE PrintNote;
320 BYTE TopBottomDir;
321 sal_Char PrintAreaName[32];
322 Sc10BlockRect PrintArea;
323 sal_Char PrnZoom[6]; // Pascal 6 Byte Realzahl
324 USHORT FirstPageNo;
325 INT16 RowRepeatStart;
326 INT16 RowRepeatEnd;
327 INT16 ColRepeatStart;
328 INT16 ColRepeatEnd;
329 sal_Char Reserved[26];
331 int operator==( const Sc10PageFormat& rData ) const;
334 // Tabellenschutz
335 struct Sc10TableProtect
337 sal_Char PassWord[16];
338 USHORT Flags;
339 BYTE Protect;
342 // Documentschutz
343 struct Sc10SheetProtect
345 sal_Char PassWord[16];
346 USHORT Flags;
347 BYTE Protect;
350 // Dateikopf StarCalc 1.0 Datei
351 struct Sc10FileHeader
353 sal_Char CopyRight[30];
354 USHORT Version;
355 sal_Char Reserved[32];
358 // Benutzer-Definierte Datei-Beschreibung
359 struct Sc10FileInfo
361 sal_Char Title[64];
362 sal_Char Thema[64];
363 sal_Char Keys[64];
364 sal_Char Note[256];
365 sal_Char InfoLabel0[16];
366 sal_Char InfoLabel1[16];
367 sal_Char InfoLabel2[16];
368 sal_Char InfoLabel3[16];
369 sal_Char Info0[32];
370 sal_Char Info1[32];
371 sal_Char Info2[32];
372 sal_Char Info3[32];
373 sal_Char CreateAuthor[64];
374 sal_Char ChangeAuthor[64];
375 sal_Char PrintAuthor[64];
376 Sc10DateTime CreateDate;
377 Sc10DateTime ChangeDate;
378 Sc10DateTime PrintDate;
379 sal_uInt32 PageCount;
380 sal_uInt32 ChartCount;
381 sal_uInt32 PictureCount;
382 sal_uInt32 GraphCount;
383 sal_uInt32 OleCount;
384 sal_uInt32 NoteCount;
385 sal_uInt32 TextCellCount;
386 sal_uInt32 ValueCellCount;
387 sal_uInt32 FormulaCellCount;
388 sal_uInt32 CellCount;
389 sal_Char Reserved[52];
392 // Letze Cursorposition
393 struct Sc10EditStateInfo
395 // Cursor Position
396 USHORT CarretX;
397 USHORT CarretY;
398 USHORT CarretZ;
399 // Linke obere Ecke der Tabelle im Fenster
400 USHORT DeltaX;
401 USHORT DeltaY;
402 USHORT DeltaZ;
403 // Ueberfluessig in StarCalc 3.0
404 BYTE DataBaseMode;
405 sal_Char Reserved[51];
408 // Attribut-Eintrag
409 struct Sc10ColData
411 USHORT Row;
412 USHORT Value;
415 // ZellAttribut-Beschreibung
416 struct Sc10ColAttr
418 USHORT Count;
419 Sc10ColData* pData;
421 Sc10ColAttr() : pData(NULL) {}
424 // GraphHeader
425 struct Sc10GraphHeader
427 BYTE Typ; // Typ der Grafik (Ole-Objekt, Image (Bitmap oder MetaFile), Chart-Object)
428 INT16 CarretX; // ZellPosition der Grafik
429 INT16 CarretY;
430 INT16 CarretZ;
431 INT32 x; // x,y Abstand zum Zellrand in Pixel (Pixel weil ich Grafiken in Fenstern ablege)
432 INT32 y;
433 INT32 w; // w,h Breite und Hoehe in Pixel
434 INT32 h;
435 BYTE IsRelPos; // Ist die Position relativ zur Zelle oder absolute in der Tabelle
436 BYTE DoPrint; // Soll die Grafik ausgedruckt werden
437 USHORT FrameType; // Art der Umrandung um die Grafik (Keine, Einfach, Doppelt, Einfach Dick, Doppelt Dick)
438 BYTE IsTransparent; // Soll der Hintergrund gezeichnet werden
439 Sc10Color FrameColor; // Umrandungsfarbe als RGB-Wert
440 Sc10Color BackColor; // Hintergrundfarbe als RGB-Wert
441 sal_Char Reserved[32]; // Na was wohl
444 // ImageHeader
445 struct Sc10ImageHeader
447 sal_Char FileName[128]; // Dateiname des urspruenglich eingefuegten Bildes
448 INT16 Typ; // Typ der Grafik (Bitmap oder Metafile)
449 BYTE Linked; // Kann nicht vorkommen
450 INT16 x1; // Urspruengliche Groesse der Grafik (nur fuer Metafiles)
451 INT16 y1;
452 INT16 x2;
453 INT16 y2;
454 sal_uInt32 Size; // Groesse der Grafik in BYTES
457 // ChartHeader
458 struct Sc10ChartHeader
460 INT16 MM; // Meatfile Struktur MapMode, Breite, Hoehe
461 INT16 xExt;
462 INT16 yExt;
463 sal_uInt32 Size; // Groesse der Grafik in BYTES
466 // ChartSheetData
467 struct Sc10ChartSheetData
469 BYTE HasTitle; // Hat das Chart Daten aus der Tabell fuer einen Titel
470 INT16 TitleX; // Zellposition des Titels
471 INT16 TitleY;
472 BYTE HasSubTitle; // Hat das Chart Daten aus der Tabell fuer einen Untertitel
473 INT16 SubTitleX; // Zellposition des Untertitels
474 INT16 SubTitleY;
475 BYTE HasLeftTitle; // Hat das Chart Daten aus der Tabelle fuer einen Linken-Titel
476 INT16 LeftTitleX; // Zellposition des Linken-Titels
477 INT16 LeftTitleY;
478 BYTE HasLegend; // Hat das Chart Daten aus der Tabelle fuer eine Legende
479 INT16 LegendX1; // Zellen der Legende
480 INT16 LegendY1;
481 INT16 LegendX2;
482 INT16 LegendY2;
483 BYTE HasLabel; // Hat das Chart Daten aus der Tabelle fuer die Achsbeschriftung
484 INT16 LabelX1; // Zellen der Achsbeschriftung
485 INT16 LabelY1;
486 INT16 LabelX2;
487 INT16 LabelY2;
488 INT16 DataX1; // Zellen der Daten
489 INT16 DataY1;
490 INT16 DataX2;
491 INT16 DataY2;
492 sal_Char Reserved[64];
495 #define AGPie2D 1 // Pie Chart 2D
496 #define AGPie3D 2 // Pie Chart 3D
497 #define AGBar2D 3 // Bar Chart 2D
498 #define AGBar3D 4 // Bar Chart 3D
499 #define AGGantt 5 // Gantt Diagramm
500 #define AGLine 6 // Line Chart
501 #define AGLogLine 7 // Logarythmic-Coordinate Chart
502 #define AGArea 8 // Area Chart
503 #define AGHLC 11 // High-Low-Close Chart
504 #define AGPolar 10 // Polar-Coordinate Chart
506 typedef sal_Char Sc10ChartText[30];
508 struct Sc10ChartTypeData
510 INT16 NumSets;
511 INT16 NumPoints;
512 INT16 DrawMode;
513 INT16 GraphType;
514 INT16 GraphStyle;
515 sal_Char GraphTitle[80];
516 sal_Char BottomTitle[80];
517 INT16 SymbolData[256];
518 INT16 ColorData[256];
519 INT16 ThickLines[256];
520 INT16 PatternData[256];
521 INT16 LinePatternData[256];
522 INT16 NumGraphStyles[11];
523 INT16 ShowLegend;
524 Sc10ChartText LegendText[256];
525 INT16 ExplodePie;
526 INT16 FontUse;
527 INT16 FontFamily[5];
528 INT16 FontStyle[5];
529 INT16 FontSize[5];
530 INT16 GridStyle;
531 INT16 Labels;
532 INT16 LabelEvery;
533 Sc10ChartText LabelText[50];
534 sal_Char LeftTitle[80];
535 sal_Char Reserved[4646];
539 // FontAttribut
540 class Sc10FontData : public ScDataObject
542 public:
543 INT16 Height;
544 BYTE CharSet;
545 BYTE PitchAndFamily;
546 sal_Char FaceName[32];
548 Sc10FontData( const Sc10FontData& rData ) :
549 ScDataObject( rData ),
550 Height( rData.Height ),
551 CharSet( rData.CharSet ),
552 PitchAndFamily( rData.PitchAndFamily )
554 strncpy( FaceName, rData.FaceName, sizeof(FaceName) );
555 FaceName[sizeof(FaceName)-1] = 0;
557 Sc10FontData( SvStream& rStream );
558 virtual ScDataObject* Clone() const { return new Sc10FontData(*this); }
562 // Font-Collection
563 class Sc10FontCollection : public ScCollection
565 protected:
566 ULONG nError;
567 public:
568 Sc10FontCollection( SvStream& rStream );
569 ULONG GetError() { return nError; }
570 Sc10FontData* At(USHORT nIndex) { return (Sc10FontData*)ScCollection::At(nIndex); }
571 private:
572 using ScCollection::At;
576 //BereichsDaten
577 class Sc10NameData : public ScDataObject
579 public :
580 sal_Char Name[32];
581 sal_Char Reference[64];
582 sal_Char Reserved[12];
584 Sc10NameData(const Sc10NameData& rData) :
585 ScDataObject( rData )
587 strncpy(Name, rData.Name, sizeof(Name));
588 Name[sizeof(Name)-1] = 0;
589 strncpy(Reference, rData.Reference, sizeof(Reference));
590 Reference[sizeof(Reference)-1] = 0;
591 memcpy(Reserved, rData.Reserved, sizeof(Reserved));
593 Sc10NameData(SvStream& rStream);
594 virtual ScDataObject* Clone() const { return new Sc10NameData(*this); }
598 // Bereichs-Collection
599 class Sc10NameCollection : public ScCollection
601 protected:
602 ULONG nError;
603 public:
604 Sc10NameCollection(SvStream& rStream);
605 ULONG GetError() { return nError; }
606 Sc10NameData* At(USHORT nIndex) { return (Sc10NameData*)ScCollection::At(nIndex); }
607 private:
608 using ScCollection::At;
612 // Vorlage-Daten
613 class Sc10PatternData : public ScDataObject
615 public:
616 sal_Char Name[32];
617 Sc10ValueFormat ValueFormat;
618 Sc10LogFont LogFont;
619 USHORT Attr;
620 USHORT Justify;
621 USHORT Frame;
622 USHORT Raster;
623 USHORT nColor;
624 USHORT FrameColor;
625 USHORT Flags;
626 USHORT FormatFlags;
627 sal_Char Reserved[8];
629 Sc10PatternData(const Sc10PatternData& rData) :
630 ScDataObject( rData )
632 strncpy(Name, rData.Name, sizeof(Name));
633 Name[sizeof(Name)-1] = 0;
634 memcpy(&ValueFormat, &rData.ValueFormat, sizeof(ValueFormat));
635 memcpy(&LogFont, &rData.LogFont, sizeof(LogFont));
636 Attr = rData.Attr;
637 Justify = rData.Justify;
638 Frame = rData.Frame;
639 Raster = rData.Raster;
640 nColor = rData.nColor;
641 FrameColor = rData.FrameColor;
642 Flags = rData.Flags;
643 FormatFlags = rData.FormatFlags;
644 memcpy(Reserved, rData.Reserved, sizeof(Reserved));
646 Sc10PatternData(SvStream& rStream);
647 virtual ScDataObject* Clone() const { return new Sc10PatternData(*this); }
651 // Vorlage-Collection
652 class Sc10PatternCollection : public ScCollection
654 protected:
655 ULONG nError;
656 public:
657 Sc10PatternCollection(SvStream& rStream);
658 ULONG GetError() { return nError; }
659 Sc10PatternData* At(USHORT nIndex) { return (Sc10PatternData*)ScCollection::At(nIndex); }
660 private:
661 using ScCollection::At;
665 // DatenBank-Daten
666 class Sc10DataBaseData : public ScDataObject
668 public:
669 Sc10DataBaseRec DataBaseRec;
671 Sc10DataBaseData(const Sc10DataBaseData& rData) :
672 ScDataObject( rData )
674 memcpy(&DataBaseRec, &rData.DataBaseRec, sizeof(DataBaseRec));
676 Sc10DataBaseData(SvStream& rStream);
677 virtual ScDataObject* Clone() const { return new Sc10DataBaseData(*this); }
681 // DatenBank-Collection
682 class Sc10DataBaseCollection : public ScCollection
684 protected:
685 ULONG nError;
686 sal_Char ActName[32];
687 public:
688 Sc10DataBaseCollection(SvStream& rStream);
689 ULONG GetError() { return nError; }
690 Sc10DataBaseData* At(USHORT nIndex) { return (Sc10DataBaseData*)ScCollection::At(nIndex); }
691 private:
692 using ScCollection::At;
696 class Sc10PageData : public ScDataObject
698 public:
699 Sc10PageFormat aPageFormat;
700 Sc10PageData( const Sc10PageFormat& rFormat ) : aPageFormat(rFormat) {}
701 int operator==( const Sc10PageData& rData ) const
702 { return aPageFormat == rData.aPageFormat; }
703 virtual ScDataObject* Clone() const;
706 // Seitenformat-Collection
707 class Sc10PageCollection : public ScCollection
709 public:
710 Sc10PageCollection() : ScCollection(1,1) {};
711 Sc10PageData* At(USHORT nIndex) { return (Sc10PageData*)ScCollection::At(nIndex); }
712 USHORT InsertFormat( const Sc10PageFormat& rData );
713 void PutToDoc( ScDocument* pDoc );
714 private:
715 using ScCollection::At;
719 class ScfStreamProgressBar;
721 // Import-Klasse
722 class Sc10Import
724 SvStream& rStream;
725 ScDocument* pDoc;
726 Sc10Color TextPalette[16];
727 Sc10Color BackPalette[16];
728 Sc10Color RasterPalette[16];
729 Sc10Color FramePalette[16];
730 Sc10SheetProtect SheetProtect;
731 Sc10FontCollection* pFontCollection;
732 Sc10NameCollection* pNameCollection;
733 Sc10PatternCollection* pPatternCollection;
734 Sc10DataBaseCollection* pDataBaseCollection;
735 ULONG nError;
736 INT16 TabCount;
737 SCTAB nShowTab;
738 ScViewOptions aSc30ViewOpt;
739 ScfStreamProgressBar* pPrgrsBar;
741 public:
742 Sc10Import( SvStream& rStr, ScDocument* pDocument );
743 ~Sc10Import();
745 ULONG Import();
746 void LoadFileHeader();
747 void LoadFileInfo();
748 void LoadEditStateInfo();
749 void LoadProtect();
750 void LoadViewColRowBar();
751 void LoadScrZoom();
752 void LoadPalette();
753 void LoadFontCollection();
754 void LoadNameCollection();
755 void ImportNameCollection();
756 void LoadPatternCollection();
757 void LoadDataBaseCollection();
758 void LoadTables();
759 void LoadCol(SCCOL Col, SCTAB Tab);
760 void LoadColAttr(SCCOL Col, SCTAB Tab);
761 void LoadAttr(Sc10ColAttr& rAttr);
762 void ChangeFormat(USHORT nFormat, USHORT nInfo, ULONG& nKey);
763 void LoadObjects();
766 #endif