Commit Graph

  • f40274702d (Breaking) Fonts: renamed AddCustomRectRegular() -> AddCustomRect(). ocornut 2025-03-31 17:03:03 +0200
  • 253dff7656 Fonts: Comments. ocornut 2025-03-30 16:00:29 +0200
  • fc87081133 Fonts: fixed GetCustomRectUV(). ocornut 2025-03-22 15:15:10 +0100
  • 9324961cd2 Fonts: fixed calling AddFontXXX not invalidating texture for legacy backends. ocornut 2025-03-26 14:38:49 +0100
  • 44498825cd (Breaking) Fonts: PushFont() default to preserve current font size. ocornut 2025-03-21 19:13:23 +0100
  • 168b97c291 Fonts: removed size rounding in AddFont() which breaks relative sizing of merged fonts (8502) ocornut 2025-03-20 15:45:27 +0100
  • 2de15dc64b Fonts: fixed legacy backend path preloading all sources sizes erroneously + failing to use ellipsis. ocornut 2025-03-20 15:44:35 +0100
  • 5460903f96 Fonts: awkwardly alias old TexID name to TexRef using an union (may backtrack and just keep old name) ocornut 2025-03-19 20:12:02 +0100
  • cb4c03756a Fonts: detect if backend assign to texture on creation but doesn't update Status. ocornut 2025-03-19 19:57:03 +0100
  • a548cd9934 Fonts: avoid both ImTextureRef fields being set simultaneously. ocornut 2025-03-19 15:00:13 +0100
  • 0fff7ceda4 Fonts: comments, tweaks, minor amends. ocornut 2025-03-19 14:06:08 +0100
  • e41bf16ff1 Fonts: fixed ImTextureID() being zero-cleared instead of using ImTextureUserID_Invalid. . ocornut 2025-03-18 18:03:40 +0100
  • 8bd1fc4f04 Textures: Added ImTextureRef::GetTexID() mostly for consistency. ocornut 2025-03-17 22:08:58 +0100
  • cc65015e4e Fonts: fixed crashing password fields. ocornut 2025-03-17 17:18:05 +0100
  • 41517bca0c (Breaking) Fonts: renamed CalcCustomRectUV() to GetCustomRectUV() for simplicity. ocornut 2025-03-13 19:14:10 +0100
  • 4048494aa1 Fonts: rename ImFontAtlasBuildClearTexture() to ImFontAtlasBuildClear(). ocornut 2025-03-13 17:28:13 +0100
  • f816b861fc (Breaking) Fonts: rename GetCustomRectByIndex() to GetCustomRect(). Made return struct const. ocornut 2025-03-13 17:10:52 +0100
  • 85d0507580 Fonts: narrowed invalid value for ImFontAtlasRectId to -1 a we will change implementation. ocornut 2025-03-13 16:54:39 +0100
  • b12c42e75d Fonts: change uses of ImFontAtlasRect to ImTextureRect for simplicity. ocornut 2025-03-13 16:50:19 +0100
  • e76cfe5aad Fonts: fixed implicit init when calling AddCustomRectRegular(). LoaderShutdown match BuildDestroy. ocornut 2025-03-13 16:30:20 +0100
  • 7ac1bff482 Fonts: fixed an issue calling legacy ImFontAtlas::Clear(). ocornut 2025-03-11 19:54:33 +0100
  • 144f444217 Fonts: fixed memory leaks, shutting down font loader, and on AddFont() failure in FreeType backend. ocornut 2025-03-11 11:46:18 +0100
  • 52a6863771 Textures: ImTextureData pixels are not immediately destroyed on setting ImTextureStatus_WantDestroy. ocornut 2025-03-10 10:55:29 +0100
  • 8ea0ae454f Fonts: fixed a bug using size specified by secondary font sources. ocornut 2025-03-09 21:36:44 +0100
  • 735d31e54a Demo: Exposed some basic UI in demo for sanity. ocornut 2025-03-06 20:50:00 +0100
  • 41a0e991f0 Fonts: Added UI to edit FreeType loader flags. Added ImFontAtlasBuildReloadAll() / ImFontAtlasBuildReloadFont() ocornut 2025-03-06 20:34:18 +0100
  • 40f988ce2a Fonts: in ShowFontAtlas() preserve open-state for latest texture. Improve debug display. ocornut 2025-03-06 19:57:49 +0100
  • c98e3c0eff Fonts: ImFontConfig::GlyphExcludeRanges is owner and copied. ocornut 2025-03-06 18:39:32 +0100
  • da51485e17 Fonts: Obsolete GetGlyphRangesXXX() functions. Update font documentation. ocornut 2025-03-06 18:15:25 +0100
  • 93410c47e1 Fonts: Fixed various small warnings / build issues. ocornut 2025-03-05 18:42:41 +0100
  • dec8d3863a Fonts: Added a ImFontFlags_NoLoadError flag to let user code try file paths. (3611) ocornut 2025-03-05 20:08:00 +0100
  • 131f5c57ab Textures: Detect when using a texture that's about to be destroyed. ocornut 2025-03-05 17:18:54 +0100
  • 0b71339122 Demo: Add a "Fonts" section for visibility. ocornut 2025-03-05 17:05:24 +0100
  • 161e222322 Fonts: GetFontBaked() default to searching for closest size font. ocornut 2025-03-03 16:14:41 +0100
  • e98a314e06 Textures: Added ImTextureData::UsedRect. ocornut 2025-02-19 15:41:26 +0100
  • 2bf6879dae Fonts: tidying up font scale logic. ocornut 2025-02-19 15:16:19 +0100
  • ef6beaeff6 Fonts: removed LockSingleSrcConfigIdx which isn't needed anymore since we don't load glyphs in ImFontAtlasBuildAddFont(). ocornut 2025-02-10 22:53:33 +0100
  • d8a612f73b Fonts: Fallback glyph is now lazily loaded on demand (yay!). Moving ImFontBaked:: functions outside of class. ocornut 2025-02-10 22:32:09 +0100
  • 78a17038c2 imgui_freetype: no need to store metrics locally. ocornut 2025-02-10 15:09:46 +0100
  • 18c8a93cca Fonts: Rework ImFontLoader signatures. ocornut 2025-02-07 18:48:01 +0100
  • c06a7585a3 Fonts: A font source can specify its own loader/backend. ocornut 2025-02-06 19:31:13 +0100
  • 1cfc0de31d Fonts: Core allocates per-baked-per-src backend buffers, to allow having custom backend per font source. Backend BakedInit/Destroy/AddGlyph process a single source. ocornut 2025-02-06 15:19:23 +0100
  • d59f10d7f5 Fonts: reinstated ImFontAtlasBuildSetupFontCreateEllipsisFromDot() compatible with baked system, lazily baked. ocornut 2025-02-07 15:58:16 +0100
  • 76b252f80a Fonts: Added ImFontAtlasBakedSetFontGlyphBitmap(). ocornut 2025-02-07 14:51:37 +0100
  • 92993e68c8 Fonts: Baked system, fix subsequent sources overriding shared font metrics. ocornut 2025-02-06 13:06:05 +0100
  • dc1320df64 Fonts: ImFontFlags: ImFontFlags_NoLoadGlyphs + add ImFontFlags_LockBakedSizes ocornut 2025-02-06 11:57:30 +0100
  • 8a8d8a7b38 Fonts: Exposed CompactCache(). Hide ClearCache(). ocornut 2025-02-05 18:25:52 +0100
  • eb79e3ab3d Fonts: Restore a functional AddCustomRectFontGlyph(). ocornut 2025-02-05 17:51:46 +0100
  • 815553c4b4 Fonts: ImFontConfig: added GlyphExcludeRanges[]. ocornut 2025-02-05 14:41:59 +0100
  • 96786a183b Fonts: Create a fallback glyph if none is available (fix crash on fonts with no fallback) ocornut 2025-02-05 14:04:05 +0100
  • 066b24d741 Fonts: Fixed _OnChangedTextureID() asserting when calling on e.g. finalized drawlists. ocornut 2025-02-04 20:02:10 +0100
  • 82b81fce68 Fonts: PushFontSize() with -1 uses sources[0]'s size for now (backward compat design) ocornut 2025-02-03 19:36:11 +0100
  • 6580590226 Fonts: Allow PushFont/NewFrame/PopFont idioms to function. ocornut 2025-02-03 19:15:26 +0100
  • 842c313db2 Fonts: Reordered ImFont fields. ocornut 2025-02-07 19:47:41 +0100
  • 99f6b305c1 Fonts: Baked system, v12: support GlyphOffset / GlyphMinAdvanceX / GlyphMaxAdvanceX by scaling from ref value. ocornut 2025-02-03 17:46:59 +0100
  • df694c89b0 Fonts: Baked system, v11. ocornut 2025-02-03 17:16:34 +0100
  • 57d345ff80 Textures: Comments around ImTextureID type. ocornut 2025-01-30 17:49:52 +0100
  • 3ce753c489 Fonts: Debug dump to disk, debug log. ocornut 2025-01-28 14:36:06 +0100
  • be151977ca Fonts: Texture resizing favor growing height, halve pack nodes. ocornut 2025-01-28 14:31:13 +0100
  • daaf0e4ef3 Fonts: Added PushFontSize(), PopFontSize() api. Added font_size param to PushFont() as well. ocornut 2025-01-27 20:24:05 +0100
  • 80404fae30 Fonts: clarify ClearTexData() as not supported with dynamic atlases. ocornut 2025-01-30 16:32:25 +0100
  • 093d01269a Fonts: Baked system, with auto-bind, v10. ocornut 2025-01-23 15:46:22 +0100
  • 7aba8da551 (Breaking) Fonts: CalcWordWrapPositionA() -> CalcWordWrapPosition(), takes size instead of scale as this will be needed. ocornut 2025-01-24 18:10:42 +0100
  • a2371ef90b Internals: added ImStableVector<> helper. ocornut 2025-01-22 20:01:26 +0100
  • fb69a09d6e Fonts: Fixed leak due to indirectly recursing ImFontAtlasPackInit(). ocornut 2025-01-23 12:12:07 +0100
  • c5653d5f34 Fonts: stb_truetype loader: Reworked scale handling to suggest this is not required caching. ocornut 2025-01-20 20:01:21 +0100
  • b203ac1e0d Fonts: Reduced reliance on ImFontConfig::DstFont. ocornut 2025-01-18 15:01:05 +0100
  • 722f6013ff Fonts: Added a bit of user facing tooling. ocornut 2025-01-16 15:41:46 +0100
  • bd19bc5085 Fonts: Removed BuildClearGlyphs(), conflated with ClearOutputData() ocornut 2025-01-16 14:57:33 +0100
  • 2bf6552f2f Fonts: Fixed/improved support for legacy backend. SetTexID() writes into our ImTextureData to keep the indirection, clear TexIsBuilt. ocornut 2025-01-16 11:35:55 +0100
  • ba62becb7d (Breaking) Fonts: remove ImFontAtlasCustomRect which is now the same as ImTextureRect ocornut 2025-01-15 11:53:24 +0100
  • a509790a1c Fonts: Added back support for AddCustomRectFontGlyph() ocornut 2025-01-13 20:33:36 +0100
  • 953ce90d27 Fonts: ImFontAtlasBuildInit() uses the occasion to sync HasTexUpdates from imgui context, narrowing the scope where it isn't set. ocornut 2025-01-13 20:25:16 +0100
  • 288055180e Fonts: Comments, remove ImFontAtlas facing BuildGrowTexture(), BuildCompactTexture(). Make IsBuilt() obsolete. ocornut 2025-01-13 20:03:09 +0100
  • 8ed4e2dde7 Fonts: Basic heuristic to repack instead of growing. Moved rects count/surface to internals. ocornut 2025-01-13 17:56:36 +0100
  • 2137b3448b Textures: Added atlas's TexMinWidth/TexMinHeight/TexMaxWidth/TexMaxHeight. ocornut 2025-01-09 23:04:00 +0100
  • 14614f561b Textures: Ensure UpdateBox is set on texture _WantCreate state too. ocornut 2025-01-09 20:57:20 +0100
  • b06f3c6d1d Fonts: turn public facing BuildRegisterGlyph() into ImFontAtlasBuildAddFontGlyph() thats sets up UV. ocornut 2025-01-09 20:48:50 +0100
  • 4ff1631b31 Fonts: Rasterizing ellipsis character from dot as one glyph + avoid preloading if it not needed. ocornut 2025-01-08 19:07:40 +0100
  • a2bc3d81c2 Fonts: Fixed support for multiple contexts. ocornut 2024-12-27 11:23:22 +0100
  • cec3e945f0 Fonts: added ImFontAtlas::RemoveFont(), fixed various leaks. ocornut 2024-12-19 16:21:07 +0100
  • df8450d928 Fonts: marked ImFontAtlas::Build() as obsolete ocornut 2024-12-20 22:33:11 +0100
  • 4399599de9 Fonts: ClearCache(), ImFontAtlasBuildGetTextureSizeEstimate(), tweak clearing functions. ocornut 2024-12-19 15:21:22 +0100
  • ef1521b472 Fonts: fix for password fields ocornut 2024-12-19 14:40:45 +0100
  • a51a26e2aa Fonts: use a structure for post-processing - easier to pass things around and iterate on. ocornut 2024-12-11 19:21:10 +0100
  • 553b1c301d Fonts: repack without full reload, discard rectangle, fixed CustomRect api with stable id, remove public BuildInit(). ocornut 2024-12-05 18:52:30 +0100
  • a6c7801926 Fonts: Measured and tweaked CalcTextSize() computation to minimize cost in our stress tests. ocornut 2024-12-04 19:26:45 +0100
  • 076a1ab85c Fonts: Misc amends, remove _PackNodesFactor, comments. ocornut 2024-12-04 16:43:46 +0100
  • ac13683c26 Fonts: ImFontAtlas accept DrawListSharedData not being set. ocornut 2024-12-02 21:07:26 +0100
  • 43cc3fc8b1 Fonts: optimization bake FallbackAdvanceX into IndexAdvanceX[]. ocornut 2024-11-29 17:34:52 +0100
  • 4f27792ffe (Breaking) Removed atlas->TexDesiredWidth now unnecessary (github 327) ocornut 2024-11-29 17:22:33 +0100
  • b670f799d5 Fonts: use TexGlyphPadding. Fixed packing issues. Removed old code. ocornut 2024-11-29 15:16:22 +0100
  • 0f553c57bd Fonts: AddFont() actually does the work, so we can handle errors & return an accurate return value. ocornut 2024-11-29 14:28:16 +0100
  • 1269467fa0 imgui_freetype: Removing old code. ocornut 2024-11-28 15:27:17 +0100
  • 08e1e7681e imgui_freetype: Added Freetype implementation for new architecture. ocornut 2024-11-28 15:26:52 +0100
  • 26c017d5ea Backends: Metal: added ImGuiBackendFlags_RendererHasTextures support. thedmd 2024-12-17 00:42:57 +0100
  • ee8941e0de Backends: Allegro5: added ImGuiBackendFlags_RendererHasTextures support. ocornut 2025-01-15 10:38:11 +0100
  • 16fe666e36 Backends: SDLGPU3: added ImGuiBackendFlags_RendererHasTextures support. ocornut 2025-01-16 12:32:56 +0100
  • e538883a20 Backends: SDL_Renderer3: added ImGuiBackendFlags_RendererHasTextures support. ocornut 2024-12-05 15:57:32 +0100
  • 9fa65cd190 Backends: SDL_Renderer2: added ImGuiBackendFlags_RendererHasTextures support. ocornut 2024-12-05 15:52:52 +0100