dacap / vaca

C++ Win32 wrapper to develop GUI apps
https://github.com/dacap/vaca/wiki
MIT License
99 stars 20 forks source link

Are you still developing this library? #7

Closed ghost closed 1 year ago

ghost commented 1 year ago

The code currently doesn't build and there are many coding errors. For example, this function is defined as void but is returning a boolean value:

https://github.com/dacap/vaca/blob/main/vaca/ConditionVariable.h#L54

Division by zero on https://github.com/dacap/vaca/blob/main/vaca/base.h#L99

__int64 is a MSVC thing that doesn't available on MinGW, has to change to int64_t for the code to compile: https://github.com/dacap/vaca/issues/6

And it seems the library is still an experimental work? https://github.com/dacap/vaca/issues/5

@dacap Please tell us if you are still developing this library. If you are no longer developing this library, please state it clearly on README.md so everyone could know. Thank you.

dacap commented 1 year ago

Hi @iahung, I'll take a look to the issues you named. This library was for long time abandoned (after some stable period), and then I took it again just to modernize some features (using std::function, etc.). For example the ConditionVariable should be replaced with std::condition_variable.

I'll state this clearly in the README soon: This library is not actively developed, but it's being maintained, you can send PRs and I'll ty to review them ASAP. The only problem with this library is that it looks like Microsoft has finally moving away from Win32 controls to a new modern look. If vaca should evolve to something else, that would be a library to handle those new modern controls.

ghost commented 1 year ago

The only problem with this library is that it looks like Microsoft has finally moving away from Win32 controls to a new modern look. If vaca should evolve to something else, that would be a library to handle those new modern controls.

This is not a problem. You should better try to make your library usable first. Currently it's not usable with modern compilers and I doubt it could compile out of the box on older compilers too.

Do you know the FOX Toolkit? It's predate your library but still being developed and still has people using it, the developer doesn't try to modernize the look of it but he tries to make it usable instead. The FOX Toolkit still uses the old autotools. People wanted to use it so they incorporated modern build systems into it on their own forks:

https://github.com/devinsmith/fox

https://github.com/franko/fox

The original FOX Toolkit is here (the site is not even have https): http://www.fox-toolkit.org/

This is the mailing list: https://sourceforge.net/p/foxgui/mailman/foxgui-users/

As you can see, the community is active.

I doubt that the FOX Toolkit's UI is any more modern than your library. The FOX Toolkit has the same Win95 style look and feel.

Last and not least, if a modern UI is so important, people should have abandoned FLTK already: https://www.fltk.org/

dacap commented 1 year ago

Actually I'm not planning to keep this library alive or full featured, so I'd highly recommend you to look for an alternative in case that you want to invest your time and money in a viable desktop app.

Probably I should add MSYS/MinGW as some alternative compilers in the GitHub actions, but at the moment it still compiles.

Also you named autotools, vaca uses CMake files and there are no plans to add or support autotools.