
<!doctype html>
<html lang="en" class="no-js">
  <head>
    
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width,initial-scale=1">
      
      
      
      
      <link rel="icon" href="../../assets/images/favicon.png">
      <meta name="generator" content="mkdocs-1.1.2, mkdocs-material-7.1.5">
    
    
      
        <title>Eugenia - Epsilon</title>
      
    
    
      <link rel="stylesheet" href="../../assets/stylesheets/main.bde7dde4.min.css">
      
        
        <link rel="stylesheet" href="../../assets/stylesheets/palette.ef6f36e2.min.css">
        
          
          
          <meta name="theme-color" content="#000000">
        
      
    
    
    
      
        
        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700%7CRoboto+Mono&display=fallback">
        <style>:root{--md-text-font-family:"Roboto";--md-code-font-family:"Roboto Mono"}</style>
      
    
    
    
      <link rel="stylesheet" href="../../assets/stylesheets/mermaid.css">
    
      <link rel="stylesheet" href="../../assets/javascript/google-code-prettify/prettify.css">
    
      <link rel="stylesheet" href="https://unpkg.com/mermaid@8.5.1/dist/mermaid.css">
    
      <link rel="stylesheet" href="../../assets/stylesheets/slick.css">
    
      <link rel="stylesheet" href="../../assets/stylesheets/slick-theme.css">
    
      <link rel="stylesheet" href="../../assets/stylesheets/extra.css">
    
    
      
        
<script>
  window.ga = window.ga || function() {
    (ga.q = ga.q || []).push(arguments)
  }
  ga.l = +new Date
  /* Setup integration and send page view */
  ga("create", "UA-184785655-1", "auto")
  ga("set", "anonymizeIp", true)
  ga("send", "pageview")
  /* Register handler to log search on blur */
  document.addEventListener("DOMContentLoaded", () => {
    if (document.forms.search) {
      var query = document.forms.search.query
      query.addEventListener("blur", function() {
        if (this.value) {
          var path = document.location.pathname;
          ga("send", "pageview", path + "?q=" + this.value)
        }
      })
    }
  })
</script>
<script async src="https://www.google-analytics.com/analytics.js"></script>
      
    
    
  </head>
  
  
    
    
    
    
    
    <body dir="ltr" data-md-color-scheme="" data-md-color-primary="black" data-md-color-accent="orange">
  
    
    <script>function __prefix(e){return new URL("../..",location).pathname+"."+e}function __get(e,t=localStorage){return JSON.parse(t.getItem(__prefix(e)))}</script>
    
    <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
    <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
    <label class="md-overlay" for="__drawer"></label>
    <div data-md-component="skip">
      
        
        <a href="#graphical-model-editor-development-with-eugeniagmf" class="md-skip">
          Skip to content
        </a>
      
    </div>
    <div data-md-component="announce">
      
    </div>
    
      <header class="md-header" data-md-component="header">
  <nav class="md-header__inner md-grid" aria-label="Header">
    <a href="../.." title="Epsilon" class="md-header__button md-logo" aria-label="Epsilon" data-md-component="logo">
      
  <img src="../../assets/images/epsilon-white-background.png" alt="logo">

    </a>
    <label class="md-header__button md-icon" for="__drawer">
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg>
    </label>
    <div class="md-header__title" data-md-component="header-title">
      <div class="md-header__ellipsis">
        <div class="md-header__topic">
          <span class="md-ellipsis">
            Epsilon
          </span>
        </div>
        <div class="md-header__topic" data-md-component="header-topic">
          <span class="md-ellipsis">
            
              Eugenia
            
          </span>
        </div>
      </div>
    </div>
    
    
    
      <label class="md-header__button md-icon" for="__search">
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
      </label>
      
<div class="md-search" data-md-component="search" role="dialog">
  <label class="md-search__overlay" for="__search"></label>
  <div class="md-search__inner" role="search">
    <form class="md-search__form" name="search">
      <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" data-md-state="active" required>
      <label class="md-search__icon md-icon" for="__search">
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
      </label>
      <button type="reset" class="md-search__icon md-icon" aria-label="Clear" tabindex="-1">
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg>
      </button>
    </form>
    <div class="md-search__output">
      <div class="md-search__scrollwrap" data-md-scrollfix>
        <div class="md-search-result" data-md-component="search-result">
          <div class="md-search-result__meta">
            Initializing search
          </div>
          <ol class="md-search-result__list"></ol>
        </div>
      </div>
    </div>
  </div>
</div>
    
    
      <div class="md-header__source">
        
<a href="https://git.eclipse.org/c/epsilon/org.eclipse.epsilon.git/" title="Go to repository" class="md-source" data-md-component="source">
  <div class="md-source__icon md-icon">
    
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
  </div>
  <div class="md-source__repository">
    Git repository @ Eclipse
  </div>
</a>
      </div>
    
  </nav>
</header>
    
    <div class="md-container" data-md-component="container">
      
      
        
      
      <main class="md-main" data-md-component="main">
        <div class="md-main__inner md-grid">
          
            
              
              <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    


<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
  <label class="md-nav__title" for="__drawer">
    <a href="../.." title="Epsilon" class="md-nav__button md-logo" aria-label="Epsilon" data-md-component="logo">
      
  <img src="../../assets/images/epsilon-white-background.png" alt="logo">

    </a>
    Epsilon
  </label>
  
    <div class="md-nav__source">
      
<a href="https://git.eclipse.org/c/epsilon/org.eclipse.epsilon.git/" title="Go to repository" class="md-source" data-md-component="source">
  <div class="md-source__icon md-icon">
    
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
  </div>
  <div class="md-source__repository">
    Git repository @ Eclipse
  </div>
