using System.Web.UI.WebControls;
using System.Security.Permissions;
namespace System.Web.DynamicData {
///
/// Interface implemented by objects that know how to create field temnplates
///
public interface IFieldTemplateFactory {
///
/// Initialize the FieldTemplateFactory, passing it the meta model that it will work with
///
void Initialize(MetaModel model);
///
/// Create a field template based on various pieces of data
///
/// The MetaColumn for which the field template is needed
/// The mode (Readonly, Edit, Insert) for which the field template is needed
/// The UIHint (if any) that should affect the field template lookup
///
IFieldTemplate CreateFieldTemplate(MetaColumn column, DataBoundControlMode mode, string uiHint);
}
}