author | Edouard Tisserant <edouard.tisserant@gmail.com> |
Wed, 04 Oct 2023 16:24:00 +0200 | |
branch | python3 |
changeset 3854 | d29d67e86532 |
parent 3654 | 6b7f15089703 |
permissions | -rw-r--r-- |
2902 | 1 |
// widget_back.ysl2 |
2779
75c6a31caca6
SVGHMI: Work In Progress : fixed pointer types in ctypes interface, cleaned up server startup and cleanup code, changed document type to XHTML, cleaner JS script : encapsulated in a function and in CDATA.
Edouard Tisserant
parents:
2763
diff
changeset
|
2 |
|
3241
fe945f1f48b7
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
3232
diff
changeset
|
3 |
widget_desc("Back") { |
fe945f1f48b7
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
3232
diff
changeset
|
4 |
longdesc |
fe945f1f48b7
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
3232
diff
changeset
|
5 |
|| |
fe945f1f48b7
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
3232
diff
changeset
|
6 |
Back widget brings focus back to previous page in history when clicked. |
fe945f1f48b7
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
3232
diff
changeset
|
7 |
|| |
fe945f1f48b7
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
3232
diff
changeset
|
8 |
|
fe945f1f48b7
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
3232
diff
changeset
|
9 |
shortdesc > Jump to previous page |
fe945f1f48b7
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
3232
diff
changeset
|
10 |
} |
fe945f1f48b7
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
3232
diff
changeset
|
11 |
|
3232
7bdb766c2a4d
SVGHMI: In order to allow widget signature and description to coexist in same ysl2 file, introduced widget_class, widget_defs to declare widget codegen templates and gen_index_xhtml to mark templates that are only usefull in gen_index_xhtml.xslt.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2958
diff
changeset
|
12 |
widget_class("Back") |
2958
895d3f2b1786
SVGHMI: Back button updated to class style
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2912
diff
changeset
|
13 |
|| |
895d3f2b1786
SVGHMI: Back button updated to class style
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2912
diff
changeset
|
14 |
on_click(evt) { |
895d3f2b1786
SVGHMI: Back button updated to class style
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2912
diff
changeset
|
15 |
if(jump_history.length > 1){ |
3653
d5ff60e906b0
SVGHMI: add ScreenSaver feature. Automatically jumps to a page named "ScreenSaver" after timeout defined in page arguments.
Edouard Tisserant
parents:
3241
diff
changeset
|
16 |
let page_name, index; |
d5ff60e906b0
SVGHMI: add ScreenSaver feature. Automatically jumps to a page named "ScreenSaver" after timeout defined in page arguments.
Edouard Tisserant
parents:
3241
diff
changeset
|
17 |
do { |
d5ff60e906b0
SVGHMI: add ScreenSaver feature. Automatically jumps to a page named "ScreenSaver" after timeout defined in page arguments.
Edouard Tisserant
parents:
3241
diff
changeset
|
18 |
jump_history.pop(); // forget current page |
d5ff60e906b0
SVGHMI: add ScreenSaver feature. Automatically jumps to a page named "ScreenSaver" after timeout defined in page arguments.
Edouard Tisserant
parents:
3241
diff
changeset
|
19 |
if(jump_history.length == 0) return; |
d5ff60e906b0
SVGHMI: add ScreenSaver feature. Automatically jumps to a page named "ScreenSaver" after timeout defined in page arguments.
Edouard Tisserant
parents:
3241
diff
changeset
|
20 |
[page_name, index] = jump_history[jump_history.length-1]; |
d5ff60e906b0
SVGHMI: add ScreenSaver feature. Automatically jumps to a page named "ScreenSaver" after timeout defined in page arguments.
Edouard Tisserant
parents:
3241
diff
changeset
|
21 |
} while(page_name == "ScreenSaver") // never go back to ScreenSaver |
2958
895d3f2b1786
SVGHMI: Back button updated to class style
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2912
diff
changeset
|
22 |
switch_page(page_name, index); |
895d3f2b1786
SVGHMI: Back button updated to class style
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2912
diff
changeset
|
23 |
} |
895d3f2b1786
SVGHMI: Back button updated to class style
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2912
diff
changeset
|
24 |
} |
895d3f2b1786
SVGHMI: Back button updated to class style
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2912
diff
changeset
|
25 |
init() { |
3654 | 26 |
this.element.onclick = this.on_click.bind(this); |
2958
895d3f2b1786
SVGHMI: Back button updated to class style
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2912
diff
changeset
|
27 |
} |
895d3f2b1786
SVGHMI: Back button updated to class style
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2912
diff
changeset
|
28 |
|| |