MOOC Workbench create tutorial in GUI

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
KAKM
Posts: 112
Joined: Tue May 04, 2021 12:17 am

MOOC Workbench create tutorial in GUI

Post by KAKM »

I was thinking that it would improve the usability of the MOOC workbench to be able to create a tutorial within the GUI instead of having to write a Python file. It also seems like adding things like a FreeCAD version checker, having the help button link to the documentation or additional hints, highlighting the button/menu you're supposed to select, and/or tutorial playlists would improve usability. So I'm going to try writing them and I was wondering if anyone had thoughts on file format for saving the tutorials (generic .py? .FCMacro? something else?) and what features would be most useful.

Current plan is to start by creating a GUI tool that will start with a recorded macro to create <some FreeCAD model> and convert it to a usable tutorial file by letting you break up the commands into steps and adding annotations, video link, help links, etc. Then from there it would make sense to add in the ability to switch display settings around (toggle icons/keyboard shortcuts/GUI highlighting, show/hide steps, etc), and from there start moving on to additional functionality (e.g., version checker).

Katy
chrisb
Veteran
Posts: 54158
Joined: Tue Mar 17, 2015 9:14 am

Re: MOOC Workbench create tutorial in GUI

Post by chrisb »

Sounds promising, thanks for working on it.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: MOOC Workbench create tutorial in GUI

Post by Kunda1 »

Sounds awesome! Subscribed to this thread.
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
User avatar
onekk
Veteran
Posts: 6199
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: MOOC Workbench create tutorial in GUI

Post by onekk »

Some question?

What is MOOC WorkBench?

Good idea to ease a tutorial creation, but maybe I will not be focusing on videos, there are two main problems on this approach in my point of view?

- A video is related to two thing that may vary and greatly:
-- UI language
-- FreeCAD version

There are many video around that are outdated and are good only to "raise money on youtube" for the maker of the video, totally inusable as the resolution is poor and there is no way to read even the menu items, you see only a "mouse running around the screen", even the FreeCAD version is difficult to see.

A decent PDF with some screenshots, or better with proper "menu items" in the form of "Edit" > "Move" or similar indication is more taylored, so maybe a way to extract from a "recorded macro focused on documentation" such informations, would be a "must".

A way to make some "interactive tutorial" running a macro simply loading a ".py or FCMacro" file will be a very welcomed way to "write tutorials".

But this involve on some "rethingking" of the UI or at least in a way to create a "proper macro language" in the sense of the "old macros" present in "old programs" that when invoked make the mose move to the proper menu item, simulate the click, select the proper submenu if there are any and so on.

In this way tutorials could be "coded" and reused maybe across "FreeCAD versions" if the interface will not change too much.

And maybe a simila way of thingking will help to automate some "wiki page creation", I doubt if this way of "recording macros" is doable even now, as if i may invoke a command that normally is "commented" as example:

Code: Select all

Gui.Selection.addSelection('test','ma_cir','',-301.625,143.718,0)
It will be "a very wonderful thing", it there were a "demo mode" where issuing this command, i will see the mode move from the current position to (-301.625,143.718,0) and select the ("test", "ma_cir") circle and maybe then invoke some other operation seeing the "mouse pointer" move to the menu item and open the menu and so on.

Sorry for the intrusion and i hope having expained my vision in a decent way.

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
KAKM
Posts: 112
Joined: Tue May 04, 2021 12:17 am

Re: MOOC Workbench create tutorial in GUI

Post by KAKM »

The MOOC Workbench is an external workbench that currently has a tool that plays interactive tutorials and a function that compares the model you have created with the model intended by the creator of the tutorial. More information is available in this forum thread: https://forum.freecadweb.org/viewtopic.php?t=37584 and in the documentation here: https://wiki.freecadweb.org/MOOC_Workbench

I don't plan on focusing on video tutorials–the only reason this is going to have the ability to link in a video is because that already exists in the code and I don't want to remove any functionality right now. The "interactive tutorial" is exactly what I'm aiming for: a tutorial that will highlight GUI buttons or show you keyboard commands, has a place to show written instructions and possibly separate hints, that you can run by loading a tutorial file. The thing that I am currently working on is the ability to create that tutorial file from a previously recorded macro of creating a model. Basically, it will allow you to load a macro, then divide the commands in the macro into tutorial steps, and add instructions/comments/hints/links to a video.

The general principle of the code I am currently writing is to treat the macro as text, so it can still use information that is commented out. It's not very difficult to create a function that will remove any '#' characters from the beginning of a text string, so it will be easy to convert a commented command into a real one (though that shouldn't be necessary–the point of the tutorial is to get the user to send that command themselves). I don't understand how that would help with wiki page creation, though.

I was planning on creating a command that would make the desired button on the GUI "highlight" or "flash" to draw your attention to it. Thank you for pointing out that I'll need a function for showing that you need to click on something in the model to apply constraints and such-I had completely forgotten about that. Instead of using the mouse pointer, do you think it would make sense to have an icon like a little bullseye appear where you need to click? Or would it be better to have a simulated pointer appear at the current location of the real mouse and move to the point where you need to click? Maybe the simulated pointer could look like a freecad/mooc workbench logo next to a pointer, so you can tell it apart from your real pointer.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: MOOC Workbench create tutorial in GUI

Post by Kunda1 »

Can someone tell me if the MOOC workbench has been translated in to english yet ?
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
KAKM
Posts: 112
Joined: Tue May 04, 2021 12:17 am

Re: MOOC Workbench create tutorial in GUI

Post by KAKM »

The workbench itself has been translated into English, but the tutorials are still in French.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: MOOC Workbench create tutorial in GUI

Post by Kunda1 »

I wish we could exchange the default french with english and make a french.ts file instead
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
dxp.dev
Posts: 280
Joined: Tue Dec 11, 2018 12:57 pm

Re: MOOC Workbench create tutorial in GUI

Post by dxp.dev »

Kunda1 wrote: Fri Jul 30, 2021 7:39 pm I wish we could exchange the default french with english and make a french.ts file instead
Is it in CrowdIn ?
Find your user.cfg and system.cfg files : Macro_findConfigFiles

Imperial system makes no sense, go metric ! ! !
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: MOOC Workbench create tutorial in GUI

Post by Kunda1 »

dxp.dev wrote: Sat Jul 31, 2021 10:23 am Is it in CrowdIn ?
We could probably add it. But I was referring to changing the source code.
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Post Reply