Esempio n. 1
0
        void ParserThread()
        {
            BeginInvoke(new MethodInvoker(delegate { StatusText.Text = "Loading mscorlib..."; }));
            myProjectContent.AddReferencedContent(pcRegistry.Mscorlib);

            // do one initial parser step to enable code-completion while other
            // references are loading
            ParseStep();

            string[] referencedAssemblies =
            {
                "System", "System.Data", "System.Drawing", "System.Xml", "System.Windows.Forms"
            };
            foreach (string assemblyName in referencedAssemblies)
            {
                {                 // block for anonymous method
                    string assemblyNameCopy = assemblyName;
                    BeginInvoke(new MethodInvoker(delegate { StatusText.Text = "Loading " + assemblyNameCopy + "..."; }));
                }
                myProjectContent.AddReferencedContent(pcRegistry.GetProjectContentForReference(assemblyName, assemblyName));
            }
            BeginInvoke(new MethodInvoker(delegate { StatusText.Text = "Ready"; }));

            // Parse the current file every 2 seconds
            while (!IsDisposed)
            {
                ParseStep();

                Thread.Sleep(2000);
            }
        }
Esempio n. 2
0
        void ParserThread()
        {
            try
            {
                //return;
                BeginInvoke(new MethodInvoker(delegate { parserThreadLabel.Text = "Loading mscorlib..."; }));
                myProjectContent.AddReferencedContent(pcRegistry.Mscorlib);

                // do one initial parser step to enable code-completion while other
                // references are loading
                ParseStep();


                foreach (string assemblyName in refList.Items)
                {
                    string assemblyNameCopy = assemblyName.Replace(".dll", "");
                    { // block for anonymous method
                        BeginInvoke(new MethodInvoker(delegate { parserThreadLabel.Text = "Loading " + assemblyNameCopy + "..."; }));
                    }
                    myProjectContent.AddReferencedContent(pcRegistry.GetProjectContentForReference(assemblyNameCopy, assemblyName));
                }
                BeginInvoke(new MethodInvoker(delegate { parserThreadLabel.Text = "Ready"; }));

                // Parse the current file every 2 seconds
                while (!IsDisposed)
                {
                    ParseStep();

                    Thread.Sleep(2000);
                }
            }
            catch {  }
        }
        static DefaultProjectContent()
        {
            var    registry                 = new ProjectContentRegistry();
            string assemblyFileName         = typeof(decimal).Assembly.Location;
            var    fileNameWithoutExtension = Path.GetFileNameWithoutExtension(assemblyFileName);

            _systemProjectContent = registry.GetProjectContentForReference(fileNameWithoutExtension, assemblyFileName);
        }
