Only in viewsdisplaytabs: .DS_Store
diff -crB viewsdisplaytabs.original/viewsdisplaytabs.module viewsdisplaytabs/viewsdisplaytabs.module
*** viewsdisplaytabs.original/viewsdisplaytabs.module	Thu Jul 30 00:51:01 2009
--- viewsdisplaytabs/viewsdisplaytabs.module	Mon Oct  5 19:58:33 2009
***************
*** 68,75 ****
    $empty = !(bool) count($view->result);
    $settings = variable_get('viewsdisplaytabs_settings', array());
    $show = ( $empty ? $empty && $settings['view_show_empty'][$view->name] == 1 : true );
! 
!   if ($settings['view_enabled'][$view->name] == 1 && $show) {
      $selected_displays = $settings['view_displays'][$view->name];
  
      // Collect displays and build grouping array
--- 68,79 ----
    $empty = !(bool) count($view->result);
    $settings = variable_get('viewsdisplaytabs_settings', array());
    $show = ( $empty ? $empty && $settings['view_show_empty'][$view->name] == 1 : true );
!   
!   if ($settings['view_exclude_displays'][$view->name]) {
!     $excluded = in_array($view->current_display, $settings['view_exclude_displays'][$view->name]);
!   }
!   
!   if ($settings['view_enabled'][$view->name] == 1 && $show && !$excluded) {
      $selected_displays = $settings['view_displays'][$view->name];
  
      // Collect displays and build grouping array
***************
*** 126,132 ****
  function theme__viewsdisplaytabs_admin($form) {
  
    // Overview table:
!   $header = array(t('Enabled'), t('Name'), t('Displays'), t('Default Active'), t('Show when empty'), t('Separator'), t('Throbber'), t('Edit'));
  
    $view_list = $form['views']['view_list'];
  
--- 130,136 ----
  function theme__viewsdisplaytabs_admin($form) {
  
    // Overview table:
!   $header = array(t('Enabled'), t('Name'), t('Displays'), t('Exclude Displays'), t('Default Active'), t('Show when empty'), t('Separator'), t('Throbber'), t('Edit'));
  
    $view_list = $form['views']['view_list'];
  
***************
*** 136,141 ****
--- 140,146 ----
          drupal_render($view_list['view_enabled'][$key]),
          drupal_render($view_list['view_name'][$key]),
          drupal_render($view_list['view_displays'][$key]),
+         drupal_render($view_list['view_exclude_displays'][$key]),
          drupal_render($view_list['view_displays_default'][$key]),
          drupal_render($view_list['view_show_empty'][$key]),
          drupal_render($view_list['view_group_separator'][$key]),
***************
*** 227,232 ****
--- 232,240 ----
  	<dt>Displays</dt>
  	<dd><p>Check the displays you want to expose as tabs. If no displays are checked, all tabs become displays.</p></dd>
  
+ 	<dt>Exclude Displays</dt>
+ 	<dd><p>Check the displays you don't want the tabs to be displayed in. If no displays are checked, all displays will show the selected tabs.</p></dd>
+ 	
  	<dt>Default Active</dt>
  	<dd><p>The 'default active' select field allows you to set a tab to be active by default. Doing this won't make the display associated with that tab load by default it will only <em>make it seem as if that display were loaded by default</em>.</p>
  	<p>This is useful as it will give the site's users the impression that one tab is already active. They will also conclude that what they see is a result of the filtering done with that tab and that they can return to that filtering again simply by clicking that tab.</p>
***************
*** 292,297 ****
--- 300,318 ----
          '#default_value' => ( $settings['view_displays'][$vid] ? $settings['view_displays'][$vid] : array() ),
          '#options' => ( is_array($view_data->displays) ? $view_data->displays : array() ),
        );
+       
+       $view_exclude_displays_fieldset = array(
+         '#type' => 'fieldset',
+         '#title' => t('Exclude Displays'),
+         '#collapsed' => !(is_array($settings['view_exclude_displays'][$vid]) && count($settings['view_exclude_displays'][$vid])),
+         '#collapsible' => true
+       );
+ 
+       $view_exclude_displays_fieldset["view_exclude_displays_$vid"] = array(
+         '#type' => 'checkboxes',
+         '#default_value' => ( $settings['view_exclude_displays'][$vid] ? $settings['view_exclude_displays'][$vid] : array() ),
+         '#options' => ( is_array($view_data->displays) ? $view_data->displays : array() ),
+       );
  
        $view_displays_default = array(
          '#type' => 'select',
***************
*** 320,325 ****
--- 341,347 ----
        $form['views']['view_list']['view_enabled'][$vid]["view_enabled_$vid"] = $view_enabled;
        $form['views']['view_list']['view_name'][$vid]["view_name_$vid"] = array('#value' => $view->name);
        $form['views']['view_list']['view_displays'][$vid]["view_displays_fieldset_$vid"] = $view_displays_fieldset;
+       $form['views']['view_list']['view_exclude_displays'][$vid]["view_exclude_displays_fieldset_$vid"] = $view_exclude_displays_fieldset;
        $form['views']['view_list']['view_displays_default'][$vid]["view_displays_default_$vid"] = $view_displays_default;
        $form['views']['view_list']['view_show_empty'][$vid]["view_show_empty_$vid"] = $view_show_empty;
        $form['views']['view_list']['view_group_separator'][$vid]["view_group_separator_$vid"] = $view_group_separator;
***************
*** 395,400 ****
--- 417,430 ----
          }
        }
      }
+     elseif (preg_match('/view_exclude_displays_(.*)/i', $field, $result)) {
+       // We only save displays that have been checked, value is 1
+       foreach ($value as $display_name => $display_selected) {
+         if ($display_selected) {
+          $view_exclude_displays[$result[1]][$display_name] = $display_selected;
+         }
+       }
+     }
      elseif (preg_match('/view_group_separator_(.*)/i', $field, $result)) {
        $view_group_separator[$result[1]] = $value;
      }
***************
*** 405,410 ****
--- 435,441 ----
    variable_set('viewsdisplaytabs_settings', array(
      'view_enabled' => $view_enabled,
      'view_displays' => $view_displays,
+     'view_exclude_displays' => $view_exclude_displays,
      'view_displays_default' => $view_displays_default,
      'view_show_empty' => $view_show_empty,
      'view_group_separator' => $view_group_separator,
