public EditCMenu(ScorePanel sPanel, ScoreLane selectedLane, Score selectedScore, Position clickPosition) { barAddItems = new ToolStripItem[] { new ToolStripMenuItem("選択小節の1つ前", null, BarAddBackward), new ToolStripMenuItem("選択小節の1つ先", null, BarAddForward), new ToolStripMenuItem("カスタム...", null, BarAddCustom) }; barAddWithNoteItems = new ToolStripItem[] { new ToolStripMenuItem("選択小節の1つ前", null, BarAddBackwardWithNote), new ToolStripMenuItem("選択小節の1つ先", null, BarAddForwardWithNote), new ToolStripMenuItem("カスタム...", null, BarAddCustomWithNote) }; barDeleteItems = new ToolStripItem[] { new ToolStripMenuItem("選択小節", null, BarDeleteSelected), new ToolStripMenuItem("カスタム...", null, BarDeleteCustom) }; barDeleteWithNoteItems = new ToolStripItem[] { new ToolStripMenuItem("選択小節", null, BarDeleteSelectedWithNote), new ToolStripMenuItem("カスタム...", null, BarDeleteCustomWithNote) }; laneFillItems = new ToolStripItem[] { new ToolStripMenuItem("レーン全体", null, LaneFillAll), new ToolStripMenuItem("選択レーン以降", null, LaneFill) }; ToolStripMenuItem barAddWithNote = new ToolStripMenuItem("小節を挿入", null) { ToolTipText = "選択した小節の前後に新しい小節を追加します\nすでに配置されているノーツの相対座標は変更されます" }; barAddWithNote.DropDownItems.AddRange(barAddWithNoteItems); ToolStripMenuItem barAdd = new ToolStripMenuItem("小節を挿入(小節のみ)", null) { ToolTipText = "選択した小節の前後に新しい小節を追加します\nすでに配置されているノーツの相対座標は変更されません" }; barAdd.DropDownItems.AddRange(barAddItems); ToolStripMenuItem barDeleteWithNote = new ToolStripMenuItem("小節を削除", null) { ToolTipText = "選択した小節またはそれ以降の複数の小節を削除します\n削除対象の小節にノーツが配置されている場合、ノーツも削除されます" }; barDeleteWithNote.DropDownItems.AddRange(barDeleteWithNoteItems); ToolStripMenuItem barDelete = new ToolStripMenuItem("小節を削除(小節のみ)", null) { ToolTipText = "選択した小節またはそれ以降の複数の小節を削除します\n小節のみ削除するため、ノーツは削除されません" }; barDelete.DropDownItems.AddRange(barDeleteItems); ToolStripMenuItem laneFill = new ToolStripMenuItem("レーンを詰める", null); laneFill.DropDownItems.AddRange(laneFillItems); stripItems = new ToolStripItem[] { barAddWithNote, barAdd, barDeleteWithNote, barDelete, new ToolStripMenuItem("選択小節を改行", null, BarDivide), laneFill, new ToolStripSeparator(), new ToolStripMenuItem("貼り付け", null, (s, e) => sPanel.PasteNotes(clickPosition)) { Enabled = Status.IsPasteAvailable }, new ToolStripMenuItem("左右反転して貼り付け", null, (s, e) => { sPanel.PasteAndReverseNotes(clickPosition); }) { Enabled = Status.IsPasteAvailable } }; Items.AddRange(stripItems); this.sPanel = sPanel; this.selectedLane = selectedLane; this.selectedScore = selectedScore; }