Example #1
0
 private void BackgroundParser_Worker()
 {
     while (true)
     {
         while (Program.Options.DynamicIsac)
         {
             Thread.Sleep(5000);
             var ee = GetAllEditorElements();
             if (ee != null)
             {
                 SMDefinition[] definitions = new SMDefinition[ee.Length];
                 for (int i = 0; i < ee.Length; ++i)
                 {
                     FileInfo fInfo = new FileInfo(ee[i].FullFilePath);
                     if (fInfo.Extension.Trim('.').ToLowerInvariant() == "inc")
                     {
                         var condenser = new Condenser(File.ReadAllText(fInfo.FullName), fInfo.Name);
                         definitions[i] = ((new Condenser(File.ReadAllText(fInfo.FullName), fInfo.Name)).Condense());
                     }
                 }
                 currentSMDef       = (Program.ConfigList.Current.GetSMDef()).ProduceTemporaryExpandedDefinition(definitions);
                 currentSMFunctions = currentSMDef.Functions.ToArray();
                 currentACNodes     = currentSMDef.ProduceACNodes();
                 currentISNodes     = currentSMDef.ProduceISNodes();
                 ++currentSMDefUID;
             }
         }
         Thread.Sleep(5000);
     }
 }
        private ACNode[] isEntrys; //todo find out whats difference
        //private string[] methodNames;
        public void LoadAutoCompletes()
        {
            if (ISAC_Open)
            {
                HideISAC();
            }
            SMDefinition def = ConfigList.Current.GetSMDef();

            funcNames = def.FunctionStrings;
            funcs     = def.Functions.ToArray();
            acEntrys  = def.ProduceACNodes();
            isEntrys  = def.ProduceISNodes();
            //AutoCompleteBox.Items.Clear();
            //MethodAutoCompleteBox.Items.Clear();
            AutoCompleteBox.ItemsSource       = acEntrys;
            MethodAutoCompleteBox.ItemsSource = isEntrys;

            /*for (int i = 0; i < acEntrys.Length; ++i)
             * {
             *  AutoCompleteBox.Items.Add(acEntrys[i].Name);
             * }
             * for (int i = 0; i < isEntrys.Length; ++i)
             * {
             *  MethodAutoCompleteBox.Items.Add(isEntrys[i].Name);
             * }*/
        }
 private void BackgroundParser_Worker()
 {
     while (true)
     {
         while (Program.OptionsObject.Program_DynamicISAC)
         {
             Thread.Sleep(5000);
             var ee = GetAllEditorElements();
             if (ee != null)
             {
                 SMDefinition[] definitions = new SMDefinition[ee.Length];
                 for (int i = 0; i < ee.Length; ++i)
                 {
                     FileInfo fInfo = new FileInfo(ee[i].FullFilePath);
                     if (fInfo.Extension.Trim('.').ToLowerInvariant() == "inc")
                     {
                         definitions[i] = (new Condenser(File.ReadAllText(fInfo.FullName), fInfo.Name).Condense());
                     }
                 }
                 currentSMDef       = (Program.Configs[Program.SelectedConfig].GetSMDef()).ProduceTemporaryExpandedDefinition(definitions);
                 currentSMFunctions = currentSMDef.Functions.ToArray();
                 currentACNodes     = currentSMDef.ProduceACNodes();
                 currentISNodes     = currentSMDef.ProduceISNodes();
                 ++currentSMDefUID;
             }
         }
         Thread.Sleep(5000);
     }
     // ReSharper disable once FunctionNeverReturns
 }
        private void BackgroundParser_Worker()
        {
            while (true)
            {
                while (Program.OptionsObject.Program_DynamicISAC)
                {
                    Thread.Sleep(3000);
                    var ee    = GetAllEditorElements();
                    var caret = -1;

                    if (ee != null)
                    {
                        var definitions = new SMDefinition[ee.Length];
                        List <SMFunction> currentFunctions = null;
                        for (var i = 0; i < ee.Length; ++i)
                        {
                            var fInfo = new FileInfo(ee[i].FullFilePath);
                            if (fInfo.Extension.Trim('.').ToLowerInvariant() == "inc")
                            {
                                definitions[i] =
                                    new Condenser(File.ReadAllText(fInfo.FullName), fInfo.Name).Condense();
                            }

                            if (fInfo.Extension.Trim('.').ToLowerInvariant() == "sp")
                            {
                                var i1 = i;
                                Dispatcher.Invoke(() =>
                                {
                                    if (ee[i1].IsLoaded)
                                    {
                                        caret           = ee[i1].editor.CaretOffset;
                                        definitions[i1] =
                                            new Condenser(File.ReadAllText(fInfo.FullName), fInfo.Name)
                                            .Condense();
                                        currentFunctions = definitions[i1].Functions;
                                    }
                                });
                            }
                        }

                        currentSMDef = Program.Configs[Program.SelectedConfig].GetSMDef()
                                       .ProduceTemporaryExpandedDefinition(definitions, caret, currentFunctions);
                        currentSMFunctions = currentSMDef.Functions.ToArray();
                        currentACNodes     = currentSMDef.ProduceACNodes();
                        currentISNodes     = currentSMDef.ProduceISNodes();
                        ++currentSMDefUID;
                    }
                }
            }

            // ReSharper disable once FunctionNeverReturns
        }