]>
Commit | Line | Data |
---|---|---|
15b6757b | 1 | ///////////////////////////////////////////////////////////////////////////// |
2cd3cc94 | 2 | // Name: toolbar.h |
15b6757b FM |
3 | // Purpose: topic overview |
4 | // Author: wxWidgets team | |
5 | // RCS-ID: $Id$ | |
526954c5 | 6 | // Licence: wxWindows licence |
15b6757b FM |
7 | ///////////////////////////////////////////////////////////////////////////// |
8 | ||
880efa2a | 9 | /** |
36c9828f | 10 | |
2cd3cc94 BP |
11 | @page overview_toolbar Toolbar Overview |
12 | ||
831e1028 | 13 | @tableofcontents |
30738aae | 14 | |
2cd3cc94 BP |
15 | The toolbar family of classes allows an application to use toolbars in a |
16 | variety of configurations and styles. | |
17 | ||
18 | The toolbar is a popular user interface component and contains a set of bitmap | |
19 | buttons or toggles. A toolbar gives faster access to an application's | |
20 | facilities than menus, which have to be popped up and selected rather | |
21 | laboriously. | |
22 | ||
23 | Instead of supplying one toolbar class with a number of different | |
24 | implementations depending on platform, wxWidgets separates out the classes. | |
25 | This is because there are a number of different toolbar styles that you may | |
26 | wish to use simultaneously, and also, future toolbar implementations will | |
27 | emerge which cannot all be shoe-horned into the one class. | |
28 | ||
29 | For each platform, the symbol wxToolBar is defined to be one of the specific | |
30 | toolbar classes. | |
31 | ||
32 | The following is a summary of the toolbar classes and their differences: | |
33 | ||
34 | @li wxToolBarBase: This is a base class with pure virtual functions, and should | |
35 | not be used directly. | |
36 | @li wxToolBarSimple: A simple toolbar class written entirely with generic | |
37 | wxWidgets functionality. A simple 3D effect for buttons is possible, but it | |
38 | is not consistent with the Windows look and feel. This toolbar can scroll, | |
39 | and you can have arbitrary numbers of rows and columns. | |
40 | @li wxToolBarMSW: This class implements an old-style Windows toolbar, only on | |
41 | Windows. There are small, three-dimensional buttons, which do not | |
42 | (currently) reflect the current Windows colour settings: the buttons are | |
43 | grey. This is the default wxToolBar on 16-bit windows. | |
44 | @li wxToolBar95: Uses the native Windows 95 toolbar class. It dynamically | |
45 | adjusts it's background and button colours according to user colour | |
46 | settings. CreateTools must be called after the tools have been added. No | |
47 | absolute positioning is supported but you can specify the number of rows, | |
48 | and add tool separators with @c AddSeparator. Tooltips are supported. | |
49 | @c OnRightClick is not supported. This is the default wxToolBar on Windows | |
50 | 95, Windows NT 4 and above. With the style wxTB_FLAT, the flat toolbar look | |
51 | is used, with a border that is highlighted when the cursor moves over the | |
52 | buttons. | |
53 | ||
54 | A toolbar might appear as a single row of images under the menubar, or it might | |
55 | be in a separate frame layout in several rows and columns. The class handles | |
56 | the layout of the images, unless explicit positioning is requested. | |
57 | ||
58 | A tool is a bitmap which can either be a button (there is no 'state', it just | |
59 | generates an event when clicked) or it can be a toggle. If a toggle, a second | |
60 | bitmap can be provided to depict the 'on' state; if the second bitmap is | |
61 | omitted, either the inverse of the first bitmap will be used (for monochrome | |
62 | displays) or a thick border is drawn around the bitmap (for colour displays | |
63 | where inverting will not have the desired result). | |
64 | ||
65 | The Windows-specific toolbar classes expect 16-colour bitmaps that are 16 | |
66 | pixels wide and 15 pixels high. If you want to use a different size, call | |
67 | @c SetToolBitmapSize as the demo shows, before adding tools to the button bar. | |
68 | Don't supply more than one bitmap for each tool, because the toolbar generates | |
69 | all three images (normal, depressed, and checked) from the single bitmap you | |
70 | give it. | |
71 | ||
72 | ||
73 | @section overview_toolbar_library Using the Toolbar Library | |
74 | ||
75 | Include @c "wx/toolbar.h", or if using a class directly, one of: | |
76 | ||
77 | - @c "wx/msw/tbarmsw.h" for wxToolBarMSW | |
78 | - @c "wx/msw/tbar95.h" for wxToolBar95 | |
79 | - @c "wx/tbarsmpl.h" for wxToolBarSimple | |
80 | ||
81 | An example of using a toolbar is given in the "toolbar" sample. | |
82 | ||
83 | */ |