/* * - LGPL * * Nav Progress Item * */ /** * @class Roo.bootstrap.NavProgressItem * @extends Roo.bootstrap.Component * Bootstrap NavProgressItem class * @cfg {Boolean} active (true|false) Is item active default false * @cfg {Boolean} disabled (true|false) Is item active default false * @cfg {String} html * * @constructor * Create a new NavProgressItem * @param {Object} config The config object */ Roo.bootstrap.NavProgressItem = function(config){ Roo.bootstrap.NavProgressItem.superclass.constructor.call(this, config); this.addEvents({ // raw events /** * @event click * The raw click event for the entire grid. * @param {Roo.bootstrap.NavProgressItem} this * @param {Roo.EventObject} e */ "click" : true, /** * @event changed * Fires when the active item active state changes * @param {Roo.bootstrap.NavProgressItem} this * @param {boolean} state the new state */ 'changed': true }); }; Roo.extend(Roo.bootstrap.NavProgressItem, Roo.bootstrap.Component, { active : false, disabled : false, html : '', getAutoCreate : function() { var cfg = { tag: 'li', cls: 'roo-navigation-bar-item', cn : [ { tag : 'span', cls : 'roo-navigation-bar-item-text', html : this.html } ] } if (this.active) { cfg.cls += ' active'; } if (this.disabled) { cfg.cls += ' disabled'; } return cfg; }, initEvents: function() { Roo.log('bar item init???'); } // // onClick : function(e) // { // if( // this.preventDefault || // this.href == '#' // ){ // // e.preventDefault(); // } // // if (this.disabled) { // return; // } // // var tg = Roo.bootstrap.TabGroup.get(this.navId); // if (tg && tg.transition) { // Roo.log("waiting for the transitionend"); // return; // } // // // // //Roo.log("fire event clicked"); // if(this.fireEvent('click', this, e) === false){ // return; // }; // // if(this.tagtype == 'span'){ // return; // } // // //Roo.log(this.href); // var ael = this.el.select('a',true).first(); // //Roo.log(ael); // // if(ael && this.animateRef && this.href.indexOf('#') > -1){ // //Roo.log(["test:",ael.dom.href.split("#")[0], document.location.toString().split("#")[0]]); // if (ael.dom.href.split("#")[0] != document.location.toString().split("#")[0]) { // return; // ignore... - it's a 'hash' to another page. // } // // e.preventDefault(); // this.scrollToElement(e); // } // // // var p = this.parent(); // // if (['tabs','pills'].indexOf(p.type)!==-1) { // if (typeof(p.setActiveItem) !== 'undefined') { // p.setActiveItem(this); // } // } // // // if parent is a navbarheader....- and link is probably a '#' page ref.. then remove the expanded menu. // if (p.parentType == 'NavHeaderbar' && !this.menu) { // // remove the collapsed menu expand... // p.parent().el.select('.navbar-collapse',true).removeClass('in'); // } // }, // // isActive: function () { // return this.active // }, // setActive : function(state, fire, is_was_active) // { // if (this.active && !state && this.navId) { // this.was_active = true; // var nv = Roo.bootstrap.NavGroup.get(this.navId); // if (nv) { // nv.clearWasActive(this); // } // // } // this.active = state; // // if (!state ) { // this.el.removeClass('active'); // } else if (!this.el.hasClass('active')) { // this.el.addClass('active'); // } // if (fire) { // this.fireEvent('changed', this, state); // } // // // show a panel if it's registered and related.. // // if (!this.navId || !this.tabId || !state || is_was_active) { // return; // } // // var tg = Roo.bootstrap.TabGroup.get(this.navId); // if (!tg) { // return; // } // var pan = tg.getPanelByName(this.tabId); // if (!pan) { // return; // } // // if we can not flip to new panel - go back to old nav highlight.. // if (false == tg.showPanel(pan)) { // var nv = Roo.bootstrap.NavGroup.get(this.navId); // if (nv) { // var onav = nv.getWasActive(); // if (onav) { // onav.setActive(true, false, true); // } // } // // } // // // // }, // // this should not be here... // setDisabled : function(state) // { // this.disabled = state; // if (!state ) { // this.el.removeClass('disabled'); // } else if (!this.el.hasClass('disabled')) { // this.el.addClass('disabled'); // } // // }, // // /** // * Fetch the element to display the tooltip on. // * @return {Roo.Element} defaults to this.el // */ // tooltipEl : function() // { // return this.el.select('' + this.tagtype + '', true).first(); // }, // // scrollToElement : function(e) // { // var c = document.body; // // /* // * Firefox / IE places the overflow at the html level, unless specifically styled to behave differently. // */ // if(Roo.isFirefox || Roo.isIE || Roo.isIE11){ // c = document.documentElement; // } // // var target = Roo.get(c).select('a[name=' + this.href.split('#')[1] +']', true).first(); // // if(!target){ // return; // } // // var o = target.calcOffsetsTo(c); // // var options = { // target : target, // value : o[1] // } // // this.fireEvent('scrollto', this, options, e); // // Roo.get(c).scrollTo('top', options.value, true); // // return; // } });