Julian Smart af1337b041 Applied [ 594925 ] Implement wxArtProvider and XRC together
By Robert O'Connor (robertoconnor)

This patch is a draft which successfully allows a wxArtProvider to serve out icons to bitmaps for XRC files.

The syntax to use a wxArtProvider bitmap is:
<bitmap stock_id="wxART_INFORMATION" stock_client="wxART_TOOLBAR">somefallbackicon.png</bitmap>

The bitmap is optional, and will only be used as a fallback image, if the wxArtProvider returned a wxNullBitmap for some reason.

The client attribute, if not specified, currently will be wxART_OTHER. Perhaps there should be a guessing heuristic of it being in a menu node to call wxART_MENU.

Usage of XRC resouces and wxArtProvider together can be seen in an updated /contrib/samples/xrc demo, which is a separate patch.

Search the wx-dev mailing lists for "wxArtProvider" and "XRC" for the full discussions on this feature's API design.

Applied patch [ 594932 ] Extended XRC XML resources sample
By Robert O'Connor (robertoconnor)

This is a more comprehensive introduction to how to get up and running using XRC in your new wxWindows project.

It describes both the basics (for new users) and advanced features. It consists of a demo of dialogs and frames loaded from XRC. Each dialog has a textctrl at the top of the dialog, which walks the new user through that feature.

There are 8 demos:

The 4 basic ones:
-A non-derived dialog, as typically used for an about dialog.
-A derived dialog that loads its resources from an XRC (a frequently-asked question on the mailing lists), and responds to some simple events, including the disable-another-control-via-EVT_UPDATE_UI that is another FAQ, and powerful and simple-to-use feature.
-A XRC reference "Controls" dialog, using a notebook. Each tab has a single control. All XRC handled widgets can be seen at a glance, and how to use them under XRC.
-An uncentered dialog, to demonstrate the easy use of <centered>1</centered> to automatically place a Dialog centered on its parent..

The 4 advanced ones:
-Embedding a custom class into an XRC dialog, by using the "unknown" class.
-Using wxArtProvider to use stock icons from within your your XRC resources.
-Using the platform attribute to selectively show a part of XRC based on the current OS.
-Runtime variable expansion (demo only. Not implemented at this time).

Also:
-The main frame is now demonstrated as being loaded as an XRC.
- The toolbar has longhelp tag demonstrated, and are hooked up to the same events as the menu to show how XRCID() works on the same tool and menuitem XRCID.
-Some custom icons for the demonstration were created, and put into the toolbar and menubar. A custom icon also for the demonstration.
-The example code has been put in 1 class per file (both .cpp and a matching .xrc), to make it much less confusing for a newcomer to figure out what class is what, expecially with all the wx macros for declaration and implementation.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-08-16 11:24:46 +00:00
2002-06-12 14:05:15 +00:00
2002-05-08 13:47:20 +00:00
2002-08-14 11:02:39 +00:00
2002-08-16 02:27:28 +00:00
2002-05-08 13:14:40 +00:00
2002-07-16 12:03:44 +00:00
2002-08-12 22:13:21 +00:00
2002-03-15 09:02:01 +00:00
2000-07-15 19:51:35 +00:00
1999-06-01 16:14:29 +00:00
2002-07-09 06:13:31 +00:00
2002-07-25 13:18:52 +00:00
2002-08-13 12:26:31 +00:00
2002-01-13 13:48:08 +00:00
2002-01-13 13:48:08 +00:00
2002-01-24 21:11:46 +00:00
2001-06-06 16:50:48 +00:00

wxWindows 2.3.3
---------------

*** Please note that this is an UNSTABLE DEVELOPMENT SNAPSHOT.
*** Unless you need the new features and bug fixes, you may wish to
*** use the official 2.2.x stable series.

Welcome to wxWindows 2, a sophisticated cross-platform C++
framework for writing advanced GUI applications using (where
possible) the native controls.

In addition to common and advanced GUI facilities such as
frames, scrolling windows, toolbars, tree controls, icons,
device contexts, printing, splitter windows and so on, there are
wrappers for common file operations, and facilities for writing
TCP/IP applications, thread handling, and more. Where certain
features are not available on a platform, such as MDI and tree
controls on Unix, they are emulated.

A detailed 1700-page reference manual is supplied in HTML, PDF
and Windows Help form: see the docs hierarchy.

For a quick start, point your Web browser at docs/html/index.htm
for a list of important documents and samples.

Changes in this release
-----------------------

Please see changes.txt for details.

Platforms supported
-------------------

wxWindows 2 currently supports the following platforms:

- Windows 95/98/ME, Windows NT, Windows 2000, Windows XP (see msw/winxp.txt)
- Most Unix variants with Motif/Lesstif
- Most Unix variants with GTK+
- MacOS
- Most Unix variants with X11 (beta)
- DOS with MGL (beta)

Most popular C++ compilers are supported; see the install.txt
file for each platform (available via docs/html/index.htm) for details.
See also http://www.wxwindows.org/platform.htm.

Files
-----

The distribution is available in archive formats appropriate to the
target system. Documentation is available mainly in zip format.
Some add-on libraries (such as the Object Graphics Library) are
available in zip form only. In the following, x.y.z represents
the current version number.

wxWindows for GTK distribution
------------------------------

wxGTK-x.y.z.tgz                    wxGTK source distribution. You will
                                   need the HTML, HTB and/or PDF documentation
                                   (see below)
