Hello, Dear ImGui: unleash your creativity in app development and prototyping
Breaking change: you need to include manually the icons: #include "hello_imgui/icons_font_awesome_4.h"
The default icon font is FontAwesome 4 (for backward compatibility), but v6 includes many more icons
In order to select Font Awesome 6, you need to set the following in your runnerParams:
runnerParams.runnerCallbacks.defaultIconFont = hello_imgui::IconFont::FontAwesome6;
and then include:
#include "hello_imgui/icons_font_awesome_6.h"
BackendType
selection by @learn-more in https://github.com/pthom/hello_imgui/pull/96
Full Changelog: https://github.com/pthom/hello_imgui/compare/v1.4.2...v1.5.0-rc1
Full Changelog: https://github.com/pthom/hello_imgui/compare/v1.4.1...v1.4.2
Small fixes / vcpkg
Full Changelog: https://github.com/pthom/hello_imgui/compare/v1.4.0...v1.4.1
You can install almost all required dependencies with vcpkg.
# Clone hello_imgui
git clone https://github.com/pthom/hello_imgui.git
cd hello_imgui
# Clone vcpkg -& bootstrap
git clone https://github.com/microsoft/vcpkg.git
./vcpkg/bootstrap-vcpkg.sh
# Install dependencies required by hello_imgui
./vcpkg/vcpkg install "glad[gl-api-43] stb freetype lunasvg glfw3 sdl2 imgui[opengl3-binding, docking-experimental, glfw-binding, sdl2-binding,freetype, freetype-lunasvg]"
# Build hello_imgui
mkdir build && cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=../vcpkg/scripts/buildsystems/vcpkg.cmake
cmake --build . -j 4
Notes:
hello_imgui is now ready to be integrated to vcpkg.
You can test this with the following commands:
# Clone hello_imgui (just to get the overlay in hello_imgui_cmake/overlay_vcpkg/hello-imgui)
git clone https://github.com/pthom/hello_imgui.git
cd hello_imgui
# Clone vcpkg -& bootstrap
git clone https://github.com/microsoft/vcpkg.git
./vcpkg/bootstrap-vcpkg.sh
# Install hello_imgui via vcpkg (using the overlay)
./vcpkg/vcpkg install "hello-imgui[opengl3-binding, glfw-binding, sdl2-binding]" --overlay-ports=hello_imgui_cmake/overlay_vcpkg/hello-imgui
Notes:
Full Changelog: https://github.com/pthom/hello_imgui/compare/v1.3.0...v1.4.0
Version numbers are synced between hello_imgui and imgui_bundle.
RunnerParams.iniFolderType
can be set to: CurrentFolder
, AppUserConfigFolder
, DocumentsFolder
, HomeFolder
, TempFolder
, AppExecutableFolder
.assets/app_settings/icon.png
will be used to generate the window icon (C++, Python), and app icon (C++ only) for any platform. See assets structure below:assets/
├── world.png # A custom asset
├── app_settings/ # Application settings
│ ├── icon.png # This will be the app icon, it should be square
│ │ # and at least 512x512. It will be converted
│ │ # to the right format, for each platform.
│ ├── apple/
│ │ └── Info.plist # macOS and iOS app settings
│ │ # (or Info.ios.plist + Info.macos.plist)
├── fonts/
│ ├── DroidSans.ttf # Default fonts
│ └── fontawesome-webfont.ttf # used by HelloImGui
│ ├── Roboto
│ │ ├── Roboto-Bold.ttf # Font used by Markdown
│ │ ├── Roboto-BoldItalic.ttf
│ │ ├── Roboto-Regular.ttf
│ │ └── Roboto-RegularItalic.ttf
│ ├── SourceCodePro-Regular.ttf
├── images
│ └── markdown_broken_image.png
hello_imgui_add_app(my_app file1.cpp file2.cpp ASSETS_LOCATION my_assets)
Full Changelog: https://github.com/pthom/hello_imgui/compare/v1.0.0...v1.3.0
Full Changelog: https://github.com/pthom/hello_imgui/compare/0.8.0...v1.0.0
Full Changelog: https://github.com/pthom/hello_imgui/commits/0.8.0