Initial
This commit is contained in:
56
imagelst/FTREE.HPP
Normal file
56
imagelst/FTREE.HPP
Normal file
@@ -0,0 +1,56 @@
|
||||
#ifndef _IMAGELIST_FOLDERTREE_HPP_
|
||||
#define _IMAGELIST_FOLDERTREE_HPP_
|
||||
#ifndef _COMMON_CALLBACK_HPP_
|
||||
#include <common/callback.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_RGBCOLOR_HPP_
|
||||
#include <common/rgbcolor.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_CALLBACKPOINTER_HPP_
|
||||
#include <common/cbptr.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_BLOCK_HPP_
|
||||
#include <common/block.hpp>
|
||||
#endif
|
||||
#ifndef _IMAGELIST_TREEVIEW_HPP_
|
||||
#include <imagelst/treeview.hpp>
|
||||
#endif
|
||||
#ifndef _IMAGELIST_IMAGELIST_HPP_
|
||||
#include <imagelst/imagelst.hpp>
|
||||
#endif
|
||||
|
||||
class TreeViewMessageHeader;
|
||||
class TreeViewDisplayInfo;
|
||||
class TreeViewKeyDown;
|
||||
class Rect;
|
||||
|
||||
class FolderTree : public TreeView, public ImageList
|
||||
{
|
||||
public:
|
||||
enum{FolderOpen=0,FolderClosed=2};
|
||||
enum HandlerType{SelChangedHandler,SelChangingHandler,ItemExpandingHandler,
|
||||
ItemExpandedHandler,BeginDragHandler,KeyDownHandler};
|
||||
FolderTree(GUIWindow &parentWindow,const Rect &winRect=Rect(1,1,320,200),int controlID=101,RGBColor bkColor=RGBColor(GetSysColor(COLOR_WINDOW)));
|
||||
virtual ~FolderTree();
|
||||
void insertHandler(HandlerType handlerType,PureCallback *lpCallback);
|
||||
void removeHandler(HandlerType handlerType);
|
||||
protected:
|
||||
virtual WORD tvnSelChanging(const TreeViewMessageHeader &treeViewMessageHeader);
|
||||
virtual WORD tvnSelChanged(const TreeViewMessageHeader &treeViewMessageHeader);
|
||||
virtual WORD tvnGetDispInfo(TreeViewDisplayInfo &treeViewDisplayInfo);
|
||||
virtual WORD tvnSetDispInfo(TreeViewDisplayInfo &treeViewDisplayInfo);
|
||||
virtual WORD tvnItemExpanding(const TreeViewMessageHeader &treeViewMessageHeader);
|
||||
virtual WORD tvnItemExpanded(const TreeViewMessageHeader &treeViewMessageHeader);
|
||||
virtual WORD tvnBeginDrag(const TreeViewMessageHeader &TreeViewMessageHeader);
|
||||
virtual WORD tvnBeginRDrag(const TreeViewMessageHeader &TreeViewMessageHeader);
|
||||
virtual WORD tvnDeleteItem(const TreeViewMessageHeader &treeViewMessageHeader);
|
||||
virtual WORD tvnBeginLabelEdit(const TreeViewDisplayInfo &treeViewDisplayInfo);
|
||||
virtual WORD tvnEndLabelEdit(const TreeViewDisplayInfo &treeViewDisplayInfo);
|
||||
virtual WORD tvnKeyDown(const TreeViewKeyDown &treeViewKeyDown);
|
||||
private:
|
||||
void callHandler(HandlerType handlerType,CallbackData &someCallbackData);
|
||||
void initHandlers(void);
|
||||
|
||||
Block<CallbackPointer> mEventHandlers;
|
||||
};
|
||||
#endif
|
||||
Reference in New Issue
Block a user