]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/menu.tex
new wxMenu(Bar) dynamic menu(bar) management functions documented
[wxWidgets.git] / docs / latex / wx / menu.tex
1 \section{\class{wxMenu}}\label{wxmenu}
2
3 A menu is a popup (or pull down) list of items, one of which may be
4 selected before the menu goes away (clicking elsewhere dismisses the
5 menu). Menus may be used to construct either menu bars or popup menus.
6
7 A menu item has an integer ID associated with it which can be used to
8 identify the selection, or to change the menu item in some way.
9
10 \wxheading{Derived from}
11
12 \helpref{wxEvtHandler}{wxevthandler}\\
13 \helpref{wxObject}{wxobject}
14
15 \wxheading{Include files}
16
17 <wx/menu.h>
18
19 \wxheading{Event handling}
20
21 If the menu is part of a menubar, then \helpref{wxMenuBar}{wxmenubar} event processing is used.
22
23 With a popup menu, there is a variety of ways to handle a menu selection event
24 (wxEVT\_COMMAND\_MENU\_SELECTED).
25
26 \begin{enumerate}\itemsep=0pt
27 \item Derive a new class from wxMenu and define event table entries using the EVT\_MENU macro.
28 \item Set a new event handler for wxMenu, using an object whose class has EVT\_MENU entries.
29 \item Provide EVT\_MENU handlers in the window which pops up the menu, or in an ancestor of
30 this window.
31 \item Define a callback of type wxFunction, which you pass to the wxMenu constructor.
32 The callback takes a reference to the menu, and a reference to a
33 \helpref{wxCommandEvent}{wxcommandevent}. This method is deprecated and should
34 not be used in the new code, it is provided for backwards compatibility only.
35 \end{enumerate}
36
37 \wxheading{See also}
38
39 \helpref{wxMenuBar}{wxmenubar}, \helpref{wxWindow::PopupMenu}{wxwindowpopupmenu},\rtfsp
40 \helpref{Event handling overview}{eventhandlingoverview}
41
42 \latexignore{\rtfignore{\wxheading{Members}}}
43
44 \membersection{wxMenu::wxMenu}\label{wxmenuconstr}
45
46 \func{}{wxMenu}{\param{const wxString\& }{title = ""}, \param{long}{ style = 0}}
47
48 Constructs a wxMenu object.
49
50 \wxheading{Parameters}
51
52 \docparam{title}{A title for the popup menu: the empty string denotes no title.}
53
54 \docparam{style}{If set to \tt{wxMENU\_TEAROFF}, the menu will be detachable.}
55
56
57 \func{}{wxMenu}{\param{long}{ style}}
58
59 Constructs a wxMenu object.
60
61 \wxheading{Parameters}
62
63 \docparam{style}{If set to \tt{wxMENU\_TEAROFF}, the menu will be detachable.}
64
65 \membersection{wxMenu::\destruct{wxMenu}}
66
67 \func{}{\destruct{wxMenu}}{\void}
68
69 Destructor, destroying the menu.
70
71 Note: under Motif, a popup menu must have a valid parent (the window
72 it was last popped up on) when being destroyed. Therefore, make sure
73 you delete or re-use the popup menu {\it before} destroying the
74 parent window. Re-use in this context means popping up the menu on
75 a different window from last time, which causes an implicit destruction
76 and recreation of internal data structures.
77
78 \membersection{wxMenu::Append}\label{wxmenuappend}
79
80 \func{void}{Append}{\param{int}{ id}, \param{const wxString\& }{ item}, \param{const wxString\& }{helpString = ""},\rtfsp
81 \param{const bool}{ checkable = FALSE}}
82
83 Adds a string item to the end of the menu.
84
85 \func{void}{Append}{\param{int}{ id}, \param{const wxString\& }{ item}, \param{wxMenu *}{subMenu},\rtfsp
86 \param{const wxString\& }{helpString = ""}}
87
88 Adds a pull-right submenu to the end of the menu.
89
90 \func{void}{Append}{\param{wxMenuItem*}{ menuItem}}
91
92 Adds a menu item object. This is the most generic variant of Append() method
93 because it may be used for both items (including separators) and submenus and
94 because you can also specify various extra properties of a menu item this way,
95 such as bitmaps and fonts.
96
97 \wxheading{Parameters}
98
99 \docparam{id}{The menu command identifier.}
100
101 \docparam{item}{The string to appear on the menu item.}
102
103 \docparam{menu}{Pull-right submenu.}
104
105 \docparam{checkable}{If TRUE, this item is checkable.}
106
107 \docparam{helpString}{An optional help string associated with the item.
108 By default, \helpref{wxFrame::OnMenuHighlight}{wxframeonmenuhighlight} displays
109 this string in the status line.}
110
111 \docparam{menuItem}{A menuitem object. It will be owned by the wxMenu object after this function
112 is called, so do not delete it yourself.}
113
114 \wxheading{Remarks}
115
116 This command can be used after the menu has been shown, as well as on initial
117 creation of a menu or menubar.
118
119 \wxheading{See also}
120
121 \helpref{wxMenu::AppendSeparator}{wxmenuappendseparator},\rtfsp
122 \helpref{wxMenu::Insert}{wxmenuinsert},\rtfsp
123 \helpref{wxMenu::SetLabel}{wxmenusetlabel}, \helpref{wxMenu::GetHelpString}{wxmenugethelpstring},\rtfsp
124 \helpref{wxMenu::SetHelpString}{wxmenusethelpstring}, \helpref{wxMenuItem}{wxmenuitem}
125
126 \pythonnote{In place of a single overloaded method name, wxPython
127 implements the following methods:\par
128 \indented{2cm}{\begin{twocollist}
129 \twocolitem{\bf{Append(id, string, helpStr="", checkable=FALSE)}}{}
130 \twocolitem{\bf{AppendMenu(id, string, aMenu, helpStr="")}}{}
131 \twocolitem{\bf{AppendItem(aMenuItem)}}{}
132 \end{twocollist}}
133 }
134
135 \membersection{wxMenu::AppendSeparator}\label{wxmenuappendseparator}
136
137 \func{void}{AppendSeparator}{\void}
138
139 Adds a separator to the end of the menu.
140
141 \wxheading{See also}
142
143 \helpref{wxMenu::Append}{wxmenuappend}
144
145 \membersection{wxMenu::Break}\label{wxmenubreak}
146
147 \func{void}{Break}{\void}
148
149 Inserts a break in a menu, causing the next appended item to appear in a new column.
150
151 \membersection{wxMenu::Check}\label{wxmenucheck}
152
153 \func{void}{Check}{\param{int}{ id}, \param{const bool}{ check}}
154
155 Checks or unchecks the menu item.
156
157 \wxheading{Parameters}
158
159 \docparam{id}{The menu item identifier.}
160
161 \docparam{check}{If TRUE, the item will be checked, otherwise it will be unchecked.}
162
163 \wxheading{See also}
164
165 \helpref{wxMenu::IsChecked}{wxmenuischecked}
166
167 \membersection{wxMenu::Delete}\label{wxmenudelete}
168
169 \func{void}{Delete}{\param{int }{id}}
170
171 \func{void}{Delete}{\param{wxMenuItem *}{item}}
172
173 Deletes the menu item from the menu. If the item is a submenu, it will
174 {\bf not} be deleted. Use \helpref{Destroy}{wxmenudestroy} if you want to
175 delete a submenu.
176
177 \wxheading{Parameters}
178
179 \docparam{id}{Id of the menu item to be deleted.}
180
181 \docparam{item}{Menu item to be deleted.}
182
183 \wxheading{See also}
184
185 \helpref{wxMenu::FindItem}{wxmenufinditem},\rtfsp
186 \helpref{wxMenu::Destroy}{wxmenudestroy},\rtfsp
187 \helpref{wxMenu::Remove}{wxmenuremove}
188
189 \membersection{wxMenu::Destroy}\label{wxmenudestroy}
190
191 \func{void}{Destroy}{\param{int }{id}}
192
193 \func{void}{Destroy}{\param{wxMenuItem *}{item}}
194
195 Deletes the menu item from the menu. If the item is a submenu, it will
196 be deleted. Use \helpref{Remove}{wxmenuremove} if you want to keep the submenu
197 (for example, to reuse it later).
198
199 \wxheading{Parameters}
200
201 \docparam{id}{Id of the menu item to be deleted.}
202
203 \docparam{item}{Menu item to be deleted.}
204
205 \wxheading{See also}
206
207 \helpref{wxMenu::FindItem}{wxmenufinditem},\rtfsp
208 \helpref{wxMenu::Deletes}{wxmenudelete},\rtfsp
209 \helpref{wxMenu::Remove}{wxmenuremove}
210
211 \membersection{wxMenu::Enable}\label{wxmenuenable}
212
213 \func{void}{Enable}{\param{int}{ id}, \param{const bool}{ enable}}
214
215 Enables or disables (greys out) a menu item.
216
217 \wxheading{Parameters}
218
219 \docparam{id}{The menu item identifier.}
220
221 \docparam{enable}{TRUE to enable the menu item, FALSE to disable it.}
222
223 \wxheading{See also}
224
225 \helpref{wxMenu::IsEnabled}{wxmenuisenabled}
226
227 \membersection{wxMenu::FindItem}\label{wxmenufinditem}
228
229 \constfunc{int}{FindItem}{\param{const wxString\& }{itemString}}
230
231 Finds the menu item id for a menu item string.
232
233 \wxheading{Parameters}
234
235 \docparam{itemString}{Menu item string to find.}
236
237 \wxheading{Return value}
238
239 Menu item identifier, or wxNOT\_FOUND if none is found.
240
241 \wxheading{Remarks}
242
243 Any special menu codes are stripped out of source and target strings
244 before matching.
245
246 \wxheading{See also}
247
248 \helpref{wxMenu::FindItem}{wxmenufinditem}
249
250 \membersection{wxMenu::FindItem}\label{wxmenufinditem}
251
252 \constfunc{wxMenuItem *}{FindItem}{\param{int}{ id}, \param{wxMenu **}{menu = NULL}}
253
254 Finds the menu item object associated with the given menu item identifier and,
255 optionally, the (sub)menu it belongs to.
256
257 \wxheading{Parameters}
258
259 \docparam{id}{Menu item identifier.}
260
261 \docparam{menu}{If the pointer is not NULL, it will be filled with the items
262 parent menu (if the item was found)}
263
264 \wxheading{Return value}
265
266 Returns the menu item object, or NULL if it is not found.
267
268 \wxheading{See also}
269
270 \helpref{wxMenu::FindItem}{wxmenufinditem}
271
272 \membersection{wxMenu::GetHelpString}\label{wxmenugethelpstring}
273
274 \constfunc{wxString}{GetHelpString}{\param{int}{ id}}
275
276 Returns the help string associated with a menu item.
277
278 \wxheading{Parameters}
279
280 \docparam{id}{The menu item identifier.}
281
282 \wxheading{Return value}
283
284 The help string, or the empty string if there is no help string or the
285 item was not found.
286
287 \wxheading{See also}
288
289 \helpref{wxMenu::SetHelpString}{wxmenusethelpstring}, \helpref{wxMenu::Append}{wxmenuappend}
290
291 \membersection{wxMenu::GetLabel}\label{wxmenugetlabel}
292
293 \constfunc{wxString}{GetLabel}{\param{int}{ id}}
294
295 Returns a menu item label.
296
297 \wxheading{Parameters}
298
299 \docparam{id}{The menu item identifier.}
300
301 \wxheading{Return value}
302
303 The item label, or the empty string if the item was not found.
304
305 \wxheading{See also}
306
307 \helpref{wxMenu::SetLabel}{wxmenusetlabel}
308
309 \membersection{wxMenu::GetMenuItemCount}\label{wxmenugetmenuitemcount}
310
311 \constfunc{size\_t}{GetMenuItemCount}{\void}
312
313 Returns the number of items in the menu.
314
315 \membersection{wxMenu::GetMenuItems}\label{wxmenugetmenuitems}
316
317 \constfunc{wxMenuItemList\&}{GetMenuItems}{\void}
318
319 Returns the list of items in the menu. wxMenuItemList is a pseudo-template
320 list class containing wxMenuItem pointers.
321
322 \membersection{wxMenu::GetTitle}\label{wxmenugettitle}
323
324 \constfunc{wxString}{GetTitle}{\void}
325
326 Returns the title of the menu.
327
328 \wxheading{Remarks}
329
330 This is relevant only to popup menus.
331
332 \wxheading{See also}
333
334 \helpref{wxMenu::SetTitle}{wxmenusettitle}
335
336 \membersection{wxMenu::Insert}\label{wxmenuinsert}
337
338 \func{bool}{Insert}{\param{size\_t }{pos}, \param{wxMenuItem *}{item}}
339
340 Inserts the given {\it item} before the position {\it pos}. Inserting the item
341 at the position \helpref{GetMenuItemCount}{wxmenugetmenuitemcount} is the same
342 as appending it.
343
344 \wxheading{See also}
345
346 \helpref{wxMenu::Append}{wxmenuappend}
347
348 \membersection{wxMenu::IsChecked}\label{wxmenuischecked}
349
350 \constfunc{bool}{IsChecked}{\param{int}{ id}}
351
352 Determines whether a menu item is checked.
353
354 \wxheading{Parameters}
355
356 \docparam{id}{The menu item identifier.}
357
358 \wxheading{Return value}
359
360 TRUE if the menu item is checked, FALSE otherwise.
361
362 \wxheading{See also}
363
364 \helpref{wxMenu::Check}{wxmenucheck}
365
366 \membersection{wxMenu::IsEnabled}\label{wxmenuisenabled}
367
368 \constfunc{bool}{IsEnabled}{\param{int}{ id}}
369
370 Determines whether a menu item is enabled.
371
372 \wxheading{Parameters}
373
374 \docparam{id}{The menu item identifier.}
375
376 \wxheading{Return value}
377
378 TRUE if the menu item is enabled, FALSE otherwise.
379
380 \wxheading{See also}
381
382 \helpref{wxMenu::Enable}{wxmenuenable}
383
384 \membersection{wxMenu::Remove}\label{wxmenuremove}
385
386 \func{wxMenuItem *}{Remove}{\param{int }{id}}
387
388 \func{wxMenuItem *}{Remove}{\param{wxMenuItem *}{item}}
389
390 Removes the menu item from the menu but doesn't delete the associated C++
391 object. This allows to reuse the same item later by adding it back to the menu
392 (especially useful with submenus).
393
394 \wxheading{Parameters}
395
396 \docparam{id}{The identifier of the menu item to remove.}
397
398 \docparam{item}{The menu item to remove.}
399
400 \wxheading{Return value}
401
402 The item which was detached from the menu.
403
404 \membersection{wxMenu::SetHelpString}\label{wxmenusethelpstring}
405
406 \func{void}{SetHelpString}{\param{int}{ id}, \param{const wxString\& }{helpString}}
407
408 Sets an item's help string.
409
410 \wxheading{Parameters}
411
412 \docparam{id}{The menu item identifier.}
413
414 \docparam{helpString}{The help string to set.}
415
416 \wxheading{See also}
417
418 \helpref{wxMenu::GetHelpString}{wxmenugethelpstring}
419
420 \membersection{wxMenu::SetLabel}\label{wxmenusetlabel}
421
422 \func{void}{SetLabel}{\param{int}{ id}, \param{const wxString\& }{label}}
423
424 Sets the label of a menu item.
425
426 \wxheading{Parameters}
427
428 \docparam{id}{The menu item identifier.}
429
430 \docparam{label}{The menu item label to set.}
431
432 \wxheading{See also}
433
434 \helpref{wxMenu::Append}{wxmenuappend}, \helpref{wxMenu::GetLabel}{wxmenugetlabel}
435
436 \membersection{wxMenu::SetTitle}\label{wxmenusettitle}
437
438 \func{void}{SetTitle}{\param{const wxString\& }{title}}
439
440 Sets the title of the menu.
441
442 \wxheading{Parameters}
443
444 \docparam{title}{The title to set.}
445
446 \wxheading{Remarks}
447
448 This is relevant only to popup menus.
449
450 \wxheading{See also}
451
452 \helpref{wxMenu::SetTitle}{wxmenusettitle}
453
454 \membersection{wxMenu::UpdateUI}\label{wxmenuupdateui}
455
456 \constfunc{void}{UpdateUI}{\param{wxEvtHandler*}{ source = NULL}}
457
458 Sends events to {\it source} (or owning window if NULL) to update the
459 menu UI. This is called just before the menu is popped up with \helpref{wxWindow::PopupMenu}{wxwindowpopupmenu}, but
460 the application may call it at other times if required.
461
462 \wxheading{See also}
463
464 \helpref{wxUpdateUIEvent}{wxupdateuievent}
465
466 \section{\class{wxMenuBar}}\label{wxmenubar}
467
468 A menu bar is a series of menus accessible from the top of a frame.
469
470 \wxheading{Derived from}
471
472 \helpref{wxEvtHandler}{wxevthandler}\\
473 \helpref{wxObject}{wxobject}
474
475 \wxheading{Include files}
476
477 <wx/menu.h>
478
479 \wxheading{Event handling}
480
481 To respond to a menu selection, provide a handler for EVT\_MENU, in the frame
482 that contains the menu bar. If you have a toolbar which uses the same identifiers
483 as your EVT\_MENU entries, events from the toolbar will also be processed by your
484 EVT\_MENU event handlers.
485
486 Note that menu commands (and UI update events for menus) are first sent to
487 the focus window within the frame. If no window within the frame has the focus,
488 then the events are sent directly to the frame. This allows command and UI update
489 handling to be processed by specific windows and controls, and not necessarily
490 by the application frame.
491
492 \wxheading{See also}
493
494 \helpref{wxMenu}{wxmenu}, \helpref{Event handling overview}{eventhandlingoverview}
495
496 \latexignore{\rtfignore{\wxheading{Members}}}
497
498 \membersection{wxMenuBar::wxMenuBar}\label{wxmenubarconstr}
499
500 \func{void}{wxMenuBar}{\void}
501
502 Default constructor.
503
504 \func{void}{wxMenuBar}{\param{int}{ n}, \param{wxMenu*}{ menus[]}, \param{const wxString }{titles[]}}
505
506 Construct a menu bar from arrays of menus and titles.
507
508 \wxheading{Parameters}
509
510 \docparam{n}{The number of menus.}
511
512 \docparam{menus}{An array of menus. Do not use this array again - it now belongs to the
513 menu bar.}
514
515 \docparam{titles}{An array of title strings. Deallocate this array after creating the menu bar.}
516
517 \pythonnote{Only the default constructor is supported in wxPython.
518 Use wxMenuBar.Append instead.}
519
520 \membersection{wxMenuBar::\destruct{wxMenuBar}}
521
522 \func{void}{\destruct{wxMenuBar}}{\void}
523
524 Destructor, destroying the menu bar and removing it from the parent frame (if any).
525
526 \membersection{wxMenuBar::Append}\label{wxmenubarappend}
527
528 \func{bool}{Append}{\param{wxMenu *}{menu}, \param{const wxString\& }{title}}
529
530 Adds the item to the end of the menu bar.
531
532 \wxheading{Parameters}
533
534 \docparam{menu}{The menu to add. Do not deallocate this menu after calling {\bf Append}.}
535
536 \docparam{title}{The title of the menu.}
537
538 \wxheading{Return value}
539
540 TRUE on success, FALSE if an error occured.
541
542 \wxheading{See also}
543
544 \helpref{wxMenuBar::Insert}{wxmenubarinsert}
545
546 \membersection{wxMenuBar::Check}\label{wxmenubarcheck}
547
548 \func{void}{Check}{\param{int}{ id}, \param{const bool}{ check}}
549
550 Checks or unchecks a menu item.
551
552 \wxheading{Parameters}
553
554 \docparam{id}{The menu item identifier.}
555
556 \docparam{check}{If TRUE, checks the menu item, otherwise the item is unchecked.}
557
558 \wxheading{Remarks}
559
560 Only use this when the menu bar has been associated
561 with a frame; otherwise, use the wxMenu equivalent call.
562
563 \membersection{wxMenuBar::Enable}\label{wxmenubarenable}
564
565 \func{void}{Enable}{\param{int}{ id}, \param{const bool}{ enable}}
566
567 Enables or disables (greys out) a menu item.
568
569 \wxheading{Parameters}
570
571 \docparam{id}{The menu item identifier.}
572
573 \docparam{enable}{TRUE to enable the item, FALSE to disable it.}
574
575 \wxheading{Remarks}
576
577 Only use this when the menu bar has been
578 associated with a frame; otherwise, use the wxMenu equivalent call.
579
580 \membersection{wxMenuBar::EnableTop}\label{wxmenubarenabletop}
581
582 \func{void}{EnableTop}{\param{int}{ pos}, \param{const bool}{ enable}}
583
584 Enables or disables a whole menu.
585
586 \wxheading{Parameters}
587
588 \docparam{pos}{The position of the menu, starting from zero.}
589
590 \docparam{enable}{TRUE to enable the menu, FALSE to disable it.}
591
592 \wxheading{Remarks}
593
594 Only use this when the menu bar has been
595 associated with a frame.
596
597 \membersection{wxMenuBar::FindMenuItem}\label{wxmenubarfindmenuitem}
598
599 \constfunc{int}{FindMenuItem}{\param{const wxString\& }{menuString}, \param{const wxString\& }{itemString}}
600
601 Finds the menu item id for a menu name/menu item string pair.
602
603 \wxheading{Parameters}
604
605 \docparam{menuString}{Menu title to find.}
606
607 \docparam{itemString}{Item to find.}
608
609 \wxheading{Return value}
610
611 The menu item identifier, or wxNOT\_FOUND if none was found.
612
613 \wxheading{Remarks}
614
615 Any special menu codes are stripped out of source and target strings
616 before matching.
617
618 \membersection{wxMenuBar::FindItem}\label{wxmenubarfinditem}
619
620 \constfunc{wxMenuItem *}{FindItem}{\param{int}{ id}, \param{wxMenu}{ **menu = NULL}}
621
622 Finds the menu item object associated with the given menu item identifier.
623
624 \wxheading{Parameters}
625
626 \docparam{id}{Menu item identifier.}
627
628 \docparam{menu}{If not NULL, menu will get set to the associated menu.}
629
630 \wxheading{Return value}
631
632 The found menu item object, or NULL if one was not found.
633
634 \membersection{wxMenuBar::GetHelpString}\label{wxmenubargethelpstring}
635
636 \constfunc{wxString}{GetHelpString}{\param{int}{ id}}
637
638 Gets the help string associated with the menu item identifer.
639
640 \wxheading{Parameters}
641
642 \docparam{id}{The menu item identifier.}
643
644 \wxheading{Return value}
645
646 The help string, or the empty string if there was no help string or the menu item
647 was not found.
648
649 \wxheading{See also}
650
651 \helpref{wxMenuBar::SetHelpString}{wxmenubarsethelpstring}
652
653 \membersection{wxMenuBar::GetLabel}\label{wxmenubargetlabel}
654
655 \constfunc{wxString}{GetLabel}{\param{int}{ id}}
656
657 Gets the label associated with a menu item.
658
659 \wxheading{Parameters}
660
661 \docparam{id}{The menu item identifier.}
662
663 \wxheading{Return value}
664
665 The menu item label, or the empty string if the item was not found.
666
667 \wxheading{Remarks}
668
669 Use only after the menubar has been associated with a frame.
670
671 \membersection{wxMenuBar::GetLabelTop}\label{wxmenubargetlabeltop}
672
673 \constfunc{wxString}{GetLabelTop}{\param{int}{ pos}}
674
675 Returns the label of a top-level menu.
676
677 \wxheading{Parameters}
678
679 \docparam{pos}{Position of the menu on the menu bar, starting from zero.}
680
681 \wxheading{Return value}
682
683 The menu label, or the empty string if the menu was not found.
684
685 \wxheading{Remarks}
686
687 Use only after the menubar has been associated with a frame.
688
689 \wxheading{See also}
690
691 \helpref{wxMenuBar::SetLabelTop}{wxmenubarsetlabeltop}
692
693 \membersection{wxMenuBar::GetMenu}\label{wxmenubargetmenu}
694
695 \constfunc{wxMenu*}{GetMenu}{\param{int}{ menuIndex}}
696
697 Returns the menu at {\it menuIndex} (zero-based).
698
699 \membersection{wxMenuBar::GetMenuCount}\label{wxmenubargetmenucount}
700
701 \constfunc{int}{GetMenuCount}{\void}
702
703 Returns the number of menus in this menubar.
704
705 \membersection{wxMenuBar::Insert}{wxmenubarinsert}
706
707 \func{bool}{Insert}{\param{size\_t }{pos}, \param{wxMenu *}{menu}, \param{const wxString\& }{title}}
708
709 Inserts the menu at the given position into the menu bar. Inserting menu at
710 position $0$ will insert it in the very beginning of it, inserting at position
711 \helpref{GetMenuCount()}{wxmenubargetmenucount} is the same as calling
712 \helpref{Append()}{wxmenubarappend}.
713
714 \wxheading{Parameters}
715
716 \docparam{pos}{The position of the new menu in the menu bar}
717
718 \docparam{menu}{The menu to add. wxMenuBar owns the menu and will free it.}
719
720 \docparam{title}{The title of the menu.}
721
722 \wxheading{Return value}
723
724 TRUE on success, FALSE if an error occured.
725
726 \wxheading{See also}
727
728 \helpref{wxMenuBar::Append}{wxmenubarappend}
729
730 \membersection{wxMenuBar::IsChecked}\label{wxmenubarischecked}
731
732 \constfunc{bool}{IsChecked}{\param{int}{ id}}
733
734 Determines whether an item is checked.
735
736 \wxheading{Parameters}
737
738 \docparam{id}{The menu item identifier.}
739
740 \wxheading{Return value}
741
742 TRUE if the item was found and is checked, FALSE otherwise.
743
744 \membersection{wxMenuBar::IsEnabled}\label{wxmenubarisenabled}
745
746 \constfunc{bool}{IsEnabled}{\param{int}{ id}}
747
748 Determines whether an item is enabled.
749
750 \wxheading{Parameters}
751
752 \docparam{id}{The menu item identifier.}
753
754 \wxheading{Return value}
755
756 TRUE if the item was found and is enabled, FALSE otherwise.
757
758 \membersection{wxMenuBar::Refresh}\label{wxmenubarrefresh}
759
760 \func{void}{Refresh}{\void}
761
762 Redraw the menu bar
763
764 \membersection{wxMenuBar::Remove}\label{wxmenubarremove}
765
766 \func{wxMenu *}{Remove}{\param{size\_t }{pos}}
767
768 Removes the menu from the menu bar and returns the menu object - the caller is
769 reposnbile for deleting it. This function may be used together with
770 \helpref{wxMenuBar::Insert}{wxmenubarinsert} to change the menubar
771 dynamically.
772
773 \wxheading{See also}
774
775 \helpref{wxMenuBar::Replace}[wxmenubarreplace}
776
777 \membersection{wxMenuBar::Replace}\label{wxmenubarreplace}
778
779 \func{wxMenu *}{Replace}{\param{size\_t }{pos}, \param{wxMenu *}{menu}, \param{const wxString\& }{title}}
780
781 Replaces the menu at givenm position with another one.
782
783 \wxheading{Parameters}
784
785 \docparam{pos}{The position of the new menu in the menu bar}
786
787 \docparam{menu}{The menu to add.}
788
789 \docparam{title}{The title of the menu.}
790
791 \wxheading{Return value}
792
793 The menu which was previously at the position {\it pos}. The caller is
794 responsible for deleting it.
795
796 \wxheading{See also}
797
798 \helpref{wxMenuBar::Insert}{wxmenubarinsert},\rtfsp
799 \helpref{wxMenuBar::Remove}{wxmenubarremove}
800
801 \membersection{wxMenuBar::IsChecked}\label{wxmenubarischecked}
802
803 \membersection{wxMenuBar::SetHelpString}\label{wxmenubarsethelpstring}
804
805 \func{void}{SetHelpString}{\param{int}{ id}, \param{const wxString\& }{helpString}}
806
807 Sets the help string associated with a menu item.
808
809 \wxheading{Parameters}
810
811 \docparam{id}{Menu item identifier.}
812
813 \docparam{helpString}{Help string to associate with the menu item.}
814
815 \wxheading{See also}
816
817 \helpref{wxMenuBar::GetHelpString}{wxmenubargethelpstring}
818
819 \membersection{wxMenuBar::SetLabel}\label{wxmenubarsetlabel}
820
821 \func{void}{SetLabel}{\param{int}{ id}, \param{const wxString\& }{label}}
822
823 Sets the label of a menu item.
824
825 \wxheading{Parameters}
826
827 \docparam{id}{Menu item identifier.}
828
829 \docparam{label}{Menu item label.}
830
831 \wxheading{Remarks}
832
833 Use only after the menubar has been associated with a frame.
834
835 \wxheading{See also}
836
837 \helpref{wxMenuBar::GetLabel}{wxmenubargetlabel}
838
839 \membersection{wxMenuBar::SetLabelTop}\label{wxmenubarsetlabeltop}
840
841 \func{void}{SetLabelTop}{\param{int}{ pos}, \param{const wxString\& }{label}}
842
843 Sets the label of a top-level menu.
844
845 \wxheading{Parameters}
846
847 \docparam{pos}{The position of a menu on the menu bar, starting from zero.}
848
849 \docparam{label}{The menu label.}
850
851 \wxheading{Remarks}
852
853 Use only after the menubar has been associated with a frame.
854
855 \wxheading{See also}
856
857 \helpref{wxMenuBar::GetLabelTop}{wxmenubargetlabeltop}
858