# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1573090792 0 # Node ID 8577d533b371e5ae59789d2edd53d9a29e4e4bfd # Parent 74facb490f5a4af4136bf543f8c6f5f1ee049e6b Added controls to the test HTML widget, with a field to run javascript. diff -r 74facb490f5a -r 8577d533b371 dwtest.c --- a/dwtest.c Thu Nov 07 00:37:23 2019 +0000 +++ b/dwtest.c Thu Nov 07 01:39:52 2019 +0000 @@ -1696,6 +1696,52 @@ dw_window_enable(startbutton); } +/* Handle web back navigation */ +int DWSIGNAL web_back_clicked(HWND button, void *data) +{ + HWND html = (HWND)data; + + dw_html_action(html, DW_HTML_GOBACK); + return FALSE; +} + +/* Handle web forward navigation */ +int DWSIGNAL web_forward_clicked(HWND button, void *data) +{ + HWND html = (HWND)data; + + dw_html_action(html, DW_HTML_GOFORWARD); + return FALSE; +} + +/* Handle web reload */ +int DWSIGNAL web_reload_clicked(HWND button, void *data) +{ + HWND html = (HWND)data; + + dw_html_action(html, DW_HTML_RELOAD); + return FALSE; +} + +/* Handle web run */ +int DWSIGNAL web_run_clicked(HWND button, void *data) +{ + HWND html = (HWND)data; + HWND javascript = (HWND)dw_window_get_data(button, "javascript"); + char *script = dw_window_get_text(javascript); + + dw_html_javascript_run(html, script, NULL); + dw_free(script); + return FALSE; +} + +/* Handle web javascript result */ +int DWSIGNAL web_html_result(HWND html, int status, char *result, void *user_data, void *script_data) +{ + dw_messagebox("Javascript Result", DW_MB_OK | (status ? DW_MB_ERROR : DW_MB_INFORMATION), result); + return TRUE; +} + /* Handle web html changed */ int DWSIGNAL web_html_changed(HWND html, int status, char *url, void *data) { @@ -1797,15 +1843,48 @@ if(rawhtml) { HWND htmlstatus; - + HWND hbox = dw_box_new(DW_HORZ, 0); + HWND item; + HWND javascript = dw_entryfield_new("window.scrollTo(0,500);", 0); + dw_box_pack_start( notebookbox7, rawhtml, 0, 100, TRUE, FALSE, 0); dw_html_raw(rawhtml, "