[Haiku-commits] r33403 - in haiku/trunk: headers/private/screen_saver src/kits/screensaver src/preferences/screensaver

leavengood at BerliOS leavengood at mail.berlios.de
Thu Oct 1 22:48:15 CEST 2009


Author: leavengood
Date: 2009-10-01 22:48:14 +0200 (Thu, 01 Oct 2009)
New Revision: 33403
ViewCVS: http://svn.berlios.de/viewcvs/haiku?rev=33403&view=rev

Added:
   haiku/trunk/src/kits/screensaver/BuildScreenSaverDefaultSettingsView.cpp
Modified:
   haiku/trunk/headers/private/screen_saver/BuildScreenSaverDefaultSettingsView.h
   haiku/trunk/src/kits/screensaver/Jamfile
   haiku/trunk/src/preferences/screensaver/ScreenSaverWindow.cpp
Log:
Suggestion from Rene:
- Make the BuildScreenSaverDefaultSettingsView function be built into
libscreensaver.so and under the BPrivate namespace. This avoids the repetition
of the compiled code in each screen saver that uses it.
- Updated the ScreenSaver preferences to use this.


Modified: haiku/trunk/headers/private/screen_saver/BuildScreenSaverDefaultSettingsView.h
===================================================================
--- haiku/trunk/headers/private/screen_saver/BuildScreenSaverDefaultSettingsView.h	2009-10-01 20:22:30 UTC (rev 33402)
+++ haiku/trunk/headers/private/screen_saver/BuildScreenSaverDefaultSettingsView.h	2009-10-01 20:48:14 UTC (rev 33403)
@@ -9,25 +9,12 @@
 #define BUILD_SCREEN_SAVER_DEFAULT_SETTINGS_VIEW
 
 
-#include <StringView.h>
-#include <View.h>
+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);
 }
 
 

Added: haiku/trunk/src/kits/screensaver/BuildScreenSaverDefaultSettingsView.cpp
===================================================================
--- haiku/trunk/src/kits/screensaver/BuildScreenSaverDefaultSettingsView.cpp	2009-10-01 20:22:30 UTC (rev 33402)
+++ haiku/trunk/src/kits/screensaver/BuildScreenSaverDefaultSettingsView.cpp	2009-10-01 20:48:14 UTC (rev 33403)
@@ -0,0 +1,36 @@
+/*
+ * Copyright 2009, Haiku.
+ * Distributed under the terms of the MIT License.
+ *
+ * Authors:
+ *		Ryan Leavengood, leavengood at gmail.com
+ */
+
+
+#include <BuildScreenSaverDefaultSettingsView.h>
+
+#include <StringView.h>
+#include <View.h>
+
+
+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);
+}
+
+}
+

Modified: haiku/trunk/src/kits/screensaver/Jamfile
===================================================================
--- haiku/trunk/src/kits/screensaver/Jamfile	2009-10-01 20:22:30 UTC (rev 33402)
+++ haiku/trunk/src/kits/screensaver/Jamfile	2009-10-01 20:48:14 UTC (rev 33403)
@@ -8,6 +8,7 @@
 UsePrivateHeaders screen_saver ;
 
 SharedLibrary libscreensaver.so :
+	BuildScreenSaverDefaultSettingsView.cpp
 	ScreenSaver.cpp
 	ScreenSaverSettings.cpp
 	ScreenSaverRunner.cpp

Modified: haiku/trunk/src/preferences/screensaver/ScreenSaverWindow.cpp
===================================================================
--- haiku/trunk/src/preferences/screensaver/ScreenSaverWindow.cpp	2009-10-01 20:22:30 UTC (rev 33402)
+++ haiku/trunk/src/preferences/screensaver/ScreenSaverWindow.cpp	2009-10-01 20:48:14 UTC (rev 33403)
@@ -532,7 +532,7 @@
 	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");




More information about the Haiku-commits mailing list