public void printFriendsList() { IEnumerable <Datas.Relationship> relationships = from r in Bdd.DbAccess.Relationships where r.userId1 == App.user.ID select r; this.sPRelationship.Children.Clear(); foreach (Datas.Relationship relationship in relationships) { Datas.User friend = (from u in Bdd.DbAccess.Users where u.ID == relationship.userId2 select u).FirstOrDefault(); if (friend == null) { return; } Datas.Grade grade = (from g in Bdd.DbAccess.Grades where g.ID == friend.idGrade select g).FirstOrDefault(); if (grade == null) { return; } FriendLine line = new FriendLine(); line.setName(friend.username, friend.ID); line.setGrade(grade.name); this.sPRelationship.Children.Add(line); } }
void InitGuiLines() { if (m_FriendList.numOfLines <= 0) { return; } m_GuiLines = new FriendLine[m_FriendList.numOfLines]; for (int idx = 0; idx < m_FriendList.numOfLines; ++idx) { m_GuiLines[idx] = new FriendLine(m_FriendList.GetWidgetOnLine(idx), OnFriendAction); } }
void OnUpdateTableRow(GUIBase_Widget widget, int rowIndex, int itemIndex) { FriendLine row = m_GuiLines[rowIndex]; if (itemIndex < m_Friends.Length) { row.Show(); row.Update(m_Friends[itemIndex]); } else { row.Hide(); } }
// PRIVATE METHODS void InitGuiLines(GUIBase_List inParent) { if (inParent.numOfLines <= 0) { Debug.LogError("inParent.numOfLines = " + inParent.numOfLines); return; } m_GuiLines = new FriendLine[inParent.numOfLines]; for (int i = 0; i < inParent.numOfLines; i++) { m_GuiLines[i] = new FriendLine(this, inParent.GetWidgetOnLine(i)); } }
// ========================================================================================================================= // === MonoBehaviour interface ============================================================================================= // !!!!!! DON"T USE Standard MonoBehaviour Update functions. This view is controled from parrent object... // ========================================================================================================================= // === private part ======================================================================================================== void InitGuiLines(GUIBase_List inParent) { if (inParent.numOfLines <= 0) { Debug.LogError("inParent.numOfLines = " + inParent.numOfLines); return; } m_GuiLines = new FriendLine[inParent.numOfLines]; for (int i = 0; i < inParent.numOfLines; i++) { m_GuiLines[i] = new FriendLine(inParent.GetWidgetOnLine(i)); } //inParent.Widget.NotifyLayoutChanged(true, true); }
// HANDLERS void OnUpdateTableRow(GUIBase_Widget widget, int rowIndex, int itemIndex) { FriendLine row = m_GuiLines[rowIndex]; if (itemIndex < m_Friends.Count) { FriendInfo info = m_Friends[itemIndex]; bool active = m_ActiveFriend == itemIndex ? true : false; if (active == true) { info.UnreadMessages = 0; } row.Show(); row.Update(info, active); } else { row.Hide(); } }