//---------------------------------------------------------------------
        #region TagsChanged

        public void TagsChanged(StickViewModel sticker)
        {
            if (!OfflineMode)
            {
                Client.Sender.EditTags(GetIndexOfSticker(sticker), sticker.Stick.Tags);
            }
        }
        //---------------------------------------------------------------------
        #region StickerEdited

        public void StickerEdited(StickViewModel sticker)
        {
            if (!OfflineMode)
            {
                Client.Sender.SaveSticker(sticker.ToStick(), GetIndexOfSticker(sticker));
            }
        }
        private void ProcessCreateStickResult(AnswerId answer)
        {
            var stick = new StickViewModel();

            stick.FromStick(Client.Listener.СreatingStickerForHander(answer));
            StickCollection.Add(stick);
        }
        //---------------------------------------------------------------------
        #region RemoveSticker

        public void RemoveSticker(StickViewModel sticker)
        {
            if (!OfflineMode)
            {
                Client.Sender.DeleteSticker(Client.User.sticks.IndexOf(sticker.ToStick()));
            }
            StickCollection.Remove(sticker);
        }
        //---------------------------------------------------------------------
        #region CreateStick

        private void CreateStick(object e)
        {
            if (OfflineMode)
            {
                var stick = new StickViewModel();
                stick.Stick.Title = "Title";
                stick.Stick.Contents.Add(new TextContentFrontend("Sample text"));
                StickCollection.Add(stick);
            }
            else
            {
                Client.Sender.CreateSticker();
            }
        }
Exemplo n.º 6
0
        //---------------------------------------------------------------------
        #region StickCollectionFilter

        public bool StickCollectionFilter(object obj)
        {
            StickViewModel view = obj as StickViewModel;
            //-------------------------------------------------
            bool searchBoxNotEmpty = string.IsNullOrEmpty(SearchText) is false;
            bool tagListHasSelect  = TagSelected != null;

            if (searchBoxNotEmpty is false && tagListHasSelect is false)
            {
                return(true);
            }
            //-------------------------------------------------
            bool inTitle, inContent, inTag;

            inTitle = inContent = inTag = false;
            //-------------------------------------------------
            if (searchBoxNotEmpty)
            {
                inTitle   = view.Stick.Title.ToLower().Contains(SearchText.ToLower());
                inContent = view.Stick.Contents.Count != 0
                            &&
                            view.Stick.Contents.Any(c =>
                {
                    string text;
                    if (c is TextContent tc)
                    {
                        text = tc.Text;
                    }
                    else if (c is CheckboxContent cbc)
                    {
                        text = cbc.Text;
                    }
                    else
                    {
                        return(false);
                    }

                    return(text.ToLower().Contains(SearchText.ToLower()));
                });
            }
            //-------------------------------------------------
            inTag = tagListHasSelect &&
                    view.Stick.Tags.Contains(TagSelected.Text);
            //-------------------------------------------------
            return(inTitle || inContent || inTag);
        }
 //---------------------------------------------------------------------
 public int GetIndexOfSticker(StickViewModel sticker)
 {
     return(Client.User.sticks.IndexOf(Client.User.sticks.Find((stick => stick.id == sticker.Stick.Id))));
 }