104 Commits
Author SHA1 Message Date
SpaiR 634e28b76a feat(api): bump Dear ImGui from 1.89.0 to 1.90.9 2025-08-26 13:33:36 +03:00
Lyzev 0ce3d60ddb fix: enhance ImGuiImplGl3 OpenGL compatibility checks for sampler objects (#320) 2025-02-02 12:52:39 +02:00
SpaiR e70576f322 feat(api): bump Dear ImGui from 1.88 to 1.89.9
resolves #134
resolves #135
resolves #145
resolves #220
resolves #310

- Bump imgui-node-editor to the latest coomit
- Bump implot from 0.13 to 0.16
2025-01-29 15:24:43 +02:00
SpaiR 666d1112ab feat(api): bump Dear ImGui from 1.87 to 1.88 (#309) 2024-12-27 18:02:10 +02:00
RK_01 4b0cf7bdfe chore: set all needed glPixelStore states for ImGuiImplGl3 (#298)
Fixes a crash when trying to upload the texture if the application changed one of the 3 added states before ImGui was initialized
2024-11-12 10:48:10 +02:00
SpaiR 36d9e3a13c fix(api): fix incorrect ImDrawData#getCmdListCmdBufferTextureId return type (#272)
Method must return long to be consistent with API in general.
2024-09-23 09:51:41 +03:00
SpaiR 47d97102f7 feat(api): Dear ImGui v1.87 + ImPlot v0.13 (#252)
* build(deps): bump Dear ImGui from 1.86 to 1.87

* build(deps): bump implot from 0.12 to 0.13

* feat(api,binding): adapt API to Dear ImGui v1.87

* feat(api,binding): adapt API to implot v0.13

* build: generate API for latest changes

* chore(binding): add missing super call for ImGuiStructDestroyable constructor

* chore: minor code style

* feat: adapt ImGuiImplGlfw to 1.87

* feat: adapt ImGuiImplGl3 to 1.87

* feat: adapt imgui-app module to 1.87

* fix: javadoc for updated imgui-binding

* fix: loosing data when setting struct field of char* type

Since we manually release chars, to store them in field we need to do a local copy.

* fix: invalid methods to check program linking in OpenGL

* chore: remove dedicated method to check GLFW version

* fix: add missing include
2024-08-16 15:35:42 +03:00
SpaiR 8a8cd22ed6 feat: introduce binding generator
A squash of hundreds of commits with a binding API generator.

The API generator works with a hybrid model:
1. We define methods and fields in the code.
2. Mark them with API annotations.
3. For specific use cases, we use the old approach with JNI generation comments.

There is also an API to generate an AST tree, which is saved to JSON.
This JSON can be used for full API generation by declaring only field/method names.
Currently, it is used to generate constants.

By eyeballing, 95% of the API has been converted to the new approach.
This is sufficient for the current moment. Only edge cases with specific API calls are left.

fix: ambiguous call for ImGui::GetColorU32

build: disable checkstyle for imgui-binding module

Since the module is heavily generated, checkstyle for it doesn't make sense.

build: make buildSrc to use JDK 11

build: make generateApi optional when compiling project

Initially generated module was not included to the project VCS.
Since it's now in the separate src folder, we don't need to call generator every time.
Only when a new generation result is required.
2024-08-08 14:46:23 +03:00
SpaiR 8a560ca439 [API] Fix dependency tree issue for imgui-java-app
resolve #75
resolve #127

Removed shadowing for `imgui-java-app.jar` which is published to Maven Central.
Shadow Jar now has a prefix `-all` - for those one who prefer to use raw jars instead dependencies in maven/gradle.
2022-12-14 12:01:50 +02:00
SpaiR 2957cb4b88 [Build] CI refactor (#149)
* [Build] CI refactor

* [Build] Fix GenerateLibs

* [Build] Up actions/checkout@v3

* [Build] Remove actions/gradle-build-action

* [Build] Uncomment publish/release jobs

* [Build] Delete obsolete jobs

* [Build] Add more info to the jar manifest

* [Build] Make checkout to fetch tags

* [Build] Return job to update binaries

* [Doc] Update README
2022-12-12 21:45:50 +02:00
Aiden LambertandSpaiR 62377c7b1d [API] Add callback freeing to ImGuiImplGlfw (#146)
Co-authored-by: SpaiR <klimbetoo@gmail.com>
2022-11-24 22:25:23 +02:00
Trevor Flynn 8c1ef209ad [API] Automatic Module Names (#105)
* Initial implementation of Automatic Module Names

* Fix using java 17 for publishing

* Roll build back to jdk 1.8

* Fix package name for imgui.lwjgl3 module

* Reworking package change to prevent breaking backwards compatability
2022-01-21 09:34:38 +02:00
Rémy Marquis 6f48a70564 [API] Fixed typo in lwjgl opengl3 backendRenderName string (#103) 2021-12-28 13:16:23 +02:00
SpaiR 0c37ac6dfd [API] Up GLFW impl 2021-12-27 11:30:16 +02:00
SpaiR 384e24a6c5 [API] Up OpenGL impl 2021-12-26 17:19:04 +02:00
Michał Kalinowski f47d44e9eb [API] Update lwjgl from 3.2.3 to 3.3.0 (#96)
In order to use imgui-java with the lwjgl 3.3.0 without errors there is need for an update.
To remove code duplication when changing dependencies,
an lwjgl.bom variable was added.
Fixes: #95

- update lwjgl version from 3.2.3 to 3.3.0 across all submodules
2021-12-15 10:33:55 +02:00
SpaiR 255f2e2286 [Build] Move sourceCompatibility option to the root build file 2021-08-29 10:29:54 +03:00
SpaiR b4df8d8611 [API] Dear ImGui v1.83 2021-05-29 13:09:00 +03:00
SpaiR ad24d65c86 [Build] QOL for build scripts 2021-04-10 14:24:52 +03:00
SpaiR e8678ef62c [API] Make GLFW to check availability of features 2021-03-30 11:38:54 +03:00
SpaiR d1e264a663 [API] Update ImGuiImplGl3
Add latest backend changes from Dear ImGui
2021-03-30 10:01:43 +03:00
SpaiR 3c0fb93ea0 [Build] Migrate from Bintray to Maven Central 2021-02-06 20:48:29 +02:00
SpaiR b3dda5986f [Build] Fix bintray task 2021-01-25 23:44:21 +02:00
SpaiR 39d1513e91 [Build] Cleanup gradle 2021-01-25 22:03:17 +02:00
SpaiR cf9e74b1d0 [Example] Migrate example to the new module 2021-01-24 22:20:37 +02:00
SpaiR 9e8f9ee025 [API] Move extensions into separate package 2021-01-23 16:28:41 +02:00
SpaiR bb472b9fe9 [Binding] Fix ImNodeEditor minor probs and add Style and Config struct 2021-01-23 16:04:57 +02:00
SpaiR 5beb896b50 [Binding] Fix ImNodes minor probs and add Style struct 2021-01-23 16:04:57 +02:00
Danil Dubrovksy a2d5ba0035 [Binding] Implemented java bindings for imnodes and imgui-node-editor.
Implemented simple graph editor to demonstrate both imnodes and imgui-node-editor usage.
2021-01-23 15:15:17 +02:00
SpaiR da176756fc [Build] Update native libraries build instruction 2020-10-17 13:27:17 +03:00
SpaiR 8ac8a0719b [API] Add API for Dear ImGui v1.79 2020-10-17 14:58:04 +03:00
SpaiR 13f01d6643 [Example] Remove usage of ImGuiFreeType 2020-10-17 14:23:42 +03:00
SpaiR 3d438a0029 [Example] Refactor example 2020-09-05 15:27:03 +03:00
SpaiR 4e564240ca [API] Add support for DockBuilder 2020-09-05 15:27:03 +03:00
SpaiR a97242eaeb [Build] Migrate to the new bintray repos 2020-08-31 00:00:10 +03:00
SpaiR 0b4aa25b1d [API] Add API for Dear ImGui v1.78 2020-08-30 23:04:23 +03:00
SpaiR c14d2a33a3 [Doc] Readme about multi-viewports 2020-08-30 23:04:05 +03:00
SpaiR 13c3a28f09 [API] Add ImGuiPlatformMonitor 2020-08-30 23:04:05 +03:00
SpaiR b065d004f7 [API] Simplify flags API 2020-08-30 21:51:04 +03:00
SpaiR 9e81399f1e [Example] Add NoTaskBarIcon config for viewports 2020-08-30 18:15:41 +03:00
SpaiR e9cfd62137 [WIP] Viewports backend, 2 2020-08-30 21:10:18 +03:00
SpaiR c1632cfd3e [WIP] Viewports backend 2020-08-30 19:05:25 +03:00
SpaiR e328d738ce [WIP] Viewports backend 2020-08-30 15:47:27 +03:00
SpaiR 54e2da3778 Fix viewport for retina displays 2020-08-21 12:41:49 +03:00
SpaiR 92a9d43876 Add shortcut methods to add/remove config/backend flags 2020-07-12 15:07:35 +03:00
SpaiR 258b9feeb6 Tweak ExampleUi 2020-07-11 19:05:55 +03:00
SpaiR dd94f21207 v1.77-0.16 2020-07-04 04:15:58 +03:00
SpaiR 54a2abb717 Cleanup example 2020-06-28 21:49:35 +03:00
SpaiR f5d5c18edb Tweak ImGuiImplGlfw 2020-06-28 21:28:40 +03:00
Ashley Bye 0b478fd337 Add port of GLFW backend and use in GLFW example (#13) 2020-06-28 17:11:42 +03:00