</a>
    </div>
  
  <ul class="md-nav__list" data-md-scrollfix>
    
      
      
      

  
  
  
    <li class="md-nav__item">
      <a href="../.." class="md-nav__link">
        Home
      </a>
    </li>
  

    
      
      
      

  
  
  
    <li class="md-nav__item">
      <a href="../../download/" class="md-nav__link">
        Download
      </a>
    </li>
  

    
      
      
      

  
  
  
    <li class="md-nav__item">
      <a href="../../getting-started/" class="md-nav__link">
        Getting Started
      </a>
    </li>
  

    
      
      
      

  
  
  
    <li class="md-nav__item">
      <a href="../../live" class="md-nav__link">
        Playground
      </a>
    </li>
  

    
      
      
      

  
  
    
  
  
    
    <li class="md-nav__item md-nav__item--active md-nav__item--nested">
      
      
        <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_5" type="checkbox" id="__nav_5" checked>
      
      <label class="md-nav__link" for="__nav_5">
        Documentation
        <span class="md-nav__icon md-icon"></span>
      </label>
      <nav class="md-nav" aria-label="Documentation" data-md-level="1">
        <label class="md-nav__title" for="__nav_5">
          <span class="md-nav__icon md-icon"></span>
          Documentation
        </label>
        <ul class="md-nav__list" data-md-scrollfix>
          
            
  
  
  
    <li class="md-nav__item">
      <a href="../" class="md-nav__link">
        Overview
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../emc/" class="md-nav__link">
        Model Connectivity
      </a>
    </li>
  

          
            
  
  
  
    
    <li class="md-nav__item md-nav__item--nested">
      
      
        <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_5_3" type="checkbox" id="__nav_5_3" >
      
      <label class="md-nav__link" for="__nav_5_3">
        Languages
        <span class="md-nav__icon md-icon"></span>
      </label>
      <nav class="md-nav" aria-label="Languages" data-md-level="2">
        <label class="md-nav__title" for="__nav_5_3">
          <span class="md-nav__icon md-icon"></span>
          Languages
        </label>
        <ul class="md-nav__list" data-md-scrollfix>
          
            
  
  
  
    <li class="md-nav__item">
      <a href="../eol/" class="md-nav__link">
        Object Language (EOL)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../egl/" class="md-nav__link">
        Code Generation (EGL)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../evl/" class="md-nav__link">
        Model Validation (EVL)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../etl/" class="md-nav__link">
        Model Transformation (ETL)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../ecl/" class="md-nav__link">
        Model Comparison (ECL)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../eml/" class="md-nav__link">
        Model Merging (EML)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../epl/" class="md-nav__link">
        Pattern Matching (EPL)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../flock/" class="md-nav__link">
        Model Migration (Flock)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../emg/" class="md-nav__link">
        Model Generation (EMG)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../eunit/" class="md-nav__link">
        Unit Testing (EUnit)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../pinset/" class="md-nav__link">
        Dataset Extraction (Pinset)
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../ewl/" class="md-nav__link">
        Wizard Language (EWL)
      </a>
    </li>
  

          
        </ul>
      </nav>
    </li>
  

          
            
  
  
    
  
  
    
    <li class="md-nav__item md-nav__item--active md-nav__item--nested">
      
      
        <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_5_4" type="checkbox" id="__nav_5_4" checked>
      
      <label class="md-nav__link" for="__nav_5_4">
        Tools
        <span class="md-nav__icon md-icon"></span>
      </label>
      <nav class="md-nav" aria-label="Tools" data-md-level="2">
        <label class="md-nav__title" for="__nav_5_4">
          <span class="md-nav__icon md-icon"></span>
          Tools
        </label>
        <ul class="md-nav__list" data-md-scrollfix>
          
            
  
  
  
    <li class="md-nav__item">
      <a href="../picto/" class="md-nav__link">
        Picto
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../flexmi/" class="md-nav__link">
        Flexmi
      </a>
    </li>
  

          
            
  
  
    
  
  
    <li class="md-nav__item md-nav__item--active">
      
      <input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
      
      
        
      
      
        <label class="md-nav__link md-nav__link--active" for="__toc">
          Eugenia
          <span class="md-nav__icon md-icon"></span>
        </label>
      
      <a href="./" class="md-nav__link md-nav__link--active">
        Eugenia
      </a>
      
        
<nav class="md-nav md-nav--secondary">
  
  
    
  
  
    <label class="md-nav__title" for="__toc">Table of contents</label>
    <ul class="md-nav__list" data-md-scrollfix>
      
        <li class="md-nav__item">
  <a href="#the-filesystem-metamodel" class="md-nav__link">
    The Filesystem metamodel
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#the-generated-editor" class="md-nav__link">
    The generated editor
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#supported-annotations" class="md-nav__link">
    Supported Annotations
  </a>
  
    <nav class="md-nav" aria-label="Supported Annotations">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#gmf" class="md-nav__link">
    gmf
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmfdiagram" class="md-nav__link">
    gmf.diagram
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmfnode" class="md-nav__link">
    gmf.node
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmflink" class="md-nav__link">
    gmf.link
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmflink-for-eclass" class="md-nav__link">
    gmf.link (for EClass)
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmflink-for-non-containment-ereference" class="md-nav__link">
    gmf.link (for non-containment EReference)
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmfcompartment-for-containment-ereference" class="md-nav__link">
    gmf.compartment (for containment EReference)
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmfaffixed-for-containment-ereference" class="md-nav__link">
    gmf.affixed (for containment EReference)
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmflabel-for-eattribute" class="md-nav__link">
    gmf.label (for EAttribute)
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
        <li class="md-nav__item">
  <a href="#running-eugenia" class="md-nav__link">
    Running Eugenia
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#re-running-eugenia" class="md-nav__link">
    Re-running Eugenia
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#troubleshooting" class="md-nav__link">
    Troubleshooting
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#recipes" class="md-nav__link">
    Recipes
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#customizing-your-editor" class="md-nav__link">
    Customizing your editor
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#adding-copyright" class="md-nav__link">
    Adding Copyright
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#next-steps" class="md-nav__link">
    Next Steps
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#eugenia-and-gmf-tooling" class="md-nav__link">
    Eugenia and GMF Tooling
  </a>
  
