PySide/sv

PyQt är en python modul som tillåter python applikationer att skapa, komma åt och ändra Qt applikationer. Du kan använda den för till exempel att skapa dina egna Qt program i python, eller till att komma åt och ändra gränssnittet i en körande qt applikation, som FreeCAD.

Genom att använda PyQt modulen inifrån FreeCAD, så har du därför full kontroll över dess gränssnitt. Du kan till exempel:


 * Lägga till dina egna paneler, widgetar och verktygslådor
 * Lägga till eller gömma element i existerande paneler
 * Ändra, omdirigera eller lägga till anslutningar mellan alla dessa element

PyQt has an extensive API documentation, and there are many tutorials on the net to teach you how it works.

If you want to work on the FreeCAD interface, the very first thing to do is create a reference to the FreeCAD main window: Then, you can for example browse through all the widgets of the interface: The widgets in a Qt interface are usually nested into "containers" widgets, so the children of our main window can themselves contain other children. Depending on the widget type, there are a lot of things you can do. Check the API documentation to see what is possible.

Adding a new widget, for example a dockWidget (which can be placed in one of FreeCAD's side panels) is easy: You could then add stuff directly to your widget: But a preferred method is to create a UI object which will do all of the setup of your widget at once. The big advantage is that such an UI object can be created graphically with the Qt Designer program. A typical object generated by Qt Designer is like this: To use it, you just need to apply it to your freshly created widget like this: