protected float GetMaxWidth(List <TreeViewItem> rows) { InitStyles(); float num1 = 1f; using (List <TreeViewItem> .Enumerator enumerator = rows.GetEnumerator()) { while (enumerator.MoveNext()) { TreeViewItem current = enumerator.Current; float num2 = 0.0f + GetContentIndent(current); if (current.icon != null) { num2 += k_IconWidth; } float minWidth; float maxWidth; s_Styles.lineStyle.CalcMinMaxWidth(GUIContentWrap.Temp(current.displayName), out minWidth, out maxWidth); float num3 = num2 + maxWidth + k_BaseIndent; if (num3 > num1) { num1 = num3; } } } return(num1); }
public virtual void BeginPingItem(TreeViewItem item, float topPixelOfRow, float availableWidth) { if (item == null || topPixelOfRow < 0.0) { return; } m_Ping.m_TimeStart = Time.realtimeSinceStartup; m_Ping.m_PingStyle = s_Styles.ping; Vector2 vector2 = m_Ping.m_PingStyle.CalcSize(GUIContentWrap.Temp(item.displayName)); m_Ping.m_ContentRect = new Rect(GetContentIndent(item), topPixelOfRow, k_IconWidth + k_SpaceBetweenIconAndText + vector2.x + iconTotalPadding, vector2.y); m_Ping.m_AvailableWidth = availableWidth; var useBoldFont = item.displayName.Equals("Assets"); m_Ping.m_ContentDraw = (rect) => { DrawIconAndLabel(rect, item, item.displayName, false, false, useBoldFont, true); }; m_TreeView.Repaint(); }