diff --git a/src/prefs/screen/RefreshWindow.cpp b/src/prefs/screen/RefreshWindow.cpp index 3f1d22dc7d..ae5796ba91 100644 --- a/src/prefs/screen/RefreshWindow.cpp +++ b/src/prefs/screen/RefreshWindow.cpp @@ -82,7 +82,7 @@ RefreshWindow::MessageReceived(BMessage* message) float Value = (float)fRefreshSlider->Value() / 10; Message.AddFloat("refresh", Value); - + Messenger.SendMessage(&Message); PostMessage(B_QUIT_REQUESTED); diff --git a/src/prefs/screen/Screen.rsrc b/src/prefs/screen/Screen.rsrc index b9aabe9eab..92d88ec011 100644 Binary files a/src/prefs/screen/Screen.rsrc and b/src/prefs/screen/Screen.rsrc differ diff --git a/src/prefs/screen/ScreenDrawView.cpp b/src/prefs/screen/ScreenDrawView.cpp index bfd9954fd7..ae0fcfe608 100644 --- a/src/prefs/screen/ScreenDrawView.cpp +++ b/src/prefs/screen/ScreenDrawView.cpp @@ -15,13 +15,13 @@ ScreenDrawView::ScreenDrawView(BRect rect, char *name) : BView(rect, name, B_FOLLOW_ALL, B_WILL_DRAW) { BScreen screen(B_MAIN_SCREEN_ID); - if (!screen->IsValid()) + if (!screen.IsValid()) ; //Debugger() ? - desktopColor = screen->DesktopColor(current_workspace()); + desktopColor = screen.DesktopColor(current_workspace()); display_mode mode; - screen->GetMode(&mode); + screen.GetMode(&mode); fResolution = mode.virtual_width; } @@ -220,7 +220,7 @@ ScreenDrawView::MessageReceived(BMessage* message) if (!screen.IsValid()) break; - desktopColor = screen->DesktopColor(current_workspace()); + desktopColor = screen.DesktopColor(current_workspace()); Invalidate(); } diff --git a/src/prefs/screen/ScreenWindow.cpp b/src/prefs/screen/ScreenWindow.cpp index 2855dfebf9..ed684866fa 100644 --- a/src/prefs/screen/ScreenWindow.cpp +++ b/src/prefs/screen/ScreenWindow.cpp @@ -9,7 +9,6 @@ #include #include - #include #include #include @@ -128,7 +127,7 @@ ScreenWindow::ScreenWindow(ScreenSettings *Settings) fResolutionField = new BMenuField(ControlMenuRect, "ResolutionMenu", "Resolution:", fResolutionMenu, true); - Marked = fResolutionMenu->FindItem("640 x 480"); + Marked = fResolutionMenu->ItemAt(0); Marked->SetMarked(true); fResolutionField->SetDivider(55.0); @@ -251,6 +250,7 @@ ScreenWindow::ScreenWindow(ScreenSettings *Settings) String << fInitialRefreshN; + int32 point = String.FindFirst(' '); String.Truncate(4); String << " Hz/Other..."; @@ -415,7 +415,7 @@ ScreenWindow::MessageReceived(BMessage* message) case BUTTON_DEFAULTS_MSG: { - fResolutionMenu->FindItem("640 x 480")->SetMarked(true); + fResolutionMenu->ItemAt(0)->SetMarked(true); fColorsMenu->FindItem("8 Bits/Pixel")->SetMarked(true); fRefreshMenu->FindItem("60 Hz")->SetMarked(true); @@ -572,7 +572,10 @@ ScreenWindow::MessageReceived(BMessage* message) fRefreshMenu->Superitem()->SetLabel(String.String()); } - BScreen screen(B_MAIN_SCREEN_ID); + BScreen screen(B_MAIN_SCREEN_ID); + if (!screen.IsValid()) + break; + screen.SetMode(&fInitialMode); break; @@ -611,9 +614,11 @@ ScreenWindow::MessageReceived(BMessage* message) case MAKE_INITIAL_MSG: { - BScreen screen(B_MAIN_SCREEN_ID); - display_mode mode; - + BScreen screen(B_MAIN_SCREEN_ID); + if (!screen.IsValid()) + break; + + display_mode mode; screen.GetMode(&mode); fInitialRefreshN = fCustomRefresh;