Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updating backend ImGui/ImPlot/ImNodes to latest versions #2275

Open
wants to merge 72 commits into
base: master
Choose a base branch
from

Commits on Feb 7, 2024

  1. core: Bump thirdparty versions to ImGui 1.83 and ImPlot 0.13

    - added submodule implot
    - discontinued docking support
    - updated documentation
    - bump imgui and implot versions to ImGui 1.83 and ImPlot 0.13
    - renamed variables to match the new backend
    - added new flags to several plots
    - Added legacy support for new IO backend
    - Changed (but not functioning yet) query in plots
    - Added gl3w to "thirdparty" to avoid dependency in imgui "examples" folder
    - Modified build process
    - Added style variable `mvStyleVar_DisabledAlpha`
    - Added flags to Drag* widgets
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    894b4e9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b5f7291 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c727a8f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    1a09f3d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    d5128dd View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ed59f90 View commit details
    Browse the repository at this point in the history
  7. core: Bump thirdparty libraries to latest versions

    For those who're wondering, it wasn't possible to do an incremental update to the latest version mostly because of several problems with the OpenGL libraries.
    In the end, bump directly to the latest version seemed the most stable and overall best solution.
    
    - `str_ends_with` added to check images extensions
    - assertion enabled
    - Implemented some of the ImGuiChildFlags
    - Removed old parameters for plots
    - Mocked (/commented) several functions so that they can be improved later (ImageButton, ColormapScale, PlotXLines, etc...)
    - Cast every key input to ImGuiKey
    - IMPORTANT: Changed GetItem logic because it was deeply broken (for some unknown problem, so maybe the problem is still there)
    - Removed useless dependencies
    - Assigned default values in struct for mvPlotConfig "_mod"
    - Replaced `IM_OFFSETOF` with `offsetof`
    - Updated ImGui to version 1.90.1
    - Updated ImPlot to version 0.16
    - Updated ImNodes to latest release
    - Added TODO.md
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    9577183 View commit details
    Browse the repository at this point in the history
  8. feat (ImPlot): add new plot and several flags

    - added Infinite Line Series
    - udpated todo
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    ccc4427 View commit details
    Browse the repository at this point in the history
  9. core: Major update

    - Start migration to new IO (deleting GetKeyConstants)
    - Update all .py files
    - Updated some of the flags of plots (still not all of them)
    - Added if statement to BeginTooltip, to mantain consistency with other widgets
    - Add "SeparatorText()"
    - Add script to build and generate python files automatically
    - Started Stack Tool window
    - IsMouseDoubleClicked() -> GetMouseClickedCount() as suggested in ImGui
    - Fixed metric windows
    - Several refactors
    - New table params
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    ad5beef View commit details
    Browse the repository at this point in the history
  10. core: Changed internal IO handling and bugfixes

    - Removed keys data structure
    - Fix regression custom series
    - Fix drawing plots
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    ef317a7 View commit details
    Browse the repository at this point in the history
  11. feat (ImPlot): add plot flags

    FabioSpano authored and SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    acd580f View commit details
    Browse the repository at this point in the history
  12. fix: Fix bug on exit

    Also:
    - added parameters for stairs plot
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    e890a12 View commit details
    Browse the repository at this point in the history
  13. fix: fix bug flags plots

    Also:
    - removed deprecated keys
    - fix typo in param of subplots function
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    f04917e View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    4922e75 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    653b898 View commit details
    Browse the repository at this point in the history
  16. feat (ImPlot): Add formatter and scales to axes

    - Fix no_outliers typo
    - Clean .md files
    - Added flags for InputText
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    3b6350e View commit details
    Browse the repository at this point in the history
  17. core: new feats in ImPlot and new demo

    - Added GroupBarSeries
    - Reimplemented quering in plots
    - Cleaned internal mvPlotConfig
    - Fixed demo
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    655d9aa View commit details
    Browse the repository at this point in the history
  18. core: Update

    - Removed 'area_series` in favor of `line_series` + `shaded` flag
    - Added remaining flags to plots
    - Refactor of `XSeriesConfig` structs
    - Added some mvKeys
    - Updated documentation mainly for DragTools and ChildWindow
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    05d5417 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    42c5764 View commit details
    Browse the repository at this point in the history
  20. core: Add Presentation to MetricsTool and clean code

    - Added ImageSeriesFlags
    - Update implot version
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    888ae9f View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    0cb7e4b View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    0f844d5 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    81fa0bd View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    8140e05 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    2642611 View commit details
    Browse the repository at this point in the history
  26. core: update demo and add new plot

    - Fixed ColormapScale and added flags
    - Added DigitalSeries
    - Updated demo, also removing dependency to numpy
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    f06beb5 View commit details
    Browse the repository at this point in the history
  27. core: Update density demo

    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    49bf4a2 View commit details
    Browse the repository at this point in the history
  28. core: add some widget to demo

    FabioSpano authored and SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    1e54dd7 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    172d767 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    f20556e View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    ebcdcff View commit details
    Browse the repository at this point in the history
  32. core: Update

    - Added IMGUI_DEFINE_MATH_OPERATORS in CMake files (No more need of imconfig.h)
    - Added "set_decimal_point" function
    - Added Stack Tool window (it still has a little problem, because it shows an empty window)
    - Fixed type of "default_value" param of add_drag_line
    - Fixed HeatSeries adding its flags and fixing signature
    SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    4a3772d View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    ffc7f2d View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    463c794 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    753b8c0 View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    6284111 View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    9308d32 View commit details
    Browse the repository at this point in the history
  38. core: add repeat flag for button to continuosly call the callback whe…

    …n holding the button
    FabioSpano authored and SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    81bf1c4 View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    d4ade25 View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    db94c67 View commit details
    Browse the repository at this point in the history
  41. core: remove thirdparty gl3w_stripped

    removed useless dependency
    FabioSpano authored and SamuMazzi committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    38b1979 View commit details
    Browse the repository at this point in the history

