wxWidgets/docs/html/roadmap.htm

218 lines
6.1 KiB
HTML
Raw Normal View History

<HTML>
<HEAD>
<TITLE>wxWindows Roadmap</TITLE>
</HEAD>
<BODY>
<a name="top"></a>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
wxWindows Roadmap
</font>
</td>
</tr>
</table>
<P>
<CENTER>
<a href="#schedule">Schedule</a> | <a href="#todo">To-Do List</a>
</CENTER>
<P>
This page represents current thinking about where wxWindows is going in the near,
medium and long-term. It also serves as a schedule for new releases so
that both developers and users can know what to expect when, at least approximately.<P>
We are adopting the Linux kernel style of numbering system where odd minor version numbers are development
versions, and even numbers are stable versions. For example, 2.1.x are development releases,
and the next 'stable' or final release of it would be 2.2.<P>
Bug-fix patches to the stable release (if made) then become point
releases of 2.2 (2.2.x) while development continues with wild abandon
on 2.3.x until the end of the next development cycle when it is
released as 2.4.<P>
Development versions that end up on the FTP site or CD-ROM, as opposed to remaining
in the CVS archive, are semi-stable -- i.e. they are checked for compilation and
run-time problems, but not as thoroughly as the stable versions.<P>
Note that since the wxWindows effort is voluntary, these are not hard-and-fast deadlines:
but we will endeavour to follow them as closely as possible.<P>
Note also that the releases described are for wxGTK, wxMSW and wxMotif ports. wxMac currently follows
its own development path but is due to merge with the main code base in November/December.
Also, minor snapshot releases for specific platforms may be
available at dates convenient to the developers.<P>
<CENTER>
<HR> <FONT SIZE=+2><I><B><a name="schedule">Schedule</a></B></I></FONT> <HR>
</CENTER>
<P>
<H4>Release 2.1.14</H4>
Release date: February 13 or 20, 2000<P>
This will be the final beta release before the final 2.2 release. It will be
synchronized for as many platforms as possible (at least Windows and GTK,
probably Motif and hopefully Mac).
Changes since the last synchronized release (2.1.11):
<ul>
<li>first beta release of wxBase
<li>new or significantly improved base classes: wxDateTime, wxLongLong,
wxCmdLineParser, wxDir, wxStopWatch
<li>much better i18n support, encoding conversion on the fly, wxFontMapper
<li>new wxGrid class
<li>new wxCalendarCtrl class
<li>dynamic toolbar/menubar management
<li>better image formats support: TIFF (new), PCX (improved)
<li>attributes (custom colours/font) support in wxTreeCtrl, wxListCtrl
<li>impressive number of fixed bugs in wxMSW and wxGTK including various
incompatibilities between the two
</ul>
<P>
<H4>Release 2.2 (stable)</H4>
Release date: March 5, 2000.<P>
This is the next stable version of wxWindows. No new features since
2.1.14 beta.
<ul>
<li>bugs found during 2.1.14 will be fixed.
<li>translations of text strings used in wxWindows
<li>documentation updated to include all new classes
</ul>
<P>
<H4>Release 2.3</H4>
Release date: ?
<ul>
<li>Context sensitive help.
<li>More i18n issues: dates, times, ...
<li>POSIX-like regular expressions support for all platforms.
<li>Encryption support (interface to OpenSSL).
<li>UDP support in wxSocket
<li>wxPlot
<li>XML for resource files.
</ul>
<P>
<H4>Release 2.4 (stable)</H4>
Release date: ?
Stable version of 2.3.
<ul>
<li>wxMac release.
<li>wxBeOS port.
</ul>
<P>
<CENTER>
<HR> <FONT SIZE=+2><I><B><a name="todo">To-Do List</a></B></I></FONT> <HR>
</CENTER>
<P>
Developers: please feel free to add to these, and delete them when they are done.
<P>
<B><I>General</I></B><P>
<ul>
<li>wxHTML printing. When finished, this will allow an application to generate
printed reports with very little effort.
<li>wxSocket.
<li>Split library into several, for base (classes and functions usable by console and GUI
applications), console (classes and functions usable by console application only)
and GUI (classes and functions usable by GUI application only).
<li>Extend and unify drag and drop handling (e.g. we need to specify multiple drop targets
that can handle multiple formats).
<li>Expand the number of controls that can be specified in a WXR file;
add constraint specification to WXR syntax and Dialog Editor; add multilanguage support to WXR.
May be we'd better change the format completely and replace WXR with XML
(providing conversion utility for old files)?
<li>Context sensitive help: we need to have wxHelpEvent which would be
generated when the help for a given control is requested and a standard
handler for it in wxWindow which would invoke the default help system with the
correct help id.
<li>Rewrite Dialog Editor.
<li>Modem-oriented classes: wxDialUpManager for dialing up the ISP and
determining if there is a connection to Internet on the machine and
wxPhoneDialer for dialing arbitrary phone numbers and otherwise communicating
with the modem.
<li>wxImage handlers in separate .h and .cpp files.
<li>PCX writing code.
<li>GIF animation code.
<li>Tidying of timer code, addition of wxChrono class.
<li>Debug wxPostScriptDC further.
<li>wxDateTime class.
<li>Regular expressions support.
<li>Expansion of wxHTML to support further tags, and frames.
<li>MGL port (see Backroom/Future Ports page).
<li>Rotated text support.
<li>FreeType support.
<li>Support for 'skins', perhaps using a set of alternative control and window classes
written generically in wxWindows.
<li>Serial and parallel port support.
<li>Modem and telephony support.
<li>Book, tutorial.
<li>More examples.
<li>Bug tracking system.
</ul>
<P>
<B><I>wxMSW</I></B><P>
<ul>
<li>Windows CE port.
<li>Cure bug whereby in a panel within another panel, all buttons become
default buttons (heavy black border).
<li>Write a RC->WXR converter.
</ul>
<P>
<B><I>wxGTK</I></B><P>
<ul>
<li>GNOME/KDE integration libraries.
</ul>
<P>
<B><I>wxMotif</I></B><P>
<ul>
<li>Fix menu accelerators
<li>Fix refresh problems
<li>Allow wxSystemSettings to be configurable, perhaps via a control
panel application.
</ul>
</BODY>
</HTML>