GUIKit widget definitions benefit from all the features of the Mathematica source editor, for example, code completion and error reporting. They also provide a code outline that is different from the typical code outline.
Here is a widget definition:
The following code outline is generated.
The different parts of the outline can be opened and closed. In addition, you can select parts of the outline; this selects the corresponding components of the widget.