Skip to content

Releases: pthom/hello_imgui

v1.92.3

17 Sep 18:53
b6f5342
Compare
Choose a tag to compare

What's Changed

Assets

  • Separate ImageFromAsset and ImageFromAssetWithBg: use ImageFromAssetWithBg to display images with a background or border.
  • Add SetLoadAssetFileDataFunction(LoadAssetFileDataFunc func) (Redirect asset loads to user-defined function). Thanks to Jorg Neves Bliesener
  • LoadFontTTF_WithFontAwesomeIcons: can load FontAwesome 6

cmake

  • Add cmake option IMGUI_DISABLE_OBSOLETE_FUNCTIONS
  • cmake: can use plutosvg without downloading (using HELLOIMGUI_DOWNLOAD_FREETYPE_IF_NEEDED=OFF)

Full Changelog: v1.92.0...v1.92.3

v1.92.0

27 Jun 12:40
da85844
Compare
Choose a tag to compare

Version numbers are now synced between "Dear ImGui" "Hello ImGui" and "Dear ImGui Bundle".

  • ImGui: Many Font related changes: this release brings many changes on the ImGui side (v1.92.0): do read the release notes for ImGui v1.92.0
    TLDR: Fonts may be rendered at any size. Glyphs are loaded and rasterized dynamically. No need to specify ranges, prebake etc.

  • Removed FontDpiResponsive: this is now handled by ImGui itself

  • Removed FontLoadingParams.glyphRanges, since ranges are not needed anymore by ImGui

Contributions

  • Add utility function void ChangeWindowFullMonitorWorkArea() like void… by @Robxley in #130
  • Fix checking for alphanumeric characters using proper conversion to a void undefined behavior (and assert message with MSBuild) by @Robxley in #136
  • support imgui 1.91.9 breaking changes by @toge in #142

New Contributors

Full Changelog: v1.6.0...v1.92.0

v1.6.3

21 May 15:19
4271e5f
Compare
Choose a tag to compare

What's Changed

  • Assets: can search with absolute path or from current working directory
  • Add utility function void UseWindowFullMonitorWorkArea() (by @Robxley in #130)
  • AppWindowParams: add EmscriptenKeyboardElement
  • Runner: call TearDown on Setup for Python (to make it possible to recover from exceptions in notebook)
  • MakeWindowSizeRelativeTo96Ppi_IfRequired: call EnsureWindowFitsThisMonitor
  • update example_integration (Add CMake example / GNU Install)
  • Add cmake option HELLOIMGUI_USE_EXTERNAL_JSON (to provide nlohmann json yourself)
  • compatibility with CMake 4
  • Fix checking for alphanumeric characters using proper conversion to a void undefined behavior (and assert message with MSBuild) by @Robxley in #136
  • support imgui 1.91.9 breaking changes by @toge in #142

New Contributors

Full Changelog: v1.6.0...v1.6.3

v1.6.0

21 Nov 09:56
52b2ff1
Compare
Choose a tag to compare

Changes

  • Add `HelloImGui::ManualRender: a namespace that groups functions, allowing fine-grained control over the rendering process
  • SVG Font rendering: plutosvg replaces lunasvg (option HELLOIMGUI_USE_FREETYPE_PLUTOSVG on by default): this enable to render more SVG fonts
  • Improve font rendering on iOS
  • Added AddDockableWindow / RemoveDockableWindow
  • demo_docking: better demonstration / theme customization
  • Work on pyodide integration (for ImGui Bundle)

Contributions and contributors

  • Redundant boolean literal in conditional return statement and code cleanup by @TheZitroX in #117
  • Changed Minor typo in CMakeLists.txt by @abinash18 in #122

New Contributors


Full Changelog: v1.5.2...v1.6.0

v1.5.2

07 Jul 19:30
880d14f
Compare
Choose a tag to compare
  • Updated imgui to v1.90.9
  • Small fixes

Full Changelog: v1.5.0...v1.5.2

v1.5.1

07 Jul 08:06
37d5a25
Compare
Choose a tag to compare

Changes

  • Improved rendering on Windows (via antialiasing)
  • Add IniFolderType.AbsolutePath
  • Polish themes
  • Add callback PostRenderDockableWindows
  • Added optional hello_imgui.ini file,
    as a way to do advanced configuration for Dpi and OpenGL rendering options
  • Add PushTweakedTheme / PopTweakedTheme (different ImGui windows can use a different theme. See demo docking)
  • Add DpiAwareParams: see doc
  • Add HelloImGui::ImageAndSizeFromAsset see doc
  • callbacks.LoadAdditionalFonts can be modified and reused during execution
  • add null backend (see https://pthom.github.io/hello_imgui/book/doc_params.html#backend-selection)
  • Add optional OpenGlOptions
  • Add widgets InputTextResizable + WidgetWithResizeHandle: see doc
  • Add HelloImGui::LoadDpiResponsiveFont: see doc

Add FontAwesome options with support for FontAwesome 4 and FontAwesome 6:

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"

Contributions & contributors

Many thanks to all contributors!

What's Changed

New Contributors

Full Changelog: v1.4.2...v1.5.0

v1.5.0-rc1

24 May 06:27
3a7f7ba
Compare
Choose a tag to compare
v1.5.0-rc1 Pre-release
Pre-release

High level overview

Add FontAwesome options with support for FontAwesome 4 and FontAwesome 6:

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"

Contributors & Details

New Contributors

Full Changelog: v1.4.2...v1.5.0-rc1

v1.4.2

03 Feb 02:49
Compare
Choose a tag to compare
  • Integration with vcpkg ongoing (see PR)
  • Reviewed CMake backend selection process
    You can now build with several rendering backends and several platform backends at the same time.
  • Work on vcpk packaging

Full Changelog: v1.4.1...v1.4.2

v1.4.1

01 Feb 21:50
40adf4b
Compare
Choose a tag to compare

Small fixes / vcpkg

Full Changelog: v1.4.0...v1.4.1

v1.4.0

01 Feb 02:03
63f82f4
Compare
Choose a tag to compare

v1.4.0

Vcpkg support for dependencies

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:

  • this will not support ImGui Test Engine, as it is not available in vcpkg yet.
  • See CI Tests: VcpkgDeps

Vcpkg packaging

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:

  • See CI Tests: VcpkgPackage

Other

  • Update update imgui to v1.90.1-docking
  • Add demo + doc / FontAwesome 6

Full Changelog: v1.3.0...v1.4.0