coffee icon indicating copy to clipboard operation
coffee copied to clipboard

Rewrite and integrate `ui` module with `iced`

Open hecrj opened this issue 4 years ago • 2 comments

After 0.3.0 was released, different folks suggested me to build a standalone crate for the brand new ui module. I thought it was a really good idea. If folks use it, it would allow for cooperation between different game engines and UI applications to build better GUIs using Rust!

And so, Iced is here! A 2D renderer-agnostic GUI library focused on simplicity and type-safety. There is a long road ahead, but it is already usable!

This PR rewrites the ui module to integrate it with the upcoming first release of Iced ~while avoiding breaking changes. No examples were broken during this process!~

Depends on #62.

Changed

  • The Window::width and Window::height methods now return a u16. This avoids many awkward conversions in user code.

Pending work

  • [ ] Wait until the new ProgressBar and Image widgets are merged into Iced
  • [ ] Rewrite documentation
  • [ ] Wait for winit to implement RedrawRequested improvements: https://github.com/rust-windowing/winit/issues/1082

hecrj avatar Sep 02 '19 19:09 hecrj

Hey @hecrj, Coffee and Iced are two awesome projects, kudos to you.

Is there any chance of saving/reviving this PR, to get Iced integrated into Coffee?

I started playing around with ggez as an experiment to build game mods using Wasm. I'm at a point where I want to mods to be able to build/draw widgets, but would like to use an existing Widget library for this.

Iced looks like the best candidate, and since I'm only using a small subset of ggez, a natural transition would be to use Coffee as well. I found this PR which made me realize that Iced isn't integrated with Coffee yet.

It does look like the ui module (unsurprisingly) shares many similarities with Iced, but it has (understandably) stalled quite a bit compared to Iced' development, so I'm wondering how much they have diverged, and how much more difficult the migration has become because of that (the changes in this PR seemed relatively straight-forward).

Coffee by itself looks like a nice, modern, simple engine for me to use, so I'm going to probably use it instead of ggez regardless, but having Iced integrated would definitely be... icing on the cake.

JeanMertz avatar May 17 '20 06:05 JeanMertz

I totally agree, this rewrite of ui would be awesome !

buxx avatar May 27 '20 10:05 buxx