Finally removes occurences of OnMenuCommand and closes bug #1164678

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36189 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Włodzimierz Skiba
2005-11-16 17:27:38 +00:00
parent 582ca3535a
commit 5e06d749ed
9 changed files with 44 additions and 83 deletions

View File

@@ -38,10 +38,7 @@ individually. This event handler class also holds a label string.
The DiagramCommand class is the key to implementing Undo/Redo. Each instance of DiagramCommand
stores enough information about an operation (create, delete, change colour etc.) to allow
it to carry out (or undo) its command. In DiagramView::OnMenuCommand, when the user initiates the
command, a new DiagramCommand instance is created which is then sent to the document's
command processor (see wxWindows manual for more information about doc/view and command
processing).
it to carry out (or undo) its command.
Apart from menu commands, another way commands are initiated is by the user left-clicking on
the canvas or right-dragging on a node. MyCanvas::OnLeftClick in view.cpp shows how

View File

@@ -62,8 +62,6 @@ class DiagramView: public wxView
wxShape *FindSelectedShape(void);
// void OnMenuCommand(int cmd);
void OnCut(wxCommandEvent& event);
void OnChangeBackgroundColour(wxCommandEvent& event);
void OnEditLabel(wxCommandEvent& event);

View File

@@ -30,8 +30,6 @@ public:
cbSimpleCustomizationPlugin* mpBackRef;
public:
void OnMenuCommand( wxCommandEvent& evt );
void OnCommandEvents( wxCommandEvent& evt );
DECLARE_EVENT_TABLE()
@@ -195,4 +193,3 @@ void cbSimpleCustomizationPlugin::OnMenuItemSelected( wxCommandEvent& event )
// menu-item-selected event is "eaten"
}

View File

@@ -1,3 +1,14 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Name: tdocview.tex
%% Purpose: Document/view overview
%% Author: wxWidgets Team
%% Modified by:
%% Created:
%% RCS-ID: $Id$
%% Copyright: (c) wxWidgets Team
%% License: wxWindows license
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Document/view overview}\label{docviewoverview}
Classes: \helpref{wxDocument}{wxdocument}, \helpref{wxView}{wxview}, \helpref{wxDocTemplate}{wxdoctemplate},\rtfsp
@@ -125,8 +136,7 @@ See the example application in {\tt samples/docview}.
To use the abstract wxView class, you need to derive a new class and override
at least the member functions OnCreate, OnDraw, OnUpdate and OnClose. You will probably
want to override OnMenuCommand to respond to menu commands from the frame containing the
view.
want to respond to menu commands from the frame containing the view.
Use the macros DECLARE\_DYNAMIC\_CLASS and IMPLEMENT\_DYNAMIC\_CLASS in order
to allow the framework to create view objects on demand. When you create
@@ -285,7 +295,7 @@ void wxDocParentFrame::OnExit(wxCommandEvent& WXUNUSED(event))
void wxDocParentFrame::OnMRUFile(wxCommandEvent& event)
{
wxString f(m_docManager->GetHistoryFile(event.GetId() - wxID_FILE1));
if (f != "")
if (!f.empty())
(void)m_docManager->CreateDocument(f, wxDOC_SILENT);
}
\end{verbatim}
@@ -295,9 +305,7 @@ void wxDocParentFrame::OnMRUFile(wxCommandEvent& event)
To allow communication between the application's menus and the
document/view framework, several command identifiers are predefined for you
to use in menus. The framework recognizes them and processes them if you
forward commands from wxFrame::OnMenuCommand (or perhaps from toolbars and
other user interface constructs).
to use in menus.
\begin{itemize}\itemsep=0pt
\item wxID\_OPEN (5000)
@@ -314,5 +322,3 @@ other user interface constructs).
\item wxID\_PRINT\_SETUP (5011)
\item wxID\_PREVIEW (5012)
\end{itemize}

View File

