Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HOpConstructRectangle.h
00001 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc.
00002 //
00003 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
00004 // and considered a trade secret as defined under civil and criminal statutes.
00005 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
00006 // unauthorized use or misappropriation of its trade secrets.  Use of this information
00007 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
00008 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
00009 
00010 // HOpConstructRectangle.h : interface of the HOpConstruction class
00011 // draws a 2D box in view port based on pointer first position and last position
00012 // Derived classes access the Points for the rectangle in HBaseOperator members
00013 // m_ptFirst and m_ptLast; Points are stored in window space.
00014 
00015 
00016 #ifndef _HOPCONSTRUCTRECTANGLE_H
00017 #define _HOPCONSTRUCTRECTANGLE_H
00018 
00019 #ifdef H_PACK_8
00020 #pragma pack(push)
00021 #pragma pack(8)
00022 #endif
00023 
00024 #include "HTools.h"
00025 #include "HBaseOperator.h"
00026 
00028 
00039 class MVO_API HOpConstructRectangle : public HBaseOperator
00040 {
00041 public:
00050     HOpConstructRectangle(HBaseView* view, int DoRepeat=0, int DoCapture=1, bool UseCenterMarker=true);
00051     virtual ~HOpConstructRectangle();
00052 
00053 
00057     virtual const char * GetName();  
00058 
00064     virtual HBaseOperator * Clone();
00065      
00066 
00067 
00073     virtual int OnLButtonDown(HEventInfo &hevent);
00074 
00082     virtual int OnLButtonDownAndMove(HEventInfo &hevent);
00083   
00089     virtual int OnLButtonUp(HEventInfo &hevent); 
00095     virtual int OnRButtonUp(HEventInfo &hevent); 
00096 
00097 protected:
00098     
00099     bool    m_bRectangleExists; 
00100     HPoint  m_ptRectangle[2];   
00101     char    m_pSavedVisibility[MVO_BUFFER_SIZE];
00102     char    m_pSavedColor[MVO_BUFFER_SIZE];
00103 
00104 private:
00105     bool    m_bUseCenterMarker; 
00106 };
00107 
00108 #ifdef H_PACK_8
00109 #pragma pack(pop)
00110 #endif
00111 
00112 #endif
00113 
00114 
00115 
00116