diff --git a/ffc.ffc_conditions_info.inc b/ffc.ffc_conditions_info.inc
index 0ee93c3..17d2c73 100644
--- a/ffc.ffc_conditions_info.inc
+++ b/ffc.ffc_conditions_info.inc
@@ -238,7 +238,7 @@ function ffc_ffc_conditions_info() {
       'title' => t('Hide when target field contains a string'),
     ),
     'hide_on_role' => array(
-      'title' => t('Hide when current user has role'),
+      'title' => t('Current user has role'),
     ),
     'hide_on_pages' => array(
       'title' => t('Hide on specific pages'),
@@ -364,6 +364,7 @@ function ffc_condition_form_hide_on_role($context, $configuration) {
     '#default_value' => isset($configuration['roles']) ? $configuration['roles'] : '',
   );
 
+  _ffc_condition_form_add_negation_option($form);
   return $form;
 }
 
@@ -440,3 +441,26 @@ function ffc_condition_form_rules_event($context, $configuration) {
 
   return $form;
 }
+
+/**
+ * Field formatter conditional form.
+ *
+ * Add the negation selector to the form with human friendly labelling.
+ * Pulled into a function as would make sense to deploy in other cases
+ * and so reduce the length of the drop down list.
+ */
+function _ffc_condition_form_add_negation_option(&$form) {
+  // Alternative text options:
+  //  - Show by default - hide only when condition is true
+  // -  Hide by default - show only when condition is true
+ 
+  $form['negate'] = array(
+    '#type' => 'select',
+    '#title' => t('Action'),
+    '#options' => array(
+       0 => t('Hide only when condition is true (show by default)'),
+       1 => t('Show only when condition is true (hide by default)')
+       ),
+     '#default_value' => isset($configuration['negate']) ? $configuration['negate'] : 0,
+     );
+}
\ No newline at end of file
diff --git a/ffc.module b/ffc.module
index 206e761..2a08cd6 100644
--- a/ffc.module
+++ b/ffc.module
@@ -177,11 +177,16 @@ function ffc_condition_execute_hide_if_string(&$build, $source, $configuration,
 }
 
 /**
- * Hide the source field when the current user has a certain role.
+ * Hide or show the source field when the current user has a certain role.
  */
 function ffc_condition_execute_hide_on_role(&$build, $source, $configuration) {
   global $user;
-  if (array_intersect_key($configuration['roles'], $user->roles) != array()) {
+  $condition_met = array_intersect_key($configuration['roles'], $user->roles) != array();
+  if ($configuration['negate']==1) {
+    $condition_met = !$condition_met;
+  }
+
+  if ($condition_met) {
     $build[$source]['#access'] = FALSE;
   }
 }
