Browse Source

Clean up, removed unnecessary event, added UnsubscribeFromEvent function

rsredsq 10 years ago
parent
commit
8cd2309511

+ 5 - 1
Script/AtomicEditor/editor/Editor.ts

@@ -57,6 +57,10 @@ class Editor extends Atomic.ScriptObject {
             Preferences.getInstance().registerRecentProject(data.projectPath);
         });
 
+        this.subscribeToEvent("EditorResourceCloseCanceled", (_) => {
+            this.unsubscribeFromEvent("AllResourceEditorsClosed");
+        });
+
         this.parseArguments();
     }
 
@@ -90,7 +94,7 @@ class Editor extends Atomic.ScriptObject {
             this.sendEvent("AllResourceEditorsClosed");
             return;
         }
-        this.subscribeToEvent("ResourceEditorClosed", (data) => {
+        this.subscribeToEvent("EditorCloseResource", (data) => {
             this.checkIfEverythingClosed();
         });
         editor.requestClose();

+ 5 - 0
Script/Packages/Atomic/Core.json

@@ -10,6 +10,11 @@
 			"SendEvent" : ["StringHash"]
 		}
 	},
+	"overloads" : {
+		"Object" : {
+			"UnsubscribeFromEvent" : ["StringHash"]
+		}
+	},
 	"typescript_decl" : {
 
 		"Object" : [

+ 1 - 7
Source/AtomicEditor/Editors/ResourceEditor.cpp

@@ -12,8 +12,6 @@
 
 #include <TurboBadger/tb_message_window.h>
 
-#include "ResourceEditorEvents.h"
-
 #include "ResourceEditor.h"
 
 //#include "../UI/UIMainFrame.h"
@@ -67,6 +65,7 @@ public:
                 }
                 else
                 {
+                    editor_->SendEvent("EditorResourceCloseCanceled");
                     SetFocus(WIDGET_FOCUS_REASON_UNKNOWN);
                 }
                 return true;
@@ -165,11 +164,6 @@ void ResourceEditor::Close(bool navigateToAvailableResource)
     data["Editor"] = this;
     data["NavigateToAvailableResource"] = navigateToAvailableResource;
     SendEvent("EditorCloseResource", data);
-
-
-    VariantMap editorClosedEvent;
-    editorClosedEvent[ResourceEditorClosed::P_RESOURCEEDITOR] = this;
-    SendEvent(E_RESOURCEEDITORCLOSED, editorClosedEvent);
 }
 
 void ResourceEditor::InvokeShortcut(const String& shortcut)

+ 0 - 20
Source/AtomicEditor/Editors/ResourceEditorEvents.h

@@ -1,20 +0,0 @@
-//
-// Copyright (c) 2014-2015, THUNDERBEAST GAMES LLC All rights reserved
-// LICENSE: Atomic Game Engine Editor and Tools EULA
-// Please see LICENSE_ATOMIC_EDITOR_AND_TOOLS.md in repository root for
-// license information: https://github.com/AtomicGameEngine/AtomicGameEngine
-//
-
-#pragma once
-
-#include <Atomic/Core/Object.h>
-
-#include "ResourceEditor.h"
-
-namespace AtomicEditor
-{
-EVENT(E_RESOURCEEDITORCLOSED, ResourceEditorClosed)
-{
-    PARAM(P_RESOURCEEDITOR, ResourceEditor);            // ResourceEditor
-}
-}