wxGTK-demos-x.y.z.tgz              wxGTK demos source
wxGTK-samples-x.y.z.tgz            wxGTK samples source
wxGTK-x.y.z-0.src.rpm              wxGTK Linux source as an RPM, without manuals
wxGTK-x.y.z-0.i386.rpm             wxGTK Linux binaries as an RPM, without manuals
wxGTK-devel-x.y.z-0.i386.rpm       wxGTK Linux minimum development system as an RPM

wxWindows for Motif distribution
--------------------------------

wxMotif-x.y.z.tgz                  wxMotif source distribution, without
                                   documentation.

wxWindows for X11 distribution
------------------------------

wxX11-x.y.z.tgz                    wxX11 source distribution, without
                                   documentation.

wxWindows for MS Windows distribution
-------------------------------------

setup.exe, setup.w*                Setup files (Windows 95/98, NT)
                                   in floppy-disk-sized chunks
wxMSW-x.y.z-setup.zip              Zip archive containing the
                                   setup files
wxMSW-x.y.z.zip                    Zip archive containing all the
                                   files that are in the setup
                                   distribution

wxWindows for MacOS distribution
--------------------------------

wxMac-x.y.z.zip                    Zip archive containing all
                                   source files (excludes documentation)

As well as the core source, the wxMSW distribution contains:

- Windows HTML Help versions of the documentation (docs/htmlhelp);
- Object Graphics Library, in contrib/src/ogl;
- a Dialog Editor binary;
- a Tex2RTF binary;
- Life! sample binary;
- the JPEG library source;
- the TIFF library source.

Documentation files
-------------------

wxWindows-x.y.z-WinHelp.zip        WinHelp documentation
wxWindows-x.y.z-PDF.zip            Acrobat PDF documentation
wxWindows-x.y.z-HTML.zip           HTML documentation
wxWindows-x.y.z-HTMLHelp.zip       Windows HTML Help documentation
wxWindows-x.y.z-HTB.zip            wxHTML documentation (for
                                   use with the helpview utility)
wxWindows-x.y.z-Word.zip           MS Word documentation (currently,
                                   database class documentation only)
wxWindows-x.y.z-DocSource.zip      Documentation source code (not required)

Add-ons
-------

wxWindows-x.y.z-cw.zip             Metrowerks CodeWarrior 4.1 project files
wxWindows-x.y.z-wat.zip            Watcom C++ project files
wxWindows-x.y.z-vc.zip             Visual C++ project files (in wxMSW distr.)
wxWindows-x.y.z-bc.zip             Borland C++ project files (in wxMSW distr.)
jpeg.zip                           JPEG library (already included
                                   in most distributions)
tiff.zip                           TIFF library (already included
                                   in most distributions)
ogl3.zip                           Optional Object Graphics Library
mmedia.zip                         Optional MMedia library (Motif, GTK, MSW)
stc.zip                            Optional wxStyledTextCtrl library
                                   (Motif, GTK, MSW)
tex2rtf2.zip                       Tex2RTF documentation tool
wxGTK-gl-x.y.z-0.i386.rpm          add-on OpenGL binary as an RPM

Installation
------------

wxWindows 2 needs to be compiled before you can test out
the samples or write your own applications.
For installation information, please see the install.txt file
in the individual directories:

  docs/msw
  docs/gtk
  docs/motif
  docs/mac
  docs/x11
  docs/mgl

Licence information
-------------------

For licensing information, please see the files:

  docs/preamble.txt
  docs/licence.txt
  docs/licendoc.txt
  docs/gpl.txt
  docs/lgpl.txt

Although this may seem complex, it is there to allow authors of
proprietary/commercial applications to use wxWindows in
addition to those writing GPL'ed applications. In summary,
the licence is LGPL plus a clause allowing unrestricted
distribution of application binaries. To answer a FAQ, you
don't have to distribute any source if you wish to write
commercial applications using wxWindows. 

However, if you distribute wxGTK or wxMotif (with Lesstif) version
of your application, don't forget that it is linked against
GTK+ (or Lesstif) which is covered by LGPL *without* exception
notice. Under Linux systems your app is probably linked
against LGPL glibc as well. Please read carefully LGPL, section 6.
which describes conditions for distribution of closed source applications
linked against LGPL library. Basically you should link dynamically and
include source code of LGPL libraries with your product (unless it is
already present in user's system - like glibc usually is).
If compiled with --enable-odbc (Unix only), wxWindows library will 
contain iODBC library which is covered by LGPL.

If you use TIFF image handler, please see src/tiff/COPYRIGHT
for libtiff license details.

If you use JPEG image handler, documentation for your program should
contain following sentence: "This software is based in part on the work of
the Independent JPEG Group". See src/jpeg/README for details.

If you use wxRegEx class on a system without native regular expressions
support (i.e. MS Windows), see src/regex/COPYRIGHT file for Henry Spencer's
regular expression library copyright.

Documentation
-------------

See docs/html/index.htm for an HTML index of the major documents.

See docs/changes.txt for a summary of changes to wxWindows 2.

See docs/tech for an archive of technical notes.

The Windows help files are located in docs/winhelp.
The PDF help files are located in docs/pdf.

Further information
-------------------

The wxWindows Web site is located at:

  http://www.wxwindows.org

The main wxWindows ftp site is at:

  ftp://biolpc22.york.ac.uk/pub

A wxWindows CD-ROM with the latest distribution plus an HTML
front-end and hundreds of MB of compilers, utilities and other
material may be ordered from the CD-ROM page: see the wxWindows
web site.

Have fun!

The wxWindows Team, April 2002

Description
Cross-Platform GUI Library - forked from https://github.com/wxWidgets/wxWidgets
Readme 350 MiB
Languages
C++ 73.7%
Objective-C 11.5%
C 4.6%
Makefile 4.5%
Objective-C++ 1.9%
Other 3.6%