/* Header for the definition of a boolean control */ /*//////////////////////////////////////////////////*/ #ifndef _CTL_INTEGER_CONTROL_ #define _CTL_INTEGER_CONTROL_ #if _MSC_VER >= 1000 #pragma once #endif /* _MSC_VER >= 1000*/ #include "CTL_Ctl.hpp" class CTL_Editor_Static; class CTL_Editor_SpinButton; class CTL_Editor_Edit; class CTL_Editor_ControlList; class CPA_EXPORT CTL_Editor_IntegerControl : public CTL_Editor_Control { /*Constructor / Destructor*/ public: CTL_Editor_IntegerControl(/*unsigned */long lMin, /*unsigned */long lMax, char cDataLength, BOOL bSigned, BOOL bReadOnly, CTL_tdeControlSpacingType tdeSpacingType, BOOL bUserCanChangeAspect, CTL_Editor_ControlList *_pclParentList, CString _csControlName, BOOL _bAcceptNameFromData, /*ANNECY BBB*/ /*Stefan Dumitrean 20-07-98 ( OAC buttons )*/ unsigned char ucInitialCurrentPair /*End Stefan Dumitrean 20-07-98 ( OAC buttons )*/ ); ~CTL_Editor_IntegerControl(); /*Attributes*/ public: /*For Read-Write mode*/ CTL_Editor_Edit *m_pclCurrentEdit; CTL_Editor_SpinButton *m_pclSpin; /*For Read Only mode*/ CTL_Editor_Static *m_pclCurrentStatic; protected: private: BOOL m_bIsAnUnsignedLong; long m_lMaxValue; long m_lMinValue; /*If the Data is an unsigned long*/ unsigned long m_ulMinValue; unsigned long m_ulMaxValue; /*Member functions*/ public: /*Function called to create associated control*/ BOOL m_fn_bCreateControl(CWnd *pclParentWnd); /*Function called to display the associated control(s) of the char.*/ void m_fn_vDisplay(); /*Function called to update the associated control of the char.*/ void m_fn_vUpdate(CTL_tdeUpdateReason _eReason = CTL_UPDATE_REASON__NO_REASON_GIVEN, long _lUserDefinedReason = 0); /*Function called to update parent window in case of values changes.*/ void m_fn_vUpdateParent(CTL_tdeUpdateReason eReason = CTL_UPDATE_REASON__NO_REASON_GIVEN, long _lUserDefinedReason = 0); /*Function called to update the slider when the edit changes*/ void m_fn_vUpdateSpin(long lNewValue, CTL_tdeUpdateReason _eReason = CTL_UPDATE_REASON__NO_REASON_GIVEN, long _lUserDefinedReason = 0); /*Function called to update the edit when the slider changes*/ void m_fn_vUpdateEdit(long lNewValue, CTL_tdeUpdateReason _eReason = CTL_UPDATE_REASON__NO_REASON_GIVEN, long _lUserDefinedReason = 0); /*Function called to make control Read Only*/ void m_fn_vMakeReadOnly(); /*Function called to make control Read-Write*/ void m_fn_vMakeReadWrite(); static BOOL s_m_fn_bStaticMustBeDisplayed(class CTL_Editor_BaseControl *_pclSenderBaseControl); static BOOL s_m_fn_bEditMustBeDisplayed(class CTL_Editor_BaseControl *_pclSenderBaseControl); static BOOL s_m_fn_bSpinMustBeDisplayed(class CTL_Editor_BaseControl *_pclSenderBaseControl); protected: private: }; #endif /*_CTL_INTEGER_CONTROL_*/