1999-08-11 10:37:10 -04:00
|
|
|
<HTML>
|
|
|
|
|
|
|
|
<HEAD>
|
|
|
|
<TITLE>wxWindows Book</TITLE>
|
|
|
|
</HEAD>
|
|
|
|
|
|
|
|
<BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
|
|
|
|
|
|
|
|
<font face="Arial, Lucida Sans, Helvetica">
|
|
|
|
|
2000-07-15 15:51:35 -04:00
|
|
|
<table width=100% border=0 cellpadding=5 cellspacing=0>
|
1999-08-11 10:37:10 -04:00
|
|
|
<tr>
|
2000-07-15 15:51:35 -04:00
|
|
|
<td bgcolor="#C4ECF9">
|
|
|
|
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#000000">
|
1999-08-11 10:37:10 -04:00
|
|
|
wxWindows Book
|
|
|
|
</font>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</table>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<center>
|
|
|
|
<a href="#about">About</a> |
|
|
|
|
<a href="#participants">Participants</a> |
|
|
|
|
<a href="#publication">Publication</a> |
|
2000-08-09 02:25:38 -04:00
|
|
|
<!-- <a href="#suggestions">Suggestions</a> | -->
|
1999-08-11 10:37:10 -04:00
|
|
|
<a href="#format">Format</a> |
|
2000-08-09 02:25:38 -04:00
|
|
|
<a href="#style">Style guide</a> |
|
|
|
|
<a href="#titles">Titles</a> |
|
1999-08-11 10:37:10 -04:00
|
|
|
<a href="#contents">Contents</a>
|
|
|
|
</center>
|
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
<p>
|
1999-08-11 10:37:10 -04:00
|
|
|
<hr>
|
2000-08-09 02:25:38 -04:00
|
|
|
<p>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
|
|
|
<H3><a name="about">About the wxWindows book</a></H3>
|
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
August 2000: the 'wxBook' project is getting going again,
|
|
|
|
with a good response from potential contributors.<P>
|
|
|
|
|
|
|
|
Robin Dunn has set up a <a href="http://wxwindows.org/mailman/listinfo/wxbook">wxBook mailing list</a>.<P>
|
|
|
|
|
|
|
|
The book will comprise 30 or so chapters dealing with progressively
|
|
|
|
more advanced areas of wxWindows; each chapter will be as stand-alone as
|
|
|
|
possible. The book will
|
2000-08-06 04:18:52 -04:00
|
|
|
not include the API reference, though this could be a
|
|
|
|
separate project. The book will be accompanied by a CD-ROM with
|
2000-08-09 02:25:38 -04:00
|
|
|
wxWindows and its documentation. It will initially be
|
2000-08-06 04:18:52 -04:00
|
|
|
available on-line, and when enough is done we will look for a
|
|
|
|
publisher.<P>
|
|
|
|
|
|
|
|
There will also be a separate small booklet which can easily be printed
|
|
|
|
out and which gives an overview of wxWindows facilities by taking
|
|
|
|
the reader through a single worked example. Guillermo Rodriguez
|
|
|
|
Garcia has volunteered to write this, and will use his Life!
|
|
|
|
demo to illustrate it.<P>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
|
|
|
Goals for the book:<P>
|
|
|
|
|
|
|
|
<ol>
|
|
|
|
<li> to allow users to become accomplished wxWindows developers rapidly;
|
|
|
|
<li> to be useful over a longer period than just the first few weeks, since
|
|
|
|
there are a lot of complex areas to address and not all features will be
|
|
|
|
used up-front in a project;
|
|
|
|
<li> to promote wxWindows to a wider audience;
|
|
|
|
<li> to make at least some money for the authors.
|
|
|
|
</ol>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
Audience: beginners + experienced wxWindows users, but with reasonable C++
|
|
|
|
knowledge.<P>
|
|
|
|
|
|
|
|
It is suggested that any financial return from the book be allocated on a points system,
|
|
|
|
with a predefined number of points for chapters, indexing, editing, proof-reading etc.<P>
|
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
<p>
|
1999-08-11 10:37:10 -04:00
|
|
|
<hr>
|
2000-08-09 02:25:38 -04:00
|
|
|
<p>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
|
|
|
<H3><a name="participants">Participants</a></H3>
|
|
|
|
|
|
|
|
So far, the following people are interested in taking part in this project:<P>
|
|
|
|
|
|
|
|
<ul>
|
2000-08-06 04:18:52 -04:00
|
|
|
<li><a href="mailto:julian.smart@ukonline.co.uk">Julian Smart</a> -
|
|
|
|
editor and coordinator of the project; introductory chapter, some other
|
|
|
|
chapters.
|
|
|
|
<li><a href="mailto:guille@iies.es">Guillermo Rodriguez Garcia</a> - Separate tutorial booklet;
|
|
|
|
communication classes (wxSocket, wxXXXServer, some protocol stuff); timing and timers.
|
|
|
|
<li><a href="mailto:robin@alldunn.com">Robin Dunn</a> - wxPython chapter.
|
|
|
|
</i>
|
2000-08-09 02:25:38 -04:00
|
|
|
<li><a href="mailto:zeitlin@dptmaths.ens-cachan.fr">Vadim Zeitlin</a> - drag and drop, several other chapters.
|
|
|
|
<li><a href="mailto:roebling@uni-freiburg.de">Robert Roebling</a> - not known.
|
2000-08-06 04:18:52 -04:00
|
|
|
<li><a href="mailto:slavik2@czn.cz">Vaclav Slavik</a> - wxHTML section.
|
|
|
|
<li><a href="mailto:gtasker@fastpicsystems.com">George Tasker</a> - database chapter.
|
|
|
|
<li><a href="mailto:moreno@mochima.com">Carlos Moreno</a> - wxImage, wxBitmap.
|
|
|
|
<li><a href="mailto:Shiv@pspl.co.in">Shiv Shankar Ramakrishnan</a> - wxWindows advocacy, convincing your manager,
|
|
|
|
container classes and strings, comparison with STL
|
|
|
|
<li><a href="mailto:markusneifer@my-Deja.com">Markus Neifer</a> - user-defined events.
|
|
|
|
|
|
|
|
<!--
|
|
|
|
<li><a href="mailto:csomor@advancedconcepts.ch">Stefan Csomor</a>. The sequence of events i.e. which action provokes which event sequence,
|
|
|
|
this is implicit for the use on MSW, but very important for other systems; and porting to new platforms
|
|
|
|
-->
|
|
|
|
<!--
|
1999-08-11 10:37:10 -04:00
|
|
|
<li><a href="mailto:tomr@scitechsoft.com">Tom Ryan</a>, SciTech Software.
|
2000-08-06 04:18:52 -04:00
|
|
|
-->
|
|
|
|
<!--
|
|
|
|
<li><a href="mailto:karsten@phy.hw.ac.uk">Karsten Ballueder</a>. Short tutorials on some useful
|
|
|
|
GNU tools, like autoconf/configure/make, programming
|
|
|
|
strategies, etc.
|
|
|
|
-->
|
|
|
|
<!--
|
1999-08-11 10:37:10 -04:00
|
|
|
<li><a href="mailto:mheck@www.surveyorcorp.com">Matt Heck</a>, SurveyorCorp Inc.
|
|
|
|
<i>
|
|
|
|
<ol>
|
|
|
|
<li>a case study of how and why we've used wxWindows at Surveyor Corp., and
|
|
|
|
how it's worked out so far;
|
|
|
|
<li>an appendix something similar about how to use wxLIVID for video capture and display;
|
|
|
|
<li>proofreading
|
|
|
|
</ol>
|
2000-08-06 04:18:52 -04:00
|
|
|
-->
|
1999-08-11 10:37:10 -04:00
|
|
|
</ul>
|
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
<P>
|
|
|
|
Others welcome! Please contact <a href="mailto:julian.smart@ukonline.co.uk">Julian Smart</a>
|
|
|
|
if you would like to contribute.
|
|
|
|
|
|
|
|
<p>
|
1999-08-11 10:37:10 -04:00
|
|
|
<hr>
|
2000-08-09 02:25:38 -04:00
|
|
|
<p>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
|
|
|
<H3><a name="publication">Publication</a></H3>
|
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
We wll investigate publishers, especially O'Reilly. We will have to get together
|
|
|
|
several sample chapters to convince a publisher that the many-author approach will
|
|
|
|
work.<P>
|
2000-08-06 04:18:52 -04:00
|
|
|
|
|
|
|
<!--
|
1999-08-11 10:37:10 -04:00
|
|
|
Tom Ryan originally wrote:<P>
|
|
|
|
|
|
|
|
<PRE>
|
|
|
|
Hi Guys,
|
|
|
|
|
|
|
|
I just wanted to let you know that I have spoken with officials here
|
|
|
|
at California State University, Chico and they are potentially
|
|
|
|
interested in publishing a book on wxWindows! A wxWindows
|
|
|
|
book would give wxWindows a great deal of exposure.
|
|
|
|
|
|
|
|
These discussions came out of the fact that CSUC wanted to
|
|
|
|
switch from MFC to wxWindows in their GUI programming classes,
|
|
|
|
but there was not a book available for students to work with.
|
|
|
|
|
|
|
|
I was thinking that the first edition could be primarily the reference
|
|
|
|
documentation combined with a basic wxTutorial and examples. In
|
|
|
|
this case, it would be fairly straightforward to get something out
|
|
|
|
initially and then we could take it from there.
|
|
|
|
</PRE>
|
|
|
|
|
|
|
|
<p>
|
|
|
|
|
|
|
|
<a href="mailto:benles@powernet.net">Ben Allfree</a> has also expressed an interest
|
|
|
|
in publishing a wxWindows book, and distributing it via Amazon. Ben was thinking
|
|
|
|
in terms of a quickie job using the existing reference manual.<P>
|
|
|
|
|
|
|
|
Another publishing name to think of is O'Reilly. They would probably give us a lot
|
|
|
|
of guidance for style, formatting, etc.<P>
|
|
|
|
|
1999-08-12 16:18:18 -04:00
|
|
|
<a href="mailto:Roald.Ribe@winlink.no">Roald Ribe</a> writes:
|
|
|
|
"<a href="http://www.bruceeckel.com/javabook.html" target=_new>Thinking in Java</a>
|
|
|
|
is published both as a PDF for internet (by the author) and in print by Prentice Hall."<P>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
2000-08-06 04:18:52 -04:00
|
|
|
-->
|
2000-08-09 02:25:38 -04:00
|
|
|
|
|
|
|
<P>
|
1999-08-11 10:37:10 -04:00
|
|
|
<hr>
|
2000-08-09 02:25:38 -04:00
|
|
|
<P>
|
|
|
|
|
|
|
|
<!--
|
1999-08-11 10:37:10 -04:00
|
|
|
|
|
|
|
<H3><a name="suggestions">Suggestions and comments</a></H3>
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
<li>Chapter on converting from MFC. (Julian Smart)
|
|
|
|
<li>A chapter on why some inconsistencies are almost always going to show up in a
|
|
|
|
multiplatform toolkit, how to avoid them, how to deal with when you have
|
|
|
|
no choice, and (if wxBook explains the internals or philosophy of
|
|
|
|
wxWindows at all) how wxWindows attempts to minimize the number we
|
|
|
|
encounter. (Matt Heck)
|
|
|
|
<li>Creating the shortest possible path to writing "Hello World" from scratch in wxWindows. (Matt Heck)
|
|
|
|
<li>How will royalties for subsequent editions be shared out? (Tom Ryan)
|
|
|
|
<li>"My personal feeling is that this project will wind up being developed
|
|
|
|
by a small team, led by an editor that will wind up doing about half
|
|
|
|
of the total amount of work." (Tom Ryan)
|
|
|
|
</ul>
|
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
<P>
|
|
|
|
<hr>
|
|
|
|
<P>
|
|
|
|
-->
|
|
|
|
|
|
|
|
<H3><a name="format">File format</a></H3>
|
|
|
|
|
|
|
|
Possible formats:
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
<li>Word
|
|
|
|
<li><a href="http://www.abisource.com" target=_top>Abiword</a>: possibly not developed enough yet, but
|
|
|
|
it can output Latex which would make conversion to Tex2RTF format quite simple
|
|
|
|
<li>Latex: favoured format so far. The LyX near-WYSIWYG word processor (Unix only) can output Latex.
|
|
|
|
See also <a href="http://www.esat.kuleuven.ac.be/~minten/NTTeXing/NTTeXing.html" target=_top>NTTex</a>
|
|
|
|
which uses EMACS as an editor. For an introduction to Latex, see <a href="ftp://ftp.tex.ac.uk/tex-archive/info/lshort" target=_top>here</a>.
|
|
|
|
A free TeX for Windows: see <a href="http://www.miktex.org/" target=_top>MikTex</a>. More TeX info: <a href="http://www.tug.org/" target=_top>TUG</a>.
|
|
|
|
<li>XML: hard to read/write
|
|
|
|
<li>SGML: ditto
|
|
|
|
<li>DocBook: don't have any information about this, but <a href="http://www.LinuxNinja.com/linux-admin/" target=_top>Linux Admin Made Easy</a>
|
|
|
|
uses it.
|
|
|
|
<li><a href="http://www.zope.org//Members/jim/StructuredTextWiki/StructuredTextNG" target=_top>Structured text</a> -
|
|
|
|
plain text with indentation and other elements to provide structure. The tools seem under-developed and there
|
|
|
|
doesn't seem to be a simple way of getting them without using the CVS Zope archive.
|
|
|
|
<li>troff - favoured by O'Reilly
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<P>
|
1999-08-11 10:37:10 -04:00
|
|
|
<hr>
|
2000-08-09 02:25:38 -04:00
|
|
|
<P>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
<H3><a name="style">Style guide</a></H3>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
We should write a style and formatting guide.<P>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
<P>
|
1999-08-11 10:37:10 -04:00
|
|
|
<hr>
|
2000-08-09 02:25:38 -04:00
|
|
|
<P>
|
|
|
|
|
|
|
|
<H3><a name="titles">Book Titles</a></H3>
|
|
|
|
|
|
|
|
It would be good to include certain buzzwords such as Linux and open source, to get
|
|
|
|
a publisher's (and the potential reader's) attention. The trick is to do that and
|
|
|
|
not narrow the scope unduly.<P>
|
|
|
|
|
|
|
|
Suggestions for the main book:<P>
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
<li>Multiplatform GUI development with wxWindows
|
|
|
|
<li>wxWindows: an open source multiplatform toolkit
|
|
|
|
<li>wxWindows: GUI development for Linux and other platforms
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
Other book titles that a publisher might be interested (but would be distinct projects):<P>
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
<li>Writing GTK+ Application Using wxWindows
|
|
|
|
<li>Migrating MFC Apps to Linux Using wxWindows
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<hr>
|
|
|
|
<P>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
|
|
|
<H3><a name="contents">Contents</a></H3>
|
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
The following is open to discussion.<P>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
2000-08-09 02:25:38 -04:00
|
|
|
<ul>
|
|
|
|
<li>Chapter 01: Introduction to wxWindows: history, advocacy, future developments
|
|
|
|
<li>Chapter 02: Installing wxWindows (and what tools to use)
|
|
|
|
<li>Chapter 03: C++ and wxWindows. Summarises the sorts of constructs used/not used, plus wxString class,
|
|
|
|
some conventions. Vadim suggests putting it in 1st chapter but I think it deserves a chapter of its own.
|
|
|
|
<li>Chapter 04: Getting started: Hello World. Introduces app class, frames, menus, status bar, message box
|
|
|
|
<li>Chapter 05: Basic event handling
|
|
|
|
<li>Chapter 06: Frames and menubars. The components of a frame, menubars.
|
|
|
|
<li>Chapter 07: Toolbars and status bars
|
|
|
|
<li>Chapter 08: Basic controls
|
|
|
|
<li>Chapter 09: Common dialogs
|
|
|
|
<li>Chapter 10: Custom dialogs and resources (XML + WXR)
|
|
|
|
<li>Chapter 11: Drawing on device contexts
|
|
|
|
<li>Chapter 12: Handling input (mouse, keyboard, joystick)
|
|
|
|
<li>Chapter 14: Sizers
|
|
|
|
<li>Chapter 15: Images and bitmaps
|
|
|
|
<li>Chapter 16: Clipboard and drag and drop
|
|
|
|
<li>Chapter 17: Advanced controls (list,tree,notebook,splitter,wxWizard,wxCalCtrl...)
|
|
|
|
<li>Chapter 18: Document/view classes
|
|
|
|
<li>Chapter 19: Scrolling
|
|
|
|
<li>Chapter 20: MDI
|
|
|
|
<li>Chapter 21: Printing
|
|
|
|
<li>Chapter 22: Providing help in your applications
|
|
|
|
<li>Chapter 23: Strings and internationalization
|
2000-08-09 12:51:33 -04:00
|
|
|
<li>Chapter 24: Collection and container classes
|
|
|
|
<li>Chapter 25: Memory management and debugging (including wxLog)
|
|
|
|
<li>Chapter 26: Run-time class information
|
|
|
|
<li>Chapter 27: Advanced event handling (user-defined events, ...)
|
|
|
|
<li>Chapter 28: Communication classes, including wxSocket
|
|
|
|
<li>Chapter 29: Database classes
|
|
|
|
<li>Chapter 30: File and stream classes
|
|
|
|
<li>Chapter 31: Configuration classes
|
|
|
|
<li>Chapter 32: Time, timers and idle processing
|
|
|
|
<li>Chapter 33: Writing multithreading applications
|
|
|
|
<li>Chapter 34: Perfecting your UI (Adapting to system settings, accelerators, ...)
|
|
|
|
<li>Chapter 35: Platform-specific programming (metafiles, OLE automation, taskbar, ...)
|
|
|
|
<li>Chapter 36: Using wxHTML
|
|
|
|
<li>Chapter 37: Using wxPython
|
|
|
|
<li>Chapter 38: wxBase?
|
2000-08-09 02:25:38 -04:00
|
|
|
<li>Appendix: Comparison with other toolkits: MFC, Qt etc.
|
|
|
|
</ul>
|
1999-08-11 10:37:10 -04:00
|
|
|
|
|
|
|
</font>
|
|
|
|
|
|
|
|
</BODY>
|
|
|
|
|
|
|
|
</HTML>
|