<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012 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-parent</artifactId>
    <version>1.0.0-SNAPSHOT</version>
    <relativePath>../eclipse-parent</relativePath>
  </parent>

  <groupId>eclipse.platform.swt</groupId>
  <artifactId>eclipse.platform.swt</artifactId>
  <version>3.8.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <modules>
    <module>bundles/org.eclipse.swt</module>
    <module>bundles/org.eclipse.swt.opengl</module>
    <module>bundles/org.eclipse.swt.tools</module>
    <module>examples/org.eclipse.swt.examples</module>
    <module>examples/org.eclipse.swt.examples.browser</module>
    <module>examples/org.eclipse.swt.examples.browser.demos</module>
    <module>examples/org.eclipse.swt.examples.controls</module>
    <module>examples/org.eclipse.swt.examples.launcher</module>
    <module>examples/org.eclipse.swt.examples.layouts</module>
    <module>examples/org.eclipse.swt.examples.ole.win32</module>
    <module>examples/org.eclipse.swt.examples.paint</module>
    <module>tests/org.eclipse.swt.tests</module>
  </modules>
</project>
