⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 superlayout.h

📁 supermap objects 二次开发的vc文件相关的包
💻 H
📖 第 1 页 / 共 3 页
字号:
#if !defined(AFX_SUPERLAYOUT_H__21CDA3AC_C967_440E_BC0C_E0C6F2715430__INCLUDED_)
#define AFX_SUPERLAYOUT_H__21CDA3AC_C967_440E_BC0C_E0C6F2715430__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// Machine generated IDispatch wrapper class(es) created by Microsoft Visual C++

// NOTE: Do not modify the contents of this file.  If this class is regenerated by
//  Microsoft Visual C++, your modifications will be overwritten.
#define  SUPERLAYOUT_DISPID_BEFORE_LAYOUT_DRAW			0x01
#define  SUPERLAYOUT_DISPID_AFTER_LAYOUT_DRAW			0x02
#define  SUPERLAYOUT_DISPID_SELECTION_CHANGED			0x03	
#define  SUPERLAYOUT_DISPID_VIEW_SCALE_CHANGED			0x04

// dispatch id definitions for ole stock events are
// defined in <olectl.h>
// they are included here for reference
#define SUPERLAYOUT_DISPID_CLICK                    (-627)
#define SUPERLAYOUT_DISPID_DBLCLICK                 (-628)
#define SUPERLAYOUT_DISPID_KEYDOWN                  (-629)
#define SUPERLAYOUT_DISPID_KEYPRESS                 (-630)
#define SUPERLAYOUT_DISPID_KEYUP                    (-631)
#define SUPERLAYOUT_DISPID_MOUSEDOWN                (-632)
#define SUPERLAYOUT_DISPID_MOUSEMOVE                (-633)
#define SUPERLAYOUT_DISPID_MOUSEUP                  (-634)
#define SUPERLAYOUT_DISPID_ERROREVENT               (-635)

typedef
enum tagLytObjType
{
	sclytLinesect		=0,	//线段
	sclytRect			=1,	//矩形
	sclytRoundRect		=2,	//圆角矩形
	sclytEllipse		=3,	//椭圆
	sclytArc			=4,	//圆弧
	sclytPolygon		=5,	//多边形
	sclytPolyline		=6,	//折线
	sclytText			=7,	//文本
	sclytMap			=8,	//地图对象
	sclytGroup			=9,	//组对象
	sclytTable			=10,//表格(假的)
	sclytArtText		=11,//艺术汉字
	sclytLegend		=12,//图例
	sclytScale			=13,//比例尺
	sclytDirection		=14,//方向标
	sclytPoint		        =15,//方向标
	sclytPicture		=16,//方向标

}seLytObjType;

//注意LytAction接口的常量从0开始,内部从-1开始,新增长量的话,要保持接口内部至值大1。
typedef
enum tagLytActionType
{
	   sclytActNull = 0,				//-1, 
	sclytActSel			=1,		//0
	sclytActZoomOut		=2,		//1
	sclytActZoomIn			=3,	//2 
	sclytActPalm			=4,	//3 
	sclytActLinesect		=5,	//4, 
	sclytActRect			=6,	//5, 
	sclytActRoundRect		=7,	//6, 
	sclytActEllipse		=8,//7, 
	sclytActArc 			=9,	//8, 
	sclytActPolygon		=10,	//9, 
	sclytActPolyline		=11,//10
	sclytActText			=12,	//11
	sclytActMap			=13,		//12,
	sclytActTable			=14,	//13,

	sclytActArtText		=16,	//15,
	sclytActLegend			=17,	//16,
	sclytActScale			=18,	//17,
	sclytActDirection		=19,	//18
	  sclytActPoint = 20,	//19,
	  sclytActPicture = 21,	//20 
}seLytActionType;

typedef
enum tagMapActionType
{
	scMapActNull						=0,//什么也不干
	scMapActPan						=1,//地图平移
	scMapActZoomIn						=2,//放大
	scMapActZoomOut					=3,//缩小
	scMapActZoomFree					=4,//自由缩放
}seMapActionType;

typedef
enum tagLytTextAlignType
{
	scTextAlignLeft					=0,//左对齐
	scTextAlignCenter					=1,//居中对齐
	scTextAlignRight					=2,//右对齐
}seLytTextAlignType;

