/// <summary>
        /// HACK - Insert the completion string not the text displayed in the
        /// completion list and move the cursor between the attribute
        /// quotes when an attribute is inserted.
        /// This should really be done using methods in the
        /// ICompletionWidget class.  Here I am cheating and using
        /// the XmlEditorView and XmlCompletionData directly (The
        /// XmlCompletionData.InsertAction is not used in MonoDevelop).
        /// </summary>
//		void UpdateWord ()
//		{
//			XmlCompletionData data = (XmlCompletionData)completionData[List.Selection];
//
//			string completeWord = data.CompletionString;
//			completionWidget.SetCompletionText(completionContext, wnd.PartialWord, completeWord);
//			if (data.XmlCompletionDataType == XmlCompletionData.DataType.XmlAttribute) {
//				// Position cursor inside attribute value string.
//				XmlEditorView view = (XmlEditorView)completionWidget;
//				TextIter iter = view.Buffer.GetIterAtMark(view.Buffer.InsertMark);
//				iter.Offset--;
//				view.Buffer.PlaceCursor(iter);
//			}
//			//completionWidget.SetCompletionText(wnd.PartialWord, wnd.CompleteWord);
//		}

        void UpdateWord()
        {
            string word = wnd.CompleteWord;

            if (word != null)
            {
                if (wnd.Selection != -1)
                {
                    IActionCompletionData ac = completionData [wnd.Selection] as IActionCompletionData;
                    if (ac != null)
                    {
                        ac.InsertAction(completionWidget, completionContext);
                        return;
                    }
                }
                completionWidget.SetCompletionText(completionContext, wnd.PartialWord, word);
            }
        }
예제 #2
0
 void ICompletionWidget.SetCompletionText(CodeCompletionContext ctx, string partial_word, string complete_word)
 {
     completionWidget.SetCompletionText(ImportContext(ctx, projection), partial_word, complete_word);
 }