</li>
      
      
      
      
      
    </ul>
  
  
</nav>
      
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../exeed/" class="md-nav__link">
        Exeed
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../modelink/" class="md-nav__link">
        Modelink
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../hutn/" class="md-nav__link">
        HUTN
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../workflow/" class="md-nav__link">
        Workflow (Ant tasks)
      </a>
    </li>
  

          
        </ul>
      </nav>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../articles/" class="md-nav__link">
        Articles
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../../examples/" class="md-nav__link">
        Examples
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://www.youtube.com/epsilondevs" class="md-nav__link">
        Screencasts
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://www.youtube.com/playlist?list=PLRwHao6Ue0YUecg7vEUQTrtySIWwrd_mI" class="md-nav__link">
        Lectures
      </a>
    </li>
  

          
            
  
  
  
    
    <li class="md-nav__item md-nav__item--nested">
      
      
        <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_5_9" type="checkbox" id="__nav_5_9" >
      
      <label class="md-nav__link" for="__nav_5_9">
        Javadoc
        <span class="md-nav__icon md-icon"></span>
      </label>
      <nav class="md-nav" aria-label="Javadoc" data-md-level="2">
        <label class="md-nav__title" for="__nav_5_9">
          <span class="md-nav__icon md-icon"></span>
          Javadoc
        </label>
        <ul class="md-nav__list" data-md-scrollfix>
          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://download.eclipse.org/epsilon/stable-javadoc/" class="md-nav__link">
        Stable
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://download.eclipse.org/epsilon/interim-javadoc/" class="md-nav__link">
        Interim
      </a>
    </li>
  

          
        </ul>
      </nav>
    </li>
  

          
        </ul>
      </nav>
    </li>
  

    
      
      
      

  
  
  
    
    <li class="md-nav__item md-nav__item--nested">
      
      
        <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_6" type="checkbox" id="__nav_6" >
      
      <label class="md-nav__link" for="__nav_6">
        Issues
        <span class="md-nav__icon md-icon"></span>
      </label>
      <nav class="md-nav" aria-label="Issues" data-md-level="1">
        <label class="md-nav__title" for="__nav_6">
          <span class="md-nav__icon md-icon"></span>
          Issues
        </label>
        <ul class="md-nav__list" data-md-scrollfix>
          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=epsilon" class="md-nav__link">
        Report a new issue
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://bugs.eclipse.org/bugs/buglist.cgi?product=epsilon&cmdtype=doit&order=Reuse+same+sort+as+last+time&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=blocker&bug_severity=critical&bug_severity=major&bug_severity=normal&bug_severity=minor&bug_severity=trivial" class="md-nav__link">
        View open bugs
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://bugs.eclipse.org/bugs/buglist.cgi?product=epsilon&cmdtype=doit&order=Reuse+same+sort+as+last+time&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=enhancement" class="md-nav__link">
        View enhancement requests
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://bugs.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&list_id=17694438&product=epsilon&query_format=advanced" class="md-nav__link">
        View issues resolved since the last stable release
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://bugs.eclipse.org/bugs/buglist.cgi?product=epsilon&cmdtype=doit&order=Reuse+same+sort+as+last+time" class="md-nav__link">
        View all issues
      </a>
    </li>
  

          
        </ul>
      </nav>
    </li>
  

    
      
      
      

  
  
  
    
    <li class="md-nav__item md-nav__item--nested">
      
      
        <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7" type="checkbox" id="__nav_7" >
      
      <label class="md-nav__link" for="__nav_7">
        Community
        <span class="md-nav__icon md-icon"></span>
      </label>
      <nav class="md-nav" aria-label="Community" data-md-level="1">
        <label class="md-nav__title" for="__nav_7">
          <span class="md-nav__icon md-icon"></span>
          Community
        </label>
        <ul class="md-nav__list" data-md-scrollfix>
          
            
  
  
  
    
    <li class="md-nav__item md-nav__item--nested">
      
      
        <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7_1" type="checkbox" id="__nav_7_1" >
      
      <label class="md-nav__link" for="__nav_7_1">
        Who is using Epsilon?
        <span class="md-nav__icon md-icon"></span>
      </label>
      <nav class="md-nav" aria-label="Who is using Epsilon?" data-md-level="2">
        <label class="md-nav__title" for="__nav_7_1">
          <span class="md-nav__icon md-icon"></span>
          Who is using Epsilon?
        </label>
        <ul class="md-nav__list" data-md-scrollfix>
          
            
  
  
  
    <li class="md-nav__item">
      <a href="../../users/" class="md-nav__link">
        Industry
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../../users/education/" class="md-nav__link">
        Education
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../../users/open-source/" class="md-nav__link">
        Open-source Projects
      </a>
    </li>
  

          
        </ul>
      </nav>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://projects.eclipse.org/projects/modeling.epsilon/who" class="md-nav__link">
        Who is developing Epsilon?
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://www.eclipse.org/forums/index.php/f/22/" class="md-nav__link">
        Forum
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../../professional-services" class="md-nav__link">
        Professional Services
      </a>
    </li>
  

          
            
  
  
  
    
    <li class="md-nav__item md-nav__item--nested">
      
      
        <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7_5" type="checkbox" id="__nav_7_5" >
      
      <label class="md-nav__link" for="__nav_7_5">
        Social Media
        <span class="md-nav__icon md-icon"></span>
      </label>
      <nav class="md-nav" aria-label="Social Media" data-md-level="2">
        <label class="md-nav__title" for="__nav_7_5">
          <span class="md-nav__icon md-icon"></span>
          Social Media
        </label>
        <ul class="md-nav__list" data-md-scrollfix>
          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://twitter.com/eclipseepsilon" class="md-nav__link">
        Twitter
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="https://youtube.com/epsilondevs" class="md-nav__link">
        YouTube
      </a>
    </li>
  

          
        </ul>
      </nav>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../../labs/" class="md-nav__link">
        Epsilon Labs
      </a>
    </li>
  

          
            
  
  
  
    <li class="md-nav__item">
      <a href="../../faq/" class="md-nav__link">
        Frequently Asked Questions
      </a>
    </li>
  

          
        </ul>
      </nav>
    </li>
  

    
      
      
      

  
  
  
    <li class="md-nav__item">
      <a href="../../branding/" class="md-nav__link">
        Branding
      </a>
    </li>
  

    
  </ul>
