/**************************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 *************************************************************/



#ifndef _EPPT_DEF_HXX
#define _EPPT_DEF_HXX

#include <tools/solar.h>

#define EPP_FLAG_CONTAINER 0x0F				// If the version field of a record
											// header takes on this value, the
											// record header marks the start of
											// a container.

#define EPP_Unknown                        0
#define EPP_SubContainerCompleted          1
#define EPP_IRRAtom                        2
#define EPP_PSS                            3
#define EPP_SubContainerException          4
#define EPP_ClientSignal1                  6
#define EPP_ClientSignal2                  7
#define EPP_PowerPointStateInfoAtom       10
#define EPP_Document                    1000
#define EPP_DocumentAtom                1001
#define EPP_EndDocument                 1002
#define EPP_SlidePersist                1003
#define EPP_SlideBase                   1004
#define EPP_SlideBaseAtom               1005
#define EPP_Slide                       1006
#define EPP_SlideAtom                   1007
#define EPP_Notes                       1008
#define EPP_NotesAtom                   1009
#define EPP_Environment                 1010
#define EPP_SlidePersistAtom            1011	//0x03F3
#define EPP_Scheme                      1012
#define EPP_SchemeAtom                  1013
#define EPP_DocViewInfo                 1014
#define EPP_SslideLayoutAtom            1015
#define EPP_MainMaster                  1016
#define EPP_SSSlideInfoAtom             1017
#define EPP_SlideViewInfo               1018
#define EPP_GuideAtom                   1019
#define EPP_ViewInfo                    1020
#define EPP_ViewInfoAtom                1021
#define EPP_SlideViewInfoAtom           1022
#define EPP_VBAInfo                     1023
#define EPP_VBAInfoAtom                 1024
#define EPP_SSDocInfoAtom               1025
#define EPP_Summary                     1026
#define EPP_Texture                     1027
#define EPP_VBASlideInfo                1028
#define EPP_VBASlideInfoAtom            1029
#define EPP_DocRoutingSlip              1030
#define EPP_OutlineViewInfo             1031
#define EPP_SorterViewInfo              1032
#define EPP_ExObjList                   1033
#define EPP_ExObjListAtom               1034
#define EPP_PPDrawingGroup              1035
#define EPP_PPDrawing                   1036
#define EPP_NamedShows                  1040
#define EPP_NamedShow                   1041
#define EPP_NamedShowSlides             1042
#define EPP_List                        2000
#define EPP_FontCollection              2005
#define EPP_ListPlaceholder             2017
#define EPP_BookmarkCollection          2019
#define EPP_SoundCollection             2020
#define EPP_SoundCollAtom               2021
#define EPP_Sound                       2022
#define EPP_SoundData                   2023
#define EPP_BookmarkSeedAtom            2025
#define EPP_GuideList                   2026
#define EPP_RunArray                    2028
#define EPP_RunArrayAtom                2029
#define EPP_ArrayElementAtom            2030
#define EPP_Int4ArrayAtom               2031
#define EPP_ColorSchemeAtom             2032

// these atoms first was seen in ppt2000 in a private Tag atom
#define EPP_PST_ExtendedBuGraContainer			2040	// consist of 4041
#define EPP_PST_ExtendedBuGraAtom				2041	// the instance of this atom indices the current graphic

#define EPP_OEShape                     3008
#define EPP_ExObjRefAtom                3009
#define EPP_OEPlaceholderAtom           3011
#define EPP_GrColor                     3020
#define EPP_GrectAtom                   3025
#define EPP_GratioAtom                  3031
#define EPP_Gscaling                    3032
#define EPP_GpointAtom                  3034
#define EPP_OEShapeAtom                 3035
#define EPP_OutlineTextRefAtom          3998
#define EPP_TextHeaderAtom              3999
#define EPP_TextCharsAtom               4000
#define EPP_StyleTextPropAtom           4001
#define EPP_BaseTextPropAtom            4002
#define EPP_TxMasterStyleAtom           4003
#define EPP_TxCFStyleAtom               4004
#define EPP_TxPFStyleAtom               4005
#define EPP_TextRulerAtom               4006
#define EPP_TextBookmarkAtom            4007
#define EPP_TextBytesAtom               4008
#define EPP_TxSIStyleAtom               4009
#define EPP_TextSpecInfoAtom            4010
#define EPP_DefaultRulerAtom            4011

