Commit Graph

1571 Commits (a1521534babbd82eecb8635f0b1b7f235bc5e3d7)

Author SHA1 Message Date
ocornut 43d073db1e Metrics: showing some internal state
ocornut b76353bbb1 Passing ImGuiWindowFlags_NoMove to BeginChild() allows to inhibit moving root window from this child
ocornut b1987d697f Trim trailing whitespace ()
ocornut 425c6cb3a3 Remove CaptureInputCharactersFromApp and minor cleanups ()
Borislav Stanimirov 73917115a8 Added flag showing whether the GUI wants text input
Conflicts:
	imgui.cpp
ocornut b28858b33b InputText: intentionally ignore character input when ctrl/alt are held (not sure if correct) ()
ocornut bbced3f0f0 Build fix
ocornut 4ac4d1ac37 ImHash: defaults seed to zero + comment.
ocornut 97be3428f1 Added GetMousePosOnOpeningCurrentPopup().
ocornut ede5956b28 Metrics window: shows indices along with triangles count ()
ocornut 07de0448f9 ImGuiTextFilter: default parameter width=0.0f for no override, allow override with negative values
ocornut 42567a9516 ImGuiTextFilter::PassFilter() supports string range. Added [] helper to ImGuiTextBuffer.
ocornut 72d3fca52f Demo: added simple Log demo
ocornut c98318a914 Renaming some argument to clarify the local vs screen coordinates
ocornut f421f2f47e IsWindowHovered() takes account of window hoverability (may be disabled because of a popup) + comment
Was a dupe of IsMouseHoveringWindow() anyway, they are now "clearly"
different.
ocornut 0c9fcdbe71 Allow to override ImDrawIdx type ()
ocornut 915b46f1c1 Added assert on index overflow ()
ocornut 48ed0a10d7 Minor code compaction (following )
Thomas Pöchtrager 3604aecf8f Minor Windows adjustments
ocornut b637850260 Merge branch 'master' of https://github.com/tpoechtrager/imgui into tpoechtrager-master
ocornut 14822609bd Version number 1.45 WIP
Thomas Pöchtrager 947cf3434f Added printf attribute to printf like text formatting functions
ocornut a99ba42a39 Version number 1.44
ocornut 27961401c6 Cleanup ()
ocornut 88a00f77e9 Cleanup - using ImRect more consistently for ImGui-side cliprect data
ocornut f1fb62fa6d Cleanup - shuffle functions around ()
Jonathan Adamczewski 0911597550 Remove inline qualifiers inside .cpp
Use of inline in the .cpp file causes link errors with gcc.
ocornut 15cfa63e97 Comments
ocornut 692a38c0fc Merge branch 'master' into 2015-07-cleanup
ocornut f2b652a39e Comments
ocornut e7f1e28b6b Merge branch 'master' into 2015-07-cleanup
ocornut 4b4f6d78ee InputFloat() fixed 0 decimal_precision
ocornut a54995eace RoundScalar() fallback use powf(10.f, -x) instead of 1.0f/powf(10.0f,x)
ocornut 9b19f8c19d Merge branch 'master' into 2015-07-cleanup
Conflicts:
	imgui.cpp
ocornut f6e21b7ab7 InputInt() also hexadecimal input (awkwardly via ImGuiInputTextFlags_CharsHexadecimal but we will allow fmt string in InputInt* later)
+ Fix for large ints constant assignment
ocornut cc8ff4c8d1 RoundScalar() use a lookup table to avoid calling powf(10.0f, x);
ocornut f0f2afa87d InputInt() doesn't cast to float, fix handling lost of precision with large integer. Added primitives to support more data types.
ocornut a793ad682d Merge branch 'master' into 2015-07-cleanup
Conflicts:
	imgui.cpp
ocornut ebd25cf1a3 Minor comments
ocornut e20b90154c Comments
ocornut 3ee2fac892 Slider: fixed using FramePadding between frame and grab visual. Scaling that spacing would look odd.
ocornut e42bec5ba2 Fixed scaling of checkbox and radio button for the filling of "active" visual
ocornut 155873a6b0 Added GetContentRegionAvail() helper
ocornut 60b46cc712 Comment ()
ocornut 815d1d9be4 Merge remote-tracking branch 'origin' into 2015-07-cleanup
Conflicts:
	imgui.cpp
ocornut 3aca446817 Added ImFontAtlas::AddFontFromMemoryCompressedBase85TTF()
ocornut da3baebd43 Fixed lower-right resize grip hit box not scaling along with its rendered size ()
ocornut 4b29cc9e10 Exposed relevant functions in imgui_internal.h ()
ocornut 26a992c6f6 Updated to stb_truetype 1.07 (back to vanilla version as our minor changes are now in master & fix )
ocornut 6c63d80aa4 Tidying up InputTextApplyArithmeticOp()
ocornut f63beeae86 Internal version of LogText() -> LogRenderedText() + shallow tidying up
ocornut faa609a43c Internal cleanup ParseFormatPrecision() doesn't take a reference
ocornut f8646338c3 Merge remote-tracking branch 'origin' into 2015-07-cleanup
ocornut 7650d4cc67 Internal SliderFloatAsInputText() -> InputFloatReplaceWidget()
ocornut abf823c6f6 Tidying up
ocornut 58ee08f214 Todo list notes
ocornut 040f3950a3 Merge remote-tracking branch 'origin' into 2015-07-cleanup
Conflicts:
	imgui.cpp
