formsnapparms.h

Go to the documentation of this file.
00001 /**
00002  * \file formodbc.h <mgui/formodbc.h>
00003  * \brief MGUI::PANEL_ODBC class definitions
00004  *
00005  * \if NODOC
00006  * $Id: formsnapparms.h_v 1.1 2004/02/04 21:43:56 scowan Exp $
00007  *
00008  * $Log: formsnapparms.h_v $
00009  * Revision 1.1  2004/02/04 21:43:56  scowan
00010  * Initial revision
00011  *
00012  *
00013  * \endif
00014 **/
00015 
00016 #ifndef  INC_MGUI_FORMSNAPPARMS_H
00017 #define  INC_MGUI_FORMSNAPPARMS_H
00018 
00019 #ifndef  INC_MGUI_CTRL_H
00020 #include <mgui/ctrl.h>
00021 #endif
00022 
00023 #ifndef  INC_MGUI_COMBOBOX_H
00024 #include <mgui/combobox.h>
00025 #endif
00026 
00027 #ifndef  INC_RVC_VECTTOOL_H
00028 #include <rvc/vecttool.h>
00029 #endif
00030 
00031 class RVC::VECTORTOOLKIT::SNAPPARMS::PANEL : public MGUI::FORM_COMPOSITE {
00032    public:
00033       enum PROMPT {
00034          PROMPT_SnapElement =       0x0001,
00035          PROMPT_SnapType =          0x0002,
00036          PROMPT_SnapEnd =           0x0004,
00037          PROMPT_SnapDistance =      0x0008,
00038          PROMPT_SnapBackAngle =     0x0010,
00039          PROMPT_RemoveOvershoots =  0x0020,
00040          PROMPT_CrossLines =        0x0040,
00041          PROMPT_VectorSnapDist =    0x0080,
00042          PROMPT_PixelSnapDist =     0x0100
00043          };
00044 
00045       //! Constructor.
00046       PANEL (
00047          );
00048 
00049       //! Destructor.
00050       virtual ~PANEL (
00051          );
00052 
00053       //! Create
00054       ERRVALUE Create (
00055          MGUI::LAYOUT_PANE_BASE& ParentPane, //!< Parent pane
00056          PROMPT PromptSet,
00057          MGUI::LAYOUT_SIZEALIGN sizealign = MGUI::LAYOUT_SIZEALIGN_FixedWidth
00058          );
00059          
00060       int GetAngleUnits (
00061          ) const;
00062          
00063       int GetDistanceUnits (
00064          ) const;
00065          
00066       const RVC::VECTORTOOLKIT::SNAPPARMS& GetSnapParms (
00067          ) const;
00068 
00069       void SetAngleUnits (
00070          int AngleUnit
00071          );
00072          
00073       void SetDistanceUnits (
00074          int DistUnit
00075          );
00076          
00077       void SetScaleToMeters (
00078          double ScaleToMeters
00079          );
00080          
00081       void SetSnapParms (
00082          const RVC::VECTORTOOLKIT::SNAPPARMS& SnapParms
00083          );
00084 
00085    private:
00086       enum SPECIALUNITS {
00087          SPECIALUNIT_Pixels = 254,
00088          SPECIALUNIT_ObjectUnits
00089          };
00090    
00091       RVC::VECTORTOOLKIT::SNAPPARMS m_SnapParms;
00092       double m_ScaleToMeters;
00093       int m_AngleViewUnit;
00094       int m_DistViewUnit;
00095    
00096       MGUI::FORM_COMBOBOX_T<RVC::VECTORTOOLKIT::SNAPPARMS::PANEL> m_SnapElement;
00097       MGUI::FORM_COMBOBOX_T<RVC::VECTORTOOLKIT::SNAPPARMS::PANEL> m_SnapEnd;
00098       MGUI::FORM_COMBOBOX_T<RVC::VECTORTOOLKIT::SNAPPARMS::PANEL> m_SnapType;
00099       MGUI::CTRL_TOGGLEBUTTON_T<RVC::VECTORTOOLKIT::SNAPPARMS::PANEL> m_RemoveOvershoots;
00100       MGUI::CTRL_TOGGLEBUTTON_T<RVC::VECTORTOOLKIT::SNAPPARMS::PANEL> m_CrossLines;
00101       MGUI::FORM_EDIT_NUMBER_T<RVC::VECTORTOOLKIT::SNAPPARMS::PANEL> m_SnapDist;
00102       MGUI::CTRL_COMBOBOX_T<RVC::VECTORTOOLKIT::SNAPPARMS::PANEL> m_SnapDistUnits;
00103       MGUI::FORM_EDIT_NUMBER_T<RVC::VECTORTOOLKIT::SNAPPARMS::PANEL> m_SnapBackAngle;
00104       MGUI::CTRL_COMBOBOX_T<RVC::VECTORTOOLKIT::SNAPPARMS::PANEL> m_SnapBackUnits;
00105 
00106       virtual double v_GetPixelScale ();
00107       virtual void v_OnChanged ();
00108       
00109       void OnCrossLines ();
00110       void OnRemoveOvershoots ();
00111       void OnSnapBackAngle ();
00112       void OnSnapBackUnits ();
00113       void OnSnapDist ();
00114       void OnSnapDistUnits ();
00115       void OnSnapElement ();
00116       void OnSnapEnd ();
00117       void OnSnapType ();
00118       
00119       void SetSnapCtrls ();
00120       void SetSnapState ();
00121    
00122    };
00123    
00124 DEFINE_ENUM_OPERATORS(RVC::VECTORTOOLKIT::SNAPPARMS::PANEL::PROMPT);
00125    
00126 #endif      // INC_MGUI_FORMSNAPPARMS_H

Generated on Tue Dec 14 13:18:17 2004 for TNTsdk by  doxygen 1.3.8-20040913