Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

A forum for research and development of the user interface of FreeCAD

Moderator: agryson

User avatar
Aleks
Posts: 85
Joined: Sun Mar 08, 2020 5:27 pm
Location: Sankt Augustin, Germany
Contact:

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby Aleks » Tue Mar 17, 2020 11:49 pm

chrisb wrote:
Tue Mar 17, 2020 10:26 pm
Aleks wrote:
Tue Mar 17, 2020 8:11 pm
Ich habe mal heute ein ...
Should I move this post? If not: please post here in English.
I have posted it in a more appropiate topic.
garlicbread
Posts: 11
Joined: Sun Mar 17, 2019 3:55 am

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby garlicbread » Sun Sep 20, 2020 6:21 pm

I've been looking at the UI of freecad to see what a better option would be in the future moving forward (I'm not an official dev myself or anything)
Since I'd like a useable alternative to Solidworks
Fusion360 has recently dropped a bit of a bomb on personal users with some new limits recently as well

There was a discussion over using freecad in a webbrowser similar to onshape

* https://forum.freecadweb.org/viewtopic. ... 57#p432157

Then I stumbled across this thread
Something I did find recently is that it may now be possible to build out QT Apps into webassembly with 5.13
This would mean you could optionally have the UI visible in a web browser with a python server backend running.

* https://doc.qt.io/qt-5/wasm.html

Anyway I can't promise anything but I'm going to have a look at this and QML and see if it's possible to integrate webpack and CSS / SCSS / Typescript into the build process. Since this might also be an interesting way to write other types of desktop apps using Qt.
I need to learn a bit about how QML works compared to node / more conventional JS.
User avatar
vanuan
Posts: 465
Joined: Wed Oct 24, 2018 9:49 pm

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby vanuan » Sun Sep 20, 2020 6:41 pm

garlicbread wrote:
Sun Sep 20, 2020 6:21 pm
Something I did find recently is that it may now be possible to build out QT Apps into webassembly with 5.13
This would mean you could optionally have the UI visible in a web browser with a python server backend running.
I don't want to discourage you, but I don't see how running Qt inside the web would help. What is the goal here? A better UI or turning FreeCAD into a cloud-based application?
garlicbread
Posts: 11
Joined: Sun Mar 17, 2019 3:55 am

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby garlicbread » Sun Sep 20, 2020 9:25 pm

vanuan wrote:
Sun Sep 20, 2020 6:41 pm
I don't want to discourage you, but I don't see how running Qt inside the web would help. What is the goal here? A better UI or turning FreeCAD into a cloud-based application?
My thoughts were if you could move from using C++ for the UI to JS for the UI code

* it might encourage more devs to be involved from a JS background from the outside
* You could use Qt via QML as a base (since it's probably better suited) but also add additional graphical controls from npm on top of that if needed.
* transitioning may be easier since the existing UI code is already based around Qt (although not Qml) so doing everything at once would be less of a concern.

Connecting QML / JS to Python would still be a consideration.

Being able to access the UI via a webbrowser isn't that important since you'd still need the python backend
but it'd be a nice to have I suppose and might allow for things like using it on a tablet or Android device (although I can see that being more of a novelty). It might also go some way to being easier to build / more cross platform although I'm not sure.
User avatar
vanuan
Posts: 465
Joined: Wed Oct 24, 2018 9:49 pm

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby vanuan » Sun Sep 20, 2020 10:00 pm

garlicbread wrote:
Sun Sep 20, 2020 9:25 pm
Let's move this discussion to one of the JavaScript threads. This is not directly related to UI. https://forum.freecadweb.org/viewtopic. ... 31#p432231
User avatar
ipatch
Posts: 21
Joined: Wed Apr 08, 2020 3:40 pm
Location: dfw
Contact:

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby ipatch » Mon Nov 16, 2020 10:26 pm

i'll see where i can get with this. i've recently started compiling freecad from source on macos using a formula file i created, and also added freecad pre to homebrew cask versions for easy installation of the 0.19 pre releases found on the releases page.

updating the UI is definitely something that is not going to happen overnight. it seems the most tangible work on migrating the current widget based ui to declarative qml based ui came from ickby. i've added the their remote to my fork of freecad and noticed several qml files, so i'll take a look and see if i can compile the latest master branch with a few qml additions.

obviously it seems gradually migrating interface elements to qml would be a more practical approach then rewriting the entire ui using qml. one of the advantages i'd like to see from migrating to qml is quicker build times as it currently takes me ~ 40 minutes to compile freecad on my macbook 2013 late model, and from what i understand (from reading the qt docs and various links) if one updates a `.ui` file the entire source has to be recompiled in order to take advantage of the updated changes. please correct me if i'm wrong on that front.

anyways, i've been jotting down most of my findings about working with freecad below,

https://github.com/ipatch/homebrew-us-0 ... ev/freecad
ickby
Posts: 2985
Joined: Wed Oct 05, 2011 7:36 am

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby ickby » Wed Nov 18, 2020 3:56 pm

My work is quite old and most likely not working anymore. Also, realthunder has done much work on UI on his branch with almost the same effekt ov overly UIs, most likely it makes more sense to base any large UI work on that than on my old clunky code.
User avatar
ipatch
Posts: 21
Joined: Wed Apr 08, 2020 3:40 pm
Location: dfw
Contact:

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby ipatch » Sat Nov 21, 2020 9:41 pm

ickby

agreed, the work you did with qt quick is quite dated, as i believe you even stated you did your work with a version of qt in the 4.x series, more than likely it was 4.8.x and above because from what i understand that was about the qt group added support for QML. and to the best of my knowledge your fork and experimentation is the only version of freecad that attempts to even use QML. i bring all this up because as great as the qt widgets are they are becoming dated, and aren't receiving the same amount of attention that the qml qt quick libraries are receiving obviously qt will continue to support widget based apps, ie. freecad for time being, but eventually i believe widgets will reach EOL. so putting in a little effort to explore QML and to see how some of it can applied to freecad seems worth some attention. i'm not saying the entire app has to be migrated to QML and that all support for widgets needs to stop, but having an understanding of qml and how it can work with freecad seem like a valuable effort of time.

i understand the realthunder fork is doing some great work with updating the ui and i don't discourage what he is doing at all, but doing a quick search through his fork i didn't notice any qml based gui elements, which makes me think he's doing some heavy lifting with customizing the stylesheet elements (qss files) of the app to achieve a lot of his updated ui. i haven't fully explored his fork or sifted through the commits so correct me if i'm wrong please.

for me personally i'm more interested in incorporating ui elements using qt quick and qml. if i get anywhere with it, i'll def post back and try best to explain what i'm doing and what i'd like to achieve.

cheers
chris
User avatar
Kunda1
Posts: 8769
Joined: Thu Jan 05, 2017 9:03 pm

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby Kunda1 » Sun Nov 22, 2020 5:43 am

This is a very interesting 'plot twist'. Please keep us updated on your findings, @ipatch
:+1:
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
User avatar
ipatch
Posts: 21
Joined: Wed Apr 08, 2020 3:40 pm
Location: dfw
Contact:

Re: Alternative GUI for FreeCAD: Overlayed Layout (Devs needed)

Postby ipatch » Sun Nov 22, 2020 7:38 pm

Kunda1 wrote:
Sun Nov 22, 2020 5:43 am
This is a very interesting 'plot twist'. Please keep us updated on your findings, @ipatch
:+1:
totes

Image