feat: filter method cycling
it doesn't work :(
This commit is contained in:
parent
da1e64d898
commit
01f74bdf85
1 changed files with 11 additions and 4 deletions
|
|
@ -42,6 +42,8 @@ enum Message {
|
|||
struct State {
|
||||
images: BTreeMap<PathBuf, MaybeImage>,
|
||||
|
||||
filter: widget::image::FilterMethod,
|
||||
|
||||
columns: usize,
|
||||
|
||||
key: usize,
|
||||
|
|
@ -53,10 +55,8 @@ impl State {
|
|||
fn new() -> (Self, Task<Message>) {
|
||||
(
|
||||
Self {
|
||||
images: BTreeMap::new(),
|
||||
columns: 3,
|
||||
key: 0,
|
||||
error: None,
|
||||
..Default::default()
|
||||
},
|
||||
Task::done(Message::OpenPath(Some(
|
||||
env::args()
|
||||
|
|
@ -178,6 +178,13 @@ impl State {
|
|||
self.columns = (self.columns - 1).clamp(1, 10)
|
||||
}
|
||||
|
||||
keyboard::Key::Character("f") => {
|
||||
self.filter = match self.filter {
|
||||
widget::image::FilterMethod::Linear => widget::image::FilterMethod::Nearest,
|
||||
widget::image::FilterMethod::Nearest => widget::image::FilterMethod::Linear,
|
||||
}
|
||||
}
|
||||
|
||||
keyboard::Key::Character("q") => {
|
||||
return window::latest().and_then(window::close);
|
||||
}
|
||||
|
|
@ -195,7 +202,7 @@ impl State {
|
|||
widget::container(
|
||||
widget::sensor(maybe_image.handle().map_or_else(
|
||||
|| Element::from(widget::space()),
|
||||
|handle| widget::image(handle).into(),
|
||||
|handle| widget::image(handle).filter_method(self.filter).into(),
|
||||
))
|
||||
.key(self.key)
|
||||
.anticipate(500)
|
||||
|
|
|
|||
Loading…
Reference in a new issue