## Uses of Interface
org.zkoss.zk.ui.metainfo.ComponentDefinition

- Packages that use ComponentDefinition
  Package | Description
  --- | ---
  org.zkoss.stateless.ui.util |
  org.zkoss.zk.ui |
  org.zkoss.zk.ui.impl |
  org.zkoss.zk.ui.metainfo |
  org.zkoss.zk.ui.metainfo.impl |
  org.zkoss.zk.ui.sys |

- - ### Uses of ComponentDefinition in org.zkoss.stateless.ui.util

    Methods in org.zkoss.stateless.ui.util that return ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `ComponentDefinition` | VolatileComponent.`getDefinition()` |

    Methods in org.zkoss.stateless.ui.util with parameters of type ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | VolatileComponent.`setDefinition​(ComponentDefinition compdef)` |

  - ### Uses of ComponentDefinition in org.zkoss.zk.ui

    Methods in org.zkoss.zk.ui that return ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `ComponentDefinition` | Page.`getComponentDefinition​(java.lang.Class<? extends Component> cls, boolean recurse)` | Returns the component definition of the specified class, or null if not found.
    `ComponentDefinition` | Page.`getComponentDefinition​(java.lang.String name, boolean recurse)` | Returns the component definition of the specified name, or null if not found.
    `ComponentDefinition` | AbstractComponent.`getDefinition()` |
    `ComponentDefinition` | Component.`getDefinition()` | Returns the component definition of this component (never null).
    `static ComponentDefinition` | Components.`getDefinitionByDeviceType​(java.lang.String deviceType, java.lang.Class cls)` | Returns the component definition of the specified class in all language of the specified device, or null if not found

    Methods in org.zkoss.zk.ui with parameters of type ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | AbstractComponent.`setDefinition​(ComponentDefinition compdef)` |

  - ### Uses of ComponentDefinition in org.zkoss.zk.ui.impl

    Methods in org.zkoss.zk.ui.impl that return ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `ComponentDefinition` | PageImpl.`getComponentDefinition​(java.lang.Class<? extends Component> cls, boolean recurse)` |
    `ComponentDefinition` | PageImpl.`getComponentDefinition​(java.lang.String name, boolean recurse)` |

    Methods in org.zkoss.zk.ui.impl with parameters of type ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `Component` | AbstractUiFactory.`newComponent​(Page page, Component parent, ComponentDefinition compdef, java.lang.String clsnm)` |

  - ### Uses of ComponentDefinition in org.zkoss.zk.ui.metainfo

    Methods in org.zkoss.zk.ui.metainfo that return ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `ComponentDefinition` | ComponentDefinition.`clone​(LanguageDefinition langdef, java.lang.String name)` | Clones this definition and assigns with the specified language definition and name.
    `ComponentDefinition` | ComponentDefinitionMap.`get​(java.lang.Class cls)` | Returns the component definition of the specified class, or null if not found.
    `ComponentDefinition` | ComponentDefinitionMap.`get​(java.lang.String name)` | Returns the component definition of the specified name, or null if not not found.
    `ComponentDefinition` | ComponentInfo.`getComponentDefinition()` | Returns the component definition, or null if it is PageDefinition.
    `ComponentDefinition` | LanguageDefinition.`getComponentDefinition​(java.lang.Class klass)` | Returns `ComponentDefinition` of the specified class.
    `ComponentDefinition` | LanguageDefinition.`getComponentDefinition​(java.lang.String name)` | Returns `ComponentDefinition` of the specified name.
    `ComponentDefinition` | PageDefinition.`getComponentDefinition​(java.lang.Class cls, boolean recurse)` | Returns the component definition of the specified class, or null if not found.
    `ComponentDefinition` | PageDefinition.`getComponentDefinition​(java.lang.String name, boolean recurse)` | Returns the component definition of the specified name, or null if not found.
    `ComponentDefinition` | ShadowInfo.`getComponentDefinition()` | Returns the component definition, or null if it is PageDefinition.
    `ComponentDefinition` | LanguageDefinition.`getComponentDefinitionIfAny​(java.lang.Class klass)` | Returns `ComponentDefinition` of the specified class, or null if not found.
    `ComponentDefinition` | LanguageDefinition.`getComponentDefinitionIfAny​(java.lang.String name)` | Returns `ComponentDefinition` of the specified name, or null if not found.
    `ComponentDefinition` | LanguageDefinition.`getDynamicTagDefinition()` | Returns the component definition of the dynamic tag, or null if this language doesn't support the dynamic tag.
    `ComponentDefinition` | LanguageDefinition.`getMacroDefinition​(java.lang.String name, java.lang.String macroURI, boolean inline, PageDefinition pgdef)` | Instantiates and returns the component definition for the specified condition.
    `ComponentDefinition` | LanguageDefinition.`getNativeDefinition()` | Returns the component definition for the native components.
    `ComponentDefinition` | LanguageDefinition.`getShadowDefinition​(java.lang.Class klass)` | Returns `ComponentDefinition` of the specified class.
    `ComponentDefinition` | LanguageDefinition.`getShadowDefinition​(java.lang.String name)` | Returns `ComponentDefinition` of the specified name.
    `ComponentDefinition` | LanguageDefinition.`getShadowDefinition​(java.lang.String name, PageDefinition pgdef, java.lang.String templateURI)` | Instantiates and returns the component definition for the specified condition.
    `ComponentDefinition` | LanguageDefinition.`getShadowDefinitionIfAny​(java.lang.Class klass)` | Returns `ComponentDefinition` of the specified class, or null if not found.
    `ComponentDefinition` | LanguageDefinition.`getShadowDefinitionIfAny​(java.lang.String name)` | Returns `ComponentDefinition` of the specified name, or null if not found.

    Methods in org.zkoss.zk.ui.metainfo that return types with arguments of type ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.Collection<ComponentDefinition>` | LanguageDefinition.`getComponentDefinitions()` | Returns a readonly collection of all component definitions in this language.
    `java.util.Collection<ComponentDefinition>` | ComponentDefinitionMap.`getDefinitions()` | Returns a readonly collection of component definitions (`ComponentDefinition`) defined in this map.
    `java.util.Collection<ComponentDefinition>` | LanguageDefinition.`getShadowDefinitions()` | Returns a readonly collection of all shadow element definitions in this language.

    Methods in org.zkoss.zk.ui.metainfo with parameters of type ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | ComponentDefinitionMap.`add​(ComponentDefinition compdef)` | Adds a component definition to this map.
    `void` | LanguageDefinition.`addComponentDefinition​(ComponentDefinition compdef)` | Adds a component definition.
    `void` | PageDefinition.`addComponentDefinition​(ComponentDefinition compdef)` | Adds a component definition belonging to this page definition only.
    `void` | LanguageDefinition.`addShadowDefinition​(ComponentDefinition compdef)` | Adds a shadow element definition.

    Constructors in org.zkoss.zk.ui.metainfo with parameters of type ComponentDefinition
    Constructor | Description
    --- | ---
    `ComponentInfo​(NodeInfo parent, ComponentDefinition compdef, java.lang.String tag)` | Constructs the information about how to create component.
    `NativeInfo​(NodeInfo parent, ComponentDefinition compdef, java.lang.String tag)` | Constructs a native info with a parent.
    `NativeInfo​(EvaluatorRef evlar, ComponentDefinition compdef, java.lang.String tag)` | Constructs a native info without a parent.
    `ShadowInfo​(NodeInfo parent, ComponentDefinition compdef, java.lang.String tag, ConditionImpl cond)` | Creates a shadow.

  - ### Uses of ComponentDefinition in org.zkoss.zk.ui.metainfo.impl

    Classes in org.zkoss.zk.ui.metainfo.impl that implement ComponentDefinition
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ComponentDefinitionImpl` | An implementation of `ComponentDefinition`.
    `class` | `MacroDefinition` | The macro component definition.
    `class` | `ShadowDefinitionImpl` | A shadow element definition.

    Methods in org.zkoss.zk.ui.metainfo.impl that return ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `ComponentDefinition` | ComponentDefinitionImpl.`clone​(LanguageDefinition langdef, java.lang.String name)` |
    `static ComponentDefinition` | ComponentDefinitionImpl.`newMacroDefinition​(LanguageDefinition langdef, PageDefinition pgdef, java.lang.String name, java.lang.Class<? extends Component> cls, java.lang.String macroURI, boolean inline)` | Constructs a macro component definition.
    `static ComponentDefinition` | ComponentDefinitionImpl.`newNativeDefinition​(LanguageDefinition langdef, java.lang.String name, java.lang.Class<? extends Component> cls)` | Constructs a native component definition.
    `static ComponentDefinition` | ComponentDefinitionImpl.`newShadowDefinition​(LanguageDefinition langdef, PageDefinition pgdef, java.lang.String name, java.lang.Class<? extends Component> cls, java.lang.String templateURI)` | Constructs a shadow component definition.

  - ### Uses of ComponentDefinition in org.zkoss.zk.ui.sys

    Fields in org.zkoss.zk.ui.sys declared as ComponentDefinition
    Modifier and Type | Field | Description
    --- | --- | ---
    `static ComponentDefinition` | ComponentsCtrl.`DUMMY` | Represents a dummy definition.

    Methods in org.zkoss.zk.ui.sys with parameters of type ComponentDefinition
    Modifier and Type | Method | Description
    --- | --- | ---
    `Component` | UiFactory.`newComponent​(Page page, Component parent, ComponentDefinition compdef, java.lang.String clsnm)` | Creates and initializes a component based on the specified `ComponentDefinition`.
    `static void` | ComponentsCtrl.`setCurrentInfo​(ComponentDefinition compdef)` | Sets the current component definition, which is used only by `UiEngine` to communicate with `AbstractComponent`.
    `void` | ComponentCtrl.`setDefinition​(ComponentDefinition compdef)` | Sets the component definition.