diff options
Diffstat (limited to 'Source/FLTKDialog/FLTKPropertyList.h')
-rw-r--r-- | Source/FLTKDialog/FLTKPropertyList.h | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/Source/FLTKDialog/FLTKPropertyList.h b/Source/FLTKDialog/FLTKPropertyList.h index ef1318d..ea98609 100644 --- a/Source/FLTKDialog/FLTKPropertyList.h +++ b/Source/FLTKDialog/FLTKPropertyList.h @@ -23,6 +23,8 @@ public: int m_nItemType; std::string m_cmbItems; bool m_Removed; + bool m_NewValue; + bool m_Dirty; public: PropertyItem( std::string propName, std::string curValue, @@ -30,12 +32,14 @@ public: int nItemType, std::string cmbItems ) { - m_HelpString = helpString; - m_Removed = false; - m_propName = propName; - m_curValue = curValue; - m_nItemType = nItemType; - m_cmbItems = cmbItems; + m_HelpString = helpString; + m_propName = propName; + m_curValue = curValue; + m_nItemType = nItemType; + m_cmbItems = cmbItems; + m_Removed = false; + m_NewValue = true; + m_Dirty = false; } }; @@ -73,11 +77,15 @@ public: const char* value, const char* helpString, int type, - const char* comboItems); - std::set<PropertyItem*> GetItems() + const char* comboItems, + bool reverseOrder); + void RemoveProperty(const char* name); + std::set<PropertyItem*> & GetItems() { return m_PropertyItems; } + + void InvalidateList(void); void Invalidate(void) { // fltk redraw(); @@ -93,18 +101,24 @@ public: PropertyItem* GetItem(int index); PropertyItem* GetItemDataPtr(int m_curSel); + void ClearDirty(void) { m_Dirty = false; } + void SetDirty(void) { m_Dirty = true; } + bool IsDirty(void) const { return m_Dirty; } + // Implementation public: virtual ~PropertyList(); protected: - int AddPropItem(PropertyItem* pItem); + int AddPropItem(PropertyItem* pItem,bool reverseOrder); std::set<PropertyItem*> m_PropertyItems; CMakeSetupGUIImplementation * m_CMakeSetup; + bool m_Dirty; + }; |