Browse Source

set IsChecked on search result grouping to indicate active grouping

pull/59/merge
Siegfried Pammer 12 years ago
parent
commit
931a049609
  1. 32
      src/AddIns/Misc/SearchAndReplace/Project/Gui/DefaultSearchResult.cs

32
src/AddIns/Misc/SearchAndReplace/Project/Gui/DefaultSearchResult.cs

@ -71,20 +71,36 @@ namespace SearchAndReplace
perFileDropDown.SetValueToExtension(DropDownButton.ToolTipProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.SelectViewMode.ToolTip")); perFileDropDown.SetValueToExtension(DropDownButton.ToolTipProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.SelectViewMode.ToolTip"));
MenuItem flatItem = new MenuItem(); MenuItem flatItem = new MenuItem();
flatItem.IsCheckable = true;
flatItem.SetValueToExtension(MenuItem.HeaderProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.Flat")); flatItem.SetValueToExtension(MenuItem.HeaderProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.Flat"));
flatItem.Click += delegate { SetResultGrouping(); }; flatItem.Click += delegate {
SetResultGrouping();
SetCheckedItem(flatItem, perFileDropDown.DropDownMenu);
};
MenuItem perFileItem = new MenuItem(); MenuItem perFileItem = new MenuItem();
perFileItem.IsCheckable = true;
perFileItem.SetValueToExtension(MenuItem.HeaderProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.PerFile")); perFileItem.SetValueToExtension(MenuItem.HeaderProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.PerFile"));
perFileItem.Click += delegate { SetResultGrouping(SearchResultGroupingKind.PerFile); }; perFileItem.Click += delegate {
SetResultGrouping(SearchResultGroupingKind.PerFile);
SetCheckedItem(perFileItem, perFileDropDown.DropDownMenu);
};
MenuItem perProjectItem = new MenuItem(); MenuItem perProjectItem = new MenuItem();
perProjectItem.IsCheckable = true;
perProjectItem.SetValueToExtension(MenuItem.HeaderProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.PerProject")); perProjectItem.SetValueToExtension(MenuItem.HeaderProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.PerProject"));
perProjectItem.Click += delegate { SetResultGrouping(SearchResultGroupingKind.PerProject); }; perProjectItem.Click += delegate {
SetResultGrouping(SearchResultGroupingKind.PerProject);
SetCheckedItem(perProjectItem, perFileDropDown.DropDownMenu);
};
MenuItem perProjectAndFileItem = new MenuItem(); MenuItem perProjectAndFileItem = new MenuItem();
perProjectAndFileItem.IsCheckable = true;
perProjectAndFileItem.SetValueToExtension(MenuItem.HeaderProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.PerProjectAndFile")); perProjectAndFileItem.SetValueToExtension(MenuItem.HeaderProperty, new LocalizeExtension("MainWindow.Windows.SearchResultPanel.PerProjectAndFile"));
perProjectAndFileItem.Click += delegate { SetResultGrouping(SearchResultGroupingKind.PerProjectAndFile); }; perProjectAndFileItem.Click += delegate {
SetResultGrouping(SearchResultGroupingKind.PerProjectAndFile);
SetCheckedItem(perProjectAndFileItem, perFileDropDown.DropDownMenu);
};
perFileDropDown.DropDownMenu = new ContextMenu(); perFileDropDown.DropDownMenu = new ContextMenu();
perFileDropDown.DropDownMenu.Items.Add(flatItem); perFileDropDown.DropDownMenu.Items.Add(flatItem);
@ -109,6 +125,14 @@ namespace SearchAndReplace
return toolbarItems; return toolbarItems;
} }
static void SetCheckedItem(MenuItem newTarget, ContextMenu menu)
{
foreach (var item in menu.Items.OfType<MenuItem>()) {
item.IsChecked = false;
}
newTarget.IsChecked = true;
}
static void ExpandCollapseAll(bool newIsExpanded) static void ExpandCollapseAll(bool newIsExpanded)
{ {
if (resultsTreeViewInstance != null) { if (resultsTreeViewInstance != null) {

Loading…
Cancel
Save