* Adds an existing {@link Roo.TabPanelItem}.
* @param {Roo.TabPanelItem} item The TabPanelItem to add
*/
- addTabItem : function(item){
+ addTabItem : function(item)
+ {
this.items[item.id] = item;
this.items.push(item);
+
// if(this.resizeTabs){
// item.setWidth(this.currentTabWidth || this.preferredTabWidth);
// this.autoSizeTabs();
* @param {String/Number} id The id or index of the TabPanelItem to activate.
* @return {Roo.TabPanelItem} The TabPanelItem.
*/
- activate : function(id){
+ activate : function(id)
+ {
var tab = this.items[id];
if(!tab){
return null;
/**
* Manual call to resize the tabs (if {@link #resizeTabs} is false this does nothing)
*/
- autoSizeTabs : function(){
+ autoSizeTabs : function()
+ {
var count = this.items.length;
var vcount = count - this.hiddenCount;
if(!this.resizeTabs || count < 1 || vcount < 1 || this.updating) {
return;
}
+ if (vcount < 2) {
+ this.stripEl.hide();
+ } else {
+ this.stripEl.show();
+ }
+
var w = Math.max(this.el.getWidth() - this.cpad, 10);
var availWidth = Math.floor(w / vcount);
var b = this.stripBody;
A.enable();},activate:function(id){var A=this.items[id];if(!A){return null;}if(A==this.active||A.disabled){return A;}var e={};this.fireEvent("beforetabchange",this,e,A);if(e.cancel!==true&&!A.disabled){if(this.active){this.active.hide();}this.active=this.items[id];
this.active.show();this.fireEvent("tabchange",this,this.active);}return A;},getActiveTab:function(){return this.active;},syncHeight:function(A){var B=(A||this.el.getHeight())-this.el.getBorderWidth("tb")-this.el.getPadding("tb");var bm=this.bodyEl.getMargins();
var C=B-(this.stripWrap.getHeight()||0)-(bm.top+bm.bottom);this.bodyEl.setHeight(C);return C;},onResize:function(){if(this.monitorResize){this.autoSizeTabs();}},beginUpdate:function(){this.updating=true;},endUpdate:function(){this.updating=false;this.autoSizeTabs();
-},autoSizeTabs:function(){var A=this.items.length;var B=A-this.hiddenCount;if(!this.resizeTabs||A<1||B<1||this.updating){return;}var w=Math.max(this.el.getWidth()-this.cpad,10);var C=Math.floor(w/B);var b=this.stripBody;if(b.getWidth()>w){var D=this.items;
-this.setTabWidth(Math.max(C,this.minTabWidth)-2);if(C<this.minTabWidth){}}else{if(this.currentTabWidth<this.preferredTabWidth){this.setTabWidth(Math.min(C,this.preferredTabWidth)-2);}}},getCount:function(){return this.items.length;},setTabWidth:function(A){this.currentTabWidth=A;
-for(var i=0,B=this.items.length;i<B;i++){if(!this.items[i].isHidden()){this.items[i].setWidth(A);}}},destroy:function(A){Roo.EventManager.removeResizeListener(this.onResize,this);for(var i=0,B=this.items.length;i<B;i++){this.items[i].purgeListeners();}if(A===true){this.el.update("");
-this.el.remove();}},createStrip:function(A){var B=document.createElement("nav");B.className=Roo.bootstrap.version==4?"navbar-light bg-light":"navbar navbar-default";A.appendChild(B);return B;},createStripList:function(A){A.innerHTML='<ul class="nav nav-tabs" role="tablist"></ul>';
-return A.firstChild;},createBody:function(A){var B=document.createElement("div");Roo.id(B,"tab-body");Roo.fly(B).addClass("tab-content");A.appendChild(B);return B;},createItemBody:function(A,id){var B=Roo.getDom(id);if(!B){B=document.createElement("div");
-B.id=id;}Roo.fly(B).addClass("tab-pane");A.insertBefore(B,A.firstChild);return B;},createStripElements:function(A,B,C,D){var td=document.createElement("li");td.className='nav-item';A.appendChild(td);var E=D||this.tabTpl||false;if(!E){E=new Roo.Template(Roo.bootstrap.version==4?('<a class="nav-link" href="#" unselectable="on"'+(this.disableTooltips?'':' title="{text}"')+' >{text}</a>'):('<a class="nav-link" href="#">'+'<span unselectable="on"'+(this.disableTooltips?'':' title="{text}"')+' >{text}</span></a>'));
+},autoSizeTabs:function(){var A=this.items.length;var B=A-this.hiddenCount;if(!this.resizeTabs||A<1||B<1||this.updating){return;}if(B<2){this.stripEl.hide();}else{this.stripEl.show();}var w=Math.max(this.el.getWidth()-this.cpad,10);var C=Math.floor(w/B);var b=this.stripBody;
+if(b.getWidth()>w){var D=this.items;this.setTabWidth(Math.max(C,this.minTabWidth)-2);if(C<this.minTabWidth){}}else{if(this.currentTabWidth<this.preferredTabWidth){this.setTabWidth(Math.min(C,this.preferredTabWidth)-2);}}},getCount:function(){return this.items.length;
+},setTabWidth:function(A){this.currentTabWidth=A;for(var i=0,B=this.items.length;i<B;i++){if(!this.items[i].isHidden()){this.items[i].setWidth(A);}}},destroy:function(A){Roo.EventManager.removeResizeListener(this.onResize,this);for(var i=0,B=this.items.length;
+i<B;i++){this.items[i].purgeListeners();}if(A===true){this.el.update("");this.el.remove();}},createStrip:function(A){var B=document.createElement("nav");B.className=Roo.bootstrap.version==4?"navbar-light bg-light":"navbar navbar-default";A.appendChild(B);
+return B;},createStripList:function(A){A.innerHTML='<ul class="nav nav-tabs" role="tablist"></ul>';return A.firstChild;},createBody:function(A){var B=document.createElement("div");Roo.id(B,"tab-body");Roo.fly(B).addClass("tab-content");A.appendChild(B);return B;
+},createItemBody:function(A,id){var B=Roo.getDom(id);if(!B){B=document.createElement("div");B.id=id;}Roo.fly(B).addClass("tab-pane");A.insertBefore(B,A.firstChild);return B;},createStripElements:function(A,B,C,D){var td=document.createElement("li");td.className='nav-item';
+A.appendChild(td);var E=D||this.tabTpl||false;if(!E){E=new Roo.Template(Roo.bootstrap.version==4?('<a class="nav-link" href="#" unselectable="on"'+(this.disableTooltips?'':' title="{text}"')+' >{text}</a>'):('<a class="nav-link" href="#">'+'<span unselectable="on"'+(this.disableTooltips?'':' title="{text}"')+' >{text}</span></a>'));
}switch(typeof(E)){case 'object':break;case 'string':E=new Roo.Template(E);break;default:break;}var el=E.overwrite(td,{"text":B});var F=el.getElementsByTagName("span")[0];return {"el":el,"inner":F};}});
// Roo/bootstrap/panel/TabItem.js
Roo.bootstrap.panel.TabItem=function(A){this.tabPanel=A.panel;this.id=A.id;this.disabled=false;this.text=A.text;this.loaded=false;this.closable=A.closable;this.bodyEl=Roo.get(this.tabPanel.createItemBody(this.tabPanel.bodyEl.dom,A.id));this.bodyEl.setVisibilityMode(Roo.Element.VISIBILITY);