beginning curation of gui_2.py using imscopes

This commit is contained in:
2026-05-12 00:40:19 -04:00
parent aed3ebe063
commit a0a537ff01
2 changed files with 76 additions and 108 deletions
+39 -70
View File
@@ -2,146 +2,115 @@ from __future__ import annotations
from imgui_bundle import imgui
from imgui_bundle import imgui_node_editor
def imgui_begin(name: str, visible: bool = True, flags: int = 0):
return _ImguiBegin(name, visible, flags)
class _ImguiBegin:
def window(name: str, visible: bool = True, flags: int = 0): return _ScopeWindow(name, visible, flags)
class _ScopeWindow:
def __init__(self, name: str, visible: bool, flags: int):
self._name = name
self._visible = visible
self._flags = flags
self._result = None
def __enter__(self):
self._result = imgui.begin(self._name, self._visible, self._flags)
return self._result
def __exit__(self, *args):
imgui.end()
return False
def imgui_begin_child(id_str: str, size_x: float = 0, size_y: float = 0, flags: int = 0):
return _ImguiBeginChild(id_str, size_x, size_y, flags)
class _ImguiBeginChild:
def child(id_str: str, size_x: float = 0, size_y: float = 0, flags: int = 0): return _ScopeChild(id_str, size_x, size_y, flags)
class _ScopeChild:
def __init__(self, id_str: str, size_x: float, size_y: float, flags: int):
self._id = id_str
self._sx = size_x
self._sy = size_y
self._flags = flags
def __enter__(self):
return imgui.begin_child(self._id, self._sx, self._sy, self._flags)
def __exit__(self, *args):
imgui.end_child()
return False
def imgui_begin_table(name: str, columns: int, flags: int = 0):
return _ImguiBeginTable(name, columns, flags)
class _ImguiBeginTable:
def table(name: str, columns: int, flags: int = 0): return _ScopeTable(name, columns, flags)
class _ScopeTable:
def __init__(self, name: str, columns: int, flags: int):
self._name = name
self._columns = columns
self._flags = flags
def __enter__(self):
return imgui.begin_table(self._name, self._columns, self._flags)
def __exit__(self, *args):
imgui.end_table()
return False
def imgui_begin_menu_bar():
return _ImguiBeginMenuBar()
class _ImguiBeginMenuBar:
def menu_bar(): return _ScopeMenuBar()
class _ScopeMenuBar:
def __enter__(self):
return imgui.begin_menu_bar()
def __exit__(self, *args):
imgui.end_menu_bar()
return False
def imgui_begin_menu(label: str):
return _ImguiBeginMenu(label)
class _ImguiBeginMenu:
def menu(label: str): return _ScopeMenu(label)
class _ScopeMenu:
def __init__(self, label: str):
self._label = label
def __enter__(self):
return imgui.begin_menu(self._label)
def __exit__(self, *args):
imgui.end_menu()
return False
def imgui_begin_popup(id_str: str):
return _ImguiBeginPopup(id_str)
class _ImguiBeginPopup:
def popup(id_str: str): return _ScopePopup(id_str)
class _ScopePopup:
def __init__(self, id_str: str):
self._id = id_str
def __enter__(self):
return imgui.begin_popup(self._id)
def __exit__(self, *args):
imgui.end_popup()
return False
def imgui_begin_tooltip():
return _ImguiBeginTooltip()
class _ImguiBeginTooltip:
def tooltip(): return _ScopeTooltip()
class _ScopeTooltip:
def __enter__(self):
return imgui.begin_tooltip()
def __exit__(self, *args):
imgui.end_tooltip()
return False
def imgui_begin_group():
return _ImguiBeginGroup()
class _ImguiBeginGroup:
def group(): return _ScopeGroup()
class _ScopeGroup:
def __enter__(self):
return imgui.begin_group()
def __exit__(self, *args):
imgui.end_group()
return False
def node_begin(name: str):
return _NodeBegin(name)
class _NodeBegin:
def node(name: str): return _ScopeNode(name)
class _ScopeNode:
def __init__(self, name: str):
self._name = name
def __enter__(self):
return imgui_node_editor.begin(self._name)
def __exit__(self, *args):
imgui_node_editor.end()
return False
return False
def text_wrap(wrap_pos: float = 0.0): return _ScopeTextWrap(wrap_pos)
class _ScopeTextWrap:
def __init__(self, wrap_pos: float):
self._wrap_pos = wrap_pos
def __enter__(self):
imgui.push_text_wrap_pos(self._wrap_pos)
def __exit__(self, *args):
imgui.pop_text_wrap_pos()
return False
def id(str_id: str): return _ScopeId(str_id)
class _ScopeId:
def __init__(self, str_id: str):
self._id = str_id
def __enter__(self):
imgui.push_id(self._id)
def __exit__(self, *args):
imgui.pop_id()
return False