]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/html/roadmap.htm
corrections to exiting the program, now we should wait for all threads to finish...
[wxWidgets.git] / docs / html / roadmap.htm
index 0bda1ab4bd9e9224e0141d9e8b32152c7c5892ee..005b72ecdff11a2971f3bdf5eb9621bb8e28f85f 100644 (file)
@@ -9,11 +9,11 @@
 
 <font face="Arial, Lucida Sans, Helvetica">
 
 
 <font face="Arial, Lucida Sans, Helvetica">
 
-<table width=100% border=4 cellpadding=5 cellspacing=0>
+<table width=100% border=0 cellpadding=3 cellspacing=0>
 <tr>
 <tr>
-<td bgcolor="#660000">
+<td bgcolor="#004080" align=left height=24 background="images/bluetitlegradient.gif">
 <font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
 <font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
-wxWindows Roadmap
+<b>wxWindows Roadmap</b>
 </font>
 </td>
 </tr>
 </font>
 </td>
 </tr>
@@ -31,104 +31,83 @@ 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>
 
 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>
 
-Note (1): as the wxWindows effort is voluntary, these are not hard-and-fast deadlines:
+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>
 
 but we will endeavour to follow them as closely as possible.<P>
 
-Note (2): the releases described are for wxGTK, wxMSW and wxMotif ports. wxMac currently follows
+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
 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>
+available at dates convenient to the developers.
+
+Finally, this page only shows the things which are still left to do, please
+look elsewhere to see the complete list of changes between the releases,
+including the things which are already done.
+<P>
 
 <CENTER>
 <HR> <FONT SIZE=+2><I><B><a name="schedule">Schedule</a></B></I></FONT> <HR>
 </CENTER>
 <P>
 
 
 <CENTER>
 <HR> <FONT SIZE=+2><I><B><a name="schedule">Schedule</a></B></I></FONT> <HR>
 </CENTER>
 <P>
 
-<H4>Release 2.0.?</H4>
-
-<ul>
-<li>Release date: October 3rd, 1999
-<li>This beta is intended to be the last stable snapshot before wxWindows
-is split into base and GUI libraries.
-<li>New wxGrid in beta.
-<li>wxWizard (beta)
-<li>wxDialUpManager and wxPhoneDialer (beta)
-<li>wxFontEnumerator (beta)
-<li>Preliminary support for different encodings
-<li>wxPostEvent function
-</ul>
-
-<P>
-
-<H2>Release 2.1</H2>
-
-<ul>
-<li>Release date: November 7th, 1999
-<li>Splits wxWindows into base and GUI libraries. Most, but not all makefiles
-are expected to support this: for the rest, the makefiles will build a valid
-combined base/GUI library for GUI applications only.
-<li>New wxGrid.
-<li>wxSocket working.
-<li>Full support for fonts in different encodings
-<li>Tested multithreading support (wxThread)
-<li>wxHTML printing (possibly).
-<li>Better i18n support (i.e. more translations)
-<li>Animation classes (possibly, low priority).
-<li>PCX writing capability (possibly, low priority).
-<li>wxImage handlers in separate .h and .cpp files.
-<li>Rewritten timer.cpp, possible wxChrono class.
-<li>Bug tracking system in place.
-</ul>
-
-<P>
-
-<H4>Release 2.1.1</H4>
-
-<ul>
-<li>Release date: January 9th, 2000
-<li>Miscellaneous fixes and small enhancements.
-</ul>
+<H4>Release 2.4.0 (stable)</H4>
+
+Release date: Summer 2002?
+
+<p>
+
+Stable version of 2.3.
+
+<ol>
+    <li>Very important
+        <ul>
+            <li>wxMac: make the release together with the other ports
+            <li>Fix wxStream::Eof() problems
+            <li>wxGTK: GTK+ 2.0 support
+        </ul>
+
+    <li>Important
+        <ul>
+            <li>(Unix) implement <tt>wx-config</tt> as a version and build
+            parameters independent script which would just read the
+            configuration files
+            <li>Finish wxFileName
+            <li>Make it possible to process the key strokes portably
+            <li>Add wxSemaphor, fix wxCondition
+        </ul>
+
+    <li>Nice to have
+        <ul>
+            <li>support for text in the wxToolBar buttons
+            <li>radio buttons in wxToolBar
+            <li>possibility to use individual wxUniv controls from the native
+            ports
+        </ul>
+</ol>
 
 <P>
 
 
 <P>
 
