<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012 Eclipse Foundation.
  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-parent</artifactId>
    <version>1.0.0-SNAPSHOT</version>
  </parent>

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

  <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.model.workbench.edit</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>bundles/org.eclipse.ui.tutorials.rcp.part1</module>
    <module>bundles/org.eclipse.ui.tutorials.rcp.part2</module>
    <module>bundles/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>
