C2023-005: Search for annotations, delete causes reposition to first list item
C2023-004: Multiple tabs, closing one repositions to first rather than active
This commit is contained in:
parent
525c8f0650
commit
e2a76bdb3a
@ -939,11 +939,18 @@ namespace Volian.Controls.Library
|
||||
if (unitPrefix.EndsWith("#"))
|
||||
unitPrefix = unitPrefix.Replace("#", string.Empty);
|
||||
|
||||
// C2023-005: Lose list position after delete. Save selected index to restore after & don't open the
|
||||
// section after reset of index (UpdateAnnotationList setting below)
|
||||
int curindx = lbSrchResults.SelectedIndex;
|
||||
|
||||
SearchResults = ItemInfoList.GetListFromAnnotationSearch(DVISearchList, TypeSearchList, AnnotationSearchType, cbxTextSearchAnnotation.Text, cbxCaseSensitiveAnnoText.Checked, unitPrefix);
|
||||
|
||||
DisplayResults();
|
||||
UpdatedAnnotationList = true;
|
||||
lbSrchResults.SelectedIndex = curindx < 0 ? -1 : curindx - 1;
|
||||
UpdatedAnnotationList = false;
|
||||
}
|
||||
|
||||
private bool UpdatedAnnotationList = false;
|
||||
#endregion
|
||||
|
||||
#region (ContextMenu)
|
||||
@ -1730,6 +1737,7 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
if (_LoadingList) return;
|
||||
if (_ProcessingSelectedValueChanged) return;
|
||||
if (UpdatedAnnotationList) return;
|
||||
_ProcessingSelectedValueChanged = true;
|
||||
// B2021-004: Prevent multiple selections on the Incoming Transitions listbox (disable selections
|
||||
// for the listbox until all processing is done, listbox is enabled at end of method)
|
||||
|
@ -826,6 +826,9 @@ namespace Volian.Controls.Library
|
||||
}
|
||||
private DisplayTabItem FindRemainingTab(Bar myBar)
|
||||
{
|
||||
// C2023-004: Proms reverts to first tab rather than active tab/save last selected tab is and use to reset to it
|
||||
if (LastSelectedDisplayTabItem != null && !_RemovedDisplayTabItems.Contains(LastSelectedDisplayTabItem))
|
||||
return LastSelectedDisplayTabItem;
|
||||
foreach (DisplayTabItem itm in myBar.Items)
|
||||
{
|
||||
if (!_RemovedDisplayTabItems.Contains(itm)) return itm;
|
||||
@ -963,6 +966,13 @@ namespace Volian.Controls.Library
|
||||
}
|
||||
}
|
||||
}
|
||||
// C2023-004: Proms reverts to first tab rather than active tab/save last selected tab is and use to reset to it
|
||||
private DisplayTabItem _lastSelectedDisplayTabItem;
|
||||
public DisplayTabItem LastSelectedDisplayTabItem
|
||||
{
|
||||
get { return _lastSelectedDisplayTabItem; }
|
||||
set { _lastSelectedDisplayTabItem = value; }
|
||||
}
|
||||
private DisplayTabItem _SelectedDisplayTabItem = null;
|
||||
public DisplayTabItem SelectedDisplayTabItem
|
||||
{
|
||||
@ -974,6 +984,7 @@ namespace Volian.Controls.Library
|
||||
{
|
||||
if (_SelectedDisplayTabItem != null && _SelectedDisplayTabItem.MyDSOTabPanel != null)
|
||||
_SelectedDisplayTabItem.MyDSOTabPanel.InActive();
|
||||
_lastSelectedDisplayTabItem = _SelectedDisplayTabItem;
|
||||
_SelectedDisplayTabItem = value;
|
||||
OnSelectedDisplayTabItemChanged(this, new EventArgs());
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user