示例#1
0
        public bool Load(string fileName = "notes.json")
        {
            var configFile = AppDomain.CurrentDomain.BaseDirectory + fileName;

            if (!File.Exists(configFile))
            {
                Notes = new List <Note>();
                return(true);
            }

            string jsonStr = string.Empty;

            try
            {
                jsonStr = File.ReadAllText(configFile);
                Notes   = JsonHelper.DeserializeJsonToList <Note>(jsonStr);

                NotesChanged?.Invoke();

                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
示例#2
0
 public void RemoveNote(Note note)
 {
     if (Notes?.RemoveAll(n => n.Date == note.Date && n.Circle == note.Circle &&
                          n.Content == note.Content && n.Type == note.Type && n.Title == note.Title) > 0)
     {
         NotesChanged?.Invoke();
     }
 }
示例#3
0
        public void AddNote(Note note)
        {
            if (Notes == null)
            {
                Notes = new List <Note>();
            }

            Notes.Add(note);

            NotesChanged?.Invoke();
        }
示例#4
0
        public void RemoveNote(IEnumerable <Note> notes)
        {
            if (notes == null || !notes.Any())
            {
                return;
            }

            var count = notes.Sum(note => Notes?.RemoveAll(n => n.Date == note.Date && n.Circle == note.Circle && n.Content == note.Content && n.Type == note.Type && n.Title == note.Title) ?? 0);

            if (count > 0)
            {
                NotesChanged?.Invoke();
            }
        }
示例#5
0
 private void OnNotesChanged()
 {
     NotesChanged?.Invoke(this, EventArgs.Empty);
 }