</nav>
                  </div>
                </div>
              </div>
            
            
              
              <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    
<nav class="md-nav md-nav--secondary">
  
  
    
  
  
    <label class="md-nav__title" for="__toc">Table of contents</label>
    <ul class="md-nav__list" data-md-scrollfix>
      
        <li class="md-nav__item">
  <a href="#the-filesystem-metamodel" class="md-nav__link">
    The Filesystem metamodel
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#the-generated-editor" class="md-nav__link">
    The generated editor
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#supported-annotations" class="md-nav__link">
    Supported Annotations
  </a>
  
    <nav class="md-nav" aria-label="Supported Annotations">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#gmf" class="md-nav__link">
    gmf
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmfdiagram" class="md-nav__link">
    gmf.diagram
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmfnode" class="md-nav__link">
    gmf.node
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmflink" class="md-nav__link">
    gmf.link
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmflink-for-eclass" class="md-nav__link">
    gmf.link (for EClass)
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmflink-for-non-containment-ereference" class="md-nav__link">
    gmf.link (for non-containment EReference)
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmfcompartment-for-containment-ereference" class="md-nav__link">
    gmf.compartment (for containment EReference)
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmfaffixed-for-containment-ereference" class="md-nav__link">
    gmf.affixed (for containment EReference)
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#gmflabel-for-eattribute" class="md-nav__link">
    gmf.label (for EAttribute)
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
        <li class="md-nav__item">
  <a href="#running-eugenia" class="md-nav__link">
    Running Eugenia
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#re-running-eugenia" class="md-nav__link">
    Re-running Eugenia
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#troubleshooting" class="md-nav__link">
    Troubleshooting
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#recipes" class="md-nav__link">
    Recipes
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#customizing-your-editor" class="md-nav__link">
    Customizing your editor
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#adding-copyright" class="md-nav__link">
    Adding Copyright
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#next-steps" class="md-nav__link">
    Next Steps
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#eugenia-and-gmf-tooling" class="md-nav__link">
    Eugenia and GMF Tooling
  </a>
  
</li>
      
      
      
      
      
    </ul>
  
  
</nav>
                  </div>
                </div>
              </div>
            
          
          <div class="md-content" data-md-component="content">
            <article class="md-content__inner md-typeset">
              
                
                
                <h1 id="graphical-model-editor-development-with-eugeniagmf">Graphical Model Editor development with Eugenia/GMF<a class="headerlink" href="#graphical-model-editor-development-with-eugeniagmf" title="Permanent link">&para;</a></h1>
<p>Eugenia is a tool that simplifies the development of GMF-based graphical model editors by automatically generating the <code>.gmfgraph</code>, <code>.gmftool</code> and <code>.gmfmap</code> models needed by GMF editor from a single annotated Ecore metamodel. For example, from the following annotated EMF metamodel (expressed using Emfatic; an Ecore version is available <a href="https://git.eclipse.org/c/epsilon/org.eclipse.epsilon.git/tree/examples/org.eclipse.epsilon.eugenia.examples.filesystem/model/filesystem.ecore">here</a>) it can generate a fully functional GMF editor, a screenshot of which is displayed below.</p>
<h2 id="the-filesystem-metamodel">The Filesystem metamodel<a class="headerlink" href="#the-filesystem-metamodel" title="Permanent link">&para;</a></h2>
<pre class="prettyprint lang-emf"><code>@namespace(uri="filesystem", prefix="filesystem")
@gmf
package filesystem;

@gmf.diagram
class Filesystem {
    val Drive[*] drives;
    val Sync[*] syncs;
}

class Drive extends Folder {

}

class Folder extends File {
    @gmf.compartment
    val File[*] contents;
}

class Shortcut extends File {
    @gmf.link(target.decoration="arrow", style="dash")
    ref File target;
}

@gmf.link(source="source", target="target", style="dot", width="2")
class Sync {
    ref File source;
    ref File target;
}

