112 lines
3.6 KiB
C++
112 lines
3.6 KiB
C++
// 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_
|