コード例 #1
0
        public async Task <Ability> Handle(string abilityName)
        {
            // Retriever all moves with the specified name.
            List <Ability> moves = ViewModelBase.AbilityService.GetAbilitiesWithName(abilityName).ToList();

            // Return Ability if there's only one.
            if (moves.Count <= 1)
            {
                return(moves.FirstOrDefault());
            }

            // Let user select ability if there are multiples.
            var dialog = new SelectActionDialog(moves);
            await _window.ShowMetroDialogAsync(dialog);

            await dialog.WaitUntilUnloadedAsync();

            return(dialog.SelectedAbility);
        }
コード例 #2
0
 private void graphCanvas_MouseUp(object sender, MouseEventArgs e)
 {
     // Get end of rectangle
     if (e.Button == MouseButtons.Left)
     {
         _rectangleDrawing = false;
         SelectActionDialog action = new SelectActionDialog();
         DialogResult       result = action.ShowDialog();
         if (result == DialogResult.OK)
         {
             if (action.Selection == ActionSelected.BlockEdges)
             {
                 UpdateEdgeType();
                 _graphPath.Clear();
                 _dijkstra.Invalidate();
             }
             else if (action.Selection == ActionSelected.RangeScan)
             {
                 RangeScan();
             }
         }
         graphCanvas.Invalidate();
     }
 }