74 lines
2.1 KiB
C++
74 lines
2.1 KiB
C++
// XTPFlowGraphSelectionRect.h: interface for the CXTPFlowGraphSelectionRect class.
|
|
//
|
|
// This file is a part of the XTREME TOOLKIT PRO MFC class library.
|
|
// (c)1998-2013 Codejock Software, All Rights Reserved.
|
|
//
|
|
// THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
|
|
// RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
|
|
// CONSENT OF CODEJOCK SOFTWARE.
|
|
//
|
|
// THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
|
|
// IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
|
|
// YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
|
|
// SINGLE COMPUTER.
|
|
//
|
|
// CONTACT INFORMATION:
|
|
// support@codejock.com
|
|
// http://www.codejock.com
|
|
//
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
//{{AFX_CODEJOCK_PRIVATE
|
|
#if !defined(__XTPFLOWGRAPHVISIOSELECTIONRECT_H__)
|
|
#define __XTPFLOWGRAPHVISIOSELECTIONRECT_H__
|
|
//}}AFX_CODEJOCK_PRIVATE
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
class CXTPFlowGraphDrawContext;
|
|
class CXTPFlowGraphImage;
|
|
|
|
// constants are in the same order as rectangles appear after GetSizingRects method
|
|
enum SelectionRectHitTest
|
|
{
|
|
SelectionRectHitTestTopLeft = 0,
|
|
SelectionRectHitTestTopCenter,
|
|
SelectionRectHitTestTopRight,
|
|
SelectionRectHitTestMiddleRight,
|
|
SelectionRectHitTestBottomRight,
|
|
SelectionRectHitTestBottomCenter,
|
|
SelectionRectHitTestBottomLeft,
|
|
SelectionRectHitTestMiddleLeft,
|
|
SelectionRectHitTestNone
|
|
};
|
|
|
|
class CXTPFlowGraphSelectionRect
|
|
{
|
|
protected:
|
|
|
|
CXTPFlowGraphImage *m_pSizeSquare;
|
|
|
|
static int m_iSizeSquareSize;
|
|
|
|
void CreateSizeSquare();
|
|
|
|
static void GetSizingRects(const CRect &rc, CRect *rects);
|
|
|
|
public:
|
|
|
|
CXTPFlowGraphSelectionRect();
|
|
virtual ~CXTPFlowGraphSelectionRect();
|
|
|
|
void Draw(CXTPFlowGraphDrawContext* pDC, const CRect &rc);
|
|
|
|
static SelectionRectHitTest HitTest(const CRect &rc, const CPoint &point);
|
|
|
|
static void ResizeRect(CRect &rcRect, CSize szMinSize, CPoint ptOffset, SelectionRectHitTest hitPoint);
|
|
|
|
static UINT GetCursorBySelectionHitTest(SelectionRectHitTest hitTest);
|
|
};
|
|
|
|
#endif //#if !defined(__XTPFLOWGRAPHVISIOSELECTIONRECT_H__)
|