rs.sol.soloist.server.guiconfiguration.components
Class GUIButtonComponent

java.lang.Object
  extended by rs.sol.soloist.server.uml.commonimplementation.runtime._ClassifierInstance
      extended by rs.sol.soloist.server.uml.commonimplementation.runtime._ClassInstance
          extended by rs.sol.soloist.server.javaimpl.runtime.SOLoistClassInstance
              extended by rs.sol.soloist.server.builtindomains.common.ObjectOfClass
                  extended by rs.sol.soloist.server.guiconfiguration.construction.GUIComponent
                      extended by rs.sol.soloist.server.guiconfiguration.components.GUICommandComponent
                          extended by rs.sol.soloist.server.guiconfiguration.components.GUIButtonComponent
All Implemented Interfaces:
IElementPresentationProvider, IUpdatable, rs.sol.soloist.server.uml.concepts.IElement, IClassifierInstance, IClassInstance, IRTElement

public class GUIButtonComponent
extends GUICommandComponent

A standard push-button widget. This widget can trigger both client- and server-side behaviors. It can also be represented as a hyperlink.

In most cases, this widget is used to trigger server-side action specified with a Command object assigned to it. The assigned Command instance will be executed after user clicks on a button, or after an event on other widget's output pin explicitely bound (using the widget binding mechanism) to this button's click input pin ( ipClick() method). Using the widget binding mechanism, this widget is able collect required parameters for command execution, and also, using the same mecahnism, to provide command execution results to other widgets in the GUI.

Class PerformImmediately defines more complex execution scenarios. Applying specific execution scenario can be done with GUICommandComponent.setPerformImmediately(PerformImmediately) method.

The code example that creates server-side action (command) instance for deletion of object (of the domain class Person), this widget to trigger the action and collect parameters, command assignment, and parameter binding is shown bellow:

 CmdDestroyObject cmd = new CmdDestroyObject();
 cmd.setType(Person.CLASSIFIER);
 GUIButtonComponent delete = GUIButtonComponent.create(parent, "Delete Person");
 b.setCommand(cmd);
 GUIComponentBinding.create(
     personsList.opSelection(), delete, CmdDestroyObject.PROPERTIES.input);
 
 

Author:
SOL Expert Group

Nested Class Summary
static class GUIButtonComponent.FQPropertyNames
          Deprecated. Not for public use.
static class GUIButtonComponent.PROPERTIES
          Deprecated. Not for public use.
 
Field Summary
static IClass CLASSIFIER
          UML class reference
 IAttributeValue<Boolean> displayAsLink
          Deprecated. Not for public use.
static java.lang.String FQ_TYPE_NAME
          Fully qualified UML class name
 
Fields inherited from class rs.sol.soloist.server.guiconfiguration.components.GUICommandComponent
click, command, commandExecuted, confirmationMessage, confirmationRequired, firstParam, performImmediately, redo, result, secondParam, text
 
Fields inherited from class rs.sol.soloist.server.guiconfiguration.construction.GUIComponent
addStyle, context, description, enabled, init, inputBindings, layoutData, logger, name, outputBindings, ownerTable, parent, removeStyle, show, showInParent, styleName, tooltip, visible
 
Constructor Summary
GUIButtonComponent()
           
 
Method Summary
 void constructor()
          The domain-specific constructor of the Classifier.
static GUIButtonComponent create(GUIContainerComponent parent, java.lang.String text)
          Returns new GUIButtonComponent with the given text (label) and assigns it to the given parent.
static GUIButtonComponent create(GUIContainerComponent parent, java.lang.String text, rs.sol.soloist.server.builtindomains.commands.Command cmd)
          Returns new GUIButtonComponent with the given text (label) and with the given command instance, and assigns it to the given parent.
static GUIButtonComponent create(GUIContainerComponent parent, java.lang.String text, rs.sol.soloist.server.builtindomains.commands.Command cmd, int row, int column)
          Deprecated. Not for public use.
static GUIButtonComponent create(GUIContainerComponent parent, java.lang.String text, rs.sol.soloist.server.builtindomains.commands.Command cmd, LayoutData layoutData, boolean displayAsLink)
          Deprecated. Not for public use.
