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.
61 lines
1.7 KiB
61 lines
1.7 KiB
//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ====
|
|
//
|
|
// Defines the cordon tool. The cordon tool defines a rectangular
|
|
// volume that acts as a visibility filter. Only objects that intersect
|
|
// the cordon are rendered in the views. When saving the MAP file while
|
|
// the cordon tool is active, only brushes that intersect the cordon
|
|
// bounds are saved. The cordon box is replaced by brushes in order to
|
|
// seal the map.
|
|
//
|
|
//=============================================================================
|
|
|
|
#ifndef CORDON3D_H
|
|
#define CORDON3D_H
|
|
#pragma once
|
|
|
|
|
|
#include "Box3D.h"
|
|
#include "ToolInterface.h"
|
|
|
|
|
|
class CChunkFile;
|
|
class CSaveInfo;
|
|
class CMapWorld;
|
|
class CMapView2D;
|
|
class CMapView3D;
|
|
|
|
|
|
enum ChunkFileResult_t;
|
|
|
|
|
|
class Cordon3D : public Box3D
|
|
{
|
|
typedef Box3D BaseClass;
|
|
|
|
public:
|
|
|
|
Cordon3D(void);
|
|
|
|
// CBaseTool implementation.
|
|
virtual void OnActivate();
|
|
virtual ToolID_t GetToolID(void) { return TOOL_EDITCORDON; }
|
|
virtual void RefreshToolState();
|
|
|
|
virtual bool OnLMouseDown2D(CMapView2D *pView, UINT nFlags, const Vector2D &vPoint);
|
|
virtual bool OnLMouseUp2D(CMapView2D *pView, UINT nFlags, const Vector2D &vPoint);
|
|
virtual bool OnMouseMove2D(CMapView2D *pView, UINT nFlags, const Vector2D &vPoint);
|
|
virtual bool OnKeyDown2D(CMapView2D *pView, UINT nChar, UINT nRepCnt, UINT nFlags);
|
|
virtual bool OnKeyDown3D(CMapView3D *pView, UINT nChar, UINT nRepCnt, UINT nFlags);
|
|
|
|
virtual void RenderTool2D( CRender2D *pRender );
|
|
|
|
private:
|
|
|
|
void OnDelete();
|
|
void OnEscape();
|
|
|
|
static Vector m_vecLastMins; // Last mins & maxs the user dragged out with this tool;
|
|
static Vector m_vecLastMaxs; // used to fill in the third axis when starting a new box.
|
|
};
|
|
|
|
#endif // CORDON3D_H
|