/// <summary>
        /// Complete all symbols visible from a given location
        /// </summary>
        private ValaCompletionDataList GlobalComplete(CodeCompletionContext context)
        {
            ProjectInformation info = Parser;

            if (null == info)
            {
                return(null);
            }

            ValaCompletionDataList list = new ValaCompletionDataList();
            var loc = Editor.Document.OffsetToLocation(context.TriggerOffset);

            ThreadPool.QueueUserWorkItem(delegate {
                info.GetSymbolsVisibleFrom(Document.FileName, loc.Line + 1, loc.Column + 1, list);
            });
            return(list);
        }
        /// <summary>
        /// Complete all symbols visible from a given location
        /// </summary>
        private ValaCompletionDataList GlobalComplete(CodeCompletionContext context)
        {
            ProjectInformation info = Parser;

            if (null == info)
            {
                return(null);
            }

            ValaCompletionDataList list = new ValaCompletionDataList();
            int line, column;

            Editor.GetLineColumnFromPosition(context.TriggerOffset, out line, out column);
            ThreadPool.QueueUserWorkItem(delegate {
                info.GetSymbolsVisibleFrom(Document.FileName, line, column, list);
            });
            return(list);
        }