// these atoms first was seen in ppt2000 in a private Tag atom
#define EPP_PST_ExtendedParagraphAtom			4012
#define EPP_PST_ExtendedParagraphMasterAtom		4013
#define EPP_PST_ExtendedPresRuleContainer		4014	// consist of 4012, 4015, 
#define EPP_PST_ExtendedParagraphHeaderAtom		4015	// the instance of this atom indices the current presobj
														// the first sal_uInt32 in this atom indices the current slideId

#define EPP_FontEnityAtom				4023
#define EPP_FontEmbedData               4024
#define EPP_TypeFace                    4025
#define EPP_CString                     4026
#define EPP_ExternalObject              4027
#define EPP_MetaFile                    4033
#define EPP_ExOleObj                    4034
#define EPP_ExOleObjAtom                4035
#define EPP_ExPlainLinkAtom             4036
#define EPP_CorePict                    4037
#define EPP_CorePictAtom                4038
#define EPP_ExPlainAtom                 4039
#define EPP_SrKinsoku                   4040
#define EPP_Handout                     4041
#define EPP_ExEmbed                     4044
#define EPP_ExEmbedAtom                 4045
#define EPP_ExLink                      4046
#define EPP_ExLinkAtom_old              4047
#define EPP_BookmarkEntityAtom          4048
#define EPP_ExLinkAtom                  4049
#define EPP_SrKinsokuAtom               4050
#define EPP_ExHyperlinkAtom             4051
#define EPP_ExPlain                     4053
#define EPP_ExPlainLink                 4054
#define EPP_ExHyperlink                 4055
#define EPP_SlideNumberMCAtom           4056
#define EPP_HeadersFooters              4057
#define EPP_HeadersFootersAtom          4058
#define EPP_RecolorEntryAtom            4062
#define EPP_TxInteractiveInfoAtom       4063
#define EPP_EmFormatAtom                4065
#define EPP_CharFormatAtom              4066
#define EPP_ParaFormatAtom              4067
#define EPP_MasterText                  4068
#define EPP_RecolorInfoAtom             4071
#define EPP_ExQuickTime                 4073
#define EPP_ExQuickTimeMovie            4074
#define EPP_ExQuickTimeMovieData        4075
#define EPP_ExSubscription              4076
#define EPP_ExSubscriptionSection       4077
#define EPP_ExControl                   4078
#define EPP_ExControlAtom               4091
#define EPP_SlideListWithText           4080	// 0x0FF0
#define EPP_AnimationInfoAtom           4081
#define EPP_InteractiveInfo             4082
#define EPP_InteractiveInfoAtom         4083
#define EPP_SlideList                   4084
#define EPP_UserEditAtom                4085
#define EPP_CurrentUserAtom             4086
#define EPP_DateTimeMCAtom              4087
#define EPP_GenericDateMCAtom           4088
#define EPP_HeaderMCAtom                4089
#define EPP_FooterMCAtom                4090
#define EPP_ExMediaAtom                 4100
#define EPP_ExVideo                     4101
#define EPP_ExAviMovie                  4102
#define EPP_ExMCIMovie                  4103
#define EPP_ExMIDIAudio                 4109
#define EPP_ExCDAudio                   4110
#define EPP_ExWAVAudioEmbedded          4111
#define EPP_ExWAVAudioLink              4112
#define EPP_ExOleObjStg                 4113
#define EPP_ExCDAudioAtom               4114
#define EPP_ExWAVAudioEmbeddedAtom      4115
#define EPP_AnimationInfo               4116
#define EPP_RTFDateTimeMCAtom           4117
#define EPP_ProgTags                    5000
#define EPP_ProgStringTag               5001
#define EPP_ProgBinaryTag               5002
#define EPP_BinaryTagData               5003
#define EPP_PrintOptions                6000
#define EPP_PersistPtrFullBlock         6001
#define EPP_PersistPtrIncrementalBlock  6002
#define EPP_RulerIndentAtom            10000
#define EPP_GscalingAtom               10001
#define EPP_GrColorAtom                10002
#define EPP_GLPointAtom                10003
#define EPP_Comment10					12000
#define EPP_CommentAtom10				12001