-<H4>Release 2.1.2</H4>
-
-<ul>
-<li>Release date: March 5th, 2000
-<li>Miscellaneous fixes and small enhancements.
-<li>wxDateTime class in beta.
-</ul>
+<H4>Release 3.0.0 (stable)</H4>
 
 
-<P>
+This release should finally mark the end of support for the antiquated
+compilers without decent support of the modern C++ features such as templates,
+exceptions and namespaces. wxWindows containers should be replaced with the
+corresponding standard library classes and <tt>std::basic_string&lt;&gt;</tt>
+should be used instead of <tt>wxString</tt>.
 
 
-<H4>Release 2.1.3</H4>
-
-<ul>
-<li>Release date: May 7th, 2000
-<li>Unicode compilation starting to work in wxGTK and wxMSW.
-</ul>
-
-<P>
-
-<H2>Release 2.2</H2>
-
-<ul>
-<li>Release date: c. July 2nd, 2000
-<li>Unicode compilation working in wxGTK and wxMSW.
-<li>wxDateTime class.
-<li>Regular expressions support.
-</ul>
-
-<P>
-
-<H2>Release 2.3</H2>
-
-<ul>
-<li>Release date: unknown
-<li>WinCE port available.
-</ul>
-
-<P>
+<p>
 
 <CENTER>
 <HR> <FONT SIZE=+2><I><B><a name="todo">To-Do List</a></B></I></FONT> <HR>
 
 <CENTER>
 <HR> <FONT SIZE=+2><I><B><a name="todo">To-Do List</a></B></I></FONT> <HR>
@@ -136,6 +115,13 @@ combined base/GUI library for GUI applications only.
 
 <P>
 
 
 <P>
 
+This is just a collection of the various things which it would be nice to
+include in wxWindows but which are not actively worked on right now and for
+which no schedule is fixed yet. If you're interested in helping with wxWindows
+development, one of the small projects below could be a great way to join the
+team!
+
+<p>
 Developers: please feel free to add to these, and delete them when they are done.
 
 <P>
 Developers: please feel free to add to these, and delete them when they are done.
 
 <P>
@@ -143,32 +129,9 @@ Developers: please feel free to add to these, and delete them when they are done
 <B><I>General</I></B><P>
 
 <ul>
 <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>A rich text editor similar to GTK+ 2.0 GtkTextView but cross-platform
 <li>Extend and unify drag and drop handling (e.g. we need to specify multiple drop targets
 that can handle multiple formats).
 <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>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>PCX writing code.
-<li>GIF animation code.
-<li>Tidying of timer code, addition of wxChrono class.
-<li>Debug wxPostScriptDC further.
-<li>wxDateTime class.
-<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>Support for 'skins', perhaps using a set of alternative control and window classes
 written generically in wxWindows.
 <li>Serial and parallel port support.
@@ -183,9 +146,6 @@ written generically in wxWindows.
 
 <ul>
 <li>Windows CE port.
 
 <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>
 </ul>
 
 <P>
@@ -193,21 +153,13 @@ default buttons (heavy black border).
 <B><I>wxGTK</I></B><P>
 
 <ul>
 <B><I>wxGTK</I></B><P>
 
 <ul>
+<li>Full Unicode support using GTK+ 2.0
+<li>Wrap the new GTK+ 2.0 GtkTextView powerful widget
 <li>GNOME/KDE integration libraries.
 </ul>
 
 <P>
 
 <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>
 
 </BODY>
 </HTML>