119 lines
3.7 KiB
C++
119 lines
3.7 KiB
C++
/* Header for the definition of an enum characteristic*/
|
|
/*/////////////////////////////////////////////////////////*/
|
|
#ifndef _CTL_ENUM_CONTROL_
|
|
#define _CTL_ENUM_CONTROL_
|
|
|
|
#if _MSC_VER >= 1000
|
|
#pragma once
|
|
#endif /* _MSC_VER >= 1000*/
|
|
|
|
#include "CTL_Ctl.hpp"
|
|
#include "CTL\Others\CTL_ClBk.hpp"
|
|
|
|
class CTL_Editor_EnumDescriptor;
|
|
class CTL_Editor_ComboBox;
|
|
class CTL_Editor_Static;
|
|
class CTL_Editor_ControlList;
|
|
|
|
class CPA_EXPORT CTL_Editor_EnumControl : public CTL_Editor_Control
|
|
{
|
|
/*Constructor / Destructor*/
|
|
public:
|
|
CTL_Editor_EnumControl(BOOL bReadOnly,
|
|
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_EnumControl();
|
|
|
|
/*Attributes*/
|
|
public:
|
|
CTL_Editor_EnumDescriptor *m_pclEnumDescriptor;
|
|
|
|
protected:
|
|
|
|
/* CPA2 ASilvescu 98-05-21*/
|
|
/*private:*/
|
|
/* End CPA2 ASilvescu 98-05-21*/
|
|
CTL_Editor_ComboBox *m_pclComboBox;
|
|
CTL_Editor_Static *m_pclStatic;
|
|
|
|
CTL_td_p_fn_vBuildEnumDescriptor m_td_pri_fn_vBuildEnumDesciptor_CallBack;
|
|
|
|
BOOL m_pri_bMustSortNamesInComboBox;
|
|
|
|
/*Member functions*/
|
|
public:
|
|
/*Function called to create associated control*/
|
|
BOOL m_fn_bCreateControl(CWnd *pclParentWnd);
|
|
|
|
/*Function called to display the associated control 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);
|
|
|
|
/*overload of the virtual member of CTL_Editor_Enumerable*/
|
|
virtual void m_fn_vUpdateCurrentValue();
|
|
|
|
/*Function called to make control Read Only*/
|
|
void m_fn_vMakeReadOnly();
|
|
|
|
/*Function called to make control Read-Write*/
|
|
void m_fn_vMakeReadWrite();
|
|
|
|
/**/
|
|
void m_pub_fn_vMustSortNamesInComboBox(BOOL _bMustSort = TRUE);
|
|
|
|
/**/
|
|
void m_fn_vGetNewEnumDescriptor();
|
|
|
|
/*Function called when a "DropDown" message is sent to the ComboBox*/
|
|
/*Calls the calback m_td_pri_fn_vConstructEnumerableListCallBack if it exists*/
|
|
void m_pub_fn_vBuildEnumDescriptor();
|
|
|
|
virtual void m_fn_vSetEditedData(CTL_Editor_Data *);
|
|
/*ROMTEAM Selection (Cristian Stegaru 24/03/98)*/
|
|
int m_fn_iSetCanISelect_CallBack (CTL_tpf_iCheckString pfCheckString);
|
|
/*ENDROMTEAM Selection (Cristian Stegaru)*/
|
|
|
|
/*Call backs*/
|
|
/*/////////////*/
|
|
|
|
void m_pub_fn_vSetBuildEnumDesciptor_CallBack(CTL_td_p_fn_vBuildEnumDescriptor _p_fn_vCallBack);
|
|
|
|
static BOOL s_m_fn_bStaticCanBeDisplayed(class CTL_Editor_BaseControl *_pclSenderBaseControl);
|
|
static BOOL s_m_fn_bComboBoxCanBeDisplayed(class CTL_Editor_BaseControl *_pclSenderBaseControl);
|
|
|
|
/*When selection has been changed in a Combo box*/
|
|
static void s_m_fn_vComboBoxSelChanged(class CTL_Editor_ComboBox *_pclSenderComboBox,
|
|
class CTL_Editor_Control *_pclParentControl,
|
|
enum CTL_eComboBoxType _tdeType,
|
|
long _lUserDefinedType,
|
|
long _lUserDefinedCode);
|
|
|
|
/*When Combo box has been dropped down (ie open)*/
|
|
static void s_m_fn_vComboBoxDroppedDown(class CTL_Editor_ComboBox *_pclSenderComboBox,
|
|
class CTL_Editor_Control *_pclParentControl,
|
|
enum CTL_eComboBoxType _tdeType,
|
|
long _lUserDefinedType,
|
|
long _lUserDefinedCode);
|
|
|
|
protected:
|
|
|
|
private:
|
|
|
|
};
|
|
|
|
#endif /*_CTL_ENUM_CONTROL_*/
|