X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=Roo%2FButton.js;h=c3cc8d6ee840c8be457b6a91391fa19313bcc641;hb=6f4f9538e7b21526daa7b20502f10b14f80da7af;hp=ee5ed93a96718254307e33b18c3795fca14671dc;hpb=137e95aed154d0f489d70033f1bbaab4cfaa9971;p=roojs1 diff --git a/Roo/Button.js b/Roo/Button.js index ee5ed93a96..c3cc8d6ee8 100644 --- a/Roo/Button.js +++ b/Roo/Button.js @@ -79,6 +79,7 @@ Roo.Button = function(renderTo, config) if(this.menu){ this.menu = Roo.menu.MenuMgr.get(this.menu); } + // register listeners first!! - so render can be captured.. Roo.util.Observable.call(this); if(renderTo){ this.render(renderTo); @@ -120,7 +121,7 @@ Roo.extend(Roo.Button, Roo.util.Observable, { */ enableToggle: false, /** - * @cfg {Mixed} menu + * @cfg {Roo.menu.Menu} menu * Standard menu attribute consisting of a reference to a menu object, a menu id or a menu config blob (defaults to undefined). */ menu : undefined, @@ -260,7 +261,7 @@ Roo.extend(Roo.Button, Roo.util.Observable, { ); repeater.on("click", this.onClick, this); } - Roo.log("FIRING RENDER EVENT"); + this.fireEvent('render', this); }, @@ -368,7 +369,24 @@ Roo.extend(Roo.Button, Roo.util.Observable, { this.hide(); } }, - + /** + * Similar to toggle, but does not trigger event. + * @param {Boolean} state [required] Force a particular state + */ + setPressed : function(state) + { + + if(state != this.pressed){ + if(state){ + this.el.addClass("x-btn-pressed"); + this.pressed = true; + }else{ + this.el.removeClass("x-btn-pressed"); + this.pressed = false; + } + } + } + /** * If a state it passed, it becomes the pressed state otherwise the current state is toggled. * @param {Boolean} state (optional) Force a particular state @@ -391,6 +409,8 @@ Roo.extend(Roo.Button, Roo.util.Observable, { } }, + + /** * Focus the button */ @@ -427,7 +447,8 @@ Roo.extend(Roo.Button, Roo.util.Observable, { }, // private - onClick : function(e){ + onClick : function(e) + { if(e){ e.preventDefault(); }