Scheduler
The scheduler provides the user interface to the HSYCO's scheduler system. The scheduler
is a powerful function that allows you to define a set of calendar entries to schedule
actions at the beginning and end of each time interval.
A normal scheduler rule is defined with a start date/time and an end date/time and is
valid within the defined period, even across several days. A daily rule is instead
defined to be valid between a start time and end time, on a single day or spanning
several days. If the end time is less than the start time, it will be considered as the
next day.
An alternative scheduler mode, called trigger mode, is used when you only need to define
a punctual activation time, not an activation period. In this case the schedule will
activate only on the minute of the preset time.
The "repeat every year" flag can be set to automatically repeat the date interval on
every year following the initial date.
In addition to the validity dates, you can set a rule to be active only on specific week
days. When the current time matches the date/time and week days, the default behavior is
that the scheduler generates a TIMER <schedule name> = ON
event and the
corresponding userTimerEvent() Java callback — just like the (timer) object — and a
TIMER <schedule name> = OFF
event at the end of the period. Only the
TIMER <schedule name>
= ON event is generated for trigger mode
schedulers.
You can also define an interval rule, setting the on and off minutes. An interval rule
will go on and off repeatedly during the date/time validity period. Each rule has a
group. This group is used to generate the events, and is not unique, as you can define
several rules under the same group. In this case the scheduler will evaluate the rules
having the same group in the order they appear in the scheduler display, from top to
bottom.
When a rule matches the date/time validity period, the scheduler stops checking any
following rules with the same group. So, rules on top have priority within the rules
with the same group.
When working in trigger mode, if there are rules, with date from or to set, that match
the current date, any following rule with no date from and to set will be masked
(skipped).
Rules set to work in off mode are used as "blocking rules", because when they are valid
they will not become active, and at the same time will prevent the scheduler from
processing the following rules that could otherwise match.
A scheduler has two graphical modes: compact and wide, depending on the object's width.
A width of 750 pixels or more will toggle the wide mode that will display both the list
of rules and the rule's details.
Attributes
Common
ID
Sets the object's ID.
The ID identifies the object and is used to reference it in UISet actions, allowing to change its attributes dynamically.
The ID is not unique, it can be shared among multiple objects to quickly change a common attribute.
IDs can't be changed with a UISet action, but they can have a Value Binding assigned to them. Value Bindings on IDs allow an object to be dinamically attached to a set of attribute values.
E.g. the following Value Binding switches the ID of the object between mybutton1
and mybutton2
based on the value of the UISet button.address
:
Value binding:
="mybutton" + ui('button', 'address')
UISet:
UISet('button', 'address', '1')
switches the ID to mybutton1
UISet('button', 'address', '2')
switches the ID to mybutton2
Position and Size
Position
Sets the object's position.
The default
value is: x0y0
.
Attribute Values
Value | Description | Example |
---|---|---|
x<left>y<top> | Specify left/top coordinates in pixels. | x10y20 |
Flex Grow
Specifies if the objects should grow to fill the available space.
The default
value is: true
.
Attribute Values
Value | Description |
---|---|
true | Default value. Objects expand to fill the available space. |
false | Objects do not grow to fill the available space. |
Flex Shrink
Specifies if the objects should shrink to fit the available space.
The default
value is: true
.
Attribute Values
Value | Description |
---|---|
true | Default value. Objects shrink to fit the available space. |
false | Objects do not shrink to fit the available space. |
Width
Sets the object's width in pixels.
Minimum value is 1.
Height
Sets the object's height in pixels.
Minimum value is 1.
Common
Rule List Mode
Specifies the rule list mode.
The default
value is: edit
.
Attribute Values
Value | Description |
---|---|
edit | Default value. Enables the creation or deletion of individual schedules. |
noedit | Only allows editing of already defined schedules. |
Groups
Specifies the groups that are shown in this object.
Note that group names are case sensitive.
Attribute Values
Value | Description |
---|---|
* | All groups. |
<string> | A comma-separated list of groups. |
Trigger Mode
Enables the trigger mode, used when you only need to define a punctual activation time, not an activation period.
In this case the schedule will activate only on the minute of the preset time.
When working in trigger mode, if there are rules, with date from or to set, that match the current date, any following rule with no date from and to set will be masked (skipped).
The default
value is: false
.
Attribute Values
Value | Description |
---|---|
false | Default value. Activation period. |
true | Punctual activation. |
Panel
Panel
Shows a panel that frames the object. Its style can be modified.
The default
value is: true
.
Attribute Values
Value | Description |
---|---|
true | Default value. Shows the panel. |
false | Hides the panel. |
Panel Color
Specifies the panel color.
The default
value is: default
.
Attribute Values
Value | Description |
---|---|
default | Default value. Default color. |
primary | Primary color, used to highlight important areas. |
warning | Warning color, used to highlight warning areas. |
success | Success color, used to highlight success areas. |
error | Error color, used to highlight error areas. |
red,blue,yellow,green,yellow,purple,orange,green | Palette colors. |
custom | Custom color, defined in the "Custom Color" attribute. |
Panel Custom Color
Specifies the panel custom color.
Attribute Values
Value | Description | Example |
---|---|---|
<html color> | Color in any html accepted format. | #ff0000 |
View
Visible
Sets the object's visibility.
The default
value is: true
.
Attribute Values
Value | Description |
---|---|
true | Default value. Visible. |
false | Hidden. |
Enabled
Specifies if the object is enabled or disabled. A disabled object appears as grayed out and can't be interacted with.
The default
value is: true
.
Attribute Values
Value | Description |
---|---|
true | Default value. Enabled. |
false | Disabled. |
Blink
Blinks the object at the specified speed.
The default
value is: false
.
Attribute Values
Value | Description |
---|---|
false | Default value. Not blinking. |
slow | Blinks slowly. |
fast | Blinks fast. |
Transition
Specifies the transition effect when the object is shown or hidden.
The default
value is: none
.
This attribute is experimental
. It might not work properly and it might be modified or removed in a future release.
Attribute Values
Value | Description |
---|---|
none | Default value. No transition. |
fade | Fade in/out. |
fade-left | Slide from left and fade in/out. |
fade-right | Slide from right and fade in/out. |
fade-up | Slide from top and fade in/out. |
fade-down | Slide from bottom and fade in/out. |
slide-left | Slide from left. |
slide-right | Slide from right. |
slide-up | Slide from top. |
slide-down | Slide from bottom. |
zoom-in | Zoom in. |
zoom-out | Zoom out. |
3d-flip-left | 3D flip from left. |
3d-flip-right | 3D flip from right. |
Transition Duration
Specifies the transition duration in milliseconds.
The default
value is: 300
.
This attribute is experimental
. It might not work properly and it might be modified or removed in a future release.
Attribute Values
Value | Description |
---|---|
<integer> | Duration in milliseconds. |
Transition Delay
Specifies the transition delay in milliseconds.
The default
value is: 0
.
This attribute is experimental
. It might not work properly and it might be modified or removed in a future release.
Attribute Values
Value | Description |
---|---|
<integer> | Delay in milliseconds. |
Opacity
Sets the object's opacity. Opacity is the degree to which content behind an object is hidden.
The default
value is: 1.0
.
Attribute Values
Value | Description |
---|---|
0 | The object is fully transparent. |
>0.0, <1.0 | The object is translucent (content behind the element can be seen). |
1.0 | Default value. The object is fully opaque. |
Rotation
Specifies the degrees by which the object is rotated. A positive number rotates it clockwise, while a negative value rotates it counter-clockwise.
The default
value is: 0
.
CSS Class
Specifies a CSS Class that applies to the object, useful to customize its appearance. Custom CSS Classes are specified within the custom.css file.
Margin
Specifies the margin of the object. The margin is the space outside the object's border.
This attribute is experimental
. It might not work properly and it might be modified or removed in a future release.
Attribute Values
Value | Description | Example |
---|---|---|
<int> | Specify the margin in pixels for all sides of the object. | |
<top> <right> <bottom> <left> | Specify the margin in pixels for each side of the object. | 10 20 30 40 |
View Scale
Specifies the scale of the object. The scale is the ratio between the object's size and the size of the view it is contained in.
The default
value is: 1.0
.
This attribute is experimental
. It might not work properly and it might be modified or removed in a future release.
Attribute Values
Value | Description |
---|---|
<float> | Specify the scale for both width and height of the object. |
Meta
Comment
Specifies a comment, visible only in the Project Editor. It can be used to add a note or a tag to the object. The filter in the object's SELECT panel applies to the comment as well.
This attribute is static
. Its value can't be changed dynamically with a uiSet command or with a value binding.
Exclude
Excludes the object from the UI. Useful to temporarily hide an object without deleting it. Different from the "Visible" attribute, which hides the object in the UI but keeps it in the project, allowing it to be shown again with a UISet.
The default
value is: false
.
This attribute is static
. Its value can't be changed dynamically with a uiSet command or with a value binding.
Attribute Values
Value | Description |
---|---|
false | Default value. Object is included in the UI. |
true | Object is excluded from the UI. |