978 lines
		
	
	
		
			18 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			978 lines
		
	
	
		
			18 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
|  * (c) Copyright Ascensio System SIA 2010-2014
 | |
|  *
 | |
|  * This program is a free software product. You can redistribute it and/or 
 | |
|  * modify it under the terms of the GNU Affero General Public License (AGPL) 
 | |
|  * version 3 as published by the Free Software Foundation. In accordance with 
 | |
|  * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect 
 | |
|  * that Ascensio System SIA expressly excludes the warranty of non-infringement
 | |
|  * of any third-party rights.
 | |
|  *
 | |
|  * This program is distributed WITHOUT ANY WARRANTY; without even the implied 
 | |
|  * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR  PURPOSE. For 
 | |
|  * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
 | |
|  *
 | |
|  * You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
 | |
|  * EU, LV-1021.
 | |
|  *
 | |
|  * The  interactive user interfaces in modified source and object code versions
 | |
|  * of the Program must display Appropriate Legal Notices, as required under 
 | |
|  * Section 5 of the GNU AGPL version 3.
 | |
|  *
 | |
|  * Pursuant to Section 7(b) of the License you must retain the original Product
 | |
|  * logo when distributing the program. Pursuant to Section 7(e) we decline to
 | |
|  * grant you any rights under trademark law for use of our trademarks.
 | |
|  *
 | |
|  * All the Product's GUI elements, including illustrations and icon sets, as
 | |
|  * well as technical writing content are licensed under the terms of the
 | |
|  * Creative Commons Attribution-ShareAlike 4.0 International. See the License
 | |
|  * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
 | |
|  *
 | |
|  */
 | |
|  #pragma once
 | |
| #include "Enums.h"
 | |
| #include "Structures.h"
 | |
| 
 | |
| using namespace NSOfficeDrawing;
 | |
| using namespace NSOfficePPT;
 | |
| 
 | |
| class CTypeTransform
 | |
