| 1 | wxUniversal README |
| 2 | ================== |
| 3 | |
| 4 | Welcome to wxUniversal! |
| 5 | |
| 6 | Acknowledgements: wxUniversal wouldn't have been written without the |
| 7 | generous support of SciTech Software. Many thanks to Kendall Bennett and |
| 8 | Tom Ryan! |
| 9 | |
| 10 | 0. Introduction |
| 11 | --------------- |
| 12 | |
| 13 | wxUniversal is a port of wxWidgets which implements the various GUI controls |
| 14 | by drawing them itself (using low level wxWidgets classes). Please see |
| 15 | |
| 16 | http://www.wxwidgets.org/wxuniv.htm |
| 17 | |
| 18 | for more details about it. |
| 19 | |
| 20 | The advantage of wxUniversal is that you have precise control over the |
| 21 | controls' appearance (it is not always possible to change all aspects of the |
| 22 | native controls) and the theme support: the same program may be changed to |
| 23 | look completely differently without changing a single line of its code but |
| 24 | just changing the theme. |
| 25 | |
| 26 | Another advantage is that it makes writing ports of wxWidgets for other |
| 27 | platforms (such as OS/2, BeOS or QNX) much simpler, so it is of special |
| 28 | interest to people interested in porting wxWidgets to another platform. |
| 29 | |
| 30 | However, wxUniversal doesn't have a 100% native look and feel unlike the |
| 31 | other wxWidgets ports - this is the price to pay for the extra flexibility. |
| 32 | |
| 33 | 1. Requirements and supported platforms |
| 34 | --------------------------------------- |
| 35 | |
| 36 | wxUniversal is used together with another wxWidgets port which provides the |
| 37 | "low level classes" mentioned above. Currently it can be built with wxMSW, |
| 38 | wxGTK or wxX11. In any case, you should download the sources for the |
| 39 | appropriate toolkit in addition to wxUniversal - in fact, you should download |
| 40 | them first and then unpack wxUniversal in the same directory. |
| 41 | |
| 42 | The requirements for wxUniversal are the same as for the underlying low level |
| 43 | toolkit. |
| 44 | |
| 45 | 2. Installing under Win32 |
| 46 | ------------------------- |
| 47 | |
| 48 | If compiling from CVS, please copy include/wx/univ/setup0.h |
| 49 | to include/wx/univ/setup.h before following these steps. |
| 50 | |
| 51 | a) Using Visual C++ 6.0/7.x |
| 52 | |
| 53 | Follow wxMSW instructions but make sure to choose one of the "Universal" |
| 54 | configurations before building. |
| 55 | |
| 56 | b) Cygwin |
| 57 | |
| 58 | Please refer to the Unix section below |
| 59 | |
| 60 | Note that gcc's precompiled headers do not work on current versions of |
| 61 | Cygwin. If your version of Cygwin is affected you will need to use the |
| 62 | --disable-precomp-headers configure option. |
| 63 | |
| 64 | ** the instructions may be out of date as for wxWidgets 2.5.2+ ** |
| 65 | |
| 66 | c) Other compilers |
| 67 | Borland: |
| 68 | in the wxwindows\src\msw directory run |
| 69 | 'make -f makefile.b32 WXUSINGUNIV=1' to build the library and then run |
| 70 | 'make -f makefile.b32 WXUSINGUNIV=1' in the sample directory which you wish |
| 71 | to build using the wxUniversal widgets. Use 'SET WXTHEME=GTK' [or WIN32 or METAL] |
| 72 | to test the existing themes |
| 73 | |
| 74 | Unfortunately we don't have makefiles for any other compilers yet. |
| 75 | Please contact us if you would like to help us with creating one for the |
| 76 | compiler you use. |
| 77 | |
| 78 | Note that you can use the wxUniversal classes, wxMSW and MicroWindows (from |
| 79 | Century Software) to build a different variant of wxUniversal than that |
| 80 | documented here. Please see docs/univ/readme.txt for further information. |
| 81 | Note that this port is not up-to-date and probably needs work |
| 82 | to compile. |
| 83 | |
| 84 | Note that by default, wxUniv under MSW uses PostScript printing, |
| 85 | not Windows printing. To change to Windows printing, set |
| 86 | wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW to 0 in include/wx/univ/setup.h |
| 87 | before compiling. |
| 88 | |
| 89 | 3. Installing under Unix |
| 90 | ------------------------ |
| 91 | |
| 92 | Please refer to the installation instructions for wxGTK or wxX11. The only |
| 93 | change for wxUniversal is that you must add "--enable-universal" switch to |
| 94 | the configure command line and for wxX11 even this is unnecessary, i.e. it |
| 95 | is enabled by default. |
| 96 | |
| 97 | If compiling from CVS, please copy include/wx/univ/setup0.h |
| 98 | to include/wx/univ/setup.h before configuring. |
| 99 | |
| 100 | 4. Running wxUniv programs |
| 101 | -------------------------- |
| 102 | |
| 103 | wxUniv programs all honour the standard option "--theme" which allows to |
| 104 | specify the theme to be used by name. Currently there are the following |
| 105 | themes: |
| 106 | |
| 107 | a) win32 -- Windows 95 look and feel |
| 108 | b) metal -- based on win32 but with gradient backgrounds |
| 109 | c) gtk -- GTK+ 1.x standard look and feel |
| 110 | |
| 111 | Thus, to launch a program using gtk theme you may do "./program --theme=gtk". |
| 112 | |
| 113 | It is also possible to change the default theme for all wxUniv applications |
| 114 | at once by setting the environment variable WXTHEME to the theme name. |
| 115 | |
| 116 | 5. Documentation and support |
| 117 | ---------------------------- |
| 118 | |
| 119 | Please note that wxUniversal is not as mature as the other wxWidgets ports |
| 120 | and is currently officially in alpha stage. In particular, it is not really |
| 121 | intended for the end users but rather for developers at the current stage and |
| 122 | this is why we don't provide any binaries for it. |
| 123 | |
| 124 | There is no separate documentation for wxUniversal, please refer to wxWidgets |
| 125 | documentation instead. |
| 126 | |
| 127 | Support for wxUniversal is available from the same places as for wxWidgets |
| 128 | itself, namely: |
| 129 | |
| 130 | * Usenet newsgroup comp.soft-sys.wxwindows |
| 131 | |
| 132 | * Mailing lists: see http://lists.wxwindows.org/ for more information |
| 133 | |
| 134 | * WWW page: http://www.wxwidgets.org/ |
| 135 | |
| 136 | |
| 137 | Hope you find wxUniversal useful! |
| 138 | |
| 139 | Vadim Zeitlin |
| 140 | |
| 141 | |
| 142 | This file is accurate for the version 2.3.4 of wxUniversal. It was last |
| 143 | modified on Apr 15, 2002. |
| 144 | |