Natively mapped ImGuiStyle class
This commit is contained in:
1 parent
1833ab5fe8
commit
7ddf242ab4
2 files changed
+385
-209
No files matched your search
@@ -19,13 +19,13 @@ public final class ImGui {
|
||||
|
||||
private static final ImDrawData DRAW_DATA;
|
||||
private static final ImGuiIO IMGUI_IO;
|
||||
private static final ImGuiStyle IMGUI_STYLE;
|
||||
|
||||
private static final ImDrawList IM_DRAW_LIST_WINDOW = new ImDrawList(ImDrawList.TYPE_WINDOW);
|
||||
private static final ImDrawList IM_DRAW_LIST_BACKGROUND = new ImDrawList(ImDrawList.TYPE_BACKGROUND);
|
||||
private static final ImDrawList IM_DRAW_LIST_FOREGROUND = new ImDrawList(ImDrawList.TYPE_FOREGROUND);
|
||||
|
||||
private static ImFont font;
|
||||
private static ImGuiStyle style;
|
||||
|
||||
static {
|
||||
final String libPath = System.getProperty(LIB_PATH_PROP);
|
||||
@@ -44,7 +44,6 @@ public final class ImGui {
|
||||
|
||||
DRAW_DATA = new ImDrawData(100_000, 100_000, 1000);
|
||||
IMGUI_IO = new ImGuiIO();
|
||||
IMGUI_STYLE = new ImGuiStyle();
|
||||
|
||||
nInitJni();
|
||||
ImDrawList.nInit();
|
||||
@@ -53,6 +52,7 @@ public final class ImGui {
|
||||
ImFontConfig.nInit();
|
||||
ImFontGlyph.nInit();
|
||||
ImFont.nInit();
|
||||
ImGuiStyle.nInit();
|
||||
nInitInputTextData();
|
||||
}
|
||||
|
||||
@@ -150,9 +150,16 @@ public final class ImGui {
|
||||
* Access the Style structure (colors, sizes). Always use PushStyleCol(), PushStyleVar() to modify style mid-frame.
|
||||
*/
|
||||
public static ImGuiStyle getStyle() {
|
||||
return IMGUI_STYLE;
|
||||
if (style == null) {
|
||||
style = new ImGuiStyle(nGetStyle());
|
||||
}
|
||||
return style;
|
||||
}
|
||||
|
||||
private static native long nGetStyle(); /*
|
||||
return (long)(intptr_t)&ImGui::GetStyle();
|
||||
*/
|
||||
|
||||
/**
|
||||
* Start a new Dear ImGui frame, you can submit any command from this point until Render()/EndFrame().
|
||||
*/
|
||||
@@ -248,6 +255,14 @@ public final class ImGui {
|
||||
ImGui::ShowStyleEditor();
|
||||
*/
|
||||
|
||||
public static void showStyleEditor(ImGuiStyle ref) {
|
||||
nShowStyleEditor(ref.ptr);
|
||||
}
|
||||
|
||||
private static native void nShowStyleEditor(long ref); /*
|
||||
ImGui::ShowStyleEditor((ImGuiStyle*)ref);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Add style selector block (not a window), essentially a combo listing the default styles.
|
||||
*/
|
||||
@@ -285,6 +300,14 @@ public final class ImGui {
|
||||
ImGui::StyleColorsDark();
|
||||
*/
|
||||
|
||||
public static void styleColorsDark(ImGuiStyle ref) {
|
||||
nStyleColorsDark(ref.ptr);
|
||||
}
|
||||
|
||||
private static native void nStyleColorsDark(long ref); /*
|
||||
ImGui::StyleColorsDark((ImGuiStyle*)ref);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Classic imgui style
|
||||
*/
|
||||
@@ -292,6 +315,14 @@ public final class ImGui {
|
||||
ImGui::StyleColorsClassic();
|
||||
*/
|
||||
|
||||
public static void styleColorsClassic(ImGuiStyle ref) {
|
||||
nStyleColorsClassic(ref.ptr);
|
||||
}
|
||||
|
||||
private static native void nStyleColorsClassic(long ref); /*
|
||||
ImGui::StyleColorsClassic((ImGuiStyle*)ref);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Best used with borders and a custom, thicker font
|
||||
*/
|
||||
@@ -299,6 +330,14 @@ public final class ImGui {
|
||||
ImGui::StyleColorsLight();
|
||||
*/
|
||||
|
||||
public static void styleColorsLight(ImGuiStyle ref) {
|
||||
nStyleColorsLight(ref.ptr);
|
||||
}
|
||||
|
||||
private static native void nStyleColorsLight(long ref); /*
|
||||
ImGui::StyleColorsLight((ImGuiStyle*)ref);
|
||||
*/
|
||||
|
||||
// Windows
|
||||
// - Begin() = push window to the stack and start appending to it. End() = pop window from the stack.
|
||||
// - You may append multiple times to the same window during the same frame.
|
||||
|
||||
@@ -4,406 +4,543 @@ package imgui;
|
||||
* You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame().
|
||||
* During the frame, use ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values,
|
||||
* and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors.
|
||||
* <p>
|
||||
* BINDING NOTICE: This is not a fully featured representation of ImGuiStyle struct from C++.
|
||||
* Mostly it's a stub which communicates with default ImGuiStyle used by ImGuiIO.
|
||||
* Still can be used to make your interface look different, since all of the fields from the original header file are represented here.
|
||||
*/
|
||||
public final class ImGuiStyle {
|
||||
ImGuiStyle() {
|
||||
public final class ImGuiStyle implements ImDestroyable {
|
||||
final long ptr;
|
||||
|
||||
/**
|
||||
* This class will create a native structure.
|
||||
* Call {@link #destroy()} method to manually free used memory.
|
||||
*/
|
||||
public ImGuiStyle() {
|
||||
ImGui.touch();
|
||||
ptr = nCreate();
|
||||
}
|
||||
|
||||
ImGuiStyle(final long ptr) {
|
||||
this.ptr = ptr;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void destroy() {
|
||||
nDestroy(ptr);
|
||||
}
|
||||
|
||||
/*JNI
|
||||
#include <imgui.h>
|
||||
#include <stdint.h>
|
||||
#include "jni_common.h"
|
||||
|
||||
jfieldID imGuiStylePtrID;
|
||||
|
||||
#define IMGUI_STYLE ((ImGuiStyle*)env->GetLongField(object, imGuiStylePtrID))
|
||||
*/
|
||||
|
||||
// Alpha
|
||||
// Global alpha applies to everything in Dear ImGui.
|
||||
//
|
||||
static native void nInit(); /*
|
||||
jclass jImGuiStyleClass = env->FindClass("imgui/ImGuiStyle");
|
||||
imGuiStylePtrID = env->GetFieldID(jImGuiStyleClass, "ptr", "J");
|
||||
*/
|
||||
|
||||
private native long nCreate(); /*
|
||||
ImGuiStyle* imGuiStyle = new ImGuiStyle();
|
||||
return (long)(intptr_t)imGuiStyle;
|
||||
*/
|
||||
|
||||
private native void nDestroy(long ptr); /*
|
||||
delete (ImGuiStyle*)ptr;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Global alpha applies to everything in Dear ImGui.
|
||||
*/
|
||||
public native float getAlpha(); /*
|
||||
return ImGui::GetStyle().Alpha;
|
||||
return IMGUI_STYLE->Alpha;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Global alpha applies to everything in Dear ImGui.
|
||||
*/
|
||||
public native void setAlpha(float alpha); /*
|
||||
ImGui::GetStyle().Alpha = alpha;
|
||||
IMGUI_STYLE->Alpha = alpha;
|
||||
*/
|
||||
|
||||
// WindowPadding
|
||||
// Padding within a window.
|
||||
//
|
||||
/**
|
||||
* Padding within a window.
|
||||
*/
|
||||
public native void getWindowPadding(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().WindowPadding, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->WindowPadding, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Padding within a window.
|
||||
*/
|
||||
public native void setWindowPadding(float x, float y); /*
|
||||
ImGui::GetStyle().WindowPadding.x = x;
|
||||
ImGui::GetStyle().WindowPadding.y = y;
|
||||
IMGUI_STYLE->WindowPadding.x = x;
|
||||
IMGUI_STYLE->WindowPadding.y = y;
|
||||
*/
|
||||
|
||||
// WindowRounding
|
||||
// Radius of window corners rounding. Set to 0.0f to have rectangular windows.
|
||||
//
|
||||
/**
|
||||
* Radius of window corners rounding. Set to 0.0f to have rectangular windows.
|
||||
*/
|
||||
public native float getWindowRounding(); /*
|
||||
return ImGui::GetStyle().WindowRounding;
|
||||
return IMGUI_STYLE->WindowRounding;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Radius of window corners rounding. Set to 0.0f to have rectangular windows.
|
||||
*/
|
||||
public native void setWindowRounding(float windowRounding); /*
|
||||
ImGui::GetStyle().WindowRounding = windowRounding;
|
||||
IMGUI_STYLE->WindowRounding = windowRounding;
|
||||
*/
|
||||
|
||||
// WindowBorderSize
|
||||
// Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
//
|
||||
/**
|
||||
* Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
*/
|
||||
public native float getWindowBorderSize(); /*
|
||||
return ImGui::GetStyle().WindowBorderSize;
|
||||
return IMGUI_STYLE->WindowBorderSize;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
*/
|
||||
public native void setWindowBorderSize(float windowBorderSize); /*
|
||||
ImGui::GetStyle().WindowBorderSize = windowBorderSize;
|
||||
IMGUI_STYLE->WindowBorderSize = windowBorderSize;
|
||||
*/
|
||||
|
||||
// WindowMinSize
|
||||
// Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints().
|
||||
//
|
||||
/**
|
||||
* Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints().
|
||||
*/
|
||||
public native void getWindowMinSize(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().WindowMinSize, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->WindowMinSize, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints().
|
||||
*/
|
||||
public native void setWindowMinSize(float x, float y); /*
|
||||
ImGui::GetStyle().WindowMinSize.x = x;
|
||||
ImGui::GetStyle().WindowMinSize.y = y;
|
||||
IMGUI_STYLE->WindowMinSize.x = x;
|
||||
IMGUI_STYLE->WindowMinSize.y = y;
|
||||
*/
|
||||
|
||||
// WindowTitleAlign
|
||||
// Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered.
|
||||
//
|
||||
/**
|
||||
* Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered.
|
||||
*/
|
||||
public native void getWindowTitleAlign(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().WindowTitleAlign, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->WindowTitleAlign, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered.
|
||||
*/
|
||||
public native void setWindowTitleAlign(float x, float y); /*
|
||||
ImGui::GetStyle().WindowTitleAlign.x = x;
|
||||
ImGui::GetStyle().WindowTitleAlign.y = y;
|
||||
IMGUI_STYLE->WindowTitleAlign.x = x;
|
||||
IMGUI_STYLE->WindowTitleAlign.y = y;
|
||||
*/
|
||||
|
||||
// WindowMenuButtonPosition
|
||||
// Side of the collapsing/docking button in the title bar (None/Left/Right). Defaults to ImGuiDir_Left.
|
||||
//
|
||||
/**
|
||||
* Side of the collapsing/docking button in the title bar (None/Left/Right). Defaults to ImGuiDir_Left.
|
||||
*/
|
||||
public native int getWindowMenuButtonPosition(); /*
|
||||
return (int)ImGui::GetStyle().WindowMenuButtonPosition;
|
||||
return (int)IMGUI_STYLE->WindowMenuButtonPosition;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Side of the collapsing/docking button in the title bar (None/Left/Right). Defaults to ImGuiDir_Left.
|
||||
*/
|
||||
public native void setWindowMenuButtonPosition(int windowMenuButtonPosition); /*
|
||||
ImGui::GetStyle().WindowMenuButtonPosition = windowMenuButtonPosition;
|
||||
IMGUI_STYLE->WindowMenuButtonPosition = windowMenuButtonPosition;
|
||||
*/
|
||||
|
||||
// ChildRounding
|
||||
// Radius of child window corners rounding. Set to 0.0f to have rectangular windows.
|
||||
//
|
||||
/**
|
||||
* Radius of child window corners rounding. Set to 0.0f to have rectangular windows.
|
||||
*/
|
||||
public native float getChildRounding(); /*
|
||||
return ImGui::GetStyle().ChildRounding;
|
||||
return IMGUI_STYLE->ChildRounding;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Radius of child window corners rounding. Set to 0.0f to have rectangular windows.
|
||||
*/
|
||||
public native void setChildRounding(float childRounding); /*
|
||||
ImGui::GetStyle().ChildRounding = childRounding;
|
||||
IMGUI_STYLE->ChildRounding = childRounding;
|
||||
*/
|
||||
|
||||
// ChildBorderSize
|
||||
// Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
//
|
||||
/**
|
||||
* Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
*/
|
||||
public native float getChildBorderSize(); /*
|
||||
return ImGui::GetStyle().ChildBorderSize;
|
||||
return IMGUI_STYLE->ChildBorderSize;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
*/
|
||||
public native void setChildBorderSize(float childBorderSize); /*
|
||||
ImGui::GetStyle().ChildBorderSize = childBorderSize;
|
||||
IMGUI_STYLE->ChildBorderSize = childBorderSize;
|
||||
*/
|
||||
|
||||
// PopupRounding
|
||||
// Radius of popup window corners rounding. (Note that tooltip windows use WindowRounding)
|
||||
//
|
||||
/**
|
||||
* Radius of popup window corners rounding. (Note that tooltip windows use WindowRounding)
|
||||
*/
|
||||
public native float getPopupRounding(); /*
|
||||
return ImGui::GetStyle().PopupRounding;
|
||||
return IMGUI_STYLE->PopupRounding;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Radius of popup window corners rounding. (Note that tooltip windows use WindowRounding)
|
||||
*/
|
||||
public native void setPopupRounding(float popupRounding); /*
|
||||
ImGui::GetStyle().PopupRounding = popupRounding;
|
||||
IMGUI_STYLE->PopupRounding = popupRounding;
|
||||
*/
|
||||
|
||||
// PopupBorderSize
|
||||
// Thickness of border around popup/tooltip windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
//
|
||||
/**
|
||||
* Thickness of border around popup/tooltip windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
*/
|
||||
public native float getPopupBorderSize(); /*
|
||||
return ImGui::GetStyle().PopupBorderSize;
|
||||
return IMGUI_STYLE->PopupBorderSize;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Thickness of border around popup/tooltip windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
*/
|
||||
public native void setPopupBorderSize(float popupBorderSize); /*
|
||||
ImGui::GetStyle().PopupBorderSize = popupBorderSize;
|
||||
IMGUI_STYLE->PopupBorderSize = popupBorderSize;
|
||||
*/
|
||||
|
||||
// FramePadding
|
||||
// Padding within a framed rectangle (used by most widgets).
|
||||
//
|
||||
/**
|
||||
* Padding within a framed rectangle (used by most widgets).
|
||||
*/
|
||||
public native void getFramePadding(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().FramePadding, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->FramePadding, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Padding within a framed rectangle (used by most widgets).
|
||||
*/
|
||||
public native void setFramePadding(float x, float y); /*
|
||||
ImGui::GetStyle().FramePadding.x = x;
|
||||
ImGui::GetStyle().FramePadding.y = y;
|
||||
IMGUI_STYLE->FramePadding.x = x;
|
||||
IMGUI_STYLE->FramePadding.y = y;
|
||||
*/
|
||||
|
||||
// FrameRounding
|
||||
// Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets).
|
||||
//
|
||||
/**
|
||||
* Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets).
|
||||
*/
|
||||
public native float getFrameRounding(); /*
|
||||
return ImGui::GetStyle().FrameRounding;
|
||||
return IMGUI_STYLE->FrameRounding;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets).
|
||||
*/
|
||||
public native void setFrameRounding(float frameRounding); /*
|
||||
ImGui::GetStyle().FrameRounding = frameRounding;
|
||||
IMGUI_STYLE->FrameRounding = frameRounding;
|
||||
*/
|
||||
|
||||
// FrameBorderSize
|
||||
// Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
//
|
||||
/**
|
||||
* Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
*/
|
||||
public native float getFrameBorderSize(); /*
|
||||
return ImGui::GetStyle().FrameBorderSize;
|
||||
return IMGUI_STYLE->FrameBorderSize;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
|
||||
*/
|
||||
public native void setFrameBorderSize(float frameBorderSize); /*
|
||||
ImGui::GetStyle().FrameBorderSize = frameBorderSize;
|
||||
IMGUI_STYLE->FrameBorderSize = frameBorderSize;
|
||||
*/
|
||||
|
||||
// ItemSpacing
|
||||
// Horizontal and vertical spacing between widgets/lines.
|
||||
//
|
||||
/**
|
||||
* Horizontal and vertical spacing between widgets/lines.
|
||||
*/
|
||||
public native void getItemSpacing(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().ItemSpacing, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->ItemSpacing, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Horizontal and vertical spacing between widgets/lines.
|
||||
*/
|
||||
public native void setItemSpacing(float x, float y); /*
|
||||
ImGui::GetStyle().ItemSpacing.x = x;
|
||||
ImGui::GetStyle().ItemSpacing.y = y;
|
||||
IMGUI_STYLE->ItemSpacing.x = x;
|
||||
IMGUI_STYLE->ItemSpacing.y = y;
|
||||
*/
|
||||
|
||||
// ItemInnerSpacing
|
||||
// Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label).
|
||||
//
|
||||
/**
|
||||
* Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label).
|
||||
*/
|
||||
public native void getItemInnerSpacing(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().ItemInnerSpacing, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->ItemInnerSpacing, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label).
|
||||
*/
|
||||
public native void setItemInnerSpacing(float x, float y); /*
|
||||
ImGui::GetStyle().ItemInnerSpacing.x = x;
|
||||
ImGui::GetStyle().ItemInnerSpacing.y = y;
|
||||
IMGUI_STYLE->ItemInnerSpacing.x = x;
|
||||
IMGUI_STYLE->ItemInnerSpacing.y = y;
|
||||
*/
|
||||
|
||||
// TouchExtraPadding
|
||||
// Expand reactive bounding box for touch-based system where touch position is not accurate enough.
|
||||
// Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much!
|
||||
//
|
||||
/**
|
||||
* Expand reactive bounding box for touch-based system where touch position is not accurate enough.
|
||||
* Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much!
|
||||
*/
|
||||
public native void getTouchExtraPadding(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().TouchExtraPadding, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->TouchExtraPadding, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Expand reactive bounding box for touch-based system where touch position is not accurate enough.
|
||||
* Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much!
|
||||
*/
|
||||
public native void setTouchExtraPadding(float x, float y); /*
|
||||
ImGui::GetStyle().TouchExtraPadding.x = x;
|
||||
ImGui::GetStyle().TouchExtraPadding.y = y;
|
||||
IMGUI_STYLE->TouchExtraPadding.x = x;
|
||||
IMGUI_STYLE->TouchExtraPadding.y = y;
|
||||
*/
|
||||
|
||||
// IndentSpacing
|
||||
// Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2).
|
||||
//
|
||||
/**
|
||||
* Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2).
|
||||
*/
|
||||
public native float getIndentSpacing(); /*
|
||||
return ImGui::GetStyle().IndentSpacing;
|
||||
return IMGUI_STYLE->IndentSpacing;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2).
|
||||
*/
|
||||
public native void setIndentSpacing(float indentSpacing); /*
|
||||
ImGui::GetStyle().IndentSpacing = indentSpacing;
|
||||
IMGUI_STYLE->IndentSpacing = indentSpacing;
|
||||
*/
|
||||
|
||||
// ColumnsMinSpacing
|
||||
// Minimum horizontal spacing between two columns. Preferably > (FramePadding.x + 1).
|
||||
//
|
||||
/**
|
||||
* Minimum horizontal spacing between two columns. Preferably > (FramePadding.x + 1).
|
||||
*/
|
||||
public native float getColumnsMinSpacing(); /*
|
||||
return ImGui::GetStyle().ColumnsMinSpacing;
|
||||
return IMGUI_STYLE->ColumnsMinSpacing;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Minimum horizontal spacing between two columns. Preferably > (FramePadding.x + 1).
|
||||
*/
|
||||
public native void setColumnsMinSpacing(float columnsMinSpacing); /*
|
||||
ImGui::GetStyle().ColumnsMinSpacing = columnsMinSpacing;
|
||||
IMGUI_STYLE->ColumnsMinSpacing = columnsMinSpacing;
|
||||
*/
|
||||
|
||||
// ScrollbarSize
|
||||
// Width of the vertical scrollbar, Height of the horizontal scrollbar.
|
||||
//
|
||||
/**
|
||||
* Width of the vertical scrollbar, Height of the horizontal scrollbar.
|
||||
*/
|
||||
public native float getScrollbarSize(); /*
|
||||
return ImGui::GetStyle().ScrollbarSize;
|
||||
return IMGUI_STYLE->ScrollbarSize;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Width of the vertical scrollbar, Height of the horizontal scrollbar.
|
||||
*/
|
||||
public native void setScrollbarSize(float scrollbarSize); /*
|
||||
ImGui::GetStyle().ScrollbarSize = scrollbarSize;
|
||||
IMGUI_STYLE->ScrollbarSize = scrollbarSize;
|
||||
*/
|
||||
|
||||
// ScrollbarRounding
|
||||
// Radius of grab corners for scrollbar.
|
||||
//
|
||||
/**
|
||||
* Radius of grab corners for scrollbar.
|
||||
*/
|
||||
public native float getScrollbarRounding(); /*
|
||||
return ImGui::GetStyle().ScrollbarRounding;
|
||||
return IMGUI_STYLE->ScrollbarRounding;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Radius of grab corners for scrollbar.
|
||||
*/
|
||||
public native void setScrollbarRounding(float scrollbarRounding); /*
|
||||
ImGui::GetStyle().ScrollbarRounding = scrollbarRounding;
|
||||
IMGUI_STYLE->ScrollbarRounding = scrollbarRounding;
|
||||
*/
|
||||
|
||||
// GrabMinSize
|
||||
// Minimum width/height of a grab box for slider/scrollbar.
|
||||
//
|
||||
/**
|
||||
* Minimum width/height of a grab box for slider/scrollbar.
|
||||
*/
|
||||
public native float getGrabMinSize(); /*
|
||||
return ImGui::GetStyle().GrabMinSize;
|
||||
return IMGUI_STYLE->GrabMinSize;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Minimum width/height of a grab box for slider/scrollbar.
|
||||
*/
|
||||
public native void setGrabMinSize(float grabMinSize); /*
|
||||
ImGui::GetStyle().GrabMinSize = grabMinSize;
|
||||
IMGUI_STYLE->GrabMinSize = grabMinSize;
|
||||
*/
|
||||
|
||||
// GrabRounding
|
||||
// Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs.
|
||||
//
|
||||
/**
|
||||
* Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs.
|
||||
*/
|
||||
public native float getGrabRounding(); /*
|
||||
return ImGui::GetStyle().GrabRounding;
|
||||
return IMGUI_STYLE->GrabRounding;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs.
|
||||
*/
|
||||
public native void setGrabRounding(float grabRounding); /*
|
||||
ImGui::GetStyle().GrabRounding = grabRounding;
|
||||
IMGUI_STYLE->GrabRounding = grabRounding;
|
||||
*/
|
||||
|
||||
// TabRounding
|
||||
// Radius of upper corners of a tab. Set to 0.0f to have rectangular tabs.
|
||||
//
|
||||
/**
|
||||
* Radius of upper corners of a tab. Set to 0.0f to have rectangular tabs.
|
||||
*/
|
||||
public native float getTabRounding(); /*
|
||||
return ImGui::GetStyle().TabRounding;
|
||||
return IMGUI_STYLE->TabRounding;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Radius of upper corners of a tab. Set to 0.0f to have rectangular tabs.
|
||||
*/
|
||||
public native void setTabRounding(float tabRounding); /*
|
||||
ImGui::GetStyle().TabRounding = tabRounding;
|
||||
IMGUI_STYLE->TabRounding = tabRounding;
|
||||
*/
|
||||
|
||||
// TabBorderSize
|
||||
// Thickness of border around tabs.
|
||||
//
|
||||
/**
|
||||
* Thickness of border around tabs.
|
||||
*/
|
||||
public native float getTabBorderSize(); /*
|
||||
return ImGui::GetStyle().TabBorderSize;
|
||||
return IMGUI_STYLE->TabBorderSize;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Thickness of border around tabs.
|
||||
*/
|
||||
public native void setTabBorderSize(float tabBorderSize); /*
|
||||
ImGui::GetStyle().TabBorderSize = tabBorderSize;
|
||||
IMGUI_STYLE->TabBorderSize = tabBorderSize;
|
||||
*/
|
||||
|
||||
// ColorButtonPosition
|
||||
// Side of the color button in the ColorEdit4 widget (left/right). Defaults to ImGuiDir_Right.
|
||||
//
|
||||
/**
|
||||
* Side of the color button in the ColorEdit4 widget (left/right). Defaults to ImGuiDir_Right.
|
||||
*/
|
||||
public native int getColorButtonPosition(); /*
|
||||
return ImGui::GetStyle().ColorButtonPosition;
|
||||
return IMGUI_STYLE->ColorButtonPosition;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Side of the color button in the ColorEdit4 widget (left/right). Defaults to ImGuiDir_Right.
|
||||
*/
|
||||
public native void setColorButtonPosition(int colorButtonPosition); /*
|
||||
ImGui::GetStyle().ColorButtonPosition = colorButtonPosition;
|
||||
IMGUI_STYLE->ColorButtonPosition = colorButtonPosition;
|
||||
*/
|
||||
|
||||
// ButtonTextAlign
|
||||
// Alignment of button text when button is larger than text. Defaults to (0.5f, 0.5f) (centered).
|
||||
//
|
||||
/**
|
||||
* Alignment of button text when button is larger than text. Defaults to (0.5f, 0.5f) (centered).
|
||||
*/
|
||||
public native void getButtonTextAlign(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().ButtonTextAlign, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->ButtonTextAlign, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Alignment of button text when button is larger than text. Defaults to (0.5f, 0.5f) (centered).
|
||||
*/
|
||||
public native void setButtonTextAlign(float x, float y); /*
|
||||
ImGui::GetStyle().ButtonTextAlign.x = x;
|
||||
ImGui::GetStyle().ButtonTextAlign.y = y;
|
||||
IMGUI_STYLE->ButtonTextAlign.x = x;
|
||||
IMGUI_STYLE->ButtonTextAlign.y = y;
|
||||
*/
|
||||
|
||||
// SelectableTextAlign
|
||||
// Alignment of selectable text when selectable is larger than text. Defaults to (0.0f, 0.0f) (top-left aligned).
|
||||
//
|
||||
/**
|
||||
* Alignment of selectable text when selectable is larger than text. Defaults to (0.0f, 0.0f) (top-left aligned).
|
||||
*/
|
||||
public native void getSelectableTextAlign(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().SelectableTextAlign, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->SelectableTextAlign, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Alignment of selectable text when selectable is larger than text. Defaults to (0.0f, 0.0f) (top-left aligned).
|
||||
*/
|
||||
public native void setSelectableTextAlign(float x, float y); /*
|
||||
ImGui::GetStyle().SelectableTextAlign.x = x;
|
||||
ImGui::GetStyle().SelectableTextAlign.y = y;
|
||||
IMGUI_STYLE->SelectableTextAlign.x = x;
|
||||
IMGUI_STYLE->SelectableTextAlign.y = y;
|
||||
*/
|
||||
|
||||
// DisplayWindowPadding
|
||||
// Window position are clamped to be visible within the display area by at least this amount. Only applies to regular windows.
|
||||
//
|
||||
/**
|
||||
* Window position are clamped to be visible within the display area by at least this amount. Only applies to regular windows.
|
||||
*/
|
||||
public native void getDisplayWindowPadding(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().DisplayWindowPadding, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->DisplayWindowPadding, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* Window position are clamped to be visible within the display area by at least this amount. Only applies to regular windows.
|
||||
*/
|
||||
public native void setDisplayWindowPadding(float x, float y); /*
|
||||
ImGui::GetStyle().DisplayWindowPadding.x = x;
|
||||
ImGui::GetStyle().DisplayWindowPadding.y = y;
|
||||
IMGUI_STYLE->DisplayWindowPadding.x = x;
|
||||
IMGUI_STYLE->DisplayWindowPadding.y = y;
|
||||
*/
|
||||
|
||||
// DisplaySafeAreaPadding
|
||||
// If you cannot see the edges of your screen (e.g. on a TV) increase the safe area padding.
|
||||
// Apply to popups/tooltips as well regular windows. NB: Prefer configuring your TV sets correctly!
|
||||
//
|
||||
/**
|
||||
* If you cannot see the edges of your screen (e.g. on a TV) increase the safe area padding.
|
||||
* Apply to popups/tooltips as well regular windows. NB: Prefer configuring your TV sets correctly!
|
||||
*/
|
||||
public native void getDisplaySafeAreaPadding(ImVec2 dstImVec2); /*
|
||||
Jni::ImVec2Cpy(env, &ImGui::GetStyle().DisplaySafeAreaPadding, dstImVec2);
|
||||
Jni::ImVec2Cpy(env, &IMGUI_STYLE->DisplaySafeAreaPadding, dstImVec2);
|
||||
*/
|
||||
|
||||
/**
|
||||
* If you cannot see the edges of your screen (e.g. on a TV) increase the safe area padding.
|
||||
* Apply to popups/tooltips as well regular windows. NB: Prefer configuring your TV sets correctly!
|
||||
*/
|
||||
public native void setDisplaySafeAreaPadding(float x, float y); /*
|
||||
ImGui::GetStyle().DisplaySafeAreaPadding.x = x;
|
||||
ImGui::GetStyle().DisplaySafeAreaPadding.y = y;
|
||||
IMGUI_STYLE->DisplaySafeAreaPadding.x = x;
|
||||
IMGUI_STYLE->DisplaySafeAreaPadding.y = y;
|
||||
*/
|
||||
|
||||
// MouseCursorScale
|
||||
// Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later.
|
||||
//
|
||||
/**
|
||||
* Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later.
|
||||
*/
|
||||
public native float getMouseCursorScale(); /*
|
||||
return ImGui::GetStyle().MouseCursorScale;
|
||||
return IMGUI_STYLE->MouseCursorScale;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later.
|
||||
*/
|
||||
public native void setMouseCursorScale(float mouseCursorScale); /*
|
||||
ImGui::GetStyle().MouseCursorScale = mouseCursorScale;
|
||||
IMGUI_STYLE->MouseCursorScale = mouseCursorScale;
|
||||
*/
|
||||
|
||||
// AntiAliasedLines
|
||||
// Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU.
|
||||
//
|
||||
/**
|
||||
* Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU.
|
||||
*/
|
||||
public native boolean getAntiAliasedLines(); /*
|
||||
return ImGui::GetStyle().AntiAliasedLines;
|
||||
return IMGUI_STYLE->AntiAliasedLines;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU.
|
||||
*/
|
||||
public native void setAntiAliasedLines(boolean antiAliasedLines); /*
|
||||
ImGui::GetStyle().AntiAliasedLines = antiAliasedLines;
|
||||
IMGUI_STYLE->AntiAliasedLines = antiAliasedLines;
|
||||
*/
|
||||
|
||||
// AntiAliasedFill
|
||||
// Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.)
|
||||
//
|
||||
/**
|
||||
* Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.)
|
||||
*/
|
||||
public native boolean getAntiAliasedFill(); /*
|
||||
return ImGui::GetStyle().AntiAliasedFill;
|
||||
return IMGUI_STYLE->AntiAliasedFill;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.)
|
||||
*/
|
||||
public native void setAntiAliasedFill(boolean antiAliasedFill); /*
|
||||
ImGui::GetStyle().AntiAliasedFill = antiAliasedFill;
|
||||
IMGUI_STYLE->AntiAliasedFill = antiAliasedFill;
|
||||
*/
|
||||
|
||||
// CurveTessellationTol
|
||||
// Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments.
|
||||
// Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality.
|
||||
//
|
||||
/**
|
||||
* Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments.
|
||||
* Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality.
|
||||
*/
|
||||
public native float getCurveTessellationTol(); /*
|
||||
return ImGui::GetStyle().CurveTessellationTol;
|
||||
return IMGUI_STYLE->CurveTessellationTol;
|
||||
*/
|
||||
|
||||
/**
|
||||
* Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments.
|
||||
* Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality.
|
||||
*/
|
||||
public native void setCurveTessellationTol(float curveTessellationTol); /*
|
||||
ImGui::GetStyle().CurveTessellationTol = curveTessellationTol;
|
||||
IMGUI_STYLE->CurveTessellationTol = curveTessellationTol;
|
||||
*/
|
||||
|
||||
/**
|
||||
@@ -411,7 +548,7 @@ public final class ImGuiStyle {
|
||||
* Decrease for higher quality but more geometry.
|
||||
*/
|
||||
public native float getCircleSegmentMaxError(); /*
|
||||
return ImGui::GetStyle().CircleSegmentMaxError;
|
||||
return IMGUI_STYLE->CircleSegmentMaxError;
|
||||
*/
|
||||
|
||||
/**
|
||||
@@ -419,7 +556,7 @@ public final class ImGuiStyle {
|
||||
* Decrease for higher quality but more geometry.
|
||||
*/
|
||||
public native void setCircleSegmentMaxError(float circleSegmentMaxError); /*
|
||||
ImGui::GetStyle().CircleSegmentMaxError = circleSegmentMaxError;
|
||||
IMGUI_STYLE->CircleSegmentMaxError = circleSegmentMaxError;
|
||||
*/
|
||||
|
||||
/**
|
||||
@@ -430,10 +567,10 @@ public final class ImGuiStyle {
|
||||
jfloatArray jColors = (jfloatArray)env->GetObjectArrayElement(buff, i);
|
||||
jfloat* jBuffColor = env->GetFloatArrayElements(jColors, 0);
|
||||
|
||||
jBuffColor[0] = ImGui::GetStyle().Colors[i].x;
|
||||
jBuffColor[1] = ImGui::GetStyle().Colors[i].y;
|
||||
jBuffColor[2] = ImGui::GetStyle().Colors[i].z;
|
||||
jBuffColor[3] = ImGui::GetStyle().Colors[i].w;
|
||||
jBuffColor[0] = IMGUI_STYLE->Colors[i].x;
|
||||
jBuffColor[1] = IMGUI_STYLE->Colors[i].y;
|
||||
jBuffColor[2] = IMGUI_STYLE->Colors[i].z;
|
||||
jBuffColor[3] = IMGUI_STYLE->Colors[i].w;
|
||||
|
||||
env->ReleaseFloatArrayElements(jColors, jBuffColor, 0);
|
||||
env->DeleteLocalRef(jColors);
|
||||
@@ -448,25 +585,25 @@ public final class ImGuiStyle {
|
||||
jfloatArray jColors = (jfloatArray)env->GetObjectArrayElement(colors, i);
|
||||
jfloat* jColor = env->GetFloatArrayElements(jColors, 0);
|
||||
|
||||
ImGui::GetStyle().Colors[i].x = jColor[0];
|
||||
ImGui::GetStyle().Colors[i].y = jColor[1];
|
||||
ImGui::GetStyle().Colors[i].z = jColor[2];
|
||||
ImGui::GetStyle().Colors[i].w = jColor[3];
|
||||
IMGUI_STYLE->Colors[i].x = jColor[0];
|
||||
IMGUI_STYLE->Colors[i].y = jColor[1];
|
||||
IMGUI_STYLE->Colors[i].z = jColor[2];
|
||||
IMGUI_STYLE->Colors[i].w = jColor[3];
|
||||
|
||||
env->ReleaseFloatArrayElements(jColors, jColor, 0);
|
||||
env->DeleteLocalRef(jColors);
|
||||
}
|
||||
*/
|
||||
|
||||
public native void scaleAllSizes(float scaleFactor); /*
|
||||
ImGui::GetStyle().ScaleAllSizes(scaleFactor);
|
||||
*/
|
||||
|
||||
public native void getColor(int imGuiCol, ImVec4 dstImVec4); /*
|
||||
Jni::ImVec4Cpy(env, ImGui::GetStyle().Colors[imGuiCol], dstImVec4);
|
||||
Jni::ImVec4Cpy(env, IMGUI_STYLE->Colors[imGuiCol], dstImVec4);
|
||||
*/
|
||||
|
||||
public native void setColor(int imGuiCol, float r, float g, float b, float a); /*
|
||||
ImGui::GetStyle().Colors[imGuiCol] = ImVec4(r, g, b, a);
|
||||
IMGUI_STYLE->Colors[imGuiCol] = ImVec4(r, g, b, a);
|
||||
*/
|
||||
|
||||
public native void scaleAllSizes(float scaleFactor); /*
|
||||
IMGUI_STYLE->ScaleAllSizes(scaleFactor);
|
||||
*/
|
||||
}
|
||||
Reference in new issue
Block a user