Native GUI toolkit


#1

Is any reasonable native GUI toolkit for Rust?


#2
https://users.rust-lang.org/t/current-state-of-gui-development-in-rust?source_topic_id=12205

seems there are bindings, and ‘conrod’ being built in rust from the ground up . my observation is gui and language are closely linked… the ‘famous guis’ often go hand in hand in hand with a specific language


#3

And is advanced programmers editor like Scintilla?


#4

conrod has errors?
error: pub(restricted) syntax is experimental (see issue #32409)

cargo run --release --features=“winit glium” --example hello_world
Compiling num-rational v0.1.39
Compiling gfx_gl v0.3.1
Compiling winit v0.7.5
Compiling pistoncore-glutin_window v0.36.0
error: pub(restricted) syntax is experimental (see issue #32409)
–> C:\Users\Andrzej Borucki.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.7.5\src\platform\windows\events_loop.rs:188:9
|
188 | pub(super) fn execute_in_thread(&self, function: F)
| ^^^^^

error: aborting due to previous error

error: Could not compile winit.
Build failed, waiting for other jobs to finish…
error: build failed


#5

It’s not cross platform but it looks very good: https://github.com/gabdube/native-windows-gui


#6

conrod is OK:
rustup show : 1.16.0
rustup update: 1.19.0


#7

native-windows-gui: generates small exe! For difference: is any not cross platform but only for Linux?


#8

The two de facto standard GUI toolkits on Linux are GTK and Qt. Of those, GTK is the one best supported by the Rust ecosystem, unsurprisingly (it was designed with cross-language portability in mind).


#9

I want to write MIT-licenced, crossplatform GUI Widget Toolkit library with Rust. At beginning I try write code to show simple WinApi window.
This is my first Rust project, I have a few asks:

  • results have double parenthesis (()) - how to do otherwise?
  • ask about #[derive(Clone,Copy)]

But main question is - why WinApi window has not icons on titlebar? Especially has not close icon? I think I try necessary style flags like WS_CAPTION.
I attach: linwin0.zip
This is very small project - is anyone who want make review?
I simultaneously write needful library and I’m learning Rust.


#10

I found simple example (correct by me) :RustNow/Rust-Win32-SampleApp

And next trial: corrected this sample give me TitleBar icons but is one problem (this time not WinApi but Rust?): I can’t correct display window title but buttons title are ok: https://gist.github.com/borneq/9e7edac4598d26ac011c624070c0048d
(this sources are dirty, warning and not snake idents…)

I think - vec v is freed whereas window still display. Unsafe is really unsafe.


#11

There is also the gtk binding https://github.com/gtk-rs/gtk and a higher level library on top of it https://github.com/antoyo/relm