/******************************************************************************
 GMessageView.h

	Interface for the GMessageView class

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

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

#ifndef _H_GMessageView
#define _H_GMessageView

// Superclass Header
#include <JXSRTextBase.h>
class GMTextLink;

class GMessageView : public JXSRTextBase
{
public:

	GMessageView(JXMenuBar* menuBar, JXScrollbarSet* scrollbarSet, JXContainer* enclosure,
			 const HSizingOption hSizing, const VSizingOption vSizing,
			 const JCoordinate x, const JCoordinate y,
			 const JCoordinate w, const JCoordinate h);
	GMessageView(JXScrollbarSet* scrollbarSet, JXContainer* enclosure,
			 const HSizingOption hSizing, const VSizingOption vSizing,
			 const JCoordinate x, const JCoordinate y,
			 const JCoordinate w, const JCoordinate h);
	virtual ~GMessageView();
	
protected:

	virtual void	Receive(JBroadcaster* sender, const Message& message);
	virtual void	AdjustCursor(const JPoint& pt, const JXKeyModifiers& modifiers);

	virtual void	HandleMouseDown(const JPoint& pt, const JXMouseButton button,
									const JSize clickCount,
									const JXButtonStates& buttonStates,
									const JXKeyModifiers& modifiers);
	virtual void	HandleMouseUp(const JPoint& pt, const JXMouseButton button,
								  const JXButtonStates& buttonStates,
								  const JXKeyModifiers& modifiers);

private:

	GMTextLink* itsTextLink;
	
private:

	void GMessageViewX(JXScrollbarSet* scrollbarSet, JXContainer* enclosure,
			 const HSizingOption hSizing, const VSizingOption vSizing,
			 const JCoordinate x, const JCoordinate y,
			 const JCoordinate w, const JCoordinate h);
	
	// not allowed

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

};
#endif
