Ejemplo n.º 1
0
		private void ContextMenuRequested(object sender, ContextMenuRequestedEventArgs e)
		{
			e.Selection.Install();
			ICmObject obj = CurrentObject;

			if (obj != null)
			{
				// we only bother to display the context menu if an item is selected
				using (var ui = new CmObjectUi(obj))
				{
					e.Handled = ui.HandleRightClick(Mediator, this, true, ContextMenuID);
				}
			}
		}
        private void EditorPopupContextMenu(ScoreEditorHitTestResult hit, Point location)
        {
            VisualizerContextMenu menu;

            if (hit.HitRegion == ScoreEditorHitRegion.SpecialNoteArea)
            {
                menu = hit.HitAnyNote ? VisualizerContextMenu.SpecialNoteModify : VisualizerContextMenu.SpecialNoteAdd;
            }
            else
            {
                menu = hit.HitAnyNote ? VisualizerContextMenu.Note : VisualizerContextMenu.Bar;
            }
            var ea = new ContextMenuRequestedEventArgs(menu, hit);

            _visualizer.RequestContextMenu(ea);
        }
Ejemplo n.º 3
0
        private void ContextMenuRequested(object sender, ContextMenuRequestedEventArgs e)
        {
            SelectionHelper                  sh    = SelectionHelper.Create(e.Selection, m_view);
            ComplexConcPatternNode           node  = GetNode(sh, SelectionHelper.SelLimitType.Anchor);
            HashSet <ComplexConcPatternNode> nodes = new HashSet <ComplexConcPatternNode>(CurrentNodes.SelectMany(GetAllNodes));

            if (!nodes.Contains(node))
            {
                sh.Selection.Install();
            }
            if (nodes.Count > 0)
            {
                // we only bother to display the context menu if an item is selected
                XWindow window = (XWindow)m_mediator.PropertyTable.GetValue("window");

                window.ShowContextMenu("mnuComplexConcordance",
                                       new Point(Cursor.Position.X, Cursor.Position.Y),
                                       new TemporaryColleagueParameter(m_mediator, this, true),
                                       null, null);
            }
        }
        private void Visualizer_ContextMenuRequested(object sender, ContextMenuRequestedEventArgs e)
        {
            var hasSelectedNotes = visualizer.Editor.HasSelectedNotes;
            var hasSelectedBars  = visualizer.Editor.HasSelectedBars;

            if ((e.MenuType == VisualizerContextMenu.Note || e.MenuType == VisualizerContextMenu.Bar) && (!hasSelectedNotes && !hasSelectedBars))
            {
                return;
            }
            switch (e.MenuType)
            {
            case VisualizerContextMenu.Note:
                ctxSep1.Visible = hasSelectedNotes;
                ctxScoreNoteResetToTap.Visible = hasSelectedNotes;
                ctxScoreNoteDelete.Visible     = hasSelectedNotes;
                ctxSep2.Visible = false;
                ctxScoreMeasureDelete.Visible = false;
                ctxSep3.Visible = false;
                ctxScoreNoteInsertSpecial.Visible = false;
                ctxSep4.Visible = false;
                ctxScoreNoteModifySpecial.Visible = false;
                ctxScoreNoteDeleteSpecial.Visible = false;
                ctxScoreNoteInsertSpecial.DeleteCommandParameter();
                ctxScoreNoteModifySpecial.DeleteCommandParameter();
                ctxScoreNoteDeleteSpecial.DeleteCommandParameter();
                break;

            case VisualizerContextMenu.Bar:
                ctxSep1.Visible = false;
                ctxScoreNoteResetToTap.Visible = false;
                ctxScoreNoteDelete.Visible     = false;
                ctxSep2.Visible = hasSelectedBars;
                ctxScoreMeasureDelete.Visible = hasSelectedBars;
                ctxSep3.Visible = false;
                ctxScoreNoteInsertSpecial.Visible = false;
                ctxSep4.Visible = false;
                ctxScoreNoteModifySpecial.Visible = false;
                ctxScoreNoteDeleteSpecial.Visible = false;
                ctxScoreNoteInsertSpecial.DeleteCommandParameter();
                ctxScoreNoteModifySpecial.DeleteCommandParameter();
                ctxScoreNoteDeleteSpecial.DeleteCommandParameter();
                break;

            case VisualizerContextMenu.SpecialNoteAdd:
                ctxSep1.Visible = false;
                ctxScoreNoteResetToTap.Visible = false;
                ctxScoreNoteDelete.Visible     = false;
                ctxSep2.Visible = false;
                ctxScoreMeasureDelete.Visible = false;
                ctxSep3.Visible = true;
                ctxScoreNoteInsertSpecial.Visible = true;
                ctxSep4.Visible = false;
                ctxScoreNoteModifySpecial.Visible = false;
                ctxScoreNoteDeleteSpecial.Visible = false;
                ctxScoreNoteInsertSpecial.SetCommandParameter(e.HitTestResult);
                ctxScoreNoteModifySpecial.DeleteCommandParameter();
                ctxScoreNoteDeleteSpecial.DeleteCommandParameter();
                break;

            case VisualizerContextMenu.SpecialNoteModify:
                ctxSep1.Visible = false;
                ctxScoreNoteResetToTap.Visible = false;
                ctxScoreNoteDelete.Visible     = false;
                ctxSep2.Visible = false;
                ctxScoreMeasureDelete.Visible = false;
                ctxSep3.Visible = false;
                ctxScoreNoteInsertSpecial.Visible = false;
                ctxSep4.Visible = true;
                ctxScoreNoteModifySpecial.Visible = true;
                ctxScoreNoteDeleteSpecial.Visible = true;
                ctxScoreNoteInsertSpecial.DeleteCommandParameter();
                ctxScoreNoteModifySpecial.SetCommandParameter(e.HitTestResult);
                ctxScoreNoteDeleteSpecial.SetCommandParameter(e.HitTestResult);
                break;

            default:
                break;
            }

            ctxMain.Show(visualizer, e.Location);
        }