vendor/symfony/src/Symfony/Component/Form/FormInterface.php
changeset 0 7f95f8617b0b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/vendor/symfony/src/Symfony/Component/Form/FormInterface.php	Sat Sep 24 15:40:41 2011 +0200
@@ -0,0 +1,241 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Form;
+
+/**
+ * A form group bundling multiple form forms
+ *
+ * @author Bernhard Schussek <bernhard.schussek@symfony.com>
+ */
+interface FormInterface extends \ArrayAccess, \Traversable, \Countable
+{
+    /**
+     * Sets the parent form.
+     *
+     * @param FormInterface $parent The parent form
+     */
+    function setParent(FormInterface $parent = null);
+
+    /**
+     * Returns the parent form.
+     *
+     * @return FormInterface The parent form
+     */
+    function getParent();
+
+    /**
+     * Returns whether the form has a parent.
+     *
+     * @return Boolean
+     */
+    function hasParent();
+
+    /**
+     * Adds a child to the form.
+     *
+     * @param FormInterface $child The FormInterface to add as a child
+     */
+    function add(FormInterface $child);
+
+    /**
+     * Returns whether a child with the given name exists.
+     *
+     * @param string $name
+     *
+     * @return Boolean
+     */
+    function has($name);
+
+    /**
+     * Removes a child from the form.
+     *
+     * @param string $name The name of the child to remove
+     */
+    function remove($name);
+
+    /**
+     * Returns all children in this group.
+     *
+     * @return array An array of FormInterface instances
+     */
+    function getChildren();
+
+    /**
+     * Return whether the form has children.
+     *
+     * @return Boolean
+     */
+    function hasChildren();
+
+    /**
+     * Returns all errors.
+     *
+     * @return array An array of FormError instances that occurred during binding
+     */
+    function getErrors();
+
+    /**
+     * Updates the field with default data.
+     *
+     * @param array $appData The data formatted as expected for the underlying object
+     *
+     * @return Form The current form
+     */
+    function setData($appData);
+
+    /**
+     * Returns the data in the format needed for the underlying object.
+     *
+     * @return mixed
+     */
+    function getData();
+
+    /**
+     * Returns the normalized data of the field.
+     *
+     * @return mixed  When the field is not bound, the default data is returned.
+     *                When the field is bound, the normalized bound data is
+     *                returned if the field is valid, null otherwise.
+     */
+    function getNormData();
+
+    /**
+     * Returns the data transformed by the value transformer.
+     *
+     * @return string
+     */
+    function getClientData();
+
+    /**
+     * Returns the extra data.
+     *
+     * @return array The bound data which do not belong to a child
+     */
+    function getExtraData();
+
+    /**
+     * Returns whether the field is bound.
+     *
+     * @return Boolean true if the form is bound to input values, false otherwise
+     */
+    function isBound();
+
+    /**
+     * Returns the supported types.
+     *
+     * @return array An array of FormTypeInterface
+     */
+    function getTypes();
+
+    /**
+     * Returns the name by which the form is identified in forms.
+     *
+     * @return string  The name of the form.
+     */
+    function getName();
+
+    /**
+     * Adds an error to this form.
+     *
+     * @param FormError $error
+     */
+    function addError(FormError $error);
+
+    /**
+     * Returns whether the form is valid.
+     *
+     * @return Boolean
+     */
+    function isValid();
+
+    /**
+     * Returns whether the form is required to be filled out.
+     *
+     * If the form has a parent and the parent is not required, this method
+     * will always return false. Otherwise the value set with setRequired()
+     * is returned.
+     *
+     * @return Boolean
+     */
+    function isRequired();
+
+    /**
+     * Returns whether this form can be read only.
+     *
+     * The content of a read-only form is displayed, but not allowed to be
+     * modified. The validation of modified read-only forms should fail.
+     *
+     * Fields whose parents are read-only are considered read-only regardless of
+     * their own state.
+     *
+     * @return Boolean
+     */
+    function isReadOnly();
+
+    /**
+     * Returns whether the form is empty.
+     *
+     * @return Boolean
+     */
+    function isEmpty();
+
+    /**
+     * Returns whether the data in the different formats is synchronized.
+     *
+     * @return Boolean
+     */
+    function isSynchronized();
+
+    /**
+     * Writes data into the form.
+     *
+     * @param mixed $data  The data
+     */
+    function bind($data);
+
+    /**
+     * Returns whether the form has an attribute with the given name.
+     *
+     * @param string $name The name of the attribute
+     */
+    function hasAttribute($name);
+
+    /**
+     * Returns the value of the attributes with the given name.
+     *
+     * @param string $name The name of the attribute
+     */
+    function getAttribute($name);
+
+    /**
+     * Returns the root of the form tree.
+     *
+     * @return FormInterface  The root of the tree
+     */
+    function getRoot();
+
+    /**
+     * Returns whether the field is the root of the form tree.
+     *
+     * @return Boolean
+     */
+    function isRoot();
+
+    /**
+     * Creates a view.
+     *
+     * @param FormView $parent The parent view
+     *
+     * @return FormView The view
+     */
+    function createView(FormView $parent = null);
+}