IP Address Control -> Is this really so common it needs a custom box? does it handle IPV6?
List Box -> Not sure but making a list you can scroll through is trivial in HTML. you set a height of the container and mark it as overflow: auto. Done.
Pager -> seems irrelevant on a browser
Progress Bar -> progress tag
Property Sheet -> N/A
Rich Edit -> This was never good on Windows and it's also not good in HTML. In both cases if you want something that actually has a good UX you have to roll your own or find a library
Rebar -> Flexbox/Grid
Static Control -> most of HTML and far more easier to style
SysLink -> anchor tag
Tab -> trivial to implement in HTML but ok, maybe should be standardized?
Task Dialog -> dialog tag
Track Bar -> input type=range
Tree View -> You can do this with nested detail tags. Not sure it's any more work (in fact I suspect less) than a tree view in C++
Up/Down Control -> input type="number"
It seems all there are far more flexible.
I don't really know which apps you're referring to but I feel like most of the windows apps I use are not using those default controls or if they are they've added heavy customization
It means that you've never really developed an actual app. And that you haven't ever thought about all the controls and layouts (with their complex interactions) even in the apps you use daily.
No. Menu isn't "the one control". Menu is one of multitude of controls. Go ahead and try and implement a treeview correctly with nested details (including all the necessary keyboard interactions). Meanwhile treeviews have been a part of native UI kits since... the 80s perhaps?
Oh, and since listviews are so "easy" in HTML, can I finally properly animate adding elements to one or removing elements? With height:auto? And without needing to redraw and re-layout the entire page? Right...
Dialog tag? Does it keep keyboard focus inside the dialog, or do you have to write non-trivial amounts of JS to have this required accessibility feature?
And so on and so forth.
And those are just the most trivial things native UIs solved half a century ago.
>List Box -> Not sure but making a list you can scroll through is trivial in HTML. you set a height of the container and mark it as overflow: auto. Done.
As long as your list doesn't contain elements that are too complex, or has too many elements. Otherwise, you enter the world of lists with recycled items, and while Win32 and pretty much every other toolkit has it by default, and oh boy does the web suck at that.
Looking at this list: https://learn.microsoft.com/en-us/windows/win32/controls/ind...
Animation -> video tag
Button -> button tag
Combobox -> select tag
Date picker -> input type=date
Time picker -> input type=time
Edit -> input type=text or textarea
Scroll bar -> Not needed, automatic
Hot Key -> WAT?
IP Address Control -> Is this really so common it needs a custom box? does it handle IPV6?
List Box -> Not sure but making a list you can scroll through is trivial in HTML. you set a height of the container and mark it as overflow: auto. Done.
Pager -> seems irrelevant on a browser
Progress Bar -> progress tag
Property Sheet -> N/A
Rich Edit -> This was never good on Windows and it's also not good in HTML. In both cases if you want something that actually has a good UX you have to roll your own or find a library
Rebar -> Flexbox/Grid
Static Control -> most of HTML and far more easier to style
SysLink -> anchor tag
Tab -> trivial to implement in HTML but ok, maybe should be standardized?
Task Dialog -> dialog tag
Track Bar -> input type=range
Tree View -> You can do this with nested detail tags. Not sure it's any more work (in fact I suspect less) than a tree view in C++
Up/Down Control -> input type="number"
It seems all there are far more flexible.
I don't really know which apps you're referring to but I feel like most of the windows apps I use are not using those default controls or if they are they've added heavy customization
I'd see the one control missing most is menus