/******************************************************************************
 GMailFileTreeNode.h

	Interface for GMailFileTreeNode class.

	Copyright <A9> 1997 by Glenn W. Bach. All rights reserved.

 ******************************************************************************/

#ifndef _H_GMailFileTreeNode
#define _H_GMailFileTreeNode

#include <JUNIXDirEntry.h>
#include <GSimpleFileTreeNode.h>

class GSimpleFileTree;

class GMailFileTreeNode : public GSimpleFileTreeNode
{
public:

	GMailFileTreeNode(GSimpleFileTree* tree, JUNIXDirEntry* 	entry,
						const char* name = "BASE",
						const JBoolean isBranch = kTrue);

	GMailFileTreeNode(GSimpleFileTree* tree, JUNIXDirEntry* 	entry,
						JNamedTreeNode* parent = NULL,
						const char* name = "BASE",
						const JBoolean isBranch = kTrue);

	virtual ~GMailFileTreeNode();

protected:

	virtual JBoolean	OKToAppendChild(const JUNIXDirEntry& entry);
	virtual void		CreateChild(JUNIXDirEntry* entry, 
									GSimpleFileTreeNode** node,
									const JBoolean isBranch,
									const JBoolean append);
	
private:


private:

	// not allowed

	GMailFileTreeNode(const GMailFileTreeNode& source);
	const GMailFileTreeNode& operator=(const GMailFileTreeNode& source);

};


#endif
