Div |
---|
|
DO NOT EDIT THE CONTENT OF THIS PAGE DIRECTLY (EXCEPT INSIDE THE DIV BELOW WITH ID=DESCRIPTION), UNLESS YOU KNOW WHAT YOU'RE DOING. THE STRUCTURE OF THE CONTENT IS VITAL IN BEING ABLE TO AUTO UPDATE THE CONTENT THROUGH THE DOC GENERATOR.
Enter additional information related to this 'class' inside the {div} macro with 'id=description' |
...
...
...
Table Head (thead) |
---|
Table Row (tr) |
---|
| Table Head (th) |
---|
| Property Summary |
|
|
|
...
...
...
...
...
...
enabled The enable state of the component, default true. |
|
|
...
...
format The format that should be applied when displaying the data in the component. |
|
|
...
...
...
...
...
horizontal Flag for horizontal/vertical radios layout. |
|
|
...
...
name The name of the component. |
|
|
...
...
onAction The method that is executed when the component is clicked. |
|
|
...
...
onDataChange Method that is executed when the data in the component is successfully changed. |
|
|
...
...
...
styleClass The name of the style class that should be applied to this component. |
|
|
...
...
valuelist The valuelist that is used by this field when displaying data. |
|
|
...
...
visible The visible property of the component, default true. |
|
|
...
...
...
x coordinate of the component on the form. |
|
|
...
...
...
y coordinate of the component on the form. |
|
|
...
...
...
...
Table Cell (td) |
---|
#y The y coordinate of the component on the form. |
...
...
Table Head (thead) |
---|
Table Row (tr) |
---|
| Table Head (th) |
---|
| Method Summary |
|
|
|
...
...
getTitle() Get title label for the field or label. |
|
|
HTML Table |
---|
id | property |
---|
class | servoy sDetail |
---|
|
|
...
...
...
...
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
dataProviderID |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| The dataprovider of the component. |
|
|
|
|
...
// Normally the dataprovider is specified when a component is created.
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 40, 100, 20);
// But it can be modified later if needed.
field.dataProviderID = 'parent_table_id'; |
|
|
|
|
|
...
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
displayType |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| The type of display used by the field. Can be one of CALENDAR, CHECKS, COMBOBOX, HTML_AREA, IMAGE_MEDIA, PASSWORD, RADIOS, RTF_AREA, TEXT_AREA, TEXT_FIELD, TYPE_AHEAD, LIST_BOX, MULTISELECT_LISTBOX or SPINNER. |
|
|
|
|
...
// The display type is specified when the field is created.
var cal = form.newField('my_table_date', JSField.CALENDAR, 10, 10, 100, 20);
// But it can be changed if needed.
cal.dataProviderID = 'my_table_text';
cal.displayType = JSField.TEXT_FIELD; |
|
|
|
|
|
...
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| The enable state of the component, default true. |
|
|
|
|
...
var form = solutionModel.newForm('printForm', 'db:/example_data/parent_table', null, false, 400, 300);
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
field.enabled = false; |
|
|
|
|
|
...
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| The format that should be applied when displaying the data in the component. There are different options for the different dataprovider types that are assigned to this field. For Integer fields, there is a display and an edit format, using http://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html and the max (string) length can be set. For Text/String fields, there are options to force uppercase,lowercase or only numbers. Or a mask can be set that restrict the input the pattern chars can be found here: http://docs.oracle.com/javase/7/docs/api/javax/swing/text/MaskFormatter.html A mask can have a placehoder (what is shown when there is no data) and if the data must be stored raw (without literals of the mask). A max text length can also be set to force the max text length input, this doesn't work on mask because that max length is controlled with the mask. For Date fields a display and edit format can be set by using a pattern from here: http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html, you can also say this must behave like a mask (the edit format) A mask only works with when the edit format is exactly that mask (1 char is 1 number/char), because for example MM then only 2 numbers are allowed MMM that displays the month as a string is not supported as a mask. Some examples are "dd-MM-yyyy", "MM-dd-yyyy", etc. The format property is also used to set the UI Converter, this means that you can convert the value object to something else before it gets set into the field, this can also result in a type change of the data. So a string in scripting/db is converted to a integer in the ui, then you have to set an integer format. This property is applicable only for types: TEXT_FIELD, COMBOBOX, TYPE_AHEAD, CALENDAR and SPINNER. |
|
|
|
|
...
var field = form.newField('my_table_number', JSField.TEXT_FIELD, 10, 10, 100, 20);
field.format = '$#.00'; |
|
|
|
|
|
...
...
height
...
Flag for horizontal/vertical radios layout. |
|
|
|
|
...
...
Table Row (tr) |
---|
|
Table Cell (td) |
---|
horizontal |
|
Table Row (tr) |
---|
|
Table Cell (td) |
---|
Div |
---|
| Flag for horizontal/vertical radios layout. |
|
|
...
...
...
...
...
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
application.output('original width: ' + field.width);
application.output('original height: ' + field.height);
field.width = 200;
field.height = 100;
application.output('modified width: ' + field.width);
application.output('modified height: ' + field.height);
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| The name of the component. Through this name it can also accessed in methods. |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample Div |
---|
| Code Block |
---|
| var form = solutionModel.newForm('someForm', 'db:/example_data/parent_table', null, false, 620, 300);
var label = form.newLabel('Label', 10, 10, 150, 150);
label.name = 'myLabel'; // Give a name to the component.
forms['someForm'].controller.show()
// Now use the name to access the component.
forms['someForm'].elements['myLabel'].text = 'Updated text'; |
|
|
|
|
|
...
name
...
method that is executed when the component is clicked. |
|
|
|
|
...
...
...
...
...
...
function doNothing() { application.output("Doing nothing."); }');
var |
|
|
|
|
|
...
...
...
...
Table Row (tr) |
---|
|
Table Cell (td) |
---|
Div |
---|
| The method that is executed when the component is clicked. |
|
|
Table Row (tr) |
---|
|
Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var doNothingMethod = form.newMethod('function doNothing() { application.output("Doing nothing."); }');
var onClickMethod = form.newMethod('function onClick(event) { application.output("I was clicked at " + event.getTimestamp()); }');
var onDoubleClickMethod = form.newMethod('function onDoubleClick(event) { application.output("I was double-clicked at " + event.getTimestamp()); }');
var onRightClickMethod = form.newMethod('function onRightClick(event) { application.output("I was right-clicked at " + event.getTimestamp()); }');
// At creation the button has the 'doNothing' method as onClick handler, but we'll change that later.
var btn = form.newButton('I am a button', 10, 40, 200, 20, doNothingMethod);
btn.onAction = onClickMethod;
btn.onDoubleClick = onDoubleClickMethod;
btn.onRightClick = onRightClickMethod;
|
|
|
|
...
...
Table Row (tr) |
---|
|
Table Cell (td) |
---|
onDataChange |
|
Table Row (tr) |
---|
|
Table Cell (td) |
---|
Div |
---|
| Method that is executed when the data in the component is successfully changed. |
|
|
...
...
...
...
function onClick(event) { application.output("I was clicked at " + event.getTimestamp()); }');
var onDoubleClickMethod = form.newMethod('function onDoubleClick(event) { application.output("I was double-clicked at " + event.getTimestamp()); }');
var onRightClickMethod = form.newMethod('function |
|
|
|
|
|
...
onRightClick(event) { application.output(" |
|
|
|
|
|
...
I was right-clicked at " + |
|
|
|
|
|
...
event.getTimestamp()); }');
// At creation the button has the 'doNothing' method as onClick handler, but we'll change that later.
var btn = form. |
|
|
|
|
|
...
...
...
...
...
...
...
...
...
...
...
Table Row (tr) |
---|
|
Table Cell (td) |
---|
placeholderText |
|
Table Row (tr) |
---|
|
Table Cell (td) |
---|
Div |
---|
| The text that is displayed in field when the field doesn't have a text value. |
|
|
...
...
...
onClickMethod;
btn.onDoubleClick = onDoubleClickMethod;
btn.onRightClick = onRightClickMethod; |
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
onDataChange |
|
|
|
...
...
...
Method that is executed when the data in the component is successfully changed. |
|
|
|
|
...
...
...
...
...
...
styleClass
...
...
...
...
Table Row (tr) |
---|
|
Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var form = solutionModel.newForm('printForm', 'db:/example_data/parent_table', null, false, 400, 300);
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
var style = solutionModel.newStyle('myStyle','field.fancy { background-color: yellow; }');
form.styleName = 'myStyle'; // First set the style on the form.
field.styleClass = 'fancy'; // Then set the style class on the field.
|
|
|
|
...
...
Table Row (tr) |
---|
|
Table Cell (td) |
---|
Div |
---|
| The valuelist that is used by this field when displaying data. Can be used with fields of type CHECKS, COMBOBOX, RADIOS and TYPE_AHEAD. |
|
|
...
...
...
...
...
Div |
---|
|
The name of the style class that should be applied to this component. When defining style classes for specific component types, their names must be prefixed according to the type of the component. For example in order to define a class names 'fancy' for fields, in the style definition the class must be named 'field.fancy'. If it would be intended for labels, then it would be named 'label.fancy'. When specifying the class name for a component, the prefix is dropped however. Thus the field or the label will have its styleClass property set to 'fancy' only. |
| var form = solutionModel.newForm('someForm', 'db:/example_data/parent_table', null, false, 620, 300);
var onDataChangeMethod = form.newMethod('function onDataChange(oldValue, newValue, event) { application.output("Data changed from " + oldValue + " to " + newValue + " at " + event.getTimestamp()); }');
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
field.onDataChange = onDataChangeMethod;
forms['someForm'].controller.show(); |
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
styleClass |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| The name of the style class that should be applied to this component. When defining style classes for specific component types, their names must be prefixed according to the type of the component. For example in order to define a class names 'fancy' for fields, in the style definition the class must be named 'field.fancy'. If it would be intended for labels, then it would be named 'label.fancy'. When specifying the class name for a component, the prefix is dropped however. Thus the field or the label will have its styleClass property set to 'fancy' only. |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample Div |
---|
| Code Block |
---|
| var form = solutionModel.newForm('printForm', 'db:/example_data/parent_table', null, false, 400, 300);
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
var style = solutionModel.newStyle('myStyle','field.fancy { background-color: yellow; }');
form.styleName = 'myStyle'; // First set the style on the form.
field.styleClass = 'fancy'; // Then set the style class on the field. |
|
|
|
|
|
...
visible
...
valuelist that is used by this field when displaying data. Can be used with fields of type CHECKS, COMBOBOX, RADIOS and TYPE_AHEAD. |
|
|
|
|
...
...
...
...
...
...
JSValueList.CUSTOM_VALUES);
vlist.customValues = "one\ntwo\nthree\nfour";
var |
|
|
|
|
|
...
...
...
...
...
...
...
...
...
...
width
...
visible property of the component, default true. |
|
|
|
|
...
...
...
form = solutionModel.newForm('printForm', 'db:/example_data/parent_table', null, false, 400, 300);
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
field.visible = false; |
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| The x coordinate of the component on the form. |
|
|
|
|
...
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
application.output('original location: ' + field.x + ', ' + field.y);
field.x = 90;
field.y = 90;
application.output('changed location: ' + field.x + ', ' + field.y); |
|
|
|
|
|
...
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| The y coordinate of the component on the form. |
|
|
|
|
...
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 10, 10, 100, 20);
application.output('original location: ' + field.x + ', ' + field.y);
field.x = 90;
field.y = 90;
application.output('changed location: ' + field.x + ', ' + field.y); |
|
|
|
|
|
...
HTML Table |
---|
id | function |
---|
class | servoy sDetail |
---|
|
Colgroup Tag |
---|
columnpadding0px |
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| Get title label for the field or label. |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample Div |
---|
| Code Block |
---|
|
var form = solutionModel.newForm('someForm', 'db:/example_data/parent_table');
var field = form.newField('parent_table_text', JSField.TEXT_FIELD, 1);
field.getTitle().text = 'Parent table'
forms['someForm'].controller.show()
|
|
|
|
|
|