Fix wxCommandProcessor::IsDirty() for unsaved unmodified case.

IsDirty() still returned true even after undoing all the commands which was
wrong, as there was nothing to save in this case.

Closes #15722.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2013-11-28 13:46:28 +00:00
parent 3fb5084b31
commit 485ecdf721
2 changed files with 5 additions and 8 deletions

View File

@@ -584,6 +584,8 @@ All (GUI):
- Fix crash when setting invalid label ending with "&" (ZaneUJi).
- Fix wxEditableListBox user data corruption when exchanging items
in 64 bit builds (Tom Mettam, Rapid2D).
- Fix wxCommandProcessor::IsDirty() return value which was wrong after undoing
all commands without saving (Neil Chittenden).
wxGTK:

View File

@@ -329,16 +329,11 @@ void wxCommandProcessor::ClearCommands()
bool wxCommandProcessor::IsDirty() const
{
if ( m_commands.empty() )
{
// If we have never been modified, we can't be dirty.
return false;
}
if ( !m_lastSavedCommand )
{
// If we have been modified but have never been saved, we're dirty.
return true;
// We have never been saved, so we are dirty if and only if we have any
// commands at all.
return m_currentCommand;
}
if ( !m_currentCommand )