svghmi/widget_back.ysl2
branchwxPython4
changeset 3657 e0d6f5f0dcc2
parent 3654 6b7f15089703
equal deleted inserted replaced
3652:b5c6bb72bfc9 3657:e0d6f5f0dcc2
     7     ||
     7     ||
     8 
     8 
     9     shortdesc > Jump to previous page
     9     shortdesc > Jump to previous page
    10 }
    10 }
    11 
    11 
    12 // TODO: use es6
       
    13 widget_class("Back")
    12 widget_class("Back")
    14     ||
    13     ||
    15         on_click(evt) {
    14         on_click(evt) {
    16             if(jump_history.length > 1){
    15             if(jump_history.length > 1){
    17                jump_history.pop();
    16                let page_name, index;
    18                let [page_name, index] = jump_history.pop();
    17                do {
       
    18                    jump_history.pop(); // forget current page
       
    19                    if(jump_history.length == 0) return;
       
    20                    [page_name, index] = jump_history[jump_history.length-1];
       
    21                } while(page_name == "ScreenSaver") // never go back to ScreenSaver
    19                switch_page(page_name, index);
    22                switch_page(page_name, index);
    20             }
    23             }
    21         }
    24         }
    22         init() {
    25         init() {
    23             this.element.setAttribute("onclick", "hmi_widgets['"+this.element_id+"'].on_click(evt)");
    26             this.element.onclick = this.on_click.bind(this);
    24         }
    27         }
    25     ||
    28     ||