private string PluginVersionsString()
    {
        string[] moduleInfoStrings
            = ModuleInfosToAlignedString(
                  (from item in pluginInfos select item.info).ToList()
                  ).Split(new string[] { System.Environment.NewLine }, System.StringSplitOptions.None);
        int    platformLength = pluginInfos.Max(item => (item != null) ? item.platform.Length : 0);
        string platformFormat = string.Format("{{0,-{0}}}  ", platformLength);

        string s = "";

        s += "CRIWARE Unity Plugin Script Version" + System.Environment.NewLine
             + "  Ver." + CriWare.GetScriptVersionString() + System.Environment.NewLine + System.Environment.NewLine
             + "CRIWARE Unity Plugin Binary Version" + System.Environment.NewLine;
        for (int i = 0; i < pluginInfos.Count; i++)
        {
            s += "  " + string.Format(platformFormat, pluginInfos[i].platform) + moduleInfoStrings[i] + System.Environment.NewLine;
        }

        return(s);
    }
    private void OnGUI()
    {
        EditorGUILayout.BeginVertical();
        {
            {
                EditorGUILayout.BeginHorizontal();
                if (GUILayout.Button("Copy To Clipboard", GUILayout.Width(180)))
                {
                    EditorGUIUtility.systemCopyBuffer = PluginVersionsString();
                    GUI.FocusControl("");
                }
                if (GUILayout.Button("Reload", GUILayout.Width(80)))
                {
                    Reload();
                    GUI.FocusControl("");
                }
                EditorGUILayout.EndHorizontal();
            }
            /* スクリプトバージョン表示 */
            {
                EditorGUILayout.LabelField("Script Version");
                EditorGUI.indentLevel++;
                EditorGUILayout.LabelField("Ver." + CriWare.GetScriptVersionString());
                EditorGUI.indentLevel--;
            }
            EditorGUILayout.Space();
            /* バイナリバージョン表示 */
            {
                EditorGUILayout.LabelField("Binary Version");
            }
            EditorGUI.indentLevel++;
            /* プラットフォーム別プラグインバイナリバージョン表示 */
            {
                EditorGUILayout.BeginVertical();
                GUILayoutOption platformColumnWidth  = GUILayout.Width(80);
                GUILayoutOption targetColumnWidth    = GUILayout.Width(120);
                GUILayoutOption versionColumnWidth   = GUILayout.Width(140);
                GUILayoutOption buildDateColumnWidth = GUILayout.Width(200);
                GUILayoutOption appendixColumnWidth  = GUILayout.Width(200);
                GUILayoutOption pathColumnWidth      = GUILayout.Width(400);
                if (pluginInfos != null)
                {
                    foreach (var info in pluginInfos)
                    {
                        EditorGUILayout.BeginHorizontal();
                        {
                            if (GUILayout.Button(info.platform, EditorStyles.radioButton, platformColumnWidth))
                            {
                                /* 表示の制限のため表示可能な文字数で切り出す */
                                detailVersionsString  = ModuleInfosToAlignedString(info.moduleVersionInfos);
                                detailVersionsStrings = SplitTextAreaMaxLength(detailVersionsString);
                                scrollPosition        = new Vector2(0.0f, 0.0f);
                                GUI.FocusControl("");
                            }

                            if (info.info != null)
                            {
                                EditorGUILayout.LabelField((info.target ?? "--"), targetColumnWidth);
                                EditorGUILayout.LabelField((info.info.version ?? "--"), versionColumnWidth);
                                EditorGUILayout.LabelField((info.info.buildDate ?? "--"), buildDateColumnWidth);
                                EditorGUILayout.LabelField((info.info.appendix ?? "--"), appendixColumnWidth);
                            }
                            else
                            {
                                EditorGUILayout.LabelField("--", targetColumnWidth);
                                EditorGUILayout.LabelField("--", versionColumnWidth);
                                EditorGUILayout.LabelField("--", buildDateColumnWidth);
                                EditorGUILayout.LabelField("--", appendixColumnWidth);
                            }

                            EditorGUILayout.LabelField(info.path, pathColumnWidth);
                        }
                        EditorGUILayout.EndHorizontal();
                    }
                }
                EditorGUILayout.EndVertical();
            }
            EditorGUI.indentLevel--;
            /* 詳細バージョン情報表示 */
            {
                if (GUILayout.Button("Copy Detail To Clipboard", GUILayout.Width(180)))
                {
                    EditorGUIUtility.systemCopyBuffer = detailVersionsString;
                    GUI.FocusControl("");
                }
                scrollPosition = EditorGUILayout.BeginScrollView(scrollPosition);
                EditorGUILayout.BeginVertical();
                foreach (var item in detailVersionsStrings)
                {
                    EditorGUILayout.TextArea(item);
                }
                EditorGUILayout.EndVertical();
                EditorGUILayout.EndScrollView();
            }
        }
        EditorGUILayout.EndVertical();
    }