/******************************************************************************
 GAddressBookTreeDir.h

	Interface for the GAddressBookTreeDir class

	Copyright © 1998 by Glenn W. Bach.  All rights reserved.
	
	Base code generated by Codemill v0.1.0

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

#ifndef _H_GAddressBookTreeDir
#define _H_GAddressBookTreeDir

//includes

// Superclass Header
#include <GMManagedDirector.h>
#include <JPrefObject.h>

class JXTextButton;
class GAddressBookTreeWidget;
class JTree;
class JXTimerTask;
class JXTextMenu;
class JXToolBar;
class JXImage;

class GAddressBookTreeDir : public GMManagedDirector, public JPrefObject
{
public:

public:

	GAddressBookTreeDir(JXDirector* supervisor);
	virtual ~GAddressBookTreeDir();

	void	SaveOnDeath();
	void	EditToolBar();

	virtual JXImage*	GetMenuIcon() const;
	virtual JBoolean	GetShortcut(JString* shortcut) const;
	virtual JBoolean	GetID(JString* id) const;

protected:

	virtual void	Receive(JBroadcaster* sender, const Message& message);
	virtual void	ReadPrefs(istream& input);
	virtual void	WritePrefs(ostream& output) const;

private:

	JTree*					itsTree;
	JXTextButton*			itsCloseButton;
	GAddressBookTreeWidget*	itsWidget;
	JXTimerTask*			itsTimerTask;
	JBoolean				itsPrefsOK;
	JXTextMenu*				itsHelpMenu;
	JXToolBar*				itsToolBar;
	JXImage*				itsMenuIcon;

private:

	void HandleHelpMenu(const JIndex index);

	void BuildWindow();

	// not allowed

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

public:

// Broadcaster message types

// Broadcaster message classes
};

/******************************************************************************
 GetMenuIcon (public)

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

inline JXImage*
GAddressBookTreeDir::GetMenuIcon()
	const
{
	return itsMenuIcon;
}



#endif
