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
SpaiR
7190b51a72
chore(build): update to Gradle 8.12 and set CI to use JDK 17 ( #308 )
...
Upgraded the build system to Gradle 8.12 and updated the CI pipeline to use JDK 17 for improved compatibility and performance.
2024-12-27 15:00:01 +02:00
SpaiR
deb6b9bcfa
chore(api): remove ImGuiInputTextFlags usage from "raw" module
...
Cleaned up the code by eliminating the usage of ImGuiInputTextFlags from the "raw" module to streamline the API.
2024-12-27 14:00:58 +02:00
William Gray
92eba406ef
feat: add more internal widgets & flags ( #301 )
2024-12-08 19:00:12 +02:00
dependabot[bot]
2331878a43
build(deps): bump org.junit.jupiter:junit-jupiter-engine ( #292 )
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.11.2 to 5.11.3.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.11.2...r5.11.3 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-31 11:06:38 +02:00
dependabot[bot]
850f756f54
build(deps): bump org.junit.jupiter:junit-jupiter-api ( #291 )
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.11.2 to 5.11.3.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.11.2...r5.11.3 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-31 11:05:10 +02:00
SpaiR
5dab4bce55
feat(api): extend available API for imgui.internal.ImGui ( #294 )
...
Extending available API for imgui.internal.ImGui class.
This adds multiple new methods to manipulate windows, fonts etc.
2024-10-31 09:52:30 +02:00
dependabot[bot]
80ea84b345
build(deps): bump org.junit.jupiter:junit-jupiter-engine ( #286 )
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.10.3 to 5.11.2.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.3...r5.11.2 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-21 10:22:21 +03:00
dependabot[bot]
a915da4bc8
build(deps): bump org.junit.jupiter:junit-jupiter-api ( #285 )
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.10.3 to 5.11.2.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.3...r5.11.2 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-21 10:14:59 +03:00
Sebastian Erives
7be2a2942f
feat(api): update imnodes bindings to latest version ( #282 )
...
resolve #193
fixes #290
* fix(api): fix imnodes getNode___Pos & generate latest bindings
* fix(api): add optional arguments for ImNodes style methods
2024-10-21 09:53:00 +03:00
SpaiR
6a66fb761f
chore(api): tweak ImPlot api ( #273 )
...
- Added missing PlotBarGroups/PlotBarGroupsH methods
- Tweaked args for PlotBars/PlotBarsH
2024-09-23 10:28:27 +03: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
933a7c60b6
fix(api): missing bindings for TreePush and InputScalar ( #268 )
...
Add:
- TreePush with label arg
- InputScalar with dataType arg
2024-09-09 08:37:43 +03:00
SpaiR
c4c03bee9f
feat(api): use uintptr_t instead of intptr_t for pointers ( #265 )
...
Image methods now accept the `long` type instead of `int`,
as they are expected to work with pointers as well.
2024-08-29 16:54:43 +03:00
SpaiR
9518b1cec6
feat: ArgVariant annotation and plot methods with count parameter ( #264 )
...
* feat(generator): introduce ArgVariant annotation
New annotation provides an ability to generate methods definitions for different types and names.
* feat(api): expose count param for plot* methods
2024-08-26 11:33:55 +03:00
SpaiR
2086b7977b
feat(generator): create unwrapped methods for methods with dst arg ( #263 )
...
Also, minor fixes for binding declarations.
2024-08-21 14:31:05 +03:00
SpaiR
8f76b2083f
fix: return methods lost during integration of binding generation API
2024-08-19 14:34:02 +03:00
SpaiR
d252c145c5
feat(api): make FreeType a toggleable option which is disabled by default ( #254 )
...
* deps(build): bump FreeType from 2.12.1 to 2.13.3
* fix(generator): add missing ImGuiFreeTypeBuilderFlags
* feat(generator): add possibility to provide additional defines specifically for AST
* feat(api): make FreeType optional and disabled by default
FreeType renderer is still included in the final build.
Its usage is toggleable and DISABLED by default.
2024-08-18 10:45:27 +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
Emanuel Rabina and SpaiR
9ca6d97489
feat(api): add missing ImGui.TableGetSortSpecs API (and related objects) ( #246 )
...
* Add missing GetTableSortSpecs API
* Add binding for TreeNodeEx(const char* label, ImGuiTreeNodeFlags flags)
* Add generated files
* Wrap > character in code block
Co-authored-by: SpaiR <klimbetoo@gmail.com >
* Wrap > character in code block
Co-authored-by: SpaiR <klimbetoo@gmail.com >
---------
Co-authored-by: SpaiR <klimbetoo@gmail.com >
2024-08-12 16:35:02 +03:00
SpaiR
746c4887b8
build(generator): create AST tree with all includes and type definitions
2024-08-11 12:08:35 +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
dependabot[bot]
54812d48a3
build(deps): bump org.junit.jupiter:junit-jupiter-api ( #234 )
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.10.2 to 5.10.3.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.2...r5.10.3 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-07 10:05:41 +03:00
dependabot[bot]
f545026cc5
build(deps): bump org.junit.jupiter:junit-jupiter-engine ( #233 )
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.10.2 to 5.10.3.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.2...r5.10.3 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-07 09:57:12 +03:00
SpaiR
46c008eb02
build(binding): add universal macOS ARM64 dylib and static FreeType compilation
...
- Static FreeType linking flow for all OS
- Flow to build universal binaries for macOS (x86_64, aarch64)
- Simplified CI workflow by removing FreeType branches from the build matrix
Added 2 new scripts:
1. `buildSrc/scripts/vendor_freetype.sh`
2. `buildSrc/scripts/build.sh`
The first script prepares FreeType for usage in the build process.
The result of this script is used in the `GenerateLibs` task.
Other ways of building with FreeType are removed.
If it's impossible to build with FreeType, it is recommended to set `freetype=false`.
The second script aggregates commands to build native binaries.
It includes specific steps, such as creating a universal library for macOS and copying the result to the specific folder `/tmp/imgui/dst`.
Script 1 can be used for local builds. Script 2 is primarily intended for use in CI.
2024-08-07 09:41:09 +03:00
Rex Fleischer and @Tom-Ski @zly2006
be4734090e
build(binding): macOS ARM64 native binaries ( #223 )
...
Co-authored-by: @Tom-Ski @zly2006
2024-08-05 00:37:32 +03:00
dependabot[bot]
3d75eb3da0
build(deps): bump org.junit.jupiter:junit-jupiter-api ( #221 )
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.10.1 to 5.10.2.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.1...r5.10.2 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-13 07:55:58 +02:00
dependabot[bot]
3eaf77de88
build(deps): bump org.junit.jupiter:junit-jupiter-engine ( #222 )
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.10.1 to 5.10.2.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.1...r5.10.2 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-12 09:40:36 +02:00
Δelta and SpaiR
194381c44e
feat(api): add bindings for imgui-knobs ( #211 )
...
* feat(api): add bindings for imgui-knobs
Add bindings for the imgui-knobs extension
* Update example/src/main/java/Extra.java
Update styling
Co-authored-by: SpaiR <klimbetoo@gmail.com >
* Update example/src/main/java/Extra.java
Update styling
Co-authored-by: SpaiR <klimbetoo@gmail.com >
* Update .gitignore
Remove gradle.properties from git ignore
* Update styling
Update styling, field names set to UPPER_CASE, remove throwing exceptions from constructors, refactored flags to general style
---------
Co-authored-by: SpaiR <klimbetoo@gmail.com >
2024-01-09 10:34:10 +02:00
dependabot[bot]
b8f5001442
build(deps): bump org.junit.jupiter:junit-jupiter-engine ( #208 )
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.10.0 to 5.10.1.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.0...r5.10.1 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-10 12:51:09 +02:00
dependabot[bot]
b0add80135
build(deps): bump org.junit.jupiter:junit-jupiter-api ( #209 )
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.10.0 to 5.10.1.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.0...r5.10.1 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-10 12:47:04 +02:00
dependabot[bot]
4b69030f41
build(deps): bump org.junit.jupiter:junit-jupiter-api from 5.9.3 to 5.10.0 ( #191 )
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.9.3 to 5.10.0.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.9.3...r5.10.0 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-29 10:48:32 +03:00
dependabot[bot]
de88bdb27e
build(deps): bump org.junit.jupiter:junit-jupiter-engine from 5.9.3 to 5.10.0 ( #192 )
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.9.3 to 5.10.0.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.9.3...r5.10.0 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-29 10:35:40 +03:00
SpaiR
49fffaf02d
tweak(api): simplify version get from imgui-java.properties file ( #204 )
...
Instead of generating `properties` file we make it always.
To provide version value we replace specific token.
Also, small tweaks in code which gets the version
2023-09-29 10:02:21 +03:00
Kusaanko
c46830a3b7
fix(api): native loading by stopping creating tmpDir every time ( #197 )
...
* [API] Stop creating tmpDir every time
* [API] Add a whitespace after catch
* [API] Fix getting imgui-java version
* [API] Add final to properties variable
* [API] Make it brief to generate properties
* [API] Fix the path of imgui-java.properties
* [API] Change the order of loading native library
1.imgui.library.path
2.java.library.path
3.extract from resources
* [API] Remove debugging codes
* [API] Move extraction code before it is loaded
2023-09-18 09:19:01 +03:00
Kusaanko
64416f1168
fix: glyph range size ( #196 )
...
* [API] Fix glyph array size
* [API] Fix macro multiple lines
* [API] Fix variable to use in ImFontAtlas
* [API] Fix counting of size in ImFontAtlas
2023-08-28 14:49:11 +03:00
dependabot[bot]
e1737228e6
up: bump org.junit.jupiter:junit-jupiter-engine from 5.9.2 to 5.9.3 ( #180 )
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.9.2 to 5.9.3.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.9.2...r5.9.3 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-19 21:58:53 +03:00
dependabot[bot]
ed746f3168
up: bump org.junit.jupiter:junit-jupiter-api from 5.9.2 to 5.9.3 ( #179 )
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.9.2 to 5.9.3.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.9.2...r5.9.3 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-19 21:43:16 +03:00
dependabot[bot]
bad058853e
[Build] Bump org.junit.jupiter:junit-jupiter-api from 5.5.2 to 5.9.2 ( #170 )
...
Bumps [org.junit.jupiter:junit-jupiter-api](https://github.com/junit-team/junit5 ) from 5.5.2 to 5.9.2.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.5.2...r5.9.2 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-api
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-14 09:49:21 +02:00
dependabot[bot]
b528cdcf2f
[Build] Bump org.junit.jupiter:junit-jupiter-engine from 5.5.2 to 5.9.2 ( #169 )
...
Bumps [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit5 ) from 5.5.2 to 5.9.2.
- [Release notes](https://github.com/junit-team/junit5/releases )
- [Commits](https://github.com/junit-team/junit5/compare/r5.5.2...r5.9.2 )
---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter-engine
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-14 09:48:06 +02:00
Bruno Pinto Jácome
70442b64d5
[API] Adding missing ImNodes bindings ( #167 )
...
* added missing ImNodes bindings
* add missing binding and fix Style Vars in ImNodes
2023-03-09 08:57:31 +02:00
SpaiR
4a5c587ffd
[API] Add ability to set inputBuffer in ImGuiTextFilter
...
Useful to have a custom inputText field, but to filter using ImGuiTextFilter
resolves #160
2023-03-02 11:44:23 +02:00
SpaiR
bf92f04c21
[API] Fix inputText with resizable ImString crashes if the ImGuiInputTextCallback is null
...
fixes #158
2023-03-01 11:01:09 +02:00
SpaiR
d8f8f41a76
[API] Make classes from imgui.type which are represent numbers to extend Number class
...
- ImDouble
- ImFloat
- ImInt
- ImLong
- ImShort
2023-02-28 19:08:25 +02:00
SpaiR
25fc8bae8f
[API] Make all imgui.type classes to implement Comparable<> interface
2023-02-28 19:02:41 +02:00
Kirill Boginsky and kirill-boginskiy
e9f1b72043
[API] Added inputTextWithHint with ability to use callback ( #159 )
...
Co-authored-by: kirill-boginskiy <kirill.boginskiy@vizor-games.com >
2023-02-28 12:52:23 +02:00
墨恒 and SpaiR
986aa532ff
[API] Added callback binding for InputText ( #156 )
...
* Added callback binding for InputText
* Add JavaDoc
* Change
* Add Javadoc
* Fix Import
* Teaks and improvements
- Extended example;
- Added input text callback ImGuiInputTextFlags#CallbackEdit;
- Minor code improvements.
---------
Co-authored-by: SpaiR <klimbetoo@gmail.com >
2023-02-07 13:13:02 +02:00
Moulberry
667d6108b8
[API] Fix nHasDragDropPayload SIGSEGV when payload doesn't exist ( #155 )
...
`getDragDropPayload()` functions should simply return null when
the payload doesn't exist.
Currently, DearImGui will return NULL from `ImGui::GetDragDropPayload()`
when the payload does not exist. This causes a null dereference
since the nHasDragDropPayload function performs no NULL check
2023-02-03 19:11:47 +02:00
virusbear
c71ed6f198
[API] Add missing ImNodes::EditorContextGetPanning ( #152 )
...
* Add editorContextGetPanning to ImNodes binding
* make editorContextGetPanning call by reference
* Fix typo
2022-12-26 12:58:54 +02:00