hint gaming
This commit is contained in:
33
src/bin/client/ui/misc.rs
Normal file
33
src/bin/client/ui/misc.rs
Normal file
@@ -0,0 +1,33 @@
|
||||
use super::*;
|
||||
|
||||
pub fn error(ui: &mut Ui, msg: &str) -> WidgetId {
|
||||
text(msg)
|
||||
.size(20)
|
||||
.color(Color::RED.brighter(0.3))
|
||||
.pad(10)
|
||||
.add(ui)
|
||||
.any()
|
||||
}
|
||||
|
||||
pub fn focus(id: WidgetId<TextEdit>, client: &mut Client, data: CursorData) {
|
||||
client.ui.text(&id).select(data.cursor, data.size);
|
||||
if let Some(region) = client.ui.window_region(&id) {
|
||||
client.handle.window.set_ime_allowed(true);
|
||||
client.handle.window.set_ime_cursor_area(
|
||||
LogicalPosition::<f32>::from(region.top_left.tuple()),
|
||||
LogicalSize::<f32>::from(region.size().tuple()),
|
||||
);
|
||||
}
|
||||
client.focus = Some(id);
|
||||
}
|
||||
|
||||
pub fn focus_other(id: WidgetId<TextEdit>) -> impl Fn(&mut Client, CursorData) {
|
||||
move |client: &mut Client, data: CursorData| {
|
||||
focus(id.clone(), client, data);
|
||||
}
|
||||
}
|
||||
|
||||
pub fn hint(msg: impl Into<String>) -> TextBuilder {
|
||||
text(msg).size(20).color(Color::GRAY)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user