1 /////////////////////////////////////////////////////////////////////////////
2 // Name:        introduction.h
3 // Purpose:     Introduction page of the Doxygen manual
4 // Author:      wxWidgets team
5 // Licence:     wxWindows licence
6 /////////////////////////////////////////////////////////////////////////////
7 
8 /**
9 
10 @page page_introduction Introduction
11 
12 @tableofcontents
13 
14 
15 
16 @section page_introduction_whatis What is wxWidgets?
17 
18 wxWidgets is an open source C++ framework allowing to write cross-platform
19 GUI applications with native look and feel in C++ and other languages.
20 
21 wxWidgets was originally developed by Julian Smart at the Artificial
22 Intelligence Applications Institute, University of Edinburgh, for internal use,
23 and was first made publicly available in 1992, with a vastly improved version 2
24 released in 1999. The last major version of the library is 3 and was released
25 in 2013. Currently wxWidgets is developed and maintained by Julian Smart, Vadim
26 Zeitlin, Stefan Csomor, Robert Roebling, Vaclav Slavik and many others.
27 
28 More information about wxWidgets is available on its web site at
29 http://www.wxwidgets.org.
30 
31 
32 
33 @section page_introduction_why Why choose wxWidgets?
34 
35 Compared to the other similar libraries, wxWidgets is:
36 
37 1. The only C++ GUI library built by wrapping native GUI widgets which results
38    in the best user experience on each platform.
39 2. Written using only the standard C++ and doesn't rely on any custom
40    extensions or preprocessing.
41 3. Open source and free for use in both open source and commercial projects.
42 
43 
44 wxWidgets provides a simple, easy to learn, yet very rich API. It is also
45 mature and stable, and the applications written using wxWidgets 2.0
46 pre-releases almost 20 years ago can still be built today with wxWidgets 3
47 almost unchanged. wxWidgets has a large, active and friendly community of
48 people, including both the users and developers of the library. It is also
49 available now for more than a dozen other languages, including Python, Perl,
50 Ruby, Lua, Haskell, D, Erlang, PHP, in addition to C++.
51 
52 It is impossible to sum up everything included in wxWidgets in a few
53 paragraphs, but here are some of the benefits:
54 
55 @li Available on all major desktop platforms.
56 @li Free for any use.
57 @li Source is available and easy to read and modify if necessary.
58 @li Over 100 example programs.
59 @li Extensive documentation (almost 200,000 lines of it).
60 @li Straightforward API.
61 @li Simple but powerful layout system.
62 @li Run-time loadable or compile-time embeddable resources.
63 @li Flexible event system.
64 @li All the usual and quite a few of more rare GUI controls.
65 @li And also all the standard dialogs.
66 @li 2D path-based drawing API with full support for transparency.
67 @li Built-in support for many file formats (BMP, PNG, JPEG, GIF, XPM, PNM, PCX, TGA, ...).
68 @li Printing, help, clipboard, drag-and-drop, document/view, ... support.
69 @li Integration with the native platform HTML rendering engine.
70 @li Dockable windows framework.
71 @li Word processor-like widget.
72 @li Powerful text editing widget with syntax highlighting.
73 @li And much, much more...
74 
75 
76 @section page_introduction_requirements wxWidgets Requirements
77 
78 wxWidgets first-tier "ports", ie implementations of wxWidgets API, are:
79 
80 @li wxMSW: This is the native port for Microsoft Windows systems (from Windows
81 95 up to Windows 10 with at least Windows XP being recommended), either 32 or
82 64 bits. The primarily supported compilers are Microsoft Visual C++ (versions 6
83 up to 2015 are supported, at least 2005 is recommended) and GNU g++ (either
84 from the traditional MinGW, TDM-GCC or MinGW-w64 distributions).
85 
86 @li wxGTK: wxGTK2 and wxGTK3 are the ports using GTK+ library version 2.x and
87 3.x respectively. They are very similar, with wxGTK2 being, however, more
88 mature. Both ports work on almost any Unix system (Linux, FreeBSD, OpenBSD,
89 NetBSD, Solaris, AIX, ...) and require GTK+ 2.6 or later or GTK+ 3.x. The
90 primary supported compiler is GNU g++.
91 
92 @li wxOSX: wxOSX/Cocoa is the primary port for Apple computers, replacing the
93 older and now deprecated wxOSX/Carbon port. wxOSX supports either PowerPC or
94 Intel Macs running OS X 10.5 or higher and can be compiled in either 32 or 64
95 bits using Apple Developer Tools (both GNU g++ and clang are supported).
96 
97 Other platforms (iOS, Windows CE, OS/2), compilers (Borland C++ under Windows,
98 Sun CC, HP-UX aCC, IBM xlC or SGI mipsPro under Unix) and ports (wxOSX/Carbon,
99 wxGTK1, wxX11, wxDFB, wxPM...) are also supported but to a lesser extent.
100 Please see the @subpage page_port "platform details page" for more information.
101 
102 There are no CPU speed requirements but the faster (and more) CPU(s) you have,
103 the faster the library will compile. You do need to have enough RAM, especially
104 under Windows platforms, to avoid running out of memory during link phase.
105 Depending on the compiler used, you may need at least 4GB to be able to link.
106 Under all platforms it's recommended to have large amounts of free hard disk
107 space. The exact amount needed depends on the port, compiler and build
108 configurations but at least 1GB and possibly more is required.
109 
110 
111 
112 @section page_introduction_where Where to get wxWidgets and support for it
113 
114 The download links can be found at https://www.wxwidgets.org. The primary
115 download location is https://github.com/wxWidgets/wxWidgets/releases/latest.
116 Additionally, the latest version can always be retrieved from our version
117 control system using Git (https://github.com/wxWidgets/wxWidgets).
118 
119 wxWidgets documentation that you are reading is also available online at
120 http://docs.wxwidgets.org/trunk/ and please also visit our wiki at
121 http://wiki.wxwidgets.org/ for user-contributed contents.
122 
123 And if you have any questions, you can join wxWidgets community using
124 
125 - Web-based <a href="https://forums.wxwidgets.org/">wxForum</a>
126 - <a href="https://www.wxwidgets.org/support/mailing-lists/">Mailing lists</a>
127 - <a href="https://www.wxwidgets.org/support/irc/">IRC Channel</a>
128 - Or asking questions with @c wxwidgets tag on Stack Overflow:
129   https://stackoverflow.com/questions/tagged/wxwidgets
130 
131 */
132