Inheritance: MonoBehaviour
Exemple #1
0
 static TodoAppState SetVisibility(TodoAppState state, SetVisibility act)
 {
     return(new TodoAppState
     {
         Todos = state.Todos,
         Visibility = act.Visibility
     });
 }
        public static string ToApiString(this SetVisibility visibility)
        {
            switch (visibility)
            {
            case SetVisibility.Public: return("public");

            case SetVisibility.OnlyMe: return("only_me");

            case SetVisibility.Groups: return("groups");

            case SetVisibility.Password: return("password");

            default: throw new ArgumentOutOfRangeException("visibility");
            }
        }
Exemple #3
0
 public void Process(SetVisibility message)
 {
 }
Exemple #4
0
        public void CommitEdits(SetViewModel setViewModel, string newPassword, SetVisibility? newVisibility, SetEditPermissions? newPermissions, IEnumerable<long> groupIDs, Action completed, Action<Exception> errorHandler)
        {
            string editable = newPermissions.HasValue ? newPermissions.Value.ToApiString() : null;
            string visibility = newVisibility.HasValue ? newVisibility.Value.ToApiString() : null;

            api.EditSet(setViewModel.ToSetInfo(), newPassword, visibility, editable, groupIDs, completed, errorHandler, new CancellationToken());
        }
Exemple #5
0
        public void Update(SetInfo si)
        {
            if (ID != si.ID)
            {
                throw new InvalidOperationException("Cannot update Set view model with data from another group");
            }

            Title    = si.Title;
            Author   = si.Author;
            Created  = si.Created;
            Modified = si.Modified;

            for (int i = 0; i < Subjects.Count; ++i)
            {
                if (!si.Subjects.Contains(Subjects[i].Subject))
                {
                    Subjects.RemoveAt(i);
                }
            }

            foreach (var subject in si.Subjects)
            {
                if (Subjects.All(svm => svm.Subject != subject))
                {
                    Subjects.Add(new SubjectViewModel(subject));
                }
            }

            switch (si.Editable)
            {
            case "groups": editPermissions = SetEditPermissions.Groups; break;

            case "password": editPermissions = SetEditPermissions.Password; break;

            default: editPermissions = SetEditPermissions.OnlyMe; break;
            }

            switch (si.Visibility)
            {
            case "public": visibility = SetVisibility.Public; break;

            case "groups": visibility = SetVisibility.Groups; break;

            case "password": visibility = SetVisibility.Password; break;

            default: visibility = SetVisibility.OnlyMe; break;
            }

            HasAccess     = si.HasAccess;
            hasDiscussion = si.HasDiscussion;
            Description   = si.Description;
            Uri           = si.Uri;

            if (si.Terms != null)
            {
                TermsLoaded = true;

                Terms.Clear();
                foreach (var ti in (IEnumerable <TermInfo>)si.Terms)
                {
                    Terms.Add(new TermViewModel(ti));
                }

                TermCount = Terms.Count;
            }
            else
            {
                TermCount = si.TermCount;
            }

            TermLanguageCode       = si.TermLanguageCode;
            DefinitionLanguageCode = si.DefinitionLanguageCode;
        }
Exemple #6
0
 public void Process(SetVisibility message)
 {
     IsVisible = message.Visible;
 }