Server/ClientData.cs
author StephaneLenclud
Sat, 26 Dec 2015 17:43:41 +0100
changeset 175 391bce3c8368
parent 171 151e11cac3b2
child 176 01c72c29cfaf
permissions -rw-r--r--
Improving layout change workflow efficiency.
StephaneLenclud@140
     1
using System;
StephaneLenclud@140
     2
using System.Collections.Generic;
StephaneLenclud@140
     3
using System.Linq;
StephaneLenclud@140
     4
using System.Text;
StephaneLenclud@140
     5
using System.Threading.Tasks;
StephaneLenclud@140
     6
//
StephaneLenclud@171
     7
using SharpLib.Display;
StephaneLenclud@140
     8
StephaneLenclud@140
     9
namespace SharpDisplayManager
StephaneLenclud@140
    10
{
StephaneLenclud@140
    11
    /// <summary>
StephaneLenclud@140
    12
    /// A UI thread copy of a client relevant data.
StephaneLenclud@140
    13
    /// Keeping this copy in the UI thread helps us deal with threading issues.
StephaneLenclud@140
    14
    /// </summary>
StephaneLenclud@140
    15
    public class ClientData
StephaneLenclud@140
    16
    {
StephaneLenclud@140
    17
        public ClientData(string aSessionId, ICallback aCallback)
StephaneLenclud@140
    18
        {
StephaneLenclud@140
    19
            SessionId = aSessionId;
StephaneLenclud@140
    20
            Name = "";
StephaneLenclud@140
    21
            Fields = new List<DataField>();
StephaneLenclud@140
    22
            Layout = new TableLayout(1, 2); //Default to one column and two rows
StephaneLenclud@140
    23
            Callback = aCallback;
StephaneLenclud@175
    24
            HasNewLayout = true;            
StephaneLenclud@140
    25
        }
StephaneLenclud@140
    26
StephaneLenclud@140
    27
        public string SessionId { get; set; }
StephaneLenclud@140
    28
        public string Name { get; set; }
StephaneLenclud@140
    29
        public List<DataField> Fields { get; set; }
StephaneLenclud@140
    30
        public TableLayout Layout { get; set; }
StephaneLenclud@140
    31
        public ICallback Callback { get; set; }
StephaneLenclud@141
    32
StephaneLenclud@175
    33
        public bool HasNewLayout { get; set; }
StephaneLenclud@175
    34
StephaneLenclud@141
    35
        //Client management
StephaneLenclud@141
    36
        public DateTime LastSwitchTime { get; set; }
StephaneLenclud@140
    37
    }
StephaneLenclud@140
    38
}