Ejemplo n.º 1
0
        /// <summary>
        /// Open the file.
        /// </summary>
        protected void _open(string name)
        {
            // Should be true.
            System.Diagnostics.Debug.Assert(false == CadKit.Helios.Application.Instance.MainForm.InvokeRequired);

            // This will start a separate thread and immediately return.
            OpenDocumentTask task = new OpenDocumentTask(name, _caller, this);
        }
Ejemplo n.º 2
0
            private Task <DocumentInfo> OpenDocument(Uri uri, Guid guid, string persistentInfo)
            {
                var task = new OpenDocumentTask(this, uri, guid, persistentInfo);

                return(Task.Factory.StartNew(
                           () =>
                {
                    var taskManager = (TaskManager)Application.Current.Dispatcher.Invoke(new Func <TaskManager>(() => TaskManager.RunTask(task)));
                    taskManager.CurrentOperation.Wait();
                    return task.DocumentInfo;
                }));
            }