removed old documentation
Signed-off-by: Francesco Guidieri <francesco.guidieri@gmail.com>
diff --git a/documentation/01-Introduction.html b/documentation/01-Introduction.html
deleted file mode 100644
index 0304e99..0000000
--- a/documentation/01-Introduction.html
+++ /dev/null
@@ -1,116 +0,0 @@
-<br style="clear:both;height:1em;">
- <div id="leftcol">
- <div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
- </div>
- <ul id="leftnav">
- <li class="partentry" >
- Documentation
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="01-Introduction.php">Introduction</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="02-GettingStarted.php">Getting Started</a></div>
- <ul style="display: none;" id="subToc_02-GettingStarted.html">
- <li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="03-Components.php">Components</a></div>
- <ul style="display: none;" id="subToc_03-Components.html">
- <li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="04-Customization.php">Customization</a></div>
- <ul style="display: none;" id="subToc_04-Customization.html">
- <li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="05-DSL.php">EMF Parsley DSL</a></div>
- <ul style="display: none;" id="subToc_05-DSL.html">
- <li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="06-AdvancedComponents.php">Advanced Components</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="07-Eclipse4.php">Eclipse 4</a></div>
- <ul style="display: none;" id="subToc_07-Eclipse4.html">
- <li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </li>
- <li class="partentry" >
- Appendix
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="GettingSources.php">Getting Sources</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="Downloads.php">EMF Parsley - Downloads</a></div>
- </li>
- </ul>
- </div>
- <div id="midcolumn">
- <a name="Introduction" ></a>
- <h1>Introduction</h1>
-
- <p>
- Emf Parsley is a lightweight framework that allows easy and quick development
- of EMF-based Applications. It can be configured to use all kind of EMF persistence
- implementations (XMI, Teneo, CDO).
- </p>
- <p>
- It aims at providing a set of Components like Trees, Tables and Detail Forms
- that manage the model with the introspective EMF capabilities.
- Using these components you can easily build forms, viewer or editors.
- The framework provides basic UI implementations which are customizable
- with Injection mechanism
- (based on <a href="http://code.google.com/p/google-guice" >Google Guice</a>).
- </p>
- <div id="disqus_thread"></div>
- <script type="text/javascript" src="documentationRoot.js"></script>
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'xtext'; // required: replace example with your forum shortname
-
- // The following are highly recommended additional parameters. Remove the slashes in front to use.
- var disqus_identifier = 'Introduction';
- var disqus_url = documentationRoot+'01-Introduction.php';
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- <br style="clear:both;height:1em;">
diff --git a/documentation/01-Introduction.php b/documentation/01-Introduction.php
deleted file mode 100644
index db46f84..0000000
--- a/documentation/01-Introduction.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
- $pageTitle = "Introduction";
-
- $html = file_get_contents('01-Introduction.html');
-
- $Nav->setLinkList(array());
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "01-Introduction.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/02-GettingStarted.html b/documentation/02-GettingStarted.html
deleted file mode 100644
index 2e1a2a3..0000000
--- a/documentation/02-GettingStarted.html
+++ /dev/null
@@ -1,513 +0,0 @@
-<br style="clear:both;height:1em;">
- <div id="leftcol">
- <div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
- </div>
- <ul id="leftnav">
- <li class="partentry" >
- Documentation
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="01-Introduction.php">Introduction</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="02-GettingStarted.php">Getting Started</a></div>
- <ul style="display: none;" id="subToc_02-GettingStarted.html">
- <li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="03-Components.php">Components</a></div>
- <ul style="display: none;" id="subToc_03-Components.html">
- <li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="04-Customization.php">Customization</a></div>
- <ul style="display: none;" id="subToc_04-Customization.html">
- <li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="05-DSL.php">EMF Parsley DSL</a></div>
- <ul style="display: none;" id="subToc_05-DSL.html">
- <li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="06-AdvancedComponents.php">Advanced Components</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="07-Eclipse4.php">Eclipse 4</a></div>
- <ul style="display: none;" id="subToc_07-Eclipse4.html">
- <li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </li>
- <li class="partentry" >
- Appendix
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="GettingSources.php">Getting Sources</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="Downloads.php">EMF Parsley - Downloads</a></div>
- </li>
- </ul>
- </div>
- <div id="midcolumn">
- <a name="GettingStarted" ></a>
- <h1>Getting Started</h1>
- <div class="toc">
- <ul>
- <li><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </div>
-
- <p>
- To get started, you may download "Eclipse Modeling Tools" or "Eclipse IDE for Java and DSL Developers" from <a href="http://www.eclipse.org/downloads/" >Eclipse
- Downloads</a>.
- </p>
- <p>
- This will ensure you have EMF and related Tools installed and ready to go (you may as well use any other Eclipse package, provided that you have installed
- also EMF and its tools).
- </p>
- <a name="Installation" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Installation</h1>
- <p>
- Now select "Help" -> "Install New Software..." and in the "Work with:" field insert the EMF Parsley update
- site <a href="http://download.eclipse.org/emf-parsley/updates" >http://download.eclipse.org/emf-parsley/updates</a>
- and install all features.
- Although sources are not strictly required, it might help when using EMF Parsley
- to have a look at its sources.
- </p>
- <p>
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/emf-parsley-update-site.png">
- <img src="images/emf-parsley-update-site.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
- </p>
- <a name="FirstExample" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>First Example</h1>
- <p>
- The purpose of this first example is to make use of the classical EMF Library Model example and
- create a view for editing such models using an EMF Parsley enabled plug-in.
- </p>
- <p>
- So let's start by creating the model plug-in with
- </p>
- <p>
- <ol>
- <li>File -> New... -> Example...</li>
- <li>from Category "Eclipse Modeling Framework", select "Extended Library Model Example"</li>
- <li>press Next and Finish</li>
- </ol>
- </p>
- <p>
- You will end up with three plug-ins:
- </p>
- <p>
- <ul>
- <li>org.eclipse.emf.examples.library (the model plug-in)</li>
- <li>org.eclipse.emf.examples.library.edit (the edit plug-in)</li>
- <li>org.eclipse.emf.examples.library.editor (the editor plug-in)</li>
- </ul>
- </p>
- <p>
- Please consider that here we are starting from this well known EMF model taken out-of-the-box from Eclipse,
- but you can start from your EMF model (in that case you may probably omit the ".edit" and ".editor" plugins, depending on your model).
- </p>
- <p>
- Now you can create your first example with the appropriate wizard.
- </p>
- <p>
- <ol>
- <li>select "File" -> "New" -> "Project..."</li>
- <li>from the "Emf Parsley" category select "Emf Parsley Dsl based Project"</li>
- <li>click "Next"</li>
- <li>give a name to the project (e.g. "org.eclipse.emf.parsley.examples.firstexample")</li>
- <li>click "Finish"</li>
- </ol>
-
-
- The generated project has some classes and a <em>module.parlsey</em> file, which opens automatically.
- Just type the following content into the {} block (note that context assist is available)
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">parts</span> {<br/>
- <span class="keyword">viewpart</span> org.eclipse.emf.parsley.examples.firstexample.view.library.treeform {<br/>
- <span class="keyword">viewname</span> <span class="string">"My Library Tree Form"</span><br/>
- <span class="keyword">viewclass</span> <br/>
- }<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- Here above we have just declared a view part with
-
- <ol>
- <li>id <em>"org.eclipse.emf.parsley.examples.firstexample.view.library.treeform"</em></li>
- <li>name <em>"Library Tree Form"</em></li>
- <li>class: not yet set, we are going to create
- <em>"org.eclipse.emf.parsley.examples.firstexample.views.LibraryTreeFormView"</em></li>
- </ol>
- </p>
- <p>
- So there is still an error, in fact we need to create the declared class.
- <em>Suggestion:</em> Just copy the above qualified class name (<em>"org.eclipse.emf.parsley.examples.firstexample.views.LibraryTreeFormView"</em>),
- select the project, right-click and select File -> New -> Class. Now paste the clipboard content into <em>"Name:"</em> field: the
- package and class name will be automatically splitted into right fields. Then click <em>"Finish"</em>.
- </p>
- <p>
- Now modify the view class code with this content:
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">import</span> org.eclipse.emf.parsley.views.AbstractSaveableTreeFormView;<br/>
- <span class="keyword">import</span> org.eclipse.emf.common.util.URI;<br/>
- <br/>
- <span class="keyword">public</span> <span class="keyword">class</span> LibraryTreeFormView <span class="keyword">extends</span> AbstractSaveableTreeFormView {<br/>
- <br/>
- <span class="keyword">protected</span> URI createResourceURI() {<br/>
- <span class="keyword">return</span> URI.createFileURI( System.getProperty(<span class="string">"user.home"</span>) + <span class="string">"/MyLibrary.library"</span> );<br/>
- }<br/>
- <br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- Now get back to <em>module.parlsey</em> file, go just after <em>"viewclass"</em> keyword, type <em>"LibraryTreeFormView"</em>
- and <em>Ctrl-Space</em>: the content assist will set automatically the correct qualified name
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">viewclass</span> org.eclipse.emf.parsley.examples.firstexample.views.LibraryTreeFormView
- </p>
- </div>
- </div>
- </p>
- <p>
- when you save the above file you will notice that a new file (<em>"plugin.xml_emfparsley_gen"</em>)
- is generated into the root folder of your project. Just copy this file into <em>"plugin.xml"</em>.
- </p>
- <p>
- Let's focus briefly on the above <em>createResourceURI()</em> method: our goal is allowing to manage
- a library model instance which persists on a EMF Resource.
- In this example we choose to use the EMF default persistence (XMI), but you can provide any URI
- (e.g. using Teneo, CDO or any other EMF Resource Persistence implementation)
- In particular here we choose to persist the Resource in a XMI file named <em>"MyLibrary.library"</em> into the user home
- folder (you might want to change it with any other path).
- </p>
- <p>
- We need a <em>Dependency</em> from the model plug-in: so open <em>MANIFEST.MF</em> file, go to <em>Dependencies</em>
- tab, press <em>"Add..."</em> button in <em>"Required Plug-ins"</em> section and insert <em>"org.eclipse.emf.examples.library"</em>
- among dependencies.
- </p>
- <p>
- Before executing this code we need to do some little more work in order to initialize the Resource.
- </p>
- <p>
- An easy way to overcome this issue can be the following:
- </p>
- <p>
- <ol>
- <li>open the class *GuiceModule (FirstexampleGuiceModule in this example) that the wizard created for you.
- Note that this is a key class for all customizations; it allows to override several methods in order to provide custom behaviors
- and implementations.</li>
- <li>override method <em>bindEmptyResourceInitializer()</em> providing a class for Resource initialization
-
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">public</span> Class<? <span class="keyword">extends</span> EmptyResourceInitializer> bindEmptyResourceInitializer() {<br/>
- <span class="keyword">return</span> LibraryEmptyResourceInitializer.<span class="keyword">class</span>;<br/>
- }
- </p>
- </div>
- </div>
-
- </li>
- <li>create a new class <em>LibraryEmptyResourceInitializer</em> extending from <em>EmptyResourceInitializer</em> for Resource initialization
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">import</span> org.eclipse.emf.parsley.resource.EmptyResourceInitializer;<br/>
- <span class="keyword">import</span> org.eclipse.emf.ecore.resource.Resource;<br/>
- <span class="keyword">import</span> org.eclipse.emf.examples.extlibrary.EXTLibraryFactory;<br/>
- <span class="keyword">import</span> org.eclipse.emf.examples.extlibrary.Library;<br/>
- <br/>
- <span class="keyword">public</span> <span class="keyword">class</span> LibraryEmptyResourceInitializer <span class="keyword">extends</span> EmptyResourceInitializer { <br/>
- <br/>
- <span class="keyword">public</span> <span class="keyword">void</span> initialize(Resource resource) { <br/>
- <span class="keyword">super</span>.initialize(resource); <br/>
- Library library = EXTLibraryFactory.eINSTANCE.createLibrary(); <br/>
- resource.getContents().add(library); <br/>
- } <br/>
- <br/>
- }
- </p>
- </div>
- </div>
-
- The method <em>initialize()</em> will be executed only when the Resource is empty
- (i.e., it has no contents).
- </li>
- </ol>
- </p>
- <p>
- now get back to the <em>MANIFEST.MF</em> and run the example
- </p>
- <p>
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/first-example-launch.png">
- <img src="images/first-example-launch.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
- </p>
- <p>
- As an Eclipse RCP developer you know, of course, that this will start another Eclipse instance (unless
- you add an Application plug-in to the launch or define an Application in the current plug-in).
- </p>
- <p>
- In this second Eclipse instance you can show the View in this way:
- <ol>
- <li><em>Window -> Show View -> Other...</em></li>
- <li>from Category "Other", select "My Library Tree Form"</li>
- <li>press <em>OK</em></li>
- </ol>
- </p>
- <p>
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/first-example-run.png">
- <img src="images/first-example-run.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
- </p>
- <p>
- With this simple view you can start editing the model instance. For example you can set the <em>"name"</em>
- field; as soon as you start typing characters into this field you will notice that:
- <ol>
- <li>the View turns to a <em>"dirty"</em> state (an asterisk symbol appears on the view tab)</li>
- <li>the <em>"Save"</em> toolbar button is enabled</li>
- <li>the typed characters are reflected into the label correspondent to the Library icon</li>
- </ol>
- </p>
- <p>
- if you now perform a <em>"Save"</em> action the persistence mechanism will trigger and you will see that file
- <span class="inlinecode"><user.home>/MyLibrary.library</span>
- is being created on the file system. From now on, this file will keep the state of the model object whenever
- you change and save it.
- </p>
- <p>
- To create a Writer into the Library just right-click on the Library object and select <em>New Child -> Writer</em>
- </p>
- <p>
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/createWriter.png">
- <img src="images/createWriter.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
- </p>
- <p>
- Please note that you might see a slightly different content in the above context-menu in case you deleted
- the .edit plugin when creating the model (e.g. <em>"Writers Writer"</em> instead of <em>"Writer"</em>, <em>"Stock Book"</em> instead of <em>"Book"</em> and
- similar (this is because with EMF it is possible to customize labels also via .edit plugin).
- </p>
- <p>
- Now set for instance the writer <em>"name"</em> field and save.
- Now just play around creating Books, associating them to Writers and so on.
- As you can see you can entirely manage the EMF model instance: creating, modifying and deleting elements.
- </p>
- <p>
- Whenever the current selection on the upper side of the view changes, then the lower side shows the detail
- of this selection.
- </p>
- <p>
- However, up to this point, you have no control over the field to be shown and its order; for example
- you may want just the <em>"name"</em> attribute for the Library and <em>"name", "address" and "books"</em> attributes
- for Writers and maybe <em>"title", "authors" and "category"</em> for Books.
- </p>
- <p>
- Well, it's indeed very easy to obtain this: just edit the <em>module.parsley</em> file,
- adding the following import (without ending line with ";")
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">import</span> org.eclipse.emf.examples.extlibrary.*
- </p>
- </div>
- </div>
- </p>
- <p>
- and then defining the features to show
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">module</span> ... {<br/>
- <br/>
- <span class="keyword">parts</span> { <br/>
- ... <br/>
- }<br/>
- <br/>
- <span class="keyword">featuresProvider</span> {<br/>
- <span class="keyword">features</span> {<br/>
- Library -> name<br/>
- Writer -> name, address, books<br/>
- Book -> author, title, category<br/>
- }<br/>
- }<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- Remeber that code completion is available, just exploit it since it helps a lot.
- </p>
- <p>
- If you restart now the application you will see that, when selecting an object, only the declared attributes
- will be shown. Furthermore, they are shown in the specified order.
- </p>
- <p>
- Did you run the application in Debug mode? Well, then you can change fields and order, save and see the
- changes without even restarting the application.
- </p>
- <p>
- Do you want to change text used for attribute labels in the detail? Just add the following:
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">propertyDescriptionProvider</span> {<br/>
- <span class="keyword">text</span> {<br/>
- Book : author -> <span class="string">'Wrote by:'</span><br/>
- Writer : name -> <span class="string">'Name:'</span><br/>
- }<br/>
- }
- </p>
- </div>
- </div>
-
-
- Or do you want to change the label shown on the tree nodes on the upper side and as detail title?
- Maybe want to format the book label like this?
-
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">labelProvider</span> {<br/>
- <span class="keyword">text</span> {<br/>
- Book b -> <span class="string">'"'</span> + b.title + <span class="string">'"'</span> +<span class="string">' (by '</span>+ b.author.name + <span class="string">')'</span><br/>
- }<br/>
- }
- </p>
- </div>
- </div>
-
-
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/labelCustomization.png">
- <img src="images/labelCustomization.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
-
-
-
-
-
- </p>
- <a name="RCPMail" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>RCP Mail Example</h1>
- <div id="disqus_thread"></div>
- <script type="text/javascript" src="documentationRoot.js"></script>
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'xtext'; // required: replace example with your forum shortname
-
- // The following are highly recommended additional parameters. Remove the slashes in front to use.
- var disqus_identifier = 'GettingStarted';
- var disqus_url = documentationRoot+'02-GettingStarted.php';
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- <br style="clear:both;height:1em;">
diff --git a/documentation/02-GettingStarted.php b/documentation/02-GettingStarted.php
deleted file mode 100644
index 273cffd..0000000
--- a/documentation/02-GettingStarted.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
- $pageTitle = "Getting Started";
-
- $html = file_get_contents('02-GettingStarted.html');
-
- $Nav->setLinkList(array());
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "02-GettingStarted.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/03-Components.html b/documentation/03-Components.html
deleted file mode 100644
index 9073309..0000000
--- a/documentation/03-Components.html
+++ /dev/null
@@ -1,301 +0,0 @@
-<br style="clear:both;height:1em;">
- <div id="leftcol">
- <div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
- </div>
- <ul id="leftnav">
- <li class="partentry" >
- Documentation
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="01-Introduction.php">Introduction</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="02-GettingStarted.php">Getting Started</a></div>
- <ul style="display: none;" id="subToc_02-GettingStarted.html">
- <li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="03-Components.php">Components</a></div>
- <ul style="display: none;" id="subToc_03-Components.html">
- <li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="04-Customization.php">Customization</a></div>
- <ul style="display: none;" id="subToc_04-Customization.html">
- <li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="05-DSL.php">EMF Parsley DSL</a></div>
- <ul style="display: none;" id="subToc_05-DSL.html">
- <li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="06-AdvancedComponents.php">Advanced Components</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="07-Eclipse4.php">Eclipse 4</a></div>
- <ul style="display: none;" id="subToc_07-Eclipse4.html">
- <li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </li>
- <li class="partentry" >
- Appendix
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="GettingSources.php">Getting Sources</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="Downloads.php">EMF Parsley - Downloads</a></div>
- </li>
- </ul>
- </div>
- <div id="midcolumn">
- <a name="Components" ></a>
- <h1>Components</h1>
- <div class="toc">
- <ul>
- <li><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </div>
-
- <p>
- Here we list the behaviors that can be customized for all components.
- </p>
- <p>
- <ul>
- <li>If you need a machanism to fill some data for the first time you use a model, you can provide
- a specific implementation of <a href="04-Customization.php#EmptyResourceInitializer.php" title="Go to "Empty Resource Initializer"">Emty Resource Initializer</a>.</li>
- <li>If you want to interact with Resource Loading, you can provide a specific <a href="04-Customization.php#ResourceLoader.php" title="Go to "Resource Loader"">Resource
- Loader</a></li>
- </ul>
- </p>
- <p>
- For what concern saving objects, there are some specific parts that can be customized:
- </p>
- <p>
- <ul>
- <li><a href="04-Customization.php#ResourceSaveManager.php" title="Go to "Resource Save Manager"">Resource Save Manager</a>, if you want to manage the save.</li>
- <li><a href="04-Customization.php#ResourceSaveManager.php" title="Go to "Resource Save Manager"">Resource Save Manager</a>, if you want to manage the save.</li>
- <li>In some cases, it can be usefull to specify an editing domain to work with. In this case it can be used the <a href="04-Customization.php#EditingDomainFinder.php" title="Go to "Editing Domain Finder"">Editing Domain Finder</a>.</li>
- </ul>
- </p>
- <p>
- The following sections describe the basic components provided, that are the foundations for all parts built upon <em>Emf Parsley</em>.
- For each component we present a set of customizations, just to get an idea of how it works. You can refer
- to <a href="04-Customization.php" title="Go to "Customization"">Customization Section</a> for a complete list.
- </p>
- <a name="FormComponent" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Form Component</h1>
- <div class="toc">
- <ul>
- <li><a href="03-Components.php#Form_Customizations.php" >Form Customizations</a></li>
- </ul>
- </div>
- <p>
- The <em>Form Component</em> can be used to rapresent an <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EObject.html" title="org.eclipse.emf.ecore.EObject">EObject</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/EObject.java" title="View Source Code" >(src)</a> in a row-oriented form,
- like in the image above.
- </p>
- <p>
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/03-components-form.png">
- <img src="images/03-components-form.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
- </p>
- <p>
- For each <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EStructuralFeature.html" title="org.eclipse.emf.ecore.EStructuralFeature">EStructuralFeature</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/EStructuralFeature.java" title="View Source Code" >(src)</a> defined for the <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EClass.html" title="org.eclipse.emf.ecore.EClass">EClass</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/EClass.java" title="View Source Code" >(src)</a>
- (that is the type of the object to rapresent), the component builds a row with a
- <em>label</em> with the name of the feature and a <em>control</em> to access the data. It can be used the factory
- to create such a component, like in the code below.
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- formComposite = formFactory.createFormDetailComposite(parent, SWT.NONE);<br/>
- formComposite.init(eObject);
- </p>
- </div>
- </div>
- </p>
- <p>
- The <em>form component</em> can be customized in many way, in particular the feature list, the labels and the controls.
- </p>
- <a name="Form_Customizations" ></a>
- <h2>Form Customizations</h2>
- <p>
- The <em>Form Component</em> can be customized in several way. Here the complete list.
- </p>
- <p>
- <ul>
- <li>The <em>list fo feature</em> displayed on the form can be customized via the <a href="04-Customization.php#FeaturesProvider.php" title="Go to "Features Provider"">Feature
- Provider</a> to select the features or the order.</li>
- <li>The description on the left side of the form caan be customizzed via the <a href="04-Customization.php#PropertyDescriptionProvider.php" title="Go to "Feature Caption Provider"">Property
- Description Provider</a>.</li>
- <li>Otherwise to customize the controls on the right, you can use the <a href="04-Customization.php#FormControlFactory.php" title="Go to "Form Control Factory"">Form Control Factory</a>.
- </li>
- <li>Depending on the feature types, can be some fields that use predefined values (e.g. combo). You can provide
- the exact proposal list via the <a href="04-Customization.php#ProposalProvider.php" title="Go to "Proposal Provider"">Proposal Provider</a>.</li>
- </ul>
- </p>
- <a name="TreeComponent" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Tree Component</h1>
- <div class="toc">
- <ul>
- <li><a href="03-Components.php#Tree_Customizations.php" >Tree Customizations</a></li>
- </ul>
- </div>
- <p>
- The <em>Tree Component</em> provides a tree rapresentation of data that can be feeded with an EResource, a
- Resource URI, and a simple EObject. This component use the EMF Meta-Model information to display objects in the tree.
- </p>
- <p>
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/03-components-tree.png">
- <img src="images/03-components-tree.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
- </p>
- <a name="Tree_Customizations" ></a>
- <h2>Tree Customizations</h2>
- <p>
- The <em>Tree Component</em>can be customized in several way via the standard EMF Edit facilities or with the EMF Parsley
- codeinjection based mechanism. If you are familiar with Jface APIs, you can easily use the basic class with some facilties to define the specific implementation.
- See the corrisponding sections for more details.
- </p>
- <p>
- <ul>
- <li>The <a href="04-Customization.php#ViewerContentProvider.php" title="Go to "Viewer Content Provider"">Viewer Content Provider</a></li>
- <li>The <a href="04-Customization.php#ViewerLabelProvider.php" title="Go to "Viewer Label Provider"">Viewer Label Provider</a></li>
- <li>The <a href="04-Customization.php#ViewerContextMenuFactory.php" title="Go to "Viewer Context Menu Factory"">Viewer Context Menu Factory</a></li>
- </ul>
- </p>
- <p>
- <em>TODO</em>
- </p>
- <a name="TreeFormComponent" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Tree Form Component</h1>
- <div class="toc">
- <ul>
- <li><a href="03-Components.php#TreeForm_Customizations.php" >Tree Form Customization</a></li>
- </ul>
- </div>
- <p>
- The <em>Tree Form Component</em> contains a <a href="03-Components.php#TreeComponent.php" title="Go to "Tree Component"" >section TreeComponent</a> that provides a tree rapresentation of data that can be feeded with
- an EResource, a Resource URI, and a simple EObject. This component use the EMF Meta-Model information to display objects in
- the tree. The component also combines a <a href="03-Components.php#FormComponent.php" title="Go to "Form Component"" >section FormComponent</a> detail that display the current selected object.
- </p>
- <p>
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/03-components-treeform.png">
- <img src="images/03-components-treeform.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
- </p>
- <a name="TreeForm_Customizations" ></a>
- <h2>Tree Form Customization</h2>
- <p>
- Since <em>Tree Form Component</em> is a combination of <em>Tree Component</em> and <em>Form Component</em>, all their customizations
- are avaible for it.
- </p>
- <a name="TableComponent" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Table Component</h1>
- <p>
- The <em>Table Component</em> can rapresent data in a grid, once you have specified what kind of object need to be rapresented.
- It uses metamodel infos to build column as needed.
- </p>
- <p>
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/03-components-table.png">
- <img src="images/03-components-table.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
- </p>
- <p>
- <div class="todo" >
- To be continued
- </div>
- </p>
- <div id="disqus_thread"></div>
- <script type="text/javascript" src="documentationRoot.js"></script>
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'xtext'; // required: replace example with your forum shortname
-
- // The following are highly recommended additional parameters. Remove the slashes in front to use.
- var disqus_identifier = 'Components';
- var disqus_url = documentationRoot+'03-Components.php';
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- <br style="clear:both;height:1em;">
diff --git a/documentation/03-Components.php b/documentation/03-Components.php
deleted file mode 100644
index 33e1306..0000000
--- a/documentation/03-Components.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
- $pageTitle = "Components";
-
- $html = file_get_contents('03-Components.html');
-
- $Nav->setLinkList(array());
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "03-Components.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/04-Customization.html b/documentation/04-Customization.html
deleted file mode 100644
index 8fca4e1..0000000
--- a/documentation/04-Customization.html
+++ /dev/null
@@ -1,715 +0,0 @@
-<br style="clear:both;height:1em;">
- <div id="leftcol">
- <div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
- </div>
- <ul id="leftnav">
- <li class="partentry" >
- Documentation
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="01-Introduction.php">Introduction</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="02-GettingStarted.php">Getting Started</a></div>
- <ul style="display: none;" id="subToc_02-GettingStarted.html">
- <li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="03-Components.php">Components</a></div>
- <ul style="display: none;" id="subToc_03-Components.html">
- <li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="04-Customization.php">Customization</a></div>
- <ul style="display: none;" id="subToc_04-Customization.html">
- <li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="05-DSL.php">EMF Parsley DSL</a></div>
- <ul style="display: none;" id="subToc_05-DSL.html">
- <li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="06-AdvancedComponents.php">Advanced Components</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="07-Eclipse4.php">Eclipse 4</a></div>
- <ul style="display: none;" id="subToc_07-Eclipse4.html">
- <li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </li>
- <li class="partentry" >
- Appendix
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="GettingSources.php">Getting Sources</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="Downloads.php">EMF Parsley - Downloads</a></div>
- </li>
- </ul>
- </div>
- <div id="midcolumn">
- <a name="Customization" ></a>
- <h1>Customization</h1>
- <div class="toc">
- <ul>
- <li><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </div>
-
- <a name="ResourceManagers" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Managing Resources</h1>
- <div class="toc">
- <ul>
- <li><a href="04-Customization.php#ResourceLoader.php" >Resource Loader</a></li>
- <li><a href="04-Customization.php#EmptyResourceInitializer.php" >Empty Resource Initializer</a></li>
- <li><a href="04-Customization.php#EditingDomainFinder.php" >Editing Domain Finder</a></li>
- <li><a href="04-Customization.php#ResourceSaveManager.php" >Resource Save Manager</a></li>
- </ul>
- </div>
- <a name="ResourceLoader" ></a>
- <h2>Resource Loader</h2>
- <p>
- The class <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/resource/ResourceLoader.html" title="org.eclipse.emf.parsley.resource.ResourceLoader">ResourceLoader</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/resource/ResourceLoader.java" title="View Source Code" >(src)</a> can be used to handle resource loading.
- This class uses internally the <a href="04-Customization.php#EmptyResourceInitializer.php" title="Go to "Empty Resource Initializer"">Empty Resource Initializer</a>.
- </p>
- <a name="EmptyResourceInitializer" ></a>
- <h2>Empty Resource Initializer</h2>
- <p>
- If you need to initialize your model, for the first use, you can define an implementation of <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/resource/EmptyResourceInitializer.html" title="org.eclipse.emf.parsley.resource.EmptyResourceInitializer">EmptyResourceInitializer</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/resource/EmptyResourceInitializer.java" title="View Source Code" >(src)</a>.
- When the main resource will be found empty, your code will be executed.
- </p>
- <a name="EditingDomainFinder" ></a>
- <h2>Editing Domain Finder</h2>
- <p>
- The class <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/edit/EditingDomainFinder.html" title="org.eclipse.emf.parsley.edit.EditingDomainFinder">EditingDomainFinder</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/edit/EditingDomainFinder.java" title="View Source Code" >(src)</a> can be inherited to provide a specific
- way to find the editign domain.
- </p>
- <a name="ResourceSaveManager" ></a>
- <h2>Resource Save Manager</h2>
- <p>
- Resource saving is delegated to <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/edit/ResourceSaveManager.html" title="org.eclipse.emf.parsley.edit.ResourceSaveManager">ResourceSaveManager</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/edit/ResourceSaveManager.java" title="View Source Code" >(src)</a>
- which, by defaults only saves the passed <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/resource/Resource.html" title="org.eclipse.emf.ecore.resource.Resource">Resource</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/resource/Resource.java" title="View Source Code" >(src)</a>.
- You can inject your own save manager and implement the method <span class="inlinecode">precondition(Resource)</span>, for
- instance, you may want to validate the resource before saving, and in case the validation
- fails to return <span class="inlinecode">false</span>. If the precondition is <span class="inlinecode">false</span> the default implementation
- will not save the resource (and in turn will return <span class="inlinecode">false</span>).
- </p>
- <a name="ValidateResourceSaveManager" ></a>
- <h3>Validate Resource Save Manager</h3>
- <p>
- We provide an example of custom resource save manager: <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/edit/ValidateResourceSaveManager.html" title="org.eclipse.emf.parsley.edit.ValidateResourceSaveManager">ValidateResourceSaveManager</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/edit/ValidateResourceSaveManager.java" title="View Source Code" >(src)</a>,
- we show here only relevant parts to give an example:
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">public</span> <span class="keyword">class</span> ValidateResourceSaveManager <span class="keyword">extends</span> ResourceSaveManager {<br/>
- <br/>
- @Override<br/>
- <span class="keyword">protected</span> <span class="keyword">boolean</span> precondition(Resource resource) {<br/>
- <span class="keyword">return</span> <span class="keyword">super</span>.precondition(resource) && validateModel(resource);<br/>
- }<br/>
- <br/>
- <span class="keyword">protected</span> <span class="keyword">boolean</span> validateModel(Resource resource) {<br/>
- <span class="keyword">for</span> (EObject eObject : resource.getContents()) {<br/>
- Diagnostic diagnostic = Diagnostician.INSTANCE.validate(eObject);<br/>
- <span class="keyword">if</span> (diagnostic.getSeverity() == Diagnostic.ERROR) {<br/>
- <span class="comment">// SKIPPED: present the errors<br/>
- </span> <span class="keyword">return</span> false;<br/>
- } <span class="keyword">else</span> <span class="keyword">if</span> (diagnostic.getSeverity() == Diagnostic.WARNING) {<br/>
- <span class="comment">// SKIPPED: present the warnings<br/>
- </span> }<br/>
- }<br/>
- <span class="keyword">return</span> true;<br/>
- }<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <a name="Providers" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Providers</h1>
- <div class="toc">
- <ul>
- <li><a href="04-Customization.php#FeaturesProvider.php" >Features Provider</a></li>
- <li><a href="04-Customization.php#PropertyDescriptionProvider.php" >Feature Caption Provider</a></li>
- <li><a href="04-Customization.php#ViewerLabelProvider.php" >Viewer Label Provider</a></li>
- <li><a href="04-Customization.php#ViewerContentProvider.php" >Viewer Content Provider</a></li>
- <li><a href="04-Customization.php#ProposalProvider.php" >Proposal Provider</a></li>
- <li><a href="04-Customization.php#ViewerContextMenuFactory.php" >Viewer Context Menu Factory</a></li>
- <li><a href="04-Customization.php#TableColumnLabelProvider.php" >Table Column Label Provider</a></li>
- </ul>
- </div>
- <a name="FeaturesProvider" ></a>
- <h2>Features Provider</h2>
- <p>
- <em>This can be done with Parsley DSL too!</em>
-
- <div class="todo" >
- TODO: merge delle 2 versioni
- </div>
- </p>
- <a name="FeatureProvider1" ></a>
- <h3>Prima versione</h3>
- <p>
- To customize the <em>feature list</em> it can be injected a <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/ui/provider/FeaturesProvider.html" title="org.eclipse.emf.parsley.ui.provider.FeaturesProvider">FeaturesProvider</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/ui/provider/FeaturesProvider.java" title="View Source Code" >(src)</a>.
- The default is to return the list of all the features in the EClass, but the programmer can customize it (for instance,
- by returning only a superset, or using a different order) on an EClass-based strategy. The customization can be done
- redefining buildMap and adding mappings.
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">protected</span> <span class="keyword">void</span> buildMap(EClassToEStructuralFeatureMap map) {<br/>
- <span class="keyword">super</span>.buildMap(map);<br/>
- map.mapTo(LIBRARY,LIBRARY__NAME, ADDRESSABLE__ADDRESS);<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- In the example we specify that for the EClass <em>Library</em> the feature that are to be displayed are <em>name</em>
- and <em>address</em>.
- </p>
- <a name="FeatureProvider2" ></a>
- <h3>Seconda versione</h3>
- <p>
- When the framework builds components according to the
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EStructuralFeature.html" title="org.eclipse.emf.ecore.EStructuralFeature">EStructuralFeature</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/EStructuralFeature.java" title="View Source Code" >(src)</a>s of a given
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EClass.html" title="org.eclipse.emf.ecore.EClass">EClass</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/EClass.java" title="View Source Code" >(src)</a> it relies on an injected
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/ui/provider/FeaturesProvider.html" title="org.eclipse.emf.parsley.ui.provider.FeaturesProvider">FeaturesProvider</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/ui/provider/FeaturesProvider.java" title="View Source Code" >(src)</a>.
- The default behavior is to simply return all the features of the a given EClass,
- in the order they are defined in the EClass;
- you may want to provide a custom implementation by redefining
- the method <span class="inlinecode">List<EStructuralFeature> getFeatures(EClass)</span>, or
- <span class="inlinecode">List<EStructuralFeature> getFeatures(EObject)</span>,
- for instance by returning the features ordered according to their name
- (the following snippet uses an utility class from the framework)
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">public</span> <span class="keyword">class</span> OrderedEStructuralFeaturesProvider <br/>
- <span class="keyword">extends</span> FeaturesProvider {<br/>
- <br/>
- @Inject<br/>
- EStructuralFeatureNameComparator comparator;<br/>
- <br/>
- @Override<br/>
- <span class="keyword">public</span> List<EStructuralFeature> getFeatures(EClass eClass) {<br/>
- List<EStructuralFeature> features = <span class="keyword">super</span>.getFeatures(eClass);<br/>
- Collections.sort(features, <br/>
- <span class="keyword">new</span> EStructuralFeatureNameComparator());<br/>
- <span class="keyword">return</span> features;<br/>
- }<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- Alternatively, you can set the mappings, i.e., specify the structural
- features you want to be used given an EClass, by implementing
- the method <span class="inlinecode">buildMap</span>, which receives the
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/ui/provider/FeaturesProvider.EClassToEStructuralFeatureMap.html" title="org.eclipse.emf.parsley.ui.provider.FeaturesProvider.EClassToEStructuralFeatureMap">FeaturesProvider.EClassToEStructuralFeatureMap</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/ui/provider/FeaturesProvider.java" title="View Source Code" >(src)</a>
- that can be filled with the method <span class="inlinecode">mapTo</span>;
- for instance, using the EMF extended library
- example, this customization will return only the <em>name</em> and <em>address</em> features
- for <span class="inlinecode">Library</span>, the <em>firstName</em>, <em>lastName</em> and <em>address</em> for
- <span class="inlinecode">Person</span>, and the <em>firstName</em>, <em>lastName</em> and <em>books</em> (but
- not <em>address</em>) for <span class="inlinecode">Writer</span> (which inherits from <span class="inlinecode">Person</span>).
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">import</span> <span class="keyword">static</span> org.eclipse.emf.examples.extlibrary.EXTLibraryPackage.Literals.*;<br/>
- <span class="keyword">import</span> org.eclipse.emf.parsley.ui.provider.EStructuralFeaturesProvider;<br/>
- <br/>
- <span class="keyword">public</span> <span class="keyword">class</span> LibraryEStructuralFeaturesProvider <span class="keyword">extends</span><br/>
- FeaturesProvider {<br/>
- <br/>
- @Override<br/>
- <span class="keyword">protected</span> <span class="keyword">void</span> buildMap(EClassToEStructuralFeatureMap map) {<br/>
- <span class="keyword">super</span>.buildMap(map);<br/>
- map.mapTo(LIBRARY,<br/>
- LIBRARY__NAME, ADDRESSABLE__ADDRESS);<br/>
- map.mapTo(PERSON,<br/>
- PERSON__FIRST_NAME, PERSON__LAST_NAME,<br/>
- ADDRESSABLE__ADDRESS);<br/>
- map.mapTo(WRITER,<br/>
- PERSON__FIRST_NAME, PERSON__LAST_NAME,<br/>
- WRITER__BOOKS);<br/>
- }<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- Another possibility is to build a map which relies on Strings
- both for the <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EClass.html" title="org.eclipse.emf.ecore.EClass">EClass</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/EClass.java" title="View Source Code" >(src)</a> and for
- the list of <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EStructuralFeature.html" title="org.eclipse.emf.ecore.EStructuralFeature">EStructuralFeature</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/EStructuralFeature.java" title="View Source Code" >(src)</a>;
- note that the name of the <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/EClass.html" title="org.eclipse.emf.ecore.EClass">EClass</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/EClass.java" title="View Source Code" >(src)</a> should
- be obtained by using <span class="inlinecode">getInstanceClassName()</span>; you can also
- combine the two approaches (in that case the map built with
- <span class="inlinecode">buildMap</span> has the precedence):
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">import</span> <span class="keyword">static</span> org.eclipse.emf.examples.extlibrary.EXTLibraryPackage.Literals.*;<br/>
- <span class="keyword">import</span> org.eclipse.emf.parsley.ui.provider.FeaturesProvider;<br/>
- <br/>
- <span class="keyword">public</span> <span class="keyword">class</span> LibraryEStructuralFeaturesAsStringsProvider <span class="keyword">extends</span><br/>
- FeaturesProvider {<br/>
- <br/>
- @Override<br/>
- <span class="keyword">protected</span> <span class="keyword">void</span> buildMap(EClassToEStructuralFeatureMap map) {<br/>
- <span class="keyword">super</span>.buildMap(map);<br/>
- map.mapTo(LIBRARY, LIBRARY__NAME, ADDRESSABLE__ADDRESS);<br/>
- }<br/>
- <br/>
- @Override<br/>
- <span class="keyword">protected</span> <span class="keyword">void</span> buildStringMap(<br/>
- EClassToEStructuralFeatureAsStringsMap stringMap) {<br/>
- <span class="keyword">super</span>.buildStringMap(stringMap);<br/>
- stringMap.mapTo(PERSON.getInstanceClassName(), <span class="string">"firstName"</span>, <span class="string">"lastName"</span>,<br/>
- <span class="string">"address"</span>);<br/>
- stringMap.mapTo(WRITER.getInstanceClassName(), <span class="string">"firstName"</span>, <span class="string">"lastName"</span>,<br/>
- <span class="string">"books"</span>);<br/>
- <br/>
- }<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <a name="FeaturesColumnProvider" ></a>
- <h3>Features Column Provider</h3>
- <p>
- As an extension, you can use the <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/ui/provider/FeaturesColumnProvider.html" title="org.eclipse.emf.parsley.ui.provider.FeaturesColumnProvider">FeaturesColumnProvider</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/ui/provider/FeaturesColumnProvider.java" title="View Source Code" >(src)</a>:
- the customizations will be applied only to <a href="03-Components.php#TableComponent.php" title="Go to "Table Component"">tables</a>, not to <a href="03-Components.php#FormComponent.php" title="Go to "Form Component"">Forms</a>.
- </p>
- <a name="PropertyDescriptionProvider" ></a>
- <h2>Feature Caption Provider</h2>
- <p>
- <em>This can be done with Parsley DSL too!</em>
-
- The <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/ui/provider/FeatureCaptionProvider.html" title="org.eclipse.emf.parsley.ui.provider.FeatureCaptionProvider">FeatureCaptionProvider</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/ui/provider/FeatureCaptionProvider.java" title="View Source Code" >(src)</a> provides captions for
- the features. It can be customized, with injection (see Injection paragraph), to customize the caption label on the
- left of each control in a form and the headers in a table's columns.
- The framework use a polimorphic mechanism to find customizations, so that It can
- be written a method with a specific signature build by the keyword <em>'text'</em> followed by the EClass and the EStructuralFeature.
- All parts of the name are separated by an underscore character and the method must accept a parameter of type EStructuralFeature.
- </p>
- <p>
- In the following example we specify the caption text for the feature 'Author' of Book and the feature 'Name' for
- Writer.
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">public</span> String text_Book_author(<span class="keyword">final</span> EStructuralFeature feature) {<br/>
- <span class="keyword">return</span> <span class="string">"Wrote by:"</span>;<br/>
- }<br/>
- <br/>
- <span class="keyword">public</span> String text_Writer_name(<span class="keyword">final</span> EStructuralFeature feature) {<br/>
- <span class="keyword">return</span> <span class="string">"Name:"</span>;<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <a name="FormPropertyDescriptionProvider" ></a>
- <h3>Form Feature Caption Provider</h3>
- <p>
- The <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/ui/provider/FormFeatureCaptionProvider.html" title="org.eclipse.emf.parsley.ui.provider.FormFeatureCaptionProvider">FormFeatureCaptionProvider</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/ui/provider/FormFeatureCaptionProvider.java" title="View Source Code" >(src)</a> can be used if you want
- to define the description only for the form. For example using the <a href="03-Components.php#TreeFormComponent.php" title="Go to "Tree Form Component"">Tree
- Form</a> your definition will not be used in the tree.
- </p>
- <p>
- In this case you can also define a method the returns directly the control, like in the example
- below. In such methods there is another parameter that is the parent composite.
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">public</span> Label label_Writer_name(Composite parent, EStructuralFeature feature) {<br/>
- Label label = defaultLabel(parent, feature);<br/>
- label.setBackground(getFormToolkit().getColors().getColor(IFormColors.TITLE));<br/>
- <span class="keyword">return</span> label;<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <a name="ViewerLabelProvider" ></a>
- <h2>Viewer Label Provider</h2>
- <p>
- The Label Provider can be customized by providing a specific implementation of <a class="jdoc" href="http://help.eclipse.org/helios/topic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/ILabelProvider.html" title="org.eclipse.jface.viewers.ILabelProvider">ILabelProvider</abbr></a>
- and injecting it in the spefic module <em>(TODO)</em>.
- EMF Parsley provides such an implementation with the class <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/ui/provider/ViewerLabelProvider.html" title="org.eclipse.emf.parsley.ui.provider.ViewerLabelProvider">ViewerLabelProvider</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/ui/provider/ViewerLabelProvider.java" title="View Source Code" >(src)</a>
- that is inteded to be surclassed by the programmer to provides specific implementations like in the example below.
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">public</span> <span class="keyword">class</span> CustomLibraryLabelProvider <span class="keyword">extends</span> ViewerLabelProvider {<br/>
- <br/>
- @Inject<br/>
- <span class="keyword">public</span> CustomLibraryLabelProvider(AdapterFactoryLabelProvider delegate) {<br/>
- <span class="keyword">super</span>(delegate);<br/>
- }<br/>
- <br/>
- <span class="keyword">public</span> String text(Book book) {<br/>
- <span class="keyword">return</span> <span class="string">"Book: "</span> + book.getTitle();<br/>
- }<br/>
- <br/>
- <span class="keyword">public</span> String image(Book book) {<br/>
- <span class="keyword">return</span> <span class="string">"book2.png"</span>;<br/>
- }<br/>
- <br/>
- <span class="keyword">public</span> String text(Borrower b) {<br/>
- <span class="keyword">return</span> <span class="string">"Borrower: "</span> + b.getFirstName();<br/>
- }<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <a name="ViewerContentProvider" ></a>
- <h2>Viewer Content Provider</h2>
- <p>
- The programmer can provide a specific implementation of <a class="jdoc" href="http://help.eclipse.org/helios/topic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/IContentProvider.html" title="org.eclipse.jface.viewers.IContentProvider">IContentProvider</abbr></a>
- by injecting it in the spefic module <em>(TODO)</em>. EMF Parsley provides an implementation with the class
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/edit/ui/provider/ViewerContentProvider.html" title="org.eclipse.emf.parsley.edit.ui.provider.ViewerContentProvider">ViewerContentProvider</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/edit/ui/provider/ViewerContentProvider.java" title="View Source Code" >(src)</a> that can be easily used to
- specify the children of all object on the tree, like in the example below.
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">public</span> <span class="keyword">class</span> CustomLibraryViewerContentProvider <span class="keyword">extends</span> ViewerContentProvider {<br/>
- <br/>
- @Inject<br/>
- <span class="keyword">public</span> CustomLibraryViewerContentProvider(AdapterFactory adapterFactory) {<br/>
- <span class="keyword">super</span>(adapterFactory);<br/>
- }<br/>
- <br/>
- <span class="keyword">public</span> Object children(Library library) {<br/>
- <span class="keyword">return</span> library.getBooks();<br/>
- }<br/>
- <br/>
- <span class="keyword">public</span> Object children(Book book) {<br/>
- ArrayList<Object> children = <span class="keyword">new</span> ArrayList<Object>();<br/>
- Writer author = book.getAuthor();<br/>
- <span class="keyword">if</span> (author != null) {<br/>
- children.add(author);<br/>
- }<br/>
- children.addAll(book.getBorrowers());<br/>
- <span class="keyword">return</span> children;<br/>
- }<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <a name="ProposalProvider" ></a>
- <h2>Proposal Provider</h2>
- <p>
- <em>This can be done with Parsley DSL too!</em>
-
- Some controls use a list of proposal to help the end user experince: for example the combo box has a
- list of proposal, but also the simple text can use the proposal to assist and correct the hand-writed
- values. For each feature it can be specified a list of proposals using a method that starts with the
- keyword <em>'proposals'</em> followed byt the EClass and Feature undescore-character-separated.
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">public</span> List<?> proposals_Book_author(Book book) {<br/>
- List<Object> proposals = <span class="keyword">new</span> LinkedList<Object>();<br/>
- Writer writer = EXTLibraryFactory.eINSTANCE.createWriter();<br/>
- writer.setFirstName(<span class="string">"Fake"</span>);<br/>
- writer.setLastName(<span class="string">"Writer"</span>);<br/>
- proposals.add(writer);<br/>
- writer = EXTLibraryFactory.eINSTANCE.createWriter();<br/>
- writer.setFirstName(<span class="string">"Fake"</span>);<br/>
- writer.setLastName(<span class="string">"Writer2"</span>);<br/>
- proposals.add(writer);<br/>
- <span class="keyword">return</span> proposals;<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <a name="ViewerContextMenuFactory" ></a>
- <h2>Viewer Context Menu Factory</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/menus/ViewerContextMenuFactory.html" title="org.eclipse.emf.parsley.menus.ViewerContextMenuFactory">ViewerContextMenuFactory</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/menus/ViewerContextMenuFactory.java" title="View Source Code" >(src)</a>
- </p>
- <a name="TableColumnLabelProvider" ></a>
- <h2>Table Column Label Provider</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/ui/provider/TableColumnLabelProvider.html" title="org.eclipse.emf.parsley.ui.provider.TableColumnLabelProvider">TableColumnLabelProvider</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/ui/provider/TableColumnLabelProvider.java" title="View Source Code" >(src)</a>
- </p>
- <a name="SelectionAndMenu" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Selection And Menu</h1>
- <div class="toc">
- <ul>
- <li><a href="04-Customization.php#EmfSelectionHelper.php" >Emf Selection Helper</a></li>
- </ul>
- </div>
- <a name="EmfSelectionHelper" ></a>
- <h2>Emf Selection Helper</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/util/EmfSelectionHelper.html" title="org.eclipse.emf.parsley.util.EmfSelectionHelper">EmfSelectionHelper</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/util/EmfSelectionHelper.java" title="View Source Code" >(src)</a>
- </p>
- <a name="Builders" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Builders</h1>
- <div class="toc">
- <ul>
- <li><a href="04-Customization.php#TableViewerBuilder.php" >Table Viewer Builder</a></li>
- <li><a href="04-Customization.php#TableViewerColumnBuilder.php" >Table Viewer Column Builder</a></li>
- </ul>
- </div>
- <a name="TableViewerBuilder" ></a>
- <h2>Table Viewer Builder</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/builders/TableViewerBuilder.html" title="org.eclipse.emf.parsley.builders.TableViewerBuilder">TableViewerBuilder</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/builders/TableViewerBuilder.java" title="View Source Code" >(src)</a>
- </p>
- <p>
- <ul>
- <li><a href="04-Customization.php#TableViewerColumnBuilder.php" title="Go to "Table Viewer Column Builder"">TableViewerColumnBuilder</a></li>
- <li><a href="04-Customization.php#ViewerInitializer.php" title="Go to "Viewer Initializer"">ViewerInitializer</a></li>
- </ul>
- </p>
- <a name="TableViewerColumnBuilder" ></a>
- <h2>Table Viewer Column Builder</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/builders/TableViewerColumnBuilder.html" title="org.eclipse.emf.parsley.builders.TableViewerColumnBuilder">TableViewerColumnBuilder</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/builders/TableViewerColumnBuilder.java" title="View Source Code" >(src)</a>
- </p>
- <p>
- <ul>
- <li><a href="04-Customization.php#JfaceProviderFactory.php" title="Go to "Jface Provider Factory"">JfaceProviderFactory</a></li>
- <li><a href="04-Customization.php#PropertyDescriptionProvider.php" title="Go to "Feature Caption Provider"">PropertyDescriptionProvider</a></li>
- <li><a href="04-Customization.php#FeaturesProvider.php" title="Go to "Features Provider"">FeaturesProvider</a></li>
- </ul>
- </p>
- <a name="TableViewerEditableColumnBuilder" ></a>
- <h3>Table Viewer Editable Column Builder</h3>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/builders/TableViewerEditableColumnBuilder.html" title="org.eclipse.emf.parsley.builders.TableViewerEditableColumnBuilder">TableViewerEditableColumnBuilder</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/builders/TableViewerEditableColumnBuilder.java" title="View Source Code" >(src)</a>
- </p>
- <a name="Factories" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Factories</h1>
- <div class="toc">
- <ul>
- <li><a href="04-Customization.php#FormFactory.php" >Form Factory</a></li>
- <li><a href="04-Customization.php#JfaceProviderFactory.php" >Jface Provider Factory</a></li>
- <li><a href="04-Customization.php#FormControlFactory.php" >Form Control Factory</a></li>
- <li><a href="04-Customization.php#TreeFormFactory.php" >Tree Form Factory</a></li>
- <li><a href="04-Customization.php#ViewerFactory.php" >Viewer Factory</a></li>
- <li><a href="04-Customization.php#AdapterFactoryEditingDomain.php" >Viewer Factory</a></li>
- </ul>
- </div>
- <a name="FormFactory" ></a>
- <h2>Form Factory</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/factories/FormFactory.html" title="org.eclipse.emf.parsley.factories.FormFactory">FormFactory</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/factories/FormFactory.java" title="View Source Code" >(src)</a>
- </p>
- <p>
- <ul>
- <li><a href="04-Customization.php#FormPropertyDescriptionProvider.php" title="Go to "Form Feature Caption Provider"">FormPropertyDescriptionProvider</a></li>
- <li><a href="04-Customization.php#FormControlFactory.php" title="Go to "Form Control Factory"">Form Control Factory</a></li>
- <li><a href="04-Customization.php#EditingDomainFinder.php" title="Go to "Editing Domain Finder"">EditingDomainFinder</a></li>
- <li><a href="04-Customization.php#JfaceProviderFactory.php" title="Go to "Jface Provider Factory"">JfaceProviderFactory</a></li>
- <li><a href="04-Customization.php#FeaturesProvider.php" title="Go to "Features Provider"">FeaturesProvider</a></li>
- </ul>
- </p>
- <a name="JfaceProviderFactory" ></a>
- <h2>Jface Provider Factory</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/factories/ColumnLabelProviderFactory.html" title="org.eclipse.emf.parsley.factories.ColumnLabelProviderFactory">ColumnLabelProviderFactory</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/factories/ColumnLabelProviderFactory.java" title="View Source Code" >(src)</a>
- </p>
- <p>
- <ul>
- <li><a href="04-Customization.php#ViewerLabelProvider.php" title="Go to "Viewer Label Provider"">ViewerLabelProvider</a></li>
- <li><a href="04-Customization.php#TableColumnLabelProvider.php" title="Go to "Table Column Label Provider"">TableColumnLabelProvider</a></li>
- </ul>
- </p>
- <a name="FormControlFactory" ></a>
- <h2>Form Control Factory</h2>
- <p>
- <em>This can be done with Parsley DSL too!</em>
-
- If you want to customize the controls on the right, it can be injected a specification of the class <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/binding/FormControlFactory.html" title="org.eclipse.emf.parsley.binding.FormControlFactory">FormControlFactory</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/binding/FormControlFactory.java" title="View Source Code" >(src)</a>.
- Using the same polimorphic mechanism of the labels, the programmer can write a method with the keyword <em>'control'</em>
- followed by the EClass and EStructuralFeature undescore-character-separated. In the signature of the
- method must be both the <em>DataBinding Context</em> and the <em>Feature Observable</em> that can be used for databinding.
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="keyword">public</span> Control control_Writer_name(DataBindingContext dbc,IObservableValue featureObservable) {<br/>
- <span class="comment">//Creating the control<br/>
- </span> Text text = getToolkit().createText(getParent(), <span class="string">""</span>);<br/>
- text.setData(FormToolkit.KEY_DRAW_BORDER, FormToolkit.TREE_BORDER);<br/>
- text.setBackground(getToolkit().getColors().getColor(IFormColors.TITLE));<br/>
- <span class="comment">//Binding the control to the feature observable<br/>
- </span> dbc.bindValue(SWTObservables.observeText(text, SWT.Modify), featureObservable);<br/>
- <span class="keyword">return</span> text;<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- For more info, see the other parts that are used internally by the <em>Form Control Factory</em>:
- </p>
- <p>
- <ul>
- <li><a href="04-Customization.php#JfaceProviderFactory.php" title="Go to "Jface Provider Factory"">JfaceProviderFactory</a></li>
- </ul>
- </p>
- <a name="TreeFormFactory" ></a>
- <h2>Tree Form Factory</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/factories/TreeFormFactory.html" title="org.eclipse.emf.parsley.factories.TreeFormFactory">TreeFormFactory</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/factories/TreeFormFactory.java" title="View Source Code" >(src)</a>
- </p>
- <p>
- <ul>
- <li><a href="04-Customization.php#ViewerInitializer.php" title="Go to "Viewer Initializer"">ViewerInitializer</a></li>
- <li><a href="04-Customization.php#FormFactory.php" title="Go to "Form Factory"">FormFactory</a></li>
- </ul>
- </p>
- <a name="ViewerFactory" ></a>
- <h2>Viewer Factory</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/factories/ViewerFactory.html" title="org.eclipse.emf.parsley.factories.ViewerFactory">ViewerFactory</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/factories/ViewerFactory.java" title="View Source Code" >(src)</a>
- </p>
- <p>
- <ul>
- <li><a href="04-Customization.php#TableViewerBuilder.php" title="Go to "Table Viewer Builder"">TableViewerBuilder</a></li>
- <li><a href="04-Customization.php#ViewerInitializer.php" title="Go to "Viewer Initializer"">ViewerInitializer</a></li>
- </ul>
- </p>
- <a name="AdapterFactoryEditingDomain" ></a>
- <h2>Viewer Factory</h2>
- <p>
- AdapterFactoryEditingDomain
- </p>
- <p>
- AdapterFactory
- </p>
- <a name="Viewers" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Viewers</h1>
- <div class="toc">
- <ul>
- <li><a href="04-Customization.php#ViewerInitializer.php" >Viewer Initializer</a></li>
- </ul>
- </div>
- <a name="ViewerInitializer" ></a>
- <h2>Viewer Initializer</h2>
- <p>
- <a class="jdoc" href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/parsley/viewers/ViewerInitializer.html" title="org.eclipse.emf.parsley.viewers.ViewerInitializer">ViewerInitializer</abbr></a> <a class="srcLink" href="https://github.com/eclipse/emf/blob/R2_8_0/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/parsley/viewers/ViewerInitializer.java" title="View Source Code" >(src)</a>
- </p>
- <p>
- <ul>
- <li><em>AdapterFactoryEditingDomain</em></li>
- <li><a href="04-Customization.php#ViewerContextMenuFactory.php" title="Go to "Viewer Context Menu Factory"">AdapterFactory</a></li>
- <li><em>ILabelProvider</em></li>
- <li><em>IContentProvider</em></li>
- </ul>
-
- </p>
- <div id="disqus_thread"></div>
- <script type="text/javascript" src="documentationRoot.js"></script>
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'xtext'; // required: replace example with your forum shortname
-
- // The following are highly recommended additional parameters. Remove the slashes in front to use.
- var disqus_identifier = 'Customization';
- var disqus_url = documentationRoot+'04-Customization.php';
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- <br style="clear:both;height:1em;">
diff --git a/documentation/04-Customization.php b/documentation/04-Customization.php
deleted file mode 100644
index 0d69723..0000000
--- a/documentation/04-Customization.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
- $pageTitle = "Customization";
-
- $html = file_get_contents('04-Customization.html');
-
- $Nav->setLinkList(array());
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "04-Customization.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/05-DSL.html b/documentation/05-DSL.html
deleted file mode 100644
index 90d19e9..0000000
--- a/documentation/05-DSL.html
+++ /dev/null
@@ -1,114 +0,0 @@
-<br style="clear:both;height:1em;">
- <div id="leftcol">
- <div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
- </div>
- <ul id="leftnav">
- <li class="partentry" >
- Documentation
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="01-Introduction.php">Introduction</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="02-GettingStarted.php">Getting Started</a></div>
- <ul style="display: none;" id="subToc_02-GettingStarted.html">
- <li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="03-Components.php">Components</a></div>
- <ul style="display: none;" id="subToc_03-Components.html">
- <li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="04-Customization.php">Customization</a></div>
- <ul style="display: none;" id="subToc_04-Customization.html">
- <li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="05-DSL.php">EMF Parsley DSL</a></div>
- <ul style="display: none;" id="subToc_05-DSL.html">
- <li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="06-AdvancedComponents.php">Advanced Components</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="07-Eclipse4.php">Eclipse 4</a></div>
- <ul style="display: none;" id="subToc_07-Eclipse4.html">
- <li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </li>
- <li class="partentry" >
- Appendix
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="GettingSources.php">Getting Sources</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="Downloads.php">EMF Parsley - Downloads</a></div>
- </li>
- </ul>
- </div>
- <div id="midcolumn">
- <a name="DSL" ></a>
- <h1>EMF Parsley DSL</h1>
- <div class="toc">
- <ul>
- <li><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </div>
-
- <a name="xbase" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Xbase features</h1>
- <div id="disqus_thread"></div>
- <script type="text/javascript" src="documentationRoot.js"></script>
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'xtext'; // required: replace example with your forum shortname
-
- // The following are highly recommended additional parameters. Remove the slashes in front to use.
- var disqus_identifier = 'DSL';
- var disqus_url = documentationRoot+'05-DSL.php';
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- <br style="clear:both;height:1em;">
diff --git a/documentation/05-DSL.php b/documentation/05-DSL.php
deleted file mode 100644
index 33e8e7a..0000000
--- a/documentation/05-DSL.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
- $pageTitle = "EMF Parsley DSL";
-
- $html = file_get_contents('05-DSL.html');
-
- $Nav->setLinkList(array());
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "05-DSL.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/06-AdvancedComponents.html b/documentation/06-AdvancedComponents.html
deleted file mode 100644
index f4948f4..0000000
--- a/documentation/06-AdvancedComponents.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<br style="clear:both;height:1em;">
- <div id="leftcol">
- <div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
- </div>
- <ul id="leftnav">
- <li class="partentry" >
- Documentation
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="01-Introduction.php">Introduction</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="02-GettingStarted.php">Getting Started</a></div>
- <ul style="display: none;" id="subToc_02-GettingStarted.html">
- <li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="03-Components.php">Components</a></div>
- <ul style="display: none;" id="subToc_03-Components.html">
- <li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="04-Customization.php">Customization</a></div>
- <ul style="display: none;" id="subToc_04-Customization.html">
- <li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="05-DSL.php">EMF Parsley DSL</a></div>
- <ul style="display: none;" id="subToc_05-DSL.html">
- <li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="06-AdvancedComponents.php">Advanced Components</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="07-Eclipse4.php">Eclipse 4</a></div>
- <ul style="display: none;" id="subToc_07-Eclipse4.html">
- <li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </li>
- <li class="partentry" >
- Appendix
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="GettingSources.php">Getting Sources</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="Downloads.php">EMF Parsley - Downloads</a></div>
- </li>
- </ul>
- </div>
- <div id="midcolumn">
- <a name="AdvancedComponents" ></a>
- <h1>Advanced Components</h1>
-
- <div id="disqus_thread"></div>
- <script type="text/javascript" src="documentationRoot.js"></script>
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'xtext'; // required: replace example with your forum shortname
-
- // The following are highly recommended additional parameters. Remove the slashes in front to use.
- var disqus_identifier = 'AdvancedComponents';
- var disqus_url = documentationRoot+'06-AdvancedComponents.php';
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- <br style="clear:both;height:1em;">
diff --git a/documentation/06-AdvancedComponents.php b/documentation/06-AdvancedComponents.php
deleted file mode 100644
index da06e97..0000000
--- a/documentation/06-AdvancedComponents.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
- $pageTitle = "Advanced Components";
-
- $html = file_get_contents('06-AdvancedComponents.html');
-
- $Nav->setLinkList(array());
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "06-AdvancedComponents.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/07-Eclipse4.html b/documentation/07-Eclipse4.html
deleted file mode 100644
index acfc916..0000000
--- a/documentation/07-Eclipse4.html
+++ /dev/null
@@ -1,430 +0,0 @@
-<br style="clear:both;height:1em;">
- <div id="leftcol">
- <div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
- </div>
- <ul id="leftnav">
- <li class="partentry" >
- Documentation
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="01-Introduction.php">Introduction</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="02-GettingStarted.php">Getting Started</a></div>
- <ul style="display: none;" id="subToc_02-GettingStarted.html">
- <li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="03-Components.php">Components</a></div>
- <ul style="display: none;" id="subToc_03-Components.html">
- <li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="04-Customization.php">Customization</a></div>
- <ul style="display: none;" id="subToc_04-Customization.html">
- <li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="05-DSL.php">EMF Parsley DSL</a></div>
- <ul style="display: none;" id="subToc_05-DSL.html">
- <li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="06-AdvancedComponents.php">Advanced Components</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="07-Eclipse4.php">Eclipse 4</a></div>
- <ul style="display: none;" id="subToc_07-Eclipse4.html">
- <li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </li>
- <li class="partentry" >
- Appendix
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="GettingSources.php">Getting Sources</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="Downloads.php">EMF Parsley - Downloads</a></div>
- </li>
- </ul>
- </div>
- <div id="midcolumn">
- <a name="Eclipse4" ></a>
- <h1>Eclipse 4</h1>
- <div class="toc">
- <ul>
- <li><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </div>
-
- <p>
- Instead of using the Extension Point mechanism, EMF Parsley leverages from DSL and Google Guice Injection.
- </p>
- <p>
- Because of this, it is very easy to use it with Eclipse 4.
- </p>
- <a name="GetFirstExample" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>First Example Setup</h1>
- <p>
- If you followed the steps described in section <a href="02-GettingStarted.php" title="Go to "Getting Started"">Getting Started</a> you will have already
- what we need to begin. Otherwise the following wizard will bring you to that point.
- </p>
- <p>
- <ol>
- <li>File -> New... -> Example...</li>
- <li>from Category "Emf Parsley Examples", select "Emf Parsley First Example"</li>
- <li>press Next and Finish</li>
- </ol>
- </p>
- <p>
- You will end up with three plug-ins:
- </p>
- <p>
- <ul>
- <li>org.eclipse.emf.parsley.examples.firstexample (the EMF Parsley example plug-in)</li>
- <li>org.eclipse.emf.examples.library (the model plug-in)</li>
- <li>org.eclipse.emf.examples.library.edit (the model.edit plug-in)</li>
- </ul>
- </p>
- <p>
- As a reminder, in section <a href="02-GettingStarted.php" title="Go to "Getting Started"">Getting Started</a> we reached the point where we launched a second Eclipse
- instance (but, of course, just defining a product you could have a standalone 3.x application) with a
- view (called "My Library Tree Form") that allowed to manage the model.
- </p>
- <a name="PrepareForEclipse4Application" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Preparing for a pure Eclipse 4 Application</h1>
- <p>
- What we will do now is starting from the previous step and create an Eclipse 4 Application (on top of
- the previous plug-ins) that gets to the same result, but now with a pure Eclipse 4 Part.
- </p>
- <p>
- In order to do this we need to export the <em>"org.eclipse.emf.parsley.examples.firstexample"</em> package from the first plug-in.
- </p>
- <a name="CreateEclipse4Application" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Create an Eclipse 4 Application</h1>
- <p>
- Now let's create a new, empty, Eclipse 4 application, e.g. <em>"org.eclipse.emf.parsley.examples.firstexample.application"</em>
- (you can find details on how to create Eclipse 4 applications in <a href="http://www.rcp-vision.com/?p=4694&lang=en" >our
- tutorials</a>).
- </p>
- <p>
- Create a Part and ensure that the application starts.
- </p>
- <a name="Eclipse4ApplicationAndEMFParsley" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Using an EMF Parsley TreeComposite into an Eclipse 4 Part</h1>
- <p>
- In the just created plug-in we need dependencies from the previous plug-ins: so open the <em>org.eclipse.emf.parsley.examples.firstexample.application/MANIFEST.MF</em> file, go to <em>Dependencies</em>
- tab and add the three previous plug-ins. Add also <em>"org.eclipse.emf.parsley"</em> plug-in.
- Don't forget to add the previous, and the required plug-ins, also to the Product.
- </p>
- <p>
- Open the Part java class and make the following changes:
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="comment">// Use these imports during Organizing Imports operation<br/>
- </span><span class="keyword">import</span> org.eclipse.emf.common.util.URI;<br/>
- <span class="keyword">import</span> org.eclipse.emf.ecore.resource.Resource;<br/>
- <span class="keyword">import</span> org.eclipse.swt.widgets.Composite;
- </p>
- </div>
- </div>
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="comment">// The part implements IMenuListener for context menu handling<br/>
- </span>public class MyEclipse4Part implements IMenuListener
- </p>
- </div>
- </div>
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- <span class="comment">//the parent composite<br/>
- </span>private Composite parent;<br/>
- <span class="comment">//the EMF Parley composite for showing a tree and a detail form<br/>
- </span>private TreeFormComposite treeFormComposite;<br/>
- <span class="comment">//the EMF Resource<br/>
- </span>private Resource resource;<br/>
- <br/>
- <span class="comment">//Guice injected EMF Parsley component for contributing to the tree context menu<br/>
- </span>private TreeActionBarContributor treeActionBarContributor = FirstexampleActivator.getDefault().getInjector()<br/>
- <br/>
- .getInstance(TreeActionBarContributor.class);<br/>
- <br/>
- <br/>
- <span class="comment">//Guice injected EMF Parsley factory for the tree detail form<br/>
- </span>private TreeFormFactory treeFormFactory = FirstexampleActivator.getDefault().getInjector()<br/>
- <br/>
- .getInstance(TreeFormFactory.class);<br/>
- <br/>
- <span class="comment">//Guice injected EMF Parsley Resource loader<br/>
- </span>private ResourceLoader resourceLoader = FirstexampleActivator.getDefault().getInjector()<br/>
- <br/>
- .getInstance(ResourceLoader.class);<br/>
- <br/>
- <span class="comment">//Guice injected EMF Parsley editing domain<br/>
- </span>private AdapterFactoryEditingDomain editingDomain = FirstexampleActivator.getDefault().getInjector()<br/>
- <br/>
- .getInstance(AdapterFactoryEditingDomain.class);<br/>
- <br/>
- <span class="comment">//Guice injected viewer initializer<br/>
- </span>private ViewerInitializer viewerInitializer = (ViewerInitializer) FirstexampleActivator.getDefault().getInjector()<br/>
- <br/>
- .getInstance(ViewerInitializer.class);<br/>
- <br/>
- <span class="comment">//Guice injected save manager<br/>
- </span>private ResourceSaveManager resourceSaveManager = FirstexampleActivator.getDefault().getInjector()<br/>
- <br/>
- .getInstance(ResourceSaveManager.class);<br/>
- <br/>
- <span class="comment">//URI for EMF Resource<br/>
- </span>private URI uri = URI.createFileURI(System.getProperty(<span class="string">"user.home"</span>)<br/>
- <br/>
- + <span class="string">"/MyLibrary.library"</span>);
- </p>
- </div>
- </div>
- </p>
- <p>
- Modify the <em>@PostConstruct</em> method with this code:
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- @PostConstruct<br/>
- public void postConstruct(Composite parent) {<br/>
- this.parent = parent;<br/>
- <br/>
- <span class="comment">// Initialize TreeFormFactory & ResourceLoader<br/>
- </span> init(treeFormFactory, resourceLoader);<br/>
- <br/>
- <span class="comment">// Prepare the menu action bar contributor upon the selection<br/>
- </span> treeFormComposite.getViewer().addSelectionChangedListener(treeActionBarContributor);<br/>
- <br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- and add the following methods:
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- public void init(TreeFormFactory treeFormFactory, ResourceLoader resourceLoader) {<br/>
- <span class="comment">//create the tree-form composite<br/>
- </span> treeFormComposite = treeFormFactory.createTreeFormMasterDetailComposite(parent, SWT.BORDER);<br/>
- <span class="comment">//load the resource<br/>
- </span> resource = resourceLoader.getResource(editingDomain, uri).getResource();<br/>
- <span class="comment">//update the composite<br/>
- </span> treeFormComposite.update(resource);<br/>
- <span class="comment">//initialize and bind the context menu to the tree-form composite<br/>
- </span> treeActionBarContributor.initialize(editingDomain);<br/>
- viewerInitializer.addContextMenu(<br/>
- treeFormComposite.getViewer(), treeActionBarContributor, editingDomain, this);<br/>
- }<br/>
- <br/>
- <br/>
- @Override<br/>
- public void menuAboutToShow(IMenuManager manager) {<br/>
- treeActionBarContributor.menuAboutToShow(manager);<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- If you now run the application you will be able to manage the model:
- </p>
- <p>
- <div class="image" >
- <a class="gallery" rel="prettyPhoto[all]" title="" href="images/07-eclipse4-part.png">
- <img src="images/07-eclipse4-part.png"
- width="600px"
- />
- </a>
- <div class="caption">
- </div>
- </div>
- </p>
- <p>
- but you will notice that it is not possible to persist the changes to the model.
- </p>
- <a name="Eclipse4Save" ></a>
- <span style="float:left; border-top: 1px dotted #d4d4dd; margin-left: 0; margin-top: 5px;
- padding: 5px 0;
- padding-top: 5px;"></span><a style="float: right" href="#">Top</a>
- <br style="clear:both"></br>
- <h1>Adding the dirty state and Save command</h1>
- <p>
- In order to allow persisting the model changes we have to add the dirty state handling to the part and
- the Save command to the application.
- Let's start with adding the following attribute to the part
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- @Inject<br/>
- MDirtyable dirtyable;
- </p>
- </div>
- </div>
- </p>
- <p>
- initialize it in the <em>@PostConstruct</em> method
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- @PostConstruct<br/>
- public void postConstruct(Composite parent, MDirtyable dirtyable) {<br/>
- <br/>
- this.dirtyable = dirtyable;<br/>
- <br/>
- this.dirtyable.setDirty(false);
- </p>
- </div>
- </div>
- </p>
- <p>
- add to <em>init</em> method the following code in order to update the dirty state
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- editingDomain.getCommandStack().addCommandStackListener(<br/>
- new CommandStackListener() {<br/>
- public void commandStackChanged(EventObject event) {<br/>
- if (dirtyable != null)<br/>
- dirtyable.setDirty(true);<br/>
- }<br/>
- });
- </p>
- </div>
- </div>
- </p>
- <p>
- and add the <em>@Persist</em> method, which will be called when the part is saved
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- @Persist<br/>
- public void save(MDirtyable dirty) throws IOException {<br/>
- if (resourceSaveManager.save(resource)) {<br/>
- <br/>
- if (dirty != null) {<br/>
- <br/>
- dirty.setDirty(false);<br/>
- <br/>
- }<br/>
- <br/>
- }<br/>
- }
- </p>
- </div>
- </div>
- </p>
- <p>
- and, in the end, add the <em>Save</em> handler along with the correspondent <em>Command</em> and <em>Menu</em>
- (you can find how to create handlers, commands and menus in an Eclipse 4 applications in <a href="http://www.rcp-vision.com/?p=4972&lang=en" >our
- tutorials</a>)
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- public class SaveHandler {<br/>
- <br/>
- @Execute<br/>
- void execute(EPartService partService, @Named(IServiceConstants.ACTIVE_PART) MPart part) {<br/>
- <br/>
- partService.savePart(part, false);<br/>
- }<br/>
- <br/>
- }
- </p>
- </div>
- </div>
- </p>
- <div id="disqus_thread"></div>
- <script type="text/javascript" src="documentationRoot.js"></script>
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'xtext'; // required: replace example with your forum shortname
-
- // The following are highly recommended additional parameters. Remove the slashes in front to use.
- var disqus_identifier = 'Eclipse4';
- var disqus_url = documentationRoot+'07-Eclipse4.php';
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- <br style="clear:both;height:1em;">
diff --git a/documentation/07-Eclipse4.php b/documentation/07-Eclipse4.php
deleted file mode 100644
index cdd43c0..0000000
--- a/documentation/07-Eclipse4.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
- $pageTitle = "Eclipse 4";
-
- $html = file_get_contents('07-Eclipse4.html');
-
- $Nav->setLinkList(array());
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "07-Eclipse4.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/Downloads.html b/documentation/Downloads.html
deleted file mode 100644
index ba4d784..0000000
--- a/documentation/Downloads.html
+++ /dev/null
@@ -1,120 +0,0 @@
-<br style="clear:both;height:1em;">
- <div id="leftcol">
- <div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
- </div>
- <ul id="leftnav">
- <li class="partentry" >
- Documentation
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="01-Introduction.php">Introduction</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="02-GettingStarted.php">Getting Started</a></div>
- <ul style="display: none;" id="subToc_02-GettingStarted.html">
- <li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="03-Components.php">Components</a></div>
- <ul style="display: none;" id="subToc_03-Components.html">
- <li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="04-Customization.php">Customization</a></div>
- <ul style="display: none;" id="subToc_04-Customization.html">
- <li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="05-DSL.php">EMF Parsley DSL</a></div>
- <ul style="display: none;" id="subToc_05-DSL.html">
- <li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="06-AdvancedComponents.php">Advanced Components</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="07-Eclipse4.php">Eclipse 4</a></div>
- <ul style="display: none;" id="subToc_07-Eclipse4.html">
- <li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </li>
- <li class="partentry" >
- Appendix
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="GettingSources.php">Getting Sources</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="Downloads.php">EMF Parsley - Downloads</a></div>
- </li>
- </ul>
- </div>
- <div id="midcolumn">
- <a name="EmfParsleyDownloads" ></a>
- <h1>EMF Parsley - Downloads</h1>
-
- <p>
- To install via the update site URL listed below, copy and paste it into the "Help > Install new software" dialog.
- </p>
- <p>
- N.B. All API are to be considered provisional!
- </p>
- <p>
- <em>Update Site</em>:
- </p>
- <p>
- <ul>
- <li>Last Stable Release 0.1.0: <a href="http://download.eclipse.org/emf-parsley/updates" >http://download.eclipse.org/emf-parsley/updates</a></li>
- </ul>
- </p>
- <p>
- All downloads are provided under the terms and conditions of the Eclipse Foundation Software User Agreement unless otherwise specified.
- </p>
- <div id="disqus_thread"></div>
- <script type="text/javascript" src="documentationRoot.js"></script>
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'xtext'; // required: replace example with your forum shortname
-
- // The following are highly recommended additional parameters. Remove the slashes in front to use.
- var disqus_identifier = 'EmfParsleyDownloads';
- var disqus_url = documentationRoot+'Downloads.php';
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- <br style="clear:both;height:1em;">
diff --git a/documentation/Downloads.php b/documentation/Downloads.php
deleted file mode 100644
index 18cb707..0000000
--- a/documentation/Downloads.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
- $pageTitle = "EMF Parsley - Downloads";
-
- $html = file_get_contents('Downloads.html');
-
- $Nav->setLinkList(array());
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "Downloads.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/GettingSources.html b/documentation/GettingSources.html
deleted file mode 100644
index 32cf8c0..0000000
--- a/documentation/GettingSources.html
+++ /dev/null
@@ -1,216 +0,0 @@
-<br style="clear:both;height:1em;">
- <div id="leftcol">
- <div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
- </div>
- <ul id="leftnav">
- <li class="partentry" >
- Documentation
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="01-Introduction.php">Introduction</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="02-GettingStarted.php">Getting Started</a></div>
- <ul style="display: none;" id="subToc_02-GettingStarted.html">
- <li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
- <li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
- <li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="03-Components.php">Components</a></div>
- <ul style="display: none;" id="subToc_03-Components.html">
- <li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
- <li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
- <li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
- <li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="04-Customization.php">Customization</a></div>
- <ul style="display: none;" id="subToc_04-Customization.html">
- <li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
- <li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
- <li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
- <li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
- <li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
- <li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="05-DSL.php">EMF Parsley DSL</a></div>
- <ul style="display: none;" id="subToc_05-DSL.html">
- <li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
- </ul>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="06-AdvancedComponents.php">Advanced Components</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="07-Eclipse4.php">Eclipse 4</a></div>
- <ul style="display: none;" id="subToc_07-Eclipse4.html">
- <li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
- <li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
- <li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
- <li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
- </ul>
- </li>
- <li class="partentry" >
- Appendix
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="GettingSources.php">Getting Sources</a></div>
- </li>
- <li class="separator"><div class="separator">
- <img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
- <a href="Downloads.php">EMF Parsley - Downloads</a></div>
- </li>
- </ul>
- </div>
- <div id="midcolumn">
- <a name="GettingSources" ></a>
- <h1>Getting Sources</h1>
-
- <p>
- If you want to get the sources of EMF Parsley,
- for instance, to contribute new features and patches, you can get them
- via Git.
- </p>
- <p>
- Note that you need two different workspaces (and two different target platforms)
- if you want to materialize also the workspace for developing the <a href="http://eclipse.org/rap/" >RAP</a>
- version of Emf Parsley (see below).
- </p>
- <p>
- In both cases, you need a <a href="http://www.eclipse.org/Xtext/download.html" >"Full eclipse"</a>
- from Xtext website or use the <a href="http://www.eclipse.org/downloads/" >eclipse DSL Package</a>
- (we use Xtend for many source files, and we do not put the generated files
- in the repository).
- </p>
- <p>
- We use <a href="http://www.eclipse.org/buckminster/" >Buckminster</a> as the
- building and materialization infrastructure.
- We provide an <a href="http://git.eclipse.org/c/emf-parsley/org.eclipse.emf-parsley.git/plain/devtools/org.eclipse.emf.parsley.contributor/workspace.ant" >ant script</a> which installs and runs Buckminster.
- This will automatically materialize the sources in the workspace and setup
- the target platform, so that you will have everything that is necessary
- to have a working workspace with EMF Parsley sources.
- </p>
- <p>
- What this ant script will do in detail:
- </p>
- <p>
- <ul>
- <li>installs Buckminster headless if not found;
- default path: <em>${user.home}/buckminster.parsley</em>.
- It can be changed by passing a path for the variable
- <em>buckminster.home</em>.</li>
- <li>creates an eclipse workspace;
- default: <em>${user.home}/workspaces/emf-parsley-sources</em>
- or <em>${user.home}/workspaces/emf-parsley-rap-sources</em>
- for target <em>materialize.workspace.rap</em>.
- It can be changed by passing a path for the
- variable <em>WORKSPACE</em></li>
- <li>clones the Emf Parsley git repository;
- default: <em>${user.home}/git/org.eclipse.emf-parsley</em>.
- It can be changed by passing a full path for the
- variable <em>git.clone.dest</em>. Note that the repository will
- be cloned only if it is not found in the given path.</li>
- <li>creates and sets a target platform</li>
- <li>imports necessary projects in the created workspace</li>
- <li>runs the MWE2 workflow for generating Xtext language infrastructure for the DSL
- (in this phase, you should ignore possible Java compilation errors you see in the
- console)</li>
- <li>sets some important workspace settings</li>
- </ul>
- </p>
- <p>
- Especially the first time (for cloning and materializing the target platform)
- the script might take several minutes. (Target platform materialization
- might also fail due to network problems; in that case, try and run the
- script again).
- </p>
- <p>
- Run the ant script located <a href="http://git.eclipse.org/c/emf-parsley/org.eclipse.emf-parsley.git/plain/devtools/org.eclipse.emf.parsley.contributor/workspace.ant" >here</a>.
- In unix you can use following command:
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- wget -N http:<span class="comment">//git.eclipse.org/c/emf-parsley/org.eclipse.emf-parsley.git/plain/devtools/org.eclipse.emf.parsley.contributor/workspace.ant</span>
- </p>
- </div>
- </div>
- </p>
- <p>
- and then run the script:
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- ant -f workspace.ant
- </p>
- </div>
- </div>
- </p>
- <p>
- If you want the workspace for RAP version of Emf Parsley, run the script as
- follows:
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- ant -f workspace.ant materialize.workspace.rap
- </p>
- </div>
- </div>
- </p>
- <p>
- You can pass custom path using the variables defined above; for instance
- </p>
- <p>
- <div class="literallayout">
- <div class="incode">
- <p class="code">
- ant -Dgit.clone.dest=/myrepos/emf-parsley -DWORKSPACE=/myworkspaces/parsley -f workspace.ant
- </p>
- </div>
- </div>
- </p>
- <p>
- After the script terminates successfully, you can open the materialized
- workspace with Eclipse (an automatic build will also start for compiling
- Xtend files). The workspace is already setup with the correct target platform.
- </p>
- <div id="disqus_thread"></div>
- <script type="text/javascript" src="documentationRoot.js"></script>
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'xtext'; // required: replace example with your forum shortname
-
- // The following are highly recommended additional parameters. Remove the slashes in front to use.
- var disqus_identifier = 'GettingSources';
- var disqus_url = documentationRoot+'GettingSources.php';
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- <br style="clear:both;height:1em;">
diff --git a/documentation/GettingSources.php b/documentation/GettingSources.php
deleted file mode 100644
index 95ce04e..0000000
--- a/documentation/GettingSources.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
- $pageTitle = "Getting Sources";
-
- $html = file_get_contents('GettingSources.html');
-
- $Nav->setLinkList(array());
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "GettingSources.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/_index.html b/documentation/_index.html
deleted file mode 100644
index 38e13ff..0000000
--- a/documentation/_index.html
+++ /dev/null
@@ -1,80 +0,0 @@
-<br style="clear:both;height:1em;">
-<div id="leftcol">
-<div class="nav-logo">
- <a href="index.php"><img src="logo.png" style="margin-left:10px; width:155px"/></a>
-</div>
-<ul id="leftnav">
-<li class="partentry" >
-Documentation
-</li>
-<li class="separator"><div class="separator">
-<img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
-<a href="01-Introduction.php">Introduction</a></div>
-</li>
-<li class="separator"><div class="separator">
-<img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
-<a href="02-GettingStarted.php">Getting Started</a></div>
-<ul style="display: none;" id="subToc_02-GettingStarted.html">
-<li id="02-GettingStarted.html#Installation.html" ><a href="02-GettingStarted.php#Installation.php" >Installation</a></li>
-<li id="02-GettingStarted.html#FirstExample.html" ><a href="02-GettingStarted.php#FirstExample.php" >First Example</a></li>
-<li id="02-GettingStarted.html#RCPMail.html" ><a href="02-GettingStarted.php#RCPMail.php" >RCP Mail Example</a></li>
-</ul>
-</li>
-<li class="separator"><div class="separator">
-<img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
-<a href="03-Components.php">Components</a></div>
-<ul style="display: none;" id="subToc_03-Components.html">
-<li id="03-Components.html#FormComponent.html" ><a href="03-Components.php#FormComponent.php" >Form Component</a></li>
-<li id="03-Components.html#TreeComponent.html" ><a href="03-Components.php#TreeComponent.php" >Tree Component</a></li>
-<li id="03-Components.html#TreeFormComponent.html" ><a href="03-Components.php#TreeFormComponent.php" >Tree Form Component</a></li>
-<li id="03-Components.html#TableComponent.html" ><a href="03-Components.php#TableComponent.php" >Table Component</a></li>
-</ul>
-</li>
-<li class="separator"><div class="separator">
-<img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
-<a href="04-Customization.php">Customization</a></div>
-<ul style="display: none;" id="subToc_04-Customization.html">
-<li id="04-Customization.html#ResourceManagers.html" ><a href="04-Customization.php#ResourceManagers.php" >Managing Resources</a></li>
-<li id="04-Customization.html#Providers.html" ><a href="04-Customization.php#Providers.php" >Providers</a></li>
-<li id="04-Customization.html#SelectionAndMenu.html" ><a href="04-Customization.php#SelectionAndMenu.php" >Selection And Menu</a></li>
-<li id="04-Customization.html#Builders.html" ><a href="04-Customization.php#Builders.php" >Builders</a></li>
-<li id="04-Customization.html#Factories.html" ><a href="04-Customization.php#Factories.php" >Factories</a></li>
-<li id="04-Customization.html#Viewers.html" ><a href="04-Customization.php#Viewers.php" >Viewers</a></li>
-</ul>
-</li>
-<li class="separator"><div class="separator">
-<img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
-<a href="05-DSL.php">EMF Parsley DSL</a></div>
-<ul style="display: none;" id="subToc_05-DSL.html">
-<li id="05-DSL.html#xbase.html" ><a href="05-DSL.php#xbase.php" >Xbase features</a></li>
-</ul>
-</li>
-<li class="separator"><div class="separator">
-<img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
-<a href="06-AdvancedComponents.php">Advanced Components</a></div>
-</li>
-<li class="separator"><div class="separator">
-<img src="triangle.gif" style="height:12px; margin-right: 2px; " /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
-<a href="07-Eclipse4.php">Eclipse 4</a></div>
-<ul style="display: none;" id="subToc_07-Eclipse4.html">
-<li id="07-Eclipse4.html#GetFirstExample.html" ><a href="07-Eclipse4.php#GetFirstExample.php" >First Example Setup</a></li>
-<li id="07-Eclipse4.html#PrepareForEclipse4Application.html" ><a href="07-Eclipse4.php#PrepareForEclipse4Application.php" >Preparing for a pure Eclipse 4 Application</a></li>
-<li id="07-Eclipse4.html#CreateEclipse4Application.html" ><a href="07-Eclipse4.php#CreateEclipse4Application.php" >Create an Eclipse 4 Application</a></li>
-<li id="07-Eclipse4.html#Eclipse4ApplicationAndEMFParsley.html" ><a href="07-Eclipse4.php#Eclipse4ApplicationAndEMFParsley.php" >Using an EMF Parsley TreeComposite into an Eclipse 4 Part</a></li>
-<li id="07-Eclipse4.html#Eclipse4Save.html" ><a href="07-Eclipse4.php#Eclipse4Save.php" >Adding the dirty state and Save command</a></li>
-</ul>
-</li>
-<li class="partentry" >
-Appendix
-</li>
-<li class="separator"><div class="separator">
-<img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
-<a href="GettingSources.php">Getting Sources</a></div>
-</li>
-<li class="separator"><div class="separator">
-<img src="triangle.gif" style="height:12px; margin-right: 2px; display:none" /><img src="triangle-90.gif" style="display:none; margin-right: 2px" height="12px" />
-<a href="Downloads.php">EMF Parsley - Downloads</a></div>
-</li>
-</ul>
-</div>
-<br style="clear:both;height:1em;">
diff --git a/documentation/book.css b/documentation/book.css
deleted file mode 100644
index 380c47f..0000000
--- a/documentation/book.css
+++ /dev/null
@@ -1,215 +0,0 @@
-H6.CaptionFigColumn {
- display: block;
- text-align: left;
- text-indent: 0.000000pt;
- margin-top: 3.000000pt;
- margin-bottom: 11.000000pt;
- margin-right: 0.000000pt;
- margin-left: 0.000000pt;
- font-size: 9.000000pt;
- font-weight: medium;
- font-style: Italic;
- color: #000000;
- text-decoration: none;
- vertical-align: baseline;
- text-transform: none;
- font-family: "Arial";
-}
-
-P.Note {
- display: block;
- text-align: left;
- text-indent: 0pt;
- margin-top: 19.500000pt;
- margin-bottom: 19.500000pt;
- margin-right: 0.000000pt;
- margin-left: 30pt;
- font-size: 11.000000pt;
- font-weight: medium;
- font-style: Italic;
- color: #000000;
- text-decoration: none;
- vertical-align: baseline;
- text-transform: none;
- font-family: "Arial";
-}
-
-EM.UILabel {
- font-weight: Bold;
- font-style: Regular;
- text-decoration: none;
- vertical-align: baseline;
- text-transform: none;
-}
-
-.image {
- text-align:center;
-}
-
-a.srcLink {
- text-decoration: none;
- color: #7f7f7f !important;
-}
-
-abbr {
- border-bottom: 1px dotted;
-}
-
-EM.CodeName {
- font-weight: Bold;
- font-style: Regular;
- text-decoration: none;
- vertical-align: baseline;
- text-transform: none;
- font-family: "Courier New";
-}
-
-SPAN.NoWrap {
- white-space: nowrap;
-}
-
-/* following font face declarations need to be removed for DBCS */
-body,h1,h2,h3,h4,h5,h6,p,table,td,caption,th,ul,ol,dl,li,dd,dt {
- font-family: Arial, Helvetica, sans-serif;
- color: #000000
-}
-
-pre {
- font-family: Courier, monospace
-}
-
-/* end font face declarations */
- /* following font size declarations should be OK for DBCS */
-body,h1,h2,h3,h4,h5,h6,p,table,td,caption,th,ul,ol,dl,li,dd,dt {
- font-size: 10pt;
-}
-
-pre {
- font-size: 10pt
-}
-
-h1 {
- font-size: 18pt;
- margin-top: 5;
- margin-bottom: 1
-}
-
-h2 {
- font-size: 14pt;
- margin-top: 25;
- margin-bottom: 3
-}
-
-h3 {
- font-size: 11pt;
- margin-top: 20;
- margin-bottom: 3
-}
-
-h4 {
- font-size: 10pt;
- margin-top: 20;
- margin-bottom: 3;
- font-style: italic
-}
-
-p {
- margin-top: 10px;
- margin-bottom: 10px
-}
-
-pre {
- margin-left: 6;
- font-size: 9pt
-}
-
-a:hover {
- color: #000080
-}
-
-a:visited {
- text-decoration: underline
-}
-
-.image {
- text-align:center;
-}
-
-a.jdoc {
- border-bottom: .1em dotted;
- text-decoration: none;
- font-weight: normal;
- color: #000000 !important;
-}
-
-a.srcLink {
- text-decoration: none;
- color: #7f7f7f !important;
-}
-
-abbr {
- border-bottom: 1px dotted;
-}
-
-ul {
- margin-top: 0;
- margin-bottom: 10
-}
-
-li {
- margin-top: 0;
- margin-bottom: 0
-}
-
-li p {
- margin-top: 0;
- margin-bottom: 0
-}
-
-ol {
- margin-top: 0;
- margin-bottom: 10
-}
-
-dl {
- margin-top: 0;
- margin-bottom: 10
-}
-
-dt {
- margin-top: 0;
- margin-bottom: 0;
- font-weight: bold
-}
-
-dd {
- margin-top: 0;
- margin-bottom: 0
-}
-
-strong {
- font-weight: bold
-}
-
-em {
- font-style: italic
-}
-
-var {
- font-style: italic
-}
-
-div.revision {
- border-left-style: solid;
- border-left-width: thin;
- border-left-color: #7B68EE;
- padding-left: 5
-}
-
-th {
- font-weight: bold
-}
-
-xxtd{
- border-top:2px solid black;
-}
diff --git a/documentation/code.css b/documentation/code.css
deleted file mode 100644
index 3792ec3..0000000
--- a/documentation/code.css
+++ /dev/null
@@ -1,55 +0,0 @@
-.literallayout .code {
- display: block;
- border: 1px solid gray;
- margin: 1em;
- padding: 1em;
- background-color: #F0F0F0;
- color: #000000 !important;
- font-family: "Lucida Console", Monaco, monospace;
- font-size: 12px;
-}
-
-.inlinecode{
- padding-left: 3pt;
- padding-right: 3pt;
- font-size: 9.000000pt;
- font-family: "Lucida Console", Monaco, monospace;
- color: #000000 !important;
-}
-
-.keyword {
- font-weight: bold;
- color: #7F0055;
-}
-
-.string {
- font-weight: normal !important;
- color: #2A00FF;
-}
-
-.comment {
- font-style: italic;
- color: #3F7F5F;
-}
-
-.incode {
- display: inline;
-}
-
-P.Code {
- display: block;
- text-align: left;
- text-indent: 0.00pt;
- margin-top: 0.000000pt;
- margin-bottom: 0.000000pt;
- margin-right: 0.000000pt;
- margin-left: 15pt;
- font-size: 9.000000pt;
- font-weight: normal;
- font-style: Regular;
- color: #000000 !important;
- text-decoration: none;
- vertical-align: baseline;
- text-transform: none;
- font-family: "Lucida Console", Monaco, monospace;
-}
diff --git a/documentation/images/03-components-form.png b/documentation/images/03-components-form.png
deleted file mode 100644
index 5811ffb..0000000
--- a/documentation/images/03-components-form.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/03-components-table.png b/documentation/images/03-components-table.png
deleted file mode 100644
index ed648fb..0000000
--- a/documentation/images/03-components-table.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/03-components-tree.png b/documentation/images/03-components-tree.png
deleted file mode 100644
index 795f974..0000000
--- a/documentation/images/03-components-tree.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/03-components-treeform.png b/documentation/images/03-components-treeform.png
deleted file mode 100644
index 4e69fb9..0000000
--- a/documentation/images/03-components-treeform.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/07-eclipse4-part.png b/documentation/images/07-eclipse4-part.png
deleted file mode 100644
index f878b9b..0000000
--- a/documentation/images/07-eclipse4-part.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/createWriter.png b/documentation/images/createWriter.png
deleted file mode 100644
index 3a8288a..0000000
--- a/documentation/images/createWriter.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/eclipseModelingTools.png b/documentation/images/eclipseModelingTools.png
deleted file mode 100644
index 7824963..0000000
--- a/documentation/images/eclipseModelingTools.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/emf-components-update-site.png b/documentation/images/emf-components-update-site.png
deleted file mode 100644
index 0a7c382..0000000
--- a/documentation/images/emf-components-update-site.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/emf-parsley-update-site.png b/documentation/images/emf-parsley-update-site.png
deleted file mode 100644
index 6e9f22b..0000000
--- a/documentation/images/emf-parsley-update-site.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/first-example-launch.png b/documentation/images/first-example-launch.png
deleted file mode 100644
index f802995..0000000
--- a/documentation/images/first-example-launch.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/first-example-run.png b/documentation/images/first-example-run.png
deleted file mode 100644
index fa74db6..0000000
--- a/documentation/images/first-example-run.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/install-buckminster.png b/documentation/images/install-buckminster.png
deleted file mode 100644
index aa07883..0000000
--- a/documentation/images/install-buckminster.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/labelCustomization.png b/documentation/images/labelCustomization.png
deleted file mode 100644
index 953dc06..0000000
--- a/documentation/images/labelCustomization.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/materialized.png b/documentation/images/materialized.png
deleted file mode 100644
index 44344a0..0000000
--- a/documentation/images/materialized.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/open-cquery-new-property1.png b/documentation/images/open-cquery-new-property1.png
deleted file mode 100644
index 2f8c8e7..0000000
--- a/documentation/images/open-cquery-new-property1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/open-cquery.png b/documentation/images/open-cquery.png
deleted file mode 100644
index c73edd8..0000000
--- a/documentation/images/open-cquery.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/open-cquery1.png b/documentation/images/open-cquery1.png
deleted file mode 100644
index c7a2696..0000000
--- a/documentation/images/open-cquery1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/images/resolving-cquery.png b/documentation/images/resolving-cquery.png
deleted file mode 100644
index b9857a4..0000000
--- a/documentation/images/resolving-cquery.png
+++ /dev/null
Binary files differ
diff --git a/documentation/include.php b/documentation/include.php
deleted file mode 100644
index be8283f..0000000
--- a/documentation/include.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-
- # Set the theme for your project's web pages.
- # See the Committer Tools "How Do I" for list of themes
- # https://dev.eclipse.org/committers/
- # Optional: defaults to system theme
- $theme = "Nova";
-
- # Define your project-wide Nav bars here.
- # Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
- # these are optional
- # $Nav->setLinkList(array());
-
- $pageAuthor = "Lorenzo Bettini, Vincenzo Caselli, Francesco Guidieri";
- $pageTitle = "Emf Parsley Guide";
-
- $App->AddExtraHtmlHeader('<link rel="stylesheet" type="text/css" href="code.css"/>' . "\n\t");
- $App->AddExtraHtmlHeader('<link rel="stylesheet" type="text/css" href="book.css"/>' . "\n\t");
- $App->AddExtraHtmlHeader('<link rel="stylesheet" type="text/css" href="novaAddon.css"/>' . "\n\t");
-
- $App->Promotion = TRUE;
- ?>
diff --git a/documentation/index.html b/documentation/index.html
new file mode 100644
index 0000000..11f41da
--- /dev/null
+++ b/documentation/index.html
@@ -0,0 +1,10 @@
+<html>
+<head>
+<title>Your Page Title</title>
+<META HTTP-EQUIV="refresh" CONTENT="0;https://www.eclipse.org/emf-parsley/documentation.html">
+
+</head>
+<body>
+<p>Redirecting to Emf Parsley documentationÂ… </p>
+</body>
+</html>
\ No newline at end of file
diff --git a/documentation/index.php b/documentation/index.php
deleted file mode 100644
index 5cb3e0c..0000000
--- a/documentation/index.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?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"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
- include("include.php");
-
- $App->AddExtraHtmlHeader('
- <script type="text/javascript">
- function init() {
- var docName = "00-Main.html";
- initTocMenu(docName);
- highlightCurrentSection(docName);
- }
-
- function initTocMenu(ActiveSubTocElementId){
- var menu = document.getElementById("leftnav");
-
- var chapters = menu.children;
- addHideSubsectionFunction(chapters);
- var subToc = document.getElementById(\'subToc_\' + ActiveSubTocElementId);
- if(subToc) {
- subToc.style.display = "block";
- subToc.previousElementSibling.children[0].style.display = "none"
- subToc.previousElementSibling.children[1].style.display = "inline"
- }
- }
-
- function switchImages(chap) {
-
- }
-
- function addHideSubsectionFunction(items){
- for (var i = 0; i < items.length; i++) {
- if (items[i].firstElementChild != null && items[i].className == "separator"){
- if(items[i].firstElementChild.firstElementChild != null){
- items[i].firstElementChild.firstElementChild.onclick = function(){this.nextElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- items[i].firstElementChild.firstElementChild.nextElementSibling.onclick = function(){this.previousElementSibling.style.display="inline";this.style.display = "none"; toc_toggle_subsections(this.parentNode.parentNode);};
- }
- items[i].firstElementChild.style.cursor = "pointer";
- }
- }
- }
-
- function toc_toggle_subsections(chap){
- if ( chap.children[1].style.display != "none" ) {
- chap.children[1].style.display = "none"
- } else {
- chap.children[1].style.display = "block"
- }
- }
-
- function highlightCurrentSection(sec) {
- document.getElementById(sec).style.backgroundColor= "#D0D0D0"
- }
-
- if ( window.addEventListener ) {
- window.addEventListener( "load", init, false );
- }
- else if ( window.attachEvent ) {
- window.attachEvent( "onload", init );
- } else
- if ( window.onLoad ) {
- window.onload = init;
- }
- </script>');
-
- $pageTitle = "Emf Parsley Guide";
-
- $html .= file_get_contents('_index.html');
-
- # Generate the web page
- $App->generatePage("Nova", $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
diff --git a/documentation/logo.png b/documentation/logo.png
deleted file mode 100644
index e314af1..0000000
--- a/documentation/logo.png
+++ /dev/null
Binary files differ
diff --git a/documentation/triangle-90.gif b/documentation/triangle-90.gif
deleted file mode 100644
index b43603d..0000000
--- a/documentation/triangle-90.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/triangle.gif b/documentation/triangle.gif
deleted file mode 100644
index b43603d..0000000
--- a/documentation/triangle.gif
+++ /dev/null
Binary files differ