예제 #1
0
 private void CreateUIIfNeed(NewsItemNode newsItem, NewsContainerNode container)
 {
     if (this.NeedHideNewsItem(newsItem))
     {
         base.Log.InfoFormat("Hide newsItem: {0}", newsItem);
     }
     else
     {
         Transform containerTransform = container.newsContainer.GetContainerTransform(newsItem.newsItem.Data.Layout);
         if (containerTransform == null)
         {
             base.Log.ErrorFormat("Container for NewsItem not found: {0}", newsItem.newsItem.Data);
         }
         else
         {
             GameObject itemObject = Object.Instantiate <GameObject>(container.newsContainer.newsItemPrefab);
             itemObject.GetComponent <RectTransform>().SetParent(containerTransform, false);
             itemObject.GetComponent <EntityBehaviour>().BuildEntity(newsItem.Entity);
             this.seenNews.Add(newsItem.Entity.Id);
             this.SetAsFirstSiblingIfLessShown(newsItem, containerTransform, itemObject);
         }
     }
 }
예제 #2
0
 public void CreateUI(NodeAddedEvent e, [Combine] NewsItemNode newsItem, NewsContainerNode container)
 {
     this.CreateUIIfNeed(newsItem, container);
 }
예제 #3
0
 public void DeleteUI2(NodeRemoveEvent e, NewsContainerNode container, [JoinAll, Combine] NewsItemNode newsItem)
 {
     this.DeleteUIIfExists(newsItem, false);
 }
예제 #4
0
 public void UpdateUI(NewsItemUpdatedEvent e, NewsItemNode newsItem, [JoinAll] NewsContainerNode container)
 {
     base.Log.InfoFormat("Update NewsItem: {0}", newsItem);
     this.DeleteUIIfExists(newsItem, true);
     this.CreateUIIfNeed(newsItem, container);
 }
예제 #5
0
 public void DeleteUI1(NodeRemoveEvent e, NewsItemNode newsItem, [JoinAll] NewsContainerNode container)
 {
     this.DeleteUIIfExists(newsItem, true);
 }