Skip to content

Commit e4fa348

Browse files
committed
doc / add implot3D
1 parent a55802f commit e4fa348

17 files changed

+120
-66
lines changed

bindings/imgui_bundle/Readme_pypi.md

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -133,38 +133,46 @@ alt="battery implot" /></p></td>
133133
</tr>
134134
<tr class="odd">
135135
<td style="text-align: left;"><p><a
136+
href="https://github.com/brenocq/implot3d">ImPlot3D</a>: Immediate Mode
137+
3D Plotting</p></td>
138+
<td style="text-align: left;"><p><img
139+
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/battery_implot3d.jpg"
140+
alt="battery implot3d" /></p></td>
141+
</tr>
142+
<tr class="even">
143+
<td style="text-align: left;"><p><a
136144
href="https://github.com/CedricGuillemet/ImGuizmo.git">ImGuizmo</a>:
137145
Immediate mode 3D gizmo for scene editing and other controls based on
138146
Dear ImGui</p></td>
139147
<td style="text-align: left;"><p><img
140148
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_gizmo.jpg"
141149
alt="demo gizmo" /></p></td>
142150
</tr>
143-
<tr class="even">
151+
<tr class="odd">
144152
<td style="text-align: left;"><p><a
145153
href="https://github.com/BalazsJako/ImGuiColorTextEdit">ImGuiColorTextEdit</a>:
146154
Colorizing text editor for ImGui</p></td>
147155
<td style="text-align: left;"><p><img
148156
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_widgets_editor.jpg"
149157
alt="demo widgets editor" /></p></td>
150158
</tr>
151-
<tr class="odd">
159+
<tr class="even">
152160
<td style="text-align: left;"><p><a
153161
href="https://github.com/thedmd/imgui-node-editor">imgui-node-editor</a>:
154162
Node Editor built using Dear ImGui</p></td>
155163
<td style="text-align: left;"><p><img
156164
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_node_editor.jpg"
157165
alt="demo node editor" /></p></td>
158166
</tr>
159-
<tr class="even">
167+
<tr class="odd">
160168
<td style="text-align: left;"><p><a
161169
href="https://github.com/mekhontsev/imgui_md.git">imgui_md</a>: Markdown
162170
renderer for Dear ImGui using MD4C parser</p></td>
163171
<td style="text-align: left;"><p><img
164172
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_widgets_md.jpg"
165173
alt="demo widgets md" /></p></td>
166174
</tr>
167-
<tr class="odd">
175+
<tr class="even">
168176
<td style="text-align: left;"><p><a
169177
href="https://github.com/pthom/immvision.git">ImmVision</a>: Immediate
170178
image debugger and insights</p></td>
@@ -174,7 +182,7 @@ alt="demo immvision process 1" /> <img
174182
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_immvision_process_2.jpg"
175183
alt="demo immvision process 2" /></p></td>
176184
</tr>
177-
<tr class="even">
185+
<tr class="odd">
178186
<td style="text-align: left;"><p><a
179187
href="https://github.com/memononen/nanovg">NanoVG</a>: Antialiased 2D
180188
vector drawing library on top of OpenGL for UI and
@@ -183,63 +191,63 @@ visualizations</p></td>
183191
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/nanovg_full_demo.jpg"
184192
alt="nanovg full demo" /></p></td>
185193
</tr>
186-
<tr class="odd">
194+
<tr class="even">
187195
<td style="text-align: left;"><p><a
188196
href="https://github.com/andyborrell/imgui_tex_inspect">imgui_tex_inspect</a>:
189197
A texture inspector tool for Dear ImGui</p></td>
190198
<td style="text-align: left;"><p><img
191199
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_imgui_tex_inspector.jpg"
192200
alt="demo imgui tex inspector" /></p></td>
193201
</tr>
194-
<tr class="even">
202+
<tr class="odd">
195203
<td style="text-align: left;"><p><a
196204
href="https://github.com/pthom/ImFileDialog.git">ImFileDialog</a>: A
197205
file dialog library for Dear ImGui</p></td>
198206
<td style="text-align: left;"><p><img
199207
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_widgets_imfiledialog.jpg"
200208
alt="demo widgets imfiledialog" /></p></td>
201209
</tr>
202-
<tr class="odd">
210+
<tr class="even">
203211
<td style="text-align: left;"><p><a
204212
href="https://github.com/samhocevar/portable-file-dialogs">portable-file-dialogs</a>
205213
<em>OS native</em> file dialogs library (C++11, single-header)</p></td>
206214
<td style="text-align: left;"><p><img
207215
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_widgets_portablefiledialogs.jpg"
208216
alt="demo widgets portablefiledialogs" /></p></td>
209217
</tr>
210-
<tr class="even">
218+
<tr class="odd">
211219
<td style="text-align: left;"><p><a
212220
href="https://github.com/altschuler/imgui-knobs">imgui-knobs</a>: Knobs
213221
widgets for ImGui</p></td>
214222
<td style="text-align: left;"><p><img
215223
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_widgets_knobs.jpg"
216224
alt="demo widgets knobs" /></p></td>
217225
</tr>
218-
<tr class="odd">
226+
<tr class="even">
219227
<td style="text-align: left;"><p><a
220228
href="https://github.com/dalerank/imspinner">imspinner</a>: Set of nice
221229
spinners for imgui</p></td>
222230
<td style="text-align: left;"><p><img
223231
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_widgets_spinners.jpg"
224232
alt="demo widgets spinners" /></p></td>
225233
</tr>
226-
<tr class="even">
234+
<tr class="odd">
227235
<td style="text-align: left;"><p><a
228236
href="https://github.com/cmdwtf/imgui_toggle">imgui_toggle</a>: A toggle
229237
switch widget for Dear ImGui</p></td>
230238
<td style="text-align: left;"><p><img
231239
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_widgets_toggle.jpg"
232240
alt="demo widgets toggle" /></p></td>
233241
</tr>
234-
<tr class="odd">
242+
<tr class="even">
235243
<td style="text-align: left;"><p><a
236244
href="https://github.com/aiekick/ImCoolBar">ImCoolBar</a>: A Cool bar
237245
for Dear ImGui</p></td>
238246
<td style="text-align: left;"><p><img
239247
src="https://raw.githubusercontent.com/pthom/imgui_bundle/main/bindings/imgui_bundle/doc/doc_images/demo_widgets_coolbar.jpg"
240248
alt="demo widgets coolbar" /></p></td>
241249
</tr>
242-
<tr class="even">
250+
<tr class="odd">
243251
<td style="text-align: left;"><p><a
244252
href="https://github.com/hnOsmium0001/imgui-command-palette.git">imgui-command-palette</a>:
245253
A Sublime Text or VSCode style command palette in ImGui</p></td>

