#ifndef __IMFFramePart__
#define __IMFFramePart__
/****************************************************************************************

		IMFFramePart.h

		Copyright: (c) 2001 Eovia Corp. All rights reserved.

		Author:	EricG
		Date:	12/2/99

		COM interface to internal frame objects.

		Revision History

		when		who			what & why
		==========	==========	======================================================

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

#if CP_PRAGMA_ONCE
#pragma once
#endif

#include "MCCompObj.h"


MCDEFINE_GUID(IID_IMFFramePart, 0x9729bcc0, 0xa902, 0x11d3, 0x8f, 0xb5, 0x0, 0x20, 0x78, 0xb0, 0xb, 0xd5);
/// \addtogroup MCF
/// \{

///A part that draws lines on its sides.
struct IMFFramePart : public IMCUnknown
{
	virtual void		MCCOMAPI SetFrameColor	(const TMCRGBColor& inFrameColor)=0;
	virtual void		MCCOMAPI SetFrameWidth	(int16 inFrameWidth)=0;
	virtual void		MCCOMAPI SetFrameKind	(int16 inFrameKind)=0;
	
	virtual void		MCCOMAPI GetFrameColor	(TMCRGBColor& outFrameColor)=0;
	virtual int16		MCCOMAPI GetFrameWidth	()=0;
	virtual int16		MCCOMAPI GetFrameKind	()=0;

};


//Constants for IMFFramePart::Get/SetFrameKind
enum 
{
	kNoFrameBorder			= 0x0000,	//draws nothing
	kLeftFrameBorder		= 0x0001,	//draws a line on the left side of the part
	kBottomFrameBorder		= 0x0002,	//...	
	kRightFrameBorder		= 0x0004,	//...
	kTopFrameBorder			= 0x0008,	//...
	kAllFrameBorders		= 0x000F,	//draws a rect arround the part
};

/// \}
#endif