ocornut e6b29b70b4 Make internal SliderFloatAsInputText() take a size to match the calling widget
ocornut c639f65eb7 Merge remote-tracking branch 'origin' into 2015-07-cleanup
Conflicts:
	imgui.cpp
ocornut 02fbb36918 ImDrawList: Add missing support for anti-aliased thick-lines (, also ref )
ocornut a79ee94fc4 Removed unnecessary assignment + added comment
ocornut 709c4c3168 Merge remote-tracking branch 'origin' into 2015-07-cleanup
Conflicts:
	imgui.cpp
ocornut 527208ad7c Default font encoded as base85 saves ~100 lines / 26 KB of source code (from @mmalex)
ocornut fddc871870 Columns: never assume horizontal space for scrollbar if NoScrollbar flag is set.
Xo Wang 8d45c89352 Remove non-text character at start of imgui.cpp
ocornut 4468ec001e Fixed warning in console example (we're iterating chars)
ocornut fb83323b1d Tidying up
ocornut 62c888177a Tweaks
ocornut 7552f48d7b ImLoadFileToMemory() default parameters
ocornut 94f085aa3e Update comments ()
ocornut e32f0931e8 Missing includes for imgui_draw.cpp ()
ocornut dace68b6fd Big cleanup, split imgui.cpp into imgui_demo.cpp,imgui_draw.cpp imgui_internal.h ()
ocornut 60dce8bc22 Fix to get all code ShowTestWindow() copiable outside. Moved ShowMetricsWindows() above. ()
ocornut 83ebbebadd Fixed inconsistent declaration of ImVec2 privates operators
ocornut 5a4b521855 Added ImDrawList::AddText() shorthand helper
ocornut 74908a9513 Fixed angles in ImDrawList::PathArcTo(), PathArcToFast() being off by an extra PI for no reason
ocornut 479211808f ImDrawList::AddPolyLine() tidying up in AA path
ocornut cdbf71ac12 Added ImGuiWindowFlags_NoInputs for input-passthru window
Would be more useful with finer control over display layer
ocornut 0ab620c2b9 Combo() clamp popup to lower edge of visible area
ocornut 20db726a9a Version number 1.44 WIP
ocornut 4015414978 InputtextMultiline(): honor negative size consistently with other widgets
ocornut 3b53a6513a Button() honor negative size consistently with other widgets that do so
ocornut eca26ae91d Build fix for MinGW ()
ocornut 99c5f5735c Tweak button sizes
ocornut e8cb874afe Version number 1.43
ocornut 1266e4a181 Added a gratuitous About window
ocornut d6117e33d0 AddInputCharactersUTF8: shallow tweaks ()
Daniel Gibson be8fb858cc Add ImGuiIO::AddInputCharactersUTF8(char* utf8str)
It'll convert the utf8 string to ImWchar's and passes each of them
to AddInputCharacter().

Very handy for SDL2 SDL_TEXTINPUT events, which provide a buffer with an
UTF-8 string.
ocornut 3ff04c95d5 Minor tweaks
ocornut d170620816 Comments
ocornut 80276ef07b Fixed ClearInputData()
ocornut 6c3ab6fc9b ImFont: fixed minor bug with CPU-side vertical clipping of text.
ocornut a56768463a Examples: moved demo bits around.
ocornut d750df9189 Fix for Shutdown()
ocornut baa2328b99 Tweak to RenderCheckMark()
ocornut 8081e81e55 Fixed warnings + label
ocornut 1a3ef63132 Fixed parameters array size declaration (wouldn't have a side-effect but weird and misleading)
Thanks Coverity
ocornut 368d2c3568 OverlayDrawList readier for pushing elements (not exposed yet)
ocornut 035ff302d2 ImFontAtlas: moved application of FontDataOwnedByAtlas to AddFont()
ocornut 95f489ac1f Merged AA branch in master! ()
ocornut 3e3d9f9a69 ImFontAtlas: allow AddFontDefault to take a config
ocornut 99a92ee7c5 Comments (fixed old comments)
ocornut 8952b93b2f Include for alloca()
ocornut fcec337061 Examples: Simplified font examples comments.
ocornut 815168c7ef ImFontAtlas: new AddFont() API, oversampling, subpositiong, merging fonts, etc. (, , , )
ocornut 6ae8062ca0 ImFont: comments, minor bits
ocornut c02f9b58ef ImFont: Cleanup to be compatible with over-sampling (not enabled)
ocornut fc6545830b Examples: displaying more font information.
ocornut faec745438 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut 8cfd963fda Popups: removed an apparently unnecessary test in CloseInactivePopups() that broke Combo boxes inside menus ()
ocornut 355cbf6326 Examples: added tests for Combo box in sub-menu test and MenuItem in a normal window ()
ocornut 52c820e7b0 Metrics: more details in popup stack ()
ocornut ba9317b924 ImFont: storing offsets as X0/Y0/X1/Y1 analoguous to examples for stb_truetype
ocornut 5b053dd350 Fix for OverlayDrawList being ready to append commands (not exposed publicly yet anyway)
ocornut 7eca4e2a7f Merge bits
ocornut fbb9113118 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
Conflicts:
	imgui.cpp
ocornut 4565bf9813 Demo: custom rendering example uses AddRectFilledMultiColor()
ocornut 6520b6c458 ImDrawList: added AddRectFilledMultiColor() helper + minor optimisation.
ocornut 7a0004eb86 Revert
ocornut d10d0343b2 Plot() function can take 0.0f for both scale_min/scale_max to calculate scale
ocornut e681937f66 Delete merging artefact that survived for a day
ocornut fd44b9440b Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
Conflicts:
	imgui.cpp
ocornut b67593a4b1 Changed SameLine() parameters from int to float.
ocornut 8094aa78d2 Fixed incorrect assert triggering when code steal ActiveID move user moving window by calling e.g. SetKeyboardFocusHere()
ocornut 827ff970cd InputText: Added ImGuiInputTextFlags_AlwaysInsertMode flag
ocornut d2701727b9 InputText: added ImGuiInputTextFlags_NoHorizontalScroll flag. Added HasSelection() helper in ImGuiTextEditCallbackData as a clarification.
ocornut 398ef1a212 Comments
ocornut 245cf36522 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut 890585cde8 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut 08b1dd1035 Version number 1.43 WIP
Bits
ocornut fec09e37ab Disable warnings, undo f4aae6b9ec ( )
Stephan Dilly f4aae6b9ec fix minor clang-x64 warnings
fixes 
ocornut e5bea65582 Version number 1.42
ocornut b36ff2fec3 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut 44c23e0eed Allowing DeltaTime==0.0f to not assert
ocornut 67d93156df Fixed clang/gcc warnings ()
ocornut 54c2665032 AA branch: undo d35c1a9e66, thickness is back but goes through non-AA path ()
ocornut 439040bb25 AA branch: more comments on breaking changes ()
ocornut d03b046ef4 AA branch: Agressively renamed all fields of ImDrawList, ImDrawCmd, ImDrawData to match the rest of our coding convention ()
ocornut d35c1a9e66 AA branch: removed the 'thickness' parameter from ImDrawList::AddLine()
ocornut ac56e4e209 AA branch: API breaking change documentation
ocornut af7f35d7c2 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut 87ebe95fd6 Columns/ImDrawList: dispatch render of each column in a sub-draw list and merge on closure, saving draw calls ()
ocornut f4fc008a2a Fixed ListBoxHeader() not honoring negative sizes the same way as BeginChild() or BeginChildFrame() ()
ocornut acf58c6223 More debug-build friendly ImVector<> use micro optimisations for the most bottle-neck bunchs
ocornut bfa7d86070 AA branch: further use of ImVector<> Data/Size
ocornut c3ced1bd71 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
Conflicts:
	imgui.cpp
ocornut 3869e10574 ImVector<> access to Size/Capacity/Data ()
ocornut 25882c47a3 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
Conflicts:
	examples/directx11_example/imgui_impl_dx11.cpp
	examples/directx9_example/imgui_impl_dx9.cpp
	examples/opengl3_example/imgui_impl_glfw_gl3.cpp
	examples/opengl_example/imgui_impl_glfw.cpp
	imgui.cpp
ocornut 502e360ee5 Removed the majority of size_t from the code. ImVector<> now uses int. ()
May trigger new compilation warnings?
ocornut aeae03f4ac Fixed minor zealous Clang warning (demo code intentionally uses strdup() to be copiable)
ocornut 4d42760c0b Metrics window: "Show clipping rectangles when hovering ImDrawList" enabled by default
ocornut de6dfe8c5d ImRect (internal) fixed ImVec4 constructor, argh (broken e7e2fcdd19)
ocornut 92b61d2ee4 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut b92396b46a Optimisation, removed the duplicate ClipRectStack in ImGuiWindow, storing single value
ocornut 6a22835f63 AA branch: ImDrawList: rename commands to cmd_buffer
Not strictly necessary but while we're doing minor breakage let's do
them at all once.
ocornut e7e2fcdd19 ImRect (internal) made constructors more non-optimised compilation friendly
ocornut a17e47fe14 ImDrawList: fixed non-merged commands when equal clip rectangles are in the two first commands
ocornut 5782c69c2a Metrics window: calculate bounding box of actual vertices when hovering a draw list.
ocornut 9db4b35168 Fixed ImRect.Add(ImVec2&) which was broken and somehow unused
ocornut 0ff2a6ff64 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
Conflicts:
	imgui.cpp
ocornut d6987d1586 ImDrawList store pointer to their owner name for easier auditing/debugging. Metrics windows render clip rectangle when hovering.
ocornut c52cefa2c2 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut 0d5e6e125c Documentation ( )
ocornut 0676efd37f AA branch: added ImDrawData::DeIndexAllBuffers() helper ()
ocornut b2b616be00 AA branch: ImDrawCmd idx_count -> elem_count
ocornut f3303fa84f AA branch: io.RenderDrawListsFn signature changed to take ImDrawData, neater and future proof breaking of the render API ( )
ocornut 2633325b9f Comments
ocornut 562aecdaa5 Removed obsolete GetDefaultFontData() function that would assert anyway (obsoleted 2015/01/11)
ocornut 3fa4451936 PlotLines(), PlotHistogram(): fixed incorrect hovering test (would trigger tooltip when menu is open)
ocornut 1c160adbba Comments
ocornut c9676554b9 MenuItem() can be activated on release ()
ocornut 56553f33b8 AA branch: added style.AntiAliasedLines, style.AntiAliasedShapes ()
ocornut 19e59421e5 AA branch: comments, inlining minor ops
ocornut 46c440d186 AA branch: AddPolyline() stores normals on stack
ocornut c09af38804 AA branch: AddConvexPolyFilled() store normals on stack
ocornut a74ca9025f AA branch: oops, ImInvLengthSqr() is ImInvLength()
ocornut a8b5f77591 AA branch: AddPolyline(), AddConvexPolyFilled() a little more readable with more consistent naming
ocornut 0292c82b9c AA branch: fix lower-right bound of frame outlines
ocornut 2f21347803 CollapsingHeader() fixed label rendering outside in columns context where cliprect max isn't aligned with header
ocornut 7959fbe992 AA branch: CollapsingHeader() rounding down half window padding
ocornut f04c2002d6 AA branch: fixed column offsets not always aligned to the pixel causing CollapsingHeader() border to incorrectly anti-alias
Fixing framed CollapsingHeader() inside columns, where
GetContentRegionMax() doesn't return pixel aligned rounded position.
ocornut 0d7ca3da24 AA branch: AddLine() api adds the 0.5f offset (unsure about that yet)
ocornut 18fa8e1c7e Fixed IsMouseDragging() (fix )
ocornut 3b94c37efc AA branch: minor tweaks + disabled debug code that disable AA when holding Ctrl
ocornut f435e42561 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
Conflicts:
	examples/opengl_example/imgui_impl_glfw.cpp
ocornut d76bc3434e Added DragFloatRange2() DragIntRange2() helpers ()
ocornut 7437b43b2d Fixed warnings for more pedantic settings ()
ocornut b69d7d9df3 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut 6826ab3ffd Added GetKeyIndex() helper.
ocornut 0f9e2f8173 Tweaked scrolling example code ()
ocornut 42efc29def SetScrollFromCursorPos() -> SetScrollHere() () final call !
ocornut 4eba6cd470 Added SetScrollY(), SetScrollFromPosY(). Renamed SetScrollPosHere() to SetScrollFromCursorPos(). ()
ocornut b37a326163 Renamed GetScrollPosY() to GetScrollY(). ()
Necessary to reduce confusion along with other scrolling functions,
because positions (e.g. cursor position) are not equivalent to scrolling
amount.
ocornut 9bedcb5304 Added GetCursorStartPos() necessary for using scroll target relative to beginning of window content ()
ocornut 1b01137c90 Fixed text baseline alignment of small button (no padding) after regular buttons
Currently being a coward and only doing it via the SmallButton() entry
point.
ocornut bbc22ac8ca Comments + remove trailing comma
ocornut 90ec28f6de Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut e0da1e0658 Split into CaptureKeyboardFromApp() / CaptureMouseFromApp()
ocornut 77fad80e9f Added CaptureInputsFromApp() to manually enforce e.g. keyboard capturing
ocornut 57f70a29b2 Fixed a bug with TextUnformatted() clipping of long text ()
ocornut 0e5b64ecd2 SetScrollPosHere() Minor hack for effective "scroll to top" to appear like user expect it ()
Compensate the difference between WindowPadding and ItemSpacing
ocornut 824cf5ae85 Fixed window padding being reported incorrectly for child windows with borders when parent have no borders
ocornut 3d7b596a40 SetScrollToPosHere() fixed imprecision + handling lower gap better for bottom alignment ()
ocornut 49b7a8e61f Added scroll tracking example with SetScrollPosHere() (relate )
ocornut b74d8e4c87 SetScrollPosHere() takes a y centering ratio and can be used to aim the top or bottom of the window (relate )
ocornut 067b7d909a Style: Added GrabRounding (works well with AA branch). Followup to
ocornut d3c0bfefb3 AA branch: render axis aligned rect bypassing the AA path
ocornut b30d08d63a AA branch: bits
ocornut c39372e7d5 Title bar uses TitleBgActive color even when window has popups/menus over ()
ocornut 47826830af Adding TitleBgActive color - still issues with popups/menus ()
ocornut c71b183965 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut 4bb94a9e4d AA branch: more optimisations.
ocornut a8f0eb5ec6 AA branch: more optimisations.
ocornut bbdf36cd3a AA branch: minor optimisations, merging loops
ocornut c3040dee35 AA branch: more inline.
ocornut 077285ae57 AA branch: tidying up, inline PathStroke PathFill
ocornut aaefe458df AA branch: cleanup
ocornut ebfe4637d4 Merge branch '2015-04-indexed-rendering' into 2015-03-antialiased-primitives
Conflicts:
	imgui.cpp
	imgui.h
ocornut d57ee2458c AA branch: ImDrawList: renaming of Path based functions so both code paths can cohabit with no confusion
ocornut 5bf30bd6c4 AA branch: Minor optimisations for Debug builds
ocornut 43dcd6ef47 Merge remote-tracking branch 'origin' into 2015-04-indexed-rendering
Conflicts:
	imgui.cpp
ocornut 0bf90770b0 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
Conflicts:
	imgui.cpp
ocornut 0e3198edc2 Tidying up - renamed FindBestWindowPos() to FindBesttPopupWindowPos()
ocornut af0de5f357 Tidying up - ImRect doesn't use ImVec2 operators (so we can expose it later)
ocornut 882c7a8cef Tidying up - ShowUserGuide, ShowStyleEditor only uses public calls
ocornut 039ebb79f4 Tidying up - renamed a few internal functions
ocornut 8b392feba1 Tidying up - moved ImFontAtlas glyph ranges helpers outside of ImFont block
ocornut 0783697f87 Minor tidying up
ocornut 4ac21aaa12 Version number 1.42 wip + todo list entries
Ben Vanik 5cd1a01514 Fixing 64-bit compilation warning caused by implicit size_t->int cast
ocornut f66be0e7b2 Demo: satisfying buffer size
ocornut ea2c824192 Version 1.41
ocornut 8224ca16b6 Carriage return in demo tooltip
ocornut 4976bf97a6 Fix for correctness and allow non-auto resized modals to have window minimum size applied - hopefully no-side effects ()
ocornut af5890b276 AutoFit can be triggered on each axis separately via SetNextWindowSize() (mentioned in )
ocornut 975ef00682 Minor construction fix (-1.0 is correct "disabled" value for TextWrapPos, didn't have any incidence anyway)
ocornut d171e48b20 Fixed SetNextWindowPosCenter() being processed too early for windows that are still measuring their size (for )
ocornut 5436266963 Added SetNextWindowPosCenter() ()
ocornut bcbf53857c BeginPopupModal() default to NoCollapse for modal windows ()
ocornut 06ed9257ef Modal windows centered when appearing ()
ocornut 2a041cfbe1 Added GetGlyphRangesCyrillic() helper ()
ocornut 0f38a53d28 Added stacked modal windows example ()
ocornut f0311b643a Added modal dialog example ()
ocornut a4cd585f54 Reorganized demo window
ocornut fe17f6e735 Added modal window darkening of previous windows ()
ocornut 8c790a3234 BeginPopupModal() can have an optional close-window button ()
ocornut bce495c581 Added BeginPopupModal() with actual modal behaviour (WIP api) ()
ocornut 0b98d3eb26 Merge remote-tracking branch 'origin' into 2015-04-indexed-rendering
Conflicts:
	imgui.cpp
ocornut 01cb0dc7f7 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
Conflicts:
	imgui.cpp
	imgui.h
ocornut 0884cb51cd Added IsKeyReleased() (), added keyboard & mouse state panel in the demo window
ocornut 68534c2319 Added IsMouseReleased() helper ()
ocornut eec047c9f7 Fixed leak on Shutdown ()
ocornut 9e8da4dba0 Comments
ocornut 747999bbaf Fixed mouse wheel scroll issues, introduced a few weeks ago ()
ocornut e7b43b014b Can't scroll with mouse wheel when window is collapsed.
ocornut 1b28f11acb InputTextMultiline() filtering out \r for now ()
ocornut 73db855c77 InputTextMultiline() painfully merged most computation passes into one, better clipping, much faster for large text ()
ocornut 84987ac3e0 ImFont::RenderText() better vertical clipping for large amount of text (for )
ocornut 324b1c2a28 InputTextMultiline(): made ctrl+up/down closer to windows behavior ()
ocornut c4720ec90f InputTextMultiline() fixed a frame of lag in handling vertical scrolling ()
ocornut cd27f8a8e6 InputText(): adjusting selection block height differently for single and multi-line ()
ocornut b524c59c70 InputText(): removed a call to strlen() in the active edit path ()
ocornut 2b68a5c0cf InputTextMultine() optimised height calculation for inactive multi-line edit box ()
ocornut 86666489df ImFont: CalcTextSizeA() fixed font scaling with fallback character.
ocornut c6d77f3bf5 InputText: fixed handling of scaled font. re-organized bits of code toward merging all sizes calculations ()
ocornut 10b4fa44c1 Fixed framerate counter averaging buffer size (shouldn't have been included in previous commit)
ocornut 26d2b361d1 InputText(): removed extraneous CalcTextSizeW call for tracking cursor/scrolling, remove spike ()
ocornut 5f362cabe9 InputText(): char width calculation calls font->GetCharAdvance() directly ()
ocornut 60079988bd ImFont::RenderText() faster handling of rendering above clipping rect (useful for )
ocornut 846cfc74a2 InputText() clear selection when using undo/redo ()
ocornut d30e8f38b7 InputText() tidying up ()
ocornut 8fbb4a566a InputTextMultiline() preserve activeid/cursor/selection when using scrollbar + tidying up ()
ocornut 9180126db6 Speeding up some wchar<>UTF8 functions and some specialization for Ascii. (testing 500 KB text for )
ocornut c06373de93 Cleanup
ocornut d0ea5942a9 InputTextMultiline() can clip + BeginChildFrame() returns bool. ()
ocornut 9c399ee3be Demo for InputTextMultiline() ()
ocornut b0e8643523 Demo for InputTextMultiline() ()
ocornut 490e9e42ff InputText(): shallow tweaks ()
ocornut 5e323561be InputTextMultiline() fixes, vertical scrolling, optimizations ()
Using a child window for multi-line text.
ocornut 3df91b52ea Increased key repeat rate for non-character input key repeat.
Dodgy - we should have a match here for character input and
non-character input (e.g. holding 'a' vs holding 'backspace' should be
same rate), but for the earlier we don't have the info?
ocornut 7dc5228235 InputText: doesn't reset scrolling when active text input becomes bigger than its content. ()
Mostly because it's expensive.
ocornut f75b8c72cf InputTextMultiline(): vertical scrolling wip, selection rendering fix ()
ocornut 417a7bc29b InputTextMultiline(): multi-line selection draw fix ()
ocornut f1dfc4d7c4 InputTextMultiline(): multi-line selection draw fix ()
ocornut 917a1fdbf7 InputText() fixing cancel ()
ocornut 73491e5adc InputText() lifted 1024 characters limit ()
Bit messy & not happy with using ImVector<char>
ocornut 0795a60c6b InputText() fixed multi-line selection clipping. ()
ocornut ec7c1834b3 InputTextMultiline() tabbing to a multi-line edit doesn't select all (unless ImGuiInputTextFlags_AutoSelectAll is set), somehow arbitrary (#
Seems reasonable
ocornut 6d31c498c0 InputText: multi-line selection, better scrolling, cleaning up ()
Not horizontally scrolling on char boundaries anymore
ocornut d06ad43dca ImFont::RenderText() additional early out (typically performed at TextUnformatted() level for large chunks but this is also useful) ()
ocornut 748837acfd Merge remote-tracking branch 'origin' into 2015-06-multiline_textedit
Conflicts:
	imgui.h
ocornut a248575dea Text rendering can be finely clipped cpu-side on top and left axises (for )
ocornut 9765559a28 Merge remote-tracking branch 'origin' into 2015-06-multiline_textedit
Conflicts:
	imgui.cpp
ocornut 34986771b4 Moved InputFloat() InputInt() below InputText() and not in the middle of internal bits
ocornut 0df7b472c2 InputTextMultiline() WIP - still gazillion problems with selection visualisation & scrolling
ocornut b360c83e92 Merge remote-tracking branch 'origin' into 2015-04-indexed-rendering
ocornut 7d860a0181 Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
Conflicts:
	imgui.cpp
ocornut 6eb1fec7a9 ImFont: added GetCharAdvance() helper. Exposed font Ascent and font Descent.
ocornut b503e5ee5b ImageButton() changed default bg_col parameter from (0,0,0,1) black to (0,0,0,0) tranparent + drawing frame even when no padding ()
ocornut 4f0fa58ff2 Selectable() changed prototype moved flags before size. size override should rarely have been used! sorry.
ocornut cf481e1a7b Selectable() added flags ImGuiSelectableFlags_DontClosePopups , ImGuiSelectableFlags_SpanAllColumns ()
ocornut 2bcafc861e SelectableEx - replaced unnecessary extra size_draw parameter by a flag.
ocornut 96496ced5f Metrics windows display storage size
ocornut 039418f393 ColorButton(), ColorEdit4(): colored square stays square, used vertical padding on both axis.
ocornut 6bb06fdb81 Selectable, MenuItem: don't use frame rounding for hovering/selection.
ocornut 3fd4441f70 SetScrollPosHere() fixed imprecisions
ocornut 3ca54ad369 SetScrollPosHere() takes account of item height + more accurate centering
ocornut e8422f7aa0 SetScrollPosHere() rewrote to that window size is not required at the time of calling, can be used on frame 0 of an auto-resizing window
ocornut 8c86322068 Combo() now using the popup facility. More consistent + when combo open hovering other widgets is disabled. ()
ocornut 6f1dd7a688 Allow Set*WindowSize() calls to be used with popups (fix for using e.g. scroll function on the first frame)
ocornut 6807546caf Allow Set*WindowSize() calls to be used with popups.
ocornut 4536668482 Fixed issue with activating a Combo() not taking active id ()
ocornut 20088303e9 ImFont: ignoring \r
ocornut eb75ffdc5d DragFloat(), SliderFloat() Fixed rounding of negative which sometimes made the negative lower range unreachable.
ocornut 0e04dfbad7 Added IsWindowHovered() helper.
ocornut 9928d19af1 Version 1.41 WIP
ocornut 82d4180f39 Bits of TODO list
ocornut 931b8dcdaf Version 1.40
ocornut a76eea85c8 Merge remote-tracking branch 'origin' into 2015-04-indexed-rendering
Conflicts:
	imgui.cpp
ocornut ade7661b3f Merge remote-tracking branch 'origin' into 2015-03-antialiased-primitives
ocornut 8738147aee Windows: pragma link with user32.lib if we are using native clipboard function (unless IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCS)
ocornut 1c2dac2a90 Version increased to 1.40 WIP makes more sense than 1.39 (changelog is huge)
ocornut 04e91500c5 Comments
ocornut 374d160234 BeginPopupContextWindow() in_empty_space_only -> !also_over_items ()+ comments
Sorry if you used this parameter already.
ocornut bda0269133 ListBox() uses ImGuiListClipper helper, faster for large lists, assume evenly sized items.
ocornut eb4ffd5dbd Added ImGuiListClipper helper to avoid using CalcListClipping() directly.
ocornut 446d8abfb0 ListBoxHeader() can return false. Also made ListBox() only use public API.
ocornut df37df821e RetWindowCollapsed() to IsWindowCollapsed() for consistency. Kept inline indirection.
ocornut 0539be7067 Added IMGUI_DISABLE_OBSOLETE_FUNCTIONS
ocornut 03ff2faacb Comments
ocornut 9417df2a26 Renamed IsRectClipped to IsRectVisible for consistency. Note that return value is opposite! Kept inline redirection function (will obsolete)
ocornut 5ea23977f7 Fixed uninitialized fields in constructor - wouldn't have caused a problem (thanks Coverity!)
ocornut f1f3424cdd Popups WantCaptureMouse active when popups/menus are active + using tracked mouse button ownership when mouse down ()
ocornut 73d1126bf4 Examples: OCD tweaks, a sign that we are near the release!
ocornut 448b262b37 Examples: Comments.
ocornut 83770e5e40 Examples: Tweaks. Usnig sprintf() in user-copiable code.
ocornut 0db6bac590 Examples: Tweaks, demo code creating graph data actually creates data at the correct rate.
ocornut 9ace617e7e Examples: Tiding up. Moved Dragging example higher up.
ocornut 616a7e6c61 Examples: Using a helper function for ? markers
ocornut d86785ac98 Examples: Fixed Simple Layout example always showing. Using BeginPopupContextItem().
ocornut 4144c59ce4 Added Simple Layout example applet
ocornut 15a26a479b Fixed auto-filling child window using WindowMinSize at their minimum size, irrelevant. Using an arbitrary small number instead.
ocornut f0781d3a24 Added GetItemsLineHeightWithSpacing() helper.
ocornut aaefe462bb Popups: calling OpenPopup() on already open popup doesn't close it's child ()
Fixed previous commit.
ocornut 78dc54ab3d Popups: calling OpenPopup() on already open popup doesn't close it's child ()
It think it makes more sense? Maybe?
Note that calling OpenPopup() every frame probably doesn't make sense.
ocornut 7847100ad8 Tweak BeginMenu() code
ocornut 733e079081 Moved CloseInactivePopups() and tweaked.
Branimir Karadžić 123fd73c8c Merge remote-tracking branch 'upstream/master'
Branimir Karadžić cd9244ab15 Define STBTT_DEF extern when STBTT not compiled with ImGui.
ocornut dcc7df2b21 Added BeginPopupContextVoid() helper for completeness ()
ocornut 235cca4f97 Fix to allow opening popup from a left-click on void or another window (because left-click would normally override focus immediately) ()
Neither appears to be really useful frankly.
ocornut 1cb6a294b0 BeginPopupContextWindow() rearranged and clarified parameters ()
ocornut b0a9bbf6f6 Popup taking focus deactivate focused widget of other window ()
e.g. focus InputText(), open contextual popup, input text used to stay
focused
ocornut f8b7d5c76d Tracking ActiveIdWindow along with ActiveId
ocornut 938528e5ee Added BeginPopupContextItem() / BeginPopupContextWindow() ()
ocornut 5b0861768e Fixed GetId()/BeginPopup() accessing current window in "append" mode
ocornut 8c4c421f74 Added IsAnyItemHovered() public helper.
ocornut 70f2ff0e5a No minimum size for popups
ocornut 99ff45ad2e Tweak context menu example
ocornut 90db64d4e3 Added context menu example on a DragFloat widget
ocornut 487500d291 Tweaks
ocornut 7d28fe5915 WIP Menus: Reverted f26de46350 for now ()
ocornut d05c1d58c3 Oops
ocornut 405785ea62 ItemWidthStack can be empty, to remove one allocation per window
ocornut 0a7024c198 Store common stacked settings contiguously in memory to reduce cache misses & unnecessary heap allocations
ocornut 3d36c81241 Added PushButtonRepeat() / PopButtonRepeat(). REMOVED third 'repeat_if_held' parameter of Button() !
ocornut d69f2f57ee Added configurable io.KeyRepeatDelay, io.KeyRepeatRate
ocornut 904e187f70 Simplified some widget code, moving alignment to RenderTextClipped()
ocornut 3c264827fd Reordering parameters of internal RenderTextClipped()
ocornut f841097e99 Button centering left to RenderTextClipped function.
ocornut f26de46350 Button() closes active popup () unsure about that
ocornut e6ac9e88aa Refactor Button() and SmallButton() into a shared function ButtonEx()
ocornut 843219daec Spacing + untabify
ocornut 7b8b5754bc EndGroup() carries on the text base offset from the last line of the group (sort of incorrect but better than nothing)
ocornut 6f32684f15 Examples: various usage comments.
ocornut 15113f682e Added TextDisabled(), TextDisabledV() helpers.
ocornut 3a6e6645e6 WIP Menus: Fixed remaining inconsistency with stacks of popups. Activating/closing a menu close the parent popup. Added test case. ()
ocornut 90cf77b191 Merge remote-tracking branch 'origin' into 2015-05-menus
ocornut 6b3ccd3edf WIP Menus: Added support for disabled sub-menu ()
ocornut 0db122bc3b Comments. Examples: added empty if (MenuItem()) {} statements in more places to better document the typical use cases ()
ocornut fdce095101 Comments
ocornut d009a85de4 WIP Menus: Implement amazon's dropdown-like triangle test for navigating sub-menus ()
ocornut 63a39dd08e WIP Menus: Recursive menu demo (). Actually useful to test sub-menu positioning.
ocornut cdb5e16f70 SelectableEx: use flags internally (similar to ButtonBehavior)
ocornut 4eeba016f6 WIP Menus: Closing sub-menu when hovering something else in the same parent window ()
Immediate open/close is error-prone
ocornut 83b10f77a9 Comments
ocornut 98540370a0 WIP Menus: Layout in menu-bar tweaks to lay better when mixed widgets ()
ocornut bb8cdcb916 WIP Menus: Layout in menu-bar more standard, allows mixing different widgets in menubar. ()
Still some minor spacing bugs.
ocornut 83cb040d20 Selectable: text baseline alignment for line that aren't of text height.
ocornut 44ed5640d3 WIP Menus: Sub-menu overlapping amount not hardcoded ()
ocornut 0836f69d9b WIP Menus: Fixed style.WindowPadding == 0 leading to zero-sized initial clipping rectangle leading to self-collapsing childs ()
ocornut 6c749934ec Combo: empty label doesn't add ItemInnerSpacing alignment, matching other widgets
ocornut 9abcbf73cb WIP Menus: Sub-menus appears over the parent-menu scrollbar if there is one (unsure about that) ()
ocornut 63aa035f59 WIP Menus: Fixed estimation of scrollbar width (broke in 292f08b11e) ()
ocornut 8c1d7daef8 WIP Menus: Fixed repositioning of menus when there's no room in the 4 quadrants., we still keep them within the visible display area ()
vs popup which prefer to stay away from the mouse cursor
ocornut 1ab1712849 WIP Menus: Clicking the label of an already open sub-menu doesn't close it unless from a menu-bar (match Windows behavior) ()
Argh,
ocornut 48ede93a58 WIP Menus: Fixed closing popup on menu item activation when a child menu is open from the popup ()
ocornut 53892ab893 WIP Menus: Fixed manually closing submenu affecting position of the following window ()
ocornut 292f08b11e WIP Menus: Fixed some alignment issues with non standard styles. Tweaked menu-bar color ()