Skip to content

Commit 5a6de1c

Browse files
committed
Add ImDrawList#addText with ImFont support
1 parent aa6a8b0 commit 5a6de1c

File tree

1 file changed

+32
-1
lines changed

1 file changed

+32
-1
lines changed

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

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,38 @@ public final class ImDrawList {
215215
IM_DRAW_LIST->AddText(ImVec2(posX, posY), col, textBegin, textEnd);
216216
*/
217217

218-
// TODO add text with font support
218+
public void addText(ImFont imFont, float fontSize, float posX, float posY, int col, String textBegin) {
219+
nAddText(imFont.ptr, fontSize, posX, posY, col, textBegin);
220+
}
221+
222+
private native void nAddText(long imFontPtr, float fontSize, float posX, float posY, int col, String textBegin); /*
223+
IM_DRAW_LIST->AddText((ImFont*)imFontPtr, fontSize, ImVec2(posX, posY), col, textBegin);
224+
*/
225+
226+
public void addText(ImFont imFont, float fontSize, float posX, float posY, int col, String textBegin, String textEnd) {
227+
nAddText(imFont.ptr, fontSize, posX, posY, col, textBegin, textEnd);
228+
}
229+
230+
private native void nAddText(long imFontPtr, float fontSize, float posX, float posY, int col, String textBegin, String textEnd); /*
231+
IM_DRAW_LIST->AddText((ImFont*)imFontPtr, fontSize, ImVec2(posX, posY), col, textBegin, textEnd);
232+
*/
233+
234+
public void addText(ImFont imFont, float fontSize, float posX, float posY, int col, String textBegin, String textEnd, float wrapWidth) {
235+
nAddText(imFont.ptr, fontSize, posX, posY, col, textBegin, textEnd, wrapWidth);
236+
}
237+
238+
private native void nAddText(long imFontPtr, float fontSize, float posX, float posY, int col, String textBegin, String textEnd, float wrapWidth); /*
239+
IM_DRAW_LIST->AddText((ImFont*)imFontPtr, fontSize, ImVec2(posX, posY), col, textBegin, textEnd, wrapWidth);
240+
*/
241+
242+
public void addText(ImFont imFont, float fontSize, float posX, float posY, int col, String textBegin, String textEnd, float wrapWidth, float cpuFineClipRectX, float cpuFineClipRectY, float cpuFineClipRectZ, float cpuFineClipRectV) {
243+
nAddText(imFont.ptr, fontSize, posX, posY, col, textBegin, textEnd, wrapWidth, cpuFineClipRectX, cpuFineClipRectY, cpuFineClipRectZ, cpuFineClipRectV);
244+
}
245+
246+
private native void nAddText(long imFontPtr, float fontSize, float posX, float posY, int col, String textBegin, String textEnd, float wrapWidth, float cpuFineClipRectX, float cpuFineClipRectY, float cpuFineClipRectZ, float cpuFineClipRectV); /*
247+
ImVec4 cpuFineClipRect = ImVec4(cpuFineClipRectX, cpuFineClipRectY, cpuFineClipRectZ, cpuFineClipRectV);
248+
IM_DRAW_LIST->AddText((ImFont*)imFontPtr, fontSize, ImVec2(posX, posY), col, textBegin, textEnd, wrapWidth, &cpuFineClipRect);
249+
*/
219250

220251
public native void addPolyline(ImVec2[] points, int numPoints, int col, boolean closed, float thickness); /*
221252
int points_num = env->GetArrayLength(points);

0 commit comments

Comments
 (0)