You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2534 lines
63 KiB
2534 lines
63 KiB
/* libppt - library to read PowerPoint presentation
|
|
Copyright (C) 2005 Yolla Indria <yolla.indria@gmail.com>
|
|
|
|
This library is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU Library General Public
|
|
License as published by the Free Software Foundation; either
|
|
version 2 of the License, or (at your option) any later version.
|
|
|
|
This library is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Library General Public License for more details.
|
|
|
|
You should have received a copy of the GNU Library General Public License
|
|
along with this library; see the file COPYING.LIB. If not, write to
|
|
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
* Boston, MA 02110-1301, USA
|
|
*/
|
|
|
|
#ifndef LIBPPT_POWERPOINT
|
|
#define LIBPPT_POWERPOINT
|
|
|
|
#include <iostream>
|
|
#include "ustring.h"
|
|
|
|
namespace Libppt
|
|
{
|
|
|
|
// forward declaration
|
|
class Presentation;
|
|
|
|
class Record
|
|
{
|
|
public:
|
|
|
|
/**
|
|
Static ID of the record. Subclasses should override this value
|
|
with the id of the record they handle.
|
|
*/
|
|
static const unsigned int id;
|
|
|
|
virtual unsigned int rtti(){
|
|
return this->id;
|
|
}
|
|
|
|
/**
|
|
Creates a new generic record.
|
|
*/
|
|
Record();
|
|
|
|
/**
|
|
Destroys the record.
|
|
*/
|
|
virtual ~Record();
|
|
|
|
/**
|
|
* Record factory, create a new record of specified type.
|
|
*/
|
|
static Record* create( unsigned type );
|
|
|
|
/**
|
|
* Returns true if this is a Container.
|
|
*/
|
|
virtual bool isContainer() const { return false; }
|
|
|
|
void setParent( Record* parent );
|
|
|
|
const Record* parent() const;
|
|
|
|
/**
|
|
Sets the data for this record.
|
|
*/
|
|
virtual void setData( unsigned size, const unsigned char* data );
|
|
virtual void setData( unsigned size, const unsigned char* data, unsigned lastSize );
|
|
|
|
/**
|
|
Sets the position of the record in the OLE stream.
|
|
*/
|
|
void setPosition( unsigned pos );
|
|
|
|
/**
|
|
Gets the position of this record in the OLE stream.
|
|
*/
|
|
unsigned position() const;
|
|
|
|
void setInstance( unsigned inst );
|
|
unsigned instance() const;
|
|
|
|
/**
|
|
Returns the name of the record. For debugging only.
|
|
*/
|
|
virtual const char* name(){ return "Unknown"; }
|
|
|
|
/**
|
|
Dumps record information to output stream. For debugging only.
|
|
*/
|
|
virtual void dump( std::ostream& out ) const;
|
|
|
|
protected:
|
|
|
|
// position of this record in the OLE stream
|
|
unsigned stream_position;
|
|
|
|
unsigned record_instance;
|
|
|
|
Record* record_parent;
|
|
|
|
private:
|
|
// no copy or assign
|
|
Record( const Record& );
|
|
Record& operator=( const Record& );
|
|
};
|
|
|
|
// Container is a special record, it is for holding another records
|
|
class Container: public Record
|
|
{
|
|
public:
|
|
Container();
|
|
virtual bool isContainer() const { return true; }
|
|
const char* name(){ return "Container"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
Container( const Container& );
|
|
Container& operator=( const Container& );
|
|
};
|
|
|
|
|
|
class BookmarkCollectionContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
BookmarkCollectionContainer();
|
|
const char* name(){ return "BookmarkCollectionContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
BookmarkCollectionContainer( const BookmarkCollectionContainer& );
|
|
BookmarkCollectionContainer& operator=( const BookmarkCollectionContainer& );
|
|
};
|
|
|
|
class DocumentContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
DocumentContainer();
|
|
const char* name(){ return "DocumentContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
DocumentContainer( const DocumentContainer& );
|
|
DocumentContainer& operator=( const DocumentContainer& );
|
|
};
|
|
|
|
class EnvironmentContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
EnvironmentContainer();
|
|
const char* name(){ return "EnvironmentContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
EnvironmentContainer( const EnvironmentContainer& );
|
|
EnvironmentContainer& operator=( const EnvironmentContainer& );
|
|
};
|
|
|
|
class ExObjListContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExObjListContainer();
|
|
const char* name(){ return "ExObjListContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ExObjListContainer( const ExObjListContainer& );
|
|
ExObjListContainer& operator=( const ExObjListContainer& );
|
|
};
|
|
|
|
class ExHyperlinkContainer : public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExHyperlinkContainer ();
|
|
const char* name(){ return "ExHyperlinkContainer "; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ExHyperlinkContainer ( const ExHyperlinkContainer & );
|
|
ExHyperlinkContainer & operator=( const ExHyperlinkContainer & );
|
|
};
|
|
|
|
class ExEmbedContainer : public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExEmbedContainer ();
|
|
const char* name(){ return "ExEmbedContainer "; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ExEmbedContainer ( const ExEmbedContainer & );
|
|
ExEmbedContainer & operator=( const ExEmbedContainer & );
|
|
};
|
|
|
|
class ExLinkContainer : public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExLinkContainer ();
|
|
const char* name(){ return "ExLinkContainer "; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ExLinkContainer ( const ExLinkContainer & );
|
|
ExLinkContainer & operator=( const ExLinkContainer & );
|
|
};
|
|
|
|
class RunArrayContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
RunArrayContainer();
|
|
|
|
const char* name(){ return "RunArrayContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
RunArrayContainer( const RunArrayContainer& );
|
|
RunArrayContainer& operator=( const RunArrayContainer& );
|
|
};
|
|
|
|
class ExOleObjStgContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExOleObjStgContainer();
|
|
const char* name(){ return "ExOleObjStgContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ExOleObjStgContainer( const ExOleObjStgContainer& );
|
|
ExOleObjStgContainer& operator=( const ExOleObjStgContainer& );
|
|
};
|
|
|
|
class FontCollectionContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
FontCollectionContainer();
|
|
const char* name(){ return "FontCollectionContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
FontCollectionContainer( const FontCollectionContainer& );
|
|
FontCollectionContainer& operator=( const FontCollectionContainer& );
|
|
};
|
|
|
|
class HandoutContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
HandoutContainer();
|
|
const char* name(){ return "HandoutContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
HandoutContainer( const HandoutContainer& );
|
|
HandoutContainer& operator=( const HandoutContainer& );
|
|
};
|
|
|
|
class HeadersFootersContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
HeadersFootersContainer();
|
|
const char* name(){ return "HeadersFootersContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
HeadersFootersContainer( const DocumentContainer& );
|
|
HeadersFootersContainer& operator=( const DocumentContainer& );
|
|
};
|
|
|
|
class ListContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ListContainer();
|
|
const char* name(){ return "ListContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ListContainer( const ListContainer& );
|
|
ListContainer& operator=( const ListContainer& );
|
|
};
|
|
|
|
class MainMasterContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
MainMasterContainer();
|
|
const char* name(){ return "MainMasterContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
MainMasterContainer( const MainMasterContainer& );
|
|
MainMasterContainer& operator=( const MainMasterContainer& );
|
|
};
|
|
|
|
class NotesContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
NotesContainer();
|
|
const char* name(){ return "NotesContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
NotesContainer( const NotesContainer& );
|
|
NotesContainer& operator=( const NotesContainer& );
|
|
};
|
|
|
|
class OutlineViewInfoContainer : public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
OutlineViewInfoContainer ();
|
|
const char* name(){ return "OutlineViewInfoContainer "; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
OutlineViewInfoContainer ( const OutlineViewInfoContainer & );
|
|
OutlineViewInfoContainer & operator=( const OutlineViewInfoContainer & );
|
|
};
|
|
|
|
class PPDrawingContainer : public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
PPDrawingContainer ();
|
|
const char* name(){ return "PPDrawingContainer "; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
PPDrawingContainer ( const PPDrawingContainer & );
|
|
PPDrawingContainer & operator=( const PPDrawingContainer & );
|
|
};
|
|
|
|
class PPDrawingGroupContainer : public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
PPDrawingGroupContainer ();
|
|
const char* name(){ return "PPDrawingGroupContainer "; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
PPDrawingGroupContainer ( const PPDrawingGroupContainer & );
|
|
PPDrawingGroupContainer & operator=( const PPDrawingGroupContainer & );
|
|
};
|
|
|
|
class ProgBinaryTagContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ProgBinaryTagContainer();
|
|
const char* name(){ return "ProgBinaryTagContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ProgBinaryTagContainer( const ProgBinaryTagContainer& );
|
|
ProgBinaryTagContainer& operator=( const ProgBinaryTagContainer& );
|
|
};
|
|
|
|
class ProgStringTagContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ProgStringTagContainer();
|
|
const char* name(){ return "ProgStringTagContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ProgStringTagContainer( const ProgStringTagContainer& );
|
|
ProgStringTagContainer& operator=( const ProgStringTagContainer& );
|
|
};
|
|
|
|
class ProgTagsContainer : public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ProgTagsContainer ();
|
|
const char* name(){ return "ProgTagsContainer "; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ProgTagsContainer ( const ProgTagsContainer & );
|
|
ProgTagsContainer & operator=( const ProgTagsContainer & );
|
|
};
|
|
|
|
class SlideContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SlideContainer();
|
|
const char* name(){ return "SlideContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
SlideContainer( const SlideContainer& );
|
|
SlideContainer& operator=( const SlideContainer& );
|
|
};
|
|
|
|
class SlideBaseContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SlideBaseContainer();
|
|
const char* name(){ return "SlideBaseContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
SlideBaseContainer( const SlideBaseContainer& );
|
|
SlideBaseContainer& operator=( const SlideBaseContainer& );
|
|
};
|
|
|
|
class SlideListWithTextContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SlideListWithTextContainer();
|
|
const char* name(){ return "SlideListWithTextContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
SlideListWithTextContainer( const SlideListWithTextContainer& );
|
|
SlideListWithTextContainer& operator=( const SlideListWithTextContainer& );
|
|
};
|
|
|
|
class SlideViewInfoContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SlideViewInfoContainer();
|
|
const char* name(){ return "SlideViewInfoContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
SlideViewInfoContainer( const SlideViewInfoContainer& );
|
|
SlideViewInfoContainer& operator=( const SlideViewInfoContainer& );
|
|
};
|
|
|
|
class SorterViewInfoContainer : public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SorterViewInfoContainer ();
|
|
const char* name(){ return "SorterViewInfoContainer "; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
SorterViewInfoContainer ( const SorterViewInfoContainer & );
|
|
SorterViewInfoContainer & operator=( const SorterViewInfoContainer & );
|
|
};
|
|
|
|
class SummaryContainer : public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SummaryContainer ();
|
|
const char* name(){ return "SummaryContainer "; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
SummaryContainer ( const SummaryContainer & );
|
|
SummaryContainer & operator=( const SummaryContainer & );
|
|
};
|
|
|
|
class SrKinsokuContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SrKinsokuContainer();
|
|
const char* name(){ return "SrKinsokuContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
SrKinsokuContainer( const SrKinsokuContainer& );
|
|
SrKinsokuContainer& operator=( const SrKinsokuContainer& );
|
|
};
|
|
|
|
class VBAInfoContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
VBAInfoContainer();
|
|
const char* name(){ return "VBAInfoContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
VBAInfoContainer( const VBAInfoContainer& );
|
|
VBAInfoContainer& operator=( const VBAInfoContainer& );
|
|
};
|
|
|
|
class ViewInfoContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ViewInfoContainer();
|
|
const char* name(){ return "ViewInfoContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
ViewInfoContainer( const ViewInfoContainer& );
|
|
ViewInfoContainer& operator=( const ViewInfoContainer& );
|
|
};
|
|
|
|
class msofbtDgContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtDgContainer();
|
|
const char* name(){ return "msofbtDgContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtDgContainer( const msofbtDgContainer& );
|
|
msofbtDgContainer& operator=( const msofbtDgContainer& );
|
|
};
|
|
|
|
class msofbtSpContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtSpContainer();
|
|
const char* name(){ return "msofbtSpContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtSpContainer( const msofbtSpContainer& );
|
|
msofbtSpContainer& operator=( const msofbtSpContainer& );
|
|
};
|
|
|
|
class msofbtSpgrContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtSpgrContainer();
|
|
const char* name(){ return "msofbtSpgrContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtSpgrContainer( const msofbtSpgrContainer& );
|
|
msofbtSpgrContainer& operator=( const msofbtSpgrContainer& );
|
|
};
|
|
|
|
class msofbtDggContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtDggContainer();
|
|
const char* name(){ return "msofbtDggContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtDggContainer( const msofbtDggContainer& );
|
|
msofbtDggContainer& operator=( const msofbtDggContainer& );
|
|
};
|
|
|
|
class msofbtBstoreContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtBstoreContainer();
|
|
const char* name(){ return "msofbtBstoreContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtBstoreContainer( const msofbtBstoreContainer& );
|
|
msofbtBstoreContainer& operator=( const msofbtBstoreContainer& );
|
|
};
|
|
|
|
class msofbtSolverContainer: public Container
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtSolverContainer();
|
|
const char* name(){ return "msofbtSolverContainer"; }
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtSolverContainer( const msofbtSolverContainer& );
|
|
msofbtSolverContainer& operator=( const msofbtSolverContainer& );
|
|
};
|
|
|
|
class BookmarkEntityAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
BookmarkEntityAtom ();
|
|
~BookmarkEntityAtom ();
|
|
|
|
int bookmarkID() const;
|
|
void setBookmarkID( int bookmarkID );
|
|
int bookmarkName() const;
|
|
void setBookmarkName( int bookmarkName );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "BookmarkEntityAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
BookmarkEntityAtom ( const BookmarkEntityAtom & );
|
|
BookmarkEntityAtom & operator=( const BookmarkEntityAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class CStringAtom: public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
CStringAtom();
|
|
~CStringAtom();
|
|
|
|
UString ustring() const;
|
|
void setUString( const UString& ustr );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "CStringAtom"; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
CStringAtom( const CStringAtom& );
|
|
CStringAtom& operator=( const CStringAtom& );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class ColorSchemeAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ColorSchemeAtom();
|
|
~ColorSchemeAtom();
|
|
|
|
int background() const;
|
|
void setBackground( int background );
|
|
int textAndLines() const;
|
|
void setTextAndLines( int textAndLines );
|
|
int shadows() const;
|
|
void setShadows( int shadows );
|
|
int titleText() const;
|
|
void setTitleText( int titleText );
|
|
int fills() const;
|
|
void setFills( int fills );
|
|
int accent() const;
|
|
void setAccent( int accent );
|
|
int accentAndHyperlink() const;
|
|
void setAccentAndHyperlink ( int accentAndHyperlink );
|
|
int accentAndFollowedHyperlink() const;
|
|
void setAccentAndFollowedHyperlink( int accentAndFollowedHyperlink );
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "ColorSchemeAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
ColorSchemeAtom ( const ColorSchemeAtom & );
|
|
ColorSchemeAtom & operator=( const ColorSchemeAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class CurrentUserAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
CurrentUserAtom();
|
|
~CurrentUserAtom();
|
|
|
|
int size() const;
|
|
void setSize( int size );
|
|
int magic() const;
|
|
void setMagic( int magic );
|
|
int offsetToCurrentEdit() const;
|
|
void setOffsetToCurrentEdit( int offsetToCurrentEdit );
|
|
int lenUserName() const;
|
|
void setLenUserName( int lenUserName );
|
|
int docFileVersion() const;
|
|
void setDocFileVersion( int docFileVersion );
|
|
int majorVersion() const;
|
|
void setMajorVersion( int majorVersion );
|
|
int minorVersion() const;
|
|
void setMinorVersion ( int minorVersion );
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "ColorSchemeAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
CurrentUserAtom ( const CurrentUserAtom & );
|
|
CurrentUserAtom & operator=( const CurrentUserAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class DocumentAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
DocumentAtom();
|
|
~DocumentAtom();
|
|
|
|
int slideWidth() const;
|
|
void setSlideWidth( int w );
|
|
int slideHeight() const;
|
|
void setSlideHeight( int h );
|
|
int notesWidth() const;
|
|
void setNotesWidth( int nw );
|
|
int notesHeight() const;
|
|
void setNotesHeight( int nh );
|
|
int zoomNumer() const;
|
|
void setZoomNumer( int numer );
|
|
int zoomDenom() const;
|
|
void setZoomDenom( int denom );
|
|
|
|
int notesMasterPersist() const;
|
|
void setNotesMasterPersist( int notesMasterPersist );
|
|
|
|
int handoutMasterPersist() const;
|
|
void setHandoutMasterPersist(int handoutMasterPersist);
|
|
|
|
int firstSlideNum() const;
|
|
void setFirstSlideNum( int firstSlideNum );
|
|
|
|
int slideSizeType() const;
|
|
void setSlideSizeType( int slideSizeType );
|
|
|
|
int saveWithFonts() const;
|
|
void setSaveWithFonts( int saveWithFonts );
|
|
|
|
int omitTitlePlace() const;
|
|
void setOmitTitlePlace( int omitTitlePlace );
|
|
|
|
int rightToLeft() const;
|
|
void setRightToLeft( int rightToLeft );
|
|
|
|
int showComments() const;
|
|
void setShowComments( int showComments);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "DocumentAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
DocumentAtom ( const DocumentAtom & );
|
|
DocumentAtom & operator=( const DocumentAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class EndDocumentAtom: public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
EndDocumentAtom();
|
|
const char* name(){ return "EndDocumentAtom"; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
EndDocumentAtom( const EndDocumentAtom& );
|
|
EndDocumentAtom& operator=( const EndDocumentAtom& );
|
|
};
|
|
|
|
class ExObjListAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExObjListAtom();
|
|
~ExObjListAtom();
|
|
|
|
int objectIdSeed() const;
|
|
void setObjectIdSeed( int objectIdSeed );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "ExObjListAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
ExObjListAtom ( const ExObjListAtom & );
|
|
ExObjListAtom & operator=( const ExObjListAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class ExHyperlinkAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExHyperlinkAtom ();
|
|
~ExHyperlinkAtom ();
|
|
|
|
int objID() const;
|
|
void setObjID (int objID);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "ExHyperlinkAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
ExHyperlinkAtom ( const ExHyperlinkAtom & );
|
|
ExHyperlinkAtom & operator=( const ExHyperlinkAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class ExLinkAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExLinkAtom();
|
|
~ExLinkAtom();
|
|
|
|
int exObjId() const;
|
|
void setExObjId( int exObjId);
|
|
int flags() const;
|
|
void setFlags( int flags);
|
|
int unavailable() const;
|
|
void setUnavailable( int unavailable);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "ExLinkAtom"; }
|
|
void dump( std::ostream& out ) const;
|
|
private:
|
|
// no copy or assign
|
|
ExLinkAtom ( const ExLinkAtom & );
|
|
ExLinkAtom & operator=( const ExLinkAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class ExOleObjAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExOleObjAtom ();
|
|
~ExOleObjAtom ();
|
|
|
|
int drawAspect() const;
|
|
void setDrawAspect(int drawAspect);
|
|
int type() const;
|
|
void setType(int type);
|
|
int objID() const;
|
|
void setObjID(int objID);
|
|
int subType() const;
|
|
void setSubType(int subType);
|
|
int objStgDataRef() const;
|
|
void setObjStgDataRef(int objStgDataRef);
|
|
int isBlank() const;
|
|
void setIsBlank(int isBlank);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "ExOleObjAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
ExOleObjAtom ( const ExOleObjAtom & );
|
|
ExOleObjAtom & operator=( const ExOleObjAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class ExEmbedAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ExEmbedAtom ();
|
|
~ExEmbedAtom ();
|
|
|
|
int followColorScheme() const;
|
|
void setFollowColorScheme(int followColorScheme);
|
|
int cantLockServerB() const;
|
|
void setCantLockServerB(int cantLockServerB);
|
|
int noSizeToServerB() const;
|
|
void setNoSizeToServerB(int noSizeToServerB);
|
|
int isTable() const;
|
|
void setIsTable(int isTable);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "ExEmbedAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
ExEmbedAtom ( const ExEmbedAtom & );
|
|
ExEmbedAtom & operator=( const ExEmbedAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class FontEntityAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
FontEntityAtom();
|
|
~FontEntityAtom();
|
|
|
|
UString ustring() const;
|
|
void setUString( const UString& ustr );
|
|
int charset() const;
|
|
void setCharset( int charset ) ;
|
|
int clipPrecision() const;
|
|
void setClipPrecision( int clipPrecision);
|
|
int quality() const;
|
|
void setQuality( int quality );
|
|
int pitchAndFamily() const;
|
|
void setPitchAndFamily( int pitchAndFamily );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "FontEntityAtom"; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
FontEntityAtom ( const FontEntityAtom & );
|
|
FontEntityAtom & operator=( const FontEntityAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class GuideAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
GuideAtom ();
|
|
~GuideAtom ();
|
|
|
|
int type() const;
|
|
void setType(int type);
|
|
int pos() const;
|
|
void setPos(int pos);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "GuideAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
GuideAtom ( const GuideAtom & );
|
|
GuideAtom & operator=( const GuideAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class HeadersFootersAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
HeadersFootersAtom ();
|
|
~HeadersFootersAtom ();
|
|
|
|
int formatId() const;
|
|
void setFormatId( int slideId );
|
|
int flags() const;
|
|
void setFlags( int flags );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "HeadersFootersAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
HeadersFootersAtom ( const HeadersFootersAtom & );
|
|
HeadersFootersAtom & operator=( const HeadersFootersAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class NotesAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
NotesAtom();
|
|
~NotesAtom();
|
|
|
|
int slideId() const;
|
|
void setSlideId( int slideId );
|
|
int flags() const;
|
|
void setFlags( int flags );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "NotesAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
NotesAtom ( const NotesAtom & );
|
|
NotesAtom & operator=( const NotesAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class PersistIncrementalBlockAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
PersistIncrementalBlockAtom();
|
|
~PersistIncrementalBlockAtom();
|
|
|
|
unsigned entryCount() const;
|
|
unsigned long reference( unsigned index ) const;
|
|
unsigned long offset( unsigned index ) const;
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "PersistIncrementalBlockAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
PersistIncrementalBlockAtom ( const PersistIncrementalBlockAtom & );
|
|
PersistIncrementalBlockAtom & operator=( const PersistIncrementalBlockAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class Record1043 : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
Record1043 ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "Record1043 "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
Record1043 ( const Record1043 & );
|
|
Record1043 & operator=( const Record1043 & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class Record1044 : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
Record1044 ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "Record1044 "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
Record1044 ( const Record1044 & );
|
|
Record1044 & operator=( const Record1044 & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class SSlideLayoutAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SSlideLayoutAtom ();
|
|
~SSlideLayoutAtom ();
|
|
|
|
int geom() const;
|
|
void setGeom( int geom);
|
|
int placeholderId() const;
|
|
void setPlaceholderId( int placeholderId);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "SSlideLayoutAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
SSlideLayoutAtom ( const SSlideLayoutAtom & );
|
|
SSlideLayoutAtom & operator=( const SSlideLayoutAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class SlideViewInfoAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SlideViewInfoAtom ();
|
|
~SlideViewInfoAtom ();
|
|
|
|
int showGuides() const;
|
|
void setShowGuides( int showGuides);
|
|
int snapToGrid() const;
|
|
void setSnapToGrid( int snapToGrid);
|
|
int snapToShape() const;
|
|
void setSnapToShape( int snapToShape);
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "SlideViewInfoAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
SlideViewInfoAtom ( const SlideViewInfoAtom & );
|
|
SlideViewInfoAtom & operator=( const SlideViewInfoAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class SlidePersistAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SlidePersistAtom ();
|
|
virtual ~SlidePersistAtom ();
|
|
|
|
int psrReference() const;
|
|
void setPsrReference( int psrReference );
|
|
int flags() const;
|
|
void setFlags( int flags );
|
|
int numberTexts() const;
|
|
void setNumberTexts( int numberTexts );
|
|
int slideId() const;
|
|
void setSlideId( int slideId );
|
|
int reserved() const;
|
|
void setReserved(int reserved);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "SlidePersistAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
SlidePersistAtom ( const SlidePersistAtom & );
|
|
SlidePersistAtom & operator=( const SlidePersistAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class SSDocInfoAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SSDocInfoAtom ();
|
|
~SSDocInfoAtom ();
|
|
|
|
int penColorRed() const;
|
|
void setPenColorRed( int penColorRed );
|
|
int penColorGreen() const;
|
|
void setPenColorGreen( int penColorGreen );
|
|
int penColorBlue() const;
|
|
void setPenColorBlue( int penColorBlue );
|
|
int penColorIndex() const;
|
|
void setPenColorIndex( int penColorIndex );
|
|
int restartTime() const;
|
|
void setRestartTime( int restartTime );
|
|
int startSlide() const;
|
|
void setStartSlide( int startSlide );
|
|
int endSlide() const;
|
|
void setEndSlide( int endSlide );
|
|
int namedShow() const;
|
|
void setNamedShow(int namedShow);
|
|
int flags() const;
|
|
void setFlags(int flags);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "SSDocInfoAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
SSDocInfoAtom ( const SSDocInfoAtom & );
|
|
SSDocInfoAtom & operator=( const SSDocInfoAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class StyleTextPropAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
StyleTextPropAtom ();
|
|
~StyleTextPropAtom ();
|
|
|
|
// paragraph properties
|
|
int charCount( unsigned index ) const;
|
|
int depth( unsigned index ) const;
|
|
int bulletOn ( unsigned index ) const;
|
|
int bulletHardFont( unsigned index ) const;
|
|
int bulletHardColor( unsigned index ) const;
|
|
int bulletChar ( unsigned index ) const;
|
|
int bulletFont( unsigned index ) const;
|
|
int bulletHeight( unsigned index ) const;
|
|
int bulletColor( unsigned index ) const;
|
|
int align( unsigned index ) const;
|
|
int lineFeed( unsigned index ) const;
|
|
int upperDist( unsigned index ) const;
|
|
int lowerDist( unsigned index ) const;
|
|
int asianLB1( unsigned index ) const;
|
|
int asianLB2( unsigned index ) const;
|
|
int asianLB3( unsigned index ) const;
|
|
int biDi( unsigned index ) const;
|
|
|
|
// character properties
|
|
int charMask() const;
|
|
int charFlags() const;
|
|
|
|
unsigned listSize() const;
|
|
|
|
void setData( unsigned size, const unsigned char* data, unsigned lastSize );
|
|
const char* name(){ return "StyleTextPropAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
private:
|
|
// character properties
|
|
void setCharMask ( int charMask );
|
|
void setCharFlags( int charFlags );
|
|
|
|
// no copy or assign
|
|
StyleTextPropAtom ( const StyleTextPropAtom & );
|
|
StyleTextPropAtom & operator=( const StyleTextPropAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class SlideAtom: public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SlideAtom();
|
|
~SlideAtom();
|
|
|
|
int layoutGeom() const;
|
|
void setLayoutGeom( int layoutGeom );
|
|
// see OEPlaceHolderAtom
|
|
int layoutPlaceholderId() const;
|
|
// void setLayoutPlaceholderId(int layoutPlaceholderId);
|
|
void setLayoutPlaceholderId(int layoutPlaceholderId1, int layoutPlaceholderId2,int layoutPlaceholderId3,int layoutPlaceholderId4,int layoutPlaceholderId5,int layoutPlaceholderId6,int layoutPlaceholderId7,int layoutPlaceholderId8);
|
|
int masterId() const;
|
|
void setMasterId( int masterId );
|
|
int notesId() const;
|
|
void setNotesId( int notesId );
|
|
int flags() const;
|
|
void setFlags( int flags );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "SlideAtom"; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
SlideAtom( const SlideAtom& );
|
|
SlideAtom& operator=( const SlideAtom& );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class SSSlideInfoAtom: public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SSSlideInfoAtom();
|
|
~SSSlideInfoAtom();
|
|
|
|
int transType() const;
|
|
void settransType( int transType );
|
|
int speed() const;
|
|
void setspeed(int speed);
|
|
int direction() const;
|
|
void setdirection( int direction );
|
|
int slideTime() const;
|
|
void setslideTime( int slideTime );
|
|
int buildFlags() const;
|
|
void setbuildFlags( int buildFlags );
|
|
int soundRef() const;
|
|
void setsoundRef( int soundRef );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "SSSlideInfoAtom"; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
SSSlideInfoAtom( const SSSlideInfoAtom& );
|
|
SSSlideInfoAtom& operator=( const SSSlideInfoAtom& );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class SrKinsokuAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
SrKinsokuAtom ();
|
|
~SrKinsokuAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "SrKinsokuAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
SrKinsokuAtom ( const SrKinsokuAtom & );
|
|
SrKinsokuAtom & operator=( const SrKinsokuAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class TxMasterStyleAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
TxMasterStyleAtom();
|
|
~TxMasterStyleAtom();
|
|
|
|
const char* name(){ return "TxMasterStyleAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
TxMasterStyleAtom ( const TxMasterStyleAtom & );
|
|
TxMasterStyleAtom & operator=( const TxMasterStyleAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class TxCFStyleAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
TxCFStyleAtom ();
|
|
~TxCFStyleAtom ();
|
|
|
|
int flags1() const;
|
|
void setFlags1( int flags1 );
|
|
int flags2() const;
|
|
void setFlags2( int flags2 );
|
|
int flags3() const;
|
|
void setFlags3( int flags3 );
|
|
int n1() const;
|
|
void setN1( int n1 );
|
|
int fontHeight() const;
|
|
void setFontHeight( int fontHeight );
|
|
int fontColor() const;
|
|
void setFontColor( int fontColor );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "TxCFStyleAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
TxCFStyleAtom ( const TxCFStyleAtom & );
|
|
TxCFStyleAtom & operator=( const TxCFStyleAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
|
|
class TextCharsAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
TextCharsAtom ();
|
|
~TextCharsAtom ();
|
|
|
|
unsigned listSize() const;
|
|
UString strValue( unsigned index ) const;
|
|
void setText( UString ustring );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "TextCharsAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
TextCharsAtom ( const TextCharsAtom & );
|
|
TextCharsAtom & operator=( const TextCharsAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class TxPFStyleAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
TxPFStyleAtom ();
|
|
~TxPFStyleAtom ();
|
|
|
|
const char* name(){ return "TxPFStyleAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
TxPFStyleAtom ( const TxPFStyleAtom & );
|
|
TxPFStyleAtom & operator=( const TxPFStyleAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class TxSIStyleAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
TxSIStyleAtom ();
|
|
~TxSIStyleAtom ();
|
|
|
|
const char* name(){ return "TxSIStyleAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
TxSIStyleAtom ( const TxSIStyleAtom & );
|
|
TxSIStyleAtom & operator=( const TxSIStyleAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class TextHeaderAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
TextHeaderAtom ();
|
|
~TextHeaderAtom ();
|
|
|
|
int textType() const;
|
|
void setTextType( int type );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "TextHeaderAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
TextHeaderAtom ( const TextHeaderAtom & );
|
|
TextHeaderAtom & operator=( const TextHeaderAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class TextSpecInfoAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
TextSpecInfoAtom ();
|
|
~TextSpecInfoAtom ();
|
|
|
|
int charCount() const;
|
|
void setCharCount( int txSpecInfo );
|
|
int flags() const;
|
|
void setFlags( int flags );
|
|
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "TextSpecInfoAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
TextSpecInfoAtom ( const TextSpecInfoAtom & );
|
|
TextSpecInfoAtom & operator=( const TextSpecInfoAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class TextBookmarkAtom: public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
TextBookmarkAtom();
|
|
~TextBookmarkAtom();
|
|
|
|
int begin() const;
|
|
void setBegin( int begin );
|
|
int end() const;
|
|
void setEnd( int end );
|
|
int bookmarkID() const;
|
|
void setBookmarkID( int bookmarkID );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "TextBookmarkAtom"; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
TextBookmarkAtom( const TextBookmarkAtom& );
|
|
TextBookmarkAtom& operator=( const TextBookmarkAtom& );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class TextBytesAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
TextBytesAtom ();
|
|
~TextBytesAtom ();
|
|
|
|
unsigned listSize() const;
|
|
unsigned stringLength() const;
|
|
void setStringLength( unsigned stringLength );
|
|
|
|
UString strValue( unsigned index ) const;
|
|
void setText( UString ustring );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "TextBytesAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
TextBytesAtom ( const TextBytesAtom & );
|
|
TextBytesAtom & operator=( const TextBytesAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class UserEditAtom: public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
UserEditAtom();
|
|
~UserEditAtom();
|
|
|
|
int lastSlideId() const;
|
|
void setLastSlideId( int id );
|
|
int majorVersion() const;
|
|
void setMajorVersion( int majorVersion );
|
|
int minorVersion() const;
|
|
void setMinorVersion( int minorVersion );
|
|
|
|
unsigned long offsetLastEdit() const;
|
|
void setOffsetLastEdit( unsigned long ofs );
|
|
unsigned long offsetPersistDir() const;
|
|
void setOffsetPersistDir( unsigned long ofs ) const;
|
|
unsigned long documentRef() const;
|
|
void setDocumentRef( unsigned long ref ) const;
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "UserEditAtom"; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
UserEditAtom( const UserEditAtom& );
|
|
UserEditAtom& operator=( const UserEditAtom& );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class ViewInfoAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
ViewInfoAtom ();
|
|
~ViewInfoAtom ();
|
|
|
|
int curScaleXNum() const;
|
|
void setCurScaleXNum( int curScaleXNum);
|
|
int curScaleXDen() const;
|
|
void setCurScaleXDen( int curScaleXDen);
|
|
int curScaleYNum() const;
|
|
void setCurScaleYNum( int curScaleYNum);
|
|
int curScaleYDen() const;
|
|
void setCurScaleYDen( int curScaleYDen);
|
|
int prevScaleXNum() const;
|
|
void setPrevScaleXNum( int prevScaleXNum);
|
|
int prevScaleXDen() const;
|
|
void setPrevScaleXDen( int prevScaleXDen);
|
|
int prevScaleYNum() const;
|
|
void setPrevScaleYNum( int prevScaleYNum);
|
|
int prevScaleYDen() const;
|
|
void setPrevScaleYDen( int prevScaleYDen);
|
|
int viewSizeX() const;
|
|
void setViewSizeX( int viewSizeX);
|
|
int viewSizeY() const;
|
|
void setViewSizeY( int viewSizeY);
|
|
int originX() const;
|
|
void setOriginX( int originX);
|
|
int originY() const;
|
|
void setOriginY( int originY);
|
|
int varScale() const;
|
|
void setVarScale( int varScale);
|
|
int draftMode() const;
|
|
void setDraftMode( int draftMode);
|
|
int padding() const;
|
|
void setPadding( int padding);
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "ViewInfoAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
ViewInfoAtom ( const ViewInfoAtom & );
|
|
ViewInfoAtom & operator=( const ViewInfoAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtDgAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtDgAtom ();
|
|
~msofbtDgAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtDgAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtDgAtom ( const msofbtDgAtom & );
|
|
msofbtDgAtom & operator=( const msofbtDgAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtSpgrAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtSpgrAtom ();
|
|
~msofbtSpgrAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtSpgrAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtSpgrAtom ( const msofbtSpgrAtom & );
|
|
msofbtSpgrAtom & operator=( const msofbtSpgrAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtSpAtom : public Record
|
|
{
|
|
public:
|
|
enum
|
|
{
|
|
msosptMin = 0,
|
|
msosptNotPrimitive = msosptMin,
|
|
msosptRectangle = 1,
|
|
msosptRoundRectangle = 2,
|
|
msosptEllipse = 3,
|
|
msosptDiamond = 4,
|
|
msosptIsoscelesTriangle = 5,
|
|
msosptRightTriangle = 6,
|
|
msosptParallelogram = 7,
|
|
msosptTrapezoid = 8,
|
|
msosptHexagon = 9,
|
|
msosptOctagon = 10,
|
|
msosptPlus = 11,
|
|
msosptStar = 12,
|
|
msosptArrow = 13,
|
|
msosptThickArrow = 14,
|
|
msosptHomePlate = 15,
|
|
msosptCube = 16,
|
|
msosptBalloon = 17,
|
|
msosptSeal = 18,
|
|
msosptArc = 19,
|
|
msosptLine = 20,
|
|
msosptPlaque = 21,
|
|
msosptCan = 22,
|
|
msosptDonut = 23,
|
|
msosptTextSimple = 24,
|
|
msosptTextOctagon = 25,
|
|
msosptTextHexagon = 26,
|
|
msosptTextCurve = 27,
|
|
msosptTextWave = 28,
|
|
msosptTextRing = 29,
|
|
msosptTextOnCurve = 30,
|
|
msosptTextOnRing = 31,
|
|
msosptStraightConnector1 = 32,
|
|
msosptBentConnector2 = 33,
|
|
msosptBentConnector3 = 34,
|
|
msosptBentConnector4 = 35,
|
|
msosptBentConnector5 = 36,
|
|
msosptCurvedConnector2 = 37,
|
|
msosptCurvedConnector3 = 38,
|
|
msosptCurvedConnector4 = 39,
|
|
msosptCurvedConnector5 = 40,
|
|
msosptCallout1 = 41,
|
|
msosptCallout2 = 42,
|
|
msosptCallout3 = 43,
|
|
msosptAccentCallout1 = 44,
|
|
msosptAccentCallout2 = 45,
|
|
msosptAccentCallout3 = 46,
|
|
msosptBorderCallout1 = 47,
|
|
msosptBorderCallout2 = 48,
|
|
msosptBorderCallout3 = 49,
|
|
msosptAccentBorderCallout1 = 50,
|
|
msosptAccentBorderCallout2 = 51,
|
|
msosptAccentBorderCallout3 = 52,
|
|
msosptRibbon = 53,
|
|
msosptRibbon2 = 54,
|
|
msosptChevron = 55,
|
|
msosptPentagon = 56,
|
|
msosptNoSmoking = 57,
|
|
msosptSeal8 = 58,
|
|
msosptSeal16 = 59,
|
|
msosptSeal32 = 60,
|
|
msosptWedgeRectCallout = 61,
|
|
msosptWedgeRRectCallout = 62,
|
|
msosptWedgeEllipseCallout = 63,
|
|
msosptWave = 64,
|
|
msosptFoldedCorner = 65,
|
|
msosptLeftArrow = 66,
|
|
msosptDownArrow = 67,
|
|
msosptUpArrow = 68,
|
|
msosptLeftRightArrow = 69,
|
|
msosptUpDownArrow = 70,
|
|
msosptIrregularSeal1 = 71,
|
|
msosptIrregularSeal2 = 72,
|
|
msosptLightningBolt = 73,
|
|
msosptHeart = 74,
|
|
msosptPictureFrame = 75,
|
|
msosptQuadArrow = 76,
|
|
msosptLeftArrowCallout = 77,
|
|
msosptRightArrowCallout = 78,
|
|
msosptUpArrowCallout = 79,
|
|
msosptDownArrowCallout = 80,
|
|
msosptLeftRightArrowCallout = 81,
|
|
msosptUpDownArrowCallout = 82,
|
|
msosptQuadArrowCallout = 83,
|
|
msosptBevel = 84,
|
|
msosptLeftBracket = 85,
|
|
msosptRightBracket = 86,
|
|
msosptLeftBrace = 87,
|
|
msosptRightBrace = 88,
|
|
msosptLeftUpArrow = 89,
|
|
msosptBentUpArrow = 90,
|
|
msosptBentArrow = 91,
|
|
msosptSeal24 = 92,
|
|
msosptStripedRightArrow = 93,
|
|
msosptNotchedRightArrow = 94,
|
|
msosptBlockArc = 95,
|
|
msosptSmileyFace = 96,
|
|
msosptVerticalScroll = 97,
|
|
msosptHorizontalScroll = 98,
|
|
msosptCircularArrow = 99,
|
|
msosptNotchedCircularArrow = 100,
|
|
msosptUturnArrow = 101,
|
|
msosptCurvedRightArrow = 102,
|
|
msosptCurvedLeftArrow = 103,
|
|
msosptCurvedUpArrow = 104,
|
|
msosptCurvedDownArrow = 105,
|
|
msosptCloudCallout = 106,
|
|
msosptEllipseRibbon = 107,
|
|
msosptEllipseRibbon2 = 108,
|
|
msosptFlowChartProcess = 109,
|
|
msosptFlowChartDecision = 110,
|
|
msosptFlowChartInputOutput = 111,
|
|
msosptFlowChartPredefinedProcess = 112,
|
|
msosptFlowChartInternalStorage = 113,
|
|
msosptFlowChartDocument = 114,
|
|
msosptFlowChartMultidocument = 115,
|
|
msosptFlowChartTerminator = 116,
|
|
msosptFlowChartPreparation = 117,
|
|
msosptFlowChartManualInput = 118,
|
|
msosptFlowChartManualOperation = 119,
|
|
msosptFlowChartConnector = 120,
|
|
msosptFlowChartPunchedCard = 121,
|
|
msosptFlowChartPunchedTape = 122,
|
|
msosptFlowChartSummingJunction = 123,
|
|
msosptFlowChartOr = 124,
|
|
msosptFlowChartCollate = 125,
|
|
msosptFlowChartSort = 126,
|
|
msosptFlowChartExtract = 127,
|
|
msosptFlowChartMerge = 128,
|
|
msosptFlowChartOfflineStorage = 129,
|
|
msosptFlowChartOnlineStorage = 130,
|
|
msosptFlowChartMagneticTape = 131,
|
|
msosptFlowChartMagneticDisk = 132,
|
|
msosptFlowChartMagneticDrum = 133,
|
|
msosptFlowChartDisplay = 134,
|
|
msosptFlowChartDelay = 135,
|
|
msosptTextPlainText = 136,
|
|
msosptTextStop = 137,
|
|
msosptTextTriangle = 138,
|
|
msosptTextTriangleInverted = 139,
|
|
msosptTextChevron = 140,
|
|
msosptTextChevronInverted = 141,
|
|
msosptTextRingInside = 142,
|
|
msosptTextRingOutside = 143,
|
|
msosptTextArchUpCurve = 144,
|
|
msosptTextArchDownCurve = 145,
|
|
msosptTextCircleCurve = 146,
|
|
msosptTextButtonCurve = 147,
|
|
msosptTextArchUpPour = 148,
|
|
msosptTextArchDownPour = 149,
|
|
msosptTextCirclePour = 150,
|
|
msosptTextButtonPour = 151,
|
|
msosptTextCurveUp = 152,
|
|
msosptTextCurveDown = 153,
|
|
msosptTextCascadeUp = 154,
|
|
msosptTextCascadeDown = 155,
|
|
msosptTextWave1 = 156,
|
|
msosptTextWave2 = 157,
|
|
msosptTextWave3 = 158,
|
|
msosptTextWave4 = 159,
|
|
msosptTextInflate = 160,
|
|
msosptTextDeflate = 161,
|
|
msosptTextInflateBottom = 162,
|
|
msosptTextDeflateBottom = 163,
|
|
msosptTextInflateTop = 164,
|
|
msosptTextDeflateTop = 165,
|
|
msosptTextDeflateInflate = 166,
|
|
msosptTextDeflateInflateDeflate = 167,
|
|
msosptTextFadeRight = 168,
|
|
msosptTextFadeLeft = 169,
|
|
msosptTextFadeUp = 170,
|
|
msosptTextFadeDown = 171,
|
|
msosptTextSlantUp = 172,
|
|
msosptTextSlantDown = 173,
|
|
msosptTextCanUp = 174,
|
|
msosptTextCanDown = 175,
|
|
msosptFlowChartAlternateProcess = 176,
|
|
msosptFlowChartOffpageConnector = 177,
|
|
msosptCallout90 = 178,
|
|
msosptAccentCallout90 = 179,
|
|
msosptBorderCallout90 = 180,
|
|
msosptAccentBorderCallout90 = 181,
|
|
msosptLeftRightUpArrow = 182,
|
|
msosptSun = 183,
|
|
msosptMoon = 184,
|
|
msosptBracketPair = 185,
|
|
msosptBracePair = 186,
|
|
msosptSeal4 = 187,
|
|
msosptDoubleWave = 188,
|
|
msosptActionButtonBlank = 189,
|
|
msosptActionButtonHome = 190,
|
|
msosptActionButtonHelp = 191,
|
|
msosptActionButtonInformation = 192,
|
|
msosptActionButtonForwardNext = 193,
|
|
msosptActionButtonBackPrevious = 194,
|
|
msosptActionButtonEnd = 195,
|
|
msosptActionButtonBeginning = 196,
|
|
msosptActionButtonReturn = 197,
|
|
msosptActionButtonDocument = 198,
|
|
msosptActionButtonSound = 199,
|
|
msosptActionButtonMovie = 200,
|
|
msosptHostControl = 201,
|
|
msosptTextBox = 202,
|
|
msosptMax,
|
|
msosptNil = 0x0FFF
|
|
} ;
|
|
|
|
static const unsigned int id;
|
|
msofbtSpAtom ();
|
|
~msofbtSpAtom ();
|
|
|
|
unsigned long tqshapeId() const;
|
|
void setShapeId( unsigned long id );
|
|
const char* tqshapeTypeAsString() const;
|
|
unsigned long persistentFlag() const;
|
|
void setPersistentFlag( unsigned long persistentFlag );
|
|
|
|
bool isBackground() const;
|
|
void setBackground( bool bg );
|
|
bool isVerFlip() const;
|
|
void setVerFlip( bool vFlip );
|
|
bool isHorFlip() const;
|
|
void setHorFlip( bool hFlip );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtSpAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtSpAtom ( const msofbtSpAtom & );
|
|
msofbtSpAtom & operator=( const msofbtSpAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtOPTAtom : public Record
|
|
{
|
|
public:
|
|
enum { // PID
|
|
Rotation = 4,
|
|
FillType = 384,
|
|
FillColor = 385,
|
|
LineColor = 448,
|
|
LineOpacity = 449,
|
|
LineBackColor = 450,
|
|
LineType = 452,
|
|
LineWidth = 459,
|
|
LineDashing = 462,
|
|
LineStartArrowhead = 464,
|
|
LineEndArrowhead = 465,
|
|
LineStartArrowWidth = 466,
|
|
LineStartArrowLength = 467,
|
|
LineEndArrowWidth = 468,
|
|
LineEndArrowLength = 469,
|
|
FlagNoLineDrawDash = 511,
|
|
ShadowColor = 513,
|
|
ShadowOpacity = 516,
|
|
ShadowOffsetX = 517,
|
|
ShadowOffsetY = 518
|
|
};
|
|
|
|
enum {
|
|
FillSolid, // Fill with a solid color
|
|
FillPattern, // Fill with a pattern (bitmap)
|
|
FillTexture, // A texture (pattern with its own color map)
|
|
FillPicture, // Center a picture in the tqshape
|
|
FillShade, // Shade from start to end points
|
|
FillShadeCenter, // Shade from bounding rectangle to end point
|
|
FillShadeShape, // Shade from tqshape outline to end point
|
|
FillShadeScale, // Similar to msofillShade, but the fillAngle
|
|
FillShadeTitle, // special type - shade to title --- for PP
|
|
FillBackground // Use the background fill color/pattern
|
|
}; // MSOFILLTYPE
|
|
|
|
enum {
|
|
LineSolid, // Solid (continuous) pen 0
|
|
LineDashSys, // PS_DASH system dash style 1
|
|
LineDotSys, // PS_DOT system dash style 2
|
|
LineDashDotSys, // PS_DASHDOT system dash style 3
|
|
LineDashDotDotSys, // PS_DASHDOTDOT system dash style 4
|
|
LineDotGEL, // square dot style 5
|
|
LineDashGEL, // dash style 6
|
|
LineLongDashGEL, // long dash style 7
|
|
LineDashDotGEL, // dash short dash 8
|
|
LineLongDashDotGEL, // long dash short dash 9
|
|
LineLongDashDotDotGEL // long dash short dash short dash 10
|
|
}; // MSOLINEDASHING
|
|
|
|
|
|
enum {
|
|
LineNoEnd,
|
|
LineArrowEnd,
|
|
LineArrowStealthEnd,
|
|
LineArrowDiamondEnd,
|
|
LineArrowOvalEnd,
|
|
LineArrowOpenEnd
|
|
}; // MSOLINEEND - line end effect
|
|
|
|
|
|
enum {
|
|
LineNarrowArrow,
|
|
LineMediumWidthArrow,
|
|
LineWideArrow
|
|
}; // MSOLINEENDWIDTH - size of arrowhead
|
|
|
|
enum {
|
|
LineShortArrow,
|
|
LineMediumLenArrow,
|
|
LineLongArrow
|
|
}; // MSOLINEENDLENGTH - size of arrowhead
|
|
|
|
static const unsigned int id;
|
|
msofbtOPTAtom ();
|
|
~msofbtOPTAtom ();
|
|
|
|
unsigned propertyCount() const;
|
|
unsigned propertyId( unsigned index ) const;
|
|
unsigned long propertyValue( unsigned index ) const;
|
|
void setProperty( unsigned id, unsigned long value );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtOPTAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtOPTAtom ( const msofbtOPTAtom & );
|
|
msofbtOPTAtom & operator=( const msofbtOPTAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtChildAnchorAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtChildAnchorAtom ();
|
|
~msofbtChildAnchorAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtChildAnchorAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtChildAnchorAtom ( const msofbtChildAnchorAtom & );
|
|
msofbtChildAnchorAtom & operator=( const msofbtChildAnchorAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtClientAnchorAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtClientAnchorAtom ();
|
|
~msofbtClientAnchorAtom ();
|
|
|
|
int left() const;
|
|
void setLeft( int left );
|
|
int top() const;
|
|
void setTop( int top );
|
|
int right() const;
|
|
void setRight( int right );
|
|
int bottom() const;
|
|
void setBottom( int bottom );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtClientAnchorAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtClientAnchorAtom ( const msofbtClientAnchorAtom & );
|
|
msofbtClientAnchorAtom & operator=( const msofbtClientAnchorAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtClientDataAtom : public Record
|
|
{
|
|
public:
|
|
enum
|
|
{ None = 0,
|
|
MasterTitle,
|
|
MasterBody,
|
|
MasterCenteredTitle,
|
|
MasterNotesSlideImage,
|
|
MasterNotesBodyImage,
|
|
MasterDate,
|
|
MasterSlideNumber,
|
|
MasterFooter,
|
|
MasterHeader,
|
|
MasterSubtitle,
|
|
Generic,
|
|
Title,
|
|
Body,
|
|
NotesBody,
|
|
CenteredTitle,
|
|
Subtitle,
|
|
Qt::VerticalTextTitle,
|
|
Qt::VerticalTextBody,
|
|
NotesSlideImage,
|
|
Object,
|
|
Graph,
|
|
Table,
|
|
ClipArt,
|
|
OrganizationChart,
|
|
MediaClip
|
|
};
|
|
|
|
static const unsigned int id;
|
|
msofbtClientDataAtom ();
|
|
~msofbtClientDataAtom ();
|
|
|
|
unsigned placementId() const;
|
|
void setPlacementId( unsigned id );
|
|
unsigned placeholderId() const;
|
|
void setPlaceholderId( unsigned id );
|
|
const char* placeholderIdAsString() const;
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtClientDataAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtClientDataAtom ( const msofbtClientDataAtom & );
|
|
msofbtClientDataAtom & operator=( const msofbtClientDataAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtClientTextboxAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtClientTextboxAtom ();
|
|
~msofbtClientTextboxAtom ();
|
|
|
|
UString ustring() const;
|
|
void setUString( const UString& ustr );
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtClientTextboxAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtClientTextboxAtom ( const msofbtClientTextboxAtom & );
|
|
msofbtClientTextboxAtom & operator=( const msofbtClientTextboxAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtOleObjectAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtOleObjectAtom ();
|
|
~msofbtOleObjectAtom ();
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtOleObjectAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
private:
|
|
// no copy or assign
|
|
msofbtOleObjectAtom ( const msofbtOleObjectAtom & );
|
|
msofbtOleObjectAtom & operator=( const msofbtOleObjectAtom & );
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtDeletedPsplAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtDeletedPsplAtom ();
|
|
~msofbtDeletedPsplAtom ();
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtDeletedPsplAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtDeletedPsplAtom ( const msofbtDeletedPsplAtom & );
|
|
msofbtDeletedPsplAtom & operator=( const msofbtDeletedPsplAtom & );
|
|
class Private;
|
|
Private *d;
|
|
|
|
};
|
|
|
|
class msofbtDggAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtDggAtom ();
|
|
~msofbtDggAtom ();
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtDggAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtDggAtom ( const msofbtDggAtom & );
|
|
msofbtDggAtom & operator=( const msofbtDggAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtColorMRUAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtColorMRUAtom ();
|
|
~msofbtColorMRUAtom ();
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtColorMRUAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtColorMRUAtom ( const msofbtColorMRUAtom & );
|
|
msofbtColorMRUAtom & operator=( const msofbtColorMRUAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtSplitMenuColorsAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtSplitMenuColorsAtom ();
|
|
~msofbtSplitMenuColorsAtom ();
|
|
|
|
unsigned fillColor() const;
|
|
void setFillColor( unsigned fillColor );
|
|
unsigned lineColor() const;
|
|
void setLineColor( unsigned lineColor );
|
|
unsigned shadowColor() const;
|
|
void setShadowColor( unsigned shadowColor );
|
|
unsigned threeDColor() const;
|
|
void setThreeDColor( unsigned threeDColor );
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtSplitMenuColorsAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtSplitMenuColorsAtom ( const msofbtSplitMenuColorsAtom & );
|
|
msofbtSplitMenuColorsAtom & operator=( const msofbtSplitMenuColorsAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtBSEAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtBSEAtom ();
|
|
~msofbtBSEAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtBSEAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtBSEAtom ( const msofbtBSEAtom & );
|
|
msofbtBSEAtom & operator=( const msofbtBSEAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtCLSIDAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtCLSIDAtom ();
|
|
~msofbtCLSIDAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtCLSIDAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtCLSIDAtom ( const msofbtCLSIDAtom & );
|
|
msofbtCLSIDAtom & operator=( const msofbtCLSIDAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtRegroupItemsAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtRegroupItemsAtom ();
|
|
~msofbtRegroupItemsAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtRegroupItemsAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtRegroupItemsAtom ( const msofbtRegroupItemsAtom & );
|
|
msofbtRegroupItemsAtom & operator=( const msofbtRegroupItemsAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtColorSchemeAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtColorSchemeAtom ();
|
|
~msofbtColorSchemeAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtColorSchemeAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtColorSchemeAtom ( const msofbtColorSchemeAtom & );
|
|
msofbtColorSchemeAtom & operator=( const msofbtColorSchemeAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtAnchorAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtAnchorAtom ();
|
|
~msofbtAnchorAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtAnchorAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtAnchorAtom ( const msofbtAnchorAtom & );
|
|
msofbtAnchorAtom & operator=( const msofbtAnchorAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtConnectorRuleAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtConnectorRuleAtom ();
|
|
~msofbtConnectorRuleAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtConnectorRuleAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtConnectorRuleAtom ( const msofbtConnectorRuleAtom & );
|
|
msofbtConnectorRuleAtom & operator=( const msofbtConnectorRuleAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtAlignRuleAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtAlignRuleAtom ();
|
|
~msofbtAlignRuleAtom ();
|
|
|
|
int ruid() const; // rule ID
|
|
void setRuid( int ruid );
|
|
int align() const;
|
|
void setAlign( int align );// tqalignment
|
|
int cProxies() const;
|
|
void setCProxies( int cProxies );// number of tqshapes governed by rule
|
|
|
|
void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtAlignRuleAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtAlignRuleAtom ( const msofbtAlignRuleAtom & );
|
|
msofbtAlignRuleAtom & operator=( const msofbtAlignRuleAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtArcRuleAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtArcRuleAtom ();
|
|
~msofbtArcRuleAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtArcRuleAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtArcRuleAtom ( const msofbtArcRuleAtom & );
|
|
msofbtArcRuleAtom & operator=( const msofbtArcRuleAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtClientRuleAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtClientRuleAtom ();
|
|
~msofbtClientRuleAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtClientRuleAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtClientRuleAtom ( const msofbtClientRuleAtom & );
|
|
msofbtClientRuleAtom & operator=( const msofbtClientRuleAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtCalloutRuleAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtCalloutRuleAtom ();
|
|
~msofbtCalloutRuleAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtCalloutRuleAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtCalloutRuleAtom ( const msofbtCalloutRuleAtom & );
|
|
msofbtCalloutRuleAtom & operator=( const msofbtCalloutRuleAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class msofbtSelectionAtom : public Record
|
|
{
|
|
public:
|
|
static const unsigned int id;
|
|
msofbtSelectionAtom ();
|
|
~msofbtSelectionAtom ();
|
|
|
|
// void setData( unsigned size, const unsigned char* data );
|
|
const char* name(){ return "msofbtSelectionAtom "; }
|
|
void dump( std::ostream& out ) const;
|
|
|
|
private:
|
|
// no copy or assign
|
|
msofbtSelectionAtom ( const msofbtSelectionAtom & );
|
|
msofbtSelectionAtom & operator=( const msofbtSelectionAtom & );
|
|
|
|
class Private;
|
|
Private *d;
|
|
};
|
|
|
|
class PPTReader
|
|
{
|
|
public:
|
|
PPTReader();
|
|
virtual ~PPTReader();
|
|
bool load( Presentation* pr, const char* filename );
|
|
|
|
protected:
|
|
|
|
void loadUserEdit();
|
|
void loadMaster();
|
|
void loadSlides();
|
|
void loadDocument();
|
|
int indexPersistence( unsigned long offset );
|
|
|
|
void loadRecord( Record* parent );
|
|
void handleRecord( Record* record, int type );
|
|
void handleContainer( Container* container, int type, unsigned size );
|
|
|
|
void handleDocumentAtom( DocumentAtom* r );
|
|
void handleSlidePersistAtom( SlidePersistAtom* r );
|
|
void handleTextHeaderAtom( TextHeaderAtom* r );
|
|
void handleTextCharsAtom( TextCharsAtom* r );
|
|
void handleTextBytesAtom( TextBytesAtom* r );
|
|
void handleStyleTextPropAtom ( StyleTextPropAtom* r );
|
|
void handleColorSchemeAtom( ColorSchemeAtom* r );
|
|
|
|
void handleDrawingContainer( msofbtDgContainer* r, unsigned size );
|
|
void handleEscherGroupContainer( msofbtSpgrContainer* r, unsigned size );
|
|
void handleSPContainer( msofbtSpContainer* r, unsigned size );
|
|
void handleEscherGroupAtom( msofbtSpgrAtom* r );
|
|
void handleEscherSpAtom( msofbtSpAtom* r );
|
|
void handleEscherPropertiesAtom( msofbtOPTAtom* atom );
|
|
void handleEscherClientDataAtom( msofbtClientDataAtom* r );
|
|
void handleEscherClientAnchorAtom( msofbtClientAnchorAtom* r );
|
|
void handleEscherTextBoxAtom( msofbtClientTextboxAtom* r);
|
|
|
|
private:
|
|
// no copy or assign
|
|
PPTReader( const PPTReader& );
|
|
PPTReader& operator=( const PPTReader& );
|
|
|
|
class Private;
|
|
Private* d;
|
|
};
|
|
|
|
}
|
|
|
|
#endif /* LIBPPT_POWERPOINT */
|