I believe it made for less processing / runtime overhead. But I agree there are situations you would still like to be able to use events or at least a simple toolTip text.
I know a few people that created their own child of say something like a button. They then override the enabled property and use their own enabled Boolean to keep track of it. Then they make the component look like it's disabled but changing the skin state. Override any event handlers they don't want firing. -Mark -----Original Message----- From: João Fernandes [mailto:joaopedromartinsfernan...@gmail.com] Sent: Thursday, July 17, 2014 5:52 AM To: dev@flex.apache.org Subject: Different behavior between mx and spark Hi, something that has bugging me is that skinnable components behave differently from mx conter part when the object has enabled = false. In MX all components still respond to mouseEvents while skinnable won't because at the skinnableComponent level we have this override public function set enabled(value:Boolean):void { super.enabled = value; invalidateSkinState(); // If enabled, reset the mouseChildren, mouseEnabled to the previously // set explicit value, otherwise disable mouse interaction. super.mouseChildren = value ? _explicitMouseChildren : false; super.mouseEnabled = value ? _explicitMouseEnabled : false; } I plan to implement a similar mx behavior but keeping the current behavior as the default. Before I start doing anything, is there any reason for this difference in behavior? -- João Fernandes