diff --git a/src/apps/icon-o-matic/CanvasView.h b/src/apps/icon-o-matic/CanvasView.h index f1fe7b4f60..5dd6bf5db5 100644 --- a/src/apps/icon-o-matic/CanvasView.h +++ b/src/apps/icon-o-matic/CanvasView.h @@ -70,7 +70,7 @@ class CanvasView : public StateView, { return fZoomLevel; } void SetMouseFilterMode(uint32 mode); - bool MouseFilterMode() const + uint32 MouseFilterMode() const { return fMouseFilterMode; } void ConvertFromCanvas(BPoint* point) const; diff --git a/src/apps/icon-o-matic/MainWindow.cpp b/src/apps/icon-o-matic/MainWindow.cpp index b10f80dd27..cd0790f72d 100644 --- a/src/apps/icon-o-matic/MainWindow.cpp +++ b/src/apps/icon-o-matic/MainWindow.cpp @@ -95,9 +95,9 @@ MainWindow::MainWindow(IconEditorApp* app, Document* document, fDocument(document), fIcon(NULL) { - RestoreSettings(settings); - _Init(); + + RestoreSettings(settings); } // destructor @@ -508,8 +508,13 @@ MainWindow::SetIcon(Icon* icon) void MainWindow::StoreSettings(BMessage* archive) { - if (archive->ReplaceRect("main window frame", Frame()) < B_OK) + if (archive->ReplaceRect("main window frame", Frame()) != B_OK) archive->AddRect("main window frame", Frame()); + if (archive->ReplaceUInt32("mouse filter mode", + fCanvasView->MouseFilterMode()) != B_OK) { + archive->AddUInt32("mouse filter mode", + fCanvasView->MouseFilterMode()); + } } // RestoreSettings @@ -522,6 +527,9 @@ MainWindow::RestoreSettings(const BMessage* archive) MoveTo(frame.LeftTop()); ResizeTo(frame.Width(), frame.Height()); } + uint32 mouseFilterMode; + if (archive->FindUInt32("mouse filter mode", &mouseFilterMode) == B_OK) + fCanvasView->SetMouseFilterMode(mouseFilterMode); } // #pragma mark -