27 ms·
Qt 6.0
- speedgoose 6y agoIs there a plan to have native Windows 10 widgets ? The latest screenshot of the Windows widgets shows the classic widgets. https://www.qt.io/hs-fs/hubfs/image-png-Nov-09-2020-06-37-27-02-PM.png https://www.qt.io/hs-fs/hubfs/image-png-Nov-09-2020-06-37-27...
- nyanpasu64 6y agoBy Windows 10 widgets, do you mean UWP/Metro/Fluent widgets? In my opinion, the screenshot you linked is still common in Windows 10 apps. If you want something closer to Metro, you can use Qt Quick and https://doc.qt.io/qt-5/qtquickcontrols2-styles.html#universal-style https://doc.qt.io/qt-5/qtquickcontrols2-styles.html#universa.... But Qt Widgets does not ship with a Metro-like theme. Newer Windows 10 apps have Fluent design, including acrylic effects. I don't know if Qt Quick 2 supports that, but I'm not optimistic they've updated the appearance to match.
- speedgoose 6y agoYes I'm thinking about fluent design widgets/theme.
- nxc18 6y agoI don’t know why 3rd-party widgets would bother with fluent design when the 1st-party offerings (e.g. WPF) don’t. Not even new Edge uses fluent design controls. WinUI sort of has fluent, but it is extremely inconsistent. When should things be rounded vs squared? It’s completely inconsistent internally. Even if Qt wanted to go fluent they’d have a hard time finding any concrete examples to work off of. I can’t think of any “fluent” apps that are consistent with themselves, consistent with the design system, and not breaking major rules.
- mdoms 6y ago> I don’t know why 3rd-party widgets would bother with fluent design when the 1st-party offerings (e.g. WPF) don’t. Sounds like an opportunity.
- 7786655 6y agoTo do what? Use the fluent design widgets? Why would anyone want that?
- speedgoose 6y agoIf I'm asked at work to develop a multiplatform desktop application tomorrow, I will skip Qt because it looks too old fashioned on windows compared to what is developed nowadays.
- formerly_proven 6y agoFWIW Microsoft has broken, twisted and sheared off the look and feel of Windows so severely in the releases since Windows 7 that it's less visually (and interactional-y) consistent than a Linux desktop in 2013 running a mix of Qt 4/5 and Gtk 2/3 apps, which truly is an achievement. Whatever era of Windows widget styling you're using, no one can argue it looks wrong, since nothing looks right any more. Half of the dialogs in Windows nowadays look like they were made by a confused 12 year old who just discovered BS_FLAT and uses it on everything.
- TazeTSchnitzel 6y agoThe big difference between OS X/macOS and Windows is that when Apple restyle the UI, they make sure even the oldest apps get the new styles, though maybe not a full makeover. Microsoft on the other hand don't seem to want to do this? Even if they can't update third-party apps, why do they give so little attention to the built-in stuff? There's still the odd dialog straight out of Windows 3.1 in there even.
- ComputerGuru 6y agoI mean, Qt doesn’t have any native widgets for any OS (to the best of my knowledge and unless things have changed). They just have “skins” for their own widgets that mimic (sometimes successfully) the underlying platform’s native widgets. So all you’re really asking for is a new theme, unless you really meant “native” in which case the answer is no.
- TonyTrapp 6y agoThey started using native widgets a long while ago, but they can still be skinned.
- nyanpasu64 6y agoQt Widgets does not use native widgets on Win32 (I heard they're called "windows" there). It only spawns a single native window, and performs all input handling itself. Qt 5 has a mode (https://doc.qt.io/qt-5/qwidget.html#native-widgets-vs-alien-widgets https://doc.qt.io/qt-5/qwidget.html#native-widgets-vs-alien-...) which uses native Win32 widgets, but they're more like blank canvases drawn by Qt, than actual Win32 push buttons, and still look slightly off. And it reduces performance.
- ComputerGuru 6y agoNative widgets cannot be "skinned" on Windows and macOS, at least not to any appreciable extent.
- TonyTrapp 6y agoThey definitely can on Windows, and this is how many skinned programs were developed in the past. It's called owner draw.
- deleted 6y ago[deleted]
- nunodonato 6y agoit's so expensive, too bad there are no good alternatives to this
- MaxBarraclough 6y agoLooks like it's available under the fairly permissive LGPL licence - https://doc-snapshots.qt.io/qt6-dev/licensing.html https://doc-snapshots.qt.io/qt6-dev/licensing.html
- dijit 6y agoFor commercial purposes it is actually very expensive. (Source: Used to work for Nokia) EDIT: (Source2: https://www.qt.io/pricing https://www.qt.io/pricing)
- beojan 6y agoYour software would have to be very locked down to preclude using LGPL libraries.
- jcelerier 6y agoEven Tesla were able to use LGPL Qt in their cars: https://electrek.co/2018/05/19/tesla-releases-softwar-open-source-licences/ https://electrek.co/2018/05/19/tesla-releases-softwar-open-s... (which is a shitty thing to do when you're not a mom&pop shop but a company like https://news.ycombinator.com/item?id=25344677 https://news.ycombinator.com/item?id=25344677)
- notRobot 6y agoWebsite being blocked for me by NextDNS: > www.qt.io (→ 149513g13.secure0130.hubspot.net) is being blocked by NoTrack Tracker Blocklist.
- deng 6y agoHeads up for anyone on a commercial license (this does not affect the LGPL-Version): Qt6 does not offer a perpetual license anymore, you need to switch to a subscription license. The catch is that you need a subscription license not only for development but also for distribution, meaning: you need to have a subscription for as long as you distribute your software with Qt6 under the commercial license! Again: This only affects the commercial version! Nothing changes if you're using the LGPL version. See also: (German) https://www.heise.de/news/Qt-6-Abomodell-koennte-zum-Fallstrick-fuer-kommerzielle-Kunden-werden-4942027.html https://www.heise.de/news/Qt-6-Abomodell-koennte-zum-Fallstr... (Google translate/English): https://translate.google.com/translate?hl=en&sl=de&u=https://www.heise.de/news/Qt-6-Abomodell-koennte-zum-Fallstrick-fuer-kommerzielle-Kunden-werden-4942027.html https://translate.google.com/translate?hl=en&sl=de&u=https:/... https://www.qt.io/faq/tag/subscription https://www.qt.io/faq/tag/subscription EDIT: You also need a license if you only use your software with the commercial Qt6 license.
- chrisseaton 6y ago> you need to have a subscription for as long as you distribute your software with Qt6 under the commercial license! Seems reasonable? As long as you're getting benefit from Qt by distributing software using it you need to keep paying for it?
- academia_hack 6y agoIf I buy a frying pan and open up a restaurant with it I don't have to keep paying the frying pan company so long as I use my pan to create meals. Subscriptions for software libraries and components weird me out much more than subscriptions for services and end-products (with recurring costs for the service providers) do.
- chrisseaton 6y agoA frying pan is owned property. Software is copyright literature under licence.
- mentos 6y agoLooks like they have abstracted the rendering to a Rendering Hardware Interface, this is what UE4 has I wonder if the name and API are inspired?
- akoumjian 6y agoThe nasty pretend exchanges between coworkers on this page is a really depressing way to highlight this tool: https://www.qt.io/design https://www.qt.io/design
- sgerenser 6y agoDidn't even notice those until you pointed them out. Truly cringe-worthy.
- dec0dedab0de 6y agoI don't think any of those messages are nasty. It looks like a team of people who feel comfortable enough to vent to each other, while not taking themselves too seriously.
- Longhanks 6y ago> Seriously, how many times are we going to tweak these? Sounds super agressive to me, highly unprofessional.
- deleted 6y ago[deleted]
- oblio 6y agoAnd that's how we end up with stock images and press-release speak everywhere... Doomed if you do, doomed if you don't.
- rhencke 6y agoThis is not a dichotomous choice.
- oblio 6y agoOne person's funny is another person's cringy, when dealing with large groups of people. So yes, at a certain scale it is a dichotomous choice. Ergo stock images and press-release speak. * * * I'll give you an example, right now: Why "dichotomous"? You could have used "binary" and sounded much less pompous, without any special effort on your part. See how "funny/interesting" vs "cringy" works on the internet? :-))
- lazypenguin 6y agoQt is great and I get disappointed that the discussions surrounding it often devolve into nitpicking the pricing and licensing terms. Seems people are less willing to pay for high quality tools these days. On the technical side, the qt quick desktop styling is intriguing. My main use case for Qt is for desktop applications and while qt quick is often recommended I usually go for qwidgets instead. 9/10 times I need a traditional interface with menu bars, forms and tables. While qt quick lets me make nice looking UI, I often need something that just works similarly to how a traditional desktop application works, looks be damned. Im curious if they'll manage to close that gap in qt6 but I'm skeptical which means I'll probably stay on widgets for the foreseeable future.
- egwor 6y agoI just don't understand the free/commercial differentiation. I was trying to get some projects working from uni, and I wasn't sure what I was allowed to do nowadays. I thought it all had to be commercially licensed so gave up.
- sgerenser 6y agoMost people (especially small indie devs) will be fine with the free LPGL version, regardless of whether you charge for your software or whether it is open source or not. Just make sure that you dynamically link the Qt libraries (so the end-user can theoretically replace them if they want to) and don't use any of the GPL-only add-ons (unless you are OK licensing your whole product as GPLv3).
- michaelsbradley 6y agoYou can statically link as well: https://www.gnu.org/licenses/gpl-faq.en.html#LGPLStaticVsDynamic https://www.gnu.org/licenses/gpl-faq.en.html#LGPLStaticVsDyn...
- sgerenser 6y agoI knew someone would bring that up! Yes you can statically link but its harder to go that route and probably not worth it for most people (although for some platforms like iOS you might have to, not sure about that). I've used Qt for over 15 years and I've never once wanted/needed to statically link it since dynamic linking has always worked just fine for the type of apps I've worked on.
- emddudley 6y agoSeems that Qt WebEngine and WebView aren't available until Qt 6.2 (end of September 2021). Bummer! https://www.qt.io/blog/add-on-support-in-qt-6.0-and-beyond https://www.qt.io/blog/add-on-support-in-qt-6.0-and-beyond
- vdfs 6y agoI miss the Qt Webkit module, it give so much more control over WebEngine. WebEngine is great but anyone one who want to use will be much better served using Electron
- zerr 6y agoNo Windows 7 support?
- emddudley 6y agoMicrosoft itself doesn't even support Windows 7 anymore. Why should Qt 6? https://docs.microsoft.com/en-us/lifecycle/products/windows-7 https://docs.microsoft.com/en-us/lifecycle/products/windows-...
- XzetaU8 6y agoMicrosoft does support Windows 7 through the Extended Security Updates (ESU) program which last utill 2023 and 2024 for the Windows Embedded POSReady 7 https://docs.microsoft.com/en-us/lifecycle/faq/extended-security-updates https://docs.microsoft.com/en-us/lifecycle/faq/extended-secu... Moreover Microsoft just released .NET 5 with Windows 7 support. https://github.com/dotnet/core/blob/master/release-notes/5.0/5.0-supported-os.md https://github.com/dotnet/core/blob/master/release-notes/5.0...
- formerly_proven 6y agoI feel like that answers it's own question. > The Extended Security Update (ESU) program is a last resort option for customers who need to run certain legacy Microsoft products past the end of support. Windows 7 is EOL. ESU is meant to run legacy applications for some time after OS EOL. By definition, legacy applications will not use Qt 6.0.
- XzetaU8 6y ago> ESU is meant to run legacy applications for some time after OS EOL That's not correct, unless you count google chrome (and many other programs) as a legacy application. https://9to5google.com/2020/11/20/google-chrome-windows-7/ https://9to5google.com/2020/11/20/google-chrome-windows-7/
- ubercow13 6y ago
- calibas 6y agoMaybe someday I'll see Qt and not think "Huh, Quicktime?"
- ComputerGuru 6y agoOh wow, Qt has moved to CMake as a build system? I remember fighting with qmake back in 2008 and trying to integrate it into our build system (and trying to get it to play nice with bjam for some reason). This is welcome news.
- detaro 6y agoWhat's specifically is new that Qt itself is built using cmake. You could use cmake to build apps using Qt for quite a while already.
- stjohnswarts 6y agoDid you even need qmake if you understood the MOC subsystem well enough to say write a cmake or gnu make file for it? I didn't think qmake was ever a requirement?
- amelius 6y agoDo they still use Moc?
- kevsim 6y agoThere was some effort to make it possible to use Qt without moc [0] and instead rely on some more modern C++ features. No clue where the effort is these days 0: https://woboq.com/blog/verdigris-qt-without-moc.html https://woboq.com/blog/verdigris-qt-without-moc.html
- baybal2 6y agoTakeaway for GTK+ crowd: Qt thrives, and GTK certainly doesn't. KDE, and Gnome are both toolkits flagship projects. Look at how much developer share KDE gained, and Gnome lost in the time since Gnome 3.0. The reason is they had few very toxic "thought leaders" who alienated countless developers, and they did not have courage to give them a well deserved kick to the butt, not even an idea that doing so would be right. Now, if they want to recover, even if they will give a kick to Lennart & Co., how would they do so if they have no normal devs left to deliver that kick, and carry on the project after?
- tabtab 6y agoWhat does the Tk family lack to make "thrivable"? It doesn't have built-in resizable editable data grids, but that gap alone is not a show-stopper.
- spacechild1 6y agoTk is a nice little GUI toolkit, but feature-wise it isn't even comparable to Qt in any way. Personally I started with Tk but it turned out to be too limited, so I switched to Qt.
- arp242 6y agoQt is an application framework – it's much more than just a "GUI toolkit". Tk is nice, but also small and very limited in scope, which is great for some use cases, but less so for others. It's like the difference between a desktop environment like GNOME or KDE, which do much more than just "manage windows", and a more basic window manager like i3 or the countless others that are out there.
- m4rtink 6y agoGTK is actually used quite a bit more on mobile these days thanks to all the distros and software targeting Pine Phone and Librem.
- baybal2 6y agoA big hope it is a genuine resurgence, and not a GPE 2.0. But without Android support, their chances are at least halved.
- TorKlingberg 6y agoWe have used Qt in our video meeting products for a few years now and are pretty happy with it. For us it was especially important to have the same UI on plain embedded Linux, Android and Windows. We were always going to use the commercial version so licensing wasn't a major problem, no worse than any other commercial library.
- avrionov 6y agoYour windows app is not using QT as far as I can tell unless it is linked statically. Where do you use QT?
- TorKlingberg 6y agoThis is for our "bring your own device" meeting room system: https://support.starleaf.com/installing/starleaf-room-for-windows/ https://support.starleaf.com/installing/starleaf-room-for-wi... Nice to see someone on HN trying out StarLeaf by the way.
- Nokinside 6y agoOnly viable Qt competitor in embedded is Rightware Kanzi. Has anyone here experience with them? (ps. Most people lamenting the price of Qt have no need for Qt, should not buy Qt. If you have never heard about Kanzi or Telerik, you are not in the market)
- rhencke 6y agoWhat is Flutter missing, in your opinion, for it to be a viable competitor?
- Nokinside 6y agoNever heard. I willing to bet that it's some framework for mobile, web and desktop. I said __embedded__
- rhencke 6y agoThe Flutter engine API has no platform specific dependencies, has a stable ABI and is available in its entirety in a single C header file [1]. It's ideal for embedding. [1] https://github.com/flutter/engine/blob/080fbcb1759e5916f0d6cdcdfd945c053320e6b3/shell/platform/embedder/embedder.h https://github.com/flutter/engine/blob/080fbcb1759e5916f0d6c...
- vlovich123 6y agoIsn’t flutter based on skia? Or is that integration abstracted away?
- rhencke 6y agoYes [1] and yes [2]. [1] https://flutter.dev/docs/resources/faq#what-technology-is-flutter-built-with https://flutter.dev/docs/resources/faq#what-technology-is-fl... [2] https://flutter.dev/docs/resources/architectural-overview#layout-and-rendering https://flutter.dev/docs/resources/architectural-overview#la...
- camgunz 6y agoSo, cards on the table I've been a Qt apologist, but the subscription thing for distribution seems nuts. But I'm genuinely curious: if I wanted to build a {thing}, how should I license it so that I can get credit and make money for my work, while also supporting FOSS? I think traditionally the model here is "GPL or you can pay for a perpetual commercial license". I think that's reasonable (and I think clearly not what Qt is doing anymore) strategy; are there things I should consider?
- Nokinside 6y agoQt is for-profit business forced to provide open source library. Isn't that better than paying peanuts for struggling dual-licensing open source company? Qt company is publicly listed for-profit company with zero interest in open source. Their business is growing fast and their stock is up 700% in last 3 years. Qt is contractually obligated to to provide LGPL version for the core library forever. Recently they just retreated to minimum requirement their legal agreement with KDE foundation requires. Yes, Qt the company does not want to serve those who use LGPL license, but that's just small number of extra hoops for free product you don't have to pay for.
- formerly_proven 6y agoTIL The Qt Company's stock ticker is 2QT.
- urmish 6y agoThat's under the Frankfurt Stock Exchange (FRA). Under Helsinki Stock Exchange (HEL), it is QTCOM. Company was founded in Finland.
- yboris 6y agoIt's not the answer you wanted, but to cure you of all the legal headaches, consider Electron, with its MIT License :)
- jcelerier 6y ago
- unixhero 6y agoBye bye cute QT
- seabird 6y agoI see a lot of people that in this thread saying things along the lines of "just use it under LGPL". As somebody who uses Qt in a commercial setting, it is not that simple. The Qt Company will start twisting arms if they catch wind that you're not letting them squeeze you, and if your company has an antsy legal department, they're not even going to consider fucking around when The Qt Company starts snooping around to see if you're compliant; your lawyers will tell you to cough up and deal with the perpetual rent seeking they introduced with their subscription model. I've seen it happen first hand, and it can only be worse now that they force you to have an account with them to download the pre-built binaries they host. I love Qt. For all of its warts, it is wildly powerful and doesn't get anywhere near the appreciation it deserves. With that out of the way, don't consider it for new commercial projects unless you're cool with being bled dry every step of the way by The Qt Company. As wonderful as it is, The Qt Company (either by design or ignorance) keeps expanding its expensive and confusing licensing model, and it doesn't look like that is ever going to get any better.
- throwaway546456 6y agoIt seems they dropped ball on mobile devices (iOS/android). In last few years they where mostly focusing on embedded, automotive and desktop. I wish they provided more indie friendly alternative license for mobile market something similar like Unreal Engine had e.g. taking ~5% of your revenue. I know they recently provide 'small company license' and ~500usd/year is justified as long it's just hobby project if only your as a dev. The moment you reach $250k as a startup and have to hire few devs and pay $5k/year per each developer is making this less affordable. On top of that if you focusing on mobile devices (android/ios) probably you would need to have Felgo license (to cover some Qt limitations) which is crazily even more expensive. At this point in few years Flutter, ReactNative, Unity, Unreal Engine and Electron will be slowly stealing more of Qt market.
- hermitcrab 6y agoI like developing in Qt. It is well designed, well documented and comprehensive. I like the power of slots and signals. My experience developing Qt applications for ~20 years (mostly for Windows and Mac) is that it is very well supported on Windows, but less well supported on Mac. I really wish they would concentrate a bit more on making it look more native and be less buggy on the lastest version of macOS, rather than adding new features. I list a few current issues with Qt 5.15 on macOS 11.0 here: https://successfulsoftware.net/2020/12/07/issues-with-qt-applications-on-macos-11-0-big-sur/ https://successfulsoftware.net/2020/12/07/issues-with-qt-app... And dialog widget layouts never look quite right on macOS. I am not aware that Qt 6 fixes any of these issues. I hope they get fixed soon.
- zelly 6y agoIMO the worst part about this is not the pricing change but the fact that they advertise using CMake as a selling point.
- pabs3 6y agoI note that Qt 6 will not be in Debian any time soon: https://perezmeyer.blogspot.com/2020/08/stepping-down-as-qt-6-maintainers.html https://perezmeyer.blogspot.com/2020/08/stepping-down-as-qt-... https://lists.qt-project.org/pipermail/development/2020-August/040110.html https://lists.qt-project.org/pipermail/development/2020-Augu...