private void RenderTODOList() { float TOP_PANEL_MARGING = 40; if (TCore.size == TODOListSize.SMALL) { TOP_PANEL_MARGING = 25; } int i = 1; GUILayout.BeginArea(new Rect(0, TOP_PANEL_MARGING + 2, TAGS_PANLE_WIDTH, position.height - TOP_PANEL_MARGING), ""); { foreach (TagTemplate tpl in tags) { TagRenderer.renderTag(tpl, i); i++; } } GUILayout.EndArea(); GUILayout.BeginArea(new Rect(TAGS_PANLE_WIDTH, TOP_PANEL_MARGING + 2, position.width - TAGS_PANLE_WIDTH, position.height - TOP_PANEL_MARGING), ""); { scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.Width(position.width - TAGS_PANLE_WIDTH), GUILayout.Height(position.height - TOP_PANEL_MARGING)); GUILayout.Box("", GUIStyle.none, new GUILayoutOption[] { GUILayout.ExpandWidth(true), GUILayout.Height(maxYPos) }); i = 1; Rect DrawArea = position; DrawArea.width -= TAGS_PANLE_WIDTH; foreach (TNode node in TCore.nodes) { if (!selectedTagName.Equals(string.Empty)) { if (node.tag != selectedTagName) { continue; } } if (search != string.Empty) { if (node.text.ToLower().Contains(search.ToLower())) { NodeRenderer.renderNode(node, i, DrawArea); i++; } } else { NodeRenderer.renderNode(node, i, DrawArea); i++; } } maxYPos = (i - 1) * NODE_HEIGHT + 20; EditorGUILayout.EndScrollView(); } GUILayout.EndArea(); }