Skip to content

Commit

Permalink
v1.81.0
Browse files Browse the repository at this point in the history
  • Loading branch information
SpaiR committed Feb 20, 2021
1 parent d8338f5 commit abcdb46
Show file tree
Hide file tree
Showing 7 changed files with 13 additions and 13 deletions.
24 changes: 12 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ JNI based binding for [Dear ImGui](https://github.com/ocornut/imgui) with no dep
Read official [documentation](https://github.com/ocornut/imgui#usage) and [wiki](https://github.com/ocornut/imgui/wiki) to see how to work with Dear ImGui.
Almost everything from C++ could be done in Java in the same way.

Binding has an OpenGL renderer and a GLFW backend implementation, using a [LWJGL3](https://www.lwjgl.org/) library. Could be found in [imgui-lwjgl3](https://github.com/SpaiR/imgui-java/blob/v1.80-1.5.0/imgui-lwjgl3) module.<br>
Binding has an OpenGL renderer and a GLFW backend implementation, using a [LWJGL3](https://www.lwjgl.org/) library. Could be found in [imgui-lwjgl3](https://github.com/SpaiR/imgui-java/blob/v1.81.0/imgui-lwjgl3) module.<br>
They are recommended, yet optional to use. The advantage of Dear ImGui is a portability, so feel free to copy-paste classes or write your own implementations.<br>

Additionally, there is an [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.80-1.5.0/imgui-app) module, which provides **a high abstraction layer**.<br>
Additionally, there is an [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.81.0/imgui-app) module, which provides **a high abstraction layer**.<br>
It hides all low-level stuff under one class to extend, so you can build your GUI application instantly.

### Features
Expand All @@ -45,17 +45,17 @@ _Make sure you have installed Java 8 or higher._
You can try binding by yourself in three simple steps:

```
git clone --branch v1.80-1.5.0 https://github.com/SpaiR/imgui-java.git
git clone --branch v1.81.0 https://github.com/SpaiR/imgui-java.git
cd imgui-java
./gradlew :example:start
```

See [example](https://github.com/SpaiR/imgui-java/blob/v1.80-1.5.0/example) module to try other widgets in action.
See [example](https://github.com/SpaiR/imgui-java/blob/v1.81.0/example) module to try other widgets in action.

# How To Use

## Application
If you don't care about OpenGL or other low-level stuff, then you can use application layer from [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.80-1.5.0/imgui-app) module.<br>
If you don't care about OpenGL or other low-level stuff, then you can use application layer from [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.81.0/imgui-app) module.<br>
It is a **one jar solution**, which includes everything you need to build your user interface with Dear ImGui!<br>
At the same time, every life-cycle method of the application could be overridden, so you can extend class in the way you need.

Expand Down Expand Up @@ -94,7 +94,7 @@ repositories {
}
dependencies {
implementation "io.github.spair:imgui-java-app:1.80-1.5.0"
implementation "io.github.spair:imgui-java-app:1.81.0"
}
```
</details>
Expand All @@ -107,7 +107,7 @@ dependencies {
<dependency>
<groupId>io.github.spair</groupId>
<artifactId>imgui-java-app</artifactId>
<version>1.80-1.5.0</version>
<version>1.81.0</version>
</dependency>
</dependencies>
```
Expand All @@ -123,7 +123,7 @@ dependencies {

## Binding
Using binding without the wrapper requires to "attach" it to your application manually.
You can refer to [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.80-1.5.0/imgui-app) module and see how things are done there.
You can refer to [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.81.0/imgui-app) module and see how things are done there.

#### Dependencies
For simplicity, example of dependencies for Gradle and Maven only show how to add natives for Windows.<br>
Expand All @@ -139,7 +139,7 @@ repositories {
ext {
lwjglVersion = '3.2.3'
imguiVersion = '1.80-1.5.0'
imguiVersion = '1.81.0'
}
dependencies {
Expand All @@ -164,7 +164,7 @@ dependencies {
```
<properties>
<lwjgl.version>3.2.3</lwjgl.version>
<imgui.java.version>1.80-1.5.0</imgui.java.version>
<imgui.java.version>1.81.0</imgui.java.version>
</properties>
<dependencyManagement>
Expand Down Expand Up @@ -242,9 +242,9 @@ dependencies {
</details>

## Extensions
- [ImNodes](https://github.com/Nelarius/imnodes/tree/868dda60d5829aec9a736cec7ff6be1299d543c0) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.80-1.5.0/example/src/main/java/ExampleImNodes.java) <br>
- [ImNodes](https://github.com/Nelarius/imnodes/tree/868dda60d5829aec9a736cec7ff6be1299d543c0) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.81.0/example/src/main/java/ExampleImNodes.java) <br>
A small, dependency-free node editor for dear imgui. (A good choice for simple start.)
- [imgui-node-editor](https://github.com/thedmd/imgui-node-editor/tree/687a72f940c76cf5064e13fe55fa0408c18fcbe4) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.80-1.5.0/example/src/main/java/ExampleImGuiNodeEditor.java) <br>
- [imgui-node-editor](https://github.com/thedmd/imgui-node-editor/tree/687a72f940c76cf5064e13fe55fa0408c18fcbe4) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.81.0/example/src/main/java/ExampleImGuiNodeEditor.java) <br>
Node Editor using ImGui. (A bit more complex than ImNodes, but has more features.)

# Binding Notice
Expand Down
Binary file modified bin/imgui-java.dll
Binary file not shown.
Binary file modified bin/imgui-java64.dll
Binary file not shown.
Binary file modified bin/libimgui-java.so
Binary file not shown.
Binary file modified bin/libimgui-java64.dylib
Binary file not shown.
Binary file modified bin/libimgui-java64.so
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1 +1 @@
version=1.80-1.5.0
version=1.81.0

0 comments on commit abcdb46

Please sign in to comment.