| orcpochta |
02.09.2010 15:07 |
У меня сейчас случился разрыв шаблона. Я нечаянно узнал, что можно сделать так:
Код AS3:
package
{
import flash.display.Sprite;
public interface INewInterface extends Sprite
{
function hello ( ):void;
}
}
В Муке такого не было, что интерфейс может являться расширением не интерфейса, а конкретного класса.
В общем, если после этого в FD создать класс, назначить его расширением, например, Shape-а, потребовать реализовать INewInterface и поставить галку генерирования методов интерфейсной реализации, то он выдаст вот такую хрень - в общем я в легком шоке и пытаюсь осмыслить, что происходит)))
Код AS3:
package
{
import flash.events.Event;
import flash.display.Stage;
import flash.display.LoaderInfo;
import flash.geom.Transform;
import flash.geom.Vector3D;
import flash.display.DisplayObjectContainer;
import flash.display.Shader;
import flash.accessibility.AccessibilityProperties;
import flash.ui.ContextMenu;
import flash.accessibility.AccessibilityImplementation;
import flash.geom.Point;
import flash.text.TextSnapshot;
import flash.geom.Rectangle;
import flash.display.Graphics;
import flash.display.Sprite;
import flash.media.SoundTransform;
import flash.display.DisplayObject;
import flash.display.Shape;
public class InterfaceTest extends Shape implements NewInterface
{
public function InterfaceTest()
{
super();
}
/* INTERFACE NewInterface */
public function hello():void
{
}
public function get dropTarget():DisplayObject
{
}
public function get soundTransform():SoundTransform
{
}
public function get hitArea():Sprite
{
}
public function set buttonMode(value:Boolean):void
{
}
public function get graphics():Graphics
{
}
public function get useHandCursor():Boolean
{
}
public function set hitArea(value:Sprite):void
{
}
public function get buttonMode():Boolean
{
}
public function stopDrag():void
{
}
public function set useHandCursor(value:Boolean):void
{
}
public function set soundTransform(sndTransform:SoundTransform):void
{
}
public function startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
{
}
public function get mouseChildren():Boolean
{
}
public function get numChildren():int
{
}
public function contains(child:DisplayObject):Boolean
{
}
public function swapChildrenAt(index1:int, index2:int):void
{
}
public function getChildByName(name:String):DisplayObject
{
}
public function removeChildAt(index:int):DisplayObject
{
}
public function getChildIndex(child:DisplayObject):int
{
}
public function addChildAt(child:DisplayObject, index:int):DisplayObject
{
}
public function set tabChildren(enable:Boolean):void
{
}
public function get textSnapshot():TextSnapshot
{
}
public function swapChildren(child1:DisplayObject, child2:DisplayObject):void
{
}
public function get tabChildren():Boolean
{
}
public function getObjectsUnderPoint(point:Point):Array
{
}
public function set mouseChildren(enable:Boolean):void
{
}
public function removeChild(child:DisplayObject):DisplayObject
{
}
public function getChildAt(index:int):DisplayObject
{
}
public function addChild(child:DisplayObject):DisplayObject
{
}
public function areInaccessibleObjectsUnderPoint(point:Point):Boolean
{
}
public function setChildIndex(child:DisplayObject, index:int):void
{
}
public function get accessibilityImplementation():AccessibilityImplementation
{
}
public function get focusRect():Object
{
}
public function set focusRect(focusRect:Object):void
{
}
public function get doubleClickEnabled():Boolean
{
}
public function set contextMenu(cm:ContextMenu):void
{
}
public function get tabEnabled():Boolean
{
}
public function get contextMenu():ContextMenu
{
}
public function set accessibilityImplementation(value:AccessibilityImplementation):void
{
}
public function set doubleClickEnabled(enabled:Boolean):void
{
}
public function set mouseEnabled(enabled:Boolean):void
{
}
public function set tabIndex(index:int):void
{
}
public function get mouseEnabled():Boolean
{
}
public function get tabIndex():int
{
}
public function set tabEnabled(enabled:Boolean):void
{
}
public function get visible():Boolean
{
}
public function get rotation():Number
{
}
public function localToGlobal(point:Point):Point
{
}
public function get name():String
{
}
public function set width(value:Number):void
{
}
public function globalToLocal(point:Point):Point
{
}
public function get blendMode():String
{
}
public function get scale9Grid():Rectangle
{
}
public function set name(value:String):void
{
}
public function get rotationX():Number
{
}
public function get rotationY():Number
{
}
public function set scaleX(value:Number):void
{
}
public function set scaleY(value:Number):void
{
}
public function set scaleZ(value:Number):void
{
}
public function get accessibilityProperties():AccessibilityProperties
{
}
public function set scrollRect(value:Rectangle):void
{
}
public function get rotationZ():Number
{
}
public function get height():Number
{
}
public function set blendMode(value:String):void
{
}
public function set scale9Grid(innerRectangle:Rectangle):void
{
}
public function getBounds(targetCoordinateSpace:DisplayObject):Rectangle
{
}
public function set blendShader(value:Shader):void
{
}
public function get opaqueBackground():Object
{
}
public function get parent():DisplayObjectContainer
{
}
public function get cacheAsBitmap():Boolean
{
}
public function set rotationX(value:Number):void
{
}
public function set rotationY(value:Number):void
{
}
public function set rotationZ(value:Number):void
{
}
public function local3DToGlobal(point3d:Vector3D):Point
{
}
public function set alpha(value:Number):void
{
}
public function globalToLocal3D(point:Point):Vector3D
{
}
public function set accessibilityProperties(value:AccessibilityProperties):void
{
}
public function get width():Number
{
}
public function hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
{
}
public function set cacheAsBitmap(value:Boolean):void
{
}
public function get scaleX():Number
{
}
public function get scaleY():Number
{
}
public function get scaleZ():Number
{
}
public function get scrollRect():Rectangle
{
}
public function get mouseX():Number
{
}
public function get mouseY():Number
{
}
public function set height(value:Number):void
{
}
public function set mask(value:DisplayObject):void
{
}
public function getRect(targetCoordinateSpace:DisplayObject):Rectangle
{
}
public function get alpha():Number
{
}
public function set transform(value:Transform):void
{
}
public function get loaderInfo():LoaderInfo
{
}
public function get root():DisplayObject
{
}
public function set visible(value:Boolean):void
{
}
public function set opaqueBackground(value:Object):void
{
}
public function hitTestObject(obj:DisplayObject):Boolean
{
}
public function get mask():DisplayObject
{
}
public function set x(value:Number):void
{
}
public function set y(value:Number):void
{
}
public function get transform():Transform
{
}
public function set z(value:Number):void
{
}
public function set filters(value:Array):void
{
}
public function get x():Number
{
}
public function get y():Number
{
}
public function get z():Number
{
}
public function get filters():Array
{
}
public function set rotation(value:Number):void
{
}
public function get stage():Stage
{
}
public function dispatchEvent(event:Event):Boolean
{
}
public function willTrigger(type:String):Boolean
{
}
public function removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
{
}
public function toString():String
{
}
public function hasEventListener(type:String):Boolean
{
}
public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
{
}
}
}
|