private void AssignUserTags() { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { foreach (Chemistry chemistryItem in ChemistryItems) { chemistryItem.Initializing = true; var specificTags = from UserTag ut in UserTagItems join ChemistryByTag cbt in ChemistryByTagItems on ut.ID equals cbt.tagID where cbt.GalleryID == chemistryItem.ID select ut; foreach (UserTag ut2 in specificTags) { chemistryItem.Tags.Add(ut2); } chemistryItem.Initializing = false; } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private void ImportErrors_Load(object sender, EventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { if (TopLeft.X != 0 && TopLeft.Y != 0) { Left = (int)TopLeft.X; Top = (int)TopLeft.Y; } display1.Chemistry = Model; Errors.Text = String.Join(Environment.NewLine, Model.AllErrors); Warnings.Text = String.Join(Environment.NewLine, Model.AllWarnings); if (Model.AllErrors.Count > 0) { Continue.Enabled = false; } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private void LoadOtherNames(Chemistry mol) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { XName nameNodeName = CMLNamespaces.cml + "name"; var names = (from element in mol.CmlDoc.Descendants(nameNodeName) where element.Name == nameNodeName select element.Value).Distinct(); foreach (string name in names) { mol.HasOtherNames = true; mol.OtherNames.Add(name); } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
public LibraryViewModel(string filter = "") { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { Stopwatch sw = new Stopwatch(); sw.Start(); ChemistryItems = new ObservableCollection <Chemistry>(); ChemistryItems.CollectionChanged += ChemistryItems_CollectionChanged; LoadChemistryItems(filter); ChemistryByTagItems = new ObservableCollection <ChemistryByTag>(); LoadChemistryByTagItems(); UserTagItems = new ObservableCollection <UserTag>(); LoadUserTagItems(); AssignUserTags(); LibraryItems = new ObservableCollection <LibraryItem>(); sw.Stop(); Debug.WriteLine($"LibraryViewModel() took {sw.ElapsedMilliseconds}ms"); } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
public ObservableCollection <UserTag> LoadUserTagItems(int ChemistryID) { var results = new ObservableCollection <UserTag>(); string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { var lib = new Database.Library(); List <UserTagDTO> allTags = lib.GetAllUserTags(ChemistryID); foreach (var dto in allTags) { var tag = new UserTag(); tag.ID = dto.Id; tag.Text = dto.Text; results.Add(tag); } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } return(results); }
public void LoadChemistryByTagItems() { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { ChemistryByTagItems.Clear(); var lib = new Database.Library(); List <ChemistryTagDTO> dto = lib.GetChemistryByTags(); foreach (var obj in dto) { var tag = new ChemistryByTag(); tag.ID = obj.Id; tag.GalleryID = obj.GalleryId; tag.tagID = obj.TagId; ChemistryByTagItems.Add(tag); } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
public void LoadUserTagItems() { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { UserTagItems.Clear(); var lib = new Database.Library(); List <UserTagDTO> allTags = lib.GetAllUserTags(); foreach (var obj in allTags) { var tag = new UserTag(); tag.ID = obj.Id; tag.Text = obj.Text; UserTagItems.Add(tag); } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private void ChemistryItems_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { switch (e.Action) { case NotifyCollectionChangedAction.Add: if (!_initializing) { AddNewChemistry(e.NewItems); } break; case NotifyCollectionChangedAction.Remove: if (!_initializing) { DeleteChemistry(e.OldItems); } break; } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private void SystemInfo_Load(object sender, EventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { if (TopLeft.X != 0 && TopLeft.Y != 0) { Left = (int)TopLeft.X; Top = (int)TopLeft.Y; } StringBuilder sb = new StringBuilder(); #region Add In Version Assembly assembly = Assembly.GetExecutingAssembly(); FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(assembly.Location); UpdateHelper.ReadThisVersion(assembly); string version = string.Empty; if (Globals.Chem4WordV3.ThisVersion != null) { string[] parts = Globals.Chem4WordV3.ThisVersion.Root.Element("Number").Value.Split(' '); string temp = Globals.Chem4WordV3.ThisVersion.Root.Element("Number").Value; int idx = temp.IndexOf(" "); version = $"Chem4Word 2020 {temp.Substring(idx + 1)} [{fvi.FileVersion}]"; } else { version = $"Chem4Word Version: V{fvi.FileVersion}"; } sb.AppendLine(version); #endregion Add In Version sb.AppendLine(""); sb.AppendLine($"MachineId: {Globals.Chem4WordV3.Helper.MachineId}"); sb.AppendLine($"Operating System: {Globals.Chem4WordV3.Helper.SystemOs}"); sb.AppendLine($"Word Product: {Globals.Chem4WordV3.Helper.WordProduct}"); sb.AppendLine($"Internet Explorer Version: {Globals.Chem4WordV3.Helper.BrowserVersion}"); sb.AppendLine($".Net Framework Runtime: {Globals.Chem4WordV3.Helper.DotNetVersion}"); sb.AppendLine(""); sb.AppendLine($"Settings Folder: {Globals.Chem4WordV3.AddInInfo.ProductAppDataPath}"); sb.AppendLine($"Library Folder: {Globals.Chem4WordV3.AddInInfo.ProgramDataPath}"); //sb.AppendLine(""); Information.Text = sb.ToString(); Information.SelectionStart = Information.Text.Length; } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private void InsertCopyButton_OnClick(object sender, RoutedEventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; Globals.Chem4WordV3.Telemetry.Write(module, "Action", "Triggered"); try { if (Globals.Chem4WordV3.EventsEnabled) { Globals.Chem4WordV3.EventsEnabled = false; if (Globals.Chem4WordV3.Application.Documents.Count > 0) { if (ActiveDocument?.ActiveWindow?.Selection != null) { TaskPaneHelper.InsertChemistry(true, ActiveDocument.Application, Display, false); } } Globals.Chem4WordV3.EventsEnabled = true; } } catch (Exception ex) { Globals.Chem4WordV3.EventsEnabled = true; using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private void SwitchToMulti_CheckedChanged(object sender, EventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { if (_eventsEnabled && SwitchToMulti.Checked) { Telemetry.Write(module, "Action", "Triggered"); _eventsEnabled = false; _sw.Reset(); _sw.Start(); _tempJson = (string)ExecuteJavaScript("GetJSON"); IsSingleMolecule = false; SwitchChemDoodleMode(); } } catch (Exception ex) { using (var form = new ReportError(Telemetry, TopLeft, module, ex)) { form.ShowDialog(); } } }
private void SearchBox_OnTextChanged(object sender, TextChangedEventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { if (!string.IsNullOrWhiteSpace(SearchBox.Text)) { SearchButton.IsEnabled = true; ClearButton.IsEnabled = false; } else { SearchButton.IsEnabled = false; ClearButton.IsEnabled = true; } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private void EditLabelsHost_Load(object sender, EventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { MinimumSize = new Size(900, 600); Left = (int)TopLeft.X; Top = (int)TopLeft.Y; // Fix bottom panel int margin = Buttons.Height - Save.Bottom; splitContainer1.SplitterDistance = splitContainer1.Height - Save.Height - margin * 2; splitContainer1.FixedPanel = FixedPanel.Panel2; splitContainer1.IsSplitterFixed = true; var editor = new LabelsEditor(_options); editor.InitializeComponent(); elementHost1.Child = editor; editor.TopLeft = TopLeft; editor.Used1D = Used1D; editor.PopulateTreeView(Cml); Warning.Text = Message; } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, TopLeft, module, ex)) { form.ShowDialog(); } } }
public override void Refresh() { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { Word.Application app = Globals.Chem4WordV3.Application; using (new UI.WaitCursor()) { if (_libraryViewModel == null) { _libraryViewModel = new LibraryViewModel(); } libraryView1.MainGrid.DataContext = _libraryViewModel; } app.System.Cursor = Word.WdCursorType.wdCursorNormal; } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private SQLiteDataReader GetChemicalNames(SQLiteConnection conn, int id) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { StringBuilder sb = new StringBuilder(); sb.AppendLine("SELECT ChemicalNameID, Name, Namespace, Tag"); sb.AppendLine("FROM ChemicalNames"); sb.AppendLine("WHERE ChemistryID = @id"); sb.AppendLine("ORDER BY Name"); SQLiteCommand command = new SQLiteCommand(sb.ToString(), conn); command.Parameters.Add("@id", DbType.Int64).Value = id; return(command.ExecuteReader()); } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } return(null); } }
public override void Refresh() { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { _editorOptions = new AcmeOptions(Globals.Chem4WordV3.AddInInfo.ProductAppDataPath); libraryView1.SetOptions(_editorOptions); using (new WaitCursor()) { if (_libraryViewModel == null) { _libraryViewModel = new LibraryViewModel(); } libraryView1.MainGrid.DataContext = _libraryViewModel; } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private void FormChemDoodleEditor_FormClosing(object sender, FormClosingEventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { if (DialogResult == DialogResult.OK) { if (_saveSettings) { SaveSettings(); } } else { DialogResult = DialogResult.Cancel; } } catch (Exception ex) { using (var form = new ReportError(Telemetry, TopLeft, module, ex)) { form.ShowDialog(); } } }
private SQLiteDataReader GetAllUserTags(SQLiteConnection conn, int chemistryId) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { StringBuilder sb = new StringBuilder(); sb.AppendLine("SELECT Id, UserTag, Lock"); sb.AppendLine("FROM UserTags"); sb.AppendLine("WHERE ID IN"); sb.AppendLine(" (SELECT TagID"); sb.AppendLine(" FROM ChemistryByTags"); sb.AppendLine(" WHERE GalleryID = @id)"); SQLiteCommand command = new SQLiteCommand(sb.ToString(), conn); command.Parameters.Add("@id", DbType.Int64).Value = chemistryId; return(command.ExecuteReader()); } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } return(null); } }
private void DeleteAllChemistry(SQLiteConnection conn) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { SQLiteCommand command = new SQLiteCommand("DELETE FROM ChemistryByTags", conn); SQLiteCommand command2 = new SQLiteCommand("DELETE FROM Gallery", conn); SQLiteCommand command3 = new SQLiteCommand("DELETE FROM ChemicalNames", conn); SQLiteCommand command4 = new SQLiteCommand("UPDATE SQLITE_SEQUENCE SET SEQ=0 WHERE NAME='Gallery'", conn); SQLiteCommand command5 = new SQLiteCommand("VACUUM", conn); using (SQLiteTransaction tr = conn.BeginTransaction()) { command.ExecuteNonQuery(); command2.ExecuteNonQuery(); command3.ExecuteNonQuery(); #if DEBUG command4.ExecuteNonQuery(); #endif tr.Commit(); command5.ExecuteNonQuery(); } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private SQLiteDataReader GetAllNames(SQLiteConnection conn) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { StringBuilder sb = new StringBuilder(); sb.AppendLine("SELECT DISTINCT Name, ChemistryId"); sb.AppendLine("FROM ChemicalNames"); sb.AppendLine(" UNION"); sb.AppendLine("SELECT DISTINCT Name, Id"); sb.AppendLine("FROM Gallery"); SQLiteCommand command = new SQLiteCommand(sb.ToString(), conn); return(command.ExecuteReader()); } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } return(null); } }
private void UpdateChemistry(SQLiteConnection conn, long id, string name, string xml, string formula) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { Byte[] blob = Encoding.UTF8.GetBytes(xml); StringBuilder sb = new StringBuilder(); sb.AppendLine("UPDATE GALLERY"); sb.AppendLine("SET Name = @name, Chemistry = @blob, Formula = @formula"); sb.AppendLine("WHERE ID = @id"); SQLiteCommand command = new SQLiteCommand(sb.ToString(), conn); command.Parameters.Add("@id", DbType.Int64).Value = id; command.Parameters.Add("@blob", DbType.Binary, blob.Length).Value = blob; command.Parameters.Add("@name", DbType.String, name?.Length ?? 0).Value = name ?? ""; command.Parameters.Add("@formula", DbType.String, formula?.Length ?? 0).Value = formula ?? ""; using (SQLiteTransaction tr = conn.BeginTransaction()) { command.ExecuteNonQuery(); tr.Commit(); } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
/// <summary> /// Handles filtering of the library list /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void SearchButton_OnClick(object sender, RoutedEventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { if (!string.IsNullOrWhiteSpace(SearchBox.Text)) { //get the view from the listbox's source ICollectionView filteredView = CollectionViewSource.GetDefaultView((this.MainGrid.DataContext as LibraryViewModel).ChemistryItems); //then try to match part of either its name or an alternative name to the string typed in filteredView.Filter = ci => { var itm = ci as Chemistry; var queryString = SearchBox.Text.ToUpper(); return(itm.Name.ToUpper().Contains(queryString) || itm.OtherNames.Any(n => n.ToUpper().Contains(queryString))); }; SearchButton.IsEnabled = false; ClearButton.IsEnabled = true; } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
private void AboutHost_Load(object sender, EventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { Left = (int)TopLeft.X; Top = (int)TopLeft.Y; aboutControl1.TopLeft = TopLeft; aboutControl1.AutoClose = AutoClose; if (AutoClose) { ShowInTaskbar = false; aboutControl1.OnPreloadComplete += OnPreloadCompleted; } else { aboutControl1.VersionString = VersionString; } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, TopLeft, module, ex)) { form.ShowDialog(); } } }
private void AboutHost_Load(object sender, EventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { using (new WaitCursor()) { if (!PointHelper.PointIsEmpty(TopLeft)) { Left = (int)TopLeft.X; Top = (int)TopLeft.Y; } aboutControl1.TopLeft = TopLeft; aboutControl1.VersionString = VersionString; } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, TopLeft, module, ex)) { form.ShowDialog(); } } }
private void ToggleShowCarbons_CheckedChanged(object sender, EventArgs e) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { if (_eventsEnabled) { //Telemetry.Write(module, "Action", "Triggered"); if (chkToggleShowCarbons.Checked) { UserOptions.ShowCarbons = true; ExecuteJavaScript("ShowCarbons", true); } else { UserOptions.ShowCarbons = false; ExecuteJavaScript("ShowCarbons", false); } _saveSettings = true; } } catch (Exception ex) { using (var form = new ReportError(Telemetry, TopLeft, module, ex)) { form.ShowDialog(); } } }
public TagEditor() { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { TextChanged += OnTagTextChanged; PreviewKeyDown += TagEditor_PreviewKeyDown; TagMatcher = text => { if (text.EndsWith(";") | text.EndsWith(" ")) { // Remove the ';' return(text.Substring(0, text.Length - 1).Trim().ToUpper()); } return(null); }; } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
internal static void ReportError(Exception exceptionObj) { if (exceptionObj == null) { return; } ReportError reportError = new ReportError(exceptionObj); reportError.ShowDialog(); }
private static void TagStringChanged(DependencyObject d, DependencyPropertyChangedEventArgs args) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { TagEditor rtb = (TagEditor)d; string newTags = (string)args.NewValue; rtb.TextChanged -= rtb.OnTagTextChanged; try { rtb.Document.Blocks.Clear(); var para = new Paragraph(new Run()); rtb.Document.Blocks.Add(para); string[] allTags = newTags.Split(new char[] { ';', ',' }); foreach (string tag in allTags) { var tagString = tag.Trim(); if (tagString != "") { var presenter = new ContentPresenter() { Content = tagString, ContentTemplate = rtb.TagTemplate, }; para.Inlines.Add(presenter); } } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } finally { rtb.TextChanged += rtb.OnTagTextChanged; } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } }
public Dictionary <string, int> GetLibraryNames() { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; var allNames = new Dictionary <string, int>(); Stopwatch sw = new Stopwatch(); sw.Start(); try { using (SQLiteConnection conn = LibraryConnection()) { using (SQLiteDataReader names = GetAllNames(conn)) { while (names.Read()) { string name = names["Name"] as string; if (!string.IsNullOrEmpty(name) && name.Length > 3) { // Exclude any purely numeric names long numeric = -1; if (!long.TryParse(name, out numeric)) { int id = int.Parse(names["ChemistryId"].ToString()); if (!allNames.ContainsKey(name)) { allNames.Add(name, id); } } } } } } } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } } sw.Stop(); #if DEBUG // Task 810 Globals.Chem4WordV3.Telemetry.Write(module, "Timing", $"Reading {allNames.Count} Chemical names took {SafeDouble.AsString(sw.ElapsedMilliseconds)}ms"); #endif return(allNames); }
private long AddChemicalName(SQLiteConnection conn, long id, string name, string dictRef) { string module = $"{_product}.{_class}.{MethodBase.GetCurrentMethod().Name}()"; try { long lastID; var refs = dictRef.Split(':'); StringBuilder sb = new StringBuilder(); sb.AppendLine("DELETE FROM ChemicalNames"); sb.AppendLine("WHERE ChemistryID = @chemID"); sb.AppendLine(" AND Namespace = @namespace"); sb.AppendLine(" AND Tag = @tag"); SQLiteCommand delcommand = new SQLiteCommand(sb.ToString(), conn); delcommand.Parameters.Add("@namespace", DbType.String, refs[0].Length).Value = refs[0]; delcommand.Parameters.Add("@tag", DbType.String, refs[1].Length).Value = refs[1]; delcommand.Parameters.Add("@chemID", DbType.Int32).Value = id; sb = new StringBuilder(); sb.AppendLine("INSERT INTO ChemicalNames"); sb.AppendLine(" (ChemistryID, Name, Namespace, tag)"); sb.AppendLine("VALUES"); sb.AppendLine("(@chemID, @name, @namespace, @tag)"); SQLiteCommand insertCommand = new SQLiteCommand(sb.ToString(), conn); insertCommand.Parameters.Add("@name", DbType.String, name.Length).Value = name; insertCommand.Parameters.Add("@namespace", DbType.String, refs[0].Length).Value = refs[0]; insertCommand.Parameters.Add("@tag", DbType.String, refs[1].Length).Value = refs[1]; insertCommand.Parameters.Add("@chemID", DbType.Int32).Value = id; delcommand.ExecuteNonQuery(); insertCommand.ExecuteNonQuery(); string sql = "SELECT last_insert_rowid()"; SQLiteCommand cmd = new SQLiteCommand(sql, conn); lastID = (Int64)cmd.ExecuteScalar(); return(lastID); } catch (Exception ex) { using (var form = new ReportError(Globals.Chem4WordV3.Telemetry, Globals.Chem4WordV3.WordTopLeft, module, ex)) { form.ShowDialog(); } return(-1); } }
internal static void ReportError(Exception exceptionObj) { if (exceptionObj == null) return; ReportError reportError = new ReportError(exceptionObj); reportError.ShowDialog(); }