reman3/Rayman_X/cpa/public/CTL/Controls/CTL_CtlF.hpp

96 lines
2.9 KiB
C++

/* Header for the definition of a decimal control */
/*//////////////////////////////////////////////////*/
#ifndef _CTL_DECIMAL_CONTROL_
#define _CTL_DECIMAL_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_DecimalControl : public CTL_Editor_Control
{
/*Constructor / Destructor*/
public:
CTL_Editor_DecimalControl(long double ldMin,
long double ldMax,
char cDataLength,
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_DecimalControl();
/*Attributes*/
public:
long double m_ldMaxValue;
long double m_ldMinValue;
/*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:
/*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 double ldNewValue,
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 double ldNewValue,
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_DECIMAL_CONTROL_*/