static GUIButtonComponent create(GUIContainerComponent parent, java.lang.String text, int row, int column)
          Deprecated. Not for public use.
static GUIButtonComponent create(GUIContainerComponent parent, java.lang.String text, LayoutData layoutData)
          Returns new GUIButtonComponent with the given text (label), places it in the parent's layout according to the given LayoutData, and assigns it to the given parent.
static GUIButtonComponent create(GUIContainerComponent parent, java.lang.String text, LayoutData layoutData, rs.sol.soloist.server.builtindomains.commands.Command cmd)
          Returns new GUIButtonComponent with the given text (label) and with the given command instance, places it in the parent's layout according to the given LayoutData and assigns it to the given parent.
static GUIButtonComponent createLink(GUIContainerComponent parent, java.lang.String text)
          Returns new GUIButtonComponent styled like a hyperlink with the given text (label) and assigns it to the given parent.
static GUIButtonComponent createLink(GUIContainerComponent parent, java.lang.String text, rs.sol.soloist.server.builtindomains.commands.Command cmd)
          Returns new GUIButtonComponent styled like a hyperlink with the given text (label) and with the given command instance, and assigns it to the given parent.
static GUIButtonComponent createLink(GUIContainerComponent parent, java.lang.String text, rs.sol.soloist.server.builtindomains.commands.Command cmd, int row, int column)
          Deprecated. Not for public use.
static GUIButtonComponent createLink(GUIContainerComponent parent, java.lang.String text, int row, int column)
          Deprecated. Not for public use.
static GUIButtonComponent createLink(GUIContainerComponent parent, java.lang.String text, LayoutData layoutData)
          Returns new GUIButtonComponent styled like a hyperlink with the given text (label), places it in the parent's layout according to the given LayoutData, and assigns it to the given parent.
static GUIButtonComponent createLink(GUIContainerComponent parent, java.lang.String text, LayoutData layoutData, rs.sol.soloist.server.builtindomains.commands.Command cmd)
          Returns new GUIButtonComponent styled like a hyperlink with the given text (label) and with the given command instance, places it in the parent's layout according to the given LayoutData and assigns it to the given parent.
 rs.sol.soloist.client.common.info.ButtonInfo createSpecificInfo()
          Creates and returns an empty serializable object of the appropriate ComponentInfo sub-class.
 boolean getDisplayAsLink()
          Returns whether this button looks like a hyperlink or not.
 void setDisplayAsLink(boolean asLink)
          Sets whether this button looks like a hyperlink or not.
 
Methods inherited from class rs.sol.soloist.server.guiconfiguration.components.GUICommandComponent
create, create, execute, getCommand, getConfirmationMessage, getConfirmationRequired, getPerformImmediately, getText, getTextOrCommandName, ipClick, ipFirstParam, ipRedo, ipSecondParam, ipText, isConfirmationRequired, opClick, opCommandExecuted, opResult, setCommand, setConfirmationMessage, setConfirmationRequired, setPerformImmediately, setText
 
Methods inherited from class rs.sol.soloist.server.guiconfiguration.construction.GUIComponent
addStyleNames, addValueToSlot, clearSlot, clone, createInfo, createInfoAlreadyValidated, destructor, fillElementInfo, getApplication, getCommands, getCommands, getCommonOwner, getContext, getDescription, getDescrString, getDragIcon, getEnabled, getFeature, getFeature, getInputBindings, getInputPin, getInputPins, getLabelString, getLargeIcon, getLayoutData, getName, getNameString, getOutputPin, getOutputPins, getOwner, getParts, getSetting, getSmallIcon, getStyle, getSubnodes, getTooltip, getTooltipString, getTypeString, getVisible, handle, ipAddStyle, ipEnabled, ipInit, ipRemoveStyle, ipShow, ipShowInParent, ipVisible, isInputPin, isOutputPin, putFeatureInfo, readElement, readElements, readSlot, readSlotAsInfo, readSubnodes, removeValueFromSlot, setCellAlignment, setCellSize, setCellStyle, setCenter, setContext, setDescription, setDirectionAndSize, setEnabled, setLayoutData, setLeftRightWidth, setName, setRowColumn, setRowColumn, setSize, setSlot, setSlot, setStyle, setTooltip, setTopBottomHeight, setVisible, setXY, toTranslateDescriptors, translatePinName, updateInfo, validate, validateParts, validateParts
 
