|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.rim.device.api.ui.Field
net.rim.device.api.ui.component.ChoiceField
net.rim.device.api.ui.component.ObjectChoiceField
com.sybase.uep.bobclient.controls.SelectBox
public class SelectBox
This is the select box control
Field Summary | |
---|---|
protected java.lang.String |
_namedQuery
|
protected java.util.Vector |
_namedQuerySubmitElements
|
Fields inherited from class net.rim.device.api.ui.component.ChoiceField |
---|
CONTEXT_CHANGE_OPTION |
Fields inherited from class net.rim.device.api.ui.Field |
---|
ACTION_INVOKE, EDITABLE, EDITABLE_MASK, FIELD_BOTTOM, FIELD_HALIGN_MASK, FIELD_HCENTER, FIELD_LEADING, FIELD_LEFT, FIELD_RIGHT, FIELD_TOP, FIELD_TRAILING, FIELD_VALIGN_MASK, FIELD_VCENTER, FOCUSABLE, FOCUSABLE_MASK, HIGHLIGHT_FOCUS, HIGHLIGHT_SELECT, NON_FOCUSABLE, NON_SPELLCHECKABLE, READONLY, SPELLCHECKABLE, SPELLCHECKABLE_MASK, STATUS_MOVE_FOCUS_HORIZONTALLY, STATUS_MOVE_FOCUS_VERTICALLY, USE_ALL_HEIGHT, USE_ALL_WIDTH, VISUAL_STATE_ACTIVE, VISUAL_STATE_DISABLED, VISUAL_STATE_DISABLED_FOCUS, VISUAL_STATE_FOCUS, VISUAL_STATE_NORMAL |
Fields inherited from interface net.rim.device.api.ui.FieldChangeListener |
---|
PROGRAMMATIC |
Constructor Summary | |
---|---|
SelectBox(java.lang.String label,
java.lang.Object[] choices,
int initialIndex)
Constructor to create a new select box |
|
SelectBox(java.lang.String label,
java.lang.Object[] choices,
int initialIndex,
long style)
Constructor to create a new select box |
Method Summary | |
---|---|
void |
clearQuery()
Clear the cached query |
protected void |
drawFocus(net.rim.device.api.ui.Graphics g,
boolean on)
(non-Javadoc) |
void |
fieldChanged(net.rim.device.api.ui.Field field,
int context)
(non-Javadoc) |
MBOModel |
getApplicationData()
Retrieve the application currently set for this table |
int |
getColSpan()
(non-Javadoc) |
MBOAttribute[] |
getColumnAttributes()
Retrieve the column attributes |
int |
getControlID()
Returns the control's ID |
int |
getCurrentRecordIndex()
Retrieve current record index |
java.lang.Object |
getCurrentRow()
Retrieve current selected row |
ICustomEventsDelegate |
getCustomEventsDelegate()
Returns the control's custom events delegate |
CustomEventsHandler |
getCustomEventsHandler()
Returns the control's custom events handler |
IMobileApplicationDataHandler |
getDataHandler()
Retrieve the mobile application data handler |
Query |
getDataProperties()
Retrieve the data properties |
java.lang.String |
getDisplayName()
The display name of the select box |
int |
getFieldIndex()
Retrieve the edit index for this select box |
void |
getFocusRect(net.rim.device.api.ui.XYRect rect)
|
FontStyle |
getFontStyle()
Retrieve this control's font style |
long |
getHorizontalAlignment()
(non-Javadoc) |
java.lang.String |
getLinkedValue()
Retrieve the linked paramter value defined |
LinkParamNode |
getLinkParameters()
Retrieve the link parameter object |
LinkParamListener |
getLinkParamListener()
Gets the LinkParamListener |
LogicalType |
getLogicalType()
Retrieve the logical type assign to this control |
java.lang.String |
getMobileAppID()
Retrieve the Mobile Application ID |
java.lang.String |
getMobileApplicationName()
Retrieve the application data name |
java.lang.String |
getName()
(non-Javadoc) |
PagingObject |
getPagingObject()
Retrieve a new paging object |
java.lang.String |
getParentAssociationName()
Retrieve the parent association name |
IBOBScreen |
getParentScreen()
(non-Javadoc) |
java.lang.Object |
getParentSelectedRow()
Retrieve parent selected row |
java.lang.Object |
getPIMValue()
Retrieve the PIM value |
int |
getPreferredHeight()
(non-Javadoc) |
int |
getPreferredWidth()
(non-Javadoc) |
MBOModel |
getRelationshipParentAppData()
Retrieve relationship parent application dat |
int |
getRowSpan()
(non-Javadoc) |
java.lang.String |
getSchemaType()
Retrieve the schema type |
int |
getSelectedItemWidth()
Retrieve selected item label width |
java.lang.String |
getType()
Retrieve the type for this select box |
ValidationObject |
getValidationObj()
Retrieve the validation object set on this checkbox |
java.lang.Object |
getValue()
(non-Javadoc) |
long |
getVerticalAlignment()
(non-Javadoc) |
boolean |
hasRelationshipAppData()
Check is this mobile data control contains relationship data |
boolean |
hasValidation()
Check if there is a validation object assigned to this control |
void |
initMobileApplicationData()
Setup select boxes if there is a mobile application defined |
boolean |
isRequired()
Check if this select box is required |
protected void |
layout(int width,
int height)
(non-Javadoc) |
protected void |
makeContextMenu(net.rim.device.api.ui.ContextMenu menu)
(non-Javadoc) |
void |
modelChanged(ModelChangeEvent event)
(non-Javadoc) |
protected boolean |
navigationClick(int status,
int time)
(non-Javadoc) |
protected boolean |
navigationMovement(int dx,
int dy,
int status,
int time)
(non-Javadoc) |
protected boolean |
navigationUnclick(int status,
int time)
(non-Javadoc) |
protected void |
onFocus(int direction)
(non-Javadoc) |
protected void |
onUnfocus()
(non-Javadoc) |
protected void |
paint(net.rim.device.api.ui.Graphics g)
(non-Javadoc) |
void |
refresh()
(non-Javadoc) |
void |
refreshData()
Refresh the data |
void |
refreshFooter(java.lang.String valueToBeDisplay)
Refresh the footer field from the screen that contains the text of the button. |
void |
setApplicationData(MBOModel applicationData)
Set the application data |
void |
setBackgroundColor(int bgcolor)
(non-Javadoc) |
void |
setChoices(java.lang.Object[] choices)
Set choices of the select box |
void |
setColSpan(int colspan)
(non-Javadoc) |
void |
setControlID(int controlID)
Sets the control's ID |
void |
setCurrentRecordIndex(int currentRecordIndex)
Set current record index |
void |
setCustomEventsDelegate(ICustomEventsDelegate delegate,
int eventsFlags)
Sets the control's custom events delegate for the given events |
void |
setDataProperties(Query dataProps)
Set the data properties filtering |
void |
setDisplayName(java.lang.String name)
Set display name |
void |
setDynamicNamedQuery(java.lang.String namedQuery)
(non-Javadoc) |
void |
setDynamicNamedQueryParameters(java.util.Hashtable parameters)
(non-Javadoc) |
void |
setFieldIndex(int index)
Set edit index |
void |
setFocusFontStyle(FontStyle fontStyle)
Set the focus font style for this control |
void |
setFontStyle(FontStyle fontStyle)
Set the unfocus font style for this control |
void |
setFooterField(FooterField field)
Set the footer field |
void |
setLayoutHeight(int height)
(non-Javadoc) |
void |
setLayoutWidth(int width)
(non-Javadoc) |
void |
setLinkedValue(java.lang.String value)
Set linked value |
void |
setLinkParamListener(LinkParamListener linkParamListener)
Sets the LinkParamListener |
void |
setLogicalType(LogicalType logicalType)
Set logical type |
void |
setMobileAppID(java.lang.String appID)
Set mobile application id |
void |
setName(java.lang.String name)
Set a key name for this control |
void |
setNameColumnName(java.lang.String columnName)
Set name of name column |
void |
setNamedQuery(java.lang.String namedQuery)
(non-Javadoc) |
void |
setNamedQueryParameters(java.util.Hashtable parameters)
(non-Javadoc) |
void |
setNamedQuerySubmitElements(java.util.Vector parameters)
(non-Javadoc) |
void |
setPIMValue(java.lang.Object value)
Sets the PIM value |
void |
setProperty(int key,
java.lang.String value)
Set the property values for this select box item |
void |
setRelationshipAppData(MBOModel parentAppData,
java.lang.Object selectedRow,
java.lang.String assoicationName)
Set relationship application data |
void |
setRequired(boolean required)
Set if this select box is required |
void |
setRowSpan(int rowspan)
(non-Javadoc) |
void |
setSchemaType(java.lang.String schemaType)
Set the schema type |
void |
setSelectedValue()
Set the selected value for this select box |
void |
setSelectedValue(java.lang.String selectedValue)
Set selected value |
void |
setType(java.lang.String type)
Set type |
void |
setupMobileDataControlContextVariables()
Save current selected row of this mobile data control |
void |
setValidationObject(ValidationObject obj)
Set validation object |
void |
setValueColumnName(java.lang.String columnName)
Set name of value column |
void |
setVariableLabel(ControlVariable variable)
Set the control variable object for the label |
void |
setVariableSelectedValue(ControlVariable variable)
Set the control variable object for the selected index of the select box |
protected boolean |
touchEvent(net.rim.device.api.ui.TouchEvent message)
(non-Javadoc) |
Methods inherited from class net.rim.device.api.ui.component.ObjectChoiceField |
---|
getChoice |
Methods inherited from class net.rim.device.api.ui.component.ChoiceField |
---|
getAccessibleContext, getHeightOfChoices, getLabel, getSelectedIndex, getSize, getWidthOfChoice, invokeAction, keyChar, keyControl, keyStatus, moveFocus, setLabel, setSelectedIndex, setSelectedIndex, setSelectedIndex, setSize, toString |
Methods inherited from class net.rim.device.api.ui.Field |
---|
drawHighlightRegion, fieldChangeNotify, focusAdd, focusChangeNotify, focusRemove, getBackground, getBackground, getBorder, getBorder, getBorder, getChangeListener, getContentHeight, getContentLeft, getContentRect, getContentRect, getContentTop, getContentWidth, getContextMenu, getContextMenu, getCookie, getExtent, getExtent, getFieldStyle, getFocusListener, getFont, getHeight, getIndex, getLeafFieldWithFocus, getLeft, getManager, getMargin, getMarginBottom, getMarginLeft, getMarginRight, getMarginTop, getOriginal, getPadding, getPaddingBottom, getPaddingLeft, getPaddingRight, getPaddingTop, getScreen, getState, getStyle, getTop, getVisualState, getWidth, invalidate, invalidate, invalidateAll, isDataValid, isDirty, isEditable, isFocus, isFocusable, isMuddy, isPasteable, isSelectable, isSelecting, isSelectionCopyable, isSelectionCutable, isSelectionDeleteable, isSpellCheckable, isStyle, isVisible, keyDown, keyRepeat, keyUp, makeContextMenu, moveFocus, onDisplay, onExposed, onMenuDismissed, onMenuDismissed, onObscured, onUndisplay, onVisibilityChange, paintBackground, paste, select, selectionCopy, selectionCut, selectionDelete, setBackground, setBackground, setBorder, setBorder, setBorder, setBorder, setBorder, setChangeListener, setCookie, setDirty, setEditable, setExtent, setFocus, setFocusListener, setFont, setFont, setMargin, setMargin, setMuddy, setNonSpellCheckable, setPadding, setPadding, setPosition, setVisualState, trackwheelClick, trackwheelUnclick, updateLayout |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected java.lang.String _namedQuery
protected java.util.Vector _namedQuerySubmitElements
Constructor Detail |
---|
public SelectBox(java.lang.String label, java.lang.Object[] choices, int initialIndex, long style)
label
- String
value for the labelchoices
- Object
array of choices that goes in this select boxinitialIndex
- int
value for the selected index choicestyle
- long
value for the style of the inputpublic SelectBox(java.lang.String label, java.lang.Object[] choices, int initialIndex)
label
- String
value for the labelchoices
- Object
array of choices that goes in this select boxinitialIndex
- int
value for the selected index choiceMethod Detail |
---|
public java.lang.String getMobileAppID()
getMobileAppID
in interface MobileDataControl
String
value of the mobile application IDpublic java.lang.String getMobileApplicationName()
getMobileApplicationName
in interface MobileDataControl
String
value of the name of the application datapublic MBOModel getApplicationData()
getApplicationData
in interface MobileDataControl
MBOModel
application data objectMBOModel
public void setApplicationData(MBOModel applicationData)
setApplicationData
in interface MobileDataControl
applicationData
- MBOModel
mobile application objectsMBOModel
public void setRelationshipAppData(MBOModel parentAppData, java.lang.Object selectedRow, java.lang.String assoicationName)
setRelationshipAppData
in interface MobileDataControl
parentAppData
- MBOModel
object for the parent relationshipselectedRow
- Object
value for the selected row objectassoicationName
- String
value for the parent relationship association nameMBOModel
public void setNamedQuery(java.lang.String namedQuery)
setNamedQuery
in interface MobileDataControl
namedQuery
- String
value for the named query nameMobileDataControl.setNamedQuery(String)
public void setNamedQuerySubmitElements(java.util.Vector parameters)
setNamedQuerySubmitElements
in interface MobileDataControl
parameters
- Vector
list of SubmitElement objectscom.sybase.uep.bobclient.controls.MobileDataControl#setNamedQuerySubmitElements(String)
public void setNamedQueryParameters(java.util.Hashtable parameters)
setNamedQueryParameters
in interface MobileDataControl
parameters
- Hashtable
map of name value pairMobileDataControl.setNamedQueryParameters(Hashtable)
public void setDynamicNamedQuery(java.lang.String namedQuery)
setDynamicNamedQuery
in interface MobileDataControl
namedQuery
- String
value for the dynamic named query nameMobileDataControl.setDynamicNamedQuery(String)
public void setDynamicNamedQueryParameters(java.util.Hashtable parameters)
setDynamicNamedQueryParameters
in interface MobileDataControl
parameters
- Hashtable
map of name value pairMobileDataControl.setNamedQueryParameters(Hashtable)
public boolean hasRelationshipAppData()
hasRelationshipAppData
in interface MobileDataControl
true
if there are relationship data, otherwise false
public MBOModel getRelationshipParentAppData()
getRelationshipParentAppData
in interface MobileDataControl
MBOModel
application data objectMBOModel
public MBOAttribute[] getColumnAttributes()
getColumnAttributes
in interface MobileDataControl
MBOAttribute
array list of MBOAttribute objectsMBOAttribute
public java.lang.Object getCurrentRow()
getCurrentRow
in interface MobileDataControl
Object
value of the current Rowpublic Query getDataProperties()
getDataProperties
in interface MobileDataControl
Query
data properties objectQuery
public void setDataProperties(Query dataProps)
setDataProperties
in interface MobileDataControl
dataProps
- Query
object for the mobile application data propertiesspublic java.lang.String getLinkedValue()
String
value for the linked parameterpublic LinkParamNode getLinkParameters()
LinkParamNode
link parameter objectLinkParamNode
public void initMobileApplicationData()
initMobileApplicationData
in interface MobileDataControl
public void setBackgroundColor(int bgcolor)
setBackgroundColor
in interface Control
bgcolor
- int
value of the color in HEX.
For example: 0x00000000, 0x00FF0000, 0x00FFFFFFControl.setBackgroundColor(int bgcolor)
public void setColSpan(int colspan)
setColSpan
in interface Control
colspan
- int
value of the column spanControl.setColSpan(int colspan)
public int getColSpan()
getColSpan
in interface Control
int
value of the column spanControl.getColSpan()
public void setRowSpan(int rowspan)
setRowSpan
in interface Control
rowspan
- int
value of the row spanControl.setRowSpan(int rowspan)
public int getRowSpan()
getRowSpan
in interface Control
int
value of the row spanControl.getRowSpan()
public long getHorizontalAlignment()
getHorizontalAlignment
in interface Control
long
value of the horizontal alignment.
Possible values could be Field.FIELD_HCENTER, Field.FIELD_RIGHT, or Field.FIELD_LEFTControl.getHorizontalAlignment()
public long getVerticalAlignment()
getVerticalAlignment
in interface Control
long
value of the vertical alignment
Possible values could be Field.FIELD_TOP, Field.FIELD_BOTTOM, or Field.FIELD_VCENTERControl.getVerticalAlignment()
public void setSelectedValue()
public void setVariableSelectedValue(ControlVariable variable)
variable
- ControlVariable
control variable objectControlVariable
public void setVariableLabel(ControlVariable variable)
variable
- ControlVariable
control variable objectControlVariable
public FontStyle getFontStyle()
FontStyle
font style objectFontStyle
public void setFontStyle(FontStyle fontStyle)
fontStyle
- FontStyle
font style objectFontStyle
public void setFocusFontStyle(FontStyle fontStyle)
fontStyle
- public int getFieldIndex()
int
value for the field indexpublic java.lang.String getType()
String
value for the control typepublic java.lang.String getName()
getName
in interface Control
String
value of the key nameControl.getName()
public java.lang.String getDisplayName()
String
value for the display namepublic LogicalType getLogicalType()
getLogicalType
in interface PIMControl
LogicalType
logical type objectLogicalType
public void setLogicalType(LogicalType logicalType)
logicalType
- LogicalType
logical type objectLogicalType
public java.lang.String getSchemaType()
getSchemaType
in interface PIMControl
String
value for the schema typepublic void setSchemaType(java.lang.String schemaType)
schemaType
- String
value for the schema typepublic void setPIMValue(java.lang.Object value)
setPIMValue
in interface PIMControl
value
- Object
PIM valuepublic java.lang.Object getPIMValue()
getPIMValue
in interface PIMControl
Object
value for the PIMpublic java.lang.Object getValue()
getValue
in interface Control
Object
of the value set for this controlControl.getValue()
public ValidationObject getValidationObj()
ValidationObject
validation objectValidationObject
public boolean hasValidation()
true
if there is validation object set, otherwise false
public void setRequired(boolean required)
required
- true
if control is required, otherwise false
public boolean isRequired()
true
if required, otherwise false
public void setLayoutWidth(int width)
setLayoutWidth
in interface Control
width
- int
value of the available layout widthControl.setLayoutWidth(int width)
protected void makeContextMenu(net.rim.device.api.ui.ContextMenu menu)
makeContextMenu
in class net.rim.device.api.ui.component.ChoiceField
Field.makeContextMenu(ContextMenu menu)
public int getPreferredWidth()
getPreferredWidth
in interface Control
getPreferredWidth
in class net.rim.device.api.ui.component.ChoiceField
int
value of the available layout widthControl.getPreferredWidth()
public int getSelectedItemWidth()
int
value of the width of the text of the selected item.public void setLayoutHeight(int height)
setLayoutHeight
in interface Control
height
- int
value of the available layout heightControl.setLayoutHeight(int height)
public int getPreferredHeight()
getPreferredHeight
in interface Control
getPreferredHeight
in class net.rim.device.api.ui.component.ChoiceField
int
value of the available layout heightControl.getPreferredHeight()
protected void onFocus(int direction)
onFocus
in class net.rim.device.api.ui.Field
Field.onFocus(int direction)
protected void onUnfocus()
onUnfocus
in class net.rim.device.api.ui.Field
Field.onUnfocus()
protected boolean navigationClick(int status, int time)
navigationClick
in class net.rim.device.api.ui.Field
Field.navigationClick(int status, int time)
protected boolean navigationUnclick(int status, int time)
navigationUnclick
in class net.rim.device.api.ui.Field
Field.navigationUnclick(int status, int time)
protected boolean navigationMovement(int dx, int dy, int status, int time)
navigationMovement
in class net.rim.device.api.ui.Field
Field.navigationMovement(int dx, int dy, int status, int time)
public void fieldChanged(net.rim.device.api.ui.Field field, int context)
fieldChanged
in interface net.rim.device.api.ui.FieldChangeListener
FieldChangeListener.fieldChanged(Field field, int context)
protected boolean touchEvent(net.rim.device.api.ui.TouchEvent message)
touchEvent
in class net.rim.device.api.ui.Field
Field.touchEvent(TouchEvent message)
protected void layout(int width, int height)
layout
in class net.rim.device.api.ui.component.ChoiceField
Field.layout(int width, int height)
protected void drawFocus(net.rim.device.api.ui.Graphics g, boolean on)
drawFocus
in class net.rim.device.api.ui.Field
Field.drawFocus(Graphics g, boolean on)
public void getFocusRect(net.rim.device.api.ui.XYRect rect)
getFocusRect
in class net.rim.device.api.ui.component.ChoiceField
protected void paint(net.rim.device.api.ui.Graphics g)
paint
in class net.rim.device.api.ui.component.ChoiceField
Field.paint(Graphics g)
public void refresh()
refresh
in interface Control
Control.refresh()
public void setProperty(int key, java.lang.String value)
key
- int
int value for the key of a specific attributevalue
- String
value for this attributepublic void refreshFooter(java.lang.String valueToBeDisplay)
valueToBeDisplay
- String
value of the text value to be display in the footerpublic void setupMobileDataControlContextVariables()
setupMobileDataControlContextVariables
in interface MobileDataControl
public void setDisplayName(java.lang.String name)
name
- String
value of the display name for this controlpublic void setType(java.lang.String type)
type
- String
value for the type of the updatepublic void setName(java.lang.String name)
name
- String
value for the key name for this controlpublic void setValidationObject(ValidationObject obj)
obj
- ValidationObject
validation objectValidationObject
public void setFieldIndex(int index)
editIndex
- int
value of the edit index used by update containerpublic void setFooterField(FooterField field)
{@link
- FooterField} footer field to put the text of the textinput into.
This is useful for long text, so it can be displayed in the footer.
null
value if there is no footer.FooterField
public void setMobileAppID(java.lang.String appID)
mobileAppId
- String
value for the mobile application IDpublic void setNameColumnName(java.lang.String columnName)
nameColumnName
- String
value for the column namepublic void setValueColumnName(java.lang.String columnName)
valueColumnName
- String
value for the column namepublic void setLinkedValue(java.lang.String value)
linkedValue
- String
value for the link parameter.
A null (not linked) or value if this choice is linked with other SelectBox
items
in this layout with the same mobileAppId assigned.public void setChoices(java.lang.Object[] choices)
setChoices
in class net.rim.device.api.ui.component.ObjectChoiceField
choices
- Object
array list for the choices that goes in this select boxpublic void setSelectedValue(java.lang.String selectedValue)
selectedValue
- String
value for the selected value of the select boxpublic java.lang.Object getParentSelectedRow()
getParentSelectedRow
in interface MobileDataControl
Object
row objectpublic java.lang.String getParentAssociationName()
getParentAssociationName
in interface MobileDataControl
String
value for the parent association namepublic PagingObject getPagingObject()
getPagingObject
in interface MobileDataControl
PagingObject
paging objectPagingObject
public IBOBScreen getParentScreen()
getParentScreen
in interface MobileDataControl
MobileDataControl.getParentScreen()
public void modelChanged(ModelChangeEvent event)
modelChanged
in interface IModelChangeListener
event
- ModelChangeEvent
model change eventcom.sybase.uep.bobclient.data.ModelChangeEvent#modelChanged(ModelChangeEvent event)
public int getCurrentRecordIndex()
getCurrentRecordIndex
in interface MobileDataControl
int
value for the current record indexpublic void setCurrentRecordIndex(int currentRecordIndex)
setCurrentRecordIndex
in interface MobileDataControl
public IMobileApplicationDataHandler getDataHandler()
getDataHandler
in interface MobileDataControl
MobileApplicationDataHandler
mobile application data handler objectMobileApplicationDataHandler
public void refreshData()
refreshData
in interface MobileDataControl
public void clearQuery()
MobileDataControl
clearQuery
in interface MobileDataControl
public ICustomEventsDelegate getCustomEventsDelegate()
public void setCustomEventsDelegate(ICustomEventsDelegate delegate, int eventsFlags)
delegate
- custom events delegateeventsFlags
- the events to set delegate topublic int getControlID()
public void setControlID(int controlID)
controlId
- control IDpublic CustomEventsHandler getCustomEventsHandler()
public void setLinkParamListener(LinkParamListener linkParamListener)
linkParamListener
- public LinkParamListener getLinkParamListener()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |