protected override void ExecuteCore()
        {
            // add new scene to active document
            document.sceneManager.addScene(scene);

            // update scenes panel
            mainForm.getScenesList().Items.Add("");
        }
        protected override void ExecuteCore()
        {
            TScene scene = document.sceneManager.scene(oldIndex);

            document.sceneManager.deleteScene(oldIndex);

            if (oldIndex > newIndex)
            {
                document.sceneManager.insertScene(scene, newIndex);
                mainForm.getScenesList().SelectedIndex = newIndex;
            }
            else
            {
                document.sceneManager.insertScene(scene, newIndex - 1);
                mainForm.getScenesList().SelectedIndex = newIndex - 1;
            }
        }
        protected override void ExecuteCore()
        {
            // delete scene from document
            document.sceneManager.deleteScene(sceneIndex);

            // current scene idnex;
            int newCurrentIndex = -1;

            if (document.sceneManager.currentSceneIndex >= document.sceneManager.sceneCount())
            {
                newCurrentIndex = document.sceneManager.sceneCount() - 1;
            }
            else if (document.sceneManager.currentSceneIndex == sceneIndex)
            {
                newCurrentIndex = sceneIndex;
            }

            // update scenes panel
            mainForm.getScenesList().Items.RemoveAt(sceneIndex);
            if (newCurrentIndex != -1)
            {
                mainForm.getScenesList().SelectedIndex = newCurrentIndex;
            }
        }