Skip to content

Commit ceda81e

Browse files
committed
fixed small rounding deviance in columns
1 parent 5cff04f commit ceda81e

File tree

7 files changed

+25
-22
lines changed

7 files changed

+25
-22
lines changed

imgui.ini

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,15 @@
11
[Debug]
22
Pos=60,60
3-
Size=507.0,355.0
3+
Size=400.0,400.0
44
Collapsed=0
55

66
[ImGui Demo]
7-
Pos=650,20
7+
Pos=647,22
88
Size=550.0,680.0
99
Collapsed=0
1010

11+
[Style Editor]
12+
Pos=390,21
13+
Size=640.0,688.0
14+
Collapsed=0
15+

src/main/kotlin/imgui/helpers.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ class Storage {
8888

8989
fun clear() = data.clear()
9090

91-
fun intaaaaa(key: Int, defaultVal: Int = 0) = data[key] ?: defaultVal // TODO rename back
91+
fun intaaaaaaaaa(key: Int, defaultVal: Int = 0) = data[key] ?: defaultVal // TODO rename back
9292

9393
operator fun set(key: Int, value: Int) {
9494
data[key] = value

src/main/kotlin/imgui/imgui/colums.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,7 @@ interface imgui_colums {
106106

107107
assert(columnIndex < window.dc.columnsData.size)
108108
val t = window.dc.columnsData[columnIndex].offsetNorm
109-
val xOffset = lerp(window.dc.columnsMinX, window.dc.columnsMaxX, t)
110-
return xOffset.i.f
109+
return lerp(window.dc.columnsMinX, window.dc.columnsMaxX, t) // xOffset
111110
}
112111

113112
/** set position of column line (in pixels, from the left side of the contents region). pass -1 to use current column */

src/main/kotlin/imgui/imgui/demoDebugInfo.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -527,7 +527,7 @@ interface imgui_demoDebugInfo {
527527
}
528528
offset += 3
529529
treeNode("In columns") {
530-
columns(3, "", false)
530+
columns(3, null, false)
531531
for (i in 0..15) {
532532
if (selectable("Item $i", selected, offset + i)) Unit
533533
nextColumn()
@@ -1967,7 +1967,7 @@ interface imgui_demoDebugInfo {
19671967
}
19681968

19691969
val fontsOpened = treeNode("Fonts", "Fonts (${IO.fonts.fonts.size})")
1970-
sameLine(); showHelpMarker("Tip: Load fonts with io.Fonts->AddFontFromFileTTF()\nbefore calling io.Fonts->GetTex* functions.")
1970+
sameLine(); showHelpMarker("Tip: Load fonts with IO.fonts.addFontFromFileTTF()\nbefore calling IO.fonts.getTex* functions.")
19711971
if (fontsOpened) {
19721972
val atlas = IO.fonts
19731973
treeNode("Atlas texture", "Atlas texture (${atlas.texSize.x}x${atlas.texSize.y} pixels)") {

src/main/kotlin/imgui/imgui/internal.kt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import imgui.ImGui.calcItemWidth
1616
import imgui.ImGui.calcTextSize
1717
import imgui.ImGui.colorButton
1818
import imgui.ImGui.contentRegionMax
19+
import imgui.ImGui.end
1920
import imgui.ImGui.endChildFrame
2021
import imgui.ImGui.endGroup
2122
import imgui.ImGui.endTooltip
@@ -122,7 +123,7 @@ interface imgui_internal {
122123
if (!it.accessed) it.active = false
123124
}
124125

125-
ImGui.end()
126+
end()
126127

127128
// Click to focus window and start moving (after we're done with all our widgets)
128129
if (g.activeId == 0 && g.hoveredId == 0 && IO.mouseClicked[0]) {
@@ -175,8 +176,7 @@ interface imgui_internal {
175176
}
176177

177178
fun keepAliveId(id: Int) {
178-
if (g.activeId == id)
179-
g.activeIdIsAlive = true
179+
if (g.activeId == id) g.activeIdIsAlive = true
180180
}
181181

182182
/** Advance cursor given item size for layout. */
@@ -335,7 +335,7 @@ interface imgui_internal {
335335
/** setup number of columns. use an identifier to distinguish multiple column sets. close with EndColumns(). */
336336
fun beginColumns(id: String?, columnsCount: Int, flags: Int) {
337337

338-
with(ImGui.currentWindow) {
338+
with(currentWindow) {
339339

340340
assert(columnsCount > 1)
341341
assert(dc.columnsCount == 1) // Nested columns are currently not supported
@@ -365,11 +365,11 @@ interface imgui_internal {
365365
dc.cursorPos.x = (pos.x + dc.indentX + dc.columnsOffsetX).i.f
366366

367367
// Cache column offsets
368-
dc.columnsData.add(ColumnData())
368+
for (i in 0..columnsCount) dc.columnsData.add(ColumnData())
369369
for (columnIndex in 0..columnsCount) {
370370

371371
val columnId = dc.columnsSetId + columnIndex
372-
ImGui.keepAliveId(columnId)
372+
keepAliveId(columnId)
373373
val defaultT = columnIndex / dc.columnsCount.f
374374
var t = dc.stateStorage.float(columnId, defaultT)
375375
if (dc.columnsFlags hasnt ColumnsFlags.NoForceWithinWindow)
@@ -1835,7 +1835,7 @@ interface imgui_internal {
18351835
} else {
18361836
/* We treat ImGuiSetCondition_Once and ImGuiSetCondition_FirstUseEver the same because tree node state
18371837
are not saved persistently. */
1838-
val storedValue = storage.intaaaaa(id, -1)
1838+
val storedValue = storage.intaaaaaaaaa(id, -1)
18391839
if (storedValue == -1) {
18401840
isOpen = g.setNextTreeNodeOpenVal
18411841
storage[id] = isOpen
@@ -1844,7 +1844,7 @@ interface imgui_internal {
18441844
}
18451845
g.setNextTreeNodeOpenCond = 0
18461846
} else
1847-
isOpen = storage.intaaaaa(id, if (flags has TreeNodeFlags.DefaultOpen) 1 else 0) != 0 // TODO rename back
1847+
isOpen = storage.intaaaaaaaaa(id, if (flags has TreeNodeFlags.DefaultOpen) 1 else 0) != 0 // TODO rename back
18481848

18491849
/* When logging is enabled, we automatically expand tree nodes (but *NOT* collapsing headers.. seems like
18501850
sensible behavior).

src/main/kotlin/imgui/imgui/widgets.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -90,15 +90,15 @@ interface imgui_widgets {
9090
if (window.skipItems) return
9191

9292
val fmt =
93-
try{
93+
// try{
9494
if (args.isEmpty())
9595
fmt
9696
else
9797
fmt.format(style.locale, *args)
98-
}catch (err: Exception) {
99-
println("fmt $fmt, args: ${args}")
100-
TODO()
101-
}
98+
// }catch (err: Exception) {
99+
// println("fmt $fmt, args: ${args}")
100+
// TODO()
101+
// }
102102

103103
val textEnd = fmt.length
104104
textUnformatted(fmt, textEnd)

src/main/kotlin/imgui/imgui/window.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -711,8 +711,7 @@ interface imgui_window {
711711
val contentRegionMax: Vec2
712712
get() = with(currentWindowRead!!) {
713713
val mx = Vec2(contentsRegionRect.max)
714-
if (dc.columnsCount != 1)
715-
mx.x = getColumnOffset(dc.columnsCurrent + 1) - windowPadding.x
714+
if (dc.columnsCount != 1) mx.x = getColumnOffset(dc.columnsCurrent + 1) - windowPadding.x
716715
return mx
717716
}
718717

0 commit comments

Comments
 (0)