4 ms·
I used this 15+ years ago with C++, it was so much easier to do cross platform things that way and it had good performance. Now I think I have not worked on a n
by t0mas88 4y ago
I used this 15+ years ago with C++, it was so much easier to do cross platform things that way and it had good performance. Now I think I have not worked on a native desktop app on at least 10 years. And everything I see others make is more hybrid, javascript, electron kind of things. The performance of that even though we have much faster hardware feels worse than what WxWidgets / C++ did 15 years ago...
- tgv 4y agoI wrote a (simple) accounting/billing application for my inlaws' shop some 20 years ago wih wxWidgets. I developed it on a mac, but it ran on a PC. The PC was very modest even back then (some 486, at best), but the application ran like lightning.
- wslh 4y agoThe same for a MS-DOS Clipper [1] application written 30 years ago. Sorry, with all due respect to the wxWidgets contributors, aesthetically wxWidgets (like many other UI libs) is not for 2022. [1] https://en.wikipedia.org/wiki/Clipper_(programming_language) https://en.wikipedia.org/wiki/Clipper_(programming_language)
- 72deluxe 4y agoBut it just wraps the native controls...? You're effectively saying that native controls are not for 2022...
- waynesonfire 4y agoI'm guessing OP meant it doesn't look like material ui.
- raphlinus 4y agoA serious question: what are native controls on Windows? Is the Windows XP era where each control is its own HWND (and usually drawn with GDI+)? Is it Windows 7 era where the drawing is Direct2D? Windows 8 where the elements of the app come together with DirectComposition? Or maybe Windows 10 style which is an evolution of UWP (now rebranded WinUI), with drawing in Win2D?
- mwcampbell 4y agoFor lightweight utilities, I think the user32 controls (HWND per control, drawn with GDI) are still a reasonable choice. That's the one GUI toolkit that's guaranteed to already be in the working set on all versions of Windows, thus minimizing the impact on startup time and memory footprint. Do those controls just look hideous to modern users? I obviously can't judge that for myself. Or is there a problem with the way they render text on high-DPI displays?
- raphlinus 4y agoIt used to be they didn't render high-dpi text correctly, but fixes went in for that. Even so, it's a hack and often not pixel perfect. If you're trying to do visually sophisticated things (soft shadows, fading animations), GDI+ is inadequate. So basically it looks antiquated. It might be fine for simple form-like programs. My main point is that "native" covers a lot of ground, and "native legacy compatibility" and "native modern" are radically different technology stacks on Windows.
- badsectoracula 4y agoThe HWND-based ones that come with Windows would be the native controls as this is how the underlying window system works. The WPF/UWP/etc UI stacks are built on top of HWND stuff pretty much the same way as Java Swing or JavaFX were made that largely (especially the latter) ignore the underlying window system. Of course since they come with the OS you might as well use those instead of bundling a separate UI toolkit, but IMO if you consider them as native as the HWND stuff then might as well consider everything native - AFAIK Windows even comes with a shared Electron/Chromium instance applications can use so in that case you could say anything that uses Electron is native on Windows :-P.
- raphlinus 4y agoUWP is most definitely not HWND per control, and doing so would be incredibly limiting. I don't know the UWP (WinUI) internals, but on mac it's generally a CALayer per widget, and Core Animation is doing the compositing. On Windows, the Windows 8 equivalent is DirectComposition, but I think the WinRT Windows.UI.Composition interface has some capabilities not exposed through winapi.
- ale42 4y ago> aesthetically wxWidgets (like many other UI libs) is not for 2022 wxWidgets applications are supposed to look native on every platform... what's the issue? Personally, I find apps with weird GUIs that don't look at all like the rest of the system very irritating. I would prefer developers to spend more time implementing features, and less making bling-bling UI things.
- inetknght 4y ago> I would prefer developers to spend more time implementing features, and less making bling-bling UI things. So many apps twenty years ago had features that apps today do not. It was really frustrating to see instant messaging services regress in features as people migrated from one to another to a third to ... today's dumpster fires.
- wslh 4y agoUsing the native UI libs doesn't mean you have native UX experience. It is not only about the visual objects but also the interactions and flow.
- corrral 4y agoUsers care a lot less about looks than designers and PMs (seem to) wish they did. They like consistent, reliable, fast operation. Especially those first two things. The things that make them most unhappy are: 1) programs that behave unpredictably—a predictable, consistent bug that happens every single time is preferable to an operation that fails 5% of the time, randomly, or a button that fails to register about half of all clicks, or anything like that and 2) changes to an interface they've already learned—because your new thing probably isn't 1/10 as "intuitive" as you think it is, so it's just another annoying arbitrary thing they have to deal with for no good reason, when they already had the last annoying, arbitrary thing figured out. Now, where it might make a difference (maybe—but I'm skeptical) is screenshots on sales pages. Which I suppose is why design continues to be so anti-user.
- bsenftner 4y agoI was an active user until 2 years ago, when I quit my last enterprise software job. They had a cross platform (including embedded systems) enterprise video security system, a suite of applications all written in wxWidgets. They screamed, they were so fast. They had to be, for our enterprise clients. But those same clients had typical "give me candy" managers, and they complained about the ancient native interface. That company chose to ditch wxWidgets, put everything behind a server I wrote, and then hire some over priced web agency to make them a web interface they charged 4 times the expense of the development entire enterprise software suite.
- 72deluxe 4y agoLunacy. Change looks like progress to some people. And doubly so if it looks like all web UIs these days - loads of padding, giant buttons, and really slow to load and render.
- lpcvoid 4y agoThis is why it's so important to have managers which aren't stupid and have technical insight. Luxurious proposition, unfortunately.
- heavyset_go 4y agoWxWidgets still works well today, I've used it on desktop products with great success.
- api 4y agoI think it just needs API modernization. That’s it. Then it would totally rock. It could be a thin “free” (template only) wrapper.
- heavyset_go 4y agoDefinitely agree with this.