Recent Releases of dearpygui

dearpygui - Version 2.1

Changelog

New Features

  • feat: added missing NumPad keys #2468
  • feat (win32): rendering frames even when the viewport is moved or resized #2521

Please note: even though DearPyGui manages to render frames during viewport resize/move, the main rendering loop is actually blocked - that's the way it works on Windows. If you use a custom rendering loop instead of start_dearpygui, e.g. to run asyncio in the main thread, expect render_dearpygui_frame to block until resizing is done (DearPyGui will render frames multiple times within that blocked call). This is only relevant on Windows.

Fixes

  • fix (win32): no more hangups when the viewport is resized (#2401) #2521
  • fix (win32): slow typing (#1571, #2357) #2521
  • fix (win32): viewport resize callback not called when the viewport is shrunk (#1896, #2217) #2521
  • fix: move_item is horribly slow (#2343) #2476
  • fix: draw_image_quad now renders correctly when apply_transform is used (e.g. for rotation) #2290
  • fix: weird behavior of get_item_configuration on draw_polygon (#2462) #2467
  • fix: adding series to a secondary plot axis now works even if the axis ID is mvYAxis rather than mvYAxis2 or mvYAxis3 #2414
  • fix: table columns in an empty table get hidden for no reason (#2449) #2475
  • fix: tables with zero columns break theme/font stack #2472
  • fix: add_spacer now obeys hide_item #2474
  • fix (demo): fixed a regression in drag & drop to plot axes (Plot - Tools - Drag & Drop) #2408
  • fix (demo): a typo #2418

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

New Contributors

  • @gengyuchao made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2408
  • @DokaebiYe made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2290
  • @ZhanYF made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2418

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v2.0.0...v2.1.0

- C++
Published by v-ein 6 months ago

dearpygui - Version 2.0

News

We hope everyone is doing well! It has been a while since we've had a new release. This will be the first release in which we introduce a handful of breaking changes (and thus the first time we increase the major version). The majority of the changes with this release are internal and were required to update to the latest versions of Dear ImGui and ImPlot.

The majority of this work was completed by Samuele Mazzi and Vladimir Ein. They deserve recognition for the hard work, dedication, and patience they put into this!

The changelog is below. Also don't forget to checkout the demo!

Changelog

New

  • Python 3.13 support

New Functions

  • addaxistag
  • addbargroup_series
  • addinfline_series
  • adddigitalseries
  • getplotquery_rects
  • setaxislimits_constraints
  • resetaxislimits_constraints
  • setaxiszoom_constraints
  • resetaxiszoom_constraints

New arguments

| Function | Arguments | |-----------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | add_2d_histogram_series
| col_major | | add_button
| repeat | | add_child_window






| always_auto_resize
always_use_window_padding
auto_resize_x
auto_resize_y
frame_style
resizable_x
resizable_y | | add_colormap_scale


| format
mirror
reverse_dir | | add_combo
| fit_width | | add_custom_series
| no_fit | | add_drag_line



| delayed
no_cursor
no_fit
no_inputs | | add_drag_point





| clamped
delayed
no_cursor
no_fit
no_inputs
offset | | add_group
| enabled | | add_heat_series
| col_major | | add_histogram_series

| cumulative
horizontal | | add_input_text





| always_overwrite
auto_select_all
ctrl_enter_for_new_line
escape_clears_all
no_horizontal_scroll
no_undo_redo | | add_line_series




| loop
no_clip
segments
shaded
skip_nan | | add_pie_series
| ignore_hidden | | add_plot







| max_query_rects
min_query_rects
no_frame
no_inputs
override_mod
query_color
zoom_mod
zoom_rate | | add_plot_axis











| auto_fit
foreground_grid
no_highlight
no_initial_fit
no_label
no_menus
no_side_switch
opposite
pan_stretch
range_fit
scale
tick_format | | add_plot_legend




| no_buttons
no_highlight_axis
no_highlight_item
no_menus
sort | | add_scatter_series
| no_clip | | add_stair_series

| pre_step
shaded | | add_stem_series
| horizontal | | add_subplots
| share_series | | add_table_column

| angled_header
no_header_label | | add_text_point
| offset | | add_tree_node

| span_full_width
span_text_width | | add_window
| unsaved_document | | configure_app



| anti_aliased_fill
anti_aliased_lines
anti_aliased_lines_use_tex
docking_shift_only |

Deprecated functions

  • add_hline_series: use add_inf_line_series()
  • add_vline_series: use add_inf_line_series()
  • get_plot_query_area: use get_plot_query_rects()
  • is_plot_queried: use get_plot_query_rects()

Deprecated arguments

| Function | Argument | Explanation | |--------------------------|-------------------------------|------------------------------------------------------------------------------------------------------------------------------------| | add_histogram_series | cumlative | Deprecated because of a typo: use cumulative | | add_image_button | frame_padding | Not supported anymore by Dear ImGui; still works in DPG but will eventually be removed. | | add_plot | anti_aliased | Not supported by ImPlot anymore. To enable/disable anti-aliasing, use dpg.configure_app() with the anti_aliasing parameters. | | add_plot | no_child | Removed in ImPlot as child windows are no longer needed to capture scroll. | | add_plot | no_highlight | Removed because not supported by ImPlot anymore. To control the highlighting of series use the same argument in add_plot_legend. | | add_plot

| query_button
query_mod | This refers to the old way of querying in ImPlot, now replaced with add_drag_rect(). | | add_plot_axis | log_scale | Use scale=dpg.mvPlotScale_Log10 instead. | | add_plot_axis | time | Use scale=dpg.mvPlotScale_Time instead. | | add_text_point

| x_offset
y_offset | Use the offset argument instead. |

Fixes

  • Fix #2173, #2013, #1593 (last 2 issues are closed but not solved, but they are all related)
  • Fix #2108
  • Fix #2016

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here without you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.11.0...v2.0.0

- C++
Published by hoffstadt over 1 year ago

dearpygui - Version 1.11.0

News

Nothing really new to report. We are still actively working towards "Dear PyGui 2". The current working name is Pilot Light UI!

Changelog

New Features

  • feat: add python 3.12 support
  • feat: better keyboard navigations support #2144
  • feat: added getfocuseditem() to request current nav focus

Fixes

  • fix: Replaced four separate corner colors with a single param that properly maps colors to corners #2239
  • fix: adding/removing a child in table doesn't reset row colors
  • fix: enabled themes on table columns and cells #1782
  • fix: nodes created with show=False led to seg fault #2151
  • fix: mvNodeLink internal issues with handlers #2197
  • fix: resetting menu state if not open #2245
  • fix: keep open state when parent window is hidden for tree node and collapsing header #1873
  • fix: setaxisticks can be used on secondary Y axes #2253

Misc

  • Minimum Python version now 3.8

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.10.0...v1.11.0

- C++
Published by hoffstadt almost 2 years ago

dearpygui - Version 1.10.0

News

Nothing really new to report. We are still actively working towards "Dear PyGui 2". The current working name is Pilot Light UI!

Changelog

New Features

  • feat: getitemconfiguration() for fonts #2114
  • feat: activation delay for tooltips
  • feat: add scroll functions to tables #1947
  • feat: no scroll with mouse flag #2134
  • feat: ability to hide separators (previously not honored)
  • feat: add PixelSnapH parameter for fonts

Fixes

  • fix: getallitems() with table columns #2027
  • fix: error handling for DwmGetWindowAttribute #2111
  • fix: menu hovering issue #2131

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

New Contributors

  • @MadOctopus-private made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2118
  • @mef51 made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2126
  • @Yosh31207 made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2134
  • @atallahade made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2160

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.9.1...v1.10.0

- C++
Published by hoffstadt over 2 years ago

dearpygui - Version 1.9.1

News

Just a small maintenance release. Things may seem quiet but don't worry! We are still here. We are just spending most of our effort focusing on Pilot Light which will be the powering Dear PyGui 2.

Changelog

New Features

  • feat: groups can now have heights that children will inherit @Mstpyt

Fixes

  • fix: win32 viewport padding regression introduced in v1.9
  • fix: getaliasid(...) #2034
  • fix: possible race condition with configureviewport(...)_

Misc

  • minimum MacOS version has been moved up from 10.15 to 11.
  • Github actions removed Ubuntu 18.04, forcing us to move up to Ubuntu 20.04 (which means we are linking to a new glibc)

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.9.0...v1.9.1

- C++
Published by hoffstadt almost 3 years ago

dearpygui - Version 1.9

Changelog

New Features

  • feat: plot time ISO format by @Pcothren in https://github.com/hoffstadt/DearPyGui/pull/1976
  • feat: double-click handlers for items by @v-ein in https://github.com/hoffstadt/DearPyGui/pull/2005
  • feat: "disable_close" keyword added to viewport by @Mstpyt

Fixes

  • fix: text widget state update #1933 by @Pcothren in https://github.com/hoffstadt/DearPyGui/pull/1939
  • fix: a horizontal group glues to previous line (#1999) by @v-ein in https://github.com/hoffstadt/DearPyGui/pull/2002
  • fix: initial position for dpg.window with popup=True (#1975) by @v-ein in https://github.com/hoffstadt/DearPyGui/pull/2003
  • fix: drawing thickness by @v-ein in https://github.com/hoffstadt/DearPyGui/pull/2001
  • fix: item config/info oddities by @Atlamillias in https://github.com/hoffstadt/DearPyGui/pull/2010
  • fix (demo): show menubar by @CiotatSoft in https://github.com/hoffstadt/DearPyGui/pull/2029
  • fix: typo in add_button docstring by @arrys in https://github.com/hoffstadt/DearPyGui/pull/2056

New Contributors

  • @Atlamillias made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/1984
  • @v-ein made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2002
  • @MGBergweiler made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2007
  • @CiotatSoft made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2029
  • @AmirmohammadZarif made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2038
  • @xlbljz made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2031
  • @arrys made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/2056 ## Thank you! Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.8.0...v1.9.0

- C++
Published by hoffstadt almost 3 years ago

dearpygui - Version 1.8

News

We have added Python 3.11 support!

As many of you already know, we decided a while back to begin work on a custom graphics engine and UI library to build Dear PyGui 2 with instead of Dear ImGui. This is still our long term desire but we have decided... this goal will be for Dear PyGui 3. In order to ease the burden on both ourselves and you guys, we've decided to make Dear PyGui 2 as an intermediate step(or compromise if you will). The idea being that it will have a one-to-one mapping to Dear ImGui, making our work much much easier. This will also make things more stable as there will be less between YOU and Dear ImGui, not to mention keeping up with the latest version will be trivial. We will also split up ImPlot, ImNodes etc. so they can move at the pace of their respective libraries.

The only thing we will add on will be the ability to "record" your "commands" so that they can be replayed in a similar manner to DPG 1 (helps with python based performance hits).

The most important consequence of this decision is that Dear PyGui 2.0 will be released much sooner (as in a few months)! Here is the repo!

Changelog

Fixes

  • fix: file dialog not respecting bound themes #1928 #1713

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

- C++
Published by hoffstadt over 3 years ago

dearpygui - Version 1.7.3

Changelog

Fixes

  • fix: item registry crash when parent is empty #1907
  • fix: plot legend not showing (regression introduced in 1.7.1) #1919
  • fix: win32 viewport on top being "stuck" #1848
  • fix: custom series crashing when deleting #1864
  • docs: several small typos

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

- C++
Published by hoffstadt over 3 years ago

dearpygui - Version 1.7.2

Changelog

Fixes

  • fix: item registry crash when parent is empty #1907
  • fix: default open not honored for tree nodes and collapsing headers #1893 #1908
  • fix: default open not honored when inside hidden column #1878
  • fix: setaxisticks() regression #1855
  • fix: setaxislimits() regression #1852
  • docs: fixed a few doc strings #1906

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

- C++
Published by hoffstadt over 3 years ago

dearpygui - Release 1.7

News

It feels good to be back! As I'm sure the community has noticed, we've been a bit absent over the last 5 months. This has been due to a variety of factors including new jobs, new children, and other big events in our lives. The good news is that we are in a place where we can start back working on open source!

For information on the long hiatus and the status of Dear PyGui 1 and Dear PyGui 2 go here.

Changelog

Fixes

  • fix step_fast argument for input doubles #1787
  • fix a couple mistakes in demo #1779
  • add2dhistogram_series crash #1761
  • fix +/- buttons for input double with step = 0 #1735

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

- C++
Published by hoffstadt over 3 years ago

dearpygui - Version 1.6.2

News

Following this release, we will be doing a temporary feature freeze while we work on the large backlog of issues, DearPyGuiExt_, performance improvements, documentation, demo improvements, and debug tools!

Changelog

Breaking Changes

  • mvNodeStyleVar_NodePaddingHorizontal & mvNodeStyleVar_NodePaddingVertical have been combined into mvNodeStyleVar_NodePadding. See #1732.

Features

  • Added minimap and minimap_location keywords to add_node_editor(...)
  • custom plot series
    • add_custom_series(...)
    • See Demo -> Plots...Custom...Custom Series...
  • added callback keyword to output_frame_buffer(...) (win32/linux only).
  • added get_platform(...)
  • "double" versions of input, drag, slider widgets for higher precision over current "float" versions

New General Constants

  • mvNodeMiniMapLocationBottomLeft
  • mvNodeMiniMapLocationBottomRight
  • mvNodeMiniMapLocationTopLeft
  • mvNodeMiniMapLocationTopRight
  • mvPlatform_Windows
  • mvPlatform_Linux
  • mvPlatform_Apple

New Theme Constants

  • mvNodesCol_GridLinePrimary
  • mvNodesCol_MiniMapBackground
  • mvNodesCol_MiniMapBackgroundHovered
  • mvNodesCol_MiniMapOutline
  • mvNodesCol_MiniMapOutlineHovered
  • mvNodesCol_MiniMapNodeBackground
  • mvNodesCol_MiniMapNodeBackgroundHovered
  • mvNodesCol_MiniMapNodeBackgroundSelected
  • mvNodesCol_MiniMapNodeOutline
  • mvNodesCol_MiniMapLink
  • mvNodesCol_MiniMapLinkSelected
  • mvNodesCol_MiniMapCanvas
  • mvNodesCol_MiniMapCanvasOutline
  • mvNodesStyleVar_MiniMapPadding
  • mvNodesStyleVar_MiniMapOffset

Fixes

  • fix draw items using first axis only #1643
  • table crash case #1704
  • fixed several node editor issues #1721
  • fixed get_item_configuration(...) for plot histogram series
  • fixed get_value(...) returning deleted value option for listbox #1640
  • fixed candle series demonstration within the demo

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.5.0...v1.6

- C++
Published by hoffstadt almost 4 years ago

dearpygui - Version 1.5.1

News

Small release. This will be the last version to support Python 3.6.

Changelog

Breaking Changes

None

Features

  • added support for hdr, tga, jpg, bmp to save_image(...) #1642
  • added tooltip to table column headers #1656
  • added time_unit keyword to add_candle_series(...)
  • added the following constants for time_unit keyword:
    • mvTimeUnit_Us
    • mvTimeUnit_Ms
    • mvTimeUnit_S
    • mvTimeUnit_Min
    • mvTimeUnit_Hr
    • mvTimeUnit_Mo
    • mvTimeUnit_Yr

Fixes

  • tooltip "show" parameter #1660

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.4.0...v1.5.0

- C++
Published by hoffstadt almost 4 years ago

dearpygui - Version 1.4.0

News

Mostly a maintenance release but 2 new features have been added related to frame buffer output and saving images. We have primarily been focusing on internal refactoring to make maintenance and 3D engine integration easier. We have also been focusing on performance, although those improvements are not expected to be introduced until 1.5.

Notes: * Expect a raspberry pi release later this week. * We will be dropping Python 3.6 support after 1.4.1. * Expect a v1.4.1 release later this week (additional image formats for save_image(...) and output_frame_buffer(...) support for MacOS.

Changelog

Breaking Changes

None

Features

  • added save_image(...) (currently only support png, but 1.4.1 will add support for BMP, TGA, HDR, & JPG)
  • added output_frame_buffer(...) for Windows & Linux (MacOS will be in 1.4.1 released later this week)
  • added additional popup arguments

Fixes

  • fix (mvTreeNode): indent bleeding #1604
  • fix: get_item_configuration(...) type issue #1591
  • fix: reset plot tick labels issue #1590
  • fix: tree node handlers not registering when closed #1568
  • fix: mvKnobFloat enabled keyword #1563

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.3.1...v1.4.0

- C++
Published by hoffstadt almost 4 years ago

dearpygui - Version 1.3.1

Another small release. Contains some windows specific fixes.

News

Our M1 Mac comes in today! Expect some M1 wheels this weekend. Also expect some MacOS specific fixes!

Changelog

Breaking Changes

  • fix: win32 viewport position. We account for the horizontal shift now. (0, 0) is the top left of the monitor as you'd expect.

Fixes

  • fix: model window custom theme segfault #1543
  • fix (windows): repaint while resizing for win32 #422
  • fix (nodes): get_item_rect_min(...) and get_item_rect_max(...) #1239
  • fix (tables): all columns no longer need to be added before rows.

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.3...v1.3.1

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

- C++
Published by hoffstadt about 4 years ago

dearpygui - Version 1.3

Small release but bumping the minor version. Updates on renderer are at the bottom.

News

  • We are still waiting on an M1 Mac. (arrives next week!)
  • We plan on dropping support for Python 3.6 soon.

Changelog

Features

  • added set_clipboard_text(...) #1531
  • added get_clipboard_text(...) #1531
  • added user_data arg to set_resize_callback(...) #1537
  • added user_data arg to set_viewport_resize_callback(...) #1537
  • added user_data arg to set_frame_callback(...) #1537
  • added user_data arg to set_exit_callback(...) #1537
  • added user_data arg to capture_next_item(...) #1537

Fixes

  • fix a confusion about minor version by @BadSugar in https://github.com/hoffstadt/DearPyGui/pull/1518
  • fix "wrap" not working properly in tables #1532
  • fix drag & drop onto plot

Renderer Updates

We have been working on creating a GLTF file importer for the 3D renderer. It is mostly complete. While doing so, we wrote a small renderer (Windows only) to test some of the features. Since we do not plan on just dumping the entire 3D engine into DPG at once but instead in small pieces (as we settle on parts of the API), we are considering starting this by adding a small "asset viewer" like widget early to DPG. It would just allow users to import a GLTF file (other formats to follow) and view the model. Includes PBR, animations, IBL, skinning, morphing, clearcoat, etc. It would be a very high level widget so we can continue working on the engine without changing the API. Video below:

https://user-images.githubusercontent.com/39973752/149627101-1e43558f-6fd5-4b3a-89ec-e831033297b2.mp4

New Contributors

  • @BadSugar made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/1518

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

- C++
Published by hoffstadt about 4 years ago

dearpygui - Version 1.2

Happy New Year! Last release of the year. It may not seem like much but we have still been working on mostly internal optimizations and refactoring to prepare for the 3D renderer and Vulkan backend. With relatively large refactors and insufficient regression tests, there is always a non-zero chance for small regressions. Please check your apps and let us know if there are any regression issues!

News

  • We ordered an M1 Mac which is expected to arrive between Jan 21-28, so expect the M1 wheels to come late January!
  • Python 3.6 has reached EOL. We will drop support once Python 3.11 is released.
  • Checkout our interview with Talk Python.
  • We plan on starting to add an additional module (dearpygui.im) which is an almost direct immediate mode wrapping to imgui.

Changelog

Features

  • feat: exposed callback queue. See this.
    • keyword: added manual_callback_management to dpg.configure_app(...)
    • command: dpg.get_callback_queue(...)
    • command: dpg.run_callbacks(...)
  • keyword: added no_open_over_existing_popup to dpg.add_window(...) #1513

Fixes

  • fix: width/height ignored by file dialog #1476 and added min/max sizes
  • fix: handler deactivation #1485
  • fix: font atlas recreation, related to #1417
  • fix (mvKnobFloat): Fix extra padding on knob when label field not pre… by @geekbozu
  • fix (mvTableRow): table row not honoring "show" #1502

New Contributors

  • @geekbozu made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/1501
  • @FredericChang made their first contribution in https://github.com/hoffstadt/DearPyGui/pull/1510

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.1.3...v1.2

- C++
Published by hoffstadt about 4 years ago

dearpygui - Version 1.1.3

Mostly a maintenance release with internal changes however a few bugs have been fixed.

Changelog

  • fix: finished hooking up theme get_item_configuration(...) #1440 by @hoffstadt in https://github.com/hoffstadt/DearPyGui/pull/1441
  • fix: istablecolumn_highlight, cell and row #1452 by @Pcothren in https://github.com/hoffstadt/DearPyGui/pull/1454
  • fix: fixed exit callback not having access to dpg commands #1448 by @hoffstadt in https://github.com/hoffstadt/DearPyGui/pull/1458
  • fix: alias improper cleanup #1350 by @hoffstadt in https://github.com/hoffstadt/DearPyGui/pull/1457
  • fix : table column/row freeze swapped #1467 by @Pcothren

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.1.1...v1.1.3

- C++
Published by hoffstadt about 4 years ago

dearpygui - Version 1.1.1

This is just a maintenance release.

Fixes

  • fix: polygon drawn on plot wrong point conversion #1423 by @hoffstadt in https://github.com/hoffstadt/DearPyGui/pull/1424
  • fix: drawellipse/drawpolyline broken #1425 by @hoffstadt in https://github.com/hoffstadt/DearPyGui/pull/1430
  • fix: dockspace preview theming not working #1429 by @hoffstadt in https://github.com/hoffstadt/DearPyGui/pull/1431
  • fix: theme style target categories not working #1220 by @hoffstadt in https://github.com/hoffstadt/DearPyGui/pull/1434

Full Changelog: https://github.com/hoffstadt/DearPyGui/compare/v1.1...v1.1.1

- C++
Published by hoffstadt over 4 years ago

dearpygui - Version 1.1

TL:DR;

  • This is release is mostly for the new drawing transform features.
  • There are several fixes included as well.
  • You can now use dpg.configure_app(wait_for_input=True) to only update/render on user input!
  • The focus over the next few releases will be BUGS, PERFORMANCE, and HIGH DPI SUPPORT.

Changelog

Features

  • added waitforinput keyword to configure_app(...)
  • added draw node item (adddrawnode(...)) (see drawing section in demo)
  • added apply_transform(...) command for draw nodes
  • added perspective_divide keyword to draw_layer(...)
  • added depth_clipping keyword to draw_layer(...)
  • added cull_mode keyword to draw_layer(...)
  • added setclipspace(...) command for draw layers
  • added gettextsize(...)
  • added createrotationmatrix(...) command
  • added createtranslationmatrix(...) command
  • added createscalematrix(...) command
  • added createlookatmatrix(...) command
  • added createperspectivematrix(...) command
  • added createorthographicmatrix(...) command
  • added createfpsmatrix(...) command
  • added built-in mvMat4 type (for now, just used for the above operations)
  • colormaps can now be sampled before startup

Fixes

  • input float disable not working #1387
  • fixed "default_open" issue with tree nodes #1388
  • plot annotations not obeying show/hide
  • callback not called when input_int goes from 1 to 0 #1398
  • keypress and key release polling issue (#1339)
  • fixed location kwarg arg being ignored (#1347)
  • fix position control not hooked up (#1346)
  • fixed fonts/themes for table
  • fixed issue where clearing and repopulating table caused crash
  • type hints for color type for certain methods #1405
  • global themes for disabled components not working #1401
  • remapped file dialog selected color from mvThemeCol_Header to mvThemeCol_FrameBgActive

Internal

  • build: removed std::filesystem dependency for unix OS's (#1412)
    • Should fix some linux distro issues
  • build: upgraded implot from v0.11 to v0.12 (#1353)
  • refactor: imgui, implot, imnodes context creation moved to dpg context

Notes

3D Operations

These new features are not a replacement for an actual 3D renderer but they are useful for light 3D operations. The actual 3D renderer will be coming with Dear Py3D. We will also be adding a software renderer to Dear PyGui in the near future. This will also not be a replacement for the hardware accelerated 3D render but will resolve a few of the 3D issues with the drawing API that can't be easily solved without per pixel control. It will also be useful for us for automated testing and as a fallback renderer for machines that don't support the graphics APIs we use. Small sandbox can be found here. We will be adding several helpers to DearPyGui_ext (i.e. cameras).

mvMat4 type

We added the mvMat4 (and mvVec4) types to work with the create*matrix(...) commands and apply_transform(...). We will continue to make these more complete matrix and vector types for general purpose use but the initial focus was for the basic 3D operation use cases. We did not want to use python lists (too slow) and we did not want to added a dependency (numpy). We will continue to improve the performance of these new types as well (SIMD support).

- C++
Published by hoffstadt over 4 years ago

dearpygui - Version 1.0.2

TL:DR;

  • This is a maintenance release with a handful of fixes.
  • Raspberry Pi 4 (python 3.7) is now supported.

Version 1.0 availability as of now:

| Platform | Python 3.6 | Python 3.7 | Python 3.8 | Python 3.9 | Python 3.10 | |-----------|-------------|-------------|-------------|-------------|--------------| | Windows 10 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | | macOS | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | | Linux | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | | Raspberry Pi 4 | | ✔️ | | | |

Changelog

Fixes

  • fix (mvItemRegistry): color map render order to fix #1335
  • fix (themes): fixed enabled/disabled theme setting issues
  • fix (mvTable): fixed tooltips not working in table #1255
  • fix (mvCollapsingHeader): fixed default_open #1327
  • fix (mvNodeLink): fixed node link theme bleeding #1269
  • fix (mvItemRegistry): temp. fix for delayed search not cleaning up
  • fix: fixed themes not binding to node attributes #1320 (#1329)
  • fixed show_item_registry() not rendering widgets #1321

misc

  • removed unused keywords from a few items
  • reduced Linux wheel sizes from 80mb to ~3mb (thanks mindv0rtex)

- C++
Published by hoffstadt over 4 years ago

dearpygui - Version 1.0.0

News

Well folks, this has been a long 17 months but we are finally here. Please at a minimum read the changelog and checkout the Gallery at the end of this release! Also checkout the Founding Sponsors and Retiring Tiers Announcement. You have until the end of day October 14th to be included! If you should be included but were not, please let us know (check the about menu).

image

Version 1.0 availability as of now:

| Platform | Python 3.6 | Python 3.7 | Python 3.8 | Python 3.9 | Python 3.10 | |-----------|-------------|-------------|-------------|-------------|--------------| | Windows 10 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | | macOS | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | | Linux | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |

Raspberry Pi 4 will be available in a few days.

What to expect?

API & 0.8 Migration

The API is slightly more explicit, but migration effort should be minimal.

Deprecation

We will no longer break your code! We will use deprecation moving forward.

What can we break/change going forward?

  1. Things in the experimental module.
  2. Debug tools.

Bugs

Although this release should have the least number of bugs to date, there may be a few regression bugs as many of the underlying systems have been refactored entirely since 0.8 and we do not yet have meaningful regression tests setup. The primary focus for this release was stabilizing the API which we have now done. The current issues need to be reevaluated for this release.

Maintenance Releases

There will most likely be frequent maintenance releases over the next weeks.

Documentation & Tutorials

The docs are being worked on everyday and will continue to be worked on and expanded. There are a few edge features and details that have not been fully documented. We will also be starting back the YouTube tutorial series!

Previous Versions

We will maintain v0.6.415 and v0.8.64. If you have another version as part of a project's requirements, update or vendor the wheel because we will be removing the rest of the wheels to free space for pypi.

Future

1.0 is just the beginning. There is still a lot of work to be done and a lot of exciting stuff coming down the pipeline. We will have to be more careful moving forward but that will not stop the momentum!

Integration

We plan on looking at integration with other libraries (i.e. pygame). Not to mention the 3D engine we are working on.

Platforms

We still want to bring in mobile (and maybe web eventually).

Contributors

We are continuing to cleanup and document the backend to facilitate a more contributor-friendly codebase. As you all know, the wiki is now going to be the contributor documentation.

Change Log

Breaking Changes

  • user must create DearPyGui_ context with create_context() before calling any DPG commands
  • changed dragPayload drag_data is submitted to the targets drag_callback rather than drop_callback
  • moved logger and themes to DearPyGui_Ext
  • table rows now required
  • removed bind_item_disabled_theme(...)
  • removed bind_item_type_disabled_theme(...)
  • removed bind_item_type_theme(...)
  • user must create, setup, show viewport before starting dpg:
    • "createviewport()->setupdearpygui()->showviewport()->startdearpygui()"
  • add_theme_color(...) and add_theme_style(...) must known belong to a theme_component

New

  • module: added experimental (not in use yet)
  • item: added add_table_cell(...)
  • item: added add_spacer(...)
  • item: added add_theme_component(...)
  • command: added get_major_version(...)
  • command: added get_minor_version(...)
  • command: added toggle_viewport_fullscreen(...)
  • command: added show_item_debug(...)
  • command: added bind_theme(...)
  • command: added highlight_table_column(...)
  • command: added unhighlight_table_column(...)
  • command: added set_table_row_color(...)
  • command: added unset_table_row_color(...)
  • command: added highlight_table_cell(...)
  • command: added unhighlight_table_cell(...)
  • command: added highlight_table_row(...)
  • command: added unhighlight_table_row(...)
  • command: added is_table_column_highlighted(...)
  • command: added is_table_row_highlighted(...)
  • command: added is_table_cell_highlighted(...)
  • command: added context manager for add_plot_axis(...)
  • command: added configure_app(...)
  • command: added get_app_configuration(...)
  • command: added add_item_set(...)
  • command: added add_template_registry(...)
  • command: added bind_template_registry(...)
  • keyword: added drag_callback, drop_callback, payload_type to add_image(...)
  • keyword: added drag_callback, drop_callback, payload_type to add_text(...)
  • keyword: added drop_data to drag_payload(...)
  • keyword: added xoffset to group(...)
  • keyword: added id to popup(...)
  • keyword: added clipper to add_table(...)
  • added deprecation system
  • callbacks will now send alias through the sender argument if alias is used.
  • columns can now be programmatically hidden
  • table "value" is now a string, which acts as a filter using the row filter keys
  • texture id can be updated with configure_item(...) for texture based widgets

Deprecated

  • item: removed tablenextcolumn
  • removed viewport keyword arg from setup_dearpygui(...)
  • removed viewport keyword arg from show_viewport(...)
  • keyword: removed drag_callback from add_menu_item(...)
  • keyword: removed drag_callback from add_colormap_scale(...)
  • keyword: removed drag_callback from add_colormap_slider(...)
  • keyword: removed default_font keyword arg from add_font(...), use bind_font(...) now
  • keyword: removed default_theme keyword arg from add_theme(...), use bind_theme(...) now
  • keyword: renamed id keyword to tag
  • command: cleanup_dearpygui(...) is deprecated. Use destroy_context(...)
  • command: staging_container(...) is deprecated. Use stage(...)
  • command: enable_docking(...) is deprecated. Use configure_app(docking=True, docking_space=dock_space)
  • command: get_dearpygui_version() is deprecated. Use get_app_configuration()['version'].
  • command: init_file(...) is deprecated. Use configure_app(init_file=file).
  • command: load_init_file is deprecated. Use configure_app(init_file=file, load_init_file=True).
  • command: is_viewport_created(...) is deprecated. Use is_viewport_ok().
  • command: setup_viewport(...) is deprecated. Use create_viewport()->setup_dearpygui()->show_viewport().
  • command: set_item_theme(...) is deprecated. Use bind_item_theme().
  • command: set_item_type_disabled_theme(...) is deprecated. Use bind_item_type_disabled_theme().
  • command: set_item_theme(...) is deprecated. Use bind_item_theme().
  • command: set_item_type_theme(...) is deprecated. Use bind_item_type_theme().
  • command: set_item_font(...) is deprecated. Use bind_item_font().
  • command: add_activated_handler(...) is deprecated. Use add_activated_handler().
  • command: add_active_handler(...) is deprecated. Use add_item_active_handler().
  • command: add_clicked_handler(...) is deprecated. Use add_item_clicked_handler().
  • command: add_deactivated_after_edit_handler(...) is deprecated. Use add_item_deactivated_after_edit_handler().
  • command: add_deactivated_handler(...) is deprecated. Use add_item_deactivated_handler().
  • command: add_edited_handler(...) is deprecated. Use add_item_edited_handler().
  • command: add_focus_handler(...) is deprecated. Use add_item_focus_handler().
  • command: add_hover_handler(...) is deprecated. Use add_item_hover_handler().
  • command: add_resize_handler(...) is deprecated. Use add_item_resize_handler().
  • command: add_toggled_open_handler(...) is deprecated. Use add_item_toggled_open_handler().
  • command: add_visible_handler(...) is deprecated. Use add_item_visible_handler().
  • command: set_colormap(...) is deprecated. Use bind_colormap().
  • command: reset_default_theme(...) is deprecated. Use bind_theme(mvAll).
  • command: set_staging_mode(...) is deprecated. No longer needed.
  • command: add_spacing(...) is deprecated. Use 'add_spacer(...)`
  • command: add_dummy(...) is deprecated. Use 'add_spacer(...)`
  • command: add_child(...) is deprecated. Use 'addchildwindow(...)`
  • command: add_same_line(...) is deprecated. Use add_group(horizontal=True)

Fixes

  • fixed get_item_configuration(...) memory leak #1179
  • fixed issue to allow source to be alias #1181
  • fixed window info not registering as container #1188
  • fixed min/max clamping issue with input widgets #1229
  • fixed using aliases for set/get value
  • fixed issue with get_selected_nodes(...) #1263
  • fixed listbox default value empty #1219
  • fixed ellipse thickness keyword not working #1213
  • fixed return type hints for callbacks #1208
  • fixed modal xpos creep #1171
  • fixed plot context/configuration sync issues
  • fixed plot axis context/configuration sync issues
  • fixed plot legend context/configuration sync issues
  • fixed toggledopenhandler triggering for closed #1280

Thank you!

Dear PyGui development is currently funded by a handful of gracious sponsors and we would like to thank them tremendously. We wouldn't be here with out you guys.

Thank you for supporting us.

If you or your company uses Dear PyGui, please consider supporting us! We need it now more than ever.

Gallery

image

image

image

image

image

image

image

https://user-images.githubusercontent.com/39973752/137012413-cb9af94d-d1e0-49b2-ad59-e56f7b25b962.mp4

https://user-images.githubusercontent.com/39973752/137012538-597e48c2-5250-49d7-a019-29fcdf358fab.mp4

- C++
Published by hoffstadt over 4 years ago

dearpygui - Version 0.8.62

News

  • You can now use a string in place of an ID (similar to 0.6)! See here. This is optional but prevents users from needing to manage the UUID's manually!
  • We are sticking with the names Dear PyGui and Dear Py3D!

Breaking Changes

  • pmin & pmax were backwards in draw_rectangle(...). You need to reverse them. Related to #1163
  • add_colormap_scale(...) keyword colormap now corresponds to mvColorMap widget

New

  • feature: id can now be a string, but must be unique!
  • command: added get_item_alias(...)
  • command: added set_item_alias(...)
  • command: added add_alias(...)
  • command: added remove_alias(...)
  • command: added does_alias_exist(...)
  • command: added get_alias_id(...)
  • command: added get_aliases(...)
  • command: added get_item_registry_configuration(...)
  • command: added configure_item_registry(...)
  • widget: added add_colormap(...) #1069
  • widget: added add_colormap_registry(...) #1069
  • widget: added add_colormap_button(...)
  • widget: added add_colormap_slider(...)
  • command: added sample_colormap(...)
  • command: added get_colormap_color(...)
  • keyword: added mulicolor to draw_rectangle(...)
  • keyword: added color_upper_left to draw_rectangle(...)
  • keyword: added color_upper_right to draw_rectangle(...)
  • keyword: added color_bottom_left to draw_rectangle(...)
  • keyword: added color_bottom_right to draw_rectangle(...)
  • constant: added mvPlotColormap_Twilight
  • constant: added mvPlotColormap_RdBu
  • constant: added mvPlotColormap_BrBG
  • constant: added mvPlotColormap_PiYG
  • constant: added mvPlotColormap_Spectral
  • constant: added mvPlotColormap_Greys
  • set_value(...) now works for theme_color #1136
  • set_value(...) now works for theme_style #1136
  • added use_internal_label keyword to all widgets, related to #1135

Fixes

  • fixed setting default theme values
  • fixed infinite on_close callbackss #1149
  • fixed get_item_configuration(...) for window max_size
  • fixed histogram misspelling issue related to #1132
  • fixed adding font ranges over 0x10000 #1092
  • fixed viewport issue for windows #1126

Other

  • added colormap section to demo under "widgets"
  • simplied drawing API demo

- C++
Published by hoffstadt over 4 years ago

dearpygui - Version 0.6.415

News

With version 0.7 just a few weeks away, we expect this to be the last 0.6 release. We will begin focusing solely on 0.7.

Version 0.7 will contain the final breaking changes and once all the obvious bugs and issues are addressed, it will be tagged 1.0! Be aware that 0.7 will contain the largest amount of updates, features, and breaking changes of any release thus far (and by far), however we believe once users begin to work with the improvements, they will agree it is for the best.

You will also notice @Pcothren and I have been less active in the discord server and github discussions but this is due solely to our focus being on 0.7's release.

In the following weeks, you will see the wiki beginning to split between 0.6/0.7 sections. We will also begin posting a running change log on the wiki so users can prepare for the upcoming changes.

If you have questions about any of the changes, please contact us.

Updates

  • vcruntime140_1.dll: now included, addressing #563 and others
  • tabbar: "setvalue" can now programmatically set the active tab #729

Fixes

  • add_series: fixed axis 1 not being reset when plotting to different axes #744
  • addinput*: fixed multiple ran callback when using min/max values
  • nodes: memory bad read/write related to deleting nodes
  • addinputint3 | addinputfloat3 callback isn't working anymore #800
  • fixed mac cpu unbound usage when window is covered
  • Setting addlabeltext color causes label text to change showing the hidden label name #803
  • Adding textures at runtime did not work for linux #687
  • Texture updates on MacOS cause crash #743

- C++
Published by hoffstadt almost 5 years ago

dearpygui - Version 0.5.66

Changes

  • Data Storage: now thread safe
  • set_value: now thread safe
  • get_value: now thread safe

New Commands

  • Tab Button: Added addtabbutton command

New Keywords

  • tab: Added no_reorder keyword
  • tab: Added leading keyword
  • tab: Added trailing keyword
  • tab: Added no_tooltip keyword

Fixes

  • tabbar: fixed tabbar callback
  • drawing: fixed "originy" issue #309
  • table: fixed spacing issue #297

- C++
Published by hoffstadt over 5 years ago

dearpygui - Version 0.3.7


VERSION 0.3.7 (9/14/2020)

Updates: - ImPlot: upgraded to commit 4f0a09f

New Commands: - Widgets: Added addimagebutton command - Plots: Added addpiechart command - Plots: Added addpiechart_data command - Plots: Added clearpiechart_data command - Plots: Added addstemseries command

Fixes: - Threadpool: Fixed issue with threads freezing

- C++
Published by hoffstadt over 5 years ago

dearpygui - Version 0.2.0


VERSION 0.2.0 (9/5/2020)

New Features:

  • Context Managers: You can now import dearpygui.wrappers to use context manager versions of all containers

Changes:

  • Widgets: All "add_widget" commands now return true on successful adding or false.

Breaking Changes:

  • Container Widgets: Replaced all end_* commands with a single end() command

- C++
Published by hoffstadt over 5 years ago

dearpygui - Version 0.1.3


VERSION 0.1.3 (9/4/2020)

  • Label Text: Quick fix to label_text setting

- C++
Published by hoffstadt over 5 years ago