Exemplo n.º 1
0
 private static void CreateKerbalViewer()
 {
     DisplaySelectProfession();
     DisplaySelectGender();
     GUILayout.BeginHorizontal();
     if (GUILayout.Button("Create", GUILayout.MaxWidth(80)))
     {
         bool kerbalFound = false;
         while (!kerbalFound)
         {
             SelectedKerbal = ModKerbal.CreateKerbal();
             if (SelectedKerbal.Title == KerbalProfession && SelectedKerbal.Gender == gender)
             {
                 kerbalFound = true;
             }
         }
         OnCreate = false;
     }
     if (GUILayout.Button("Cancel", GUILayout.MaxWidth(80)))
     {
         OnCreate       = false;
         SelectedKerbal = null;
     }
     GUILayout.EndHorizontal();
 }
Exemplo n.º 2
0
        private static void DisplayRosterListViewer()
        {
            try
            {
                string buttonToolTip = string.Empty;
                GUIStyle hdrlabelStyle = new GUIStyle(GUI.skin.label);
                hdrlabelStyle.fontStyle = FontStyle.Bold;
                GUILayout.BeginVertical();
                GUILayout.BeginHorizontal();
                GUILayout.Label("", hdrlabelStyle, GUILayout.Width(5));
                buttonToolTip = "Click to sort.  Click again to sort the opposite direction.";
                if (GUILayout.Button(new GUIContent("Name", buttonToolTip), hdrlabelStyle, GUILayout.Width(150)))
                    SortRosterList("Name");
                Rect rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);

                if (GUILayout.Button(new GUIContent("|Gender", buttonToolTip), hdrlabelStyle, GUILayout.Width(50)))
                    SortRosterList("Gender");
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);

                if (GUILayout.Button(new GUIContent("|Profession", buttonToolTip), hdrlabelStyle, GUILayout.Width(75)))
                    SortRosterList("Profession");
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);

                if (GUILayout.Button(new GUIContent("|Skill", buttonToolTip), hdrlabelStyle, GUILayout.Width(35)))
                    SortRosterList("Skill");
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);

                if (GUILayout.Button(new GUIContent("|Experience", buttonToolTip), hdrlabelStyle, GUILayout.Width(75)))
                    SortRosterList("Experience");
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);

                if (GUILayout.Button(new GUIContent("|Status", buttonToolTip), hdrlabelStyle, GUILayout.Width(200)))
                    SortRosterList("Status");
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);

                GUILayout.EndHorizontal();

                ScrollViewerPosition = GUILayout.BeginScrollView(ScrollViewerPosition, RMStyle.ScrollStyle, GUILayout.Height(230), GUILayout.Width(680));
                foreach (ProtoCrewMember kerbal in RMAddon.AllCrew)
                {
                    if (CanDisplayKerbal(kerbal))
                    {
                        GUIStyle labelStyle = null;
                        if (kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Dead || kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Missing)
                            labelStyle = RMStyle.LabelStyleRed;
                        else if (kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Assigned)
                            labelStyle = RMStyle.LabelStyleYellow;
                        else
                            labelStyle = RMStyle.LabelStyle;

                        // What vessel is this Kerbal Assigned to?
                        string rosterDetails = "";
                        if (kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Assigned)
                        {
                            foreach (Vessel thisVessel in FlightGlobals.Vessels)
                            {
                                List<ProtoCrewMember> crew = thisVessel.GetVesselCrew();
                                foreach (ProtoCrewMember crewMember in crew)
                                {
                                    if (crewMember == kerbal)
                                    {
                                        rosterDetails = "Assigned - " + thisVessel.GetName().Replace("(unloaded)", "");
                                        break;
                                    }
                                }
                            }
                        }
                        else if (InstalledMods.IsDFInstalled && kerbal.type == ProtoCrewMember.KerbalType.Unowned)
                        {
                            // This kerbal could be frozen.  Lets find out...
                            rosterDetails = GetFrozenDetials(kerbal);
                            labelStyle = RMStyle.LabelStyleCyan;
                        }
                        else
                        {
                            // Since the kerbal has no vessel assignment, lets show what their status...
                            rosterDetails = kerbal.rosterStatus.ToString();
                        }
                        string buttonText = string.Empty;
                        GUILayout.BeginHorizontal();
                        buttonText = kerbal.name;
                        buttonToolTip = "Opens the Edit section for this kerbal.";
                        GUIStyle btnStyle = (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal) ? RMStyle.ButtonStyleLeft : RMStyle.ButtonToggledStyleLeft;
                        if (GUILayout.Button(new GUIContent(buttonText, buttonToolTip), btnStyle, GUILayout.Width(160)))
                        {
                            if (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal)
                            {
                                SelectedKerbal = new ModKerbal(kerbal, false);
                                SetProfessionFlag();
                                gender = SelectedKerbal.Gender;
                            }
                            else
                            {
                                SelectedKerbal = null;
                                gender = ProtoCrewMember.Gender.Male;
                            }
                        }
                        rect = GUILayoutUtility.GetLastRect();
                        if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                            ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 50 - ScrollViewerPosition.y);
                        GUILayout.Label(kerbal.gender.ToString(), labelStyle, GUILayout.Width(50));
                        GUILayout.Label(kerbal.experienceTrait.Title, labelStyle, GUILayout.Width(75));
                        GUILayout.Label(kerbal.experienceLevel.ToString(), labelStyle, GUILayout.Width(35));
                        GUILayout.Label(kerbal.experience.ToString(), labelStyle, GUILayout.Width(75));
                        GUILayout.Label(rosterDetails, labelStyle, GUILayout.Width(240));

                        //if (!RMSettings.RealismMode || kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Available)
                        //    GUI.enabled = true;
                        //else
                        //    GUI.enabled = false;

                        //buttonText = (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal) ? "Edit" : "Cancel";
                        //if (GUI.enabled)
                        //    buttonToolTip = (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal) ? "Edit this Kerbal's characteristics" : "Cancel any changes to this Kerbal";
                        //else
                        //    buttonToolTip = "Kerbal is not available at this time.\r\nEditing is disabled";

                        //if (GUILayout.Button(new GUIContent(buttonText, buttonToolTip), GUILayout.Width(60)))
                        //{
                        //    if (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal)
                        //    {
                        //        SelectedKerbal = new ModKerbal(kerbal, false);
                        //        SetProfessionFlag();
                        //    }
                        //    else
                        //    {
                        //        SelectedKerbal = null;
                        //    }
                        //}

                        //rect = GUILayoutUtility.GetLastRect();
                        //if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                        //    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 50 - ScrollViewerPosition.y);

                    //    if (HighLogic.LoadedScene != GameScenes.SPACECENTER && ((RMSettings.RealismMode && RMAddon.IsPreLaunch) || !RMSettings.RealismMode) && kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Available && FlightGlobals.ActiveVessel != null && !RMAddon.VesselIsFull(FlightGlobals.ActiveVessel))
                    //    {
                    //        GUI.enabled = true;
                    //        buttonText = "Add";
                    //        buttonToolTip = "Adds a kerbal to the Active Vessel,\r\nin the first available seat.";
                    //    }
                    //    else if ((kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Dead && kerbal.type != ProtoCrewMember.KerbalType.Unowned) || kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Missing)
                    //    {
                    //        GUI.enabled = true;
                    //        buttonText = "Respawn";
                    //        buttonToolTip = "Brings a Kerbal back to life.\r\nWill then become available.";
                    //    }
                    //    else if (HighLogic.LoadedScene != GameScenes.SPACECENTER && ((RMSettings.RealismMode && RMAddon.IsPreLaunch) || !RMSettings.RealismMode) && kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Assigned && FlightGlobals.ActiveVessel.GetVesselCrew().Contains(kerbal))
                    //    {
                    //        GUI.enabled = true;
                    //        buttonText = "Remove";
                    //        buttonToolTip = "Removes a Kerbal from the active vessel.\r\nWill then become available.";
                    //    }
                    //    else if (HighLogic.LoadedScene != GameScenes.SPACECENTER && (RMSettings.RealismMode && !RMAddon.IsPreLaunch) && kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Available)
                    //    {
                    //        GUI.enabled = false;
                    //        buttonText = "Add";
                    //        buttonToolTip = "Add Disabled.  Realism Settings are preventing this action.\r\nTo add a Kerbal, Change your realism Settings.";
                    //    }
                    //    else
                    //    {
                    //        GUI.enabled = false;
                    //        buttonText = "--";
                    //        buttonToolTip = "Kerbal is not available (" + kerbal.rosterStatus + ").\r\nCurrent status does not allow any action.";
                    //    }

                    //    if (GUILayout.Button(new GUIContent(buttonText, buttonToolTip), GUILayout.Width(70)))
                    //    {
                    //        if (buttonText == "Add")
                    //            RMAddon.AddCrewMember(kerbal, FlightGlobals.ActiveVessel);
                    //        else if (buttonText == "Respawn")
                    //            RMAddon.RespawnKerbal(kerbal);
                    //        else if (buttonText == "Remove")
                    //        {
                    //            // get part...
                    //            Part part = RMAddon.FindKerbalPart(kerbal);
                    //            if (part != null)
                    //                RMAddon.RemoveCrewMember(kerbal, part);
                    //        }
                    //    }
                    //    rect = GUILayoutUtility.GetLastRect();
                    //    if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                    //        ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 50 - ScrollViewerPosition.y);
                        GUILayout.EndHorizontal();
                        GUI.enabled = true;
                    }
                }

                GUILayout.EndVertical();
                GUILayout.EndScrollView();

            }
            catch (Exception ex)
            {
                Utilities.LogMessage(string.Format(" in RosterListViewer.  Error:  {0} \r\n\r\n{1}", ex.Message, ex.StackTrace), "Error", true);
            }
        }
