Live data from Hacker News

Cross-Platform GUI Toolkit Trainwreck (2016)

blog.johnnovak.net

151–160 of 177 posts

Re: Cross-Platform GUI Toolkit Trainwreck (2016)

#151

Earlier quoted context omitted.

Fair enough, but I think that the onus of proof is on the weird-language-user here. That is, a discussion of how cross-platform GUI toolkits are a 'trainwreck' takes on a different vibe if you're insisting on using Nim or Left-Handed Pure Phenomenological Haskell or the like.

I think you're maybe over-interpreting the article. There is no (grammatical) article in its title. You seem to be assuming the article is implicitly "the", which would imply that it's intended for a more-or-less universal audience. It could just as easily be "a", which would then mean that it's more of a personal rant about the author's specific situation. I'd argue that the leading two sentences in the italicized p…

Yes, I guess so. I suppose I'm startled that someone would write such an elaborate article about such a remarkably specific situation without some intent to make a general statement, but whatever floats his boat I guess. You're definitely right that interacting with C++ outside of C++ (unlike the C ABI) is painful even before Qt's weird moc stuff gets going.

Re: Cross-Platform GUI Toolkit Trainwreck (2016)

#152

Wonder how the author didn't come across Qt or wxWidgets in his research?

It looks like Visix Galaxy is still alive and kicking, and it even supports UNIX, Windows, Windows NT, Macintosh, OpenVMS, and OS/2!

http://www.ambiencia.com/overviewgalaxytd.php

Re: Cross-Platform GUI Toolkit Trainwreck (2016)

#154
post #68
post #8

Earlier quoted context omitted.

> But if you do some forms and basic UI controls, wxWindows does the job egregiously. Looks the way it should be on all platforms. Word choice? "Egregiously" means "Conspicuously bad or offensive." [0] The context suggests you intended to say "adequate for the purpose," for which "competently" is the correct term.[1] [0] https://www.thefreedictionary.com/egregiously [1] https://www.thefreedictionary.com/competently

Thanks, I had a completely different meaning for this word in mind!

I also did. Given the Latin root (ēgregius, outstanding), I feel the pejorative connotation is out of place. The Italian term egregio definitely has a positive meaning, as it's also used to address people in letters.

Re: Cross-Platform GUI Toolkit Trainwreck (2016)

#156

Earlier quoted context omitted.

I have the same question. There are many things that are problematic about Qt (personally, I loathe anything that feels the need to interject itself in the middle of the build process) but to completely ignore Qt without explanation - and subsequently post detailed experiences with libraries I've never even heard of - led me to believe the author exists in some uninteresting-to-me parallel plane of existence.

You mentioned it but, the strange meta object macro processing that qt depends up on, has been something I dislike. If I remember correctly GTK or other toolkits does not do anything similar. And qt python bindings seems to be very poorly documented, same case with Java bindings.

The Qt Python bindings (PySide2 and PyQt5) do not need much documentation as they are just generated wrappers of Qt classes with the exact same API.

Re: Cross-Platform GUI Toolkit Trainwreck (2016)

#157

So many sub-debates hidden in this "cross-platform native GUI": 1) I want to write a GUI code once 2) I want to ship something that works on Windows / Linux / MacOS 2.1) I want to ship something that looks the same on Windows / Linux / MacOS 3) I want to ship a binary that works on Windows, a binary that works on Linux, a binary that works 3.1) I want to ship a small and efficient binary 4) I want to ship something t…

soon flutter should be able to achieve your last requirement

From https://flutter.dev/ , it seems flutter mostly targets Mobile applications, is that the case ? Is there a "desktop app" port ?

Re: Cross-Platform GUI Toolkit Trainwreck (2016)

#158

Earlier quoted context omitted.

soon flutter should be able to achieve your last requirement

From https://flutter.dev/ , it seems flutter mostly targets Mobile applications, is that the case ? Is there a "desktop app" port ?

They are working on it, you can check the wiki/Desktop-shells link below for progress.

https://github.com/flutter/flutter/wiki/Desktop-shells

they say -

"Work is ongoing to extend Flutter to support desktop as a target environment, allowing developers to create macOS, Windows, and Linux applications with Flutter"

Re: Cross-Platform GUI Toolkit Trainwreck (2016)

#159

So many sub-debates hidden in this "cross-platform native GUI": 1) I want to write a GUI code once 2) I want to ship something that works on Windows / Linux / MacOS 2.1) I want to ship something that looks the same on Windows / Linux / MacOS 3) I want to ship a binary that works on Windows, a binary that works on Linux, a binary that works 3.1) I want to ship a small and efficient binary 4) I want to ship something t…

> 1) I want to write a GUI code once > 2.1) I want to ship something that looks the same on Windows / Linux / MacOS > 3.1) I want to ship a small and efficient binary well, with Qt I write my code once, which looks the same on windows / linux / osx / $nicheos and the result is fairly performant - I've got tables with tens of thousands of elements which update at rates greater than 100hz and the UI does not bat an eye…

I've got tables of millions of rows and can also confirm Qt just performs!

Re: Cross-Platform GUI Toolkit Trainwreck (2016)

#160
post #8
post #6

Earlier quoted context omitted.

By personal experience, wxWindows is "OK", but it's not a panacea. There are a ton of little quirks that will burn you when doing cross-platform development simply because native controls do not behave in the same way. HiDpi is a major pain with wxWindows (but then again, the way HiDpi is managed is a pain irrespective of the toolkit). But if you do some forms and basic UI controls, wxWindows does the job egregiously…

> But if you do some forms and basic UI controls, wxWindows does the job egregiously. Looks the way it should be on all platforms. Word choice? "Egregiously" means "Conspicuously bad or offensive." [0] The context suggests you intended to say "adequate for the purpose," for which "competently" is the correct term.[1] [0] https://www.thefreedictionary.com/egregiously [1] https://www.thefreedictionary.com/competently

I though he was being clever; "egregiously" means "in a manner consistent with being out of the herd". Bad or offensive for the goat-herd maybe, but perhaps not for the goat.
Post reply on HN