Refactor quick action output handling and extend case note support
This commit is contained in:
@@ -42,21 +42,7 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
|
||||
#region DataProvider
|
||||
|
||||
private cSupportCaseDataProvider DataProvider;
|
||||
|
||||
/*
|
||||
{
|
||||
get { return (cDataProviderBase)GetValue(DataProviderProperty); }
|
||||
set {
|
||||
SetValue(DataProviderProperty, value);
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
private static readonly DependencyProperty DataProviderProperty =
|
||||
DependencyProperty.Register("DataProvider", typeof(cDataProviderBase), typeof(Notepad), new PropertyMetadata(null));
|
||||
*/
|
||||
private readonly cSupportCaseDataProvider _dataProvider;
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -102,24 +88,18 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
|
||||
private static void HandleLockedChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
|
||||
{
|
||||
|
||||
try
|
||||
{
|
||||
if (!(d is Notepad _me))
|
||||
{
|
||||
if (!(d is Notepad notepad))
|
||||
return;
|
||||
}
|
||||
|
||||
_me.LockNotepadIcon.SelectedInternIcon = _me.IsLocked ? F4SD_AdaptableIcon.Enums.enumInternIcons.lock_closed : F4SD_AdaptableIcon.Enums.enumInternIcons.lock_open;
|
||||
|
||||
_me.CloseNotepadIcon.IsEnabled = _me.IsLocked ? false : true;
|
||||
|
||||
notepad.LockNotepadIcon.SelectedInternIcon = notepad.IsLocked ? enumInternIcons.lock_closed : enumInternIcons.lock_open;
|
||||
notepad.CloseNotepadIcon.IsEnabled = !notepad.IsLocked;
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
@@ -165,7 +145,7 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
|
||||
public Notepad(cSupportCaseDataProvider dataProvider)
|
||||
{
|
||||
DataProvider = dataProvider;
|
||||
_dataProvider = dataProvider;
|
||||
InitializeComponent();
|
||||
saveTimer = new DispatcherTimer(TimeSpan.FromSeconds(0.75), DispatcherPriority.Render, SaveNotes, Dispatcher.CurrentDispatcher);
|
||||
IsLocked = cFasdCockpitConfig.Instance.IsNotepadVisibleDocked;
|
||||
@@ -180,16 +160,16 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
try
|
||||
{
|
||||
if (DataProvider is null)
|
||||
if (_dataProvider is null)
|
||||
return;
|
||||
|
||||
if (DataProvider?.CaseNotes?.Parent is RichTextBox parentBox)
|
||||
if (_dataProvider?.CaseNotes?.Parent is RichTextBox parentBox)
|
||||
parentBox.Document = new FlowDocument();
|
||||
|
||||
if (!(sender is RichTextBox senderElement))
|
||||
return;
|
||||
|
||||
senderElement.Document = DataProvider.CaseNotes;
|
||||
senderElement.Document = _dataProvider.CaseNotes;
|
||||
senderElement.CaretPosition = senderElement.CaretPosition.DocumentEnd;
|
||||
}
|
||||
catch (Exception E)
|
||||
@@ -221,7 +201,7 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
|
||||
#region CopyIcon Click
|
||||
|
||||
private async void CopyIcon_Click(object sender)
|
||||
private async void CopyIcon_Click(object sender, InputEventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -254,16 +234,6 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
}
|
||||
}
|
||||
|
||||
private void CopyIcon_TouchDown(object sender, TouchEventArgs e)
|
||||
{
|
||||
CopyIcon_Click(sender);
|
||||
}
|
||||
|
||||
private void CopyIcon_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
CopyIcon_Click(sender);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Popout
|
||||
@@ -308,13 +278,13 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
saveTimer?.Stop();
|
||||
|
||||
if (DataProvider is null)
|
||||
if (_dataProvider is null)
|
||||
return;
|
||||
|
||||
Dispatcher.Invoke(() =>
|
||||
{
|
||||
SetLanguageOfDocument();
|
||||
DataProvider.SaveCaseNotes();
|
||||
_dataProvider.SaveCaseNotes();
|
||||
});
|
||||
}
|
||||
catch (Exception E)
|
||||
@@ -642,7 +612,7 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
ToggleDockButton.Visibility = IsUndocked ? Visibility.Collapsed : Visibility.Visible;
|
||||
LockNotepadIcon.Visibility = IsUndocked ? Visibility.Collapsed : Visibility.Visible;
|
||||
CloseNotepadIcon.IsEnabled = IsUndocked ? true : !IsLocked;
|
||||
CloseNotepadIcon.IsEnabled = IsUndocked || !IsLocked;
|
||||
|
||||
}
|
||||
catch (Exception E)
|
||||
@@ -680,23 +650,12 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
}
|
||||
}
|
||||
|
||||
private void CloseNotepadIcon_MouseUp(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
if (e.ChangedButton == MouseButton.Left)
|
||||
CloseNotepad();
|
||||
}
|
||||
|
||||
private void CloseNotepadIcon_TouchDown(object sender, TouchEventArgs e)
|
||||
{
|
||||
CloseNotepad();
|
||||
}
|
||||
private void CloseNotepadIcon_Click(object sender, InputEventArgs e) => CloseNotepad();
|
||||
|
||||
private void LockNotepad()
|
||||
{
|
||||
|
||||
try
|
||||
{
|
||||
|
||||
if (IsLocked)
|
||||
{
|
||||
LockNotepadIcon.SetResourceReference(AdaptableIcon.AdaptableIcon.PrimaryIconColorProperty, "Color.SoftContrast");
|
||||
@@ -717,19 +676,9 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void LockNotepadIcon_MouseUp(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
if (e.ChangedButton == MouseButton.Left)
|
||||
LockNotepad();
|
||||
}
|
||||
|
||||
private void LockNotepadIcon_TouchDown(object sender, TouchEventArgs e)
|
||||
{
|
||||
LockNotepad();
|
||||
}
|
||||
private void LockNotepadIcon_Click(object sender, InputEventArgs e) => LockNotepad();
|
||||
|
||||
private void LockNotepadIcon_MouseLeave(object sender, MouseEventArgs e)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user