void OnGUI() { var pos = new Rect(new Vector2(), position.size); pos = pos.Expand(-2f); // 2-pixel margins var line = pos.SliceTop(); EditorGUI.BeginDisabledGroup(Target == null); if (GUI.Button(line.SliceRight(60f), RefreshButton)) { Refresh(); } EditorGUI.EndDisabledGroup(); EditorGUI.LabelField(line.SliceLeft(38f), "Asset"); Target = (TextAsset)EditorGUI.ObjectField(line, Target, typeof(TextAsset), false); if (Target != null && (_containerView == null || _displayedAsset != Target)) { var info = new ContainerEditorInfo(Target); _displayedAsset = Target; _containerView = new ContainerEditorView(info, true); } if (Target == null) { Refresh(); } var updatedContainer = _containerView.Draw(pos); if (updatedContainer != null) { ContainerAssetUtils.WriteToTextAsset(updatedContainer, _displayedAsset); Refresh(); } }
public override void OnGUI(Rect rect) { var pos = new Rect(new Vector2(), GetWindowSize()); pos = pos.Expand(-2f); // 2-pixel margins var updatedContainer = _view.Draw(pos); if (updatedContainer != null && _asset != null) { ContainerAssetUtils.WriteToTextAsset(updatedContainer, _asset); var container = ContainerRef.FromTextAsset(_asset).Container as BinaryContainer; _view = new ContainerEditorView(new ContainerEditorInfo(container), _asset); } }