| {
 | |
| 	RECT m_oRect;
 | |
| 	LONG m_nAngle;
 | |
| 
 | |
| 	bool m_bIsFlipV;
 | |
| 	bool m_bIsFlipH;
 | |
| 
 | |
| 	bool m_bIsFlipVUse;
 | |
| 	bool m_bIsFlipHUse;
 | |
| 
 | |
| public:
 | |
| 	CTypeTransform()
 | |
| 	{
 | |
| 		m_oRect.left = 0; m_oRect.top = 0;
 | |
| 		m_oRect.right = 1; m_oRect.bottom = 1;
 | |
| 
 | |
| 		m_nAngle = 0;
 | |
| 
 | |
| 		m_bIsFlipH = false;
 | |
| 		m_bIsFlipV = false;
 | |
| 
 | |
| 		m_bIsFlipHUse = false;
 | |
| 		m_bIsFlipVUse = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeProtection
 | |
| {
 | |
| 	bool m_bLockAgainstUngrouping;
 | |
| 	bool m_bLockRotation;
 | |
| 	bool m_bLockAspectRatio;
 | |
| 	bool m_bLockPosition;
 | |
| 	bool m_bLockAgainstSelect;
 | |
| 	bool m_bLockCropping;
 | |
| 	bool m_bLockVertices;
 | |
| 	bool m_bLockText;
 | |
| 	bool m_bLockAdjustHandles;
 | |
| 	bool m_bLockAgainstGrouping;
 | |
| 
 | |
| public:
 | |
| 	CTypeProtection()
 | |
| 	{
 | |
| 		m_bLockAgainstUngrouping = false;
 | |
| 		m_bLockRotation = false;
 | |
| 		m_bLockAspectRatio = false;
 | |
| 		m_bLockPosition = false;
 | |
| 		m_bLockAgainstSelect = false;
 | |
| 		m_bLockCropping = false;
 | |
| 		m_bLockVertices = false;
 | |
| 		m_bLockText = false;
 | |
| 		m_bLockAdjustHandles = false;
 | |
| 		m_bLockAgainstGrouping = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeText
 | |
| {
 | |
| 	LONG m_lTextID;
 | |
| 	RECT m_oBounds;
 | |
| 
 | |
| 	NSOfficeDrawing::WrapMode m_WrapMode;
 | |
| 	LONG m_lScale;
 | |
| 
 | |
| 	AnchorMode m_AnchorMode;
 | |
| 
 | |
| 	TxflMode m_FlMode;
 | |
| 
 | |
| 	CdirMode m_FontRotation;
 | |
| 
 | |
| 	DWORD m_lNextID;
 | |
| 
 | |
| 	TxDirMode m_DirMode;
 | |
| 
 | |
| 	LONG m_lColomnsCount;
 | |
| 	LONG m_lMarginColomn;
 | |
| 
 | |
| 	bool m_bSelectText;  
 | |
| 	bool m_bAutoTextMargin;
 | |
| 	bool m_bRotateText;
 | |
| 	bool m_bFitShapeToText;
 | |
| 	bool m_bFitTextToShape;
 | |
| 
 | |
| public:
 | |
| 	CTypeText()
 | |
| 	{
 | |
| 		m_lTextID = 0;
 | |
| 
 | |
| 		m_oBounds.left = 0x00016530;
 | |
| 		m_oBounds.top = 0x0000B298;
 | |
| 		m_oBounds.right = 0x00016530;
 | |
| 		m_oBounds.bottom = 0x0000B298;
 | |
| 
 | |
| 		m_WrapMode = wrapSquare;
 | |
| 
 | |
| 		m_lScale = 0;
 | |
| 
 | |
| 		m_AnchorMode = anchorTop;
 | |
| 
 | |
| 		m_FlMode = txflHorzN;
 | |
| 
 | |
| 		m_FontRotation = cdir0;
 | |
| 
 | |
| 		m_DirMode = txdirLTR;
 | |
| 
 | |
| 		m_lNextID = 0;
 | |
| 
 | |
| 		LONG m_lColomnsCount = 1;
 | |
| 		LONG m_lMarginColomn = 91440;
 | |
| 
 | |
| 		bool m_bSelectText = true;  
 | |
| 		bool m_bAutoTextMargin = false;
 | |
| 		bool m_bRotateText = false;
 | |
| 		bool m_bFitShapeToText = false;
 | |
| 		bool m_bFitTextToShape = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeGeoText
 | |
| {
 | |
| 	CStringW m_strText;
 | |
| 	GeoTextAlign m_Align;
 | |
| 
 | |
| 	DWORD m_nSize;
 | |
| 	DWORD m_nTextSpacing;
 | |
| 
 | |
| 	CStringW m_strFontFamily;
 | |
| 	CStringW m_strFontCSS;
 | |
| 
 | |
| 	bool m_bReverseRows;
 | |
| 	bool m_bEffect;
 | |
| 	bool m_bVertical;
 | |
| 	bool m_bKern;
 | |
| 
 | |
| 	bool m_bTight;
 | |
| 	bool m_bStretch; 
 | |
| 	bool m_bShrinkFit;
 | |
| 	bool m_bBestFit;
 | |
| 	bool m_bNormalize;
 | |
| 	bool m_bDxMeasure;
 | |
| 	bool m_bBold;
 | |
| 	bool m_bItalic;
 | |
| 	bool m_bUnderline;
 | |
| 	bool m_bShadow; 
 | |
| 	bool m_bSmallcaps;
 | |
| 	bool m_bStrikethrough;
 | |
| 
 | |
| public:
 | |
| 	CTypeGeoText()
 | |
| 	{
 | |
| 		m_strText = _T("");
 | |
| 		m_Align = alignTextCenter;
 | |
| 
 | |
| 		m_nSize = 0x00240000;
 | |
| 		m_nTextSpacing = 0x00010000;
 | |
| 
 | |
| 		m_strFontFamily = _T("");
 | |
| 		m_strFontCSS = _T("");
 | |
| 
 | |
| 		m_bReverseRows = false;
 | |
| 		m_bEffect = false;
 | |
| 		m_bVertical = false;
 | |
| 		m_bKern = false;
 | |
| 
 | |
| 		m_bTight = false;
 | |
| 		m_bStretch = false; 
 | |
| 		m_bShrinkFit = false;
 | |
| 		m_bBestFit = false;
 | |
| 		m_bNormalize = false;
 | |
| 		m_bDxMeasure = false;
 | |
| 		m_bBold = false;
 | |
| 		m_bItalic = false;
 | |
| 		m_bUnderline = false;
 | |
| 		m_bShadow = false; 
 | |
| 		m_bSmallcaps = false;
 | |
| 		m_bStrikethrough = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeBlip
 | |
| {
 | |
| 	RECT m_oCropRect;
 | |
| 
 | |
| 	DWORD m_nImageNumber;
 | |
| 	
 | |
| 	
 | |
| 	CStringW m_strFileName;
 | |
| 	BlipFlags m_Flag;
 | |
| 
 | |
| 	SColorAtom m_oTransparentColor;
 | |
| 
 | |
| 	LONG m_nContrast;
 | |
| 	LONG m_nBrightness;
 | |
| 	LONG m_nGamma;
 | |
| 	LONG m_nPictureID;
 | |
| 
 | |
| 	bool m_bPicturePreserveGrays;
 | |
| 	bool m_bRewind;
 | |
| 	bool m_bLooping;
 | |
| 	bool m_bPictureGray;
 | |
| 	bool m_bPictureBiLevel;
 | |
| 	bool m_bPictureActive;
 | |
| 
 | |
| public:
 | |
| 	CTypeBlip()
 | |
| 	{
 | |
| 		m_oCropRect.top = 0; m_oCropRect.left = 0;
 | |
| 		m_oCropRect.right = 0; m_oCropRect.bottom = 0;
 | |
| 
 | |
| 		m_strFileName = _T("");
 | |
| 		m_Flag = blipflagComment;
 | |
| 
 | |
| 		m_oTransparentColor.R = 0xFF;
 | |
| 		m_oTransparentColor.G = 0xFF;
 | |
| 		m_oTransparentColor.B = 0xFF;
 | |
| 		m_oTransparentColor.Index = 0xFF;
 | |
| 
 | |
| 		m_nContrast = 0x0001FFFF;
 | |
| 		m_nBrightness = 0;
 | |
| 		m_nGamma = 0;
 | |
| 		m_nPictureID = 0;
 | |
| 
 | |
| 		m_bPicturePreserveGrays = false;
 | |
| 		m_bRewind = false;
 | |
| 		m_bLooping = false;
 | |
| 		m_bPictureGray = false;
 | |
| 		m_bPictureBiLevel = false;
 | |
| 		m_bPictureActive = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeGeometry
 | |
| {
 | |
| 	RECT m_oGeoRect;
 | |
| 
 | |
| 	ShapePath m_Path;
 | |
| 
 | |
| 	CString m_strVertices;
 | |
| 	CString m_strSegmentInfo;
 | |
| 
 | |
| 	LONG m_lAdjustValue1;
 | |
| 	LONG m_lAdjustValue2;
 | |
| 	LONG m_lAdjustValue3;
 | |
| 	LONG m_lAdjustValue4;
 | |
| 	LONG m_lAdjustValue5;
 | |
| 	LONG m_lAdjustValue6;
 | |
| 	LONG m_lAdjustValue7;
 | |
| 	LONG m_lAdjustValue8;
 | |
| 	LONG m_lAdjustValue9;
 | |
| 	LONG m_lAdjustValue10;
 | |
| 
 | |
| 	CString m_strConnectionsSites;
 | |
| 	CString m_strConnectionsSitesDir;
 | |
| 
 | |
| 	LONG m_nLimoX;
 | |
| 	LONG m_nLimoY;
 | |
| 
 | |
| 	CString m_strAdjustHandles;
 | |
| 	CString m_strGuides;
 | |
| 	CString m_strInscribe;
 | |
| 
 | |
| 	bool m_bColumnLine;
 | |
| 	bool m_bShadowOK;
 | |
| 	bool m_b3DOK;
 | |
| 	bool m_bLineOK;
 | |
| 	bool m_bGtextOK;
 | |
| 	bool m_bFillShadeShapeOK;
 | |
| 	bool m_bFillOK;
 | |
| 
 | |
| public:
 | |
| 	CTypeGeometry()
 | |
| 	{
 | |
| 		m_oGeoRect.left = 0; m_oGeoRect.top = 0;
 | |
| 		m_oGeoRect.right = 21600; m_oGeoRect.bottom = 21600;
 | |
| 
 | |
| 		m_Path = shapeLinesClosed;
 | |
| 
 | |
| 		m_strVertices = _T("");
 | |
| 		m_strSegmentInfo = _T("");
 | |
| 
 | |
| 		m_lAdjustValue1 = 0;
 | |
| 		m_lAdjustValue2 = 0;
 | |
| 		m_lAdjustValue3 = 0;
 | |
| 		m_lAdjustValue4 = 0;
 | |
| 		m_lAdjustValue5 = 0;
 | |
| 		m_lAdjustValue6 = 0;
 | |
| 		m_lAdjustValue7 = 0;
 | |
| 		m_lAdjustValue8 = 0;
 | |
| 		m_lAdjustValue9 = 0;
 | |
| 		m_lAdjustValue10 = 0;
 | |
| 
 | |
| 		m_strConnectionsSites = _T("");
 | |
| 		m_strConnectionsSitesDir = _T("");
 | |
| 
 | |
| 		m_nLimoX = 0x80000000;
 | |
| 		m_nLimoY = 0x80000000;
 | |
| 
 | |
| 		m_strAdjustHandles = _T("");
 | |
| 		m_strGuides = _T("");
 | |
| 		m_strInscribe = _T("");
 | |
| 
 | |
| 		m_bColumnLine = false;
 | |
| 		m_bShadowOK = true;
 | |
| 		m_b3DOK = true;
 | |
| 		m_bLineOK = true;
 | |
| 		m_bGtextOK = false;
 | |
| 		m_bFillShadeShapeOK = false;
 | |
| 		m_bFillOK = true;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeFillStyle
 | |
| {
 | |
| 	FillType m_FillType;
 | |
| 	SColorAtom m_oColor;
 | |
| 	
 | |
| 	LONG m_nFillOpacity;
 | |
| 	SColorAtom m_oFillBackColor;
 | |
| 	
 | |
| 	LONG m_nFillBackOpacity;
 | |
| 
 | |
| 	DWORD m_nImageNumber;
 | |
| 	
 | |
| 	
 | |
| 	
 | |
| 	CStringW m_strFillBlipName;
 | |
| 	BlipFlags m_FillBlipFlags;
 | |
| 	
 | |
| 	LONG m_lFillWidth;
 | |
| 	LONG m_lFillHeight;
 | |
| 	LONG m_lFillAngle;
 | |
| 	LONG m_lFillFocus;
 | |
| 	
 | |
| 	RECT m_oFillToRect;
 | |
| 	RECT m_oFillRect;
 | |
| 	
 | |
| 	DzType m_FillDztype;
 | |
| 	
 | |
| 	CSimpleArray<SColorAtom> m_arFillShadeColors;
 | |
| 		
 | |
| 	LONG m_arFillShadePreset;
 | |
| 	
 | |
| 	LONG m_nFillOriginX;
 | |
| 	LONG m_nFillOriginY;
 | |
| 	LONG m_nFillShapeOriginX;
 | |
| 	LONG m_nFillShapeOriginY;
 | |
| 	
 | |
| 	ShadeType m_FillShadeType;
 | |
| 
 | |
| 	bool m_bRecolorFillAsPicture;
 | |
| 	bool m_bUseShapeAnchor;
 | |
| 	bool m_bFilled;
 | |
| 	bool m_bHitTestFill;
 | |
| 	bool m_billShape;
 | |
| 	bool m_billUseRect;
 | |
| 	bool m_bNoFillHitTest;
 | |
| 
 | |
| public:
 | |
| 	CTypeFillStyle() : m_arFillShadeColors()
 | |
| 	{
 | |
| 		m_FillType = fillSolid;
 | |
| 		
 | |
| 		m_oColor.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 		
 | |
| 		m_nFillOpacity = 0x00010000;
 | |
| 		m_oFillBackColor.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 		
 | |
| 		m_nFillBackOpacity = 0x00010000;
 | |
| 
 | |
| 		m_nImageNumber = 0;
 | |
| 		
 | |
| 		m_strFillBlipName = _T("");
 | |
| 		m_FillBlipFlags = blipflagComment;
 | |
| 		
 | |
| 		m_lFillWidth = 0;
 | |
| 		m_lFillHeight = 0;
 | |
| 		m_lFillAngle = 0;
 | |
| 		m_lFillFocus = 0;
 | |
| 		
 | |
| 		m_oFillToRect.left = 0; m_oFillToRect.top = 0;
 | |
| 		m_oFillToRect.right = 0; m_oFillToRect.bottom = 0;
 | |
| 
 | |
| 		m_oFillRect.left = 0; m_oFillRect.top = 0;
 | |
| 		m_oFillRect.right = 0; m_oFillRect.bottom = 0;
 | |
| 		
 | |
| 		m_FillDztype = dztypeDefault;
 | |
| 		
 | |
| 		m_arFillShadePreset = 0;
 | |
| 		
 | |
| 		m_nFillOriginX = 0;
 | |
| 		m_nFillOriginY = 0;
 | |
| 		m_nFillShapeOriginX = 0;
 | |
| 		m_nFillShapeOriginY = 0;
 | |
| 		
 | |
| 		m_FillShadeType = shadeDefault;
 | |
| 
 | |
| 		m_bRecolorFillAsPicture = false;
 | |
| 		m_bUseShapeAnchor = true;
 | |
| 		m_bFilled = true;
 | |
| 		m_bHitTestFill = true;
 | |
| 		m_billShape = true;
 | |
| 		m_billUseRect = false;
 | |
| 		m_bNoFillHitTest = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeLineStyle
 | |
| {
 | |
| 	SColorAtom m_oColor;
 | |
| 	LONG m_nOpacity;
 | |
| 
 | |
| 	SColorAtom m_oBackColor;
 | |
| 	SColorAtom m_oCrMod;
 | |
| 
 | |
| 	LineType m_Type;
 | |
| 
 | |
| 	DWORD m_nImageNumber;
 | |
| 	
 | |
| 	
 | |
| 	CStringW m_strFileName;
 | |
| 	BlipFlags m_Flag;
 | |
| 	 
 | |
| 	LONG m_nFillWidth;
 | |
| 	LONG m_nFillHeight;
 | |
| 	
 | |
| 	DzType m_FillDztype;
 | |
| 
 | |
| 	LONG m_nWidth;
 | |
| 	LONG m_nMiterLimit;
 | |
| 
 | |
| 	LinesStyle m_Style;
 | |
| 	LineDashing m_Dashing;
 | |
| 	
 | |
| 	BYTE* m_pDashStyle;
 | |
| 	
 | |
| 	LineEnd m_StartArrowhead;
 | |
| 	LineEnd m_Arrowhead;
 | |
| 	
 | |
| 	LineEndWidth m_StartArrowWidth;
 | |
| 	LineEndLength m_StartArrowLength;
 | |
| 	
 | |
| 	LineEndWidth m_EndArrowWidth;
 | |
| 	LineEndLength m_EndArrowLength;
 | |
| 	
 | |
| 	_LineJoin m_JoinStyle;
 | |
| 	_LineCap m_EndCapStyle;
 | |
| 	
 | |
| 	bool m_bInsetPen;
 | |
| 	bool m_bInsetPenOK;
 | |
| 	bool m_bArrowheadsOK;
 | |
| 	bool m_bLine;
 | |
| 	bool m_bHitTestLine;
 | |
| 	bool m_bFillShape;
 | |
| 	bool m_bNoLineDrawDash;
 | |
| 
 | |
| public:
 | |
| 	CTypeLineStyle()
 | |
| 	{
 | |
| 		m_oColor.FromValue(00, 00, 00);
 | |
| 		m_nOpacity = 0x00010000;
 | |
| 
 | |
| 		m_oBackColor.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 		m_oCrMod.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 
 | |
| 		m_Type = lineSolidType;
 | |
| 
 | |
| 		m_nImageNumber = 0;
 | |
| 		m_strFileName = _T("");
 | |
| 		
 | |
| 		m_Flag = blipflagComment;
 | |
| 		 
 | |
| 		m_nFillWidth = 0;
 | |
| 		m_nFillHeight = 0;
 | |
| 		
 | |
| 		m_FillDztype = dztypeDefault;
 | |
| 
 | |
| 		m_nWidth = 9525;
 | |
| 		m_nMiterLimit = 0x00080000;
 | |
| 
 | |
| 		m_Style = lineSimple;
 | |
| 		m_Dashing = lineSolid;
 | |
| 		
 | |
| 		m_pDashStyle = NULL;
 | |
| 		
 | |
| 		m_StartArrowhead = lineNoEnd;
 | |
| 		m_Arrowhead = lineNoEnd;
 | |
| 		
 | |
| 		m_StartArrowWidth = lineMediumWidthArrow;
 | |
| 		m_StartArrowLength = lineMediumLenArrow;
 | |
| 		
 | |
| 		m_EndArrowWidth = lineMediumWidthArrow;
 | |
| 		m_EndArrowLength = lineMediumLenArrow;
 | |
| 		
 | |
| 		m_JoinStyle = lineJoinRound;
 | |
| 		m_EndCapStyle = lineEndCapFlat;
 | |
| 		
 | |
| 		m_bInsetPen = false;
 | |
| 		m_bInsetPenOK = true;
 | |
| 		m_bArrowheadsOK = false;
 | |
| 		m_bLine = true;
 | |
| 		m_bHitTestLine = true;
 | |
| 		m_bFillShape = true;
 | |
| 		m_bNoLineDrawDash = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeShadowStyle
 | |
| {
 | |
| 	ShadowType m_Type;
 | |
| 	
 | |
| 	SColorAtom m_oColor;
 | |
| 	SColorAtom m_Highlight;
 | |
| 	
 | |
| 	LONG m_nOpacity;
 | |
| 	
 | |
| 	LONG m_nOffsetX;
 | |
| 	LONG m_nOffsetY;
 | |
| 	
 | |
| 	LONG m_nSecondOffsetX;
 | |
| 	LONG m_nSecondOffsetY;
 | |
| 	
 | |
| 	LONG m_nScaleXToX;
 | |
| 	LONG m_nScaleYToX;
 | |
| 	LONG m_nScaleXToY;
 | |
| 	LONG m_nScaleYToY;
 | |
| 	
 | |
| 	LONG m_nPerspectiveX;
 | |
| 	LONG m_nPerspectiveY;
 | |
| 	
 | |
| 	LONG m_nWeight;
 | |
| 	
 | |
| 	LONG m_nOriginX;
 | |
| 	LONG m_nOriginY;
 | |
| 	
 | |
| 	bool m_bShadow;
 | |
| 	bool m_bShadowObscured;
 | |
| 
 | |
| public:
 | |
| 	CTypeShadowStyle()
 | |
| 	{
 | |
| 		m_Type = shadowOffset;
 | |
| 	
 | |
| 		m_oColor.FromValue(0x80, 0x80, 0x80);
 | |
| 		m_Highlight.FromValue(0xCB, 0xCB, 0xCB);
 | |
| 		
 | |
| 		m_nOpacity = 0x00010000;
 | |
| 		
 | |
| 		m_nOffsetX = 25400;
 | |
| 		m_nOffsetY = 25400;
 | |
| 		
 | |
| 		m_nSecondOffsetX = 0;
 | |
| 		m_nSecondOffsetY = 0;
 | |
| 		
 | |
| 		m_nScaleXToX = 0x00010000;
 | |
| 		m_nScaleYToX = 0;
 | |
| 		m_nScaleXToY = 0;
 | |
| 		m_nScaleYToY = 0x00010000;
 | |
| 		
 | |
| 		m_nPerspectiveX = 0;
 | |
| 		m_nPerspectiveY = 0;
 | |
| 		
 | |
| 		m_nWeight = 0x00000100;
 | |
| 		
 | |
| 		m_nOriginX = 0;
 | |
| 		m_nOriginY = 0;
 | |
| 		
 | |
| 		m_bShadow = false;
 | |
| 		m_bShadowObscured = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypePerspectiveStyle
 | |
| {
 | |
| 	XFormType m_Type;
 | |
| 	LONG m_nOffsetX;
 | |
| 	LONG m_nOffsetY;
 | |
| 	
 | |
| 	LONG m_nScaleXToX;
 | |
| 	LONG m_nScaleYToX;
 | |
| 	LONG m_nScaleXToY;
 | |
| 	LONG m_nScaleYToY;
 | |
| 	
 | |
| 	LONG m_nPerspectiveX;
 | |
| 	LONG m_nPerspectiveY;
 | |
| 	
 | |
| 	LONG m_nWeight;
 | |
| 	
 | |
| 	LONG m_nOriginX;
 | |
| 	LONG m_nOriginY;
 | |
| 	
 | |
| 	bool m_bPerspective;
 | |
| 
 | |
| public:
 | |
| 	CTypePerspectiveStyle()
 | |
| 	{
 | |
| 		m_Type = xformShape;
 | |
| 		m_nOffsetX = 0;
 | |
| 		m_nOffsetY = 0;
 | |
| 		
 | |
| 		m_nScaleXToX = 0x00010000;
 | |
| 		m_nScaleYToX = 0;
 | |
| 		m_nScaleXToY = 0;
 | |
| 		m_nScaleYToY = 0x00010000;
 | |
| 		
 | |
| 		m_nPerspectiveX = 0;
 | |
| 		m_nPerspectiveY = 0;
 | |
| 		
 | |
| 		m_nWeight = 0x00000100;
 | |
| 		
 | |
| 		m_nOriginX = 0x00008000;
 | |
| 		m_nOriginY = 0x00008000;
 | |
| 		
 | |
| 		m_bPerspective = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CType3DObject
 | |
| {
 | |
| 	LONG m_c3DSpecularAmt;
 | |
| 	LONG m_c3DDiffuseAmt;
 | |
| 	LONG m_c3DShininess;
 | |
| 	LONG m_c3DEdgeThickness;
 | |
| 	LONG m_c3DExtrudeForward;
 | |
| 	LONG m_c3DExtrudeBackward;
 | |
| 	LONG m_c3DExtrudePlane;
 | |
| 	
 | |
| 	SColorAtom m_c3DExtrusionColor;
 | |
| 	SColorAtom c3DCrMod;
 | |
| 	
 | |
| 	bool m_b3D;
 | |
| 	bool m_bc3DMetallic;
 | |
| 	bool m_bc3DUseExtrusionColor;
 | |
| 	bool m_bc3DLightFace;
 | |
| 
 | |
| public:
 | |
| 	CType3DObject()
 | |
| 	{
 | |
| 		m_c3DSpecularAmt = 0;
 | |
| 		m_c3DDiffuseAmt = 0x00010000;
 | |
| 		m_c3DShininess = 5;
 | |
| 		m_c3DEdgeThickness = 12700;
 | |
| 		m_c3DExtrudeForward = 0;
 | |
| 		m_c3DExtrudeBackward = 457200;
 | |
| 		m_c3DExtrudePlane = 0;
 | |
| 		
 | |
| 		m_c3DExtrusionColor.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 		c3DCrMod.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 		
 | |
| 		m_b3D = false;
 | |
| 		m_bc3DMetallic = false;
 | |
| 		m_bc3DUseExtrusionColor = false;
 | |
| 		m_bc3DLightFace = true;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CType3DStyle
 | |
| {
 | |
| 	LONG m_c3DYRotationAngle;
 | |
| 	LONG m_c3DXRotationAngle;
 | |
| 	
 | |
| 	LONG m_c3DRotationAxisX;
 | |
| 	LONG m_c3DRotationAxisY;
 | |
| 	LONG m_c3DRotationAxisZ;
 | |
| 
 | |
| 	LONG m_c3DRotationAngle;
 | |
| 	
 | |
| 	LONG m_c3DRotationCenterX;
 | |
| 	LONG m_c3DRotationCenterY;
 | |
| 	LONG m_c3DRotationCenterZ;
 | |
| 	
 | |
| 	e3DRenderMode c3DRenderMode;
 | |
| 	
 | |
| 	LONG m_c3DTolerance;
 | |
| 
 | |
| 	LONG m_c3DXViewpoint;
 | |
| 	LONG m_c3DYViewpoint;
 | |
| 	LONG m_c3DZViewpoint;
 | |
| 	
 | |
| 	LONG m_c3DOriginX;
 | |
| 	LONG m_c3DOriginY;
 | |
| 	
 | |
| 	LONG m_c3DSkewAngle;
 | |
| 	LONG m_c3DSkewAmount;
 | |
| 	LONG m_c3DAmbientIntensity;
 | |
| 	
 | |
| 	LONG m_c3DKeyX;
 | |
| 	LONG m_c3DKeyY;
 | |
| 	LONG m_c3DKeyZ;
 | |
| 	
 | |
| 	LONG m_c3DKeyIntensity;
 | |
| 	
 | |
| 	LONG m_c3DFillX;
 | |
| 	LONG m_c3DFillY;
 | |
| 	LONG m_c3DFillZ;
 | |
| 	LONG m_c3DFillIntensity;
 | |
| 	
 | |
| 	bool m_bc3DConstrainRotation;
 | |
| 	bool m_bc3DRotationCenterAuto;
 | |
| 	bool m_bc3DParallel;
 | |
| 	bool m_bc3DKeyHarsh;
 | |
| 	bool m_bc3DFillHarsh;
 | |
| 
 | |
| public:
 | |
| 	CType3DStyle()
 | |
| 	{
 | |
| 		m_c3DYRotationAngle = 0;
 | |
| 		m_c3DXRotationAngle = 0;
 | |
| 		
 | |
| 		m_c3DRotationAxisX = 100;
 | |
| 		m_c3DRotationAxisY = 0;
 | |
| 		m_c3DRotationAxisZ = 0;
 | |
| 
 | |
| 		m_c3DRotationAngle = 0;
 | |
| 		
 | |
| 		m_c3DRotationCenterX = 0;
 | |
| 		m_c3DRotationCenterY = 0;
 | |
| 		m_c3DRotationCenterZ = 0;
 | |
| 		
 | |
| 		c3DRenderMode = FullRender;
 | |
| 		
 | |
| 		m_c3DTolerance = 30000;
 | |
| 
 | |
| 		m_c3DXViewpoint = 1250000;
 | |
| 		m_c3DYViewpoint = -1250000;
 | |
| 		m_c3DZViewpoint = 9000000;
 | |
| 		
 | |
| 		m_c3DOriginX = 32768;
 | |
| 		m_c3DOriginY = -32768;
 | |
| 		
 | |
| 		m_c3DSkewAngle = -8847360;
 | |
| 		m_c3DSkewAmount = 50;
 | |
| 		m_c3DAmbientIntensity = 20000;
 | |
| 		
 | |
| 		m_c3DKeyX = 50000;
 | |
| 		m_c3DKeyY = 0;
 | |
| 		m_c3DKeyZ = 10000;
 | |
| 		
 | |
| 		m_c3DKeyIntensity = 38000;
 | |
| 		
 | |
| 		m_c3DFillX = -50000;
 | |
| 		m_c3DFillY = 0;
 | |
| 		m_c3DFillZ = 10000;
 | |
| 		m_c3DFillIntensity = 38000;
 | |
| 		
 | |
| 		m_bc3DConstrainRotation = true;
 | |
| 		m_bc3DRotationCenterAuto = false;
 | |
| 		m_bc3DParallel = true;
 | |
| 		m_bc3DKeyHarsh = true;
 | |
| 		m_bc3DFillHarsh = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeShape
 | |
| {
 | |
| 	DWORD m_MasterID;
 | |
| 	
 | |
| 	CxStyle m_cxstyle;
 | |
| 	
 | |
| 	BwMode m_bWMode;
 | |
| 	BwMode m_bWModePureBW;
 | |
| 	BwMode m_bWModeBW;
 | |
| 	
 | |
| 	LONG m_nIdDiscussAnchor;
 | |
| 	
 | |
| 	DGMLO m_dgmLayout;
 | |
| 	DGMNK m_dgmNodeKind;
 | |
| 	DGMLO m_dgmLayoutMRU;
 | |
| 	
 | |
| 	CString m_strEquationXML;
 | |
| 	
 | |
| 	bool m_bPolicyLabel;
 | |
| 	bool m_bPolicyBarcode;
 | |
| 	bool m_bFlipHQFE5152;
 | |
| 	bool m_bFlipVQFE5152;
 | |
| 	
 | |
| 	bool m_bPreferRelativeResize;
 | |
| 	bool m_bLockShapeType;
 | |
| 	bool m_bInitiator;
 | |
| 	bool m_bDeleteAttachedObject;
 | |
| 	bool m_bBackground;
 | |
| 
 | |
| public:
 | |
| 	CTypeShape()
 | |
| 	{
 | |
| 		m_MasterID = 0;
 | |
| 	
 | |
| 		m_cxstyle = cxstyleNone;
 | |
| 		
 | |
| 		m_bWMode = bwAutomatic;
 | |
| 		m_bWModePureBW = bwAutomatic;
 | |
| 		m_bWModeBW = bwAutomatic;
 | |
| 		
 | |
| 		m_nIdDiscussAnchor = 0;
 | |
| 		
 | |
| 		m_dgmLayout = dgmloNil;
 | |
| 		m_dgmNodeKind = dgmnkNil;
 | |
| 		m_dgmLayoutMRU = dgmloNil;
 | |
| 		
 | |
| 		m_strEquationXML = _T("");
 | |
| 		
 | |
| 		m_bPolicyLabel = false;
 | |
| 		m_bPolicyBarcode = false;
 | |
| 		m_bFlipHQFE5152 = false;
 | |
| 		m_bFlipVQFE5152 = false;
 | |
| 		
 | |
| 		m_bPreferRelativeResize = false;
 | |
| 		m_bLockShapeType = false;
 | |
| 		m_bInitiator = false;
 | |
| 		m_bDeleteAttachedObject = false;
 | |
| 		m_bBackground = false;
 | |
| 	}
 | |
| };
 | |
| 
 | |
| class CTypeGroupShape
 | |
| {
 | |
| 	CStringW m_strName;
 | |
| 	CStringW m_strDescription;
 | |
| 
 | |
| 	CStringW m_strHyperlink;
 | |
| 	
 | |
| 	BYTE* m_pWrapPolygonVertices;
 | |
| 
 | |
| 	RECT m_DxRectWrapDist;
 | |
| 
 | |
| 	LONG m_nRegroupID;
 | |
| 	
 | |
| 	RECT m_RectGroup;
 | |
| 	
 | |
| 	CStringW m_strTooltip;
 | |
| 	CStringW m_strScript;
 | |
| 	
 | |
| 	LONG m_nPercentHR;
 | |
| 	LONG m_AlignHR;
 | |
| 	
 | |
| 	LONG m_nDxHeightHR;
 | |
| 	LONG m_nDxWidthHR;
 | |
| 	
 | |
| 	CStringW m_strScriptExtAttr;
 | |
| 
 | |
| 	LONG m_nScriptLang;
 | |
| 	
 | |
| 	CStringW m_strScriptIdAttr;
 | |
| 	CStringW m_strScriptLangAttr;
 | |
| 	
 | |
| 	SColorAtom m_oBorderTopColor;
 | |
| 	SColorAtom m_oBorderLeftColor;
 | |
| 	SColorAtom m_oBorderBottomColor;
 | |
| 	SColorAtom m_oBorderRightColor;
 | |
| 
 | |
| 	LONG m_nTableProperties;
 | |
| 	BYTE* m_pTableRowProperties;
 | |
| 	LONG m_nScriptHtmlLocation;
 | |
| 	
 | |
| 	CStringW m_strApplet;
 | |
| 
 | |
| 	CStringW m_strFrameTrgtUnused;
 | |
| 	CStringW m_strWebBot;
 | |
| 	CStringW m_strAppletArg;
 | |
| 	CStringW m_strAccessBlob;
 | |
| 	
 | |
| 	BYTE* m_pMetroBlob;
 | |
| 	
 | |
| 	LONG m_dhgt;
 | |
| 	
 | |
| 	bool m_bLayoutInCell;
 | |
| 	bool m_bIsBullet;
 | |
| 	bool m_bStandardHR;
 | |
| 	bool m_bNoshadeHR;
 | |
| 	bool m_bHorizRule;
 | |
| 	bool m_bUserDrawn;
 | |
| 	bool m_bAllowOverlap;
 | |
| 	bool m_bReallyHidden;
 | |
| 	bool m_bScriptAnchor;
 | |
| 
 | |
| public:
 | |
| 	CTypeGroupShape()
 | |
| 	{
 | |
| 		m_strName = _T("");
 | |
| 		m_strDescription = _T("");
 | |
| 
 | |
| 		m_strHyperlink = _T("");
 | |
| 		
 | |
| 		m_pWrapPolygonVertices = NULL;
 | |
| 
 | |
| 		m_DxRectWrapDist.left =  0x0001BE7C; m_DxRectWrapDist.top = 0;
 | |
| 		m_DxRectWrapDist.right =  0x0001BE7C; m_DxRectWrapDist.bottom = 0;
 | |
| 
 | |
| 		LONG m_nRegroupID = 0;
 | |
| 		
 | |
| 		m_RectGroup.left =  0; m_RectGroup.top = 0;
 | |
| 		m_RectGroup.right =  20000; m_RectGroup.bottom = 20000;
 | |
| 		
 | |
| 		m_strTooltip = _T("");
 | |
| 		m_strScript = _T("STD");
 | |
| 		
 | |
| 		m_nPercentHR = 1000;
 | |
| 		m_AlignHR = 0;
 | |
| 		
 | |
| 		m_nDxHeightHR = 0;
 | |
| 		m_nDxWidthHR = 0;
 | |
| 		
 | |
| 		m_strScriptExtAttr = _T("STD");
 | |
| 		m_nScriptLang = 1;
 | |
| 		
 | |
| 		m_strScriptIdAttr = _T("STD");
 | |
| 		m_strScriptLangAttr = _T("STD");
 | |
| 		
 | |
| 		m_oBorderTopColor.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 		m_oBorderLeftColor.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 		m_oBorderBottomColor.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 		m_oBorderRightColor.FromValue(0xFF, 0xFF, 0xFF);
 | |
| 
 | |
| 		m_nTableProperties = 0;
 | |
| 		m_pTableRowProperties = NULL;
 | |
| 		m_nScriptHtmlLocation = 2;
 | |
| 		
 | |
| 		m_strApplet = _T("");
 | |
| 
 | |
| 		m_strFrameTrgtUnused = _T("");
 | |
| 		m_strWebBot = _T("STD");
 | |
| 		m_strAppletArg = _T("");
 | |
| 		m_strAccessBlob = _T("");
 | |
| 		
 | |
| 		m_pMetroBlob = NULL;
 | |
| 		
 | |
| 		m_dhgt = 0;
 | |
| 		
 | |
| 		m_bLayoutInCell = true;
 | |
| 		m_bIsBullet = false;
 | |
| 		m_bStandardHR = false;
 | |
| 		m_bNoshadeHR = false;
 | |
| 		m_bHorizRule = false;
 | |
| 		m_bUserDrawn = false;
 | |
| 		m_bAllowOverlap = true;
 | |
| 		m_bReallyHidden = false;
 | |
| 		m_bScriptAnchor = false;
 | |
| 	}
 | |
| };
 | |
| 
 |