<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012, 2013 Eclipse Foundation and others.
  All rights reserved. This program and the accompanying materials
  are made available under the terms of the Eclipse Distribution License v1.0
  which accompanies this distribution, and is available at
  http://www.eclipse.org/org/documents/edl-v10.php
 
  Contributors:
     Igor Fedorenko - initial implementation
-->

<project
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
  xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.eclipse</groupId>
    <artifactId>eclipse-platform-parent</artifactId>
    <version>1.0.0-SNAPSHOT</version>
    <relativePath>../eclipse-platform-parent</relativePath>
  </parent>

  <groupId>eclipse.platform.ui</groupId>
  <artifactId>eclipse.platform.ui</artifactId>
  <version>3.8.0-SNAPSHOT</version>
  <packaging>pom</packaging>

   <properties>
     <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/platform/eclipse.platform.ui.git</tycho.scmUrl>
   </properties>
 
  <modules>
    <!--
    requires org.eclipse.ui.presentations.PresentationUtil which is not available from anywhere
    it used to come from  org.eclipse.ui.workbench in 3.8, but it's not in 3.103 any more.
    <module>bundles/org.eclipse.ui.presentations.r21</module>
     -->

    <module>examples/org.eclipse.jface.examples.databinding</module>
    <module>examples/org.eclipse.ui.examples.contributions</module>
    <module>examples/org.eclipse.ui.examples.fieldassist</module>
    <module>examples/org.eclipse.ui.examples.multipageeditor</module>
    <module>examples/org.eclipse.ui.examples.propertysheet</module>
    <module>examples/org.eclipse.ui.examples.readmetool</module>
    <module>examples/org.eclipse.ui.examples.undo</module>
    <module>examples/org.eclipse.ui.examples.views.properties.tabbed.article</module>
    <!-- 
    <module>examples/org.eclipse.e4.demo.contacts</module>
    <module>examples/org.eclipse.e4.demo.e4photo</module>
    <module>examples/org.eclipse.e4.examples.services</module>
    <module>examples/org.eclipse.e4.ui.examples.css</module>
    <module>examples/org.eclipse.e4.ui.examples.css.rcp</module>
    <module>examples/org.eclipse.jface.snippets</module>
    <module>examples/org.eclipse.ui.examples.job</module>
    <module>examples/org.eclipse.ui.examples.navigator</module>
    <module>examples/org.eclipse.ui.examples.rcp.browser</module>
    <module>examples/org.eclipse.ui.examples.views.properties.tabbed.hockeyleague</module>
    <module>examples/org.eclipse.ui.examples.views.properties.tabbed.logic</module>
    <module>examples/org.eclipse.ui.forms.examples</module>
    <module>tests/org.eclipse.e4.core.commands.tests</module>
    <module>tests/org.eclipse.e4.emf.xpath.test</module>
    <module>tests/org.eclipse.e4.ui.bindings.tests</module>
    <module>tests/org.eclipse.e4.ui.compat.tests.tweaklet</module>
    <module>tests/org.eclipse.e4.ui.compatibility.tests</module>
    <module>tests/org.eclipse.e4.ui.keybinding.tests</module>
    <module>tests/org.eclipse.e4.ui.menu.tests</module>
    <module>tests/org.eclipse.e4.ui.menu.tests.debug</module>
    <module>tests/org.eclipse.e4.ui.menu.tests.p1</module>
    <module>tests/org.eclipse.e4.ui.menu.tests.p2</module>
    <module>tests/org.eclipse.e4.ui.menu.tests.p3</module>
    <module>tests/org.eclipse.e4.ui.menu.tests.p4</module>
    <module>tests/org.eclipse.e4.ui.tests</module>
    <module>tests/org.eclipse.e4.ui.tests.css.core</module>
    <module>tests/org.eclipse.e4.ui.tests.css.swt</module>
    <module>tests/org.eclipse.ui.tests.browser</module>
     -->
    <module>tests/org.eclipse.jface.tests.databinding</module>
    <module>tests/org.eclipse.jface.tests.databinding.conformance</module>
    <module>tests/org.eclipse.ui.tests</module>
    <module>tests/org.eclipse.ui.tests.forms</module>
    <module>tests/org.eclipse.ui.tests.harness</module>
    <module>tests/org.eclipse.ui.tests.navigator</module>
    <module>tests/org.eclipse.ui.tests.performance</module>
    <module>tests/org.eclipse.ui.tests.rcp</module>
    <module>tests/org.eclipse.ui.tests.views.properties.tabbed</module>

    <module>bundles/org.eclipse.core.commands</module>
    <module>bundles/org.eclipse.core.databinding</module>
    <module>bundles/org.eclipse.core.databinding.beans</module>
    <module>bundles/org.eclipse.core.databinding.observable</module>
    <module>bundles/org.eclipse.core.databinding.property</module>
    <module>bundles/org.eclipse.e4.core.commands</module>
    <module>bundles/org.eclipse.e4.core.contexts.debug</module>
    <module>bundles/org.eclipse.e4.emf.xpath</module>
    <module>bundles/org.eclipse.e4.ui.bindings</module>
    <module>bundles/org.eclipse.e4.ui.css.core</module>
    <module>bundles/org.eclipse.e4.ui.css.swt</module>
    <module>bundles/org.eclipse.e4.ui.css.swt.theme</module>
    <module>bundles/org.eclipse.e4.ui.di</module>
    <module>bundles/org.eclipse.e4.ui.model.workbench</module>
    <module>bundles/org.eclipse.e4.ui.services</module>
    <module>bundles/org.eclipse.e4.ui.widgets</module>
    <module>bundles/org.eclipse.e4.ui.workbench</module>
    <module>bundles/org.eclipse.e4.ui.workbench.addons.swt</module>
    <module>bundles/org.eclipse.e4.ui.workbench.renderers.swt</module>
    <module>bundles/org.eclipse.e4.ui.workbench.renderers.swt.cocoa</module>
    <module>bundles/org.eclipse.e4.ui.workbench.swt</module>
    <module>bundles/org.eclipse.e4.ui.workbench3</module>
    <module>bundles/org.eclipse.jface</module>
    <module>bundles/org.eclipse.jface.databinding</module>
    <module>bundles/org.eclipse.ui</module>
    <module>bundles/org.eclipse.ui.browser</module>
    <module>bundles/org.eclipse.ui.forms</module>
    <module>bundles/org.eclipse.ui.views</module>
    <module>bundles/org.eclipse.ui.views.properties.tabbed</module>
    <module>bundles/org.eclipse.ui.workbench</module>
    <module>bundles/org.eclipse.ui.navigator</module>
    <module>examples/org.eclipse.ui.tutorials.rcp.part1</module>
    <module>examples/org.eclipse.ui.tutorials.rcp.part2</module>
    <module>examples/org.eclipse.ui.tutorials.rcp.part3</module>
    <module>features/org.eclipse.e4.rcp</module>
    <module>bundles/org.eclipse.ui.ide</module>
    <module>bundles/org.eclipse.ui.ide.application</module>
    <module>bundles/org.eclipse.ui.win32</module>
    <module>bundles/org.eclipse.ui.navigator.resources</module>
    <module>bundles/org.eclipse.ui.workbench.compatibility</module>

  </modules>

</project>
