diff --git a/src/apps/stylededit/Constants.h b/src/apps/stylededit/Constants.h index f72ff04194..b7a88f378b 100644 --- a/src/apps/stylededit/Constants.h +++ b/src/apps/stylededit/Constants.h @@ -44,6 +44,7 @@ const uint32 MSG_REPLACE = 'msre'; const uint32 MSG_REPLACE_ALL = 'mrea'; const uint32 MSG_HIDE_WINDOW = 'mhdw'; const uint32 MSG_FIND_WINDOW_QUIT = 'mfwq'; +const uint32 MSG_REPLACE_WINDOW_QUIT = 'mrwq'; // "Font"-menu const uint32 FONT_SIZE = 'FMsi'; diff --git a/src/apps/stylededit/ReplaceWindow.cpp b/src/apps/stylededit/ReplaceWindow.cpp index 6ab50bca0a..5702280c55 100644 --- a/src/apps/stylededit/ReplaceWindow.cpp +++ b/src/apps/stylededit/ReplaceWindow.cpp @@ -157,6 +157,16 @@ ReplaceWindow::DispatchMessage(BMessage* message, BHandler* handler) } +bool +ReplaceWindow::QuitRequested() +{ + BMessenger messenger(fHandler); + messenger.SendMessage(MSG_REPLACE_WINDOW_QUIT); + + return true; +} + + void ReplaceWindow::Show() { diff --git a/src/apps/stylededit/ReplaceWindow.h b/src/apps/stylededit/ReplaceWindow.h index f4b44cd424..10607836d6 100644 --- a/src/apps/stylededit/ReplaceWindow.h +++ b/src/apps/stylededit/ReplaceWindow.h @@ -29,6 +29,7 @@ class ReplaceWindow : public BWindow { virtual void MessageReceived(BMessage* message); virtual void DispatchMessage(BMessage* message, BHandler* handler); + virtual bool QuitRequested(); virtual void Show(); private: diff --git a/src/apps/stylededit/StyledEditWindow.cpp b/src/apps/stylededit/StyledEditWindow.cpp index fdc0005bde..a9520742bc 100644 --- a/src/apps/stylededit/StyledEditWindow.cpp +++ b/src/apps/stylededit/StyledEditWindow.cpp @@ -263,6 +263,11 @@ StyledEditWindow::MessageReceived(BMessage* message) fFindWindow = NULL; break; } + case MSG_REPLACE_WINDOW_QUIT: + { + fReplaceWindow = NULL; + break; + } case MSG_SEARCH: message->FindString("findtext", &fStringToFind); fFindAgainItem->SetEnabled(true);