Skip to content

Releases: JaedanC/pygui

pygui.windows.v1.92.6.1

01 Mar 23:20
c8c73f1

Choose a tag to compare

Breaking changes:

  • See Imgui docs for breaking changes around particularly images and TextureRefs.
  • TextureRefs were introduced in the previous version of ImGui. This version expands upon this and changes the Pygui API to include TextureRefs only. You can no longer pass int's from PIL/OpenGL straight to ImGui. It must be wrapped in a TextureRef first. See below:
from PIL import Image

image = Image.open(resource_path("pygui/img/code.png"))
texture_id = pygui.load_image(image)
texture_ref = pygui.ImTextureRef.create(texture_id)

...

pygui.image(texture_ref, (100, 100))

...

texture_ref.destroy()

Features:

  • Updated ImGui version to v1.92.6-docking
  • As seen above, pygui_demo.py now references files using resource_path. This allows resources to be correctly loaded when Pygui is compiled using PyInstaller.
  • Fixed broken vsync toggle in app.py.
  • Added pygui_demo.limit_fps() function for those looking for a non-vsync way to limit fps.

pygui.windows.v1.92.5.2

09 Jan 06:56

Choose a tag to compare

Breaking changes:

  • See Imgui docs for breaking changes around particularly fonts and textures.
  • Images now use a TextureRef from the latest version of ImGui.
  • Simplified the pygui specific .cpp and .h headers by expanding them into their own files.
  • Fixed many ImGuiIO fields that are arrays of length 5, to keep track of different mouse buttons. Check the .pyi file to see the changes.
io = pygui.get_io()

# Before
io.mouse_down # Returns whether Mouse1 (left mouse) is clicked

# After
io.mouse_down[0] # Returns whether Mouse1 (left mouse) is clicked
io.mouse_down[1] # Returns whether Mouse2 (right mouse) is clicked
io.mouse_down[2] # Returns whether Mouse3 (middle mouse) is clicked
io.mouse_down[3] # Returns whether Mouse4 is clicked
io.mouse_down[4] # Returns whether Mouse5 is clicked

Features:

  • Updated ImGui version to v1.92.5-docking
  • Re-added font implementation.
  • More fields and functions added. ImGuiIO config fields can now be all written to.
  • The Python .pyi stub file includes @staticmethod so less errors with linters.
  • Fixed the duplication of fields and methods in the .pyi files when a new class or struct is added to the Dear Bindings spec.

pygui.windows.v1.92.2b.1

15 Aug 03:30

Choose a tag to compare

Breaking changes:

  • See Imgui docs for breaking changes around particularly fonts.
  • Compiled using Python 3.12.10
  • Removed references to fonts functions in app.py. pygui_demo.py has functions mentioning legacy fonts stubbed.

Features:

  • Updated ImGui version to v1.92.2b-docking

TODO:

  • Need to look at fonts again post ImGui's update

pygui.windows.v1.91.6.1

13 Dec 00:10

Choose a tag to compare

Breaking changes:

  • All source references use dcimgui instead of cimgui due to dear_bindings update

Features:

  • Updated ImGui version to v1.91.6-docking
  • Font Selection working again

pygui.windows.v1.91.2.1

03 Oct 00:49

Choose a tag to compare

Breaking changes:

  • Binary compiled with Python 12.6. Can compile from source in whatever version you like however

Features:

  • Updated ImGui version to v1.91.2-docking
  • Multi-select support (and associated pygui_demo.py examples)
  • Drag and drop payloads working again
  • pygui_demo.py has better linting

pygui.windows.v1.91.1.1

19 Sep 08:03
10f5366

Choose a tag to compare

Breaking Changes:

  • Breaking changes subject to ImGui API changes.
  • Any implementation specific functions calls now start with c_. E.g:
# Before
pygui.impl_open_gl3_init()

# After
pygui.c_impl_open_gl3_init()

Features:

  • Uses a single DLL for cimgui now which likely means it is more performant 🔥
  • Added some more functions

pygui.windows.v1.90.6.1

31 May 00:27
05300fb

Choose a tag to compare

Releasing with CMAKE set to release. Should no longer run into missing DLL prompts when downloading pygui on the PC that does not have Visual studio.

Future tags will be named with the ImGui version like this one :)

v1.6 windows

30 Nov 08:00
4f0ab67

Choose a tag to compare

Breaking changes:

Features:

  • Updated supported ImGui version to docking 1.90.1

Known bugs:

v1.5 windows

07 Jun 22:49

Choose a tag to compare

Just some more functions...
Nice.

pygui.windows.v1.4

16 May 06:25

Choose a tag to compare

Breaking changes:

Old Name New Name
BoolPtr Bool
IntPtr Int
LongPtr Long
FloatPtr Float
DoublePtr Double
StrPtr String
Vec2Ptr Vec2
Vec4Ptr Vec4
  • Vec2 & Vec4
    • .vec() renamed to .tuple()
    • .from_vec() renamed to .from_tuple()
  • ImGuiPayload related functions now return an ImGuiPayload like ImGui. Accessing user data is now done with ImGuiPayload.data. accept_drag_drop_payload() and get_drag_drop_payload() are affected.

Features:

  • More ImDrawList drawing functions
  • More ImGuiListClipper functions
  • Drag & Drop in line with ImGui
  • Standardised primitive wrappers (see above)
  • ImGuiTextCallbacks working
  • ImGuiTextFilter functions