Exemplo n.º 3
0
        private static void DisplayRosterListViewer()
        {
            try
            {
                string   buttonToolTip = string.Empty;
                GUIStyle hdrlabelStyle = new GUIStyle(GUI.skin.label);
                hdrlabelStyle.fontStyle = FontStyle.Bold;
                GUILayout.BeginVertical();
                GUILayout.BeginHorizontal();
                GUILayout.Label("", hdrlabelStyle, GUILayout.Width(5));
                buttonToolTip = "Click to sort.  Click again to sort the opposite direction.";
                if (GUILayout.Button(new GUIContent("Name", buttonToolTip), hdrlabelStyle, GUILayout.Width(150)))
                {
                    SortRosterList("Name");
                }
                Rect rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                {
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);
                }

                if (GUILayout.Button(new GUIContent("|Gender", buttonToolTip), hdrlabelStyle, GUILayout.Width(50)))
                {
                    SortRosterList("Gender");
                }
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                {
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);
                }

                if (GUILayout.Button(new GUIContent("|Profession", buttonToolTip), hdrlabelStyle, GUILayout.Width(75)))
                {
                    SortRosterList("Profession");
                }
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                {
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);
                }

                if (GUILayout.Button(new GUIContent("|Skill", buttonToolTip), hdrlabelStyle, GUILayout.Width(35)))
                {
                    SortRosterList("Skill");
                }
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                {
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);
                }

                if (GUILayout.Button(new GUIContent("|Experience", buttonToolTip), hdrlabelStyle, GUILayout.Width(75)))
                {
                    SortRosterList("Experience");
                }
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                {
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);
                }

                if (GUILayout.Button(new GUIContent("|Status", buttonToolTip), hdrlabelStyle, GUILayout.Width(200)))
                {
                    SortRosterList("Status");
                }
                rect = GUILayoutUtility.GetLastRect();
                if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                {
                    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 5 - ScrollViewerPosition.y);
                }

                GUILayout.EndHorizontal();

                ScrollViewerPosition = GUILayout.BeginScrollView(ScrollViewerPosition, RMStyle.ScrollStyle, GUILayout.Height(230), GUILayout.Width(680));
                foreach (ProtoCrewMember kerbal in RMAddon.AllCrew)
                {
                    if (CanDisplayKerbal(kerbal))
                    {
                        GUIStyle labelStyle = null;
                        if (kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Dead || kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Missing)
                        {
                            labelStyle = RMStyle.LabelStyleRed;
                        }
                        else if (kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Assigned)
                        {
                            labelStyle = RMStyle.LabelStyleYellow;
                        }
                        else
                        {
                            labelStyle = RMStyle.LabelStyle;
                        }

                        // What vessel is this Kerbal Assigned to?
                        string rosterDetails = "";
                        if (kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Assigned)
                        {
                            foreach (Vessel thisVessel in FlightGlobals.Vessels)
                            {
                                List <ProtoCrewMember> crew = thisVessel.GetVesselCrew();
                                foreach (ProtoCrewMember crewMember in crew)
                                {
                                    if (crewMember == kerbal)
                                    {
                                        rosterDetails = "Assigned - " + thisVessel.GetName().Replace("(unloaded)", "");
                                        break;
                                    }
                                }
                            }
                        }
                        else if (InstalledMods.IsDFInstalled && kerbal.type == ProtoCrewMember.KerbalType.Unowned)
                        {
                            // This kerbal could be frozen.  Lets find out...
                            rosterDetails = GetFrozenDetials(kerbal);
                            labelStyle    = RMStyle.LabelStyleCyan;
                        }
                        else
                        {
                            // Since the kerbal has no vessel assignment, lets show what their status...
                            rosterDetails = kerbal.rosterStatus.ToString();
                        }
                        string buttonText = string.Empty;
                        GUILayout.BeginHorizontal();
                        buttonText    = kerbal.name;
                        buttonToolTip = "Opens the Edit section for this kerbal.";
                        GUIStyle btnStyle = (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal) ? RMStyle.ButtonStyleLeft : RMStyle.ButtonToggledStyleLeft;
                        if (GUILayout.Button(new GUIContent(buttonText, buttonToolTip), btnStyle, GUILayout.Width(160)))
                        {
                            if (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal)
                            {
                                SelectedKerbal = new ModKerbal(kerbal, false);
                                SetProfessionFlag();
                                gender = SelectedKerbal.Gender;
                            }
                            else
                            {
                                SelectedKerbal = null;
                                gender         = ProtoCrewMember.Gender.Male;
                            }
                        }
                        rect = GUILayoutUtility.GetLastRect();
                        if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                        {
                            ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 50 - ScrollViewerPosition.y);
                        }
                        GUILayout.Label(kerbal.gender.ToString(), labelStyle, GUILayout.Width(50));
                        GUILayout.Label(kerbal.experienceTrait.Title, labelStyle, GUILayout.Width(75));
                        GUILayout.Label(kerbal.experienceLevel.ToString(), labelStyle, GUILayout.Width(35));
                        GUILayout.Label(kerbal.experience.ToString(), labelStyle, GUILayout.Width(75));
                        GUILayout.Label(rosterDetails, labelStyle, GUILayout.Width(240));


                        //if (!RMSettings.RealismMode || kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Available)
                        //    GUI.enabled = true;
                        //else
                        //    GUI.enabled = false;

                        //buttonText = (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal) ? "Edit" : "Cancel";
                        //if (GUI.enabled)
                        //    buttonToolTip = (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal) ? "Edit this Kerbal's characteristics" : "Cancel any changes to this Kerbal";
                        //else
                        //    buttonToolTip = "Kerbal is not available at this time.\r\nEditing is disabled";

                        //if (GUILayout.Button(new GUIContent(buttonText, buttonToolTip), GUILayout.Width(60)))
                        //{
                        //    if (SelectedKerbal == null || SelectedKerbal.Kerbal != kerbal)
                        //    {
                        //        SelectedKerbal = new ModKerbal(kerbal, false);
                        //        SetProfessionFlag();
                        //    }
                        //    else
                        //    {
                        //        SelectedKerbal = null;
                        //    }
                        //}

                        //rect = GUILayoutUtility.GetLastRect();
                        //if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                        //    ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 50 - ScrollViewerPosition.y);

                        //    if (HighLogic.LoadedScene != GameScenes.SPACECENTER && ((RMSettings.RealismMode && RMAddon.IsPreLaunch) || !RMSettings.RealismMode) && kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Available && FlightGlobals.ActiveVessel != null && !RMAddon.VesselIsFull(FlightGlobals.ActiveVessel))
                        //    {
                        //        GUI.enabled = true;
                        //        buttonText = "Add";
                        //        buttonToolTip = "Adds a kerbal to the Active Vessel,\r\nin the first available seat.";
                        //    }
                        //    else if ((kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Dead && kerbal.type != ProtoCrewMember.KerbalType.Unowned) || kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Missing)
                        //    {
                        //        GUI.enabled = true;
                        //        buttonText = "Respawn";
                        //        buttonToolTip = "Brings a Kerbal back to life.\r\nWill then become available.";
                        //    }
                        //    else if (HighLogic.LoadedScene != GameScenes.SPACECENTER && ((RMSettings.RealismMode && RMAddon.IsPreLaunch) || !RMSettings.RealismMode) && kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Assigned && FlightGlobals.ActiveVessel.GetVesselCrew().Contains(kerbal))
                        //    {
                        //        GUI.enabled = true;
                        //        buttonText = "Remove";
                        //        buttonToolTip = "Removes a Kerbal from the active vessel.\r\nWill then become available.";
                        //    }
                        //    else if (HighLogic.LoadedScene != GameScenes.SPACECENTER && (RMSettings.RealismMode && !RMAddon.IsPreLaunch) && kerbal.rosterStatus == ProtoCrewMember.RosterStatus.Available)
                        //    {
                        //        GUI.enabled = false;
                        //        buttonText = "Add";
                        //        buttonToolTip = "Add Disabled.  Realism Settings are preventing this action.\r\nTo add a Kerbal, Change your realism Settings.";
                        //    }
                        //    else
                        //    {
                        //        GUI.enabled = false;
                        //        buttonText = "--";
                        //        buttonToolTip = "Kerbal is not available (" + kerbal.rosterStatus + ").\r\nCurrent status does not allow any action.";
                        //    }

                        //    if (GUILayout.Button(new GUIContent(buttonText, buttonToolTip), GUILayout.Width(70)))
                        //    {
                        //        if (buttonText == "Add")
                        //            RMAddon.AddCrewMember(kerbal, FlightGlobals.ActiveVessel);
                        //        else if (buttonText == "Respawn")
                        //            RMAddon.RespawnKerbal(kerbal);
                        //        else if (buttonText == "Remove")
                        //        {
                        //            // get part...
                        //            Part part = RMAddon.FindKerbalPart(kerbal);
                        //            if (part != null)
                        //                RMAddon.RemoveCrewMember(kerbal, part);
                        //        }
                        //    }
                        //    rect = GUILayoutUtility.GetLastRect();
                        //    if (Event.current.type == EventType.Repaint && ShowToolTips == true)
                        //        ToolTip = Utilities.SetActiveTooltip(rect, Position, GUI.tooltip, ref ToolTipActive, 30, 50 - ScrollViewerPosition.y);
                        GUILayout.EndHorizontal();
                        GUI.enabled = true;
                    }
                }

                GUILayout.EndVertical();
                GUILayout.EndScrollView();
            }
            catch (Exception ex)
            {
                Utilities.LogMessage(string.Format(" in RosterListViewer.  Error:  {0} \r\n\r\n{1}", ex.Message, ex.StackTrace), "Error", true);
            }
        }