cookxml.cookswt.creator
Class WidgetCreator
java.lang.Object
cookxml.cookswt.creator.WidgetCreator
- All Implemented Interfaces:
- Creator
- public class WidgetCreator
- extends Object
- implements Creator
- Since:
- CookSwt 1.0
Method Summary |
Object |
create(String parentNS,
String parentTag,
Element elm,
Object parentObj,
DecodeEngine decodeEngine)
This function is called whenever decodeEngine starts processing an element. |
Object |
editFinished(String parentNS,
String parentTag,
Element elm,
Object parentObj,
Object obj,
DecodeEngine decodeEngine)
This function is called when the element and its subnodes have all been processed. and about
to be returned. |
static Creator |
getCreator(Class targetClass)
This function used to generate a creator for Widget subclasses or
classes that uses similar approach that take a Widget as the first
argument and style as the second argument for their constructors. |
static int |
getStyle(Element elm,
DecodeEngine decodeEngine)
|
static int |
getStyle(Element elm,
int defaultVal,
DecodeEngine decodeEngine)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
STYLE_ATTR
public static String STYLE_ATTR
getCreator
public static Creator getCreator(Class targetClass)
throws CookXmlException
- This function used to generate a creator for Widget subclasses or
classes that uses similar approach that take a Widget as the first
argument and style as the second argument for their constructors.
- Parameters:
targetClass
- the class object
- Returns:
- a default creator if a default constructor can be found.
- Throws:
CookXmlException
create
public Object create(String parentNS,
String parentTag,
Element elm,
Object parentObj,
DecodeEngine decodeEngine)
throws CreatorException
- Description copied from interface:
Creator
- This function is called whenever decodeEngine starts processing an element. It should return
an object that corresponds to the tag, or null to indicate no object could be created.
If the object returned is of NoAdd type, then the object is not added to the parent object
by decodeEngine.
There can be creative use of this function. For example, one could create another instance
of CookXml that process the element differently, then call this instanceof decodeEngine to
add the processed object to the parent, and then return null to tell this instance of
decodeEngine/CookXml to stop processing the element.
- Specified by:
create
in interface Creator
- Parameters:
parentNS
- the parent tag namespace.parentTag
- the parent tag that contains this elementelm
- the DOM element that contains all the information regarding this node.parentObj
- the parent object in the nodedecodeEngine
- the decode engine that is being used @throws CreatorException
- Returns:
- the object created, or null to tell decodeEngine to stop processing this node
- Throws:
CreatorException
editFinished
public Object editFinished(String parentNS,
String parentTag,
Element elm,
Object parentObj,
Object obj,
DecodeEngine decodeEngine)
throws CookXmlException
- Description copied from interface:
Creator
- This function is called when the element and its subnodes have all been processed. and about
to be returned. For many helper objects that implement NoAdd, this is a great time to generate
the real object and call the decodeEngine.addChild to add the real object to the parent.
- Specified by:
editFinished
in interface Creator
- Parameters:
parentNS
- the parent tag namespace.parentTag
- the parent element tagelm
- the DOM element that contains all the information regarding this node.parentObj
- the parent object of the parent elementobj
- the object that was created by this create functiondecodeEngine
- the decode engine that is being used.
- Returns:
- the object. The purpose is to allow a helper object to return the real object.
- Throws:
CookXmlException
getStyle
public static int getStyle(Element elm,
DecodeEngine decodeEngine)
throws CookXmlException
- Throws:
CookXmlException
getStyle
public static int getStyle(Element elm,
int defaultVal,
DecodeEngine decodeEngine)
throws CookXmlException
- Throws:
CookXmlException