protected override void DrawContent(ref Rect contentRect) { using (new GUILayout.VerticalScope()) { // TOOLBAR using (new GUILayout.HorizontalScope(EditorStyles.toolbar)) { if (GUILayout.Button(_createContent, EditorStyles.toolbarDropDown)) { var customMenuRect = new Rect(Event.current.mousePosition.x, Event.current.mousePosition.y, 0, 0); EditorUtility.DisplayCustomMenu(customMenuRect, _createPopupItems, -1, CreatePacket, null); } GUILayout.Space(5); if (GUILayout.Button(_openContent, EditorStyles.toolbarButton)) { OpenPacket(); } if (GUILayout.Button(_saveContent, EditorStyles.toolbarButton)) { SavePacket(); } if (contentRect.width > 470) { if (CurrentPacket != null) { GUILayout.Space(5); if (GUILayout.Button(_generateCodeContent, EditorStyles.toolbarButton)) { GenerateSharpCode(); } } } GUILayout.FlexibleSpace(); if (CurrentPacket != null) { GUILayout.Label($"Name: {PacketName}"); } } if (CurrentPacket != null) { _scrollPosition = EditorGUILayout.BeginScrollView(_scrollPosition); _packetDrawer.DrawLayout(CurrentPacket); EditorGUILayout.EndScrollView(); } else { EditorGUILayout.LabelField(_infoContent, OSCEditorStyles.CenterLabel, GUILayout.Height(contentRect.height)); } } }
protected override void DrawContent(Rect contentRect) { EditorGUILayout.BeginVertical(); EditorGUILayout.BeginHorizontal(EditorStyles.toolbar); if (GUILayout.Button(_createContent, EditorStyles.toolbarDropDown)) { var customMenuRect = new Rect(Event.current.mousePosition.x, Event.current.mousePosition.y, 0, 0); EditorUtility.DisplayCustomMenu(customMenuRect, _createPoputItems, -1, CreatePacket, null); } GUILayout.Space(5); var openButton = GUILayout.Button(_openContent, EditorStyles.toolbarButton); var saveButton = GUILayout.Button(_saveContent, EditorStyles.toolbarButton); var generateButton = false; if (_currentPacket != null) { GUILayout.Space(5); generateButton = GUILayout.Button(_generateCodeContent, EditorStyles.toolbarButton); } GUILayout.FlexibleSpace(); if (_currentPacket != null) { GUILayout.Label(string.Format("Name: {0}", PacketName)); } EditorGUILayout.EndHorizontal(); if (_currentPacket != null && _currentPacket != null) { _scrollPosition = EditorGUILayout.BeginScrollView(_scrollPosition); _packetDrawer.DrawLayout(_currentPacket); EditorGUILayout.EndScrollView(); } else { EditorGUILayout.LabelField(_infoContent, OSCEditorStyles.CenterLabel, GUILayout.Height(contentRect.height)); } EditorGUILayout.EndVertical(); if (openButton) { OpenCurrentDebugPacket(); } if (saveButton) { SaveCurrentDebugPacket(); } if (generateButton) { GenerateCurrendDebugCode(); } }