Unity3d Undo是一个EditorWindow [用于bools和字符串]

时间:2015-05-28 17:20:36

标签: unity3d unity3d-editor

这是我的代码,

<PROMPT><span/></PROMPT>


With CTEScreenXML (Code, CreatedOn, ScreenXML) AS
(
    SELECT GXML.Code, GXML.CreatedOn, CAST(GXML.ScreenXML AS NVARCHAR(MAX))
    From dbo.GenScreenXML GXML
    WHERE CAST(GXML.ScreenXML AS NVARCHAR(MAX)) like '%<PROMPT><span/></PROMPT>%'
)

SELECT REPLACE(CTEScreenXML.ScreenXML, '<PROMPT><span/></PROMPT>', '')) --THIS LINE
FROM CTEScreenXML

这是我在编辑器窗口中的代码onGUI function。

我正在尝试为代码创建一个撤消。我不确定如何撤消Toogle Value。 CoreGlobal.OnMobile = EditorGUILayout.Toggle("Mobile Build", CoreGlobal.OnMobile); if (Selection.activeGameObject && Selection.activeGameObject.tag == "CBC") { selectedTransform = Selection.activeGameObject.transform; fold = EditorGUILayout.InspectorTitlebar(fold, selectedTransform); if (fold) { selectedTransform.position = EditorGUILayout.Vector3Field("Position", selectedTransform.position); EditorGUILayout.Space(); rotationComponents = EditorGUILayout.Vector4Field("Detailed Rotation", QuaternionToVector4(selectedTransform.localRotation)); EditorGUILayout.Space(); selectedTransform.localScale = EditorGUILayout.Vector3Field("Scale", selectedTransform.localScale); } selectedTransform.localRotation = ConvertToQuaternion(rotationComponents); EditorGUILayout.Space(); }

有什么方法可以将bool更改为Object,以便我可以撤消它?如果有人能让我开始为了布尔,我可以做其余的事。

1 个答案:

答案 0 :(得分:0)

我不认为这是一个完美的答案,但你可以用这个回调做点什么。它不是一个完美的解决方案,但它应该是一个开始。

http://docs.unity3d.com/ScriptReference/Undo-undoRedoPerformed.html

然后您可以使用虚拟对象注册撤消,然后以某种方式弄清楚如何检测撤消的类型是什么?