The Felgo QML Hot Reload release 1.2.0 brings additional options on the connection screen, command line arguments, several QML Hot Reload improvements, and an overhauled user interface. Read on to check out all of the updates below:

 

Get Felgo Hot Reload

Run Your Project without a Connection

With Felgo QML Hot Reload 1.2.0, you can start the latest version of your application without being connected to the Felgo Hot Reload GUI application. This is useful when you want to present your work but can’t bring your entire development setup. For this, you find a “Load from Cache” button on the connection screen:

  1. Run your application using Hot Reload at least once, and make sure you don’t have any errors.
  2. Later on, when you restart your application, select “Load from Cache”.

    felgo-hot-reload-connection-screen
  3. Your application loads up, and you can use it as usual. You see a small tooltip that lets you know that you run your application from the cache:

felgo-hot-reload-example

Hint: You can’t use Hot Reload when loading from the cache, and the feature is only active if the application's last start or reload was without errors.

Auto-Connect and Start Your Application

It is now possible to skip the connection screen when starting your Felgo Hot Reload-enabled application with either a command line parameter or an environment variable.

You can provide the connection method with the

--autostart [local|cache|none|<Connection ID>]

command line option or set the

FHR_AUTO_START

environment variable to one of the local, cache, none, or <Connection ID> values. The command line option overwrites the option set by the environment variable.

As an example, to automatically connect your application to the local Felgo Hot Reload GUI, you can run:

./MyApplication –autostart local

This is useful if you always connect to the same GUI application or run on a remote Embedded device without keyboard or mouse input.

User Interface Improvements

In addition to the new options on the connection screen UI, the Felgo Hot Reload GUI application received a visual update as well.

felgo-hot-reload-server

The application got a new bottom status bar. It displays information about the opened project and prominently shows the Connection ID. You can also copy the Connection ID to your clipboard or click on the project path to open the project folder in your file explorer.

The new status bar also shows the number of active connected devices, which is useful for keeping track of active connections.

The options and settings per connected device are now also reordered: first, the actions, then the options, and at the very end, destructive actions, like clearing the client cache or removing the device from the Hot Reload GUI application. There is also an additional “Stay on Top” option that toggles the “Always on top” window flag of the connected application. This is useful if you want the preview on your local PC always visible, even if your IDE has the active focus.

Qt 6.7 Support

Felgo QML Hot Reload 1.2.0 now supports Qt 6.7.0, bringing the number of build configurations available via the Installer to 84. We always add support for additional Qt versions and platforms on request.

Improved CMake Integration

Felgo QML Hot Reload integration with CMake projects is now easier than before. You can use the felgohotreload_configure_executable(target_name) CMake function to:

  • Link target_name with Felgo Hot Reload library
  • Add the USE_FELGO_HOT_RELOAD compile definition symbol. You can use it in your C++ source code to better separate Felgo Hot Reload-related code from your production code.
  • Link and deploy all necessary libraries for cross-compiling, e.g., deployment to Android

The previous integration is still supported, but we advise switching to the new helper function to benefit from future additions. To do so, change the following code:

CMakeLists with Hot Reload 1.0.0

CMakeLists with Hot Reload 1.2.0

[...]
set(CMAKE_PREFIX_PATH  "C:/FelgoHotReload/client/6.5.3/android;${CMAKE_PREFIX_PATH}"
find_package(FelgoHotReload CONFIG REQUIRED)
add_executable(FelgoHotReloadDemo main.cpp)
[...]
list(APPEND ANDROID_EXTRA_LIBS "C:/FelgoHotReload/client/6.5.3/android/lib/libFelgoHotReload_${ANDROID_ABI}.so")
set_property(TARGET FelgoHotReloadDemo APPEND PROPERTY QT_ANDROID_EXTRA_LIBS ${ANDROID_EXTRA_LIBS}
target_link_libraries(FelgoHotReloadDemo PRIVATE FelgoHotReload)
add_compile_definitions(USE_FELGO_HOT_RELOAD=1)
[...]

CMakeLists with Hot Reload 1.2.0

[...]
set(CMAKE_PREFIX_PATH  "C:/FelgoHotReload/client/6.5.3/android;${CMAKE_PREFIX_PATH}"
find_package(FelgoHotReload CONFIG REQUIRED)
add_executable(FelgoHotReloadDemo
main.cpp)
[...]
felgohotreload_configure_executable(FelgoHotReloadDemo)

[...]

 

More Improvements in Felgo Hot Reload 1.2.0

The latest release also improves the QML Hot Reload logic and fixes additional things:

  • When you remove a property binding, the property is set to its default value. In previous versions, the property was set to its value from the start of the application.
  • Felgo Hot Reload updates property bindings that use an added property.
  • On some development setups, changes to source files were not recognized. This is now fixed.
  • Android-generated APK files contain all required libraries when you deploy a Qt 6 application on Android.
  • And many more.

How to Update Felgo Hot Reload

To update to the latest version, follow these steps:

  • Open the Felgo Hot Reload Maintenance Tool in your installation directory
  • Choose “Update components” and finish the update process

felgo-hot-reload-maintanence-tool

Find out more about Felgo Hot Reload

You can find out more about Felgo Hot Reload here:

Get Felgo Hot Reload

More Posts like This

Felgo Hot Reload Release
Felgo Hot Reload: Enhance your Qt Project Development with QML Code Reload