Skip to content

Commit 03640f4

Browse files
committed
Add overloads for #begin, #beginTabItem and #beginPopupModal methods
1 parent 5226bb4 commit 03640f4

File tree

2 files changed

+33
-2
lines changed

2 files changed

+33
-2
lines changed

imgui-binding/src/main/java/imgui/ImGui.java

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -236,10 +236,18 @@ public static boolean begin(String title, ImBool pOpen) {
236236
return nBegin(title, pOpen.data, 0);
237237
}
238238

239+
public static boolean begin(String title, int imGuiWindowFlags) {
240+
return nBegin(title, imGuiWindowFlags);
241+
}
242+
239243
public static boolean begin(String title, ImBool pOpen, int imGuiWindowFlags) {
240244
return nBegin(title, pOpen.data, imGuiWindowFlags);
241245
}
242246

247+
private static native boolean nBegin(String title, int imGuiWindowFlags); /*
248+
return ImGui::Begin(title, NULL, imGuiWindowFlags);
249+
*/
250+
243251
private static native boolean nBegin(String title, boolean[] pOpen, int imGuiWindowFlags); /*
244252
return ImGui::Begin(title, &pOpen[0], imGuiWindowFlags);
245253
*/
@@ -3196,7 +3204,7 @@ public static boolean collapsingHeader(String label, ImBool pOpen, int imGuiTree
31963204
}
31973205

31983206
private static native boolean nCollapsingHeader(String label, boolean[] pOpen, int imGuiTreeNodeFlags); /*
3199-
return ImGui::CollapsingHeader(label, pOpen, imGuiTreeNodeFlags);
3207+
return ImGui::CollapsingHeader(label, &pOpen[0], imGuiTreeNodeFlags);
32003208
*/
32013209

32023210
/**
@@ -3627,13 +3635,24 @@ public static boolean beginPopupModal(String name, ImBool pOpen) {
36273635
return nBeginPopupModal(name, pOpen.data, 0);
36283636
}
36293637

3638+
/**
3639+
* Modal dialog (regular window with title bar, block interactions behind the modal window, can't close the modal window by clicking outside)
3640+
*/
3641+
public static boolean beginPopupModal(String name, int imGuiWindowFlags) {
3642+
return nBeginPopupModal(name, imGuiWindowFlags);
3643+
}
3644+
36303645
/**
36313646
* Modal dialog (regular window with title bar, block interactions behind the modal window, can't close the modal window by clicking outside)
36323647
*/
36333648
public static boolean beginPopupModal(String name, ImBool pOpen, int imGuiWindowFlags) {
36343649
return nBeginPopupModal(name, pOpen.data, imGuiWindowFlags);
36353650
}
36363651

3652+
private static native boolean nBeginPopupModal(String name, int imGuiWindowFlags); /*
3653+
return ImGui::BeginPopupModal(name, NULL, imGuiWindowFlags);
3654+
*/
3655+
36373656
private static native boolean nBeginPopupModal(String name, boolean[] pOpen, int imGuiWindowFlags); /*
36383657
return ImGui::BeginPopupModal(name, &pOpen[0], imGuiWindowFlags);
36393658
*/
@@ -3801,13 +3820,24 @@ public static boolean beginTabItem(String label, ImBool pOpen) {
38013820
return nBeginTabItem(label, pOpen.data, 0);
38023821
}
38033822

3823+
/**
3824+
* Create a Tab. Returns true if the Tab is selected.
3825+
*/
3826+
public static boolean beginTabItem(String label, int imGuiTabBarFlags) {
3827+
return nBeginTabItem(label, imGuiTabBarFlags);
3828+
}
3829+
38043830
/**
38053831
* Create a Tab. Returns true if the Tab is selected.
38063832
*/
38073833
public static boolean beginTabItem(String label, ImBool pOpen, int imGuiTabBarFlags) {
38083834
return nBeginTabItem(label, pOpen.data, imGuiTabBarFlags);
38093835
}
38103836

3837+
private static native boolean nBeginTabItem(String label, int imGuiTabBarFlags); /*
3838+
return ImGui::BeginTabItem(label, NULL, imGuiTabBarFlags);
3839+
*/
3840+
38113841
private static native boolean nBeginTabItem(String label, boolean[] pOpen, int imGuiTabBarFlags); /*
38123842
return ImGui::BeginTabItem(label, &pOpen[0], imGuiTabBarFlags);
38133843
*/

imgui-lwjgl3/src/test/java/ImGuiGlfwExample.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import imgui.enums.ImGuiInputTextFlags;
1010
import imgui.enums.ImGuiKey;
1111
import imgui.enums.ImGuiMouseCursor;
12+
import imgui.enums.ImGuiWindowFlags;
1213
import imgui.gl3.ImGuiImplGl3;
1314
import org.lwjgl.glfw.GLFWErrorCallback;
1415
import org.lwjgl.glfw.GLFWVidMode;
@@ -272,7 +273,7 @@ private void showUi() {
272273
ImGui.setNextWindowSize(600, 300, ImGuiCond.Once);
273274
ImGui.setNextWindowPos(10, 10, ImGuiCond.Once);
274275

275-
ImGui.begin("Custom window"); // Start Custom window
276+
ImGui.begin("Custom window", ImGuiWindowFlags.NoDecoration); // Start Custom window
276277
ImGui.text("Hello from Java!");
277278

278279
ImGui.button("Drag me");

0 commit comments

Comments
 (0)