If you want OS native looked widgets and you want to be portable, you probably want QT or wxwidget.
You can mix SDL with those, thought there might be some hoops to jump through with handling events but nothing bad.
I totally understand the appeal to conform to a standard set of widgets. Now - QT is very powerful and featureful but it is an enormous thing (5 GB+ install). In my experience the problem with those big things is that it scares off lots of people in your team and you end up with 10% of the people ever looking at the project with the UI (if you have multiple projects running). It also make many things quite tedious to make IHMO. With a custom library like ImGui, many things are easier to make, and some are more tricky but you benefit from a less steep usage and learning curve, and you can create tools anytime more naturally without planning things out. wxwidget apparently is less unwieldly but I have never used it myself.
You may want to consider a few questions:
- is your app going to be short-lived or meant to be active for a very long time?
- is it small or big? simple or complex?
- will your app be used internally, for content-creators and technically minded people, or by your mother in law?
- will it have 10 users, 1000 users, one million user?
- will it have 1 developer, 10 developers, 100 developers? will they be a tight team or people coming and going?
Based on this you can better weight the trade-off of going for something more in the standard and "correct" spectrum or something more in the practical and "clunky" spectrum.
For the majority of app, having native OS widgets would ideally be better than non-native OS widgets. However you have to consider how it impact your development. Bad UI code can also become a bottleneck to your development and then you don't add feature xx or yy just become the UI is a pain to deal with. That happens everyday.
Recently I had to rewrite an old desktop-ey always-on app from a codebase that uses both Win32 and QT for standalone tools.
I bite the bullet and tried for the first time to use ImGui (which I wrote) instead of adopting QT.
The result is that I get an app that's not standard and a bit odd and has its limitation, but writing ui seems 100 times easier and everyone in the team can touch it.
Screenshot from that app: (not actually a fullscreen shot, that was a gif I made to demonstrate a feature)