I spent a lot of time for editors development. There were many editors written from scratch. When I started to work at the editor, the qustion ‘which GUI library should be used’ always arose.
The most positive experience with working with GUI library was when I worked with VCL components. But there is one big problem: you can work with VCL components normally only if you use C.#, and this leads to the problem of communication between C++ code and UI. Then, it all comes to writing wrapper code in C.# over C++, which is very inconvenient. As a result, you have to use a library written in C++, for example QT, WxWidgets, GTK+. And there is a big TROUBLE: they are huge, contain bugs, and aren’t very convenient to work with them at some places.
As a result, after another torment with GUI libraries, I discovered WinApi. Of course, WinApi in pure is a rare muck – it’s not a pleasure to work with it. Additionally, default settings of components are not good, you should allocate them; interface itself is as inconvenient as possible. But after wrapping WinApi by beautiful classes, finally it turned out to be very easy to use tool.
A a result, I came to create my own GUI library – I gave it the name ‘EUI’. The library is designed as cross-platform. Currently EUI works only on the PC, but addition of support for Mac is not a big deal.
The library repository is available at
I would be happy if the library will is useful not only for me.

Leave a Reply

Your email address will not be published. Required fields are marked *