Methods inherited from class rs.sol.soloist.server.javaimpl.runtime.SOLoistClassInstance
destroy, equals, getAssociationEndInstance, getAssociationEndInstances, getAttributeValue, getAttributeValues, getMyClass, getMyID, getSlot, getSlot, getSlots, getUMLClass, hashCode, isMarkedAsDeleted, toString
 
Methods inherited from class rs.sol.soloist.server.uml.commonimplementation.runtime._ClassInstance
accept, accept, exists, getAssociationEndInstance, getAssociationEndInstance, getAssociationEndInstance, getClassifier, hasIdentity, isClassInstance, isDataTypeInstance, isEqualTo, makeClone, markAsDeleted
 
Methods inherited from class rs.sol.soloist.server.uml.commonimplementation.runtime._ClassifierInstance
conformsTo, copySlots, copySlots, getAttributeValue, getAttributeValue, getAttributeValue, getClassifierFQName, getClassifierUQName, getFirstCommonGeneralizer, getFirstCommonGeneralizerFQName, getFirstCommonGeneralizerUQName, getMElement, getSlot, getSlot, isDirectInstanceOf, isDirectInstanceOf, isInstanceOf, isInstanceOf, isKindOf, isModelElement, isRTElement
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface rs.sol.soloist.server.uml.concepts.runtime.IClassifierInstance
conformsTo, copySlots, copySlots, getAttributeValue, getAttributeValue, getClassifierFQName, getClassifierUQName, getFirstCommonGeneralizer, getFirstCommonGeneralizerFQName, getFirstCommonGeneralizerUQName, getSlot, getSlot, isDirectInstanceOf, isDirectInstanceOf, isInstanceOf, isInstanceOf
 
Methods inherited from interface rs.sol.soloist.server.uml.concepts.runtime.IRTElement
getMElement
 
Methods inherited from interface rs.sol.soloist.server.uml.concepts.IElement
isKindOf, isModelElement, isRTElement
 

Field Detail

displayAsLink

@Deprecated
public IAttributeValue<Boolean> displayAsLink
Deprecated. Not for public use.

FQ_TYPE_NAME

public static final java.lang.String FQ_TYPE_NAME
Fully qualified UML class name

See Also:
Constant Field Values

CLASSIFIER

public static final IClass CLASSIFIER
UML class reference

Constructor Detail

GUIButtonComponent

public GUIButtonComponent()
Method Detail

constructor

public void constructor()
Description copied from interface: IClassifierInstance
The domain-specific constructor of the Classifier.

Specified by:
constructor in interface IClassifierInstance
Overrides:
constructor in class GUICommandComponent

createSpecificInfo

public rs.sol.soloist.client.common.info.ButtonInfo createSpecificInfo()
Description copied from class: GUIComponent
Creates and returns an empty serializable object of the appropriate ComponentInfo sub-class. The returned object must be able to transmit every property of objects of this class from server to clients (browsers).

Returns:
a ComponentInfo sub-class instance

create

public static GUIButtonComponent create(GUIContainerComponent parent,
                                        java.lang.String text)
Returns new GUIButtonComponent with the given text (label) and assigns it to the given parent.

Parameters:
parent - the parent GUIContainerComponent widget
text - the button's text or label
Returns:
new GUIButtonComponent

create

public static GUIButtonComponent create(GUIContainerComponent parent,
                                        java.lang.String text,
                                        LayoutData layoutData)
Returns new GUIButtonComponent with the given text (label), places it in the parent's layout according to the given LayoutData, and assigns it to the given parent.

Parameters:
parent - the parent GUIContainerComponent widget
text - the button's text or label
layoutData - the layout data of the new button
Returns:
new GUIButtonComponent

create

public static GUIButtonComponent create(GUIContainerComponent parent,
                                        java.lang.String text,
                                        rs.sol.soloist.server.builtindomains.commands.Command cmd)
Returns new GUIButtonComponent with the given text (label) and with the given command instance, and assigns it to the given parent.

Parameters:
parent - the parent GUIContainerComponent widget
text - the button's text or label
cmd - the command instance for handling server side action
Returns:
new GUIButtonComponent

