|
|
(3 intermediate revisions by one other user not shown) |
Line 1: |
Line 1: |
− | The Slicer3 interface is highly configurable and even scriptable at runtime.
| + | <big>'''Note:''' We are migrating this content to the slicer.org domain - <font color="orange">The newer page is [https://www.slicer.org/wiki/Slicer3:GUI_Experiments here]</font></big>a |
− | | |
− | There are several options for GUI building:
| |
− | * Use the C++ API to KWWidgets
| |
− | ** this is the way most of Slicer3/Base/GUI is programmed for core functionality and built-in Modules
| |
− | ** this approach is the most consistent with the way the MRML and the Base/Logic classes are implemented
| |
− | ** C++ debuggers can be very helpful
| |
− | * Use the Tcl API to KWWidgets
| |
− | ** See the Modules/Editor code for an example of this
| |
− | ** the Modules/ScriptedModule code helps form a bridge between the Slicer3 Base and a GUI written in Tcl
| |
− | ** Arbitrary tcl code can be loaded any time and can build an interface that is compatible with the slicer theme (i.e. it has a look and feel consistent with the rest of slicer3). See the code in Base/GUI/Tcl/Loader.tcl for an example; this code implements the Add Data... dialog box in slicer3.
| |
− | ** This approach can be used to access sophisticated tcl/tk widgets, like [[Slicer3:GUI_Experiments:TkTreeCtrl|the TkTreeCtrl widget]] directly.
| |
− | * Tk and KWWidgets interfaces can also be invoked through the [[Slicer3:Python|Slicer3 Python hooks]] (note: not as thoroughly tested).
| |
Latest revision as of 17:57, 10 July 2017
Home < Slicer3:GUI ExperimentsNote: We are migrating this content to the slicer.org domain - The newer page is herea