import com.stevensacks.utils.ObservableClass; import com.stevensacks.galapagos.data.PageModel; class com.stevensacks.galapagos.core.Page extends OberservableClass { private var parent:Page; private var child:Page; private var self:MovieClip; private var model:PageModel; function Page(clip:MovieClip, pm:PageModel) { super(); self = clip; model = pm; self.loadMovie(model.src); } function transitionIn():Void { if (self.transitionIn) { self.transitionIn(); } else { self.gotoAndPlay("transitionIn"); } } function transitionOut():Void { if (self.transitionOut) { self.transitionOut(); } else { self.gotoAndPlay("transitionOut"); } } function onTransitionIn():Void { if (child.transitionIn) { child.transitionIn; } else { dispatchEvent({type:"transitionInComplete"}); } } function onTransitionOut():Void { if (parent.transitionOut) { parent.transitionOut(); } else { dispatchEvent({type:"transitionOutComplete"}); } } }