I always wonder why Qt5+/Qml/QtQuick have not taken the XP desktop development by storm. QML is JS like, there's an IDE and KDE seems to have built lot of good looking desktop software using Kirigami/QtQuick. It's got to be better than anything Electron for sure. Anyone know if .NET Core Qt bindings are a technical possibility?
ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
61–70 of 87 posts
Re: ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
#62Earlier quoted context omitted.
> What's really needed is a standard GUI markup language (SGML) What's wrong with HTML? Isn't it already everywhere, including in all browsers? > HTML browser makers usually don't care if they break a particular JavaScript library by adding or tweaking features. HTML and JS are two different languages. One is a markup language, the other a scripting language. If changes to the markup language break a library in the s…
Re: "What's wrong with HTML?" It doesn't handle "state" well, and lacks common GUI idioms like menu bars, tool-bars, editable data grids, combo-boxes, model dialog boxes/windows, MDI, and others. Perhaps HTML can be modified to do those well, but it probably wouldn't be "HTML" anymore. Re: "If changes to the markup language break a library in the scripting one, its clearly the library that needs fixing." I'm comparin…
It is a markup language, just like the SGML you talked about. In-fact, it started out as a subset of SGML. If it could handle state, it would not be a markup language. The same applies for any desktop GUI that uses a custom markup language to declare a UI.
> via HTML + DOM + CSS + JavaScript + JavaScript libraries to something that natively handles GUI's. Those 5 parts together have proven fragile
They have proven so fragile, that the whole web, billions of pages handling all sorts of things from banking to social media run on top of them. Not to mention PWA mobile apps and cross-platform desktop apps like VS Code. And it is actually 4 parts, all platforms have libraries.
> That's why we need a dedicated GUI markup language and browser (or pluggin).
We already have one, maybe you just don't like it, don't understand it or its not cool/edgy enough for your tastes. It's called HTML.
Re: ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
#63Earlier quoted context omitted.
Well I guess that makes it easier. I'd rather write Java than Kotlin anyway.
Really? That's the first time I've ever heard someone say that. What is it about Kotlin you don't like?
I also don't enjoy functional programming, I find that it quickly becomes unreadable and kotlin is a weird mix between FP and OOP.
Re: ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
#64Earlier quoted context omitted.
That "Hello World" example uses Java's Swing GUI framework which is older and does not port to the web as easily as JavaFX. Here is the JavaFX-based "Hello World": https://docs.oracle.com/javafx/2/get_started/hello_world.htm... There are also numerous Java to Web frameworks and solutions like TeaVM ( https://blogs.oracle.com/javamagazine/java-in-the-browser-wi... ), JSF ( https://javaee.github.io/javaserverfaces-spec…
Isn’t that generally the main benefit of using electron based apps? The ability to target both desktop and web? We can bemoan the inefficiency of this, and how wasteful it is, but at the end of the day, it’s a very portable way of delivering applications. I think VSCode is a huge success because of this model.
Yes, but then what would be the point of ElectronCGI?
If the goal is to target desktop and web then Electron is a great choice. There are many popular Electron-based applications that show this, e.g. Slack, VSCode, etc.
ElectronCGI is supposed to provide a cross-platform GUI for use cases where the full Electron stack is not wanted or perhaps not available.
I applaud the effort, but it strikes me as a strange choice since it brings the client-server and async complexities from web programming into a desktop environment. It seems like a very niche use case. Perhaps if you have a large .NET codebase that needs to be available as a cross-platform desktop application, but for some reason you can't use Electron / Blazor ?
Re: ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
#65Earlier quoted context omitted.
I like your idea and Microsoft probably hoped for XAML to become that standard.
It's fairly close to what I have in mind, but it's also mostly static, I believe. It would need enhancements to handle interaction and UI updates better. And I'm not sure about its cross-platform abilities, but I haven't tested the limits.
XAML Behaviors and Storyboards have been around since very early in XAML history. They aren't fun to write by hand, which is why originally they were a "Blend thing" focused for Designers mostly (and a lot of the XML namespaces still have "Blend" or "Expression" keywords in them) and the non-Designer Developer story for them has always lagged behind, which sometimes seems a shame because they can also be really powerful.
> And I'm not sure about its cross-platform abilities, but I haven't tested the limits.
There was the brief period where Silverlight was very cross-platform. Xamarin and Uno and Avalonia all seem healthy and to imply that XAML works well cross-platform.
Re: ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
#66I always wonder why Qt5+/Qml/QtQuick have not taken the XP desktop development by storm. QML is JS like, there's an IDE and KDE seems to have built lot of good looking desktop software using Kirigami/QtQuick. It's got to be better than anything Electron for sure. Anyone know if .NET Core Qt bindings are a technical possibility?
A .Net Core Qt Quick binding is not only possible, but very real: https://github.com/qmlnet/qmlnet I think most KDE apps are neither written using Kirigami nor Qt Quick however, but plain old Qt Widgets (maybe I'm misinformed, but Kirigami doesn't look much like it's customizable by the desktop environment, which is something I love about KDE apps).
Re: ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
#67Earlier quoted context omitted.
They can relink. The object files for relinking aren't required to go through App Store. Static/dynamic linking isn't a problem.
Interesting. If I install this [0] app, how can I relink it against my patched QT5? 0: https://apps.apple.com/us/app/qt-5-showcases-by-v-play-apps/...
Re: ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
#68I always wonder why Qt5+/Qml/QtQuick have not taken the XP desktop development by storm. QML is JS like, there's an IDE and KDE seems to have built lot of good looking desktop software using Kirigami/QtQuick. It's got to be better than anything Electron for sure. Anyone know if .NET Core Qt bindings are a technical possibility?
Two replies mention licensing, with two different answers (It's easy, people just don't understand! It's hard, people just don't understand!). Personally, I've tried a couple of times to read the license information on the Qt site and sort out how the licensing really works. I still only have a rough understanding. It seems like information on the Qt site is intentionally vague so you'll be more inclined to buy a com…
You could just go to the repo and check the licenses there :
Re: ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
#69Earlier quoted context omitted.
Interesting. If I install this [0] app, how can I relink it against my patched QT5? 0: https://apps.apple.com/us/app/qt-5-showcases-by-v-play-apps/...
Felgo most certainly uses Qt through the commercial license so nothing is LGPL here.
Re: ElectronCGI – A Solution to Cross-Platform GUIs for .NET Core
#70Earlier quoted context omitted.
Felgo most certainly uses Qt through the commercial license so nothing is LGPL here.
Right. Now imagine it didn't. What then?
The onus is on the person making the app that links against the LGPL library to provide you with the build instruction.
At worse they would give you their main static library and Qt LGPL source code and you just have to relink them and open Xcode to upload it to your iDevice ?
Here is for instance the source code for the telegram app for iOS which is under GPL : https://github.com/TelegramMessenger/Telegram-iOS
there is no difference with... basically every other open source project ? Open the .xcodeproj, build, run.