# Class UIFragment.DefaultComponentFactory

java.lang.Object
com.codename1.ui.UIFragment.DefaultComponentFactory

All Implemented Interfaces:
  `UIFragment.ComponentFactory`

Enclosing class:
  `UIFragment`

public static class UIFragment.DefaultComponentFactory extends Object implements UIFragment.ComponentFactory

Default component factory that is used in templates. Supports the following tags:

- y

- x

- flow

- layered

- border

- table

- label

- button

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DefaultComponentFactory()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Component`
  `newComponent(Element el)`
  Creates a new component given its XML description.
  `Object`
  `newConstraint(Container parent, Element parentEl, Component child, Element childEl)`
  Creates a layout constraint for adding a child component to a parent component.

  ### Methods inherited from class Object

  `clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `final Class`
  `getClass()`
  Returns the runtime class of an object.
  `int`
  `hashCode()`
  Returns a hash code value for the object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `String`
  `toString()`
  Returns a string representation of the object.
  `final void`
  `wait()`
  Causes current thread to wait until another thread invokes the method or the method for this object.
  `final void`
  `wait(long timeout)`
  Causes current thread to wait until either another thread invokes the method or the method for this object, or a specified amount of time has elapsed.
  `final void`
  `wait(long timeout, int nanos)`
  Causes current thread to wait until another thread invokes the method or the method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.

- ## Constructor Details

  - ### DefaultComponentFactory

    public DefaultComponentFactory()

- ## Method Details

  - ### newComponent

    public Component newComponent(Element el)
    Description copied from interface: `UIFragment.ComponentFactory`

    Creates a new component given its XML description.

    ###### Parameters

    - `el`: The XML element

    ###### Returns

    A Component.

    Specified by:
      `newComponent` in interface `UIFragment.ComponentFactory`

  - ### newConstraint

    public Object newConstraint(Container parent, Element parentEl, Component child, Element childEl)
    Description copied from interface: `UIFragment.ComponentFactory`

    Creates a layout constraint for adding a child component to a parent component.

    ###### Parameters

    - `parent`: The parent component.

    - `parentEl`: The XML element for the parent component.

    - `child`: The child component.

    - `childEl`: The XML element for the child component.

    ###### Returns

    Layout constraint for adding to the parent component.

    Specified by:
      `newConstraint` in interface `UIFragment.ComponentFactory`