]> git.saurik.com Git - wxWidgets.git/blame - docs/tech/tn0005.txt
don't set SO_REUSEADDR by default; added GSocket_SetReuseAddr()
[wxWidgets.git] / docs / tech / tn0005.txt
CommitLineData
fc2171bd 1 Adding a wxWidgets contribution
f6bcfd97
BP
2 ===============================
3
4Here are some different kinds of contribution:
5
77ffb593 61. Bug fixes. You can send these to the wx-dev list.
f6bcfd97
BP
72. New classes. New classes normally go in the contrib hierarchy:
8 please see below for more details. They may be promoted to
fc2171bd 9 the main wxWidgets hierarchy if they are deemed to be 'core'.
f6bcfd97
BP
103. A utility application, such as a new dialog editor or
11 file format conversion utility. If adding to the CVS
12 archive, you may put it under the utils hierarchy,
13 preferably with further src and docs directories.
14
fc2171bd 15You may or may not wish to add your code to the main wxWidgets CVS
f6bcfd97 16archive. Whether your code is appropriate for this archive
77ffb593 17should first be ascertained by discussing it on wx-dev@wxwidgets.org.
f6bcfd97
BP
18
19The contrib hierarchy
20---------------------
21
22When contributing a new class or set of classes, please
23organise your files in the following hierarchy, so that
24when a user unarchives your contribution, it
25slots neatly into the existing source hierarchy.
fc2171bd 26It also simplifies compilation for users, since wxWidgets
f6bcfd97
BP
27makefiles and project files are set up to search in
28contrib/include/wx and contrib/lib. For example, to
29include yourclass.h, the following directive is used:
30
31#include "wx/yourclass/yourclass.h"
32
33Here are the directories:
34
35contrib/include/wx/yourclass/ ; Your header(s) go here
36contrib/src/yourclass/ ; Your source file(s) go here
37contrib/samples/yourclass/ ; Your sample(s) go here
38contrib/docs/latex/yourclass/ ; Your Latex doc sources go here
39contrib/docs/html/yourclass/ ; Your HTML doc files go here
40contrib/docs/htmlhelp/yourclass/ ; Your MS HTML Help doc files go here
41contrib/docs/htb/yourclass/ ; Your wxHTML doc files go here
42contrib/docs/pdf/yourclass/ ; Your PDF doc files go here
43contrib/docs/winhelp/yourclass/ ; Your WinHelp doc files go here
fa8e95cb 44contrib/build/yourclass/ ; Your makefiles
f6bcfd97
BP
45
46It is recommended that you produce a manual using Tex2RTF, as specified
47in Technical Note TN0003. This allows you to output all the above
48formats, though for PDF you will need Latex and Ghostscript or
49Word and Adobe Acrobat, and for MS HTML Help and WinHelp you need
50the appropriate (freely available) help compilers.
51
52Your binary library files can go in the main lib directory or contrib/lib,
53but the main lib directory is recommended.
54
55Please include a readme.txt in your source directory, and conform
56as much as possible to the coding guidelines specified on the web
fa8e95cb
VS
57site in the 'Backroom' section. Include bakefile and generated makefiles
58(see Technote #16 for details).
f6bcfd97
BP
59
60Your archive can be in .tgz or .zip format. For inclusion on
fc2171bd 61the wxWidgets ftp site and CD-ROM, please send your submission to
77ffb593 62Julian Smart <julian@wxwidgets.org> as a binary attachment.
f6bcfd97
BP
63An entry will be added to the Contributions web page.
64
65Author: Julian Smart
66Version: $Id$
67