org.scijava.widget
Class DefaultWidgetModel

java.lang.Object
  extended by org.scijava.AbstractContextual
      extended by org.scijava.widget.DefaultWidgetModel
All Implemented Interfaces:
Contextual, WidgetModel

public class DefaultWidgetModel
extends AbstractContextual
implements WidgetModel

The backing data model for a particular InputWidget.

Author:
Curtis Rueden

Constructor Summary
DefaultWidgetModel(Context context, InputPanel<?,?> inputPanel, Module module, ModuleItem<?> item, List<?> objectPool)
           
 
Method Summary
 void callback()
          Executes the callback associated with this widget's associated input.
 String[] getChoices()
          Gets the multiple choice list for the module input.
 ModuleItem<?> getItem()
          Gets the module input's associated item descriptor.
 Number getMax()
          Gets the maximum value for the module input.
 Number getMin()
          Gets the minimum value for the module input.
 Module getModule()
          Gets the module's associated module instance.
 List<?> getObjectPool()
          Gets the available objects for use with the widget.
 InputPanel<?,?> getPanel()
          Gets the input panel intended to house the widget.
 Number getSoftMax()
          Gets the "soft" maximum value for the module input.
 Number getSoftMin()
          Gets the "soft" minimum value for the module input.
 Number getStepSize()
          Gets the step size between values for the module input.
 String getText()
          Gets the input's value rendered as a string.
 Object getValue()
          Gets the current value of the module input.
 String getWidgetLabel()
          Gets the text to use when labeling this widget.
 boolean isBoolean()
          Gets whether the input is a boolean type (i.e., Boolean or boolean).
 boolean isCharacter()
          Gets whether the input is a character type (i.e., Character or char).
 boolean isInitialized()
          Gets the widget's initialization state.
 boolean isMessage()
          Gets whether the input is a message.
 boolean isMultipleChoice()
          Gets whether the input provides a restricted set of choices.
 boolean isNumber()
          Gets whether the input is a number type (e.g., int, float or any Number implementation.
 boolean isStyle(String style)
          Gets whether the widget is the given style.
 boolean isText()
          Gets whether the input is a text type (i.e., String, Character or char.
 boolean isType(Class<?> type)
          Gets whether the input is compatible with the given type.
 void setInitialized(boolean initialized)
          Toggles the widget's initialization state.
 void setValue(Object value)
          Sets the current value of the module input.
 
Methods inherited from class org.scijava.AbstractContextual
context, getContext, setContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.scijava.Contextual
context, getContext, setContext
 

Constructor Detail

DefaultWidgetModel

public DefaultWidgetModel(Context context,
                          InputPanel<?,?> inputPanel,
                          Module module,
                          ModuleItem<?> item,
                          List<?> objectPool)
Method Detail

getPanel

public InputPanel<?,?> getPanel()
Description copied from interface: WidgetModel
Gets the input panel intended to house the widget.

Specified by:
getPanel in interface WidgetModel

getModule

public Module getModule()
Description copied from interface: WidgetModel
Gets the module's associated module instance.

Specified by:
getModule in interface WidgetModel

getItem

public ModuleItem<?> getItem()
Description copied from interface: WidgetModel
Gets the module input's associated item descriptor.

Specified by:
getItem in interface WidgetModel

getObjectPool

public List<?> getObjectPool()
Description copied from interface: WidgetModel
Gets the available objects for use with the widget. For example, ObjectWidgets typically display a dropdown combo box providing multiple choice selection between these objects.

Note that this list does not represent a constraint in allowed widget values, but rather provides a list of possibilities in cases where the realm of values is not defined by the type in some other way.

Specified by:
getObjectPool in interface WidgetModel
See Also:
ObjectWidget

getWidgetLabel

public String getWidgetLabel()
Description copied from interface: WidgetModel
Gets the text to use when labeling this widget. The linked item's label will be given if available (i.e., BasicDetails.getLabel()). Otherwise, a capitalized version of the item's name is given (i.e., Named.getName()).

Specified by:
getWidgetLabel in interface WidgetModel

isStyle

public boolean isStyle(String style)
Description copied from interface: WidgetModel
Gets whether the widget is the given style. A widget may have multiple styles separated by commas, so this method is more correct than using style.equals(getItem().getWidgetStyle()).

Specified by:
isStyle in interface WidgetModel

getValue

public Object getValue()
Description copied from interface: WidgetModel
Gets the current value of the module input.

In the case of inputs with a limited set of choices (i.e., ChoiceWidgets and ObjectWidgets), this method ensures the value is in the set; if not, it returns the first item of the set.

Specified by:
getValue in interface WidgetModel

setValue

public void setValue(Object value)
Description copied from interface: WidgetModel
Sets the current value of the module input.

Specified by:
setValue in interface WidgetModel

callback

public void callback()
Description copied from interface: WidgetModel
Executes the callback associated with this widget's associated input.

Specified by:
callback in interface WidgetModel

getMin

public Number getMin()
Description copied from interface: WidgetModel
Gets the minimum value for the module input.

Specified by:
getMin in interface WidgetModel
Returns:
The minimum value, or null if the type is unbounded.

getMax

public Number getMax()
Description copied from interface: WidgetModel
Gets the maximum value for the module input.

Specified by:
getMax in interface WidgetModel
Returns:
The maximum value, or null if the type is unbounded.

getSoftMin

public Number getSoftMin()
Description copied from interface: WidgetModel
Gets the "soft" minimum value for the module input.

Specified by:
getSoftMin in interface WidgetModel
Returns:
The "soft" minimum value, or WidgetModel.getMin() if none.
See Also:
ModuleItem.getSoftMinimum()

getSoftMax

public Number getSoftMax()
Description copied from interface: WidgetModel
Gets the "soft" maximum value for the module input.

Specified by:
getSoftMax in interface WidgetModel
Returns:
The "soft" maximum value, or WidgetModel.getMax() if none.
See Also:
ModuleItem.getSoftMaximum()

getStepSize

public Number getStepSize()
Description copied from interface: WidgetModel
Gets the step size between values for the module input.

Specified by:
getStepSize in interface WidgetModel
Returns:
The step size, or 1 by default.

getChoices

public String[] getChoices()
Description copied from interface: WidgetModel
Gets the multiple choice list for the module input.

Specified by:
getChoices in interface WidgetModel
Returns:
The available choices, or an empty list if not multiple choice.
See Also:
ChoiceWidget

getText

public String getText()
Description copied from interface: WidgetModel
Gets the input's value rendered as a string.

Specified by:
getText in interface WidgetModel
Returns:
String representation of the input value, or the empty string if the value is null or the null character ('\0').

isMessage

public boolean isMessage()
Description copied from interface: WidgetModel
Gets whether the input is a message.

Specified by:
isMessage in interface WidgetModel
See Also:
ItemVisibility.MESSAGE

isText

public boolean isText()
Description copied from interface: WidgetModel
Gets whether the input is a text type (i.e., String, Character or char.

Specified by:
isText in interface WidgetModel

isCharacter

public boolean isCharacter()
Description copied from interface: WidgetModel
Gets whether the input is a character type (i.e., Character or char).

Specified by:
isCharacter in interface WidgetModel

isNumber

public boolean isNumber()
Description copied from interface: WidgetModel
Gets whether the input is a number type (e.g., int, float or any Number implementation.

Specified by:
isNumber in interface WidgetModel

isBoolean

public boolean isBoolean()
Description copied from interface: WidgetModel
Gets whether the input is a boolean type (i.e., Boolean or boolean).

Specified by:
isBoolean in interface WidgetModel

isMultipleChoice

public boolean isMultipleChoice()
Description copied from interface: WidgetModel
Gets whether the input provides a restricted set of choices.

Specified by:
isMultipleChoice in interface WidgetModel

isType

public boolean isType(Class<?> type)
Description copied from interface: WidgetModel
Gets whether the input is compatible with the given type.

Specified by:
isType in interface WidgetModel

setInitialized

public void setInitialized(boolean initialized)
Description copied from interface: WidgetModel
Toggles the widget's initialization state. An initialized widget can be assumed to be an active part of a container InputPanel.

Specified by:
setInitialized in interface WidgetModel

isInitialized

public boolean isInitialized()
Description copied from interface: WidgetModel
Gets the widget's initialization state. An initialized widget can be assumed to be an active part of a container InputPanel.

Specified by:
isInitialized in interface WidgetModel


Copyright © 2009–2015 SciJava. All rights reserved.