@@ -1,3 +1,14 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Name: view.tex
%% Purpose: wxView documentation
%% Author: wxWidgets Team
%% Modified by:
%% Created:
%% RCS-ID: $Id$
%% Copyright: (c) wxWidgets Team
%% License: wxWindows license
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{\class{wxView}}\label{wxview}
The view class can be used to model the viewing and editing component of
@@ -60,11 +71,10 @@ Destructor. Removes itself from the document's list of views.
Call this from your view frame's OnActivate member to tell the framework which view is
currently active. If your windowing system doesn't call OnActivate, you may need to
call this function from OnMenuCommand or any place where you know the view must
call this function from any place where you know the view must
be active, and the framework will need to get the current view.
The prepackaged view frame wxDocChildFrame calls wxView::Activate from its OnActivate member
and from its OnMenuCommand member.
The prepackaged view frame wxDocChildFrame calls wxView::Activate from its OnActivate member.
This function calls wxView::OnActivateView.
@@ -199,5 +209,3 @@ between the ``Frame'' in the method name and the type of its parameter.
\func{void}{SetViewName}{\param{const wxString\& }{name}}
Sets the view type name. Should only be called by the framework.

View File

@@ -138,7 +138,7 @@ Constructs a window, which can be a child of a frame, dialog or any other non-co
\docparam{parent}{Pointer to a parent window.}
\docparam{id}{Window identifier. If -1, will automatically create an identifier.}
\docparam{id}{Window identifier. If wxID\_ANY, will automatically create an identifier.}
\docparam{pos}{Window position. wxDefaultPosition indicates that wxWidgets
should generate a default position for the window. If using the wxWindow class directly, supply
@@ -1031,7 +1031,7 @@ Returns the identifier of the window.
\wxheading{Remarks}
Each window has an integer identifier. If the application has not provided one
(or the default Id -1) an unique identifier with a negative value will be generated.
(or the default wxID\_ANY) an unique identifier with a negative value will be generated.
\wxheading{See also}
@@ -1815,28 +1815,6 @@ and not navigate to the next control.
%%
%% \helpref{wxValidator}{wxvalidator}, \helpref{wxWindow::TransferDataToWindow}{wxwindowtransferdatatowindow}
%%
%% \membersection{wxWindow::OnMenuCommand}\label{wxwindowonmenucommand}
%%
%% \func{void}{OnMenuCommand}{\param{wxCommandEvent\& }{event}}
%%
%% Called when a menu command is received from a menu bar.
%%
%% \wxheading{Parameters}
%%
%% \docparam{event}{The menu command event. For more information, see \helpref{wxCommandEvent}{wxcommandevent}.}
%%
%% \wxheading{Remarks}
%%
%% A function with this name doesn't actually exist; you can choose any member function to receive
%% menu command events, using the EVT\_COMMAND macro for individual commands or EVT\_COMMAND\_RANGE for
%% a range of commands.
%%
%% \wxheading{See also}
%%
%% \helpref{wxCommandEvent}{wxcommandevent},\rtfsp
%% \helpref{wxWindow::OnMenuHighlight}{wxwindowonmenuhighlight},\rtfsp
%% \helpref{Event handling overview}{eventhandlingoverview}
%%
%% \membersection{wxWindow::OnMenuHighlight}\label{wxwindowonmenuhighlight}
%%
%% \func{void}{OnMenuHighlight}{\param{wxMenuEvent\& }{event}}
@@ -1864,7 +1842,6 @@ and not navigate to the next control.
%% \wxheading{See also}
%%
%% \helpref{wxMenuEvent}{wxmenuevent},\rtfsp
%% \helpref{wxWindow::OnMenuCommand}{wxwindowonmenucommand},\rtfsp
%% \helpref{Event handling overview}{eventhandlingoverview}
%%
%%

View File

@@ -199,7 +199,6 @@ See also <A HREF="wx305.htm#windowstyles">window styles overview</A>.<P>
<A HREF="#wxwindowonkillfocus">wxWindow::OnKillFocus</A><BR>
<A HREF="#wxwindowonidle">wxWindow::OnIdle</A><BR>
<A HREF="#wxwindowoninitdialog">wxWindow::OnInitDialog</A><BR>
<A HREF="#wxwindowonmenucommand">wxWindow::OnMenuCommand</A><BR>
<A HREF="#wxwindowonmenuhighlight">wxWindow::OnMenuHighlight</A><BR>
<A HREF="#wxwindowonmouseevent">wxWindow::OnMouseEvent</A><BR>
<A HREF="#wxwindowonmove">wxWindow::OnMove</A><BR>
@@ -1523,25 +1522,6 @@ the validator that each control has.<P>
<B><FONT COLOR="#FF0000">See also</FONT></B><P>
<A HREF="wx255.htm#wxvalidator">wxValidator</A>, <A HREF="wx260.htm#wxwindowtransferdatatowindow">wxWindow::TransferDataToWindow</A><P>
<HR>
<A NAME="wxwindowonmenucommand"></A>
<H3>wxWindow::OnMenuCommand</H3>
<P>
<B>void</B> <B>OnMenuCommand</B>(<B>wxCommandEvent&amp; </B><I>event</I>)<P>
Called when a menu command is received from a menu bar.<P>
<B><FONT COLOR="#FF0000">Parameters</FONT></B><P>
<I>event</I><UL><UL>
The menu command event. For more information, see <A HREF="wx52.htm#wxcommandevent">wxCommandEvent</A>.</UL></UL>
<P>
<B><FONT COLOR="#FF0000">Remarks</FONT></B><P>
A function with this name doesn't actually exist; you can choose any member function to receive
menu command events, using the EVT_COMMAND macro for individual commands or EVT_COMMAND_RANGE for
a range of commands.<P>
<B><FONT COLOR="#FF0000">See also</FONT></B><P>
<A HREF="wx52.htm#wxcommandevent">wxCommandEvent</A>,
<A HREF="wx260.htm#wxwindowonmenuhighlight">wxWindow::OnMenuHighlight</A>,
<A HREF="wx299.htm#eventhandlingoverview">Event handling overview</A><P>
<HR>
<A NAME="wxwindowonmenuhighlight"></A>
<H3>wxWindow::OnMenuHighlight</H3>
@@ -1564,7 +1544,6 @@ This function was known as <B>OnMenuSelect</B> in earlier versions of wxWindows,
since a selection is normally a left-click action.<P>
<B><FONT COLOR="#FF0000">See also</FONT></B><P>
<A HREF="wx143.htm#wxmenuevent">wxMenuEvent</A>,
<A HREF="wx260.htm#wxwindowonmenucommand">wxWindow::OnMenuCommand</A>,
<A HREF="wx299.htm#eventhandlingoverview">Event handling overview</A><P>

View File

@@ -44,7 +44,6 @@ class MyFrame: public wxFrame
{ public:
wxTextCtrl *textWindow;
MyFrame(wxFrame *frame, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size);
void OnMenuCommand(int id);
void OnCloseWindow(wxCloseEvent& event);
void OnExit(wxCommandEvent& event);

View File

@@ -912,11 +912,11 @@ class View(wx.EvtHandler):
Call this from your view frame's OnActivate member to tell the
framework which view is currently active. If your windowing system
doesn't call OnActivate, you may need to call this function from
OnMenuCommand or any place where you know the view must be active, and
any place where you know the view must be active, and
the framework will need to get the current view.
The prepackaged view frame wxDocChildFrame calls wxView.Activate from
its OnActivate member and from its OnMenuCommand member.
its OnActivate member.
"""
if self.GetDocument() and self.GetDocumentManager():
self.OnActivateView(activate, self, self.GetDocumentManager().GetCurrentView())