private void LoadAllCode() { if (_scripts.Count > 0) { _scripts.Clear(); } foreach (var code in DataBaseManager.AllJavaScript()) { _scripts.Add(code); } KeyWord.UpdateWord(); }
private void StartCompletionWindow(TextArea area, string text, string token = null) { if (_completionWindow != null) { return; } List <Tuple <string, string> > showKeys = null; if (string.IsNullOrEmpty(token)) { showKeys = KeyWord.GetKeyword(text); } else { showKeys = KeyWord.GetMethodword(text, token); } if (showKeys == null || showKeys.Count == 0) { return; } _completionWindow = new CompletionWindow(area) { ResizeMode = ResizeMode.NoResize }; _completionWindow.Closed += (sender, args) => _completionWindow = null; _completionWindow.CloseWhenCaretAtBeginning = false; var data = _completionWindow.CompletionList.CompletionData; foreach (var key in showKeys) { data.Add(new CompletionData(key.Item1, key.Item2)); } _completionWindow.Show(); }
private void LoadAllReflect() { KeyWord.UpdateWord(); ReflectTree.Items.Clear(); foreach (var reflect in DataBaseManager.AllReflect()) { var root = new TreeViewItem { Header = reflect.Id }; root.KeyUp += (sender, args) => { if (args.Key == Key.Delete) { DataBaseManager.DeleteReflect((string)((TreeViewItem)sender).Header); LoadAllReflect(); } }; foreach (var property in reflect.Propertys) { var color = Colors.Black; switch (property.Type) { case "field": color = Colors.Red; break; case "method": color = Colors.Blue; break; case "constructor": color = Colors.Green; break; } var node = new TreeViewItem { Header = property.Name, Tag = property.Desc, ToolTip = property.Desc, Foreground = new SolidColorBrush(color) }; node.Selected += (sender, args) => { if (((SolidColorBrush)((TreeViewItem)sender).Foreground).Color == Colors.Blue) { var clazz = (string)((TreeViewItem)((TreeViewItem)sender).Parent).Header; var desc = (string)((TreeViewItem)sender).Tag; var source = DataBaseManager.GetJavaScriptByName("plugin").Text; if (!string.IsNullOrEmpty(source)) { var rv = Plugin(source, clazz, desc); if (!string.IsNullOrEmpty(rv)) { InfoEditor.Text = rv; return; } } InfoEditor.Text = Utils.GenericSimpleness(clazz, desc); } else { InfoEditor.Text = (string)((TreeViewItem)sender).Tag; } }; root.Items.Add(node); } ReflectTree.Items.Add(root); } }