Provided property value types
Type | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
boolean | Boolean value, either true or false | |||||||||
border | CSS border string representation | |||||||||
byte | A number, 8 bit unsigned | |||||||||
color | String color value Example #FFFFFF | |||||||||
dataprovider | Reference to a dataprovider, either a record or scope variable. Can be a complex object for supporting onDataChange Example { "type": "dataprovider", "ondatachange": { "onchange": "onDataChangeMethodID", "callback": "onDataChangeCallback" } "forFoundset" : "myFoundsetPropertyName" // optional; if specified then on the client // instead of one value you will get an array of values one for each record // in the viewport of given foundset property (see also 'foundset' property type) } | |||||||||
date | Date value | |||||||||
dimension | Dimension representation Example { width: 100, height: 20 } | |||||||||
double | A floating point number | |||||||||
float | A floating point number | |||||||||
font | CSS font string | |||||||||
form | URL string pointing to a form (like tab in tabpanel) | |||||||||
format | Format string. Requires to be specified as object to specify which dataprovider/valuelist property to map this format property on. For property can also contain an array of properties (will be applied to first one which is defined). Example { for: 'dataProviderID', type: 'format' } | |||||||||
function | Callback function information that can be called on server from client. | |||||||||
int | An integer number | |||||||||
insets | Padding insets representation Example { paddingTop: 10px, paddingLeft: 20px, paddingBottom : 10px, paddingRight: 10px } | |||||||||
labelfor | Type for labelfor property of the label. | |||||||||
long | A number, size is twice an integer | |||||||||
media | Reference to a Media entry. Media can be specified in different ways (plain bytes, media url, media id). | |||||||||
relation | Reference to a Relation | |||||||||
runtimecomponent | The type of component (so that components can be passed as parameters) | |||||||||
protected | boolean security property, can be used to protect the entire component or specific properties or handlers in the component. Configuration:
Example "enabled" : { "type": "protected", "blockingOn": false, "default": true } | |||||||||
point | Point representation Example { x: 10, y: 20 } | |||||||||
object | Generic type. | |||||||||
scrollbars | An integer value which represents scrollbar definition. This type is used for designer to display special editor. | |||||||||
short | A number, 16 bit | |||||||||
string | Plain string property. I18n keys will be resolved by default. | |||||||||
styleclass | String with space separated CSS classnames.Possible values supported by the component can be specified as hint for the developer Example specifying special classnames supported by the component as hint for the developer { type:'styleclass', values:[ 'btn', 'btn-default', 'btn-lg', 'btn-sm', 'btn-xs' ] } | |||||||||
tabSeq | Tab sequence integer value. See sablo-tabseq | |||||||||
tagstring | String property that can contain %%tags%%, i18n keys or <html>. It can also be a simple static string. Examples: Example Hello %%name%%, welcome to %%i18n:com.mycompany.mykey%% ... or i18n:com.mycompany.mykey or <html>...some html that can also contain JS callbacks and media...</html> or just some static string Here is how this type of property can be configured in the component's .spec file: Example myTextProperty : { "type" : "tagstring", "displayTagsPropertyName" : "myDisplaysTagsProp", // default is null. If specified then the // property will initially read the boolean value of the property with given // name; If that property is true, tags (%%x%%) will be replaced, otherwise // they will be ignored (in which case it will just replace i18n and html); // if null, tags will be replaced or not based on config option "displayTags" "displayTags" : false, // default is true. If displayTagsPropertyName is non-null it // will be ignored. Otherwise, only if true this property will parse tags // (%%x%%) "useParsedValueInRhino" : true, // default is false. Server side scripting read/modify // will work with: if false the parsed (with tags/i18n already replaced, so // static) value, if true the non-parsed (value containing %%x%% or i18n:..., // which will be after modify parsed) value "forFoundset" : "myFoundsetPropertyName" // optional; if specified then on the client // instead of one value you will get an array of values one for each record // in the viewport of given foundset property (see also 'foundset' property type) }, displaysTags : { "type" : "boolean", "scope" : "design" } // needed only if // "displayTagsPropertyName" is used as above or simply (to use default config values): Example myTextProperty: "tagstring" | |||||||||
valuelist | Reference to a ValueList
| |||||||||
visible | boolean security property, when set to false the component is protected from client data changes and function calls, data changes from the server are not sent to the client
|
Property value type modifiers:
Modifier | Description | Applicable for type |
---|---|---|
tags | Different tags can be defined on type: scope: Restricts the model property to: 'design', 'runtime' or 'private'. Design means property can only be assigned from designer (not from scripting). Runtime means the property cannot be assigned from designer (will be hidden in Properties View). Private is an internal property, that should only be used by component itself (so component.js or component_server.js). Will not show in Properties View and cannot be assigned from scripting. directEdit: boolean One property of a component can be tagged as directEdit for designer, this way that property can be edited directly by double clicking the component (for example text property on label/button). | |
values | Fixed values, can have real/display values. Example with display and real values [{"LEFT":2}, {"CENTER":0},{"RIGHT":4}] Example with plain values [ 'btn', 'btn-default', 'btn-lg', 'btn-sm', 'btn-xs' ] | |
default | Defines the default value being used. | |
onDataChange | See dataprovider type | dataprovider |
for | Reference to another property. Can be value or array of values. |
Note: defaults now also get applied to the model. This might change. Best practice is to initialize the model properties with values in the directive's link method and specify the same values as defaults in the .spec file for proper display in Servoy Developer.
See also: