<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>Project Plan - dsdp.nab</title><meta name="author" content="Bjorn Freeman-Benson" />
<meta name="keywords" content="" /><link rel="stylesheet" type="text/css" href="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/css/small.css" title="small" /><link rel="alternate stylesheet" type="text/css" href="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/css/large.css" title="large" /><link rel="stylesheet" type="text/css" href="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/css/visual.css" media="screen" /><link rel="stylesheet" type="text/css" href="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/css/layout.css" media="screen" />
<!--[if IE]> 	<link rel="stylesheet" type="text/css" href="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/css/ie_style.css" media="screen"/> <![endif]-->
<!--[if IE 6]> 	<link rel="stylesheet" type="text/css" href="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/css/ie6_style.css" media="screen"/> <![endif]-->
<link rel="stylesheet" type="text/css" href="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/css/print.css" media="print" />
<link rel="stylesheet" type="text/css" href="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/css/header.css" media="screen" />
<script type="text/javascript" src="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/styleswitcher.js"></script>
</head>
<body>
<div id="header">
	<div id="header-graphic" class="eclipse-main">
		<a href="http://www.eclipse.org/"><img src="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/images/eclipse_home_header.jpg" alt="" /></a><h1>Eclipse</h1>	
	</div>
	<div id="header-global-holder" class="eclipse-main-global">
		<div id="header-global-links"><ul>
<li><a href="http://www.eclipse.org/org/foundation/contact.php" class="first_one">Contact</a></li><li><a href="http://www.eclipse.org/legal/">Legal</a></li>
			</ul>
		</div>
		<div id="header-icons">
<a href="http://www.youtube.com/user/EclipseFdn" target="_blank"><img src="/eclipse.org-common/themes/Phoenix/images/Icon_Live.png" width="28" height="28" alt="Eclipse YouTube Channel" title="Eclipse YouTube Channel" /></a>
<a href="http://www.eclipseplugincentral.com"><img src="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/images/Icon_plugin.png" width="28" height="28" alt="Eclipse Plugin Central" title="Eclipse Plugin Central" /></a>
<a href="http://www.planeteclipse.org"><img src="http://www.eclipse.org/eclipse.org-common/themes/Phoenix/images/Icon_planet.png" width="28" height="28" alt="Planet Eclipse" title="Planet Eclipse" /></a>
		</div>
	</div></div><div id="header-menu"><div id="header-nav">
		<ul>
		<li><a class="first_one" href="http://www.eclipse.org/" target="_self">Home</a></li> 
				<li><a  href="http://www.eclipse.org/users/" target="_self">Users</a></li> 
				<li><a  href="http://www.eclipse.org/membership/" target="_self">Members</a></li> 
				<li><a  href="http://www.eclipse.org/committers/" target="_self">Committers</a></li> 
				<li><a  href="http://www.eclipse.org/downloads/" target="_self">Downloads</a></li> 
				<li><a  href="http://www.eclipse.org/resources/" target="_self">Resources</a></li> 
				<li><a  href="http://www.eclipse.org/projects/" target="_self">Projects</a></li> 
				<li><a  href="http://www.eclipse.org/org/" target="_self">About Us</a></li> 
				</ul>
	</div>
	<div id="header-utils">
		<form action="http://www.google.com/cse" id="searchbox_017941334893793413703:sqfrdtd112s">
	 	<input type="hidden" name="cx" value="017941334893793413703:sqfrdtd112s" />
  		<input type="text" name="q" size="25" />
  		<input type="submit" name="sa" value="Search" />
		</form>
		<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_017941334893793413703%3Asqfrdtd112s&lang=en"></script>		<ul>
						<li class="text_size"><a class="smallText" title="Small Text" href="#" onclick="setActiveStyleSheet('small');return false;">A</a> <a class="largeText" title="Large Text" href="#" onclick="setActiveStyleSheet('large');return false;">A</a></li>
		</ul>
	</div></div><div id="leftcol">
<ul id="leftnav">
<li style="background-image: url(/eclipse.org-common/themes/Phoenix/images/leftnav_fade.jpg); background-repeat: repeat-x; border-style: none;"><br /><br /><br /><br /><br /><br /><br /><br />
</li>
</ul>

</div>
<div id="container"><style>
h2 {
	border-bottom: 2px solid gray;
}
h3 {
	border-bottom: 1px dotted gray;
}
</style>
<div xmlns="http://www.w3.org/1999/xhtml" id="rendered-plan">
  <div id="maincontent">
    <div id="midcolumn">
      <h1><span style="font-size: 140%">Project Plan For
                        <a href="http://www.eclipse.org/projects/project_summary.php?projectid=dsdp.nab">Native Application Builder</a></span>, version 1.0</h1>
      <div id="toc">
        <p>
          <a name="toc">
            <strong>Table of Contents</strong>
          </a>
        </p>
        <ul>
          <li>
            <a href="#introduction">Introduction</a>
          </li>
          <li>
            <a href="#release_deliverables">
                       Release Deliverables
                    </a>
          </li>
          <li>
            <a href="#release_milestones">
                       Release Milestones
                    </a>
          </li>
          <li>
            <a href="#target_environments">
                        Target Environments
                    </a>
          </li>
          <li>
            <a href="#compatibility">
                        Compatibility with Previous Releases
                    </a>
          </li>
          <li>
            <a href="#themes_and_priorities">
                        Themes and Priorities
                    </a>
          </li>
        </ul>
      </div>
      <h2>
        <a name="introduction">Introduction</a>
      </h2>
      <div>The Native Application Builder project creates framework to build a C++ and several languages GUI applications. The goal is to allow the user to write a GUI application once and build it for many platforms without changing the code.
	 Conceptually, this is similar to SWT and JFace, with the notable exception that the NAB tool is written in C++ and designed for use in C++ applications.
    </div>
      <h2>
        <a name="release_deliverables">Release Deliverables</a>
      </h2>
      <div>
