From cb968f2d9268c75f17e9bfcc3cb9c529f78f8780 Mon Sep 17 00:00:00 2001 From: "pls.153" Date: Mon, 17 Jan 2022 16:07:53 +0100 Subject: [PATCH] fix 'reload' --- readme-build.md | 2 +- src/cpp/ecl_ext.cpp | 4 ++-- src/cpp/ecl_ext.h | 2 +- src/lisp/qml.lisp | 4 ++++ 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/readme-build.md b/readme-build.md index 2096e9f..50a9c2b 100644 --- a/readme-build.md +++ b/readme-build.md @@ -2,7 +2,7 @@ Build ----- -Currently still using qmake, will be ported to CMake +Currently still using qmake, will be ported to CMake. * make sure you have both **ECL** and **Qt6** installed * make sure to use `qmake` from Qt6 diff --git a/src/cpp/ecl_ext.cpp b/src/cpp/ecl_ext.cpp index cfd5ae5..a1af116 100644 --- a/src/cpp/ecl_ext.cpp +++ b/src/cpp/ecl_ext.cpp @@ -45,7 +45,7 @@ void iniCLFunctions() { DEFUN ("qtranslate", qtranslate, 3) DEFUN ("qutf8", qutf8, 1) DEFUN ("qversion", qversion, 0) - DEFUN ("reload", reload, 0) + DEFUN ("%reload", reload2, 0) DEFUN ("root-item", root_item, 0) DEFUN ("%set-shutdown-p", set_shutdown_p, 1) } @@ -461,7 +461,7 @@ cl_object pixel_ratio() { ecl_return1(ecl_process_env(), l_ret); } -cl_object reload() { +cl_object reload2() { LQML::quickView->engine()->clearComponentCache(); QUrl source(LQML::quickView->source()); LQML::quickView->setSource(source); diff --git a/src/cpp/ecl_ext.h b/src/cpp/ecl_ext.h index d027c07..593344c 100644 --- a/src/cpp/ecl_ext.h +++ b/src/cpp/ecl_ext.h @@ -75,7 +75,7 @@ cl_object qsingle_shot2 (cl_object, cl_object); cl_object qtranslate (cl_object, cl_object, cl_object); cl_object qutf8 (cl_object); cl_object qversion (); -cl_object reload (); +cl_object reload2 (); cl_object root_item (); cl_object set_shutdown_p (cl_object); diff --git a/src/lisp/qml.lisp b/src/lisp/qml.lisp index 7de8e0e..7dd8bff 100644 --- a/src/lisp/qml.lisp +++ b/src/lisp/qml.lisp @@ -105,6 +105,10 @@ "Like QML function 'children'." (qrun* (qchild-items (quick-item item/name)))) +(defun reload () + "Reloads all QML files, clearing the cache." + (qrun* (%reload))) + ;;; get/set QML properties, call QML methods (through JS) (defun qml-get (item/name property-name)