bindings/imgui_bundle/doc/Readme.adoc

Lines changed: 41 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -249,6 +249,9 @@ Dear ImGui Bundle includes the following libraries, which are available in {cpp}
249249
|https://github.com/epezent/implot[ImPlot]: Immediate Mode Plotting
250250
|image:{url-demo-images}/battery_implot.jpg[width=200]
251251

252+
|https://github.com/brenocq/implot3d[ImPlot3D]: Immediate Mode 3D Plotting
253+
|image:{url-demo-images}/battery_implot3d.jpg[width=200]
254+
252255

253256
|https://github.com/CedricGuillemet/ImGuizmo.git[ImGuizmo]: Immediate mode 3D gizmo for scene editing and other controls based on Dear ImGui
254257
|image:{url-demo-images}/demo_gizmo.jpg[width=200]
@@ -757,11 +760,9 @@ void LoadFonts(AppState& appState) // This is called by runnerParams.callbacks.L
757760
HelloImGui::ImGuiDefaultSettings::LoadDefaultFont_WithFontAwesomeIcons();
758761
759762
// Load the title font. Also manually merge FontAwesome icons to it
760-
appState.TitleFont = HelloImGui::LoadFont("fonts/DroidSans.ttf", 18.f);
761763
HelloImGui::FontLoadingParams fontLoadingParamsTitleIcons;
762-
fontLoadingParamsTitleIcons.mergeToLastFont = true;
763-
fontLoadingParamsTitleIcons.useFullGlyphRange = true;
764-
appState.TitleFont = HelloImGui::LoadFont("fonts/Font_Awesome_6_Free-Solid-900.otf", 18.f, fontLoadingParamsTitleIcons);
764+
fontLoadingParamsTitleIcons.mergeFontAwesome = true;
765+
appState.TitleFont = HelloImGui::LoadFont("fonts/Roboto/Roboto-BoldItalic.ttf", 18.f, fontLoadingParamsTitleIcons);
765766
766767
// Load an Emoji font
767768
HelloImGui::FontLoadingParams fontLoadingParamsEmoji;
@@ -1130,7 +1131,7 @@ void DemoAssets(AppState& appState)
11301131
11311132
void DemoFonts(AppState& appState)
11321133
{
1133-
ImGui::PushFont(appState.TitleFont); ImGui::Text("Fonts - " ICON_FA_PEN_NIB); ImGui::PopFont();
1134+
ImGui::PushFont(appState.TitleFont); ImGui::Text("Fonts - " ICON_FA_ROCKET); ImGui::PopFont();
11341135
11351136
ImGui::TextWrapped("Mix icons " ICON_FA_FACE_SMILE " and text " ICON_FA_ROCKET "");
11361137
if (ImGui::IsItemHovered())
@@ -1707,12 +1708,10 @@ def load_fonts(app_state: AppState): # This is called by runnerParams.callbacks
17071708
hello_imgui.imgui_default_settings.load_default_font_with_font_awesome_icons()
17081709
17091710
# Load the title font
1710-
app_state.title_font = hello_imgui.load_font("fonts/DroidSans.ttf", 18.0)
1711+
# app_state.title_font = hello_imgui.load_font("fonts/DroidSans.ttf", 18.0)
17111712
font_loading_params_title_icons = hello_imgui.FontLoadingParams()
1712-
font_loading_params_title_icons.merge_to_last_font = True
1713-
font_loading_params_title_icons.use_full_glyph_range = True
1714-
app_state.title_font = hello_imgui.load_font("fonts/Font_Awesome_6_Free-Solid-900.otf",
1715-
18.0, font_loading_params_title_icons)
1713+
font_loading_params_title_icons.merge_font_awesome = True
1714+
app_state.title_font = hello_imgui.load_font("fonts/Roboto/Roboto-BoldItalic.ttf", 18, font_loading_params_title_icons)
17161715
17171716
# Load the emoji font
17181717
font_loading_params_emoji = hello_imgui.FontLoadingParams()
@@ -2112,7 +2111,7 @@ def demo_assets(app_state: AppState):
21122111
21132112
def demo_fonts(app_state: AppState):
21142113
imgui.push_font(app_state.title_font)
2115-
imgui.text("Fonts - " + icons_fontawesome_6.ICON_FA_PEN_NIB)
2114+
imgui.text("Fonts - " + icons_fontawesome_6.ICON_FA_ROCKET)
21162115
imgui.pop_font()
21172116
21182117
imgui.text_wrapped("Mix icons " + icons_fontawesome_6.ICON_FA_FACE_SMILE + " and text " + icons_fontawesome_6.ICON_FA_ROCKET)
@@ -2655,7 +2654,7 @@ NOTE: See link:https://github.com/ocornut/imgui_test_engine/blob/main/imgui_test
26552654
{cpp}
26562655
[source, cpp]
26572656
----
2658-
#ifdef IMGUI_BUNDLE_WITH_TEST_ENGINE
2657+
#ifdef HELLOIMGUI_WITH_TEST_ENGINE
26592658
// A demo app that demonstrates how to use ImGui Test Engine (https://github.com/ocornut/imgui_test_engine)
26602659
//
26612660
// It demonstrates how to:
@@ -2901,9 +2900,9 @@ void ApplyApplicationLayout(HelloImGui::RunnerParams* runnerParams)
29012900
runnerParams->dockingParams.dockableWindows = CreateDockableWindows();
29022901
runnerParams->dockingParams.layoutCondition = HelloImGui::DockingLayoutCondition::ApplicationStart;
29032902
}
2904-
#else
2903+
#else // #ifdef HELLOIMGUI_WITH_TEST_ENGINE
29052904
int main(int, const char**) {}
2906-
#endif // #ifdef IMGUI_BUNDLE_WITH_TEST_ENGINE
2905+
#endif // #ifdef HELLOIMGUI_WITH_TEST_ENGINE
29072906
----
29082907
====
29092908

