#ifndef _IMAGELIST_TREEVIEWKEYDOWN_HPP_ #define _IMAGELIST_TREEVIEWKEYDOWN_HPP_ #ifndef _COMMON_NOTIFYMESSAGEHEADER_HPP_ #include #endif #ifndef _IMAGELIST_TREEVIEWITEM_HPP_ #include #endif class TreeViewKeyDown : private TV_KEYDOWN { public: TreeViewKeyDown(void); TreeViewKeyDown(const TreeViewKeyDown &someTreeViewKeyDown); TreeViewKeyDown(const TV_KEYDOWN &someTVKEYDOWN); virtual ~TreeViewKeyDown(); TreeViewKeyDown &operator=(const TreeViewKeyDown &someTreeViewKeyDown); TreeViewKeyDown &operator=(const TV_KEYDOWN &someTVKEYDOWN); BOOL operator==(const TreeViewKeyDown &someTreeViewKeyDown)const; BOOL operator==(const TV_KEYDOWN &someTVKEYDOWN)const; operator TV_KEYDOWN &(void); NotifyMessageHeader nmHeader(void)const; void nmHeader(const NotifyMessageHeader &someNotifyMessageHeader); WORD virtualKey(void)const; void virtualKey(WORD virtualKey); UINT flags(void)const; void flags(UINT flags); private: void init(void); }; inline TreeViewKeyDown::TreeViewKeyDown(void) { init(); } inline TreeViewKeyDown::TreeViewKeyDown(const TreeViewKeyDown &someTreeViewKeyDown) { *this=someTreeViewKeyDown; } inline TreeViewKeyDown::TreeViewKeyDown(const TV_KEYDOWN &someTVKEYDOWN) { *this=someTVKEYDOWN; } inline TreeViewKeyDown::~TreeViewKeyDown() { } inline TreeViewKeyDown &TreeViewKeyDown::operator=(const TreeViewKeyDown &someTreeViewKeyDown) { nmHeader(someTreeViewKeyDown.nmHeader()); virtualKey(someTreeViewKeyDown.virtualKey()); flags(someTreeViewKeyDown.flags()); return *this; } inline TreeViewKeyDown &TreeViewKeyDown::operator=(const TV_KEYDOWN &someTVKEYDOWN) { (TV_KEYDOWN&)*this=someTVKEYDOWN; return *this; } inline BOOL TreeViewKeyDown::operator==(const TreeViewKeyDown &someTreeViewKeyDown)const { return (nmHeader()==someTreeViewKeyDown.nmHeader()&& virtualKey()==someTreeViewKeyDown.virtualKey()&& flags()==someTreeViewKeyDown.flags()); } inline BOOL TreeViewKeyDown::operator==(const TV_KEYDOWN &someTVKEYDOWN)const { return (nmHeader()==NotifyMessageHeader(someTVKEYDOWN.hdr)&& virtualKey()==someTVKEYDOWN.wVKey&& flags()==someTVKEYDOWN.flags); } inline TreeViewKeyDown::operator TV_KEYDOWN &(void) { return *this; } inline NotifyMessageHeader TreeViewKeyDown::nmHeader(void)const { return TV_KEYDOWN::hdr; } inline void TreeViewKeyDown::nmHeader(const NotifyMessageHeader &someNotifyMessageHeader) { TV_KEYDOWN::hdr=(NMHDR&)someNotifyMessageHeader; } inline WORD TreeViewKeyDown::virtualKey(void)const { return TV_KEYDOWN::wVKey; } inline void TreeViewKeyDown::virtualKey(WORD virtualKey) { TV_KEYDOWN::wVKey=virtualKey; } inline UINT TreeViewKeyDown::flags(void)const { return TV_KEYDOWN::flags; } inline void TreeViewKeyDown::flags(UINT flags) { TV_KEYDOWN::flags=flags; } inline void TreeViewKeyDown::init(void) { ::memset(&((TV_KEYDOWN&)*this),0,sizeof(TV_KEYDOWN)); } #endif