Commits on Feb 13, 2024

  1. core: Refactor and little updates

    - Added keys previously removed because of the OBSOLETE flag of ImGui
    - SeparatorText() no longer takes "text" as a parameter but it uses the usual "label" parameter
    - Added get_focused_item() and default parameter of draw_rectangle as in master branch
    - Little refactor of mvPlotting.cpp
    SamuMazzi committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    b5ef84e View commit details
    Browse the repository at this point in the history

Commits on Feb 15, 2024

  1. hotfix: change parameter in demo

    Forgot to change after last commit
    SamuMazzi committed Feb 15, 2024
    Configuration menu
    Copy the full SHA
    c45553d View commit details
    Browse the repository at this point in the history

Commits on Feb 19, 2024

  1. Configuration menu
    Copy the full SHA
    8e5353d View commit details
    Browse the repository at this point in the history

Commits on Feb 22, 2024

  1. fix: fix label series parameters

    It seems that the label series wasn't working correctly because of a silly error.
    Also the parameters have been made more consistent with the other widgets of the same kind (look at the offset parameter)
    
    Also, TODO updated
    SamuMazzi committed Feb 22, 2024
    Configuration menu
    Copy the full SHA
    c6b7197 View commit details
    Browse the repository at this point in the history

Commits on Feb 26, 2024

  1. feat: add recursive functionality to filter_set

    Thanks to this functionality now the filter set can work with sublists. This means that if we have more widgets nested and we want to filter them showing them even if their parents don't match, now it's possible.
    (Still not tested a lot)
    SamuMazzi committed Feb 26, 2024
    Configuration menu
    Copy the full SHA
    71c6b8c View commit details
    Browse the repository at this point in the history

Commits on Feb 27, 2024

  1. feat: add disabled feature to groups

    This feature is generically available in ImGui, but for DPG the simplest solution seemed to be adding a parameter to a really generic widget like "group"
    SamuMazzi committed Feb 27, 2024
    Configuration menu
    Copy the full SHA
    08e229d View commit details
    Browse the repository at this point in the history
  2. revert: revert "recursive" funcionality of filter_set

    Reverting 71c6b8c
    Maybe it'll be added in the future
    SamuMazzi committed Feb 27, 2024
    Configuration menu
    Copy the full SHA
    30f8e28 View commit details
    Browse the repository at this point in the history