create

public static GUIButtonComponent create(GUIContainerComponent parent,
                                        java.lang.String text,
                                        LayoutData layoutData,
                                        rs.sol.soloist.server.builtindomains.commands.Command cmd)
Returns new GUIButtonComponent with the given text (label) and with the given command instance, places it in the parent's layout according to the given LayoutData and assigns it to the given parent.

Parameters:
parent - the parent GUIContainerComponent widget
text - the button's text or label
layoutData - the layout data of the new button
cmd - the command instance for handling server side action
Returns:
new GUIButtonComponent

createLink

public static GUIButtonComponent createLink(GUIContainerComponent parent,
                                            java.lang.String text)
Returns new GUIButtonComponent styled like a hyperlink with the given text (label) and assigns it to the given parent.

Parameters:
parent - the parent GUIContainerComponent widget
text - the button's text or label
Returns:
new GUIButtonComponent styled like a hyperlink

createLink

public static GUIButtonComponent createLink(GUIContainerComponent parent,
                                            java.lang.String text,
                                            LayoutData layoutData)
Returns new GUIButtonComponent styled like a hyperlink with the given text (label), places it in the parent's layout according to the given LayoutData, and assigns it to the given parent.

Parameters:
parent - the parent GUIContainerComponent widget
text - the button's text or label
layoutData - the layout data of the new button
Returns:
new GUIButtonComponent styled like a hyperlink

createLink

public static GUIButtonComponent createLink(GUIContainerComponent parent,
                                            java.lang.String text,
                                            rs.sol.soloist.server.builtindomains.commands.Command cmd)
Returns new GUIButtonComponent styled like a hyperlink with the given text (label) and with the given command instance, and assigns it to the given parent.

Parameters:
parent - the parent GUIContainerComponent widget
text - the button's text or label
cmd - the command instance for handling server side action
Returns:
new GUIButtonComponent styled like a hyperlink

createLink

public static GUIButtonComponent createLink(GUIContainerComponent parent,
                                            java.lang.String text,
                                            LayoutData layoutData,
                                            rs.sol.soloist.server.builtindomains.commands.Command cmd)
Returns new GUIButtonComponent styled like a hyperlink with the given text (label) and with the given command instance, places it in the parent's layout according to the given LayoutData and assigns it to the given parent.

Parameters:
parent - the parent GUIContainerComponent widget
text - the button's text or label
layoutData - the layout data of the new button
cmd - the command instance for handling server side action
Returns:
new GUIButtonComponent styled like a hyperlink

getDisplayAsLink

public boolean getDisplayAsLink()
Returns whether this button looks like a hyperlink or not.

Returns:
whether this button looks like a hyperlink or not
See Also:
setDisplayAsLink(boolean)

setDisplayAsLink

public void setDisplayAsLink(boolean asLink)
Sets whether this button looks like a hyperlink or not.

Parameters:
asLink - a boolean that specifies whether this button looks like a hyperlink or not

create

@Deprecated
public static GUIButtonComponent create(GUIContainerComponent parent,
                                                   java.lang.String text,
                                                   rs.sol.soloist.server.builtindomains.commands.Command cmd,
                                                   LayoutData layoutData,
                                                   boolean displayAsLink)
Deprecated. Not for public use.


create

@Deprecated
public static GUIButtonComponent create(GUIContainerComponent parent,
                                                   java.lang.String text,
                                                   int row,
                                                   int column)
Deprecated. Not for public use.


create

@Deprecated
public static GUIButtonComponent create(GUIContainerComponent parent,
                                                   java.lang.String text,
                                                   rs.sol.soloist.server.builtindomains.commands.Command cmd,
                                                   int row,
                                                   int column)
Deprecated. Not for public use.


createLink

@Deprecated
public static GUIButtonComponent createLink(GUIContainerComponent parent,
                                                       java.lang.String text,
                                                       int row,
                                                       int column)
Deprecated. Not for public use.


createLink

@Deprecated
public static GUIButtonComponent createLink(GUIContainerComponent parent,
                                                       java.lang.String text,
                                                       rs.sol.soloist.server.builtindomains.commands.Command cmd,
                                                       int row,
                                                       int column)
Deprecated. Not for public use.