Skip to content

Commit b84c98c

Browse files
committed
Update to 1.90
1 parent 0c85846 commit b84c98c

File tree

128 files changed

+1164
-1372
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

128 files changed

+1164
-1372
lines changed

imgui-binding/src/generated/java/imgui/ImDrawData.java

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,6 @@
22

33
import imgui.binding.ImGuiStruct;
44

5-
6-
7-
85
import java.nio.ByteBuffer;
96
import java.nio.ByteOrder;
107

@@ -16,7 +13,6 @@
1613
* BINDING NOTICE: Since it's impossible to do a 1:1 mapping with JNI, current class provides "getCmdList*()" methods.
1714
* Those are used to get the data needed to do a rendering.
1815
*/
19-
2016
public final class ImDrawData extends ImGuiStruct {
2117
private static final int RESIZE_FACTOR = 5_000;
2218
private static ByteBuffer dataBuffer = ByteBuffer.allocateDirect(25_000).order(ByteOrder.nativeOrder());
@@ -148,7 +144,7 @@ public ByteBuffer getCmdListVtxBufferData(final int cmdListIdx) {
148144

149145
///////// End of Render Methods
150146

151-
/**
147+
/**
152148
* Only valid after Render() is called and before the next NewFrame() is called.
153149
*/
154150
public boolean getValid() {
@@ -159,7 +155,7 @@ public boolean getValid() {
159155
return THIS->Valid;
160156
*/
161157

162-
/**
158+
/**
163159
* Number of ImDrawList* to render
164160
*/
165161
public int getCmdListsCount() {
@@ -170,7 +166,7 @@ public int getCmdListsCount() {
170166
return THIS->CmdListsCount;
171167
*/
172168

173-
/**
169+
/**
174170
* For convenience, sum of all ImDrawList's IdxBuffer.Size
175171
*/
176172
public int getTotalIdxCount() {
@@ -181,7 +177,7 @@ public int getTotalIdxCount() {
181177
return THIS->TotalIdxCount;
182178
*/
183179

184-
/**
180+
/**
185181
* For convenience, sum of all ImDrawList's VtxBuffer.Size
186182
*/
187183
public int getTotalVtxCount() {
@@ -192,7 +188,7 @@ public int getTotalVtxCount() {
192188
return THIS->TotalVtxCount;
193189
*/
194190

195-
/**
191+
/**
196192
* Upper-left position of the viewport to render (== upper-left of the orthogonal projection matrix to use)
197193
*/
198194
public ImVec2 getDisplayPos() {
@@ -234,7 +230,7 @@ public void getDisplayPos(final ImVec2 dst) {
234230
return THIS->DisplayPos.y;
235231
*/
236232

237-
/**
233+
/**
238234
* Size of the viewport to render (== io.DisplaySize for the main viewport)
239235
* (DisplayPos + DisplaySize == lower-right of the orthogonal projection matrix to use)
240236
*/
@@ -280,7 +276,7 @@ public void getDisplaySize(final ImVec2 dst) {
280276
return THIS->DisplaySize.y;
281277
*/
282278

283-
/**
279+
/**
284280
* Amount of pixels for each unit of DisplaySize. Based on io.DisplayFramebufferScale. Generally (1,1) on normal display, (2,2) on OSX with Retina display.
285281
*/
286282
public ImVec2 getFramebufferScale() {
@@ -322,7 +318,7 @@ public void getFramebufferScale(final ImVec2 dst) {
322318
return THIS->FramebufferScale.y;
323319
*/
324320

325-
/**
321+
/**
326322
* Viewport carrying the ImDrawData instance, might be of use to the renderer (generally not).
327323
*/
328324
public ImGuiViewport getOwnerViewport() {
@@ -343,7 +339,7 @@ public void clear() {
343339
THIS->Clear();
344340
*/
345341

346-
/**
342+
/**
347343
* Helper to add an external draw list into an existing ImDrawData.
348344
*/
349345
public void addDrawList(final ImDrawList drawList) {
@@ -354,7 +350,7 @@ public void addDrawList(final ImDrawList drawList) {
354350
THIS->AddDrawList(reinterpret_cast<ImDrawList*>(drawList));
355351
*/
356352

357-
/**
353+
/**
358354
* Helper to convert all buffers from indexed to non-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources.
359355
* Always prefer indexed rendering!
360356
*/
@@ -366,7 +362,7 @@ public void deIndexAllBuffers() {
366362
THIS->DeIndexAllBuffers();
367363
*/
368364

369-
/**
365+
/**
370366
* Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than Dear ImGui expects,
371367
* or if there is a difference between your window resolution and framebuffer resolution.
372368
*/

imgui-binding/src/generated/java/imgui/ImDrawList.java

Lines changed: 150 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,6 @@
22

33
import imgui.binding.ImGuiStruct;
44

5-
6-
7-
8-
9-
105
/**
116
* Draw command list
127
* This is the low-level list of polygons that ImGui:: functions are filling. At the end of the frame,
@@ -18,7 +13,6 @@
1813
* but you are totally free to apply whatever transformation matrix to want to the data (if you apply such transformation you'll want to apply it to ClipRect as well)
1914
* Important: Primitives are always added to the list and not culled (culling is done at higher-level by ImGui:: functions), if you use this API a lot consider coarse culling your drawn objects.
2015
*/
21-
2216
public final class ImDrawList extends ImGuiStruct {
2317
public ImDrawList(final long ptr) {
2418
super(ptr);
@@ -29,7 +23,7 @@ public ImDrawList(final long ptr) {
2923
#define THIS ((ImDrawList*)STRUCT_PTR)
3024
*/
3125

32-
/**
26+
/**
3327
* Flags, you may poke into these to adjust anti-aliasing settings per-primitive.
3428
*/
3529
public int getFlags() {
@@ -72,7 +66,7 @@ public boolean hasFlags(final int flags) {
7266
THIS->Flags = value;
7367
*/
7468

75-
/**
69+
/**
7670
* Render-level scissoring.
7771
* This is passed down to your render function but not used for CPU-side coarse clipping.
7872
* Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling)
@@ -612,6 +606,110 @@ public void addNgonFilled(final float centerX, final float centerY, final float
612606
THIS->AddNgonFilled(center, radius, col, num_segments);
613607
*/
614608

609+
public void addEllipse(final ImVec2 center, final float radius_x, final float radius_y, final int col) {
610+
nAddEllipse(center.x, center.y, radius_x, radius_y, col);
611+
}
612+
613+
public void addEllipse(final float centerX, final float centerY, final float radius_x, final float radius_y, final int col) {
614+
nAddEllipse(centerX, centerY, radius_x, radius_y, col);
615+
}
616+
617+
public void addEllipse(final ImVec2 center, final float radius_x, final float radius_y, final int col, final float rot) {
618+
nAddEllipse(center.x, center.y, radius_x, radius_y, col, rot);
619+
}
620+
621+
public void addEllipse(final float centerX, final float centerY, final float radius_x, final float radius_y, final int col, final float rot) {
622+
nAddEllipse(centerX, centerY, radius_x, radius_y, col, rot);
623+
}
624+
625+
public void addEllipse(final ImVec2 center, final float radius_x, final float radius_y, final int col, final float rot, final int num_segments) {
626+
nAddEllipse(center.x, center.y, radius_x, radius_y, col, rot, num_segments);
627+
}
628+
629+
public void addEllipse(final float centerX, final float centerY, final float radius_x, final float radius_y, final int col, final float rot, final int num_segments) {
630+
nAddEllipse(centerX, centerY, radius_x, radius_y, col, rot, num_segments);
631+
}
632+
633+
public void addEllipse(final ImVec2 center, final float radius_x, final float radius_y, final int col, final float rot, final int num_segments, final float thickness) {
634+
nAddEllipse(center.x, center.y, radius_x, radius_y, col, rot, num_segments, thickness);
635+
}
636+
637+
public void addEllipse(final float centerX, final float centerY, final float radius_x, final float radius_y, final int col, final float rot, final int num_segments, final float thickness) {
638+
nAddEllipse(centerX, centerY, radius_x, radius_y, col, rot, num_segments, thickness);
639+
}
640+
641+
private native void nAddEllipse(float centerX, float centerY, float radius_x, float radius_y, int col); /*MANUAL
642+
ImVec2 center = ImVec2(centerX, centerY);
643+
THIS->AddEllipse(center, radius_x, radius_y, col);
644+
*/
645+
646+
private native void nAddEllipse(float centerX, float centerY, float radius_x, float radius_y, int col, float rot); /*MANUAL
647+
ImVec2 center = ImVec2(centerX, centerY);
648+
THIS->AddEllipse(center, radius_x, radius_y, col, rot);
649+
*/
650+
651+
private native void nAddEllipse(float centerX, float centerY, float radius_x, float radius_y, int col, float rot, int num_segments); /*MANUAL
652+
ImVec2 center = ImVec2(centerX, centerY);
653+
THIS->AddEllipse(center, radius_x, radius_y, col, rot, num_segments);
654+
*/
655+
656+
private native void nAddEllipse(float centerX, float centerY, float radius_x, float radius_y, int col, float rot, int num_segments, float thickness); /*MANUAL
657+
ImVec2 center = ImVec2(centerX, centerY);
658+
THIS->AddEllipse(center, radius_x, radius_y, col, rot, num_segments, thickness);
659+
*/
660+
661+
public void addEllipseFilled(final ImVec2 center, final float radius_x, final float radius_y, final int col) {
662+
nAddEllipseFilled(center.x, center.y, radius_x, radius_y, col);
663+
}
664+
665+
public void addEllipseFilled(final float centerX, final float centerY, final float radius_x, final float radius_y, final int col) {
666+
nAddEllipseFilled(centerX, centerY, radius_x, radius_y, col);
667+
}
668+
669+
public void addEllipseFilled(final ImVec2 center, final float radius_x, final float radius_y, final int col, final float rot) {
670+
nAddEllipseFilled(center.x, center.y, radius_x, radius_y, col, rot);
671+
}
672+
673+
public void addEllipseFilled(final float centerX, final float centerY, final float radius_x, final float radius_y, final int col, final float rot) {
674+
nAddEllipseFilled(centerX, centerY, radius_x, radius_y, col, rot);
675+
}
676+
677+
public void addEllipseFilled(final ImVec2 center, final float radius_x, final float radius_y, final int col, final float rot, final int num_segments) {
678+
nAddEllipseFilled(center.x, center.y, radius_x, radius_y, col, rot, num_segments);
679+
}
680+
681+
public void addEllipseFilled(final float centerX, final float centerY, final float radius_x, final float radius_y, final int col, final float rot, final int num_segments) {
682+
nAddEllipseFilled(centerX, centerY, radius_x, radius_y, col, rot, num_segments);
683+
}
684+
685+
public void addEllipseFilled(final ImVec2 center, final float radius_x, final float radius_y, final int col, final float rot, final int num_segments, final float thickness) {
686+
nAddEllipseFilled(center.x, center.y, radius_x, radius_y, col, rot, num_segments, thickness);
687+
}
688+
689+
public void addEllipseFilled(final float centerX, final float centerY, final float radius_x, final float radius_y, final int col, final float rot, final int num_segments, final float thickness) {
690+
nAddEllipseFilled(centerX, centerY, radius_x, radius_y, col, rot, num_segments, thickness);
691+
}
692+
693+
private native void nAddEllipseFilled(float centerX, float centerY, float radius_x, float radius_y, int col); /*MANUAL
694+
ImVec2 center = ImVec2(centerX, centerY);
695+
THIS->AddEllipseFilled(center, radius_x, radius_y, col);
696+
*/
697+
698+
private native void nAddEllipseFilled(float centerX, float centerY, float radius_x, float radius_y, int col, float rot); /*MANUAL
699+
ImVec2 center = ImVec2(centerX, centerY);
700+
THIS->AddEllipseFilled(center, radius_x, radius_y, col, rot);
701+
*/
702+
703+
private native void nAddEllipseFilled(float centerX, float centerY, float radius_x, float radius_y, int col, float rot, int num_segments); /*MANUAL
704+
ImVec2 center = ImVec2(centerX, centerY);
705+
THIS->AddEllipseFilled(center, radius_x, radius_y, col, rot, num_segments);
706+
*/
707+
708+
private native void nAddEllipseFilled(float centerX, float centerY, float radius_x, float radius_y, int col, float rot, int num_segments, float thickness); /*MANUAL
709+
ImVec2 center = ImVec2(centerX, centerY);
710+
THIS->AddEllipseFilled(center, radius_x, radius_y, col, rot, num_segments, thickness);
711+
*/
712+
615713
public void addText(final ImVec2 pos, final int col, final String textBegin) {
616714
nAddText(pos.x, pos.y, col, textBegin);
617715
}
@@ -793,7 +891,7 @@ public void addConvexPolyFilled(final ImVec2[] points, final int numPoints, fina
793891
THIS->AddConvexPolyFilled(points, numPoints, col);
794892
*/
795893

796-
/**
894+
/**
797895
* Cubic Bezier (4 control points)
798896
*/
799897
public void addBezierCubic(final ImVec2 p1, final ImVec2 p2, final ImVec2 p3, final ImVec2 p4, final int col, final float thickness) {
@@ -837,7 +935,7 @@ public void addBezierCubic(final float p1X, final float p1Y, final float p2X, fi
837935
THIS->AddBezierCubic(p1, p2, p3, p4, col, thickness, numSegments);
838936
*/
839937

840-
/**
938+
/**
841939
* Quadratic Bezier (3 control points)
842940
*/
843941
public void addBezierQuadratic(final ImVec2 p1, final ImVec2 p2, final ImVec2 p3, final int col, final float thickness) {
@@ -1124,7 +1222,7 @@ public void pathLineToMergeDuplicate(final float posX, final float posY) {
11241222
THIS->PathLineToMergeDuplicate(pos);
11251223
*/
11261224

1127-
/**
1225+
/**
11281226
* Note: Anti-aliased filling requires points to be in clockwise order.
11291227
*/
11301228
public void pathFillConvex(final int col) {
@@ -1193,7 +1291,7 @@ public void pathArcTo(final float centerX, final float centerY, final float radi
11931291
THIS->PathArcTo(center, radius, aMin, aMax, numSegments);
11941292
*/
11951293

1196-
/**
1294+
/**
11971295
* Use precomputed angles for a 12 steps circle
11981296
*/
11991297
public void pathArcToFast(final ImVec2 center, final float radius, final int aMinOf12, final int aMaxOf12) {
@@ -1212,7 +1310,45 @@ public void pathArcToFast(final float centerX, final float centerY, final float
12121310
THIS->PathArcToFast(center, radius, aMinOf12, aMaxOf12);
12131311
*/
12141312

1215-
/**
1313+
/**
1314+
* Ellipse
1315+
*/
1316+
public void pathEllipticalArcTo(final ImVec2 center, final float radius_x, final float radius_y, final float rot, final float a_min, final float a_max) {
1317+
nPathEllipticalArcTo(center.x, center.y, radius_x, radius_y, rot, a_min, a_max);
1318+
}
1319+
1320+
/**
1321+
* Ellipse
1322+
*/
1323+
public void pathEllipticalArcTo(final float centerX, final float centerY, final float radius_x, final float radius_y, final float rot, final float a_min, final float a_max) {
1324+
nPathEllipticalArcTo(centerX, centerY, radius_x, radius_y, rot, a_min, a_max);
1325+
}
1326+
1327+
/**
1328+
* Ellipse
1329+
*/
1330+
public void pathEllipticalArcTo(final ImVec2 center, final float radius_x, final float radius_y, final float rot, final float a_min, final float a_max, final int num_segments) {
1331+
nPathEllipticalArcTo(center.x, center.y, radius_x, radius_y, rot, a_min, a_max, num_segments);
1332+
}
1333+
1334+
/**
1335+
* Ellipse
1336+
*/
1337+
public void pathEllipticalArcTo(final float centerX, final float centerY, final float radius_x, final float radius_y, final float rot, final float a_min, final float a_max, final int num_segments) {
1338+
nPathEllipticalArcTo(centerX, centerY, radius_x, radius_y, rot, a_min, a_max, num_segments);
1339+
}
1340+
1341+
private native void nPathEllipticalArcTo(float centerX, float centerY, float radius_x, float radius_y, float rot, float a_min, float a_max); /*MANUAL
1342+
ImVec2 center = ImVec2(centerX, centerY);
1343+
THIS->PathEllipticalArcTo(center, radius_x, radius_y, rot, a_min, a_max);
1344+
*/
1345+
1346+
private native void nPathEllipticalArcTo(float centerX, float centerY, float radius_x, float radius_y, float rot, float a_min, float a_max, int num_segments); /*MANUAL
1347+
ImVec2 center = ImVec2(centerX, centerY);
1348+
THIS->PathEllipticalArcTo(center, radius_x, radius_y, rot, a_min, a_max, num_segments);
1349+
*/
1350+
1351+
/**
12161352
* Cubic Bezier (4 control points)
12171353
*/
12181354
public void pathBezierCubicCurveTo(final ImVec2 p2, final ImVec2 p3, final ImVec2 p4) {
@@ -1254,7 +1390,7 @@ public void pathBezierCubicCurveTo(final float p2X, final float p2Y, final float
12541390
THIS->PathBezierCubicCurveTo(p2, p3, p4, numSegments);
12551391
*/
12561392

1257-
/**
1393+
/**
12581394
* Quadratic Bezier (3 control points)
12591395
*/
12601396
public void pathBezierQuadraticCurveTo(final ImVec2 p2, final ImVec2 p3) {

0 commit comments

Comments
 (0)