selectfeature.h

来自「在vc环境下」· C头文件 代码 · 共 58 行

H
58
字号
#pragma once

#include "resource.h"       // main symbols

#include "ArcCommands.h"
#include "MapToolBase.h"

/////////////////////////////////////////////////////////////////////////////
// CPan
class ATL_NO_VTABLE CSelectFeature : 
	public CComObjectRootEx<CComSingleThreadModel>,
	public CComCoClass<CSelectFeature, &CLSID_SelectFeature>,
	public CMapToolBase
{
public:
	CSelectFeature()
		: CMapToolBase( IDB_SELECTFEATURE, IDS_CAPTION_SELECTFEATURE, IDS_CATEGORY_COMMANDS, 0, 0, 0, 0, IDC_SELECTFEATUREMOVE, IDC_SELECTFEATUREMOVE)
	{
	}


	DECLARE_REGISTRY_RESOURCEID(IDR_SELECTFEATURE)

	DECLARE_PROTECT_FINAL_CONSTRUCT()

	BEGIN_COM_MAP(CSelectFeature)
		COM_INTERFACE_ENTRY(ICommand)
		COM_INTERFACE_ENTRY(ITool)
	END_COM_MAP()

	HRESULT FinalConstruct()
	{
		return S_OK;
	}

	void FinalRelease() 
	{
	}


public:
	STDMETHOD(get_Enabled) (VARIANT_BOOL * Enabled);
	STDMETHOD(OnMouseDown)(LONG Button, LONG Shift, LONG X, LONG Y);
	STDMETHOD(OnMouseMove)(LONG Button, LONG Shift, LONG X, LONG Y);
	STDMETHOD(OnMouseUp)(LONG Button, LONG Shift, LONG X, LONG Y);
	STDMETHOD(OnKeyDown)(LONG keyCode, LONG Shift);
	STDMETHOD(Refresh)(OLE_HANDLE hDC);
private:
	void Reset();
private:
	IPointPtr               m_cpStartPoint;
	INewEnvelopeFeedbackPtr m_cpEnvelopeFeedback;
	IActiveViewPtr          m_cpActiveView;

};

OBJECT_ENTRY_AUTO(__uuidof(SelectFeature), CSelectFeature)

⌨️ 快捷键说明

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