diff --git a/headers/private/screen_saver/BuildScreenSaverDefaultSettingsView.h b/headers/private/screen_saver/BuildScreenSaverDefaultSettingsView.h index b01c882ce6..73e6f7e691 100644 --- a/headers/private/screen_saver/BuildScreenSaverDefaultSettingsView.h +++ b/headers/private/screen_saver/BuildScreenSaverDefaultSettingsView.h @@ -9,25 +9,12 @@ #define BUILD_SCREEN_SAVER_DEFAULT_SETTINGS_VIEW -#include -#include +class BView; +namespace BPrivate { -// This is used to provide a consistent look for the settings view for screen -// savers without any configuration. -void -BuildScreenSaverDefaultSettingsView(BView* view, const char* moduleName, const char* info) -{ - BRect rect(15, 15, 20, 20); - BStringView* stringView = new BStringView(rect, "module", moduleName); - stringView->SetFont(be_bold_font); - stringView->ResizeToPreferred(); - view->AddChild(stringView); +void BuildScreenSaverDefaultSettingsView(BView* view, const char* moduleName, const char* info); - rect.OffsetBy(0, stringView->Bounds().Height() + 4); - stringView = new BStringView(rect, "info", info); - stringView->ResizeToPreferred(); - view->AddChild(stringView); } diff --git a/src/kits/screensaver/BuildScreenSaverDefaultSettingsView.cpp b/src/kits/screensaver/BuildScreenSaverDefaultSettingsView.cpp new file mode 100644 index 0000000000..4b81db14f4 --- /dev/null +++ b/src/kits/screensaver/BuildScreenSaverDefaultSettingsView.cpp @@ -0,0 +1,36 @@ +/* + * Copyright 2009, Haiku. + * Distributed under the terms of the MIT License. + * + * Authors: + * Ryan Leavengood, leavengood@gmail.com + */ + + +#include + +#include +#include + + +namespace BPrivate { + +// This is used to provide a consistent look for the settings view for screen +// savers without any configuration. +void +BuildScreenSaverDefaultSettingsView(BView* view, const char* moduleName, const char* info) +{ + BRect rect(15, 15, 20, 20); + BStringView* stringView = new BStringView(rect, "module", moduleName); + stringView->SetFont(be_bold_font); + stringView->ResizeToPreferred(); + view->AddChild(stringView); + + rect.OffsetBy(0, stringView->Bounds().Height() + 4); + stringView = new BStringView(rect, "info", info); + stringView->ResizeToPreferred(); + view->AddChild(stringView); +} + +} + diff --git a/src/kits/screensaver/Jamfile b/src/kits/screensaver/Jamfile index f09a833a9e..9111d5df17 100644 --- a/src/kits/screensaver/Jamfile +++ b/src/kits/screensaver/Jamfile @@ -8,6 +8,7 @@ UseHeaders [ FDirName $(HAIKU_TOP) headers os add-ons screen_saver ] ; UsePrivateHeaders screen_saver ; SharedLibrary libscreensaver.so : + BuildScreenSaverDefaultSettingsView.cpp ScreenSaver.cpp ScreenSaverSettings.cpp ScreenSaverRunner.cpp diff --git a/src/preferences/screensaver/ScreenSaverWindow.cpp b/src/preferences/screensaver/ScreenSaverWindow.cpp index 1fdb962716..b4c490ec42 100644 --- a/src/preferences/screensaver/ScreenSaverWindow.cpp +++ b/src/preferences/screensaver/ScreenSaverWindow.cpp @@ -532,7 +532,7 @@ ModulesView::_OpenSaver() if (fSettingsView->ChildAt(0) == NULL) { // There are no settings at all, we add the module name here to // let it look a bit better at least. - BuildScreenSaverDefaultSettingsView(fSettingsView, + BPrivate::BuildScreenSaverDefaultSettingsView(fSettingsView, fSettings.ModuleName()[0] ? fSettings.ModuleName() : "Blackness", saver || !fSettings.ModuleName()[0] ? "No options available" : "Could not load screen saver");