Example #1
0
        public void app_WindowBeforeRightClick(Word.Selection selection, ref bool Cancel)
        {
            if (null == selection)
            {
                return;
            }
            range = selection.Range;

            switch (selection.Type)
            {
            case Word.WdSelectionType.wdSelectionIP:
                range.Expand(Word.WdUnits.wdWord);                         // expand range to be a whole word
                break;

            case Word.WdSelectionType.wdSelectionNormal:                     // word(s) selected
                break;

            default: return;
            }
            // Trim range, so when we replace the query we don't trample on the spaces between words
            while (range.Characters.First.Text == " ")
            {
                range.MoveStart(Word.WdUnits.wdCharacter);
            }
            while (range.Characters.Last.Text == " ")
            {
                range.MoveEnd(Word.WdUnits.wdCharacter, -1);
            }

            if (!string.IsNullOrEmpty(range.Text))
            {
                ShowMenu(range.Text);
            }
        }