typedef
enum tagMapBorderFillStyle
{ //边框填充模式
	scMapBorderFillNon					=0,//不填充
	scMapBorderFillBitmap				=1,//填充位图
	scMapBorderFillChar				=2,//填充字样
}seMapBorderFillStyle;

typedef
enum tagMapBorderCornerFillStyle
{//转角填充模式
	scMapBorderCornerFillStyleNon		=0,//不填充
	scMapBorderCornerFillStyleBitmap	=1,//填充位图
	scMapBorderCornerFillStyleChar		=2,//填充字样
}seMapBorderCornerFillStyle;

typedef
enum tagMapBorderRotateBaseType
{//边框旋转类型
	scMapBorderRotateBaseBottom		=0,//下
	scMapBorderRotateBaseTop			=1,//上
}seMapBorderRotateBaseType;

typedef
enum tagMapBorderCornerRotateBaseType
{//边框转角旋转类型
	scMapBorderCornerRotateBaseLeftBottom  =0,//
	scMapBorderCornerRotateBaseLeftTop		=1,//
	scMapBorderCornerRotateBaseRightTop	=2,//
	scMapBorderCornerRotateBaseRightBottom =3,//
}seMapBorderCornerRotateBaseType;

typedef
enum tagDirectionBorderType
{//方向标边框类型
	scDirectionBorderNon	=0,//
	scDirectionBorderSingle=1,//
}seDirectionBorderType;

typedef
enum tagLytMapBorderType
{
	sclytMapBorderNone		=0,	//无边框
	sclytMapBorderSingle	=1,	//单边框
	sclytMapBorderComplex	=2,	//复杂边框
}seLytMapBorderType;

