Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    madmalik
    @madmalik
    i never looked to closely into conrod because on it's focus on games, but i seem to have missed out ^^
    Gerald E Butler
    @gbutler69
    Yeah, I thought it was about games at first too, but, as I looked closer, I realized that that wasn't the case.
    Yes, it can be used for games, but, it can be used for anything (as long as there is a reasonably performant graphics stack behind it).
    madmalik
    @madmalik
    do you know anything about how it behaves in idle mode in respect to power consumption?
    Gerald E Butler
    @gbutler69
    No, I pretty much only know what I know from the docs. Haven't had time to play with it myself.
    I'd recommend inviting the author(s) to this discussion.
    madmalik
    @madmalik
    great idea
    Florian Blasius
    @FloVanGH
    Hi @all. Currently we working with a group of three people from my work on an update for OrbTk. We are one user experience designer and two ui developers (one Qt/Qml developer and one Qt/Qml + WPF developer). Our plan is to create a fast and easy to use pure Rust ui framework. We are strongly oriented towards https://reactjs.org/ and https://flutter.io/, because we think such an approach is good to implement with / for Rust. We've started with the planning and implementation last week.
    Noah Weninger
    @nwoeanhinnogaehr
    I think the tree-like approach OrbTk is well suited for Rust. It's a very similar design to what I coincidentally landed on for flow-synth. Basically I have the trait GuiComponent<Status> (essentially a widget) with a method fn handle(&mut self, event: Event) -> Status that allows children to return messages to their parents in response to events.
    madmalik
    @madmalik
    hi @FloVanGH and @nwoeanhinnogaehr
    (completely offtopic, flow-synth is very relevant to my interests :P)
    @FloVanGH does that mean OrbTk gets a completely new architecture?
    Florian Blasius
    @FloVanGH
    @madmalik yes that's correct. At the moment we rebuild the complete rendering, positing and tree system.
    madmalik
    @madmalik
    oh wow, cool
    is there any writeup about the concept and the architecture i could read?
    Florian Blasius
    @FloVanGH
    We are working on it. I'll provide a link as soon as we are finished with it.
    madmalik
    @madmalik
    thanks!
    Florian Blasius
    @FloVanGH
    ^^
    madmalik
    @madmalik
    you said you are doing that with people from your work. are that just the people you do that with or is there actually commercial interest in OrbTk and you're working on company time?
    (if its ok to ask)
    Florian Blasius
    @FloVanGH
    our company starts last week with a monthly session called focus time. During this time we are allowed to work on own projects or we can further educate ourselves. I've worked on orbtk before and I was allowed to search for other companions. Maybe in the future we could provide rust ui development with orbtk for our customers, but it's only dreaming for now ;-) . At the moment we do it for fun and because we belief we could create a great ui framework.
    madmalik
    @madmalik
    sounds great
    Noah Weninger
    @nwoeanhinnogaehr
    awesome to hear about the OrbTk progress!
    JT
    @jonathandturner
    oh hai
    omg, I hadn't realised what OrbTk was. When I first saw the name I thought it was a tcl/tk thing (guess that dates me)
    so - re: native components, I've been having this itching idea that we could really leverage the Rust trait system. I'd be awesome if there was a way to "mixin" native widgets where you needed them. Maybe there's a default UI, but if you need the native text input area, you could get an optional component for your platform and plug it into your system
    Russell Johnston
    @rpjohnst
    the thing I'm worried about there is that native controls severely restrict what you can do with them
    because they all have their own way of rendering and getting data in and out
    and occasionally they even care who owns the event loop :scream:
    Thomas Levy
    @NilSet
    well, in the ideal world, the impl of the widget trait for whatever native wrapper you have would translate between the two systems i guess
    would probably need some way to inject events from the widget back into the rust framework's event system
    Gerald E Butler
    @gbutler69
    I had the following thoughts on this recently. Wouldn't it be nice to have a UI Toolkit that supported (well) seemless UI in either a character-based (curses-like, TUI/CUI) and graphical UI (GUI) where the TUI/CUI would work across OSs for console/terminal applications (with the caveat that a sufficiently powerful console capabilities were available) and the GUI could target Vulkan/OpenGL/Framebuffer/OS-specific render API's all equally (within reason) well.
    I have some experience with working with proprietary software that had this capability and there is a lot to be said for such a capability.
    It sounds preposterous at first, but, if you've ever worked with something like this, you can see it is feasible.
    JT
    @jonathandturner
    @gbutler69 agreed. I was just playing around with Xi, which had frontends for both text and different GUIs
    and it'd be nice to not to have to pick, if you happened to be just logging into a remote system
    madmalik
    @madmalik
    it'd be extremely cool... @gbutler69 can you name that proprietary piece of software that does that?
    madmalik
    @madmalik
    i generally dont link to hackernews because hackernews... but this comment is interesting to read imo https://news.ycombinator.com/item?id=16613549
    JT
    @jonathandturner
    @madmalik - yeah, I'm starting to wonder if the declarative approach is the right one
    you seemingly have less control over the layout, but perhaps the layout can come from a platform-native styling?
    vulkan isn't cross-platform, but we have things like the gfx crate (https://github.com/gfx-rs/gfx) that we could potentially use since we're doing it in Rust
    madmalik
    @madmalik
    some thoughts on @gbutler69 idea: the goal itself is just extremly cool. in combination with good ui state handling this would allow to switch seamlessly between front-ends. For example, using the same text editor (and even the same running instance) on the terminal and the gui would be just awesome
    But there are also some programs where this cannot work. for example an image manipulation program or an audio workstation where one is editing waveforms. or simply a pdf viewer...
    On the other hand, most programs use standard widgets. text fields, list views, buttons, which would be relativly easy to draw on a different output device. but even here optical customisations would fall under the table. on a TUI the layout would change because of the coarse grid and even because of the line-lengths of monospace vs. proportional text
    So, there has to be an element of graceful degradation. there are widgets (ui-elements, entities, whatever we call them in the end) that translate semanticly, but loose their styling, there are widgets that dont translate at all... i think, this would look a lot like css in the end (maybe simpler and without the cruft...). which wouldn't be the worst thing, considering websites scale from mobile to desktop and even to text browsers and screen readers
    Roy Jacobs
    @RoyJacobs
    hi all, first time here :) I was following this discussion with interest — I was wondering if you guys already took a look at RSX? https://github.com/victorporof/rsx-primitives
    to me it ticks some very interesting boxes: It seems to leverage decent existing libraries (e.g. webrender for rendering, yoga for layout, etc), provides a declarative way to design the UI and separate state from rendering, and it has support for multiple backends.
    very early goings of course, but I’d definitely recommend you take a look at what’s going on there.
    madmalik
    @madmalik
    i didn't onw RSX. it looks interesting
    madmalik
    @madmalik
    (btw, sorry for being so unresponsive the last few days after starting this gitter... i'm finalizing a thesis at the moment, it should get better in a few days ;) )