1 #if !defined(AFX_SUBEDITLIST_H__335134F3_37B4_4739_AC9B_4AFB32C37E60__INCLUDED_)
2 #define AFX_SUBEDITLIST_H__335134F3_37B4_4739_AC9B_4AFB32C37E60__INCLUDED_
6 #endif // _MSC_VER > 1000
7 // SubeditList.h : header file
12 class CInPlaceEdit : public CEdit
16 CInPlaceEdit(int iItem, int iSubItem, CString sInitText);
25 // ClassWizard generated virtual function overrides
26 //{{AFX_VIRTUAL(CInPlaceEdit)
28 virtual BOOL PreTranslateMessage(MSG* pMsg);
33 virtual ~CInPlaceEdit();
35 // Generated message map functions
37 //{{AFX_MSG(CInPlaceEdit)
38 afx_msg void OnKillFocus(CWnd* pNewWnd);
39 afx_msg void OnNcDestroy();
40 afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
41 afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
49 BOOL m_bESC; // To indicate whether ESC key was pressed
52 class CSubeditList : public CListCtrl
67 std::set<bool> m_readOnlyColumns; /**< Set of read-only columns */
68 std::set<int> m_binaryValueColumns;
69 std::vector<EditStyle> m_editStyle; /**< Edit style for each column */
70 std::vector<int> m_limitTextSize; /**< Character limit for each column */
71 std::vector<std::vector<String>> m_dropListFixedPattern; /**< Wildcard drop list fixed pattern for each cell */
75 void SetReadOnlyColumn(int nCol) { m_readOnlyColumns.insert(nCol); };
76 void SetBooleanValueColumn(int nCol) { m_binaryValueColumns.insert(nCol); };
77 void SetItemBooleanValue(int nItem, int nSubItem, bool value);
78 bool GetItemBooleanValue(int nItem, int nSubItem) const;
79 EditStyle GetEditStyle(int nCol) const;
80 void SetEditStyle(int nCol, EditStyle style);
81 int GetLimitTextSize(int nCol) const;
82 void SetLimitTextSize(int nCol, int nLimitTextSize);
83 String GetDropListFixedPattern(int nItem, int nSubItem) const;
84 void SetDropListFixedPattern(int nItem, int nSubItem, const String& fixedPattern);
87 // ClassWizard generated virtual function overrides
88 //{{AFX_VIRTUAL(CSubeditList)
93 virtual ~CSubeditList();
95 CInPlaceEdit *EditSubLabel(int nItem, int nCol);
96 void EditSubLabelWildcardDropList(int nItem, int nCol);
97 // Generated message map functions
99 //{{AFX_MSG(CSubeditList)
100 // NOTE - the ClassWizard will add and remove member functions here.
101 afx_msg int HitTestEx(CPoint& point, int* col) const;
102 afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
103 afx_msg void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
104 afx_msg void OnEndLabelEdit(NMHDR* pNMHDR, LRESULT* pResult);
105 afx_msg void OnBeginLabelEdit(NMHDR* pNMHDR, LRESULT* pResult);
106 afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
109 DECLARE_MESSAGE_MAP()
112 //{{AFX_INSERT_LOCATION}}
113 // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
115 #endif // !defined(AFX_SUBEDITLIST_H__335134F3_37B4_4739_AC9B_4AFB32C37E60__INCLUDED_)