Stephan Herrmann | 0166441 | 2010-04-01 20:28:43 +0000 | [diff] [blame] | 1 | <html> |
| 2 | <head> |
| 3 | <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" /> |
| 4 | <link rel=stylesheet type="text/css" href="../css/book.css"> |
| 5 | <title>Object Teams Type Hierarchy</title> |
| 6 | <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> |
| 7 | <style type="text/css"> |
| 8 | h2 {color: blue} |
| 9 | h3 {color: green} |
| 10 | </style> |
| 11 | </head> |
| 12 | <body> |
| 13 | <h1>Object Teams Type Hierarchy</h1> |
| 14 | The <b>Object Teams type hierarchy</b> provides the following features |
| 15 | (in addition to the features of the standard JDT |
| 16 | <a href="/help/topic/org.eclipse.jdt.doc.user/reference/ref-type-hierarchy.htm"> |
| 17 | type hierarchy view</a>): |
| 18 | <h3>Type hierarchy tree:</h3> |
| 19 | <ul> |
| 20 | <li>shows <b>supertype/subtype hierarchy</b> of Object Teams types (team classes, |
| 21 | role classes) |
| 22 | </li> |
| 23 | <li>shows full <b>role type hierarchy</b> incl. <b>implicit inheritance</b></li> |
| 24 | <li>displays <b>Object Teams specific icons</b> for team classes, role classes and |
| 25 | method bindings |
| 26 | </li> |
| 27 | </ul> |
| 28 | <h3>Member list (method viewer):</h3> |
| 29 | <ul> |
| 30 | <li>shows <b>methods</b> in hierachy</li> |
| 31 | <li>shows <b>implicitly inherited methods</b></li> |
| 32 | <li>shows <b>method bindings</b></li> |
| 33 | <li>shows <b>inherited method bindings</b></li> |
| 34 | </ul> |
| 35 | |
| 36 | <h2>Opening a type hierarchy on the current text selection</h2> |
| 37 | To open a type hierarchy on a text selection, select the name of an Object Teams element |
| 38 | or Java element in the editor or package explorer and do one of the following: |
| 39 | <ul> |
| 40 | <li>Press <b>F4</b></li> |
| 41 | <li>select <b>Open Type Hierarchy</b> from the package explorer's pop-up menu</li> |
| 42 | </ul> |
| 43 | <b>Note</b>: If the selected Object Teams element or Java element is not a type or a |
| 44 | compilation unit, the hierarchy opens on the type enclosing the current selection. |
| 45 | <p> |
| 46 | <strong>Type hierarchy</strong>:<br> |
| 47 | <img src="images/screenshots/typeHierarchy.jpg" |
| 48 | styles="left" alt="Object Teams type hierarchy view"> |
| 49 | </p> |
| 50 | <p> |
| 51 | <strong>Role hierarchy</strong>:<br> |
| 52 | <img src="images/screenshots/implicitRoleHierarchy.jpg" |
| 53 | styles="bottom" alt="Object Teams implicit role hierarchy view"> |
| 54 | </p> |
| 55 | Note, that for roles, the super types are not restricted to a linear chain, but due to combination |
| 56 | of explicit and implicit inheritance (<a href="otjld/def/s1.html#s1.3.1">OTJLD §1.3.1 </a>) |
| 57 | a role may have multiple supers. E.g., in the picture, <code>HierarchyDisplayImpl.CompositeNode</code> |
| 58 | explicitly inherits from <code>HierarchyDisplayImpl.Node</code> and implicitly |
| 59 | inherits from <code>HierarchyDisplay.CompositeNode</code>. |
| 60 | </body> |
| 61 | </html> |