typedef
enum tagLytPrinterPaperSize
{
	sclytDMPAPER_LETTER						= 1		,
	sclytDMPAPER_LETTERSMALL					= 2		,
	sclytDMPAPER_TABLOID						= 3		,
	sclytDMPAPER_LEDGER						= 4		,
	sclytDMPAPER_LEGAL 						= 5		,
	sclytDMPAPER_STATEMENT 					= 6		,
	sclytDMPAPER_EXECUTIVE 					= 7		,
	sclytDMPAPER_A3							= 8		,
	sclytDMPAPER_A4							= 9		,
	sclytDMPAPER_A4SMALL						= 10	,
	sclytDMPAPER_A5							= 11	,
	sclytDMPAPER_B4							= 12	,
	sclytDMPAPER_B5							= 13	,
	sclytDMPAPER_FOLIO 						= 14	,
	sclytDMPAPER_QUARTO						= 15	,
	sclytDMPAPER_10X14 						= 16	,
	sclytDMPAPER_11X17 						= 17	,
	sclytDMPAPER_NOTE							= 18	,
	sclytDMPAPER_ENV_9 						= 19	,
	sclytDMPAPER_ENV_10						= 20	,
	sclytDMPAPER_ENV_11						= 21	,
	sclytDMPAPER_ENV_12						= 22	,
	sclytDMPAPER_ENV_14						= 23	,
	sclytDMPAPER_CSHEET						= 24	,
	sclytDMPAPER_DSHEET						= 25	,
	sclytDMPAPER_ESHEET						= 26	,
	sclytDMPAPER_ENV_DL						= 27	,
	sclytDMPAPER_ENV_C5						= 28	,
	sclytDMPAPER_ENV_C3						= 29	,
	sclytDMPAPER_ENV_C4						= 30	,
	sclytDMPAPER_ENV_C6						= 31	,
	sclytDMPAPER_ENV_C65						= 32	,
	sclytDMPAPER_ENV_B4						= 33	,
	sclytDMPAPER_ENV_B5						= 34	,
	sclytDMPAPER_ENV_B6						= 35	,
	sclytDMPAPER_ENV_ITALY 					= 36	,
	sclytDMPAPER_ENV_MONARCH					= 37	,
	sclytDMPAPER_ENV_PERSONAL					= 38	,
	sclytDMPAPER_FANFOLD_US					= 39	,
	sclytDMPAPER_FANFOLD_STD_GERMAN			= 40	,
	sclytDMPAPER_FANFOLD_LGL_GERMAN			= 41	,
	sclytDMPAPER_ISO_B4						= 42	,
	sclytDMPAPER_JAPANESE_POSTCARD				= 43	,
	sclytDMPAPER_9X11							= 44	,
	sclytDMPAPER_10X11 						= 45	,
	sclytDMPAPER_15X11 						= 46	,
	sclytDMPAPER_ENV_INVITE					= 47	,
	sclytDMPAPER_RESERVED_48					= 48	,
	sclytDMPAPER_RESERVED_49					= 49	,
	sclytDMPAPER_LETTER_EXTRA					= 50	,
	sclytDMPAPER_LEGAL_EXTRA					= 51	,
	sclytDMPAPER_TABLOID_EXTRA 				= 52	,
	sclytDMPAPER_A4_EXTRA						= 53	,
	sclytDMPAPER_LETTER_TRANSVERSE				= 54	,
	sclytDMPAPER_A4_TRANSVERSE 				= 55	,
	sclytDMPAPER_LETTER_EXTRA_TRANSVERSE		= 56	,
	sclytDMPAPER_A_PLUS						= 57	,
	sclytDMPAPER_B_PLUS						= 58	,
	sclytDMPAPER_LETTER_PLUS					= 59	,
	sclytDMPAPER_A4_PLUS						= 60	,
	sclytDMPAPER_A5_TRANSVERSE 				= 61	,
	sclytDMPAPER_B5_TRANSVERSE 				= 62	,
	sclytDMPAPER_A3_EXTRA						= 63	,
	sclytDMPAPER_A5_EXTRA						= 64	,
	sclytDMPAPER_B5_EXTRA						= 65	,
	sclytDMPAPER_A2							= 66	,
	sclytDMPAPER_A3_TRANSVERSE 				= 67	,
	sclytDMPAPER_A3_EXTRA_TRANSVERSE			= 68	,
	sclytDMPAPER_DBL_JAPANESE_POSTCARD			= 69,
	sclytDMPAPER_A6							= 70	,
	sclytDMPAPER_JENV_KAKU2					= 71	,
	sclytDMPAPER_JENV_KAKU3					= 72	,
	sclytDMPAPER_JENV_CHOU3					= 73	,
	sclytDMPAPER_JENV_CHOU4					= 74	,
	sclytDMPAPER_LETTER_ROTATED				= 75	,
	sclytDMPAPER_A3_ROTATED					= 76	,
	sclytDMPAPER_A4_ROTATED					= 77	,
	sclytDMPAPER_A5_ROTATED					= 78	,
	sclytDMPAPER_B4_JIS_ROTATED				= 79	,
	sclytDMPAPER_B5_JIS_ROTATED				= 80	,
	sclytDMPAPER_JAPANESE_POSTCARD_ROTATED 	= 81	,
	sclytDMPAPER_DBL_JAPANESE_POSTCARD_ROTATED = 82	,
	sclytDMPAPER_A6_ROTATED					= 83	,
	sclytDMPAPER_JENV_KAKU2_ROTATED			= 84	,
	sclytDMPAPER_JENV_KAKU3_ROTATED			= 85	,
	sclytDMPAPER_JENV_CHOU3_ROTATED			= 86	,
	sclytDMPAPER_JENV_CHOU4_ROTATED			= 87	,
	sclytDMPAPER_B6_JIS						= 88	,
	sclytDMPAPER_B6_JIS_ROTATED				= 89	,
	sclytDMPAPER_12X11 						= 90	,
	sclytDMPAPER_JENV_YOU4 					= 91	,
	sclytDMPAPER_JENV_YOU4_ROTATED				= 92	,
	sclytDMPAPER_P16K							= 93	,
	sclytDMPAPER_P32K							= 94	,
	sclytDMPAPER_P32KBIG						= 95	,
	sclytDMPAPER_PENV_1						= 96	,
	sclytDMPAPER_PENV_2						= 97	,
	sclytDMPAPER_PENV_3						= 98	,
	sclytDMPAPER_PENV_4						= 99	,
	sclytDMPAPER_PENV_5						= 100	,
	sclytDMPAPER_PENV_6						= 101	,
	sclytDMPAPER_PENV_7						= 102	,
	sclytDMPAPER_PENV_8						= 103	,
	sclytDMPAPER_PENV_9						= 104	,
	sclytDMPAPER_PENV_10						= 105	,
	sclytDMPAPER_P16K_ROTATED					= 106	,
	sclytDMPAPER_P32K_ROTATED					= 107	,
	sclytDMPAPER_P32KBIG_ROTATED				= 108	,
	sclytDMPAPER_PENV_1_ROTATED				= 109	,
	sclytDMPAPER_PENV_2_ROTATED				= 110	,
	sclytDMPAPER_PENV_3_ROTATED				= 111	,
	sclytDMPAPER_PENV_4_ROTATED				= 112	,
	sclytDMPAPER_PENV_5_ROTATED				= 113	,
	sclytDMPAPER_PENV_6_ROTATED				= 114	,
	sclytDMPAPER_PENV_7_ROTATED				= 115	,
	sclytDMPAPER_PENV_8_ROTATED				= 116	,
	sclytDMPAPER_PENV_9_ROTATED				= 117	,
	sclytDMPAPER_PENV_10_ROTATED				= 118	,
	sclytDMPAPER_ISO_A2 = 119, //标准纸面大小
	sclytDMPAPER_ISO_A1 = 120, //标准纸面大小
	sclytDMPAPER_ISO_A0	= 121, //标准纸面大小
	sclytDMPAPER_ISO_EUROPE_B4 = 122, //标准纸面大小(欧洲)
	sclytDMPAPER_ISO_EUROPE_B3 = 123, //标准纸面大小(欧洲)
	sclytDMPAPER_ISO_EUROPE_B2 = 124, //标准纸面大小(欧洲)
	sclytDMPAPER_ISO_EUROPE_B1 = 125, //标准纸面大小(欧洲)
	sclytDMPAPER_JIS_B4	= 126, //= 标准纸面大小(日本)
	sclytDMPAPER_JIS_B3 = 127, //标准纸面大小(日本)
	sclytDMPAPER_JIS_B2 = 128, //标准纸面大小(日本)
	sclytDMPAPER_JIS_B1 = 129, //标准纸面大小(日本)						
	sclytDMPAPER_USER							= 256	,
}seLytPrinterPaperSize;


