void Update()
 {
     if (!Visible)
     {
         return;
     }
     for (int i = 0; i < SelectionIndex.Values.Count; i++)
     {
         LMS_GuiViewDetail view = SelectionIndex[i].Key as LMS_GuiViewDetail;
         SelectionIndex[i].Value.ForceDownState(i == selectedIndex);
         if (i != selectedIndex)
         {
             try
             {
                 view.callback.Loop((curr) => { curr.Key.Hidden = true; });
             }
             catch { continue; }
         }
         else
         {
             try
             {
                 OptTitle.Config.Text = view.Text;
                 OptText.Config.Text  = view.Text2;
                 view.callback.Loop((curr) => { curr.Key.Hidden = false; });
             }
             catch
             {
                 OptTitle.Config.Text = "";
                 OptText.Config.Text  = "";
             }
         }
     }
 }
    LMS_GuiViewDetail CreateDetails(string text, string text2, params TripleValPair <LMS_GuiBaseCallback, int, GuiViewClientTick>[] keys)
    {
        KeyValuePair <LMS_GuiBaseCallback, int>[] cb;
        keys.ArraySuppressTriplet(out cb);
        LMS_GuiViewDetail l = new LMS_GuiViewDetail(cb, text, text2);

        foreach (TripleValPair <LMS_GuiBaseCallback, int, GuiViewClientTick> pair in keys)
        {
            if (pair.Triple != null)
            {
                l.RegisterTickCallback(pair.Triple);
            }
        }
        return(l);
    }