Commits on Apr 2, 2024

  1. Configuration menu
    Copy the full SHA
    b025efe View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    903dfe6 View commit details
    Browse the repository at this point in the history
  3. bugfix: fix default argument for mvKey handlers

    Also:
    - fix mvKeyDownHandler the erroneously check for DownDurationPrev and not DownDuration
    - revert GetMouseClickedCount == 2 with IsMouseDoubleClicked
    SamuMazzi committed Apr 2, 2024
    Configuration menu
    Copy the full SHA
    4f85471 View commit details
    Browse the repository at this point in the history
  4. fix: fix separator behaviour

    It was erroneously checking for info.internalLabel instead that config.specifiedLabel
    SamuMazzi committed Apr 2, 2024
    Configuration menu
    Copy the full SHA
    7a3eb39 View commit details
    Browse the repository at this point in the history
  5. core: improve checking of image extensions

    Now it's case insensitive and it checks also for the dot before the extension name
    SamuMazzi committed Apr 2, 2024
    Configuration menu
    Copy the full SHA
    4499066 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    5f55358 View commit details
    Browse the repository at this point in the history

Commits on Apr 4, 2024

  1. io: fix keys assignment

    This shouldn't break the build with MVDIST_ONLY anymore
    SamuMazzi committed Apr 4, 2024
    Configuration menu
    Copy the full SHA
    760eedf View commit details
    Browse the repository at this point in the history
  2. build: improve build script

    In this way it'll also build the target release depending on the choice of the user
    SamuMazzi committed Apr 4, 2024
    Configuration menu
    Copy the full SHA
    d936441 View commit details
    Browse the repository at this point in the history

