Fix broken doc links in the demo app widget gallery (#3441)

* Closes <https://github.com/emilk/egui/issues/3439>
This commit is contained in:
YgorSouza 2023-11-10 21:39:49 +01:00 committed by GitHub
parent 5f4046d68a
commit 59b4eff83d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 18 additions and 9 deletions

View File

@ -109,7 +109,7 @@ impl WidgetGallery {
date, date,
} = self; } = self;
ui.add(doc_link_label("Label", "label,heading")); ui.add(doc_link_label("Label", "label"));
ui.label("Welcome to the widget gallery!"); ui.label("Welcome to the widget gallery!");
ui.end_row(); ui.end_row();
@ -121,7 +121,7 @@ impl WidgetGallery {
); );
ui.end_row(); ui.end_row();
ui.add(doc_link_label("TextEdit", "TextEdit,text_edit")); ui.add(doc_link_label("TextEdit", "TextEdit"));
ui.add(egui::TextEdit::singleline(string).hint_text("Write something here")); ui.add(egui::TextEdit::singleline(string).hint_text("Write something here"));
ui.end_row(); ui.end_row();
@ -149,10 +149,7 @@ impl WidgetGallery {
}); });
ui.end_row(); ui.end_row();
ui.add(doc_link_label( ui.add(doc_link_label("SelectableLabel", "SelectableLabel"));
"SelectableLabel",
"selectable_value,SelectableLabel",
));
ui.horizontal(|ui| { ui.horizontal(|ui| {
ui.selectable_value(radio, Enum::First, "First"); ui.selectable_value(radio, Enum::First, "First");
ui.selectable_value(radio, Enum::Second, "Second"); ui.selectable_value(radio, Enum::Second, "Second");
@ -216,7 +213,11 @@ impl WidgetGallery {
#[cfg(feature = "chrono")] #[cfg(feature = "chrono")]
{ {
let date = date.get_or_insert_with(|| chrono::offset::Utc::now().date_naive()); let date = date.get_or_insert_with(|| chrono::offset::Utc::now().date_naive());
ui.add(doc_link_label("DatePickerButton", "DatePickerButton")); ui.add(doc_link_label_with_crate(
"egui_extras",
"DatePickerButton",
"DatePickerButton",
));
ui.add(egui_extras::DatePickerButton::new(date)); ui.add(egui_extras::DatePickerButton::new(date));
ui.end_row(); ui.end_row();
} }
@ -237,7 +238,7 @@ impl WidgetGallery {
}); });
ui.end_row(); ui.end_row();
ui.add(doc_link_label("Plot", "plot")); ui.add(doc_link_label_with_crate("egui_plot", "Plot", "plot"));
example_plot(ui); example_plot(ui);
ui.end_row(); ui.end_row();
@ -273,8 +274,16 @@ fn example_plot(ui: &mut egui::Ui) -> egui::Response {
} }
fn doc_link_label<'a>(title: &'a str, search_term: &'a str) -> impl egui::Widget + 'a { fn doc_link_label<'a>(title: &'a str, search_term: &'a str) -> impl egui::Widget + 'a {
doc_link_label_with_crate("egui", title, search_term)
}
fn doc_link_label_with_crate<'a>(
crate_name: &'a str,
title: &'a str,
search_term: &'a str,
) -> impl egui::Widget + 'a {
let label = format!("{title}:"); let label = format!("{title}:");
let url = format!("https://docs.rs/egui?search={search_term}"); let url = format!("https://docs.rs/{crate_name}?search={search_term}");
move |ui: &mut egui::Ui| { move |ui: &mut egui::Ui| {
ui.hyperlink_to(label, url).on_hover_ui(|ui| { ui.hyperlink_to(label, url).on_hover_ui(|ui| {
ui.horizontal_wrapped(|ui| { ui.horizontal_wrapped(|ui| {