@@ -3601,6 +3600,7 @@ link:https://traineq.org/ImGuiBundle/emscripten/bin/demo_widgets.html[Try these
36013600
----
36023601
// Part of ImGui Bundle - MIT License - Copyright (c) 2022-2024 Pascal Thomet - https://github.com/pthom/imgui_bundle
36033602
#include "hello_imgui/hello_imgui.h"
3603+
#include "hello_imgui/icons_font_awesome_4.h"
36043604
#include "imspinner/imspinner.h"
36053605
#include "imgui_toggle/imgui_toggle.h"
36063606
#include "imgui_toggle/imgui_toggle_presets.h"
@@ -3899,9 +3899,18 @@ void DemoImFileDialog()
38993899
39003900
ImGuiMd::RenderUnindented(R"(
39013901
# ImFileDialog
3902-
[ImFileDialog](https://github.com/pthom/ImFileDialog.git) provides file dialogs for ImGui, with images preview.
3903-
*Not (yet) adapted for High DPI resolution under windows*
3902+
[ImFileDialog](https://github.com/pthom/ImFileDialog.git) provides file dialogs for ImGui.
39043903
)");
3904+
ImGui::SameLine();
3905+
ImGui::Text(ICON_FA_EXCLAMATION_TRIANGLE);
3906+
ImGui::SetItemTooltip(
3907+
"It is advised to use Portable File Dialogs instead, which offer native dialogs on each platform, "
3908+
"as well as notifications and messages.\n\n"
3909+
"Known limitations of ImFileDialog:\n"
3910+
" * Not adapted for High DPI resolution under windows\n"
3911+
" * No support for multi-selection\n"
3912+
" * Will not work under python with a pure python backend (requires to use `immapp.run()`)"
3913+
);
39053914
39063915
if (ImGui::Button("Open file"))
39073916
ifd::FileDialog::Instance().Open(
@@ -4094,6 +4103,7 @@ from imgui_bundle import (
40944103
immapp,
40954104
ImVec4,
40964105
im_cool_bar,
4106+
icons_fontawesome,
40974107
)
40984108
from imgui_bundle import imgui_command_palette as imcmd
40994109
from imgui_bundle import portable_file_dialogs as pfd
@@ -4355,14 +4365,24 @@ def demo_imfile_dialog():
43554365
if not has_submodule("im_file_dialog"):
43564366
return
43574367
from imgui_bundle import im_file_dialog as ifd
4358-
43594368
imgui_md.render_unindented(
43604369
"""
43614370
# ImFileDialog
4362-
[ImFileDialog](https://github.com/pthom/ImFileDialog.git) provides file dialogs for ImGui, with images preview.
4363-
*Not (yet) adapted for High DPI resolution under windows*
4371+
[ImFileDialog](https://github.com/pthom/ImFileDialog.git) provides file dialogs for ImGui.
43644372
"""
43654373
)
4374+
# Warning / low support
4375+
imgui.same_line()
4376+
imgui.text(icons_fontawesome.ICON_FA_EXCLAMATION_TRIANGLE)
4377+
imgui.set_item_tooltip("""
4378+
It is advised to use Portable File Dialogs instead, which offer native dialogs on each platform,
4379+
as well as notifications and messages.
4380+
4381+
Known limitations of ImFileDialog:
4382+
* Not adapted for High DPI resolution under windows
4383+
* No support for multi-selection
4384+
* Will not work under python with a pure python backend (requires to use `immapp.run()`)
4385+
""")
43664386
43674387
if imgui.button("Open file"):
43684388
ifd.FileDialog.instance().open(
@@ -6162,9 +6182,10 @@ if __name__ == "__main__":
61626182
61636183
from imgui_bundle.python_backends.glfw_backend import GlfwRenderer
61646184
import OpenGL.GL as gl # type: ignore
6185+
# When using a pure python backend, prefer to import glfw before imgui_bundle (so that you end up using the standard glfw, not the one provided by imgui_bundle)
6186+
import glfw # type: ignore
61656187
from imgui_bundle import imgui, imgui_ctx
61666188
from imgui_bundle import imgui_md
6167-
import glfw # type: ignore
61686189
import sys
61696190
61706191
85 KB
Loading

bindings/imgui_bundle/doc/doc_parts/intro_batteries_included.adoc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ Dear ImGui Bundle includes the following libraries, which are available in {cpp}
1616
|https://github.com/epezent/implot[ImPlot]: Immediate Mode Plotting
1717
|image:{url-demo-images}/battery_implot.jpg[width=200]
1818

19+
|https://github.com/brenocq/implot3d[ImPlot3D]: Immediate Mode 3D Plotting
20+
|image:{url-demo-images}/battery_implot3d.jpg[width=200]
21+
1922

2023
|https://github.com/CedricGuillemet/ImGuizmo.git[ImGuizmo]: Immediate mode 3D gizmo for scene editing and other controls based on Dear ImGui
2124
|image:{url-demo-images}/demo_gizmo.jpg[width=200]

docs/assets_about.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1274,7 +1274,7 @@ <h4 id="_app_settings">App settings</h4>
12741274
</div>
12751275
<div id="footer">
12761276
<div id="footer-text">
1277-
Last updated 2024-11-24 13:30:59 +0100
1277+
Last updated 2025-01-02 15:11:02 +0100
12781278
</div>
12791279
</div>
12801280
</body>

docs/cpp_specific.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -539,7 +539,7 @@ <h3 id="_debug_native_c_in_python_scripts">Debug native C&#43;&#43; in python sc
539539
</div>
540540
<div id="footer">
541541
<div id="footer-text">
542-
Last updated 2024-11-24 13:30:59 +0100
542+
Last updated 2025-01-02 15:11:02 +0100
543543
</div>
544544
</div>
545545
</body>

docs/devel_docs.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -674,7 +674,7 @@ <h3 id="folders">Repository folders structure</h3>
674674
</div>
675675
<div id="footer">
676676
<div id="footer-text">
677-
Last updated 2024-11-24 13:30:59 +0100
677+
Last updated 2025-01-02 15:11:02 +0100
678678
</div>
679679
</div>
680680
</body>

docs/faq.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -819,7 +819,7 @@ <h4 id="_windows_linux_adapting_windows_and_font_size_when_application_is_moved_
819819
</div>
820820
<div id="footer">
821821
<div id="footer-text">
822-
Last updated 2024-11-24 13:30:59 +0100
822+
Last updated 2025-01-02 15:11:02 +0100
823823
</div>
824824
</div>
825825
</body>

docs/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -695,7 +695,7 @@ <h1>Dear ImGui Bundle</h1>
695695
</div>
696696
<div id="footer">
697697
<div id="footer-text">
698-
Last updated 2024-11-24 13:30:59 +0100
698+
Last updated 2025-01-02 15:11:02 +0100
699699
</div>
700700
</div>
701701
</body>

docs/install_cpp.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -638,7 +638,7 @@ <h3 id="_run_the_c_demo">Run the C&#43;&#43; demo</h3>
638638
</div>
639639
<div id="footer">
640640
<div id="footer-text">
641-
Last updated 2024-11-24 13:30:59 +0100
641+
Last updated 2025-01-02 15:11:02 +0100
642642
</div>
643643
</div>
644644
</body>

0 commit comments

Comments
 (0)