blob: 69f322d1ba6f6f15821f7754cf260436cb0591d7 [file] [log] [blame]
<?php
require_once ($_SERVER['DOCUMENT_ROOT']."/eclipse.org-common/system/app.class.php");
require_once ($_SERVER['DOCUMENT_ROOT']."/eclipse.org-common/system/nav.class.php");
require_once ($_SERVER['DOCUMENT_ROOT']."/eclipse.org-common/system/menu.class.php");
require_once($_SERVER['DOCUMENT_ROOT'] . "/projects/common/project-info.class.php");
$App = new App(); $Nav = new Nav(); $Menu = new Menu();
$projectInfo = new ProjectInfo("modeling.gmf");
$projectInfo->generate_common_nav( $Nav );
include ($App->getProjectCommon());
#*****************************************************************************
#
# gmf-new-1.0M3.php
#
# Author: Richard C. Gronback
# Date: 2005-12-01
#
# Description:
#
#
#****************************************************************************
#
# Begin: page-specific settings. Change these.
$pageTitle = "What's New and Noteworthy - 1.0M3";
$pageKeywords = "eclipse,project,graphical,modeling,model-driven";
$pageAuthor = "Richard C. Gronback";
# Add page-specific Nav bars here
# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
# $Nav->addNavSeparator("My Page Links", "downloads.php");
# $Nav->addCustomNav("My Link", "mypage.php", "_self", 3);
# $Nav->addCustomNav("Google", "http://www.google.com/", "_blank", 3);
# End: page-specific settings
#
# Paste your HTML content between the EOHTML markers!
$html = <<<EOHTML
<div id="maincontent">
<div id="midcolumn"><br/>
<table border="0" cellpadding="2" cellspacing="0" width="100%">
<tbody>
<tr>
<td align="left"><h1>$pageTitle</h1></td>
<td align="right"><img align="right" src="http://www.eclipse.org/gmf/images/logo_banner.png" /></td>
</tr>
</tbody>
</table>
<hr/>
<table border="0" cellspacing="5" cellpadding="2" width="100%">
<tbody>
<tr>
<td width="69%" class="bannertext">
Here are some of the more noteworthy things available in milestone build M3
(November 18, 2005) which is now available for <a href="http://download.eclipse.org/modeling/gmp/downloads/drops/S-1.0M3-200511182000/index.php" target="_self">download</a>.
See the <a href="http://download.eclipse.org/modeling/gmp/downloads/drops/S-1.0M3-200511182000/buildNotes.php">M3 build notes</a> for details about bugs fixed
and other changes.
</td>
</tr>
<tr>
<td colspan="2">
</td>
</tr>
</tbody>
</table>
<p></p>
<table border="0" cellpadding="10" cellspacing="0" width="100%">
<tbody>
<tr>
<td colspan="2">
<h2>Runtime</h2>
<hr/>
</td>
</tr>
<tr>
<td align="left" valign="top" width="10%">
<p align="right"><b>General</b></p>
</td>
<td align="left" valign="top" width="70%">As this is the GMF project's first official milestone, all of it is "New and Noteworthy," in a sense. Aside from the documentation referenced below, to aid in understanding the runtime portion of GMF, the beginnings of an article describing its components is found <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=115537">here</a>.
<hr/></td>
</tr>
<tr>
<td align="left" valign="top" width="10%">
<p align="right"><b>API</b></p>
</td>
<td align="left" valign="top" width="70%">
API continued to be a focus in M3 to ensure that the public
api will be scalable and solid for future releases to accommodate backward
compatibility.� Specifically, we aimed to have consistent nomenclature with GEF
(i.e. ?Connection? as opposed to ?Connector?, ensure intuitive naming and that
any redundancies were identified and removed.� Additionally we made sure that
internal API that should be accessible external was made public and documented
accordingly.<br/><br/>
A significant change is the support for different coordinate
systems.� Previous to M3, clients were expected to use the HiMetric coordinate
system (2540 units per inch) when initializing their figures and when
manipulating the model.� Now this requirement has been relaxed so that clients
not interested in the precision or absolute qualities of HiMetric can utilize
an Identity mapping mode.� This means that essentially device coordinates
(pixels) are equal to logical coordinates (persisted units).� This mode is more
similar to how existing GEF clients would be expected to work.� This change
should ease migration for existing GEF clients or clients that don?t need a
precision coordinate system for their Editor.� The default coordinate system
continues to be HiMetric, so clients need make overrides to enter this new mode
(see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=112788">112788</a>
).
<hr/></td>
</tr>
<tr>
<td align="left" valign="top" width="10%">
<p align="right"><b>Performance Enhancements</b></p>
</td>
<td align="left" valign="top" width="70%">GMF runtime is designed for scalability through our extensibility
infrastructure and component based architecture.� However, this requires that
we pay close attention to performance issues with respect to loading of
diagrams and creation of elements.� In M3 we dedicated time to profiling the
runtime and identifying some bottlenecks that were prohibiting maximum
performance.� The following list of issues was addressed to ensure performance
won?t degrade when clients add their own domain functionality to GMF services.�
Most of then are removing redundancy where figures were created before they
were needed, ensuring caching for repeated calls and making sure that execution
was not carried out when not needed.
<hr/></td>
</tr>
<tr>
<td align="left" valign="top" width="10%">
<p align="right"><b>Usability</b></p>
</td>
<td align="left" valign="top" width="70%">Some minor usability enhancements have been made in M3.�
Notable one is the ability to drag and drop from the tool creation palette onto
the diagram surface.� Previously, you had to click on the tool entry and then
re-click on the diagram surface to invoke the creation.� Now you can click on
the tool entry and without releasing the mouse drag onto the diagram surface
and the creation will be invoked.� This has been available in GEF for a while but
our creation mechanism is different requiring some additional work to support
this use-case.
<hr/></td>
</tr>
<tr>
<td align="left" valign="top" width="10%">
<p align="right"><b>Documentation</b></p>
</td>
<td align="left" valign="top" width="70%">A programmer?s guide for the diagram runtime has been
introduced that provides a general introduction to the architecture and usage
scenarios.� This has been added to the Documentation component available from
the nightly builds.� After you?ve installed this component into your Eclipse
development environment, then it is accessible from the ?Help Contents? menu.
</td>
</tr>
<tr><td colspan="2" align="center"><img src="images1.0m3/doc.png"></td></tr>
<tr>
<td colspan="2">
<h2>Tooling</h2>
<hr/>
</td>
</tr>
<tr>
<td align="left" valign="top" width="10%">
<p align="right"><b>General</b></p>
</td>
<td align="left" valign="top" width="70%">As with the runtime component, all of the tooling side of the GMF project is "New and Noteworthy" at this stage. A tutorial is published <a href="http://www.eclipse.org/gmf/tutorial/index.php">here</a> to give you a jumpstart using GMF's diagram and mapping models.
<hr/></td>
</tr>
<tr>
<td align="left" valign="top" width="10%">
<p align="right"><b>OCL</b></p>
</td>
<td align="left" valign="top" width="70%">While defining relationships between your diagram and domain model elements, you can try to further specify domain elements with a specializer expressed in OCL. Additionally, you could try to add statements (again, in OCL) to set some attributes of your newly created domain element (use Initializer in gmfmap to do this). Please note, these features just made it into M3, so use them at your own risk ;-)
</td>
<tr><td colspan="2" align="center"><img src="images1.0m3/ocl.png"></td></tr>
<tr>
<td align="left" valign="top" width="10%"></td>
<td align="left" valign="top" width="70%"><hr/></td>
</tr>
</tr>
<tr>
<td align="left" valign="top" width="10%">
<p align="right"><b>Diagram Initialization</b></p>
</td>
<td align="left" valign="top" width="70%">Try this: right-click on any domain model instance for which you have defined a diagram. GMF includes a means by which to initialize a diagram from existing model instance (InitDiagramFileAction), but be sure to perform "Arrange all" when done ;-)</td>
<tr><td colspan="2" align="center"><img src="images1.0m3/initialize_diagram.png"></td></tr>
</tr>
</tbody>
</table>
</div>
</div>
EOHTML;
# Generate the web page
$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>