\wxheading{Include files}
-<wx/docview.h>
+<wx/cmdproc.h>
\wxheading{See also}
\latexignore{\rtfignore{\wxheading{Members}}}
-\membersection{wxCommandProcessor::wxCommandProcessor}
-\func{}{wxCommandProcessor}{\param{int}{ maxCommands = 100}}
+\membersection{wxCommandProcessor::wxCommandProcessor}\label{wxcommandprocessorctor}
+
+\func{}{wxCommandProcessor}{\param{int}{ maxCommands = $-1$}}
Constructor.
-{\it maxCommands} defaults to a rather arbitrary 100, but can be set from 1 to any integer.
-If your wxCommand classes store a lot of data, you may wish the limit the number of
-commands stored to a smaller number.
+{\it maxCommands} may be set to a positive integer to limit the number of
+commands stored to it, otherwise (and by default) the list of commands can grow
+arbitrarily.
+
-\membersection{wxCommandProcessor::\destruct{wxCommandProcessor}}
+\membersection{wxCommandProcessor::\destruct{wxCommandProcessor}}\label{wxcommandprocessordtor}
\func{}{\destruct{wxCommandProcessor}}{\void}
Destructor.
-\membersection{wxCommandProcessor::CanUndo}
+
+\membersection{wxCommandProcessor::CanUndo}\label{wxcommandprocessorcanundo}
\func{virtual bool}{CanUndo}{\void}
-Returns TRUE if the currently-active command can be undone, FALSE otherwise.
+Returns true if the currently-active command can be undone, false otherwise.
-\membersection{wxCommandProcessor::ClearCommands}
+
+\membersection{wxCommandProcessor::ClearCommands}\label{wxcommandprocessorclearcommands}
\func{virtual void}{ClearCommands}{\void}
Deletes all the commands in the list and sets the current command pointer to NULL.
-\membersection{wxCommandProcessor::Do}
-\func{virtual bool}{Do}{\void}
+\membersection{wxCommandProcessor::Redo}\label{wxcommandprocessorredo}
+
+\func{virtual bool}{Redo}{\void}
Executes (redoes) the current command (the command that has just been undone if any).
-\membersection{wxCommandProcessor::GetCommands}
+
+\membersection{wxCommandProcessor::GetCommands}\label{wxcommandprocessorgetcommands}
\constfunc{wxList\&}{GetCommands}{\void}
Returns the list of commands.
-\membersection{wxCommandProcessor::GetMaxCommands}
+
+\membersection{wxCommandProcessor::GetMaxCommands}\label{wxcommandprocessorgetmaxcommands}
\constfunc{int}{GetMaxCommands}{\void}
Returns the maximum number of commands that the command processor stores.
-\membersection{wxCommandProcessor::GetEditMenu}
+
+\membersection{wxCommandProcessor::GetEditMenu}\label{wxcommandprocessorgeteditmenu}
\constfunc{wxMenu*}{GetEditMenu}{\void}
Returns the edit menu associated with the command processor.
+
\membersection{wxCommandProcessor::GetRedoAccelerator}\label{wxcommandprocessorgetredoaccelerator}
\constfunc{const wxString\&}{GetRedoAccelerator}{\void}
Returns the string that will be appended to the Redo menu item.
+
+\membersection{wxCommandProcessor::GetRedoMenuLabel}\label{wxcommandprocessorgetredomenulabel}
+
+\constfunc{wxString}{GetRedoMenuLabel}{\void}
+
+Returns the string that will be shown for the redo menu item.
+
+
\membersection{wxCommandProcessor::GetUndoAccelerator}\label{wxcommandprocessorgetundoaccelerator}
\constfunc{const wxString\&}{GetUndoAccelerator}{\void}
Returns the string that will be appended to the Undo menu item.
-\membersection{wxCommandProcessor::Initialize}
+
+\membersection{wxCommandProcessor::GetUndoMenuLabel}\label{wxcommandprocessorgetundomenulabel}
+
+\constfunc{wxString}{GetUndoMenuLabel}{\void}
+
+Returns the string that will be shown for the undo menu item.
+
+
+\membersection{wxCommandProcessor::Initialize}\label{wxcommandprocessorinitialize}
\func{virtual void}{Initialize}{\void}
last in the list (if any), and updating the edit menu (if one has been
specified).
-\membersection{wxCommandProcessor::SetEditMenu}
+
+\membersection{wxCommandProcessor::IsDirty}\label{wxcommandprocessorisdirty}
+
+\func{virtual bool}{IsDirty}{\void}
+
+Returns a boolean value that indicates if changes have been made since
+the last save operation. This only works if
+\helpref{wxCommandProcessor::MarkAsSaved}{wxcommandprocessormarkassaved}
+is called whenever the project is saved.
+
+
+\membersection{wxCommandProcessor::MarkAsSaved}\label{wxcommandprocessormarkassaved}
+
+\func{virtual void}{MarkAsSaved}{\void}
+
+You must call this method whenever the project is saved if you plan to use
+\helpref{wxCommandProcessor::IsDirty}{wxcommandprocessorisdirty}.
+
+
+\membersection{wxCommandProcessor::SetEditMenu}\label{wxcommandprocessorseteditmenu}
\func{void}{SetEditMenu}{\param{wxMenu* }{menu}}
destroyed and command operations may still be performed, or the command
processor may try to access an invalid pointer.
+
+\membersection{wxCommandProcessor::SetMenuStrings}\label{wxcommandprocessorsetmenustrings}
+
+\func{void}{SetMenuStrings}{\void}
+
+Sets the menu labels according to the currently set menu and the current
+command state.
+
+
\membersection{wxCommandProcessor::SetRedoAccelerator}\label{wxcommandprocessorsetredoaccelerator}
\func{void}{SetRedoAccelerator}{\param{const wxString\&}{accel}}
Sets the string that will be appended to the Redo menu item.
+
\membersection{wxCommandProcessor::SetUndoAccelerator}\label{wxcommandprocessorsetundoaccelerator}
\func{void}{SetUndoAccelerator}{\param{const wxString\&}{accel}}
Sets the string that will be appended to the Undo menu item.
-\membersection{wxCommandProcessor::Submit}
-\func{virtual bool}{Submit}{\param{wxCommand *}{command}, \param{bool}{ storeIt = TRUE}}
+\membersection{wxCommandProcessor::Submit}\label{wxcommandprocessorsubmit}
+
+\func{virtual bool}{Submit}{\param{wxCommand *}{command}, \param{bool}{ storeIt = true}}
Submits a new command to the command processor. The command processor
calls wxCommand::Do to execute the command; if it succeeds, the command
{\it storeIt} indicates whether the successful command should be stored
in the history list.
-\membersection{wxCommandProcessor::Undo}
+
+\membersection{wxCommandProcessor::Undo}\label{wxcommandprocessorundo}
\func{virtual bool}{Undo}{\void}