The NAB project deliver libraries package for Windows and Linux platform
  </div>
      <p>
        <a href="#toc">Table of Contents</a>
      </p>
      <h2>
        <a name="release_milestones">Release Milestones</a>
      </h2>
      <table border="1" align="center">
        <tr>
          <td>
            <b>M3</b>
          </td>
          <td>11/14/2008</td>
          <td>
            <div>M3+3</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>M4</b>
          </td>
          <td>1/5/2009</td>
          <td>
            <div>M4+3</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>M5</b>
          </td>
          <td>2/10/2009</td>
          <td>
            <div>M5+3</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>M6</b>
          </td>
          <td>3/19/2009</td>
          <td>
            <div>M6+3</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>M7</b>
          </td>
          <td>5/6/2009</td>
          <td>
            <div>M7+3</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>RC1</b>
          </td>
          <td>5/20/2009</td>
          <td>
            <div>RC1</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>RC2</b>
          </td>
          <td>5/27/2009</td>
          <td>
            <div>RC2</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>RC3</b>
          </td>
          <td>6/3/2009</td>
          <td>
            <div>RC3</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>RC4</b>
          </td>
          <td>6/10/2009</td>
          <td>
            <div>RC4</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>RC5</b>
          </td>
          <td>6/17/2009</td>
          <td>
            <div>RC5</div>
          </td>
        </tr>
        <tr>
          <td>
            <b>Galileo</b>
          </td>
          <td>6/26/2008</td>
          <td>
            <div>Galileo release </div>
          </td>
        </tr>
      </table>
      <p>
        <a href="#toc">Table of Contents</a>
      </p>
      <h2>
        <a name="target_environments">Target Environments</a>
      </h2>
      <div>
    win32 and linux platforms.
    <p>
    NAB needs WideStudio runtime libraries (deliverd from widestudio.org)</p>
  </div>
      <h3>Internationalization</h3>
      <div>
    Japanese and English.
    </div>
      <p>
        <a href="#toc">Table of Contents</a>
      </p>
      <h2>
        <a name="compatibility">Compatibility with Previous Releases</a>
      </h2>
      <div>
    
  </div>
      <p>
        <a href="#toc">Table of Contents</a>
      </p>
      <h2>
        <a name="themes_and_priorities">Themes and Priorities</a>
      </h2>
      <h3>Building a community</h3>
      <div>NAB community is based on WideStudio community in Japan. It&#8217;s means almost communication are in outside of eclipse resources. We need Japanese friendly environment to pulling up the community (user and developer) to Eclipse side.</div>
      <ul>
        <li>
          <b>Committed</b>
          <ul>
            <li>
              <div>No items.</div>
            </li>
          </ul>
        </li>
      </ul>
      <ul>
        <li>
          <b>Proposed</b>
          <ul>
            <li>Please install the Japanese template for Bugzilla 3.2 [<a href="http://bugs.eclipse.org/242070">242070</a>] (target milestone: ---)</li>
          </ul>
        </li>
      </ul>
      <ul>
        <li>
          <b>Deferred</b>
          <ul>
            <li>
              <div>No items.</div>
            </li>
          </ul>
        </li>
      </ul>
      <h3>Setup dialog rearrangement</h3>
      <div>There is redundant item in it.</div>
      <ul>
        <li>
          <b>Committed</b>
          <ul>
            <li>
              <div>No items.</div>
            </li>
          </ul>
        </li>
      </ul>
      <ul>
        <li>
          <b>Proposed</b>
          <ul>
            <li>Setup dialog rearrangement [<a href="http://bugs.eclipse.org/246671">246671</a>] (target milestone: ---)</li>
          </ul>
        </li>
      </ul>
      <ul>
        <li>
          <b>Deferred</b>
          <ul>
            <li>
              <div>No items.</div>
            </li>
          </ul>
        </li>
      </ul>
      <h3>Redesign object selection box.</h3>
      <div>implement to object select function as tree.</div>
      <ul>
        <li>
          <b>Committed</b>
          <ul>
            <li>
              <div>No items.</div>
            </li>
          </ul>
        </li>
      </ul>
      <ul>
        <li>
          <b>Proposed</b>
          <ul>
            <li>Redesign object selection box. [<a href="http://bugs.eclipse.org/246673">246673</a>] (target milestone: ---)</li>
          </ul>
        </li>
      </ul>
      <ul>
        <li>
          <b>Deferred</b>
          <ul>
            <li>
              <div>No items.</div>
            </li>
          </ul>
        </li>
      </ul>
      <h3>Setup dialog for reusable class libraries.</h3>
      <div>user definable class libraries support</div>
      <ul>
        <li>
          <b>Committed</b>
          <ul>
            <li>
              <div>No items.</div>
            </li>
          </ul>
        </li>
      </ul>
      <ul>
        <li>
          <b>Proposed</b>
          <ul>
            <li>Setup dialog for reusable class libraries. [<a href="http://bugs.eclipse.org/246674">246674</a>] (target milestone: ---)</li>
          </ul>
        </li>
      </ul>
      <ul>
        <li>
          <b>Deferred</b>
          <ul>
            <li>
              <div>No items.</div>
            </li>
          </ul>
        </li>
      </ul>
      <p>
        <a href="#toc">Table of Contents</a>
      </p>
    </div>
  </div>
</div>
<div style="visibility: hidden; float: right; text-align: right"><a href="?projectid=dsdp.nab&raw=1">view raw xml of project plan</a><br>
<a href="http://www.eclipse.org/projects/dev_process/project-status-infrastructure.php">from project meta-data key "projectplanurl"</a></div>

</div> <!-- midcolumn -->
</div> <!-- maincontent -->
		<script type="text/javascript">
		var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
		document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
		</script>
		<script type="text/javascript">
		var pageTracker = _gat._getTracker("UA-910670-2");
		pageTracker._initData();
		pageTracker._trackPageview();
		</script></div><div id="footer">
<ul id="footernav">
<li class="first"><a href="http://www.eclipse.org/">Home</a></li>
<li><a href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li>
<li><a href="http://www.eclipse.org/legal/termsofuse.php">Terms of Use</a><a href="http://www.eclipse.org/org/press-release/20081112_termsofuse.php"><img src="http://www.eclipse.org/images/updated.png" align="absmiddle" /></a></li>
</ul>
<p>Copyright &copy; 2008 The Eclipse Foundation. All Rights Reserved</p>
</div></body></html>