diff --git a/imgui-binding/src/main/java/imgui/ImGuiStyle.java b/imgui-binding/src/main/java/imgui/ImGuiStyle.java index d1f9e68..2d6f266 100644 --- a/imgui-binding/src/main/java/imgui/ImGuiStyle.java +++ b/imgui-binding/src/main/java/imgui/ImGuiStyle.java @@ -71,6 +71,20 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { Jni::ImVec2Cpy(env, &IMGUI_STYLE->WindowPadding, dstImVec2); */ + /** + * Padding within a window. + */ + public native float getWindowPaddingX(); /* + return IMGUI_STYLE->WindowPadding.x; + */ + + /** + * Padding within a window. + */ + public native float getWindowPaddingY(); /* + return IMGUI_STYLE->WindowPadding.y; + */ + /** * Padding within a window. */ @@ -116,6 +130,20 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { 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 float getWindowMinSizeX(); /* + return IMGUI_STYLE->WindowMinSize.x; + */ + + /** + * Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). + */ + public native float getWindowMinSizeY(); /* + return IMGUI_STYLE->WindowMinSize.y; + */ + /** * Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). */ @@ -131,6 +159,20 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { 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 float getWindowTitleAlignX(); /* + return IMGUI_STYLE->WindowTitleAlign.x; + */ + + /** + * Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. + */ + public native float getWindowTitleAlignY(); /* + return IMGUI_STYLE->WindowTitleAlign.y; + */ + /** * Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. */ @@ -216,6 +258,20 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { Jni::ImVec2Cpy(env, &IMGUI_STYLE->FramePadding, dstImVec2); */ + /** + * Padding within a framed rectangle (used by most widgets). + */ + public native float getFramePaddingX(); /* + return IMGUI_STYLE->FramePadding.x; + */ + + /** + * Padding within a framed rectangle (used by most widgets). + */ + public native float getFramePaddingY(); /* + return IMGUI_STYLE->FramePadding.y; + */ + /** * Padding within a framed rectangle (used by most widgets). */ @@ -259,6 +315,20 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { Jni::ImVec2Cpy(env, &IMGUI_STYLE->ItemSpacing, dstImVec2); */ + /** + * Horizontal and vertical spacing between widgets/lines. + */ + public native float getItemSpacingX(); /* + return IMGUI_STYLE->ItemSpacing.x; + */ + + /** + * Horizontal and vertical spacing between widgets/lines. + */ + public native float getItemSpacingY(); /* + return IMGUI_STYLE->ItemSpacing.y; + */ + /** * Horizontal and vertical spacing between widgets/lines. */ @@ -274,6 +344,20 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { 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 float getItemInnerSpacingX(); /* + return IMGUI_STYLE->ItemInnerSpacing.x; + */ + + /** + * Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). + */ + public native float getItemInnerSpacingY(); /* + return IMGUI_STYLE->ItemInnerSpacing.y; + */ + /** * Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). */ @@ -290,6 +374,22 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { 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 float getTouchExtraPaddingX(); /* + return IMGUI_STYLE->TouchExtraPadding.x; + */ + + /** + * 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 float getTouchExtraPaddingY(); /* + return IMGUI_STYLE->TouchExtraPadding.y; + */ + /** * 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! @@ -448,6 +548,20 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { 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 float getButtonTextAlignX(); /* + return IMGUI_STYLE->ButtonTextAlign.x; + */ + + /** + * Alignment of button text when button is larger than text. Defaults to (0.5f, 0.5f) (centered). + */ + public native float getButtonTextAlignY(); /* + return IMGUI_STYLE->ButtonTextAlign.y; + */ + /** * Alignment of button text when button is larger than text. Defaults to (0.5f, 0.5f) (centered). */ @@ -464,6 +578,22 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { Jni::ImVec2Cpy(env, &IMGUI_STYLE->SelectableTextAlign, dstImVec2); */ + /** + * Alignment of selectable text. Defaults to (0.0f, 0.0f) (top-left aligned). + * It's generally important to keep this left-aligned if you want to lay multiple items on a same line. + */ + public native float getSelectableTextAlignX(); /* + return IMGUI_STYLE->SelectableTextAlign.x; + */ + + /** + * Alignment of selectable text. Defaults to (0.0f, 0.0f) (top-left aligned). + * It's generally important to keep this left-aligned if you want to lay multiple items on a same line. + */ + public native float getSelectableTextAlignY(); /* + return IMGUI_STYLE->SelectableTextAlign.y; + */ + /** * Alignment of selectable text. Defaults to (0.0f, 0.0f) (top-left aligned). * It's generally important to keep this left-aligned if you want to lay multiple items on a same line. @@ -480,6 +610,20 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { 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 float getDisplayWindowPaddingX(); /* + return IMGUI_STYLE->DisplayWindowPadding.x; + */ + + /** + * Window position are clamped to be visible within the display area by at least this amount. Only applies to regular windows. + */ + public native float getDisplayWindowPaddingY(); /* + return IMGUI_STYLE->DisplayWindowPadding.y; + */ + /** * Window position are clamped to be visible within the display area by at least this amount. Only applies to regular windows. */ @@ -496,6 +640,22 @@ public final class ImGuiStyle implements ImGuiDestroyableStruct { 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 float getDisplaySafeAreaPaddingX(); /* + return IMGUI_STYLE->DisplaySafeAreaPadding.x; + */ + + /** + * 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 float getDisplaySafeAreaPaddingY(); /* + return IMGUI_STYLE->DisplaySafeAreaPadding.y; + */ + /** * 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!