Index: bp-templates/bp-legacy/buddypress-functions.php
===================================================================
--- bp-templates/bp-legacy/buddypress-functions.php	(revision 6764)
+++ bp-templates/bp-legacy/buddypress-functions.php	(working copy)
@@ -1200,3 +1200,24 @@
 
 	exit;
 }
+
+/**
+ * Filters bp_message_get_notice_checkbox
+ *
+ * Checks BP Messages Widget is active before printing the checkbox 
+ * Displays a message to admin if not active.
+ *
+ * @param string $notice_checkbox 
+ * @uses is_active_widget() to check if the widget is active
+ * @uses admin_url() to print the widgets url
+ * @return string $notice_checkbox
+ */
+function bp_legacy_theme_get_notice_checkbox( $notice_checkbox ) {
+	
+	if( !is_active_widget( false, false, 'bp_messages_widget') )
+		$notice_checkbox = '<small>' . sprintf( __('You need to <a href="%s">activate</a> the (BuddyPress) Site Wide Notices widget to compose site wide notices', 'buddypress'), admin_url( 'widgets.php' ) ) .'</small>';
+	
+	return $notice_checkbox;
+}
+
+add_filter( 'bp_message_get_notice_checkbox', 'bp_legacy_theme_get_notice_checkbox', 1, 1 );
\ No newline at end of file
Index: bp-templates/bp-legacy/buddypress/members/single/messages/compose.php
===================================================================
--- bp-templates/bp-legacy/buddypress/members/single/messages/compose.php	(revision 6764)
+++ bp-templates/bp-legacy/buddypress/members/single/messages/compose.php	(working copy)
@@ -11,7 +11,9 @@
 	</ul>
 
 	<?php if ( bp_current_user_can( 'bp_moderate' ) ) : ?>
-		<input type="checkbox" id="send-notice" name="send-notice" value="1" /> <?php _e( "This is a notice to all users.", "buddypress" ); ?>
+		
+		<?php bp_message_notice_checkbox();?>
+		
 	<?php endif; ?>
 
 	<label for="subject"><?php _e( 'Subject', 'buddypress' ); ?></label>
Index: bp-templates/bp-legacy/css/buddypress.css
===================================================================
--- bp-templates/bp-legacy/css/buddypress.css	(revision 6764)
+++ bp-templates/bp-legacy/css/buddypress.css	(working copy)
@@ -506,7 +506,7 @@
 #buddypress div#message.updated {
 	clear: both;
 }
-#buddypress div#message p {
+#buddypress div#message p, .widget_bp_messages_widget div#message p {
 	font-size: 90%;
 	display: block;
 	padding: 10px 15px;
@@ -1003,7 +1003,7 @@
 	font-weight: bold;
 }
 #buddypress span.activity,
-#buddypress div#message p {
+#buddypress div#message p, .widget_bp_messages_widget div#message p {
 	border: 1px solid #e1ca82;
 	-moz-border-radius: 3px;
 	-webkit-border-radius: 3px;
Index: bp-messages/bp-messages-loader.php
===================================================================
--- bp-messages/bp-messages-loader.php	(revision 6764)
+++ bp-messages/bp-messages-loader.php	(working copy)
@@ -51,6 +51,13 @@
 			'functions',
 			'notifications'
 		);
+		
+		/*
+		checks for template dir (in case of child theme)
+		and if it's not bp-default then include the Site Wide Notice Widget
+		*/
+		if( strpos( get_template_directory(), 'bp-default' ) === false )
+			$includes[] = 'widget';
 
 		parent::includes( $includes );
 	}
Index: bp-messages/bp-messages-template.php
===================================================================
--- bp-messages/bp-messages-template.php	(revision 6764)
+++ bp-messages/bp-messages-template.php	(working copy)
@@ -523,6 +523,29 @@
 		return apply_filters( 'bp_get_message_notice_text', $messages_template->thread->message );
 	}
 
+
+/**
+ * Output the notice to all users checkbox
+ *
+ * @uses bp_message_get_notice_checkbox()
+ */
+function bp_message_notice_checkbox() {
+	echo bp_message_get_notice_checkbox();
+}
+
+	/**
+	 * Returns the notice to all users checkbox
+	 *
+	 * @uses apply_filters() To call the 'bp_message_get_notice_checkbox' hook
+	 */
+	function bp_message_get_notice_checkbox() {
+		
+		$notice_checkbox = '<input type="checkbox" id="send-notice" name="send-notice" value="1" /> '. __( "This is a notice to all users.", "buddypress" );
+		
+		return apply_filters( 'bp_message_get_notice_checkbox', $notice_checkbox );
+		
+	}
+
 function bp_message_notice_delete_link() {
 	echo bp_get_message_notice_delete_link();
 }
@@ -584,7 +607,18 @@
 		return apply_filters( 'bp_get_messages_slug', $bp->messages->slug );
 	}
 
-function bp_message_get_notices() {
+
+/**
+ * Displays site wide notices if any
+ *
+ * Specific to BP Theme Compat :
+ * using $before_widget and $after_widget parameters avoids extra html
+ * if no notice are found.
+ *
+ * @param string $before_widget the widget opening tag
+ * @param string $after_widget the widget closing tag
+ */
+function bp_message_get_notices( $before_widget = '', $after_widget = '' ) {
 	global $userdata;
 
 	$notice = BP_Messages_Notice::get_active();
@@ -599,6 +633,7 @@
 
 	if ( is_array($closed_notices) ) {
 		if ( !in_array( $notice->id, $closed_notices ) && $notice->id ) {
+			echo $before_widget;
 			?>
 			<div id="message" class="info notice" rel="n-<?php echo $notice->id ?>">
 				<p>
@@ -608,6 +643,7 @@
 				</p>
 			</div>
 			<?php
+			echo $after_widget;
 		}
 	}
 }
