1
0
mirror of https://github.com/ocornut/imgui.git synced 2024-11-24 15:50:25 +01:00

TODO list update

This commit is contained in:
ocornut 2015-01-14 13:43:41 +00:00
parent a372d67f47
commit 04eca0c375

View File

@ -197,11 +197,12 @@
- window: fix resize grip rendering scaling along with Rounding style setting - window: fix resize grip rendering scaling along with Rounding style setting
- window: autofit feedback loop when user relies on any dynamic layout (window width multiplier, column). maybe just clearly drop manual autofit? - window: autofit feedback loop when user relies on any dynamic layout (window width multiplier, column). maybe just clearly drop manual autofit?
- window: add a way for very transient windows (non-saved, temporary overlay over hundreds of objects) to "clean" up from the global window list. - window: add a way for very transient windows (non-saved, temporary overlay over hundreds of objects) to "clean" up from the global window list.
- window: allow resizing of child windows (possibly given min/max for each axis?)
- widgets: switching from "widget-label" to "label-widget" would make it more convenient to integrate widgets in trees - widgets: switching from "widget-label" to "label-widget" would make it more convenient to integrate widgets in trees
- widgets: clip text? hover clipped text shows it in a tooltip or in-place overlay - widgets: clip text? hover clipped text shows it in a tooltip or in-place overlay
- widgets: IsItemHovered() returns true even if mouse is active on another widget (e.g. dragging outside of sliders). Maybe not a sensible default? Add parameter or alternate function? - main: IsItemHovered() returns true even if mouse is active on another widget (e.g. dragging outside of sliders). Maybe not a sensible default? Add parameter or alternate function?
- main: make IsHovered() more consistent for various type of widgets, widgets with multiple components, etc. also effectively IsHovered() region sometimes differs from hot region, e.g tree nodes - main: IsItemHovered() make it more consistent for various type of widgets, widgets with multiple components, etc. also effectively IsHovered() region sometimes differs from hot region, e.g tree nodes
- main: make IsHovered() info stored in a stack? so that 'if TreeNode() { Text; TreePop; } if IsHovered' return the hover state of the TreeNode? - main: IsItemHovered() info stored in a stack? so that 'if TreeNode() { Text; TreePop; } if IsHovered' return the hover state of the TreeNode?
- scrollbar: use relative mouse movement when first-clicking inside of scroll grab box. - scrollbar: use relative mouse movement when first-clicking inside of scroll grab box.
- scrollbar: make the grab visible and a minimum size for long scroll regions - scrollbar: make the grab visible and a minimum size for long scroll regions
!- input number: very large int not reliably supported because of int<>float conversions. !- input number: very large int not reliably supported because of int<>float conversions.
@ -210,7 +211,7 @@
- input number: use mouse wheel to step up/down - input number: use mouse wheel to step up/down
- input number: non-decimal input. - input number: non-decimal input.
- layout: horizontal layout helper (github issue #97) - layout: horizontal layout helper (github issue #97)
- layout: clean up the InputFloatN/SliderFloatN/ColorEdit4 horrible layout code. item width should include frame padding. - layout: clean up the InputFloatN/SliderFloatN/ColorEdit4 layout code. item width should include frame padding.
- columns: separator function or parameter that works within the column (currently Separator() bypass all columns) - columns: separator function or parameter that works within the column (currently Separator() bypass all columns)
- columns: declare column set (each column: fixed size, %, fill, distribute default size among fills) - columns: declare column set (each column: fixed size, %, fill, distribute default size among fills)
- columns: columns header to act as button (~sort op) and allow resize/reorder - columns: columns header to act as button (~sort op) and allow resize/reorder
@ -224,7 +225,7 @@
- file selection widget -> build the tool in our codebase to improve model-dialog idioms (may or not lead to ImGui changes) - file selection widget -> build the tool in our codebase to improve model-dialog idioms (may or not lead to ImGui changes)
- slider: allow using the [-]/[+] buttons used by InputFloat()/InputInt() - slider: allow using the [-]/[+] buttons used by InputFloat()/InputInt()
- slider: initial absolute click is imprecise. change to relative movement slider? hide mouse cursor, allow more precise input using less screen-space. - slider: initial absolute click is imprecise. change to relative movement slider? hide mouse cursor, allow more precise input using less screen-space.
- text edit: clean up the horrible mess caused by converting UTF-8 <> wchar - text edit: clean up the mess caused by converting UTF-8 <> wchar
- text edit: centered text for slider or input text to it matches typical positioning. - text edit: centered text for slider or input text to it matches typical positioning.
- text edit: flag to disable live update of the user buffer. - text edit: flag to disable live update of the user buffer.
- text edit: field resize behavior - field could stretch when being edited? hover tooltip shows more text? - text edit: field resize behavior - field could stretch when being edited? hover tooltip shows more text?
@ -244,14 +245,11 @@
- tooltip: move to fit within screen (e.g. when mouse cursor is right of the screen). - tooltip: move to fit within screen (e.g. when mouse cursor is right of the screen).
- clipboard: automatically transform \n into \n\r or equivalent for higher compatibility on windows - clipboard: automatically transform \n into \n\r or equivalent for higher compatibility on windows
- portability: big-endian test/support (github issue #81) - portability: big-endian test/support (github issue #81)
- examples: add History support in the demo console application (pertinent to github issue #68).
- misc: provide a way to compile out the entire implementation while providing a dummy API (e.g. #define IMGUI_DUMMY_IMPL) - misc: provide a way to compile out the entire implementation while providing a dummy API (e.g. #define IMGUI_DUMMY_IMPL)
- misc: double-clicking on title bar to minimize isn't consistent, perhaps move to single-click on left-most collapse icon? - misc: double-clicking on title bar to minimize isn't consistent, perhaps move to single-click on left-most collapse icon?
- style editor: add a button to output C code.
- optimization/render: use indexed rendering to reduce vertex data cost (for remote/networked imgui) - optimization/render: use indexed rendering to reduce vertex data cost (for remote/networked imgui)
- optimization/render: move clip-rect to vertex data? would allow merging all commands - optimization/render: move clip-rect to vertex data? would allow merging all commands
- optimization/render: merge command-lists with same clip-rect into one even if they aren't sequential? (as long as in-between clip rectangle don't overlap)? - optimization/render: merge command-lists with same clip-rect into one even if they aren't sequential? (as long as in-between clip rectangle don't overlap)?
- optimization/render: font exported by bmfont is not tight fit on vertical axis, incur unneeded pixel-shading cost.
- optimization: turn some the various stack vectors into statically-sized arrays - optimization: turn some the various stack vectors into statically-sized arrays
- optimization: better clipping for multi-component widgets - optimization: better clipping for multi-component widgets
- optimization: specialize for height based clipping first (assume widgets never go up + height tests before width tests?) - optimization: specialize for height based clipping first (assume widgets never go up + height tests before width tests?)