コード例 #1
0
 public Message HandleViewModelEvent(VMEvent eventMsg)
 {
     if (eventMsg.IsViewPortionRendered)
     {
         _drawings.AddRange(((VMEvent.ViewPortionRendered)eventMsg).Item2);
         if (_cellMetrics != null)
         {
             TriggerDraw(((VMEvent.ViewPortionRendered)eventMsg).Item1);
         }
     }
     if (eventMsg.IsMultipleViewPortionsRendered)
     {
         var multipleEvents = ((VMEvent.MultipleViewPortionsRendered)eventMsg).Split().ToList();
         foreach (var @event in multipleEvents.Skip(1))
         {
             _portionsYetToRender.Enqueue(@event);
         }
         return(multipleEvents.First());
     }
     if (eventMsg.IsViewModelInitialized)
     {
         var viewModel = ((VMEvent.ViewModelInitialized)eventMsg).Item;
         SetBackgroundColor(viewModel.BackgroundColor);
         SetFontBySize(viewModel.FontSize);
         SetViewSize(viewModel.Size);
         SetViewTitle(viewModel.Title);
     }
     return(null);
 }
コード例 #2
0
 protected void DeRegisterForEvent(VMEvent vmEvent, EventHandler handler)
 {
     if (ViewModelMediator.eventHandlers[vmEvent].Contains(handler))
     {
         ViewModelMediator.eventHandlers[vmEvent].Remove(handler);
     }
 }
コード例 #3
0
 protected void RegisterForEvent(VMEvent vmEvent, EventHandler handler)
 {
     if (!ViewModelMediator.eventHandlers[vmEvent].Contains(handler))
     {
         ViewModelMediator.eventHandlers[vmEvent].Add(handler);
     }
 }
コード例 #4
0
 protected void TryInvokeEvent(VMEvent vmEvent, EventArgs args)
 {
     // If want certain events to ve invoked based on certain conditions only
     // TODO: add conditions here
     foreach (var handler in ViewModelMediator.eventHandlers[vmEvent])
     {
         handler(this, args);
     }
 }
コード例 #5
0
 public static VM Map(VMEvent vme) =>
 new VM()
 {
     Id        = vme.VMId,
     Resources = new Resources
     {
         IOPS    = vme.IOPS,
         Memmory = vme.Memory,
         CPU     = vme.CPU,
         Network = vme.Network
     }
 };
コード例 #6
0
        public ActionResult Index(int page = 1)
        {
            ViewBag.Event = true;
            VMEvent model = new VMEvent();

            model.BGImage     = db.BGImages.FirstOrDefault(b => b.Page == "Event");
            model.Events      = db.Events.Include("EventCategory").OrderByDescending(o => o.Id).Skip((page - 1) * 6).Take(6).ToList();
            model.PageCount   = Convert.ToInt32(Math.Ceiling(db.Events.Count() / 6.0));
            model.CurrentPage = page;
            model.LatestBlogs = db.Blogs.Include("BlogCategory").Include("User").OrderByDescending(t => t.Id).Take(3).ToList();
            model.Common      = db.Commons.FirstOrDefault();
            model.Categories  = db.EventCategories.ToList();
            return(View(model));
        }
コード例 #7
0
 public static IEnumerable <VMEvent.ViewPortionRendered> Split(this VMEvent.MultipleViewPortionsRendered multiple)
 {
     return(multiple.Item.Select(x => (VMEvent.ViewPortionRendered)VMEvent.NewViewPortionRendered(x.Item1, x.Item2)));
 }