<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<product name="Lua Development Tools Product Remote" uid="org.eclipse.ldt.remote-product" id="org.eclipse.ldt.branding.product" application="org.eclipse.ui.ide.workbench" version="0.9.0.qualifier" useFeatures="true" includeLaunchers="true">

   <aboutInfo>
      <image path="/org.eclipse.ldt.branding/ldt_about.png"/>
      <text>
         Lua Development Tools

© Copyright Eclipse contributors and others 2000, 2012.  All rights reserved.

This product includes software developed by the Apache Software Foundation http://www.apache.org/

Visit http://www.eclipse.org/ldt for more information.
      </text>
   </aboutInfo>

   <configIni use="default">
   </configIni>

   <launcherArgs>
      <programArgs>-name
&quot;Lua Development Tools&quot;
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile</programArgs>
      <programArgsLin>-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar</programArgsLin>
      <programArgsMac>-startup
../../../plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar</programArgsMac>
      <programArgsWin>-startup
plugins\org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar</programArgsWin>
      <vmArgs>-XX:PermSize=512M -XX:MaxPermSize=512M -Xms40m -Xmx512m</vmArgs>
      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
   </launcherArgs>

   <windowImages i16="/org.eclipse.ldt.branding/icons/LDT_16.png" i32="/org.eclipse.ldt.branding/icons/LDT_32.png" i64="/org.eclipse.ldt.branding/icons/LDT_64.png" i128="/org.eclipse.ldt.branding/icons/LDT_128.png"/>

   <splash
      location="org.eclipse.ldt.branding"
      startupProgressRect="3,281,493,14"
      startupMessageRect="7,260,350,20"
      startupForegroundColor="D4BAA9" />
   <launcher name="LuaDevelopmentTools">
      <linux icon="../../../../plugins/org.eclipse.ldt.branding/icons/ldt.xpm"/>
      <macosx icon="../../../../plugins/org.eclipse.ldt.branding/icons/ldt.icns"/>
      <solaris/>
      <win useIco="true">
         <ico path="../../../../plugins/org.eclipse.ldt.branding/icons/ldt.ico"/>
         <bmp/>
      </win>
   </launcher>


   <vm>
   </vm>


   <plugins>
   </plugins>

   <features>
      <feature id="org.eclipse.ldt.product"/>
      <feature id="org.eclipse.ldt.remote"/>
      <feature id="org.eclipse.rse"/>
   </features>

   <configurations>
      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="4" />
      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
      <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
      <plugin id="org.eclipse.equinox.p2.reconciler.dropins" autoStart="true" startLevel="4" />
      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
      <plugin id="org.eclipse.update.configurator" autoStart="true" startLevel="4" />
      <property name="org.eclipse.update.reconcile" value="false" />
   </configurations>

</product>