Commits on Apr 24, 2024

  1. docking: reintroduce docking functionality

    Also:
    - introduced `docking_shift_only` parameter
    - implicit update to ImGui 1.90.5
    SamuMazzi committed Apr 24, 2024
    Configuration menu
    Copy the full SHA
    aa29079 View commit details
    Browse the repository at this point in the history
  2. plot: introduce set_anti_aliasing function

    Also:
    - changed `axesNames` and `axesFlags` from `std::vector` to `std::array`
    - deprecate `anti_aliased` parameter for plots
    ` revert change name of parameter `no_mouse_text` to `no_mouse_pos`
    SamuMazzi committed Apr 24, 2024
    Configuration menu
    Copy the full SHA
    d3bf2b7 View commit details
    Browse the repository at this point in the history

Commits on May 6, 2024

  1. core: fix detecting of case-insensitive string compare

    Now it's based on the detection of the OS and no more on the function `strnicmp` itself
    SamuMazzi committed May 6, 2024
    Configuration menu
    Copy the full SHA
    46cd05d View commit details
    Browse the repository at this point in the history

Commits on May 7, 2024

  1. core: change to arguments of functions and reintroduce deprecated ele…

    …ments
    
    - add `DEPRECATED_KEYWORD_ARG` to use in cases where you accept a deprecated argument but you suggest the user to move to the new one.
    - changed `invert` to `reverse_dir` argument in `color_map_scale`
    - changed some helper text
    - restored `cumlative` as deprecated argument
    - add old functions as deprecated: `add_hline_series` and `add_vline_series`
    SamuMazzi committed May 7, 2024
    Configuration menu
    Copy the full SHA
    ff5a813 View commit details
    Browse the repository at this point in the history

Commits on May 9, 2024

  1. plot: change names of functions/parameters and add deprecated ones

    - `mvGroupBarSeries` to `mvBarGroupSeries` and change its parameters
    - `mvTag` to `mvAxisTag`, together with `add_axis_tag` instead of `add_plot_tag`. Also now it is a type 1 item.
    -  change some parameters' names
    - reintroduce removed parameters as DEPRECATED and changed other parameters' names in `add_plot`, `add_axis_plot` and `add_label_series`
    - change `no_outliers` to `outliers` in Histograms
    - reintroduce deprecated `is_plot_queried` and `get_plot_query_area`
    SamuMazzi committed May 9, 2024
    Configuration menu
    Copy the full SHA
    3cda52a View commit details
    Browse the repository at this point in the history
  2. core: udpate imgui, add style vars and change/add functions and param…

    …eters
    
    - add style variables: `TabBorderSize`, `TabAngledHeadersAngle`, `TableAngleHeaderTextAlign`
    - fix `angled_header` parameter for TableColumn
    - effectively reactivate `frame_padding` in `ImageButton`
    - fix typo in `ImGuiStyleVar_TabBarBorderSize`
    - add some `span_` parameters to `tree_node` and added them to Demo (others still need to be tested)
    - update ProgressBar documentation to tell the user the possibility to enable indeterminate progress bar
    - update ImGui backend to 1.90.6
    SamuMazzi committed May 9, 2024
    Configuration menu
    Copy the full SHA
    7f4f780 View commit details
    Browse the repository at this point in the history
  3. table: fix header label

    SamuMazzi committed May 9, 2024
    Configuration menu
    Copy the full SHA
    ec643f4 View commit details
    Browse the repository at this point in the history

Commits on May 17, 2024

  1. core: fix few bugs and clean up code/documentation

    - fix typos and remove useless comments
    - restore old documentation
    - revert BOM changes
    - revert adding of `set_anti_aliasing` function in favour of adding new parameters to `configure_app`
    - change documentation of some parameters
    - remove useless variables like `unsaved_document`
    - fix "Mouse clicks count" so that now shows the number of counts and not the button creating them
    - implement `_query_dirty` to make the query rects behave correctly inside plots and fix callback for them
    - change `DEPRECATED_KEYWORD_ARG` parameter
    - hide redundant window in `StackWindow`
    - fix bug related to tooltip with angle headers
    - restore missing Docking style colors
    SamuMazzi committed May 17, 2024
    Configuration menu
    Copy the full SHA
    c62d78d View commit details
    Browse the repository at this point in the history

Commits on May 21, 2024

  1. core: improve tables, restore Mx in mvDrawing, fix tooltip and mino…

    …r fixes
    
    - Remove hideable arguments in `add_table` in demo
    - Improve documentation and change some parameters' names
    - Remove `disabled` parameter in `add_table_column`
    - Update state of tooltip when not shown
    - Change type of `decimalPoint`
    - Restore old `Mx` instead of `ImPlot::GetCurrentContext()->Style.LineWeight`
    - Remove useless performance improvement  in `GetItem`
    SamuMazzi committed May 21, 2024
    Configuration menu
    Copy the full SHA
    6b07596 View commit details
    Browse the repository at this point in the history
  2. plots: add mvKey_ModDisabled and show_label parameter for drag_

    … widgets
    
    Also, improve internal handling of flags and names of axes together with slight changes to parameters default values
    SamuMazzi committed May 21, 2024
    Configuration menu
    Copy the full SHA
    5e94ed9 View commit details
    Browse the repository at this point in the history

Commits on May 22, 2024

  1. plot: add ImPlot submodule

    SamuMazzi committed May 22, 2024
    Configuration menu
    Copy the full SHA
    7af5307 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a0c1a43 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ec26852 View commit details
    Browse the repository at this point in the history

Commits on Jun 6, 2024

  1. plot: fix add_text_point parameters and update demo

    - fix `add_text_point` parameters, now accepting single values instead than arrays (only supports double now)
    - change `opposite` parameter name and `axis_opposite` parameter name
    - add `add_text_point` and "Ordering Axes Plot" in demo
    SamuMazzi committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    972240e View commit details
    Browse the repository at this point in the history
  2. core: improve group disabled and tooltip updating state

    - handle `disable` group state from `enable` parameter
    - always update `lastFrameUpdate` of tooltip
    - improve build script
    SamuMazzi committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    4e10887 View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2024

  1. Configuration menu
    Copy the full SHA
    ef43b87 View commit details
    Browse the repository at this point in the history