1 Adding a wxWidgets contribution 2 =============================== 3 4Here are some different kinds of contribution: 5 61. Bug fixes. You can send these to the wx-dev list. 72. New classes. New classes normally go in the contrib hierarchy: 8 please see below for more details. They may be promoted to 9 the main wxWidgets hierarchy if they are deemed to be 'core'. 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 15You may or may not wish to add your code to the main wxWidgets CVS 16archive. Whether your code is appropriate for this archive 17should first be ascertained by discussing it on wx-dev@wxwidgets.org. 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. 26It also simplifies compilation for users, since wxWidgets 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 44contrib/build/yourclass/ ; Your makefiles 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 57site in the 'Backroom' section. Include bakefile and generated makefiles 58(see Technote #16 for details). 59 60Your archive can be in .tgz or .zip format. For inclusion on 61the wxWidgets ftp site and CD-ROM, please send your submission to 62Julian Smart <julian@wxwidgets.org> as a binary attachment. 63An entry will be added to the Contributions web page. 64 65Author: Julian Smart 66Version: $Id: tn0005.txt 27404 2004-05-23 14:56:36Z JS $ 67 68