#define EPP_PLACEHOLDER_NONE					0	//	0 None
#define EPP_PLACEHOLDER_MASTERTITLE				1	//  1 Master title
#define EPP_PLACEHOLDER_MASTERBODY				2	//  2 Master body
#define EPP_PLACEHOLDER_MASTERCENTEREDTITLE		3	//  3 Master centered title
#define EPP_PLACEHOLDER_MASTERSUBTITLE			4	// 10 Master subtitle
#define EPP_PLACEHOLDER_MASTERNOTESSLIDEIMAGE	5	//  4 Master notes slide image
#define EPP_PLACEHOLDER_MASTERNOTESBODYIMAGE	6	//  5 Master notes body image
#define EPP_PLACEHOLDER_MASTERDATE				7	//  6 Master date
#define EPP_PLACEHOLDER_MASTERSLIDENUMBER		8	//  7 Master slide number
#define EPP_PLACEHOLDER_MASTERFOOTER			9	//  8 Master footer
#define EPP_PLACEHOLDER_MASTERHEADER			10	//  9 Master header
#define EPP_PLACEHOLDER_GENERICTEXTOBJECT			// 11 Generic text object
#define EPP_PLACEHOLDER_TITLE					13	// 12 Title
#define EPP_PLACEHOLDER_BODY					14	// 13 Body
#define EPP_PLACEHOLDER_NOTESBODY				12	// 14 Notes body
#define EPP_PLACEHOLDER_CENTEREDTITLE			15	// 15 Centered title
#define EPP_PLACEHOLDER_SUBTITLE				16	// 16 Subtitle
#define EPP_PLACEHOLDER_VERTICALTEXTTITLE		17	// 17 Vertical text title
#define EPP_PLACEHOLDER_VERTICALTEXTBODY		18	// 18 Vertical text body
#define EPP_PLACEHOLDER_NOTESSLIDEIMAGE			11	// 19 Notes slide image
#define EPP_PLACEHOLDER_OBJECT					19	// 20 Object (no matter the size)
#define EPP_PLACEHOLDER_GRAPH					20	// 21 Graph
#define EPP_PLACEHOLDER_TABLE					21	// 22 Table
#define EPP_PLACEHOLDER_CLIPART					22	// 23 Clip Art
#define EPP_PLACEHOLDER_ORGANISZATIONCHART		23	// 24 Organization Chart
#define EPP_PLACEHOLDER_MEDIACLIP				24	// 25 Media Clip

#define EPP_TEXTTYPE_Title				0
#define EPP_TEXTTYPE_Body				1
#define EPP_TEXTTYPE_Notes				2
#define EPP_TEXTTYPE_notUsed			3
#define EPP_TEXTTYPE_Other				4	// ( Text in a shape )
#define EPP_TEXTTYPE_CenterBody			5	// ( subtitle in title slide )
#define EPP_TEXTTYPE_CenterTitle		6	// ( title in title slide )
#define EPP_TEXTTYPE_HalfBody			7	// ( body in two-column slide )
#define EPP_TEXTTYPE_QuarterBody		8	// ( body in four-body slide )

#define EPP_SLIDESIZE_TYPEONSCREEN			0
#define EPP_SLIDESIZE_TYPELETTERSIZERPAPER	1
#define EPP_SLIDESIZE_TYPEA4PAPER			2
#define EPP_SLIDESIZE_TYPE35MM				3
#define EPP_SLIDESIZE_TYPEOVERHEAD			4
#define EPP_SLIDESIZE_TYPEBANNER			5
#define EPP_SLIDESIZE_TYPECUSTOM			6

#endif
