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

interface IFormModel extends IModel
{
	/*
	 *   action属性を取得
	 */
	public function getAction();

	/*
	 *   action属性を設定
	 */
	public function setAction( String $action );

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

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

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

	/*
	 *   フォームアノテーション設定値を設定
	 */
	public function setFormAnnotationValue( String $type, String $value );

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

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

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

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

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

	/*
	 *   フォーム固有のDTOを作成
	 */
	public function createDTO();

}

return __FILE__;