Commit Graph

4895 Commits (fcd61e0c5931500299f26afe673e12b527e5960d)
 

Author SHA1 Message Date
omar 280c05e4f8 Fix to allow compiling in unity builds where stb_rectpack/stb_truetype may be already included in the same compilation unit.
omar f13f10e725 Settings: Comments (, )
omar 0bf43b3a1b Settings: Added LoadIniSettingsFromDisk(), LoadIniSettingsFromMemory(), SaveIniSettingsToDisk(), SaveIniSettingsToMemory(), io.WantSaveIniSettings. (, )
omar 023cc25c7c Internals: Removed unnecessary allocation indirection for g.LogClipboard (this only made sense when there was a global context instance)
omar 35e74c72ab imgui_freetype: skip missing glyphs as well to match our stb loader (, )
omar 6eda9ed3fb Skip missing font glyphs V2 revert changes to stb_truetype.h (
omar 787a475650 Skip missing font glyphs to 1) avoid using space for missing glyphs and 2) allow merging fonts with overlapping ranges. Demo: Fixed displaying ? instead of greyed out empty box. (, )
omar 807c4f0ea4 Ran a spell checker for sanity.
omar 4310bad32a Examples: DirectX9: Comments, updated changelog, notes about usage of imconfig.h (, )
SR_team d0051ce5cb add renderstate D3DRS_SHADEMODE for Dx9 impl
add backuping transform for Dx9 impl
(, )
omar 3e8087458d SliderScalar, VSliderScalar(): Support for any data types. Tested with various ranges/limits. Note that Drag/Slider/Input currently fail if the format string doesn't preview the actual value. Will fix next. (, , , )
omar 944f414cc6 Internals: A few selected math helpers are now using template to handle all supported types. Added ImPow() to wrap float/double in a standard manner without calling pow(double) when not needed in Drag code.
omar f4c16fbb99 Internals: Data types: Made format string optional. DragBehavior: Moved a bit of code outside of the template. Slider tidying up. Removed unnecessary call to fabsf().
omar dcd26f1295 DragFloat, DragInt: Default format string is none is passed to the function. Fixed demo using old style %.0f.
omar dbe16b6a70 Made IMGUI_DISABLE_OBSOLETE_FUNCTIONS exceptionally not affect the layout of ImGuiIO. ()
omar f47c756755 Internals: Missing const, some renaming. Tweak legacy fast path.
omar 0699ae161f DragInt, DragScalar: Actually made the fast-past handle the now-most-common case..
omar 7640439747 DragInt: Patch old format strings to replace %f by %d when using the DragInt() entry point. (, , , )
omar 17d3c6305e Ran a spell checker for sanity.
omar 069b284f17 Internals: Tidying up internal helpers. Fixed a case ImParseFormatTrimDecorations() can return an off by one (out of bound) pointer if the format string is invalid. Extracted ImParseFormatFindEnd() out of TrimDecorations so we can use it to find the format type and replace the %f in old Int apis.
omar 086c3925c4 Internals: Fixed DragInt* default format string. InputScalar(), InputScalarN(), removed InputFloatN(), InputInt(). Note that DragInt2/3/4 will %f format strings will currently be broken. (, , , )
omar 6c932479f2 Internal: DragScalar(), InputScalar() now support signed/unsigned, 32/64 bits, float/double data types. (, , , )
omar 93b8580a8d Internals: DragFloat: Fixed power handling. Use an temporary accumulator and no absolute values so we will be able to manipulate double as well as 64-bit integers. (, , )
omar 3f04fd0644 Internals: DragFloat: Removed DragSpeedScaleFast/DragSpeedScaleSlow since it's not yet usable and Nav version doesn't have an equivalent.
omar 4780ac1ca4 Internals: Data types: Added s64, u64 data types. Added support in InputScalar(). Removed internal.h InputScalarEx() to InputScalar(). Removed cheap-relative-operators support in recently added U32 data path, since this is heading toward being legacy code. + Fixed InputDouble parsing code. (, , )
omar d9fa1f869e Comments about using "power curves". Demo tweaks. ()
omar 8a370f6491 SliderFloat: Fixed grab size and steps with %g format. (, )
omar 10e3f17235 DragFloat/SliderFloat internal InputScalar trim leading/trailing spaces emitted from the format string when presenting an edit box to the user. ()
Follow up to 6881d065b8
omar a62f195e83 Internals: Renamed IsCharIsSpace() to IsCharIsBlank*() to match standard terminlogy and added ascii/u16 variations.
omar ef05141a06 Internals: InputScalarEx: Tweak internals so there is a fast path for the simple case.
(in particular because it makes it clear what the extra code is for, so people tempted to create their own InputText data transform/handler understand how little is actually needed)
omar ed756d474e Internals: Added ImGuiDataType_Uint32 data type which is usable with InputScalarEx().
omar 7df985bc5c Nav: Fixed hovering a Selectable() with the mouse so that it update the navigation cursor. Fixed c8b9b2c6 which was incorrect ()
omar a1da7f9860 Internals: Tweaked ParseFormatPrecision(), clarified its more limited purpose, allowing 2-digits precisions since it makes (some) sense for doubles. ()
omar 92f0165f85 DragFloat, SliderFloat: Rounding scalar using the provided format string instead of parsed precision. ()
omar 6881d065b8 DragFloat/SliderFloat internal InputScalar trip trailing decoration off the format string when presenting an edit box to the user. ()
omar d7e24416dd DragFloat/SliderFloat internal InputScalar relies on the user supplied format string to format and parse value. ()
The trailing text after the format will be displayed in the InputText but not affect back parsing. Ideally we can try to strip it later.
omar 429f48bb4f Clarified usage of ListBoxHeader() before we rename those functions + fixed demo code that didn't honor it correctly. ()
omar f2e9dddeca DragDrop: Removed const qualifier from ImGuiPayload 's void* data, easing casting on user side.
Branimir Karadžić d317951b37 Demo: Fixed demo from using obsolete functions.
omar f80314754c InputFloat,InputFloat2,InputFloat3,InputFloat4: Added variations taking a more flexible and consistent optional "const char* format" parameter instead of "int decimal_precision". This allow using custom formats to display values in scientific notation, and is generally more consistent with other API. Obsoleted functions using the optional "int decimal_precision" parameter. ()
omar 73445ff248 Renamed all "display_format" arguments to "format" to emphasis that they also affect rounding of values. (, )
omar 8a38271a7c SliderFloat, DragFloat: Fix to allow input of scientific notation when Ctrl+Clicking a slider or drag, matching the change done in c19b2781 for InputFloat(). (, )
omar 066550de68 DragFloat, DragInt: Cancel mouse tweak when current value is initially past the min/max boundaries and mouse is pushing in the same direction (keyboard/gamepad version already did this).
omar a84aff1875 Internals: DragBehavior: tweaks internals.
omar 1d99b5f963 Internals: Reordered parameters of DataTypeFormatString() internal helper functions and shallow tweaks.
omar 101f9b42b7 InputText: Fixed returning true when edition is cancelled with Esc and the current buffer matches the initial value.
omar 28edece04f Comments, minor tweaks
Bruce Mitchener f8c9c33d33 Fixed static analyzers warnings with bool literals ()
* Use `false` instead of `0` for a bool literal.
* Simplify calls to RadioButton to not need bool literals.
omar 27ac9f4761 Comments ()
omar eb1c36fdfb Added IMGUI_CHECKVERSION() macro to compare version string and data structure sizes in order to catch issues with mismatching compilation unit settings. (, )