| <html> |
| <head> |
| <meta name="copyright" content="Copyright Technical University Berlin and others 2004, 2010. This page is made available under the Eclipse Public License v1.0. For full details see http://www.eclipse.org/legal/epl-v10.html" /> |
| <link rel=stylesheet type="text/css" href="../css/book.css"> |
| <title>Object Teams Type Hierarchy</title> |
| <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> |
| <style type="text/css"> |
| h2 {color: blue} |
| h3 {color: green} |
| </style> |
| </head> |
| <body> |
| <h1>Object Teams Type Hierarchy</h1> |
| The <b>Object Teams type hierarchy</b> provides the following features |
| (in addition to the features of the standard JDT |
| <a href="PLUGINS_ROOT/org.eclipse.jdt.doc.user/reference/views/ref-type-hierarchy.htm"> |
| type hierarchy view</a>): |
| <h3>Type hierarchy tree:</h3> |
| <ul> |
| <li>shows <b>supertype/subtype hierarchy</b> of Object Teams types (team classes, |
| role classes) |
| </li> |
| <li>shows full <b>role type hierarchy</b> incl. <b>implicit inheritance</b></li> |
| <li>displays <b>Object Teams specific icons</b> for team classes, role classes and |
| method bindings |
| </li> |
| </ul> |
| <h3>Member list (method viewer):</h3> |
| <ul> |
| <li>shows <b>methods</b> in hierarchy</li> |
| <li>shows <b>implicitly inherited methods</b></li> |
| <li>shows <b>method bindings</b></li> |
| <li>shows <b>inherited method bindings</b></li> |
| </ul> |
| |
| <h2>Opening a type hierarchy on the current text selection</h2> |
| To open a type hierarchy on a text selection, select the name of an Object Teams element |
| or Java element in the editor or package explorer and do one of the following: |
| <ul> |
| <li>Press <b>F4</b></li> |
| <li>select <b>Open Type Hierarchy</b> from the package explorer's pop-up menu</li> |
| </ul> |
| <b>Note</b>: If the selected Object Teams element or Java element is not a type or a |
| compilation unit, the hierarchy opens on the type enclosing the current selection. |
| <p> |
| <strong>Type hierarchy</strong>:<br> |
| <img src="images/screenshots/typeHierarchy.jpg" |
| style="left" alt="Object Teams type hierarchy view"> |
| </p> |
| <p> |
| <strong>Role hierarchy</strong>:<br> |
| <img src="images/screenshots/implicitRoleHierarchy.jpg" |
| style="bottom" alt="Object Teams implicit role hierarchy view"> |
| </p> |
| Note, that for roles, the super types are not restricted to a linear chain, but due to combination |
| of explicit and implicit inheritance (<a href="otjld/def/s1.html#s1.3.1">OTJLD §1.3.1 </a>) |
| a role may have multiple supers. E.g., in the picture, <code>HierarchyDisplayImpl.CompositeNode</code> |
| explicitly inherits from <code>HierarchyDisplayImpl.Node</code> and implicitly |
| inherits from <code>HierarchyDisplay.CompositeNode</code>. |
| </body> |
| </html> |