
#ifndef ___V_TREE_VIEW_M_H___
#define ___V_TREE_VIEW_M_H___

extern "C"  {

class TreeListView;
struct TreeListViewData;
struct TreeListViewNotif;

class VTreeViewImp {
public:
	static void	TLVDataFunc(TreeListView *		tlview,
							TreeListViewData *	data,
							bool				set);
	static void TLVNotifFunc(TreeListView *			tlview,
							 TreeListViewNotif *	notif);
	static VError		VTreeViewImp::add_row(
					VTreeView *view,
					VTreeNode *node,
					void *parent_key,
					void *next_key);
	static VError		remove_row(VTreeView *view, void *key);
	static VTreeNode *	get_row(const VTreeView *view, void *key);
	static VError 		set_row(VTreeView *view, VTreeNode *node);

	friend class VTreeView;
};

} // extern "C"

#endif
