예제 #1
0
        /// <inheritdoc />
        public async Task ExecuteUserActionAsync()
        {
            var openPicker = new FileOpenPicker();

            openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
            openPicker.FileTypeFilter.Add(".json");
            openPicker.ViewMode = PickerViewMode.List;

            StorageFile file = await openPicker.PickSingleFileAsync();

            if (file != null)
            {
                string jsonString = await FileIO.ReadTextAsync(file);

                List <PaintBase> newShapeList = DeserializeJsonSave(jsonString);

                // Clear undo, redo and master list
                UndoStack.Clear();
                RedoStack.Clear();
                ShapeList.Clear();
                // Add deserialized master list to main page
                ShapeList.AddRange(newShapeList);

                // Send draw and update list commands to main page
                _page.Draw();
                _page.UpdateList();
            }
        }
예제 #2
0
 public void RemoveAll()
 {
     if (ShapeList.Count != 0)
     {
         Selection.Clear();
         ShapeList.Clear();
     }
 }
예제 #3
0
 public void Delete()
 {
     foreach (var item in Selection)
     {
         ShapeList.Remove(item);
     }
     ShapeList.Clear();
     Selection.Clear();
 }
예제 #4
0
        /// <inheritdoc />
        public Task ExecuteUserActionAsync()
        {
            if (UndoStack.Count > 0)
            {
                List <PaintBase> newState = UndoStack.Pop();
                RedoStack.Push(ShapeList.DeepCopy());

                ShapeList.Clear();
                ShapeList.AddRange(newState);

                _page.Draw();
                _page.UpdateList();
            }

            return(Task.CompletedTask);
        }
예제 #5
0
        /// <inheritdoc />
        public Task ExecuteUserActionAsync()
        {
            if (RedoStack.Count > 0)
            {
                // Pop prior state from stack
                List <PaintBase> newState = RedoStack.Pop();
                // Push current state onto the undo stack
                UndoStack.Push(ShapeList.DeepCopy());

                // Add prior state as current state
                ShapeList.Clear();
                ShapeList.AddRange(newState);

                _page.Draw();
                _page.UpdateList();
            }

            return(Task.CompletedTask);
        }
예제 #6
0
 private void btClear_Click(object sender, EventArgs e)
 {
     shapes.Clear();
     Invalidate();
 }
예제 #7
0
 public void Clear()
 {
     ShapeList.Clear();
     OpenedImage?.Dispose();
     OpenedImage = null;
 }
 internal void ClearAll()
 {
     ShapeList.Clear();
     Selection.Clear();
 }