Esempio n. 4
0
        void ParserThread()
        {
            try
            {
                BeginInvoke(new MethodInvoker(delegate { parserThreadLabel.Text = "Loading mscorlib..."; }));
                myProjectContent.AddReferencedContent(pcRegistry.Mscorlib);

                // do one initial parser step to enable code-completion while other
                // references are loading
                ParseStep();

                string[] referencedAssemblies =
                {
                    "System", "System.Data", "System.Drawing", "System.Xml", "System.Windows.Forms"
                };
                foreach (string assemblyName in referencedAssemblies)
                {
                    { // block for anonymous method
                        string assemblyNameCopy = assemblyName;
                        BeginInvoke(new MethodInvoker(delegate { parserThreadLabel.Text = "Loading " + assemblyNameCopy + "..."; }));
                    }
                    myProjectContent.AddReferencedContent(pcRegistry.GetProjectContentForReference(assemblyName, assemblyName));
                }
                BeginInvoke(new MethodInvoker(delegate { parserThreadLabel.Text = "Ready"; }));
            }
            catch (ThreadAbortException)
            {
                // Meh.
            }
            catch (Exception E)
            {
                if (E.ToString().Contains("CSharpCodeCompletion"))
                {
                    // Chances are that directory wasn't created
                    // (Happened on Eric's machine)
                    try
                    {
                        System.IO.Directory.CreateDirectory(System.IO.Path.GetTempPath() + (System.IO.Path.GetTempPath().EndsWith(@"\") ? "" : @"\" + "CSharpCodeCompletion"));
                    }
                    catch
                    {
                    }
                }
            }

            // Parse the current file every 2 seconds
            while (!IsDisposed)
            {
                ParseStep();

                Thread.Sleep(2000);
            }
        }
Esempio n. 5
0
		public void FixtureSetup()
		{
			ProjectContentRegistry r = new ProjectContentRegistry();
			msc = r.Mscorlib;
			swf = r.GetProjectContentForReference("System.Windows.Forms", typeof(System.Windows.Forms.Form).Module.FullyQualifiedName);
			
			DefaultProjectContent dpc = new DefaultProjectContent();
			dpc.ReferencedContents.Add(msc);
			DefaultCompilationUnit cu = new DefaultCompilationUnit(dpc);
			dummyClass = new DefaultClass(cu, "DummyClass");
			cu.Classes.Add(dummyClass);
			methodForGenericCalls = new DefaultMethod(dummyClass, "DummyMethod");
			dummyClass.Methods.Add(methodForGenericCalls);
		}
Esempio n. 6
0
        void ParserThread()
        {
            try
            {
                BeginInvoke(new MethodInvoker(delegate { parserThreadLabel.Text = "Loading mscorlib..."; }));
                myProjectContent.AddReferencedContent(pcRegistry.Mscorlib);

                // do one initial parser step to enable code-completion while other
                // references are loading
                ParseStep();

                //string[] referencedAssemblies = {
                //	"System", "System.Data", "System.Drawing", "System.Xml", "System.Windows.Forms", "Microsoft.VisualBasic"
                //};

                foreach (string assemblyName in referencedAssemblies.ToArray())
                {
                    string assemblyNameCopy = assemblyName; // copy for anonymous method
                    BeginInvoke(new MethodInvoker(delegate { parserThreadLabel.Text = "Loading " + assemblyNameCopy + "..."; }));
                    Dom.IProjectContent referenceProjectContent = pcRegistry.GetProjectContentForReference(assemblyName, assemblyName);
                    myProjectContent.AddReferencedContent(referenceProjectContent);
                    if (referenceProjectContent is Dom.ReflectionProjectContent)
                    {
                        (referenceProjectContent as Dom.ReflectionProjectContent).InitializeReferences();
                    }
                }
                if (IsVisualBasic)
                {
                    myProjectContent.DefaultImports = new Dom.DefaultUsing(myProjectContent);
                    myProjectContent.DefaultImports.Usings.Add("System");
                    myProjectContent.DefaultImports.Usings.Add("System.Text");
                    myProjectContent.DefaultImports.Usings.Add("Microsoft.VisualBasic");
                }
                BeginInvoke(new MethodInvoker(delegate { parserThreadLabel.Text = "Ready"; }));

                // Parse the current file every 2 seconds
                while (!IsDisposed)
                {
                    ParseStep();

                    Thread.Sleep(2000);
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine("in MainForm.ParserThread: " + ex.Message);
            }
        }
Esempio n. 7
0
        public void Load()
        {
            _csProjectContent.Language = Dom.LanguageProperties.CSharp;
            _csProjectContent.AddReferencedContent(_pcRegistry.Mscorlib);

            string[] referencedAssemblies =
            {
                "System",
                "System.Data",
                "System.Drawing",
                "System.Xml",
                "System.Windows.Forms",
                "Gordago.Trader"
            };
            foreach (string assemblyName in referencedAssemblies)
            {
                if (LoadReferencedAssembly != null)
                {
                    this.LoadReferencedAssembly(this, new LoadReferencedAssembliesEventArgs(assemblyName));
                }
                _csProjectContent.AddReferencedContent(_pcRegistry.GetProjectContentForReference(assemblyName, assemblyName));
            }
        }
 public static void add_Reference(this DefaultProjectContent projectContent, ProjectContentRegistry pcRegistry, string assemblyToLoad, Action<string> debugMessage)
 {
     try
     {
         lock (ProjectContentRegistry.persistence)
         { 
             //debugMessage("Loading Code Completion Reference: {0}".format(assemblyToLoad));
             
             IProjectContent referenceProjectContent = pcRegistry.GetProjectContentForReference(assemblyToLoad, assemblyToLoad);
             if (referenceProjectContent == null)
                 "referenceProjectContent was null".error();
             else
             {
                 projectContent.AddReferencedContent(referenceProjectContent);
                 if (referenceProjectContent is ReflectionProjectContent)
                     (referenceProjectContent as ReflectionProjectContent).InitializeReferences();
                 else
                     "something when wrong in DefaultProjectContent.add_Reference".error();
             }
         }
     }
     catch (Exception ex)
     {
         ex.log("in DefaultProjectContent.add_Reference for assembly: {0}".format(assemblyToLoad));
     }
 }
		public void FixtureSetup()
		{
			ProjectContentRegistry r = new ProjectContentRegistry();
			msc = r.Mscorlib;
			swf = r.GetProjectContentForReference("System.Windows.Forms", "System.Windows.Forms");
		}