//private constructor
 //base instead of super, location also changes
 private XCmdToChangeScene(XApp app, XScene toScene, XScene returnScene) :
     base(app)
 {
     this.mFromScene   = app.getScenarioMgr().getCurScene();
     this.mToScene     = toScene;
     this.mReturnScene = returnScene;
 }
        //static method to construct and execute this command
        public static bool execute(
            XApp app, XScene toScene, XScene returnScene)
        {
            XCmdToChangeScene cmd =
                new XCmdToChangeScene(app, toScene, returnScene);

            return(cmd.execute());
        }
Example #3
0
 public void setCurScene(XScene scene)
 {
     if (this.mCurScene != null)
     {
         this.mCurScene.wrapUp();
     }
     scene.getReady();
     this.mCurScene = scene;
 }
        protected override string createLog()
        {
            //getClass().getSimpleName() => GetType().Name
            StringBuilder sb = new StringBuilder();

            sb.Append(this.GetType().Name).Append("\t");
            sb.Append(this.mFromScene.GetType().Name).Append("\t");
            XScene curScene = this.mApp.getScenarioMgr().getCurScene();

            sb.Append(curScene.GetType().Name).Append(" \t");
            if (this.mReturnScene == null)
            {
                sb.Append("null");
            }
            else
            {
                sb.Append(curScene.getReturnScene().GetType().Name);
            }
            return(sb.ToString());
        }
 //concrete methods
 protected void addScene(XScene scene)
 {
     this.mScenes.Add(scene);
 }