public class SwingXMLBuilder extends Object
State
and StateAdapter
interfaces, and can be used
to describe logical states and bind them to the widgets.ValueModel
interface, and can be used to bind the content of POJO's to widgets,
even if the POJO's contain complex lists or a type conversion is required.Modifier and Type | Class and Description |
---|---|
static interface |
SwingXMLBuilder.Backlink
Helper interface that classes can implement to signal that the
SwingXMLBuilder that created objects of that class will set a back link.
|
static interface |
SwingXMLBuilder.BuilderDelegate
Helper interface that delegate builder classes must implement.
|
Modifier and Type | Method and Description |
---|---|
static SwingXMLBuilder |
create(org.jdom2.Element pElement)
Create visual, non-visual objects and a connection between them.
|
static SwingXMLBuilder |
create(org.jdom2.Element pElement,
Locale pLocale)
Create visual, non-visual objects and a connection between them.
|
static SwingXMLBuilder |
create(org.jdom2.Element pElement,
Locale pLocale,
Map<String,? super Object> pNonVisual)
Create visual, non-visual objects and a connection between them.
|
static SwingXMLBuilder |
create(org.jdom2.Element pElement,
Map<String,? super Object> pNonVisual)
Create visual, non-visual objects and a connection between them.
|
static SwingXMLBuilder |
create(InputStream pInputStream)
Create visual, non-visual objects and a connection between them.
|
static SwingXMLBuilder |
create(InputStream pInputStream,
Locale pLocale)
Create visual, non-visual objects and a connection between them.
|
static SwingXMLBuilder |
create(InputStream pInputStream,
Locale pLocale,
Map<String,? super Object> pNonVisual)
Create visual, non-visual objects and a connection between them.
|
static SwingXMLBuilder |
create(InputStream pInputStream,
Map<String,? super Object> pNonVisual)
Create visual, non-visual objects and a connection between them.
|
static IllegalArgumentException |
createException(String pMessagePrefix)
Small helper method to provide better exception handling by formatting
the message.
|
static IllegalArgumentException |
createException(String pMessagePrefix,
org.jdom2.Element pElement)
Small helper method to provide better exception handling by formatting
a message that includes the place where the error happend.
|
static IllegalArgumentException |
createException(String pMessagePrefix,
Exception pException)
Small helper method to provide better exception handling by formatting
a message that includes the original exception.
|
static IllegalArgumentException |
createException(String pMessagePrefix,
Exception pException,
org.jdom2.Element pElement)
Small helper method to provide better exception handling by formatting
a message that includes the original exception and the
place where the error happend.
|
void |
dispose()
This will cause all internal memory to be cleared, useful to
prevent GC problems.
|
JComponent |
get(String pName)
Returns a widget for the given name, shortcut for getComponentByName
|
JComponent |
getByShortName(String pName)
Returns a widget for the given short name.
|
JComponent |
getComponentByAnyName(String pName)
Returns a widget by name.
|
JComponent |
getComponentByName(String pName)
Returns a widget for the given name.
|
Container |
getContainerByName(String pName)
Returns a widget for the given name.
|
IconCache |
getIconCache()
Return the icon cache of this builder.
|
Locale |
getLocale()
Determine the locale used for this instance of the SwingXMLBuilder.
|
String |
getNameByComponent(JComponent pComponent)
Returns (hierarchical) name for the given widget.
|
String |
getNameByContainer(Container pContainer)
Returns (hierarchical) name for the given widget.
|
Map<String,? super Object> |
getNameToNonVisual()
Return the name to non-visual mapping.
|
Map<String,Component> |
getNameToVisual()
Return the hierarchical name to visual mapping.
|
Object |
getNonVisualObject(String pName)
Returns a non-visual object that was in the description.
|
<T> T |
getNonVisualObject(String pName,
Class<T> pType)
Returns a non-visual object that was in the description.
|
Map<String,Component> |
getShortNameToVisual()
Return the short name to visual mapping.
|
SwingDecoratorFunctionality |
getSwingDecorator()
Determine a decorator for widgets and actions.
|
String |
getTitle(org.jdom2.Element pElement)
Returns the text of last title child of the handed element in
the current language or null, if no title child was found.
|
static String |
getTitleDefaultLocale(org.jdom2.Element pElement)
Returns the text of last title child of the handed element in
the current language or null, if no title child was found.
|
Map<Component,String> |
getVisualToName()
Return the visual to hierarchical name mapping.
|
WidgetFactory |
getWidgetFactory()
Returns the widget factory of this builder.
|
static WidgetFactoryRegistry |
getWidgetFactoryRegistry()
widget registry stuff
|
boolean |
isSameLanguage(org.jdom2.Element pElement)
Tests if the element contains information that matches the language of the
current locale.
|
static boolean |
isSameLanguage(org.jdom2.Element pElement,
Locale pLocale)
Tests if the element contains information that matches the language of the
current locale.
|
public static final String SYSTEM_ID_1_4
public static final String SYSTEM_ID_1_5
public static final String SYSTEM_ID_1_6
public static final String SYSTEM_ID_1_7
public static final String SYSTEM_ID_1_8
public static final String SYSTEM_ID_1_9
public static final String SYSTEM_ID_2_0
public static final String SYSTEM_ID_2_1
public static final String SEPARATOR
public static final String OBJECT_ELEMENT
public static final String ACTION_ELEMENT
public static final String RESOURCE_ELEMENT
public static final String IS_TOGGLE_ELEMENT
public static final String DEFAULT_ID_RESOURCE
public static final String FRAME_ELEMENT
public static final String DIALOG_ELEMENT
public static final String PANEL_ELEMENT
public static final String ANY_ELEMENT
public static final String BUTTON_ELEMENT
public static final String LABEL_ELEMENT
public static final String RADIOBUTTON_ELEMENT
public static final String TOGGLEBUTTON_ELEMENT
public static final String CHECKBOX_ELEMENT
public static final String TEXTFIELD_ELEMENT
public static final String PASSWORDFIELD_ELEMENT
public static final String TEXTAREA_ELEMENT
public static final String COMBOBOX_ELEMENT
public static final String SLIDER_ELEMENT
public static final String SPLITPANE_ELEMENT
public static final String SCROLLPANE_ELEMENT
public static final String TABBEDPANE_ELEMENT
public static final String LIST_ELEMENT
public static final String TABLE_ELEMENT
public static final String TREE_ELEMENT
public static final String SEPARATOR_ELEMENT
public static final String SEPARATORPANEL_ELEMENT
public static final String MENUBAR_ELEMENT
public static final String MENU_ELEMENT
public static final String MENU_ITEM_ELEMENT
public static final String TOOLBAR_ELEMENT
public static final String TOOLBAR_ITEM_ELEMENT
public static final String POPUP_ELEMENT
public static final String POPUPMENU_ELEMENT
public static final String POPUP_ITEM_ELEMENT
public static final String BUILDER_ELEMENT
public static final String SPINNER_ELEMENT
public static final String PROPERTY_ELEMENT
public static final String TEXT_ELEMENT
public static final String TITLE_ELEMENT
public static final String MNEMONIC_ELEMENT
public static final String SHORTCUT_ELEMENT
public static final String ACCELERATOR_ELEMENT
public static final String TOOLTIP_ELEMENT
public static final String ICON_ELEMENT
public static final String COMBOITEM_ELEMENT
public static final String TABMAPPING_ELEMENT
public static final String TABITEM_ELEMENT
public static final String POPUPREF_ELEMENT
public static final String LAYOUTMANAGER_ELEMENT
public static final String CONSTRAINT_ELEMENT
public static final String BORDER_ELEMENT
public static final String DLU_ELEMENT
public static final String MINSIZE_ELEMENT
public static final String MAXSIZE_ELEMENT
public static final String PREFSIZE_ELEMENT
public static final String BUTTONACTION_ELEMENT
public static final String COMBOBOXACTION_ELEMENT
public static final String TEXTFIELDACTION_ELEMENT
public static final String MENUACTION_ELEMENT
public static final String ACTIONACTION_ELEMENT
public static final String CARETACTION_ELEMENT
public static final String CHANGEACTION_ELEMENT
public static final String FOCUSACTION_ELEMENT
public static final String LISTSELECTIONACTION_ELEMENT
public static final String PROPERTYCHANGEACTION_ELEMENT
public static final String TREESELECTIONACTION_ELEMENT
public static final String DOCUMENTACTION_ELEMENT
public static final String STATE_ELEMENT
public static final String EXPRESSION_ELEMENT
public static final String STATEADAPTER_ELEMENT
public static final String SETSTATE_ELEMENT
public static final String ADAPTEE_ELEMENT
public static final String VALUEHOLDER_ELEMENT
public static final String BUFFEREDHOLDER_ELEMENT
public static final String ASPECTADAPTER_ELEMENT
public static final String INDEXEDADAPTER_ELEMENT
public static final String INDEXINLIST_ELEMENT
public static final String PROPERTIESADAPTER_ELEMENT
public static final String TYPECONVERTER_ELEMENT
public static final String FORMATCONVERTER_ELEMENT
public static final String REGEXPCONVERTER_ELEMENT
public static final String CONVERTERINSYNC_ELEMENT
public static final String SELECTIONINLIST_ELEMENT
public static final String MULTISELECTIONINLIST_ELEMENT
public static final String SETVALUE_ELEMENT
public static final String DOCUMENTADAPTER_ELEMENT
public static final String BUTTONADAPTER_ELEMENT
public static final String COMBOBOXADAPTER_ELEMENT
public static final String TABLEADAPTER_ELEMENT
public static final String LISTADAPTER_ELEMENT
public static final String FILTERINGLISTADAPTER_ELEMENT
public static final String COLUMN_ELEMENT
public static final String LOVMAPPER_ELEMENT
public static final String TOOLTIPADAPTER_ELEMENT
public static final String LABELADAPTER_ELEMENT
public static final String LOVADAPTER_ELEMENT
public static final String KEY_ATTRIBUTE
public static final String VALUE_ATTRIBUTE
public static final String BOOLEAN_ATTRIBUTE
public static final String INT_ATTRIBUTE
public static final String REF_ATTRIBUTE
public static final String REF2_ATTRIBUTE
public static final String ID_ATTRIBUTE
public static final String MIN_ATTRIBUTE
public static final String MAX_ATTRIBUTE
public static final String ACTIONREF_ATTRIBUTE
public static final String CLOSEACTION_ATTRIBUTE
public static final String ESCAPEACTION_ATTRIBUTE
public static final String MODAL_ATTRIBUTE
public static final String CLASS_ATTRIBUTE
public static final String FILTER_CLASS_ATTRIBUTE
public static final String CONSTANT_ATTRIBUTE
public static final String BASENAME_ATTRIBUTE
public static final String DEFAULT_ATTRIBUTE
public static final String LANG_ATTRIBUTE
public static final String TYPE_ATTRIBUTE
public static final String NAME_ATTRIBUTE
public static final String ORIENTATION_ATTRIBUTE
public static final String ONETOUCHEXPANDABLE_ATTRIBUTE
public static final String TABPLACEMENT_ATTRIBUTE
public static final String SOURCE_ATTRIBUTE
public static final String TARGET_ATTRIBUTE
public static final String METHOD_ATTRIBUTE
public static final String ENABLED_ATTRIBUTE
public static final String SELECTED_ATTRIBUTE
public static final String VERTICAL_SCROLLBAR_ATTRIBUTE
public static final String HORIZONTAL_SCROLLBAR_ATTRIBUTE
public static final String ALIGN_ATTRIBUTE
public static final String LABELFOR_ATTRIBUTE
public static final String COMMAND_ATTRIBUTE
public static final String DOCUMENT_ATTRIBUTE
public static final String COLUMNS_ATTRIBUTE
public static final String MASKFORMAT_ATTRIBUTE
public static final String DATEFORMAT_ATTRIBUTE
public static final String NUMBERFORMAT_ATTRIBUTE
public static final String EDITABLE_ATTRIBUTE
public static final String LINEWRAP_ATTRIBUTE
public static final String INVERT_ATTRIBUTE
public static final String SUBJECT_ATTRIBUTE
public static final String TRIGGER_ATTRIBUTE
public static final String DEEPCOPY_ATTRIBUTE
public static final String SETPREFIX_ATTRIBUTE
public static final String GETPREFIX_ATTRIBUTE
public static final String ACCESS_ATTRIBUTE
public static final String ACCESSREF_ATTRIBUTE
public static final String MODELREF_ATTRIBUTE
public static final String PREF_WIDTH_ATTRIBUTE
public static final String WIDGETREF_ATTRIBUTE
public static final String FORMAT_ATTRIBUTE
public static final String BLOCK_ATTRIBUTE
public static final String MODIFIERS_ATTRIBUTE
public static final String CONDITION_ATTRIBUTE
public static final String SORTABLE_ATTRIBUTE
public static final String SORTMODELREF_ATTRIBUTE
public static final String COMPARATORCLASS_ATTRIBUTE
public static final String INITIAL_SORTING_COLUMN_ATTRIBUTE
public static final String DEEP_ATTRIBUTE
public static final String OPAQUE_ATTRIBUTE
public static final String LOVSREF_ATTRIBUTE
public static final String ITEMSREF_ATTRIBUTE
public static final String KEYSREF_ATTRIBUTE
public static final String ITEMS_ATTRIBUTE
public static final String KEYS_ATTRIBUTE
public static final String UNSELECTED_ATTRIBUTE
public static final String IMPORTNAMES_ATTRIBUTE
public static final String EXT_UPD_REF_ATTRIBUTE
public static final String FORMBUILDER_PROPERTY
public static final String TABMAPPING_PROPERTY
public static final String CANCEL_ACTION_KEY
public static final String BUTTONGROUP_PROPERTY
public static final String BUTTONGROUP_TRUE
public static final String GRIDBAG_LAYOUT
public static final String NULL_LAYOUT
public static final String BORDER_LAYOUT
public static final String BOX_LAYOUT
public static final String CARD_LAYOUT
public static final String FLOW_LAYOUT
public static final String GRID_LAYOUT
public static final String TABLE_LAYOUT
public static final String FORM_LAYOUT
public static final String FLEXIBLEGRID_LAYOUT
public static final String HGAP_ELEMENT
public static final String VGAP_ELEMENT
public static final String AXIS_ELEMENT
public static final String ALIGN_ELEMENT
public static final String COLUMNS_ELEMENT
public static final String ROWS_ELEMENT
public static final String COLUMNGROUPS_ELEMENT
public static final String ROWGROUPS_ELEMENT
public static final String LINEBREAK_ELEMENT
public static final String TABLELAYOUT_FILL
public static final String TABLELAYOUT_PREFERRED
public static final String TABLELAYOUT_MINIMUM
public static final String LINE_ATTRIBUTE
public static final String ETCHED_ATTRIBUTE
public static final String BEVEL_ATTRIBUTE
public static final String EMPTY_ATTRIBUTE
public static final String MATTE_ATTRIBUTE
public static final String COLOR_ELEMENT
public static final String THICKNESS_ELEMENT
public static final String SUNKEN_ATTRIBUTE
public static final String SUNKEN_RAISED
public static final String SUNKEN_LOWERED
public static final String SCROLLBAR_NEVER
public static final String SCROLLBAR_ALWAYS
public static final String SCROLLBAR_AS_NEEDED
public static final String ROOT_ELEMENT
public static final String NONVISUAL_ELEMENT
public static final String VISUAL_ELEMENT
public static final String CONNECT_ELEMENT
public static final String STATEHANDLING_ELEMENT
public static final String DATABINDING_ELEMENT
public SwingDecoratorFunctionality getSwingDecorator()
ResourceBundle
whose ids begin with
DEFAULT_ID_RESOURCE
. Otherwise this method returns
null
and no other attempt is made to construct a decorator.null
public Locale getLocale()
public static WidgetFactoryRegistry getWidgetFactoryRegistry()
public static SwingXMLBuilder create(org.jdom2.Element pElement) throws IllegalArgumentException
pElement
- start point ("root") of the processIllegalArgumentException
- if pElement is null, or the XML file contains errorspublic static SwingXMLBuilder create(org.jdom2.Element pElement, Locale pLocale) throws IllegalArgumentException
pElement
- start point ("root") of the processpLocale
- locale to use or null
if the current default locale is to be usedIllegalArgumentException
- if pElement is null, or the XML file contains errorspublic static SwingXMLBuilder create(org.jdom2.Element pElement, Map<String,? super Object> pNonVisual) throws IllegalArgumentException
pElement
- start point ("root") of the processpNonVisual
- null or non-visual key/object mappingIllegalArgumentException
- if pElement is null, or the XML file contains errorspublic static SwingXMLBuilder create(org.jdom2.Element pElement, Locale pLocale, Map<String,? super Object> pNonVisual) throws IllegalArgumentException
pElement
- start point ("root") of the processpLocale
- locale to use or null
if the current default locale is to be usedpNonVisual
- null or non-visual key/object mappingIllegalArgumentException
- if pElement is null, or the XML file contains errorspublic static SwingXMLBuilder create(InputStream pInputStream) throws IllegalArgumentException
pInputStream
- the XML descriptionIllegalArgumentException
- if there are problems with pInputStream,
or the XML file contains errorspublic static SwingXMLBuilder create(InputStream pInputStream, Locale pLocale) throws IllegalArgumentException
pInputStream
- the XML descriptionpLocale
- locale to use or null
if the current default locale is to be usedIllegalArgumentException
- if there are problems with pInputStream,
or the XML file contains errorspublic static SwingXMLBuilder create(InputStream pInputStream, Map<String,? super Object> pNonVisual) throws IllegalArgumentException
pInputStream
- the XML descriptionpNonVisual
- null or non-visual key/object mappingIllegalArgumentException
- if there are problems with pInputStream,
or the XML file contains errorspublic static SwingXMLBuilder create(InputStream pInputStream, Locale pLocale, Map<String,? super Object> pNonVisual) throws IllegalArgumentException
pInputStream
- the XML descriptionpLocale
- locale to use or null
if the current
default locale is to be usedpNonVisual
- null or non-visual key/object mappingIllegalArgumentException
- if there are problems with pInputStream,
or the XML file contains errorspublic void dispose()
public Map<String,Component> getNameToVisual()
public Map<String,Component> getShortNameToVisual()
public Map<Component,String> getVisualToName()
public Map<String,? super Object> getNameToNonVisual()
public Container getContainerByName(String pName)
pName
- (hierarchical) name of the widgetpublic String getNameByContainer(Container pContainer)
pContainer
- a widgetpublic JComponent get(String pName)
pName
- (hierarchical) name of the widgetIllegalArgumentException
- the name is not resolvable due too many ".."'spublic JComponent getByShortName(String pName)
pName
- short name of the widgetpublic JComponent getComponentByName(String pName)
pName
- (hierarchical) name of the widgetIllegalArgumentException
- the name is not resolvable due too many ".."'spublic JComponent getComponentByAnyName(String pName)
pName
- the hierarchical or shor nameIllegalArgumentException
- the name is not resolvable due too many ".."'spublic String getNameByComponent(JComponent pComponent)
pComponent
- a widgetpublic Object getNonVisualObject(String pName)
pName
- (hierarchical) name of the non-visual object, may be nullpublic <T> T getNonVisualObject(String pName, Class<T> pType)
pName
- (hierarchical) name of the non-visual object, may be nullpType
- the type we should return, must not be nullpublic IconCache getIconCache()
public WidgetFactory getWidgetFactory()
public static IllegalArgumentException createException(String pMessagePrefix)
pMessagePrefix
- null or the initial part of the messagepublic static IllegalArgumentException createException(String pMessagePrefix, Exception pException)
pException
- null or the exception that triggered the callpMessagePrefix
- null or the initial part of the messagepublic static IllegalArgumentException createException(String pMessagePrefix, org.jdom2.Element pElement)
pMessagePrefix
- null or the initial part of the messagepElement
- null or the current element, the element's path will be appended
to the message.public static IllegalArgumentException createException(String pMessagePrefix, Exception pException, org.jdom2.Element pElement)
pMessagePrefix
- null or the initial part of the messagepException
- null or the exception that triggered the callpElement
- null or the current element, the element's path will be appended
to the message.public static boolean isSameLanguage(org.jdom2.Element pElement, Locale pLocale)
pElement
- element to checkpLocale
- the localepublic boolean isSameLanguage(org.jdom2.Element pElement)
pElement
- element to checkpublic String getTitle(org.jdom2.Element pElement)
pElement
- the element we start searching frompublic static String getTitleDefaultLocale(org.jdom2.Element pElement)
pElement
- the element we start searching fromCopyright © 2017 Jürgen Zeller (privat). All rights reserved.