Browse Source

ReportExplorer show GroupNode and childs

4.1
peterforstmeier 14 years ago
parent
commit
70deb79a76
  1. 4
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.SQLServer/SQLServerDatabaseDriver.cs
  2. 9
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportExplorer/ExplorerNodes.cs
  3. 91
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportExplorer/ExplorerTree.cs
  4. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/ExtensionMethodes.cs
  5. 3
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/BaseListStrategy.cs
  6. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportColumns/ExportContainer.cs
  7. 8
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportColumns/ExportGraphicContainer.cs

4
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.SQLServer/SQLServerDatabaseDriver.cs

@ -178,6 +178,10 @@ namespace ICSharpCode.Data.Core.DatabaseDrivers.SQLServer @@ -178,6 +178,10 @@ namespace ICSharpCode.Data.Core.DatabaseDrivers.SQLServer
sqlConnection = new SqlConnection();
sqlConnection.ConnectionString = datasource.ConnectionString;
var sq = new System.Data.SqlClient.SqlConnectionStringBuilder();
sq.ConnectionString = sqlConnection.ConnectionString;
try
{
sqlConnection.Open();

9
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportExplorer/ExplorerNodes.cs

@ -90,6 +90,11 @@ namespace ICSharpCode.Reports.Addin @@ -90,6 +90,11 @@ namespace ICSharpCode.Reports.Addin
{
ListSortDirection listSortDirection;
public SortColumnNode(string nodeName,string contextMenuPath):this(nodeName,0,contextMenuPath)
{
}
public SortColumnNode(string nodeName,int imageIndex,string contextMenuPath):base(nodeName,contextMenuPath)
{
this.ImageIndex = imageIndex;
@ -107,6 +112,10 @@ namespace ICSharpCode.Reports.Addin @@ -107,6 +112,10 @@ namespace ICSharpCode.Reports.Addin
internal class GroupColumnNode:SortColumnNode
{
public GroupColumnNode (string nodeName,string contextMenuPath):this(nodeName,0,contextMenuPath)
{
}
public GroupColumnNode (string nodeName,int imageIndex,string contextMenuPath):base(nodeName,imageIndex,contextMenuPath)
{

91
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportExplorer/ExplorerTree.cs

@ -5,12 +5,12 @@ using System; @@ -5,12 +5,12 @@ using System;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
using System.Linq;
using ICSharpCode.Core;
using ICSharpCode.Core.WinForms;
using ICSharpCode.Reports.Core;
using ICSharpCode.SharpDevelop;
using ICSharpCode.Reports.Core.BaseClasses;
namespace ICSharpCode.Reports.Addin
{
@ -19,9 +19,11 @@ namespace ICSharpCode.Reports.Addin @@ -19,9 +19,11 @@ namespace ICSharpCode.Reports.Addin
/// </summary>
internal class ExplorerTree:TreeView,INotifyPropertyChanged
{
private const string sortColumnMenu = "/SharpDevelopReports/ContextMenu/FieldsExplorer/ColumnSortTreeNode";
private const string sortColumnMenuPath = "/SharpDevelopReports/ContextMenu/FieldsExplorer/ColumnSortTreeNode";
private const string sectionContextMenu = "/SharpDevelopReports/ContextMenu/FieldsExplorer/SectionTreeNode";
private const string parameterEditorMenu = "/SharpDevelopReports/ContextMenu/FieldsExplorer/ParameterNode";
private const string groupContextMenuPath ="/SharpDevelopReports/ContextMenu/FieldsExplorer/ColumnGroupTreeNode";
private SectionNode nodeRoot;
private SectionNode nodeModel;
@ -130,7 +132,7 @@ namespace ICSharpCode.Reports.Addin @@ -130,7 +132,7 @@ namespace ICSharpCode.Reports.Addin
{
SortColumnNode sortNode = new SortColumnNode (node.Text,
ExplorerTree.ascendingIcon,
ExplorerTree.sortColumnMenu);
ExplorerTree.sortColumnMenuPath);
sortNode.SortDirection = ListSortDirection.Ascending;
this.SelectedNode = sortNode;
@ -147,7 +149,7 @@ namespace ICSharpCode.Reports.Addin @@ -147,7 +149,7 @@ namespace ICSharpCode.Reports.Addin
{
this.nodeSorting.Nodes.Clear();
GroupColumnNode groupNode = new GroupColumnNode(node.Text,ExplorerTree.ascendingIcon,
ExplorerTree.sortColumnMenu);
ExplorerTree.sortColumnMenuPath);
groupNode.SortDirection = ListSortDirection.Ascending;
this.SelectedNode = groupNode;
sectionNode.Nodes.Add(groupNode);
@ -285,36 +287,43 @@ namespace ICSharpCode.Reports.Addin @@ -285,36 +287,43 @@ namespace ICSharpCode.Reports.Addin
#region FillTree
private void SetSortColumns()
{
this.nodeSorting.Nodes.Clear();
SortColumnNode scn = null;
foreach (SortColumn sc in this.reportModel.ReportSettings.SortColumnsCollection){
if (sc.SortDirection == ListSortDirection.Ascending) {
scn = new SortColumnNode (sc.ColumnName,ascendingIcon,"/SharpDevelopReports/ContextMenu/FieldsExplorer/ColumnSortTreeNode");
} else {
scn = new SortColumnNode (sc.ColumnName,descendingIcon,"/SharpDevelopReports/ContextMenu/FieldsExplorer/ColumnSortTreeNode");
}
this.nodeSorting.Nodes.Add(scn);
}
}
private void SetGroupColumns()
{
this.nodeGrouping.Nodes.Clear();
GroupColumnNode groupNode = null;
foreach (GroupColumn groupColumn in this.reportModel.ReportSettings.GroupColumnsCollection)
{
var groupNode = new GroupColumnNode(groupColumn.ColumnName,groupContextMenuPath);
if (groupColumn.SortDirection == ListSortDirection.Ascending) {
groupNode = new GroupColumnNode (groupColumn.ColumnName,ascendingIcon,"/SharpDevelopReports/ContextMenu/FieldsExplorer/ColumnGroupTreeNode");
groupNode.ImageIndex = ascendingIcon;
} else {
groupNode = new GroupColumnNode (groupColumn.ColumnName,descendingIcon,"/SharpDevelopReports/ContextMenu/FieldsExplorer/ColumnGroupTreeNode");
groupNode.ImageIndex = descendingIcon;
}
this.nodeGrouping.Nodes.Add(groupNode);
foreach (var p in this.reportModel.ReportSettings.AvailableFieldsCollection.Where(p => (p.ColumnName != groupColumn.ColumnName)))
{
var cn = new ColumnNode(p.ColumnName,columnIcon);
groupNode.Nodes.Add(cn);
}
}
}
public void BuildTree ()
{
this.BeginUpdate();
this.nodeAvailableFields.Nodes.Clear();
this.nodeSorting.Nodes.Clear();
this.nodeGrouping.Nodes.Clear();
this.nodeParams.Nodes.Clear();
this.reportModel.ReportSettings.AvailableFieldsCollection.ForEach(SetAvailableFields);
this.reportModel.ReportSettings.SortColumnsCollection.ForEach(SetSortColumns);
SetGroupColumns();
this.reportModel.ReportSettings.ParameterCollection.ForEach(SetParams);
// SetFunctions();
this.ExpandAll();
this.EndUpdate();
}
private void SetAvailableFields (AbstractColumn af)
{
ColumnNode node = new ColumnNode(af.ColumnName,columnIcon);
@ -324,32 +333,31 @@ namespace ICSharpCode.Reports.Addin @@ -324,32 +333,31 @@ namespace ICSharpCode.Reports.Addin
}
private void SetParameters ()
{
this.nodeParams.Nodes.Clear();
foreach (BasicParameter p in this.reportModel.ReportSettings.ParameterCollection)
private void SetSortColumns (AbstractColumn column)
{
string s = String.Format(System.Globalization.CultureInfo.CurrentCulture,
"{0}[{1}]",p.ParameterName,p.ParameterValue);
ParameterNode node = new ParameterNode(s,columnIcon);
this.nodeParams.Nodes.Add(node);
SortColumn sortColumn = column as SortColumn;
if (sortColumn != null) {
var sortColumnNode = new SortColumnNode (sortColumn.ColumnName,sortColumnMenuPath);
if (sortColumn.SortDirection == ListSortDirection.Ascending) {
sortColumnNode.ImageIndex = ascendingIcon;
} else {
sortColumnNode.ImageIndex = descendingIcon;
}
this.nodeSorting.Nodes.Add(sortColumnNode);
}
}
public void BuildTree ()
private void SetParams (BasicParameter p)
{
this.BeginUpdate();
this.reportModel.ReportSettings.AvailableFieldsCollection.ForEach(SetAvailableFields);
SetSortColumns();
SetGroupColumns();
SetParameters();
// SetFunctions();
this.ExpandAll();
this.EndUpdate();
string s = String.Format(System.Globalization.CultureInfo.CurrentCulture,
"{0}[{1}]",p.ParameterName,p.ParameterValue);
ParameterNode node = new ParameterNode(s,columnIcon);
this.nodeParams.Nodes.Add(node);
}
#endregion
#region Build Basic Tree
@ -394,7 +402,6 @@ namespace ICSharpCode.Reports.Addin @@ -394,7 +402,6 @@ namespace ICSharpCode.Reports.Addin
nodeParams.SelectedImageIndex = folderOpen;
nodeParams.ContextMenuAddinTreePath = ExplorerTree.parameterEditorMenu;
this.nodeModel.Nodes.Add(this.nodeParams);
this.nodeRoot.Nodes.Add(nodeModel);

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/ExtensionMethodes.cs

@ -11,7 +11,7 @@ using System.Collections.Generic; @@ -11,7 +11,7 @@ using System.Collections.Generic;
using System.Windows;
using System.Windows.Media;
namespace ICSharpCode.Reports.Core
namespace ICSharpCode.Reports.Core.BaseClasses
{
/// <summary>
/// Description of ExtensionMethodes.

3
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/BaseListStrategy.cs

@ -96,8 +96,7 @@ namespace ICSharpCode.Reports.Core { @@ -96,8 +96,7 @@ namespace ICSharpCode.Reports.Core {
}
CreateGroupedChildren(childList,element);
compVal = groupValue;
}
// ShowIndexList(IndexList);
} ShowIndexList(IndexList);
}

6
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportColumns/ExportContainer.cs

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Drawing;
using ICSharpCode.Reports.Core.BaseClasses;
using iTextSharp.text.pdf;
namespace ICSharpCode.Reports.Core.Exporter
@ -32,12 +33,7 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -32,12 +33,7 @@ namespace ICSharpCode.Reports.Core.Exporter
}
base.DrawItem(graphics);
base.Decorate(graphics);
items.ForEach(item =>item.DrawItem(graphics));
// foreach (ICSharpCode.Reports.Core.Exporter.BaseExportColumn baseExportColumn in items)
// {
// baseExportColumn.DrawItem(graphics);
// }
}

8
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportColumns/ExportGraphicContainer.cs

@ -8,9 +8,11 @@ @@ -8,9 +8,11 @@
*/
using System;
using System.Drawing;
using System.Linq;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.Globals;
using iTextSharp.text.pdf;
using System.Linq;
namespace ICSharpCode.Reports.Core.Exporter
{
@ -46,10 +48,6 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -46,10 +48,6 @@ namespace ICSharpCode.Reports.Core.Exporter
style.DisplayRectangle);
}
Items.ForEach(item =>item.DrawItem(graphics));
// foreach (ICSharpCode.Reports.Core.Exporter.BaseExportColumn baseExportColumn in Items)
// {
// baseExportColumn.DrawItem(graphics);
// }
}
}

Loading…
Cancel
Save