//LMCListView.h

#include <LView.h>
#include <LListener.h>
#include <LBroadcaster.h>
#include <LPeriodical.h>
#include <GSUtil.h>

#include <MiniCadCallBacks.h>

using namespace PP_PowerPlant;

class CMCListView : public LView,
					public LListener,
					public LBroadcaster,
					public LPeriodical {
	
	public:
	
	enum {class_ID = 'LstV'};
	
	CMCListView(LStream *inStream);
	
	static CMCListView*		CreateMCListViewStream(LStream *inStream);
	void DrawSelf();
	
	// this is from LListener so we can communicate with the scale popup
	void ListenToMessage(MessageT inMessage, void *ioParam);
	
	// this is from LPeriodical so we can track the mouse during idle time
	void SpendTime(const EventRecord&);

	private:
	const short kBorder;

	Boolean fSizeIsSet;
};