public override void FinalizePlugIn() { this.styleCopRunner.Dispose(); this.styleCopRunner = null; base.FinalizePlugIn(); }
public override void InitializePlugIn() { base.InitializePlugIn(); this.issuesFactory = new CodeIssueFactory(); this.styleCopRunner = new StyleCopRunner(); }
/// <summary> /// GUI /// </summary> private void OnGUI() { SetEvent(); var targetPathList = new CodeCheckPath().TargetPathList; if (GUILayout.Button("Code Check")) { StyleCopRunner.ExcuteStyleCop(targetPathList); } GUILayout.Space(10); if (_resultDataList == null) { return; } _scrollPosition = EditorGUILayout.BeginScrollView(_scrollPosition); foreach (var data in _resultDataList) { EditorGUILayout.BeginHorizontal(GUI.skin.box); if (GUILayout.Button("Open", GUILayout.Width(40))) { // Visual Studio for Mac では Line の対応を確認 // Mac 版の Rider は指定ファイルを開くのみ UnityEditorInternal.InternalEditorUtility.OpenFileAtLineExternal(data.AssetDatabasePath, data.Line); } EditorGUILayout.BeginVertical(); GUILayout.Label(data.WarningType + data.AssetDatabasePath); GUILayout.Label(data.WarningMessage); EditorGUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); } EditorGUILayout.EndScrollView(); }