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;
|
|
}
|
|
};
|
|
|