egui development is sponsored by [Rerun](https://www.rerun.io/), a startup doing
visualizations for computer vision and robotics.
@@ -405,7 +405,7 @@ Default fonts:
---
-

+

egui development is sponsored by [Rerun](https://www.rerun.io/), a startup doing
visualizations for computer vision and robotics.
diff --git a/crates/egui/src/lib.rs b/crates/egui/src/lib.rs
index dc500516..e26e2625 100644
--- a/crates/egui/src/lib.rs
+++ b/crates/egui/src/lib.rs
@@ -163,7 +163,14 @@
//!
//! # Understanding immediate mode
//!
-//! `egui` is an immediate mode GUI library. It is useful to fully grok what "immediate mode" implies.
+//! `egui` is an immediate mode GUI library.
+//!
+//! Immediate mode has its roots in gaming, where everything on the screen is painted at the
+//! display refresh rate, i.e. at 60+ frames per second.
+//! In immediate mode GUIs, the entire interface is laid out and painted at the same high rate.
+//! This makes immediate mode GUIs especially well suited for highly interactive applications.
+//!
+//! It is useful to fully grok what "immediate mode" implies.
//!
//! Here is an example to illustrate it:
//!
@@ -198,7 +205,7 @@
//! # });
//! ```
//!
-//! Here egui will read `value` to display the slider, then look if the mouse is dragging the slider and if so change the `value`.
+//! Here egui will read `value` (an `f32`) to display the slider, then look if the mouse is dragging the slider and if so change the `value`.
//! Note that `egui` does not store the slider value for you - it only displays the current value, and changes it
//! by how much the slider has been dragged in the previous few milliseconds.
//! This means it is responsibility of the egui user to store the state (`value`) so that it persists between frames.
diff --git a/crates/egui_demo_lib/src/demo/about.rs b/crates/egui_demo_lib/src/demo/about.rs
index 57cbcd0c..434c7301 100644
--- a/crates/egui_demo_lib/src/demo/about.rs
+++ b/crates/egui_demo_lib/src/demo/about.rs
@@ -41,6 +41,15 @@ impl super::View for About {
ui.add_space(12.0); // ui.separator();
ui.heading("Links");
links(ui);
+
+ ui.add_space(12.0);
+
+ ui.horizontal_wrapped(|ui| {
+ ui.spacing_mut().item_spacing.x = 0.0;
+ ui.label("egui development is sponsored by ");
+ ui.hyperlink_to("Rerun.io", "https://www.rerun.io/");
+ ui.label(", a startup doing visualizations for computer vision and robotics.");
+ });
}
}
@@ -65,15 +74,10 @@ fn about_immediate_mode(ui: &mut egui::Ui) {
);
ui.add_space(8.0);
- ui.label("Note how there are no callbacks or messages, and no button state to store.");
-
- ui.label("Immediate mode has its roots in gaming, where everything on the screen is painted at the display refresh rate, i.e. at 60+ frames per second. \
- In immediate mode GUIs, the entire interface is laid out and painted at the same high rate. \
- This makes immediate mode GUIs especially well suited for highly interactive applications.");
-
ui.horizontal_wrapped(|ui| {
ui.spacing_mut().item_spacing.x = 0.0;
- ui.label("More about immediate mode ");
+ ui.label("There are no callbacks or messages, and no button state to store. ");
+ ui.label("Read more about immediate mode ");
ui.hyperlink_to("here", "https://github.com/emilk/egui#why-immediate-mode");
ui.label(".");
});
diff --git a/media/rerun_io_logo.png b/media/rerun_io_logo.png
index 6af3db83..4a5f70ae 100644
Binary files a/media/rerun_io_logo.png and b/media/rerun_io_logo.png differ