typedef
enum tagLytRulerLine 
{
	 sclytVertical = 1, //垂直标尺线
	 scLytHorizontal	= 2, //水平标尺线
}seLytRulerLine;


typedef
enum tagLytPageUnits 
{
	 scLytResolution = 1, //为了和以前版本兼容,单位为0.1 毫米
	 scLytMillimeter = 10, //毫米
	 scLytCentimeter	= 100, //厘米
	 scLytInch = 254, //英寸
	 scLytDecimeter = 1000, //分米
	 scLytFoot = 3084, //英尺
	 scLytYard = 9114, //码
	 scLytMeter = 10000, //米
}seLytPageUnits;

typedef 
enum tagLytOrientation
{
	 scLytPortrait = 1, //横向纸面
	 scLytLandscape = 2, //	纵向纸面
}seLytOrientation;

// Dispatch interfaces referenced by this interface
class CsoLytSelection;
class CsoLytElements;
class CsoLytRulerLines;
class CsoStyle;
class CsoTextStyle;
class CsoLytPage;

/////////////////////////////////////////////////////////////////////////////
// CSuperLayout wrapper class

class CSuperLayout : public CWnd
{
protected:
	DECLARE_DYNCREATE(CSuperLayout)
public:
	CLSID const& GetClsid()
	{
		static CLSID const clsid
			= { 0x324745aa, 0x1145, 0x4808, { 0xaa, 0x69, 0x41, 0x98, 0x75, 0x82, 0xae, 0x36 } };
		return clsid;
	}
	virtual BOOL Create(LPCTSTR lpszClassName,
		LPCTSTR lpszWindowName, DWORD dwStyle,
		const RECT& rect,
		CWnd* pParentWnd, UINT nID,
		CCreateContext* pContext = NULL)
	{ return CreateControl(GetClsid(), lpszWindowName, dwStyle, rect, pParentWnd, nID); }

