3#include "GUIPropertyMenuNodeBase.h"
4#include "DefinitionGUISNAP.h"
11 class CSNAPFeatureContainer;
13 class FL_EXPORT CGUIPropertyMenuNodeContainer :
public CGUIPropertyMenuNodeBase
15 SupportToDuplicateAbstractObject(CGUIPropertyMenuNodeContainer);
18 CGUIPropertyMenuNodeContainer();
19 virtual ~CGUIPropertyMenuNodeContainer();
21 virtual const CResult GenerateCode(CSNAPGenerateCodeInfo* pGenerateCodeInfo)
override;
23 virtual const CResult ConfigureMenu()
override;
25 virtual const CResult UpdatePropertyMenuItem()
override;
27 virtual const CResult OnInputParameter(CSNAPParameter* pParameter)
override;
28 virtual const CResult OnOutputParameter(CSNAPParameter* pParameter)
override;
30 virtual const CResult GetLastResultValue(Base::CFLString<wchar_t>& flsResult)
const override;
32 void SetConfigureValueItemCount(int32_t i32Count);
33 void SetConfigureValueItem(Base::CFLArray<Base::CFLString<wchar_t>>& flaValues);
35 int32_t GetValueItemCount()
const;
37 CGUIPropertyItemBase* GetSelectionIndexesItem()
const;
38 CGUIPropertyItemBase* GetCategoryItem(EControlType eType)
const;
40 CGUIPropertyItemBase* GetValueItem(EControlType eType, int32_t i32Index)
const;
41 CGUIPropertyItemBase* GetActivatedValueItem(int32_t i32Index)
const;
43 virtual const CResult SetItemValue(CGUIPropertyItemBase* pItem, Base::CFLString<wchar_t> flsValue);
44 virtual Base::CFLString<wchar_t> GetItemValue(CGUIPropertyItemBase* pItem)
const override;
46 DeclareGetClassType();
49 virtual const CResult InitializationProcedure()
override;
50 virtual const CResult ProcessProcedure()
override;
52 virtual const CResult PushBackProcedure();
53 virtual const CResult PushFrontProcedure();
54 virtual const CResult SetProcedure();
55 virtual const CResult ClearProcedure();
57 int32_t GetIndex(Base::CFLString<wchar_t> flsName)
const;
59 Base::CFLString<wchar_t> GetCategoryName(EControlType eType)
const;
61 Base::CFLString<wchar_t> GetValueItemName(int32_t i32Index)
const;
62 Base::CFLString<wchar_t> GetValueItemPathName(EControlType eType, int32_t i32Index)
const;
64 CPropertyButtonClickProcedure* MakeAddButtonImplement();
65 CPropertyButtonClickProcedure* MakeRemoveButtonImplement();
67 const CResult AddValueItem(
const Base::CFLString<wchar_t>& flsDefaultValue);
68 const CResult RemoveValueItem();
70 EControlType GetActivatedControlType()
const;
72 const CResult SetVisibleControlItem(EControlType eType,
bool bSet);
74 virtual Base::CFLString<wchar_t> GetPropertyData()
const = 0;
75 virtual const CResult UpdatePropertyMenuItemValue() = 0;
77 virtual Base::CFLString<wchar_t> GetCodeVariableType()
const = 0;
78 virtual Base::CFLString<wchar_t> GetCodeVariableInitValue()
const;
80 virtual CSNAPFeatureContainer* GetFeatureContainer()
const;
83 EDefinedParameterType m_eElementParameterType;
87 Base::CFLArray<Base::CFLString<wchar_t>> m_flaDropDownList;
88 Base::CFLString<wchar_t> m_flsItemDescription;
89 Base::CFLString<wchar_t> m_flsItemToolTip;
91 std::vector<CGUIPropertyItemBase*>* m_pVctValueItems;
93 EControlType m_eActivatedControlType;
95 static Base::CFLString<wchar_t> m_flsCategoryName[EControlTypeCount];
Property item base class.
Definition GUIPropertyItemBase.h:345
Definition D2DObject.h:12