@gmf.node(label = "name")
class File {
    attr String name;
}</code></pre>
<h2 id="the-generated-editor">The generated editor<a class="headerlink" href="#the-generated-editor" title="Permanent link">&para;</a></h2>
<p><img alt="" src="Filesystemscreenshot2.png" /></p>
<h2 id="supported-annotations">Supported Annotations<a class="headerlink" href="#supported-annotations" title="Permanent link">&para;</a></h2>
<p>Eugenia supports the following annotations on Ecore elements.</p>
<h3 id="gmf">gmf<a class="headerlink" href="#gmf" title="Permanent link">&para;</a></h3>
<p>Applies to the top <code>EPackage</code> only and denotes that GMF-related annotations are expected in its elements. This doesn't affect the forthcoming model transformations, only the Ecore validation process.</p>
<h3 id="gmfdiagram">gmf.diagram<a class="headerlink" href="#gmfdiagram" title="Permanent link">&para;</a></h3>
<p>Denotes the root object of the metamodel. Only one (non-abstract) <code>EClass</code> must be annotated as <code>gmf.diagram</code>. Accepts the following details:</p>
<ul>
<li><code>diagram.extension</code> (optional) : the file extension for the diagram file</li>
<li><code>model.extension</code> (optional) : the file extension for the domain model. To make the generated tree-based editor work with the same extension, you need to add an <code>@emf.gen(fileExtensions="model-file-extension")</code> annotation <code>to the root package</code> of your metamodel.</li>
<li><code>onefile</code> (optional) : a value of <code>true</code> specifies that the domain model and the diagram should be stored in the same file</li>
<li><code>rcp</code> (optional) : a value of <code>true</code> specifies that the editor is intended to be part of a RCP product (printing is disabled)</li>
<li><code>units</code> (optional) : the units for the diagram (e.g. <code>Pixels</code>)</li>
</ul>
<h3 id="gmfnode">gmf.node<a class="headerlink" href="#gmfnode" title="Permanent link">&para;</a></h3>
<p>Applies to an <code>EClass</code> and denotes that it should appear on the diagram as a node. Accepts the following details:</p>
<ul>
<li><code>border.color</code> (optional) : an RGB color that will be set as the node's border color.</li>
<li><code>border.style</code> (optional) : the style of the node's border. Can be set to <code>solid</code> (default), <code>dash</code> or <code>dot</code>.</li>
<li><code>border.width</code> (optional) : an integer that specifies the width of the node's border.</li>
<li><code>color</code> (optional) : an RGB color that will be set as the node's background color (e.g. <code>255,0,0</code>).</li>
<li><code>figure</code> (optional) : the figure that will represent the node. Can be set to <code>rectangle</code>, <code>ellipse</code>, <code>rounded</code> (default), <code>svg</code> (see <code>svg.uri</code>), <code>polygon</code> (see <code>polygon.x</code> and <code>polygon.y</code>) or the fully qualified name of a Java class that implements Figure.</li>
<li><code>label</code>: the name(s) of the <code>EAttribute</code>(s) of the <code>EClass</code>, the value(s) of which will be displayed as the label of the node. If <code>label.placement</code> is set to <code>none</code>, this detail is not required.</li>
<li><code>label.color</code> (optional, since 1.5.0) : an RGB color that will be set as the node's foreground color. Labels will have a fixed font of this color.</li>
<li><code>label.icon</code> (optional) : if set to <code>true</code> (default) a small icon appears on the left of the label.</li>
<li><code>label.parser</code> (optional) : indicates the unqualified name of the class that will parse the text entered by the user into the label. By default, a <a href="http://download.oracle.com/javase/6/docs/api/java/text/MessageFormat.html">MessageFormat</a>-based parser is generated, but it can be manually customized after generation.</li>
<li><code>label.edit.pattern</code> (optional) : like <code>label.pattern</code>, but only for editing the label.</li>
<li><code>label.pattern</code> (optional) : if more than one attributes are specified in the label, the format detail is necessary to show how their values will be rendered in the label. The format follows the Java Message Format style (e.g. <code>{0} : {1}</code>). The same pattern is used for editing and viewing the label.</li>
<li><code>label.view.pattern</code> (optional) : like <code>label.pattern</code>, but only for viewing the label.</li>
<li><code>label.placement</code> (optional) : defines the placement of the label in relation to the node. Can be set to <code>internal</code>, <code>external</code> or <code>none</code> (no label will be shown). ''(The default distance of an external label in GMF is 20pt which is a bit too far away for my taste. <a href="../articles/eugenia-affixed-nodes">Read more</a> about fixing this without changing the generated code every time)''.</li>
<li><code>label.text</code> (optional) : defines the default text to be used when the <code>EAttribute</code>(s) in <code>label</code> are not set. By default, it is set to the name of the <code>EClass</code>.</li>
<li><code>label.readOnly</code> (optional) : a value of <code>true</code> denotes that the label cannot be changed in the generated diagram editor.</li>
<li><code>margin</code> (optional) : inset margin (5 units by default) for the node.</li>
<li><code>phantom</code> (optional) : defines if the node is phantom (<code>true</code>/<code>false</code>). Phantom nodes are particularly useful in order to visualize containment references using links instead of spatial containment (<a href="../articles/eugenia-phantom-nodes">read more...</a>).</li>
<li><code>polygon.x</code> (when <code>figure</code> is set to <code>polygon</code>) : list of space-separated integers with the X coordinates of the polygon used as figure.</li>
<li><code>polygon.y</code> (when <code>figure</code> is set to <code>polygon</code>) : list of space-separated integers with the Y coordinates of the polygon used as figure.</li>
<li><code>resizable</code> (optional) : a value of <code>false</code> disables all the resize handles for the node</li>
<li><code>size</code> (optional) : a GMF dimension that will be used as the node's preferred size (e.g. <code>10,5</code>). Width is specified before height.</li>
<li><code>svg.uri</code> (when <code>figure</code> is set to <code>svg</code>) : URI of the <code>.svg</code> file to be used as figure for the node. For instance, <code>platform:/plugin/my.plugin/my.svg</code> will access the <code>my.svg</code> file in the <code>my.plugin</code> plugin. Note: until Kepler, using SVG figures required the GMF Tooling Experimental SDK (available from <a href="http://download.eclipse.org/modeling/gmp/gmf-tooling/updates/releases/">this update site</a>). Remember to add the <code>.svg</code> file to the binary builds of your plugin.</li>
<li><code>tool.description</code> (optional) : the description of the creation tool.</li>
<li><code>tool.large.bundle</code> (optional) : the bundle of the large icon of the creation tool.</li>
<li><code>tool.large.path</code> (optional) : the path of the large icon of the creation tool.</li>
<li><code>tool.name</code> (optional) : the name of the creation tool.</li>
<li><code>tool.small.bundle</code> (optional) : the bundle of the small icon of the creation tool.</li>
<li><code>tool.small.path</code> (optional) : the path of the small icon of the creation tool.</li>
</ul>
<h3 id="gmflink">gmf.link<a class="headerlink" href="#gmflink" title="Permanent link">&para;</a></h3>
<p>Applies to <code>EClass</code>es that should appear on the diagram as links and to non-containment <code>EReference</code>s.</p>
<h3 id="gmflink-for-eclass">gmf.link (for EClass)<a class="headerlink" href="#gmflink-for-eclass" title="Permanent link">&para;</a></h3>
<p>It accepts the following details:</p>
<ul>
<li><code>color</code> (optional) : the RGB color of the link.</li>
<li><code>incoming</code> (optional) : Boolean value which specifies whether the generated editor should allow links to be created from target to source. Defaults to <code>false</code>.</li>
<li><code>label</code> (optional) : the names of the <code>EAttribute</code>s of the <code>EClass</code> the value of which will be displayed as the label of the link.</li>
<li><code>label.parser</code> (optional) : indicates the unqualified name of the class that will parse the text entered by the user into the label. By default, a <a href="http://download.oracle.com/javase/6/docs/api/java/text/MessageFormat.html">MessageFormat</a>-based parser is generated, but it can be manually customized after generation.</li>
</ul>
<!--* `label.text` (optional) : defines the default text to be used when the `EAttribute`(s) in `label` are not set. By default, it is set to the name of the `EClass`.-->
<ul>
<li><code>source</code> : the source non-containment <code>EReference</code> of the link.</li>
<li><code>source.constraint</code> (optional) : OCL assertion that should be checked by the graphical editor when creating a link. For instance, <code>self &lt;&gt; oppositeEnd</code> would forbid users for creating a link from a node to itself (a self-loop): <code>self</code> is the source of the link, and <code>oppositeEnd</code> is the target of the link.</li>
<li><code>source.decoration</code> (optional) : the decoration of the source end of the link. Can be set to <code>none</code>, <code>arrow</code>, <code>rhomb</code>, <code>filledrhomb</code>, <code>square</code>, <code>filledsquare</code>, <code>closedarrow</code>, <code>filledclosedarrow</code>, or the fully qualified name of a Java class that implements the <code>org.eclipse.draw2d.RotatableDecoration</code> interface</li>
<li><code>style</code> (optional) : the style of the link (see <code>border.style</code> above).</li>
<li><code>target</code> : the target non-containment <code>EReference</code> of the link.</li>
<li><code>target.constraint</code> (optional) : OCL assertion that should be checked by the graphical editor when creating a link. For instance, <code>self &lt;&gt; oppositeEnd</code> would forbid users for creating a link from a node to itself (a self-loop): <code>self</code> is the target of the link, and <code>oppositeEnd</code> is the source of the link.</li>
<li><code>target.decoration</code> (optional) : See <code>source.decoration</code>.</li>
<li><code>tool.description</code> (optional) : the description of the creation tool.</li>
<li><code>tool.large.bundle</code> (optional) : the bundle of the large icon of the creation tool.</li>
<li><code>tool.large.path</code> (optional) : the path of the large icon of the creation tool.</li>
<li><code>tool.name</code> (optional) : the name of the creation tool.</li>
<li><code>tool.small.bundle</code> (optional) : the bundle of the small icon of the creation tool.</li>
<li><code>tool.small.path</code> (optional) : the path of the small icon of the creation tool.</li>
<li><code>width</code> (optional) : the width of the link.</li>
</ul>
<p>For an example see the <code>Sync</code> class in the <code>filesystem</code> metamodel</p>
<h3 id="gmflink-for-non-containment-ereference">gmf.link (for non-containment EReference)<a class="headerlink" href="#gmflink-for-non-containment-ereference" title="Permanent link">&para;</a></h3>
<p>It accepts the following details:</p>
<ul>
<li><code>color</code> (optional) : the RGB color of the link</li>
<li><code>label</code> (optional) : The static text that will be displayed as the label of the link. If no label is specified, the name of the reference is displayed instead.</li>
<li><code>label.text</code> (optional) : equivalent to <code>label</code> in this case.</li>
<li><code>source.decoration</code> (optional) : The decoration of the source end of the link. Can be set to <code>none</code>, <code>arrow</code>, <code>rhomb</code>, <code>filledrhomb</code>, <code>square</code>, <code>filledsquare</code>, <code>closedarrow</code>, <code>filledclosedarrow</code>, or the fully qualified name of a Java class that implements an appropriate interface</li>
<li><code>style</code> (optional) : the style of the link (see <code>border.style</code> above)</li>
<li><code>target.decoration</code> (optional) : As above.</li>
<li><code>tool.description</code> (optional) : the description of the creation tool</li>
<li><code>tool.large.bundle</code> (optional) : The bundle of the large icon of the creation tool</li>
<li><code>tool.large.path</code> (optional) : The path of the large icon of the creation tool</li>
<li><code>tool.name</code> (optional) : the name of the creation tool</li>
<li><code>tool.small.bundle</code> (optional) : The bundle of the small icon of the creation tool</li>
<li><code>tool.small.path</code> (optional) : The path of the small icon of the creation tool</li>
<li><code>width</code> (optional) : the width of the link</li>
</ul>
<h3 id="gmfcompartment-for-containment-ereference">gmf.compartment (for containment EReference)<a class="headerlink" href="#gmfcompartment-for-containment-ereference" title="Permanent link">&para;</a></h3>
<p>Defines that the containment reference will create a compartment where model elements that conform to the type of the reference can be placed. It accepts the following details:</p>
<ul>
<li><code>collapsible</code> (optional) : Set to <code>false</code> to prevent the compartment from collapsing (default is <code>true</code>)</li>
<li><code>layout</code> (optional) : The layout of the compartment. Can be set to free (default) or list</li>
</ul>
<h3 id="gmfaffixed-for-containment-ereference">gmf.affixed (for containment EReference)<a class="headerlink" href="#gmfaffixed-for-containment-ereference" title="Permanent link">&para;</a></h3>
<p>Defines that the containment reference will create nodes which are affixed to the edges of the containing node. <a href="../articles/eugenia-affixed-nodes">See an example</a>.</p>
<h3 id="gmflabel-for-eattribute">gmf.label (for EAttribute)<a class="headerlink" href="#gmflabel-for-eattribute" title="Permanent link">&para;</a></h3>
<p>Defines additional labels for the containing <code>EClass</code>. These labels will be displayed underneath the default label for the containing <code>EClass</code>. It accepts the following details:</p>
<ul>
<li><code>label.edit.pattern</code> (optional) : like <code>label.pattern</code>, but only for editing the label.</li>
<li><code>label.parser</code> (optional) : indicates the unqualified name of the class that will parse the text entered by the user into the label. By default, a <a href="http://download.oracle.com/javase/6/docs/api/java/text/MessageFormat.html">MessageFormat</a>-based parser is generated, but it can be manually customized after generation.</li>
<li><code>label.pattern</code> (optional) : if more than one attributes are specified in the label, the format detail is necessary to show how their values will be rendered in the label. The format follows the Java Message Format style (e.g. <code>{0} : {1}</code>). The same pattern is used for editing and viewing the label.</li>
<li><code>label.readOnly</code> (optional) : A value of <code>true</code> denotes that the label cannot be changed in the generated diagram editor.</li>
<li><code>label.text</code> (optional) : defines the default text to be used when the attribute is not set.</li>
<li><code>label.view.pattern</code> (optional) : like <code>label.pattern</code>, but only for viewing the label.</li>
</ul>
<p>==Installing Eugenia ''(New Instructions!)''==
Eugenia is a part of the main Epsilon distribution. The update site of Epsilon is <code>http://download.eclipse.org/epsilon/updates</code>, and detailed instructions for installing it are available <a href="http://www.eclipse.org/gmt/epsilon/download">here</a>.</p>
<p>Although not necessary, you should also install the Emfatic toolkit mentioned above through the following update site: <code>http://download.eclipse.org/emfatic/update/</code></p>
<h2 id="running-eugenia">Running Eugenia<a class="headerlink" href="#running-eugenia" title="Permanent link">&para;</a></h2>
<p>To run Eugenia you need to do the following:</p>
<ul>
<li>Create a new general project</li>
<li>Create and annotate your Emfatic (or Ecore) metamodel in the root of your project</li>
<li>Right-click your Emfatic (or Ecore) metamodel and select Eugenia-&gt;Generate GMF editor</li>
<li>Launch a new Eclipse instance from the <code>Run</code> &rarr; <code>Eclipse Application</code> right-click menu of the project that contains your metamodel</li>
<li>In the new Eclipse instance create a new General Project and in it create a new Filesystem diagram through the <code>File</code> &rarr; <code>New</code> &rarr; <code>Other...</code> dialog</li>
</ul>
<h2 id="re-running-eugenia">Re-running Eugenia<a class="headerlink" href="#re-running-eugenia" title="Permanent link">&para;</a></h2>
<p>If you now change your metamodel you'll have to rerun Eugenia to generate your updated editor:</p>
<ul>
<li>Right-click your Ecore metamodel (or Emfatic file) and select <code>Eugenia</code> &rarr; <code>Generate GMF editor</code></li>
<li>Run a new instance of Eclipse</li>
</ul>
<p>(Please note that any changes you have made manually to the editor's <code>.gmfgraph</code>, <code>.gmftool</code> and <code>.gmfmap</code> models will be <strong>overwritten</strong>. Have a look <a href="../articles/eugenia-polishing">here</a> for an alternative way to customize these models)</p>
<h2 id="troubleshooting">Troubleshooting<a class="headerlink" href="#troubleshooting" title="Permanent link">&para;</a></h2>
<ul>
<li>Certain versions of Emfatic do not support annotations without details (e.g. <code>@gmf</code> or <code>@gmf.diagram</code>). You can use dummy details as a workaround (e.g. <code>@gmf(foo="bar")</code>)</li>
<li>Should you run across the "Node is referenced from multiple containers with different 'List Layout' values" message during validation please ignore it and proceed with the editor code generation.</li>
<li>Eugenia does not work with Ecore metamodels that span across multiple files/sub-packages</li>
<li>Ensure that the name of your package is different to the names of the classes it contains (i.e. a package Foo should not contain a Foo class)</li>
</ul>
<h2 id="recipes">Recipes<a class="headerlink" href="#recipes" title="Permanent link">&para;</a></h2>
<ul>
<li><a href="../articles/eugenia-nodes-with-images">Nodes with user defined images</a> (e.g. jpg, png, gif)</li>
<li><a href="../articles/eugenia-nodes-with-runtime-images">Nodes with user defined images at runtime</a></li>
</ul>
<h2 id="customizing-your-editor">Customizing your editor<a class="headerlink" href="#customizing-your-editor" title="Permanent link">&para;</a></h2>
<p><a href="../articles/eugenia-polishing">Click here</a> to find out how you can further customize the generated <code>.gmfgraph</code>, <code>.gmfmap</code> and <code>.gmftool</code> models in ways that are not supported by the annotations provided by Eugenia, and still preserve the customizations when Eugenia is re-invoked.</p>
<h2 id="adding-copyright">Adding Copyright<a class="headerlink" href="#adding-copyright" title="Permanent link">&para;</a></h2>
<p>To add copyright information to your generated .gmfgen model, simply create a file named copyright.txt next to it. Next time you invoke <code>Eugenia</code> &rarr; <code>Synchronize GMF gen model</code>, Eugenia will pick it up and place its contents in the root GenDiagramEditor of your .gmfgen model. If you have added the copyright.txt file, you can also inject its contents to your .genmodel model (EMF generator model) by right-clicking it and invoking <code>Eugenia</code> &rarr; <code>Synchronize EMF gen model</code>.</p>
<h2 id="next-steps">Next Steps<a class="headerlink" href="#next-steps" title="Permanent link">&para;</a></h2>
<p>Now that you've learned how to generate a GMF-based editor using Eugenia, you may also want to add some constraints to your editor, which you can then evaluate (explicitly or on-save) to <a href="../articles/evl-gmf-integration">check the correctness/consistency of your models</a>:</p>
<p><img alt="" src="Filesystemwitherrorshighlighted.png" /></p>
<h2 id="eugenia-and-gmf-tooling">Eugenia and GMF Tooling<a class="headerlink" href="#eugenia-and-gmf-tooling" title="Permanent link">&para;</a></h2>
<p>Eugenia builds on top of the <a href="https://www.eclipse.org/gmf-tooling/">GMF Tooling</a> framework, which is no longer actively maintained. While you can still use Eugenia/GMF to develop fully-functional editors, you may want to consider more actively-maintained tools such as <a href="https://eclipse.org/sirius">Eclipse Sirius</a> if you need to develop a graphical editor, or <a href="../picto">Picto</a> if you are only interested in producing read-only views from models.</p>
                
              
              
                


              
            </article>
          </div>
        </div>
        
      </main>
      
        
<footer class="md-footer">
  
    <div class="md-footer-nav">
      <nav class="md-footer-nav__inner md-grid">
        
          <a href="../flexmi/" title="Flexmi" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
            <div class="md-flex__cell md-flex__cell--shrink">
              <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
            </div>
            <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
              <span class="md-flex__ellipsis">
                <span class="md-footer-nav__direction">
                  Previous
                </span>
                Flexmi
              </span>
            </div>
          </a>
        
        
          <a href="../exeed/" title="Exeed" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
            <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
              <span class="md-flex__ellipsis">
                <span class="md-footer-nav__direction">
                  Next
                </span>
                Exeed
              </span>
            </div>
            <div class="md-flex__cell md-flex__cell--shrink">
              <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
            </div>
          </a>
        
      </nav>
    </div>
  
  <div class="md-footer-meta md-typeset">
    <div class="md-footer-meta__inner md-grid">
      <div class="md-footer-copyright">
        
          <div class="md-footer-copyright__highlight">
            Copyright © Eclipse Foundation, Inc. All Rights Reserved.
          </div>
        
        powered by
        <a href="https://www.mkdocs.org">MkDocs</a>
        and
        <a href="https://squidfunk.github.io/mkdocs-material/">Material for MkDocs</a>
      </div>
      <div class="md-footer-copyright epsilon-eclipse-links">
          <ul>
              <li><a href="https://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li>
              <li><a href="https://www.eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
              <li><a href="https://www.eclipse.org/legal/copyright.php">Copyright Agent</a></li>
          </ul>
      </div>
      
  <div class="md-footer-social">
    
      
      
        
        
      
      <a href="https://twitter.com/eclipseepsilon" target="_blank" rel="noopener" title="twitter.com" class="md-footer-social__link">
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg>
      </a>
    
      
      
        
        
      
      <a href="https://youtube.com/epsilondevs" target="_blank" rel="noopener" title="youtube.com" class="md-footer-social__link">
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></svg>
      </a>
    
  </div>

    </div>
  </div>
</footer>
      
    </div>
    <div class="md-dialog" data-md-component="dialog">
      <div class="md-dialog__inner md-typeset"></div>
    </div>
    <script id="__config" type="application/json">{"base": "../..", "features": [], "translations": {"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.term.missing": "Missing"}, "search": "../../assets/javascripts/workers/search.d351de03.min.js", "version": null}</script>
    
    
      <script src="../../assets/javascripts/bundle.a1609d9a.min.js"></script>
      
        <script src="https://unpkg.com/mermaid@8.5.1/dist/mermaid.min.js"></script>
      
        <script src="../../assets/javascript/mermaid.js"></script>
      
        <script src="../../assets/javascript/jquery.js"></script>
      
        <script src="../../assets/javascript/slick.min.js"></script>
      
        <script src="../../assets/javascript/google-code-prettify/prettify.js"></script>
      
        <script src="../../assets/javascript/google-code-prettify/lang-emfatic.js"></script>
      
        <script src="../../assets/javascript/google-code-prettify/lang-epsilon.js"></script>
      
        <script src="../../assets/javascript/google-code-prettify/prettyprint.js"></script>
      
        <script src="../../assets/javascript/extra.js"></script>
      
        <script src="https://w.appzi.io/w.js?token=jlv6W"></script>
      
    
  </body>
</html>