    BOOL Create(LPCTSTR lpszWindowName, DWORD dwStyle,
		const RECT& rect, CWnd* pParentWnd, UINT nID,
		CFile* pPersist = NULL, BOOL bStorage = FALSE,
		BSTR bstrLicKey = NULL)
	{ return CreateControl(GetClsid(), lpszWindowName, dwStyle, rect, pParentWnd, nID,
		pPersist, bStorage, bstrLicKey); }

// Attributes
public:
	long GetLytAction();
	void SetLytAction(long);
	BOOL GetHasRuler();
	void SetHasRuler(BOOL);
	double GetViewScale();
	void SetViewScale(double);
	CsoLytSelection GetSelection();
	void SetSelection(LPDISPATCH);
	BOOL GetGridSnapable();
	void SetGridSnapable(BOOL);
	BOOL GetPageBreak();
	void SetPageBreak(BOOL);
	long GetGridSpacing();
	void SetGridSpacing(long);
	CsoLytElements GetElements();
	void SetElements(LPDISPATCH);
	BOOL GetContentChanged();
	void SetContentChanged(BOOL);
	long GetPaperSize();
	void SetPaperSize(long);
	short GetPaperLength();
	void SetPaperLength(short);
	short GetPaperWidth();
	void SetPaperWidth(short);
	short GetPaperMarginLeft();
	void SetPaperMarginLeft(short);
	short GetPaperMarginTop();
	void SetPaperMarginTop(short);
	CString GetLayoutName();
	void SetLayoutName(LPCTSTR);
	BOOL GetModified();
	void SetModified(BOOL);
	short GetPaperMarginRight();
	void SetPaperMarginRight(short);
	short GetPaperMarginBottom();
	void SetPaperMarginBottom(short);
	BOOL GetPropertyPageEnabled();
	void SetPropertyPageEnabled(BOOL);
	BOOL GetAutoSelected();
	void SetAutoSelected(BOOL);
	BOOL GetDragRulerLine();
	void SetDragRulerLine(BOOL);
	BOOL GetHasScrollBar();
	void SetHasScrollBar(BOOL);
	CsoLytRulerLines GetRulerLines();
	void SetRulerLines(LPDISPATCH);
	CsoStyle GetDefaultStyle();
	void SetDefaultStyle(LPDISPATCH);
	CsoTextStyle GetDefaultTextStyle();
	void SetDefaultTextStyle(LPDISPATCH);
	CsoLytPage GetPage();
	void SetPage(LPDISPATCH);
	BOOL GetShortcutEnabled();
	void SetShortcutEnabled(BOOL);
	long GetPaperOrientation();
	void SetPaperOrientation(long);

// Operations
public:
	void Refresh();
	void Connect(LPDISPATCH objSuperWorkspace);
	void PrintLayout(const VARIANT& ShowPrintDialog);
	BOOL PrintSetup();
	BOOL PageSetup();
	void LayoutSetup();
	BOOL DeviceToLogic(LPDISPATCH Point);
	BOOL LogicToDevice(LPDISPATCH Point);
	BOOL RegisterForRuntime(LPCTSTR strUser, LPCTSTR strCompany, LPCTSTR strSerialNo);
	BOOL SaveLayout();
	BOOL SaveLayoutAs(LPCTSTR strNewName, const VARIANT& bOverWrite);
	BOOL OpenLayout(LPCTSTR strLayoutName);
	void Disconnect();
	BOOL LoadTemplate(LPCTSTR strTemplateName);
	BOOL SaveAsTemplate(LPCTSTR strTemplateName);
	BOOL OutputToFile(LPCTSTR strPictureFileName, long nImageFileType);
	BOOL OutputToFile2(LPCTSTR strPictureFileName, long nImageFileType);
	BOOL OutputLayout(long hWnd, long hDC, LPDISPATCH MapRect, double dViewScale, BOOL IsPrinting);
	void ZoomToPageWidth();
	void ZoomToPageHeight();
	void ZoomToPage();
	void AboutBox();
};

/////////////////////////////////////////////////////////////////////////////
// CsoLytElement wrapper class

class CsoLytElement : public COleDispatchDriver
{
public:
	CsoLytElement() {}		// Calls COleDispatchDriver default constructor
	CsoLytElement(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
	CsoLytElement(const CsoLytElement& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}

// Attributes
public:
	long GetType();
	void SetType(long);
	LPDISPATCH GetBounds();
	void SetBounds(LPDISPATCH);
	LPDISPATCH GetStyle();
	void SetStyle(LPDISPATCH);
	BOOL GetEditable();
	void SetEditable(BOOL);
	CString GetTag();
	void SetTag(LPCTSTR);

// Operations
public:
	void SetPosition(LPDISPATCH newpostion);
	void Move(long xOffset, long yOffset);
	void AlignToGrid();
	BOOL HitTest(long x, long y);
	void ShowPropertyDlg();
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -