Commit Graph

63 Commits

Author SHA1 Message Date
Ollie Charles
259ffbff48 Fix DearImGui TOC (#101) 2021-09-13 17:05:49 +00:00
Alexander Bondarenko
24345bb8f3 Add font utils (#56)
- clearFontAtlas
- addFontDefault
- addFontFromFileTTF
- addFontFromMemoryTTF (raw only)
- buildFontAtlas

Vulkan example updated to use on f the imgui-distributed ttf files.
2021-09-12 15:41:42 +00:00
Alexander Bondarenko
e3f7fbfd6f Add imageButton (#97) 2021-09-12 13:20:47 +00:00
Alexander Bondarenko
88326420b8 Tidy up image example (#96) 2021-09-12 11:56:43 +00:00
jpwidera
f3b85899f2 Added image wrapper (#74)
Raw.image and sdl2/gl example "image"

Wrappers should be backend-specific due to different handling of `userTextureIDPtr`.
2021-09-12 10:35:03 +00:00
Alexander Bondarenko
c7a694bce8 Add remaining BeginChild arguments as required (#93)
Old behaviour with all default arguments is a special case to run
some action scoped to a different child window.

This now handled by `beginChildContext`/`withChildContext`.
2021-09-12 10:28:48 +00:00
Alexander Bondarenko
c219f8eb4f Wrap GetCurrentContext and SetCurrentContext (#94) 2021-09-12 10:23:23 +00:00
Alexander Bondarenko
24519778e6 Add inputTextMultiline, inputTextWithHint (#92)
- Experimental explicit encoding for CStrings.
- Fix potential buffer overruns in inputText.
2021-09-12 11:43:44 +03:00
Alexander Bondarenko
4bfc7e7099 Add invisibleButton (#91) 2021-09-11 11:01:03 +00:00
Alexander Bondarenko
efaaa5723a Add Show instances to structs and enums (#90) 2021-09-11 10:40:05 +00:00
Alexander Bondarenko
be7aa1e9b1 Add functions for getting window position and size (#89)
- getWindowPos
- getWindowSize
- getWindowWidth
- getWindowHeight

Closes #88
2021-09-11 10:09:11 +00:00
jpwidera
08b3139477 Remove seg faults (#87)
* Removed double OpenGl3Shutdown, leading to a segmentation fault in Main.hs.
* Changed nullPtr passing with Maybe to use DearImGui default arguments.
2021-09-11 10:00:08 +00:00
Alexander Bondarenko
8d07a5a42b Add more withXXX wrappers (#82)
- withStyleColor
- withStyleVar
- withIndent
- withItemWidth

Closes #63
2021-09-01 17:23:59 +00:00
Alexander Bondarenko
d3a0396623 Add GLFW callbacks (#81)
Closes #80
2021-09-01 19:22:55 +03:00
Alexander Bondarenko
5699f64e95 Bump imgui to 1.84.2 (#78) 2021-08-30 19:57:00 +03:00
Alexander Bondarenko
d7dc999e8b Add withID (#75)
Raw versions are specialized to match overloaded C++ functions.
2021-08-28 15:52:04 +00:00
sheaf
1d6b7cc97b Relax MonadUnliftIO constraint on vulkanInit (#65) 2021-06-20 19:17:58 +00:00
Alexander Bondarenko
dcaad12ca8 Add more drags and sliders (#60)
- DragFloatRange2
- DragInt..4
- DragIntRange2
- DragScalar
- DragScalarN

- SliderAngle
- SliderInt..4
- SliderScalar
- SliderScalarN
- vSliderFloat
- vSliderInt
- vSliderScalar

Scalar sliders expose format and flags arguments.
2021-06-06 19:10:34 +03:00
Alexander Bondarenko
f584319577 Add more text widgets (#59)
- Text replaced with TextUnformatted
- TextColored
- TextDisabled
- TextWrapped
- LabelText
- BulletText
2021-06-05 09:01:48 +00:00
Alexander Bondarenko
6ccee5234b Add withFullscreen and related machinery (#55)
- `fullscreenFlags` available for those who want an alternative
  to `withFullscreen` without reinventing too much.
- Raw.begin got `open` and `flags` arguments.
- Added Raw.setNextWindowFullscreen combo block.
2021-06-04 23:18:16 +03:00
Alexander Bondarenko
5cdce50c3a Add wantCaptureMouse, wantCaptureKeyboard (#54) 2021-05-03 12:57:23 +03:00
Alexander Bondarenko
8723ac2625 Add withXxx and withXxxOpen wrappers for begin/end pairs (#49)
Adds dependency on unliftio for monad-preserving brackets.

Fixes #32
2021-04-18 13:10:20 +03:00
Alexander Bondarenko
5634b6f67d Extract raw C bindings (#44)
The original DearImGui interface hasn't changed.
2021-04-05 20:16:09 +03:00
Alexander Bondarenko
b0337eb084 Update StateVars only when its widget reports a change (#42) 2021-03-12 11:03:54 +00:00
Alexander Bondarenko
2eddbdfa04 Recover init and shutdown from withVulkan (#40) 2021-03-11 09:00:30 +00:00
techmindful
007b3cccb8 Bindings for item widths functions, and text input widget. (#38) 2021-02-21 11:39:17 +00:00
sheaf
d4aec47f4e Handle remaining enums (#36)
This handles the remaining enum types in the headers that aren't in the enums section.

It also automatically handles adding all the enumerations to the inline-c context types table, and a small improvement to the display of parse error messages.
2021-02-07 23:07:14 +00:00
Ollie Charles
f9412effde Wrap the OpenGL 3 backend (#20) 2021-02-06 14:44:58 +00:00
sheaf
ac74572121 Add tab bar functions (#30) 2021-02-06 13:26:28 +00:00
sheaf
860720e7c2 Define types for use in ImGui Context (#31)
Just doing a little cleanup:

* some functions were not exported,
* some functions were missing the initial | for their documentation,
* add types to the ImGui Context instead of coercing to int. This is more robust, in case upstream changes any of the larger enums to be 64 bits instead of 32 for instance
2021-02-06 10:17:37 +00:00
Tim Pierson
de0e87612c Add setNextWindow functions, pushColor, pushStyle, indent-related functions (#27) 2021-02-05 23:46:48 +00:00
Shaun Sharples
d7686f84e4 Add support for GLFW (#26)
Co-authored-by: Oliver Charles <ollie@ocharles.org.uk>
2021-02-05 21:44:52 +00:00
Shaun Sharples
643d2ea5b7 Add combo to wrap ImGUI::Combo() (#28)
Co-authored-by: Oliver Charles <ollie@ocharles.org.uk>
2021-02-05 21:20:32 +00:00
sheaf
895f5c1926 Parse enums from headers & generate code (#19) 2021-02-05 20:57:17 +00:00
Ollie Charles
af49a7b3fb Wrap ImGui::ListBox() (#25) 2021-01-28 23:38:59 +00:00
Ollie Charles
bb82e87553 Wrap ImGui::TreeNode, TreePush, TreePop (#24) 2021-01-28 23:28:45 +00:00
Ollie Charles
24903ce76f Implement ImGui::DragFloat{,2,3,4} (#23) 2021-01-28 23:10:58 +00:00
Ollie Charles
f24a4b78ab Implement ImGui::SliderFloat2,3,4 (#22) 2021-01-28 23:02:04 +00:00
Ollie Charles
63bb63a32e Wrap ImGui::BeginChild and EndChild (#21) 2021-01-28 22:38:25 +00:00
sheaf
0b86356a49 Vulkan backend (#2)
This commit adds the Vulkan backend and SDL2 integration, and provides the `vulkan` example project.
2021-01-26 20:45:21 +00:00
sheaf
d227561885 Return Bool when appropriate (#11)
I also updated the main functions to use (/=0) instead of (==1).
2021-01-26 11:35:09 +00:00
sheaf
e4b75e355f Add pollEventsWithImGui (#13) 2021-01-26 11:23:05 +00:00
Tristan de Cacqueray
2fbe257c24 Wrap ImGui::SliderFloat() (#9)
Co-authored-by: Ollie Charles <ollie@ocharles.org.uk>
2021-01-25 19:04:43 +00:00
o1lo01ol1o
f632e99500 add string formatter 2021-01-25 13:39:23 +00:00
Oliver Charles
c41eae7817 Fix documentation of colorButton 2021-01-25 09:12:10 +00:00
Oliver Charles
4586f30eb2 Wrap @ImGui::ColorPicker3()@ 2021-01-25 09:11:46 +00:00
Oliver Charles
774ef945e6 Fixes for DearImGui.Context 2021-01-25 08:55:47 +00:00
Oliver Charles
d382b6460f Stubbing out ImGui::ColorButton() and ImVec4 2021-01-24 20:46:01 +00:00
Oliver Charles
ecab9d37a2 Basic wrapper for plotHistogram 2021-01-24 20:27:28 +00:00
sheaf
bbef66b202 add cabal flags for backend selection 2021-01-24 19:06:36 +00:00