// リストを全消去する // リストの選択項目を削除する private void DeletePiecePictureAll(PiecePictureType ppt) { switch (ppt) { case PiecePictureType.Main: if (PiecePictureList1.Count == 0) { return; } { foreach (string name in PiecePictureList1) { piecePictureData.Remove(name); } PiecePictureList1.Clear(); PiecePictureIndex1.Value = -1; RedrawViewImage(); } break; case PiecePictureType.Support: if (PiecePictureList2.Count == 0) { return; } { foreach (string name in PiecePictureList2) { piecePictureData.Remove(name); } PiecePictureList2.Clear(); PiecePictureIndex2.Value = -1; RedrawViewImage(); } break; case PiecePictureType.Base: if (PiecePictureList3.Count == 0) { return; } { foreach (string name in PiecePictureList3) { piecePictureData.Remove(name); } PiecePictureList3.Clear(); PiecePictureIndex3.Value = -1; RedrawViewImage(); } break; } }
// コンストラクタ public MainViewModel(GetFileName funcGFN1, GetFileName funcGFN2) { // PreviewImageFlg = PreviewImage.Select(p => p != null).ToReadOnlyReactiveProperty(); // ShowImageDataFlg1.Subscribe(_ => RedrawViewImage()); ShowImageDataFlg2.Subscribe(_ => RedrawViewImage()); ShowImageDataFlg3.Subscribe(_ => RedrawViewImage()); // CreateFormationPictureCommand.Subscribe(_ => { var image = CreateFormationPicture(); if (image == null) { return; } string filePath = funcGFN2(); if (filePath != "") { if (System.IO.Path.GetExtension(filePath) != ".png") { filePath += ".png"; } image.Save(filePath, ImageFormat.Png); } }); DeleteDataAllCommand.Subscribe(_ => { var result = MessageBox.Show("リストの画像を全て消去しますか?", "編成まとめ隊", MessageBoxButtons.YesNo, MessageBoxType.Question); if (result == DialogResult.Yes) { piecePictureData.Clear(); PiecePictureList1.Clear(); PiecePictureList2.Clear(); PiecePictureList3.Clear(); RedrawViewImage(); } }); AddPiecePicture1Command.Subscribe(_ => { AddPiecePicture(funcGFN1(), PiecePictureType.Main); }); AddPiecePicture2Command.Subscribe(_ => { AddPiecePicture(funcGFN1(), PiecePictureType.Support); }); AddPiecePicture3Command.Subscribe(_ => { AddPiecePicture(funcGFN1(), PiecePictureType.Base); }); DeletePiecePicture1Command.Subscribe(_ => { DeletePiecePicture(PiecePictureType.Main); }); DeletePiecePicture2Command.Subscribe(_ => { DeletePiecePicture(PiecePictureType.Support); }); DeletePiecePicture3Command.Subscribe(_ => { DeletePiecePicture(PiecePictureType.Base); }); MoveUpPiecePicture1Command.Subscribe(_ => { MoveUpPiecePicture(PiecePictureType.Main); }); MoveUpPiecePicture2Command.Subscribe(_ => { MoveUpPiecePicture(PiecePictureType.Support); }); MoveUpPiecePicture3Command.Subscribe(_ => { MoveUpPiecePicture(PiecePictureType.Base); }); MoveDownPiecePicture1Command.Subscribe(_ => { MoveDownPiecePicture(PiecePictureType.Main); }); MoveDownPiecePicture2Command.Subscribe(_ => { MoveDownPiecePicture(PiecePictureType.Support); }); MoveDownPiecePicture3Command.Subscribe(_ => { MoveDownPiecePicture(PiecePictureType.Base); }); DeletePiecePictureAll1Command.Subscribe(_ => { DeletePiecePictureAll(PiecePictureType.Main); }); DeletePiecePictureAll2Command.Subscribe(_ => { DeletePiecePictureAll(PiecePictureType.Support); }); DeletePiecePictureAll3Command.Subscribe(_ => { DeletePiecePictureAll(PiecePictureType.Base); }); }