public void setTabs(TwoLevelTab... tabs) {
   super.setTabs(tabs);
   for (TwoLevelTab tab : tabs) {
     tab.getLayout().addTwoLevelTabSelectedHandler(this);
     updateTab(tab, tab.getPane());
   }
   buildTabList();
   addTabSelectedHandler(this);
 }
 @Override
 public void destroy() {
   // add the hidden tabs back under the TabSet. This will get them destroyed by smartgwt when the
   // tabset
   // goes away. There is no explicit Tab.destroy().
   for (TwoLevelTab tab : hiddenTabs.values()) {
     addTab(tab);
   }
   for (TwoLevelTab tab : getTabs()) {
     tab.getLayout().destroyViews();
   }
   super.destroy();
 }