Popularity
0.9
Stable
Activity
0.0
Stable
12
1
2

Monthly Downloads: 6
Programming language: Rust
License: MIT License
Tags: GUI     IUP    

clear-coat alternatives and similar packages

Based on the "IUP" category

Do you think we are missing an alternative of clear-coat or a related project?

Add another 'IUP' Package

README

Clear Coat

Clear Coat is a Rust wrapper for the IUP GUI library. IUP uses native controls and has Windows and GTK backends. A macOS backend has been on its shrinking TODO list for a long time, so I'm hopeful it will happen.

[dependencies]
clear-coat = { git = "https://github.com/jminer/clear-coat" }

For the most part, the wrapper should be thin and use the same naming so that it is easy to use IUP's documentation. There are a couple of attributes like FGCOLOR that may not ever be supported because they are generally not good to use (easy to mess up accessibility, etc.). Otherwise, the goal is to support every feature in IUP. There are a couple of features that IUP does not have, but the wrapper will:

  • Support for notifying the event thread from another thread (IUP really should have this ability)
  • Support for registering multiple callbacks to one event (can be worked around, but is still useful)
  • The default minimum size of buttons on Windows is correct.
  • Indexes are always zero-based, never one-based (IUP's list item indexes are one-based).

Of course, being written in Rust, Clear Coat provides a memory-safe interface. It should be impossible to use-after-free or get a segfault/access violation without using unsafe code. If you find a way, I'd love to hear about it so that I can fix it.

[Status of controls supported](STATUS.md)

License

This library is licensed under the MIT license, the same as IUP is.


*Note that all licence references and agreements mentioned in the clear-coat README section above are relevant to that project's source code only.