/// <summary> /// Writes notes to an IHasNotes object, returns True if notes were changed and False otherwise. /// </summary> /// <param name="objNotes"></param> /// <param name="treNode"></param> public static async ValueTask <bool> WriteNotes(this IHasNotes objNotes, TreeNode treNode) { if (objNotes == null || treNode == null) { return(false); } Form frmToUse = treNode.TreeView.FindForm() ?? Program.MainForm; DialogResult eResult = await frmToUse.DoThreadSafeFunc(async x => { using (EditNotes frmItemNotes = new EditNotes(objNotes.Notes, objNotes.NotesColor)) { await frmItemNotes.ShowDialogSafeAsync(x); if (frmItemNotes.DialogResult != DialogResult.OK) { return(frmItemNotes.DialogResult); } objNotes.Notes = frmItemNotes.Notes; objNotes.NotesColor = frmItemNotes.NotesColor; } treNode.ForeColor = objNotes.PreferredColor; treNode.ToolTipText = objNotes.Notes.WordWrap(); return(DialogResult.OK); }); return(eResult == DialogResult.OK); }
/// <summary> /// Allows the user to input notes that should be linked to the selected object. /// TODO: Should be linked back to CharacterShared in some way or moved into a more generic helper class. /// </summary> /// <param name="objNotes"></param> /// <param name="treNode"></param> private void WriteNotes(IHasNotes objNotes, TreeNode treNode) { string strOldValue = objNotes.Notes; using (frmNotes frmItemNotes = new frmNotes { Notes = strOldValue }) { frmItemNotes.ShowDialog(this); if (frmItemNotes.DialogResult != DialogResult.OK) { return; } objNotes.Notes = frmItemNotes.Notes; } if (objNotes.Notes == strOldValue) { return; } treNode.ForeColor = objNotes.PreferredColor; treNode.ToolTipText = objNotes.Notes.WordWrap(); MakeDirty?.Invoke(null, null); }
/// <summary> /// Writes notes to an IHasNotes object, returns True if notes were changed and False otherwise. /// </summary> /// <param name="objNotes"></param> /// <param name="treNode"></param> public static bool WriteNotes(this IHasNotes objNotes, TreeNode treNode) { if (objNotes == null || treNode == null) { return(false); } string strOldValue = objNotes.Notes; using (frmNotes frmItemNotes = new frmNotes { Notes = strOldValue }) { frmItemNotes.ShowDialog(Program.MainForm); if (frmItemNotes.DialogResult != DialogResult.OK) { return(false); } objNotes.Notes = frmItemNotes.Notes; } if (objNotes.Notes != strOldValue) { treNode.ForeColor = objNotes.PreferredColor; treNode.ToolTipText = objNotes.Notes.WordWrap(100); return(true); } return(false); }
/// <summary> /// Allows the user to input notes that should be linked to the selected object. /// TODO: Should be linked back to CharacterShared in some way or moved into a more generic helper class. /// </summary> /// <param name="objNotes"></param> /// <param name="treNode"></param> private async ValueTask WriteNotes(IHasNotes objNotes, TreeNode treNode) { using (ThreadSafeForm <EditNotes> frmItemNotes = await ThreadSafeForm <EditNotes> .GetAsync(() => new EditNotes(objNotes.Notes, objNotes.NotesColor))) { if (await frmItemNotes.ShowDialogSafeAsync(_objCharacter) != DialogResult.OK) { return; } objNotes.Notes = frmItemNotes.MyForm.Notes; objNotes.NotesColor = frmItemNotes.MyForm.NotesColor; } TreeView objTreeView = treNode.TreeView; if (objTreeView != null) { await objTreeView.DoThreadSafeAsync(() => { treNode.ForeColor = objNotes.PreferredColor; treNode.ToolTipText = objNotes.Notes.WordWrap(); }); } else { treNode.ForeColor = objNotes.PreferredColor; treNode.ToolTipText = objNotes.Notes.WordWrap(); } MakeDirty?.Invoke(this, EventArgs.Empty); }
/// <summary> /// Allows the user to input notes that should be linked to the selected object. /// TODO: Should be linked back to CharacterShared in some way or moved into a more generic helper class. /// </summary> /// <param name="objNotes"></param> /// <param name="treNode"></param> private async ValueTask WriteNotes(IHasNotes objNotes, TreeNode treNode) { using (EditNotes frmItemNotes = new EditNotes(objNotes.Notes, objNotes.NotesColor)) { await frmItemNotes.ShowDialogSafeAsync(this); if (frmItemNotes.DialogResult != DialogResult.OK) { return; } objNotes.Notes = frmItemNotes.Notes; objNotes.NotesColor = frmItemNotes.NotesColor; } treNode.ForeColor = objNotes.PreferredColor; treNode.ToolTipText = objNotes.Notes.WordWrap(); MakeDirty?.Invoke(this, EventArgs.Empty); }
/// <summary> /// Writes notes to an IHasNotes object, returns True if notes were changed and False otherwise. /// </summary> /// <param name="objNotes"></param> /// <param name="treNode"></param> public static async ValueTask <bool> WriteNotes(this IHasNotes objNotes, TreeNode treNode) { if (objNotes == null || treNode == null) { return(false); } TreeView objTreeView = treNode.TreeView; Form frmToUse = objTreeView != null ? await objTreeView.DoThreadSafeFuncAsync(x => x.FindForm()) ?? Program.MainForm : Program.MainForm; using (ThreadSafeForm <EditNotes> frmItemNotes = await ThreadSafeForm <EditNotes> .GetAsync(() => new EditNotes(objNotes.Notes, objNotes.NotesColor))) { if (await frmItemNotes.ShowDialogSafeAsync(frmToUse) != DialogResult.OK) { return(false); } objNotes.Notes = frmItemNotes.MyForm.Notes; objNotes.NotesColor = frmItemNotes.MyForm.NotesColor; } if (objTreeView != null) { await objTreeView.DoThreadSafeAsync(() => { treNode.ForeColor = objNotes.PreferredColor; treNode.ToolTipText = objNotes.Notes.WordWrap(); }); } else { treNode.ForeColor = objNotes.PreferredColor; treNode.ToolTipText = objNotes.Notes.WordWrap(); } return(true); }
/// <summary> /// Writes notes to an IHasNotes object, returns True if notes were changed and False otherwise. /// </summary> /// <param name="objNotes"></param> public static bool WriteNotes(this IHasNotes objNotes, TreeNode treNode) { string strOldValue = objNotes.Notes; frmNotes frmItemNotes = new frmNotes { Notes = strOldValue }; frmItemNotes.ShowDialog(); if (frmItemNotes.DialogResult == DialogResult.OK) { objNotes.Notes = frmItemNotes.Notes; if (objNotes.Notes != strOldValue) { treNode.ForeColor = objNotes.PreferredColor; treNode.ToolTipText = objNotes.Notes.WordWrap(100); return(true); } } return(false); }