<?php
/**
* フォームモデルを定義するインタフェース
*
* PHP version 5
*
* @package    interfaces
* @author     stk2k <stk2k@sazysoft.com>
* @copyright  2008 stk2k, sazysoft
*/

interface charcoal_IFormModel extends charcoal_IModel
{

	/*
	 *   フォーム名を取得
	 */
	public function getFormName();

	/*
	 *   アノテーションを取得
	 */
	public function getAnnotation( $field, $type );

	/*
	 *   アノテーション設定値を取得
	 */
	public function getAnnotationValue( $field, $type );

	/*
	 *   入力コントロール一覧を取得
	 */
	public function getInputList();

	/*
	 *   フォームアノテーションを取得
	 */
	public function getFormAnnotation( $type );

	/*
	 *   フォームアノテーション設定値を取得
	 */
	public function getFormAnnotationValue( $type );

	/*
	 *   デフォルトのキャプションクラスを取得
	 */
	public function getDefaultCaptionClass();

	/*
	 *   デフォルトのキャプションスタイルを取得
	 */
	public function getDefaultCaptionStyle();

	/*
	 *   デフォルトのフィールドクラスを取得
	 */
	public function getDefaultFieldClass( $field_type );

	/*
	 *   デフォルトのフィールドスタイルを取得
	 */
	public function getDefaultFieldStyle( $field_type );

	/*
	 *   選択リストの候補を取得
	 */
	public function getChoiceList( $list_name );

}
