From 7d7ee0bec0d0774fd23fdba8a12a55aa99e89715 Mon Sep 17 00:00:00 2001 From: Peter Forstmeier Date: Sun, 22 Aug 2010 17:26:06 +0000 Subject: [PATCH] Toggle SortOrder for Grouping git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/reports@6440 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- .../Project/Commands/ExplorerCommands.cs | 3 ++ .../Project/ReportExplorer/ExplorerTree.cs | 30 +++++++++++-------- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/ExplorerCommands.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/ExplorerCommands.cs index d7003134e0..61493fc875 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/ExplorerCommands.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/ExplorerCommands.cs @@ -52,6 +52,9 @@ namespace ICSharpCode.Reports.Addin.Commands } } + + + public class ClearSelectedNodeCommand : AbstractCommand { public override void Run() diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportExplorer/ExplorerTree.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportExplorer/ExplorerTree.cs index 2d19f5bded..5189f4ab87 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportExplorer/ExplorerTree.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportExplorer/ExplorerTree.cs @@ -243,22 +243,28 @@ namespace ICSharpCode.Reports.Addin } - public void ToggleSortOrder() + public void ToggleSortOrder() { - SortColumnNode scn = this.SelectedNode as SortColumnNode; + SortColumnNode sortColumnNode = this.SelectedNode as SortColumnNode; - if (scn != null) { - if (scn.SortDirection == ListSortDirection.Ascending) { - scn.SortDirection = ListSortDirection.Descending; - scn.ImageIndex = descendingIcon; - scn.SelectedImageIndex = descendingIcon; + if (sortColumnNode != null) { + if (sortColumnNode.SortDirection == ListSortDirection.Ascending) { + sortColumnNode.SortDirection = ListSortDirection.Descending; + sortColumnNode.ImageIndex = descendingIcon; + sortColumnNode.SelectedImageIndex = descendingIcon; } else { - scn.SortDirection = ListSortDirection.Ascending; - scn.ImageIndex = ascendingIcon; - scn.SelectedImageIndex = ascendingIcon; + sortColumnNode.SortDirection = ListSortDirection.Ascending; + sortColumnNode.ImageIndex = ascendingIcon; + sortColumnNode.SelectedImageIndex = ascendingIcon; } - SortColumn abstr = (SortColumn)this.reportModel.ReportSettings.SortColumnsCollection.Find(this.SelectedNode.Text); - abstr.SortDirection = scn.SortDirection; + SortColumn abstractColumn = null; + if (this.SelectedNode is GroupColumnNode) { + + abstractColumn = (SortColumn)this.reportModel.ReportSettings.GroupColumnsCollection.Find(this.SelectedNode.Text); + } else { + abstractColumn = (SortColumn)this.reportModel.ReportSettings.SortColumnsCollection.Find(this.SelectedNode.Text); + } + abstractColumn.SortDirection = sortColumnNode.SortDirection; this.OnPropertyChanged ("ToggleSortOrder"); } }