// Header for the definition of an object list /////////////////////////////////////////////////////////// #ifndef _CPACTLO_HPP_ #define _CPACTLO_HPP_ #if _MSC_VER >= 1000 #pragma once #endif // _MSC_VER >= 1000 //External Modules #include "CTL.h" //End of External Modules #include "EDACCust.hpp" class CPA_Editor_ComboBox; class CPA_Editor_CheckBox; //######################################################### class CPA_Editor_ObjectListControl : public CTL_Editor_Control { //Constructor / Destructor public: CPA_Editor_ObjectListControl(BOOL bReadOnly, BOOL bUserCanChangeAspect, BOOL bNoNames, BOOL bNoAlternateList, CTL_Editor_ControlList *_pclParentList, CString _csControlName, BOOL _bAcceptsToTakeNameOfData, //ANNECY BBB //Stefan Dumitrean 20-07-98 ( OAC buttons ) unsigned char ucInitialCurrentPair //End Stefan Dumitrean 20-07-98 ( OAC buttons ) ); ~CPA_Editor_ObjectListControl(); //Attributes public: protected: private: //for models AND instances: //calls the name list edit dialog in model mode, //and the object list editor in instance mode CTL_Editor_Button *m_p_oPushButtonToEdit; CTL_Editor_Button *m_p_oPushButtonToRename; //to rename the current object list (for an instance) //the list of list names in model mode //the list of names used in the IA text in instance mode CTL_Editor_ComboBox *m_p_oNamesCombo; CTL_Editor_ComboBox *m_p_oAlternateNamesCombo; //for instances only //if TRUE, the user cannot choose a name for an item in the list BOOL m_bNoNames; BOOL m_bNoAlternateList; //Member functions public: //Function called to create controls (must be called only once) 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); //Function called to make control Read Only void m_fn_vMakeReadOnly(); //Function called to make control Read-Write void m_fn_vMakeReadWrite(); //overload of the virtual member of CPA_Editor_Enumerable virtual void m_fn_vUpdateCurrentValue(short wAction = 0); //overload of the virtual member of CPA_Editor_Buttonable virtual void m_fn_vSetValue(short wAction); static void s_m_fn_vAButtonHasBeenClicked(class CTL_Editor_Button *_pclSenderButton, class CTL_Editor_Control *_pclParentControl, enum CTL_eButtonType _tdeType, long _lUserDefinedType, long _lUserDefinedCode); static void s_m_fn_vComboBoxSelChanged(class CTL_Editor_ComboBox *_pclSenderComboBox, class CTL_Editor_Control *_pclParentControl, enum CTL_eComboBoxType _tdeType, long _lUserDefinedType, long _lUserDefinedCode); static BOOL s_m_fn_bRenameButtonCanBeDisplayed(class CTL_Editor_BaseControl *_pclSenderBaseControl); static BOOL s_m_fn_bButtonMustBeEnabled(class CTL_Editor_BaseControl *_pclSenderBaseControl); static BOOL s_m_fn_bComboMustBeEnabled(class CTL_Editor_BaseControl *_pclSenderBaseControl); static BOOL s_m_fn_bAlternateComboMustBeDisplayed(class CTL_Editor_BaseControl *_pclSenderBaseControl); protected: private: }; #endif //_CPACTLO_HPP_