git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			235 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			235 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /////////////////////////////////////////////////////////////////////////////
 | |
| // Name:        introduction.h
 | |
| // Purpose:     Introduction page of the Doxygen manual
 | |
| // Author:      wxWidgets team
 | |
| // RCS-ID:      $Id$
 | |
| // Licence:     wxWindows license
 | |
| /////////////////////////////////////////////////////////////////////////////
 | |
| 
 | |
| 
 | |
| /*!
 | |
| 
 | |
|  @page page_introduction Introduction
 | |
| 
 | |
|  @li @ref page_introduction_whatis
 | |
|  @li @ref page_introduction_why
 | |
|  @li @ref page_introduction_requirements
 | |
|  @li @ref page_introduction_where
 | |
|  @li @ref page_introduction_acknowledgements
 | |
| 
 | |
| 
 | |
|  <hr>
 | |
| 
 | |
| 
 | |
|  @section page_introduction_whatis What is wxWidgets?
 | |
| 
 | |
|  wxWidgets is a C++ framework providing GUI (Graphical User
 | |
|  Interface) and other facilities on more than one platform.  Version 2 and higher
 | |
|  currently support all desktop versions of MS Windows, Unix with GTK+ 1.x or 2.x,
 | |
|  Unix with Motif, Unix with just X11, Unix with DirectFB, Mac OS X, OS/2.
 | |
| 
 | |
|  wxWidgets was originally developed at the Artificial Intelligence
 | |
|  Applications Institute, University of Edinburgh, for internal use,
 | |
|  and was first made publicly available in 1992.
 | |
|  Version 2 is a vastly improved version written and maintained by
 | |
|  Julian Smart, Robert Roebling, Vadim Zeitlin, Vaclav Slavik and many others.
 | |
| 
 | |
|  This manual contains a class reference and topic overviews.
 | |
|  For a selection of wxWidgets tutorials, please see the documentation page 
 | |
|  on the wxWidgets web site: http://www.wxwidgets.org.
 | |
| 
 | |
|  Please note that in the following, ``MS Windows" often refers to all
 | |
|  platforms related to Microsoft Windows, including 32-bit and 64-bit
 | |
|  variants, unless otherwise stated. All trademarks are acknowledged.
 | |
| 
 | |
| 
 | |
| 
 | |
|  @section page_introduction_why Why another cross-platform development tool?
 | |
| 
 | |
|  wxWidgets was developed to provide a cheap and flexible way to maximize
 | |
|  investment in GUI application development.  While a number of commercial
 | |
|  class libraries already existed for cross-platform development,
 | |
|  none met all of the following criteria:
 | |
| 
 | |
|  @li low price;
 | |
|  @li source availability;
 | |
|  @li simplicity of programming;
 | |
|  @li support for a wide range of compilers.
 | |
| 
 | |
|  Since wxWidgets was started, several other free or almost-free
 | |
|  GUI frameworks have emerged. However, none has the range of
 | |
|  features, flexibility, documentation and the well-established
 | |
|  development team that wxWidgets has.
 | |
| 
 | |
|  As open source software, wxWidgets has benefited from comments,
 | |
|  ideas, bug fixes, enhancements and the sheer enthusiasm of
 | |
|  users. This gives wxWidgets a certain advantage over its
 | |
|  commercial competitors (and over free libraries without an
 | |
|  independent development team), plus a robustness against the
 | |
|  transience of one individual or company. This openness and
 | |
|  availability of source code is especially important when the
 | |
|  future of thousands of lines of application code may depend upon
 | |
|  the longevity of the underlying class library.
 | |
| 
 | |
|  Version 2 goes much further than previous versions in terms of
 | |
|  generality and features, allowing applications to be produced
 | |
|  that are often indistinguishable from those produced using
 | |
|  single-platform toolkits such as Motif, GTK+ and MFC.
 | |
| 
 | |
|  The importance of using a platform-independent class library
 | |
|  cannot be overstated, since GUI application development is very
 | |
|  time-consuming, and sustained popularity of particular GUIs
 | |
|  cannot be guaranteed. Code can very quickly become obsolete if
 | |
|  it addresses the wrong platform or audience.  wxWidgets helps to
 | |
|  insulate the programmer from these winds of change. Although
 | |
|  wxWidgets may not be suitable for every application (such as an
 | |
|  OLE-intensive program), it provides access to most of the
 | |
|  functionality a GUI program normally requires, plus many extras
 | |
|  such as network programming, PostScript output, and HTML
 | |
|  rendering; and it can of course be extended as needs dictate.
 | |
|  As a bonus, it provides a far cleaner and easier programming
 | |
|  interface than the native APIs. Programmers may find it
 | |
|  worthwhile to use wxWidgets even if they are developing on only
 | |
|  one platform.
 | |
| 
 | |
|  It is impossible to sum up the functionality of wxWidgets in a few paragraphs, but
 | |
|  here are some of the benefits:
 | |
| 
 | |
|  @li Low cost (free, in fact!)
 | |
|  @li You get the source.
 | |
|  @li Available on a variety of popular platforms.
 | |
|  @li Works with almost all popular C++ compilers and Python.
 | |
|  @li Over 70 example programs.
 | |
|  @li Over 1000 pages of printable and on-line documentation.
 | |
|  @li Simple-to-use, object-oriented API.
 | |
|  @li Flexible event system.
 | |
|  @li Graphics calls include lines, rounded rectangles, splines, polylines, etc.
 | |
|  @li Constraint-based and sizer-based layouts.
 | |
|  @li Print/preview and document/view architectures.
 | |
|  @li Toolbar, notebook, tree control, advanced list control classes.
 | |
|  @li PostScript generation under Unix, normal MS Windows printing on the PC.
 | |
|  @li MDI (Multiple Document Interface) support.
 | |
|  @li Can be used to create DLLs under Windows, dynamic libraries on Unix.
 | |
|  @li Common dialogs for file browsing, printing, colour selection, etc.
 | |
|  @li Under MS Windows, support for creating metafiles and copying them to the clipboard.
 | |
|  @li An API for invoking help from applications.
 | |
|  @li Ready-to-use HTML window (supporting a subset of HTML).
 | |
|  @li Network support via a family of socket and protocol classes.
 | |
|  @li Support for platform independent image processing.
 | |
|  @li Built-in support for many file formats (BMP, PNG, JPEG, GIF, XPM, PNM, PCX).
 | |
|  @li Includes Tex2RTF, to allow you to produce your own documentation
 | |
|      in Windows Help, HTML and Word RTF formats.
 | |
| 
 | |
| 
 | |
| 
 | |
|  @section page_introduction_requirements wxWidgets requirements
 | |
| 
 | |
|  To make use of wxWidgets, you currently need one of the following setups.
 | |
| 
 | |
|  (a) MS-Windows:
 | |
| 
 | |
|  @li A 32-bit or 64-bit PC running MS Windows.
 | |
|  @li A Windows compiler: MS Visual C++ (embedded Visual C++ for wxWinCE
 | |
|      port), Borland C++, Watcom C++, Cygwin, MinGW, Metrowerks CodeWarrior,
 | |
|      Digital Mars C++. See @c install.txt for details about compiler
 | |
|      version supported.
 | |
| 
 | |
|  (b) Unix:
 | |
| 
 | |
|  @li Almost any C++ compiler, including GNU C++ and many Unix vendors
 | |
|      compilers such as Sun CC, HP-UX aCC or SGI mipsPro.
 | |
|  @li Almost any Unix workstation, and one of: GTK+ 2.4 or higher (GTK+ 1.2.10
 | |
|      may still be supported but wxGTK1 port is not maintained any longer and lacks
 | |
|      many features of wxGTK2), Motif 1.2 or higher or Lesstif. If using the wxX11
 | |
|      port, no such widget set is required.
 | |
| 
 | |
|  (c) Mac OS/Mac OS X:
 | |
| 
 | |
|  @li A PowerPC or Intel Mac running Mac OS X 10.3 or higher
 | |
|  @li The Apple Developer Tools (eg. GNU C++) or MetroWerks CodeWarrior (not
 | |
|      actively supported)
 | |
| 
 | |
|  Under all platforms it's recommended to have large amounts of free hard disk
 | |
|  space. The exact amount needed depends on the port, compiler and build
 | |
|  configurations but to give an example, a debug build of the library may take up
 | |
|  to 500MB.
 | |
| 
 | |
| 
 | |
| 
 | |
|  @section page_introduction_where Availability and location of wxWidgets
 | |
| 
 | |
|  wxWidgets is available by anonymous FTP and World Wide Web
 | |
|  from ftp://biolpc22.york.ac.uk/pub and/or http://www.wxwidgets.org.
 | |
| 
 | |
|  You can also buy a CD-ROM using the form on the Web site.
 | |
| 
 | |
| 
 | |
| 
 | |
|  @section page_introduction_acknowledgements Acknowledgements
 | |
| 
 | |
|  The following is the list of the core, active developers of wxWidgets which keep
 | |
|  it running and have provided an invaluable, extensive and high-quality amount of
 | |
|  changes over the many of years of wxWidgets' life:
 | |
| 
 | |
|  @li Julian Smart
 | |
|  @li Vadim Zeitlin
 | |
|  @li Robert Roebling
 | |
|  @li Robin Dunn
 | |
|  @li Stefan Csomor
 | |
|  @li Vaclav Slavik
 | |
|  @li Paul Cornett
 | |
|  @li Wlodzimierz `ABX' Skiba
 | |
|  @li Chris Elliott
 | |
|  @li David Elliott
 | |
|  @li Kevin Hock
 | |
|  @li Stefan Neis
 | |
|  @li Michael Wetherell
 | |
| 
 | |
|  We would particularly like to thank the following peoples for their contributions
 | |
|  to wxWidgets, and the many others who have been involved in the project over the years.
 | |
|  Apologies for any unintentional omissions from this alphabetic list:
 | |
| 
 | |
|  Yiorgos Adamopoulos, Jamshid Afshar, Alejandro Aguilar-Sierra, AIAI,
 | |
|  Patrick Albert, Karsten Ballueder, Mattia Barbon, Michael Bedward,
 | |
|  Kai Bendorf, Yura Bidus, Keith Gary Boyce, Chris Breeze, Pete Britton,
 | |
|  Ian Brown, C. Buckley, Marco Cavallini, Dmitri Chubraev, Robin Corbet, Cecil Coupe,
 | |
|  Andrew Davison, Gilles Depeyrot, Neil Dudman, Hermann Dunkel, Jos van Eijndhoven,
 | |
|  Tom Felici, Thomas Fettig, Matthew Flatt, Pasquale Foggia, Josep Fortiana, Todd Fries,
 | |
|  Dominic Gallagher, Guillermo Rodriguez Garcia, Wolfram Gloger, Norbert Grotz,
 | |
|  Stefan Gunter, Bill Hale, Patrick Halke, Stefan Hammes, Guillaume Helle,
 | |
|  Harco de Hilster, Cord Hockemeyer, Markus Holzem, Olaf Klein, Leif Jensen,
 | |
|  Bart Jourquin, Guilhem Lavaux, Ron Lee, Jan Lessner, Nicholas Liebmann,
 | |
|  Torsten Liermann, Per Lindqvist, Francesco Montorsi, Thomas Runge, Tatu Männistö,
 | |
|  Scott Maxwell, Thomas Myers, Oliver Niedung, Ryan Norton, Hernan Otero,
 | |
|  Ian Perrigo, Timothy Peters, Giordano Pezzoli, Harri Pasanen, Thomaso Paoletti,
 | |
|  Garrett Potts, Marcel Rasche, Dino Scaringella, Jobst Schmalenbach, Arthur Seaton,
 | |
|  Paul Shirley, Stein Somers, Petr Smilauer, Neil Smith, Kari Systä, George Tasker,
 | |
|  Arthur Tetzlaff-Deas, Jonathan Tonberg, Jyrki Tuomi, Janos Vegh, Andrea Venturoli,
 | |
|  David Webster, Otto Wyss, Xiaokun Zhu, Edward Zimmermann.
 | |
| 
 | |
|  Many thanks also to AIAI for being willing to release the original version of
 | |
|  wxWidgets into the public domain, and to our patient partners.
 | |
| 
 | |
|  `Graphplace', the basis for the wxGraphLayout library, is copyright Dr. Jos
 | |
|  T.J. van Eijndhoven of Eindhoven University of Technology. The code has
 | |
|  been used in wxGraphLayout (not in wxWidgets anymore) with his permission.
 | |
| 
 | |
|  We also acknowledge the author of XFIG, the excellent Unix drawing tool,
 | |
|  from the source of which we have borrowed some spline drawing code.
 | |
|  His copyright is included below.
 | |
| 
 | |
|  <em>
 | |
|  XFig2.1 is copyright (c) 1985 by Supoj Sutanthavibul. Permission to
 | |
|  use, copy, modify, distribute, and sell this software and its
 | |
|  documentation for any purpose is hereby granted without fee, provided
 | |
|  that the above copyright notice appear in all copies and that both that
 | |
|  copyright notice and this permission notice appear in supporting
 | |
|  documentation, and that the name of M.I.T. not be used in advertising or
 | |
|  publicity pertaining to distribution of the software without specific,
 | |
|  written prior permission.  M.I.T. makes no representations about the
 | |
|  suitability of this software for any purpose.  It is provided ``as is''
 | |
|  without express or implied warranty.
 | |
|  </em>
 | |
| 
 | |
| */
 |