Browse Source

Delete unused FieldsExplorer/FieldsExplorer.cs

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@1653 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Peter Forstmeier 19 years ago
parent
commit
8651171880
  1. 593
      src/AddIns/Misc/SharpReport/SharpReportAddin/FieldsExplorer/FieldsExplorer.cs

593
src/AddIns/Misc/SharpReport/SharpReportAddin/FieldsExplorer/FieldsExplorer.cs

@ -1,593 +0,0 @@ @@ -1,593 +0,0 @@
//------------------------------------------------------------------------------
// <autogenerated>
// This code was generated by a tool.
// Runtime Version: 1.1.ascendingIconscendingIcon322.2032
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </autogenerated>
//------------------------------------------------------------------------------
using System;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Windows.Forms;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop.Gui;
using SharpReport;
using SharpReportCore;
/// <summary>
/// This Pad shows the Available Fields from a report and is used to handel sorting /grouping
/// </summary>
namespace SharpReportAddin {
public class FieldsExplorer : TreeView, IPadContent {
Panel contentPanel = new Panel();
private SectionTreeNode nodeAvailableFields;
private SectionTreeNode nodeSorting;
private SectionTreeNode nodeGrouping;
private TreeNode nodeFunction;
private TreeNode nodeParams;
private ReportModel reportModel;
private bool isFilled ;
#region Publics
///<summary>
/// Clear the selected Section
/// </summary>
public void ClearNodeSection () {
if (this.SelectedNode is SectionTreeNode) {
if (this.SelectedNode.Nodes.Count > 0) {
this.SelectedNode.Nodes.Clear();
NotifyReportView();
}
}
}
/// <summary>
/// Remove the selected Node from Sorting or Grouping Collection
/// </summary>
public void ClearSelectedNode() {
if (this.SelectedNode != null) {
TreeNode parent = this.SelectedNode.Parent;
this.SelectedNode.Remove();
this.SelectedNode = parent;
NotifyReportView();
}
}
/// <summary>
/// Toggle the SortDirection
/// </summary>
public void ToogleSortDirection () {
if (this.SelectedNode is ColumnsTreeNode) {
ColumnsTreeNode cn = (ColumnsTreeNode)this.SelectedNode;
if (cn.SortDirection == ListSortDirection.Ascending) {
cn.SortDirection = ListSortDirection.Descending;
cn.ImageIndex = descendingIcon;
cn.SelectedImageIndex = descendingIcon;
} else {
cn.SortDirection = ListSortDirection.Ascending;
cn.ImageIndex = ascendingIcon;
cn.SelectedImageIndex = ascendingIcon;
}
this.NotifyReportView();
}
}
#endregion
#region TreeView Events
private void TreeMouseDown(object sender, System.Windows.Forms.MouseEventArgs e){
TreeNode node = this.GetNodeAt(PointToClient(Cursor.Position));
if (node != null) {
this.SelectedNode = node;
CheckNode (node);
if (e.Button == MouseButtons.Right) {
AbstractFieldsNode abstrNode = node as AbstractFieldsNode;
if (abstrNode != null) {
if (abstrNode.ContextmenuAddinTreePath.Length > 0) {
ContextMenuStrip ctMen = MenuService.CreateContextMenu (this,abstrNode.ContextmenuAddinTreePath);
ctMen.Show (this,new Point (e.X,e.Y));
}
}
/*
if (node is AbstractFieldsNode) {
AbstractFieldsNode abstrNode = (AbstractFieldsNode)node;
if (abstrNode.ContextmenuAddinTreePath.Length > 0) {
ContextMenuStrip ctMen = MenuService.CreateContextMenu (this,abstrNode.ContextmenuAddinTreePath);
ctMen.Show (this,new Point (e.X,e.Y));
}
}
*/
}
}
}
void TreeViewItemDrag (object sender,ItemDragEventArgs e) {
if (e.Item is ColumnsTreeNode) {
ColumnsTreeNode node = (ColumnsTreeNode)e.Item;
// for now, only dragging of Columns is allowed
if (node.ImageIndex == columnIcon) {
this.SelectedNode = node;
if (node != null) {
this.DoDragDrop(node.DragDropDataObject,
DragDropEffects.Copy | DragDropEffects.Scroll);
}
}
}
}
void TreeViewDragOver (object sender,DragEventArgs e) {
TreeNode node = this.GetNodeAt(PointToClient(new Point (e.X,e.Y)));
node.EnsureVisible();
if (node.Nodes.Count > 0) {
node.Expand();
}
if(e.Data.GetDataPresent("SharpReportAddin.ColumnsTreeNode", false)){
//If we are in the AvailableFields Section we can't drop
if (node is SectionTreeNode){
e.Effect = DragDropEffects.Copy | DragDropEffects.Scroll;
} else {
e.Effect = DragDropEffects.None;
}
} else {
e.Effect = DragDropEffects.None;
}
}
void TreeViewDragDrop (object sender,DragEventArgs e) {
if(e.Data.GetDataPresent("SharpReportAddin.ColumnsTreeNode", false)){
Point pt = this.PointToClient (new Point( e.X,e.Y));
SectionTreeNode node = this.GetNodeAt (pt) as SectionTreeNode;
if (node != null) {
ColumnsTreeNode t = (ColumnsTreeNode)e.Data.GetData("SharpReportAddin.ColumnsTreeNode", true);
ColumnsTreeNode dest = new ColumnsTreeNode (t.Text);
// Useless to add a node twice
if (!FieldsExplorer.CheckForExist (node,dest)) {
dest.SortDirection = ListSortDirection.Ascending;
dest.ImageIndex = ascendingIcon;
dest.SelectedImageIndex = ascendingIcon;
this.SelectedNode = (TreeNode)dest;
CheckNode (dest);
node.Nodes.Add(dest);
NotifyReportView();
this.OnViewSaving(this,EventArgs.Empty);
}
}
}
}
private void FillExplorer () {
System.Console.WriteLine("FillExplorer");
this.FillTree();
this.ExpandAll();
isFilled = true;
}
private static bool CheckForExist (SectionTreeNode sec,ColumnsTreeNode col) {
if (sec.Nodes.Count > 0) {
for (int i = 0;i < sec.Nodes.Count ;i++ ) {
if (sec.Nodes[i].Text == col.Text) {
return true;
}
}
} else {
return false;
}
return false;
}
private void CheckNode (TreeNode node) {
ColumnsTreeNode cn = node as ColumnsTreeNode;
if (cn != null) {
if (node.Parent == nodeSorting) {
if (cn.SortDirection == ListSortDirection.Ascending) {
cn.ImageIndex = ascendingIcon;
} else {
cn.ImageIndex = descendingIcon;
}
} else if (node.Parent == this.nodeGrouping) {
cn.ImageIndex = clearIcon;
cn.SelectedImageIndex = clearIcon;
}
}
}
#endregion
private void NotifyReportView() {
System.Console.WriteLine("NotifyReportView");
if (this.isFilled) {
if (WorkbenchSingleton.Workbench.ActiveWorkbenchWindow.ViewContent is SharpReportView) {
WorkbenchSingleton.Workbench.ActiveWorkbenchWindow.ViewContent.IsDirty = true;
}
}
}
#region PadEvents
private void old_OnUpdateExplorerWindow (object sender,EventArgs e) {
System.Console.WriteLine("FieldsExplorer:OnUpdateExplorerWindow");
if (WorkbenchSingleton.Workbench.ActiveContent != null) {
Type type = WorkbenchSingleton.Workbench.ActiveContent.GetType();
if (type != typeof(PropertyPad)) {
try {
if (WorkbenchSingleton.Workbench.ActiveWorkbenchWindow == null || WorkbenchSingleton.Workbench.ActiveWorkbenchWindow.ViewContent == null) {
return;
}
WorkbenchSingleton.Workbench.ActiveWorkbenchWindow.ViewContent.Saving -= OnViewSaving;
WorkbenchSingleton.Workbench.ActiveWorkbenchWindow.ViewContent.Saving += OnViewSaving;
System.Console.WriteLine("\tget Explorerpad");
PadDescriptor pad =
WorkbenchSingleton.Workbench.GetPad(typeof(FieldsExplorer));
if (pad != null) {
System.Console.WriteLine("\tget View");
SharpReportView view =
WorkbenchSingleton.Workbench.ActiveWorkbenchWindow.ActiveViewContent
as SharpReportView;
if ((view != null) && (!view.Disposed)) {
this.reportModel = view.ReportManager.BaseDesignControl.ReportModel;
if (this.reportModel != null) {
this.FillExplorer();
System.Console.WriteLine("\tShow The Pad");
WorkbenchSingleton.Workbench.ShowPad(pad);
pad.BringPadToFront();
}
}
}
else {
WorkbenchSingleton.Workbench.WorkbenchLayout.HidePad(pad);
}
} catch (Exception) {
// throw;
}
}
}
}
private void OnViewSaving (object sender, EventArgs e) {
System.Console.WriteLine("FiedlsExplorer:OnViewSaving");
if (this.isFilled) {
UpdateSorting();
UpdateGrouping();
}
}
#endregion
#region Build TreeControl
private void UpdateSorting () {
this.reportModel.ReportSettings.SortColumnCollection.Clear();
if (this.nodeSorting.Nodes.Count > 0) {
SortColumn sc;
AbstractColumn af;
for (int i = 0;i < this.nodeSorting.Nodes.Count ;i++ ) {
ColumnsTreeNode cn = (ColumnsTreeNode)this.nodeSorting.Nodes[i];
af = this.reportModel.ReportSettings.AvailableFieldsCollection.Find(cn.Text);
if (af != null) {
sc = new SortColumn (cn.Text,
cn.SortDirection,
af.DataType);
} else {
sc = new SortColumn (cn.Text,
cn.SortDirection,
typeof(System.String));
}
this.reportModel.ReportSettings.SortColumnCollection.Add(sc);
}
}
}
private void UpdateGrouping () {
this.reportModel.ReportSettings.GroupColumnsCollection.Clear();
if (this.nodeGrouping.Nodes.Count > 0) {
GroupColumn gc;
for (int i = 0;i < this.nodeGrouping.Nodes.Count ;i++ ) {
ColumnsTreeNode cn = (ColumnsTreeNode)this.nodeGrouping.Nodes[i];
gc = new GroupColumn (cn.Text,i,cn.SortDirection);
this.reportModel.ReportSettings.GroupColumnsCollection.Add(gc);
}
}
}
void SetAvailableFields () {
try {
this.nodeAvailableFields.Nodes.Clear();
int avCount = this.reportModel.ReportSettings.AvailableFieldsCollection.Count;
for (int i = 0;i < avCount ;i++ ) {
AbstractColumn af = this.reportModel.ReportSettings.AvailableFieldsCollection[i];
ColumnsTreeNode n = new ColumnsTreeNode(af.ColumnName);
n.Tag = this.nodeAvailableFields;
//we don't like ContextMenu here
n.ContextmenuAddinTreePath = "";
switch (this.reportModel.ReportSettings.CommandType) {
case CommandType.Text:{
n.ImageIndex = columnIcon;
n.SelectedImageIndex = columnIcon;
break;
}
case CommandType.StoredProcedure: {
n.ImageIndex = storedprocIcon ;
n.SelectedImageIndex = storedprocIcon ;
break;
}
default:{
n.ImageIndex = columnIcon;
n.SelectedImageIndex = columnIcon;
break;
}
}
this.nodeAvailableFields.Nodes.Add(n);
}
} catch (Exception) {
throw;
}
}
void SetSortFields(){
ColumnsTreeNode node;
this.nodeSorting.Nodes.Clear();
foreach (SortColumn sc in this.reportModel.ReportSettings.SortColumnCollection) {
node = new ColumnsTreeNode(sc.ColumnName,sc.SortDirection);
if (node.SortDirection == ListSortDirection.Ascending) {
node.ImageIndex = 4;
node.SelectedImageIndex = 4;
} else {
node.ImageIndex = descendingIcon;
node.SelectedImageIndex = descendingIcon;
}
this.nodeSorting.Nodes.Add(node);
}
}
private void SetGroupFields(){
ColumnsTreeNode node;
this.nodeGrouping.Nodes.Clear();
foreach (GroupColumn gc in this.reportModel.ReportSettings.GroupColumnsCollection) {
node = new ColumnsTreeNode(gc.ColumnName);
if (node.SortDirection == ListSortDirection.Ascending) {
node.ImageIndex = ascendingIcon;
node.SelectedImageIndex = ascendingIcon;
} else {
node.ImageIndex = descendingIcon;
node.SelectedImageIndex = descendingIcon;
}
this.nodeGrouping.Nodes.Add(node);
}
}
void SetParamFields (){
ColumnsTreeNode node;
this.nodeParams.Nodes.Clear();
foreach (SqlParameter par in this.reportModel.ReportSettings.SqlParametersCollection) {
node = new ColumnsTreeNode(par.ParameterName);
node.Tag = par;
node.SelectedImageIndex = columnIcon;
node.ImageIndex = columnIcon;
this.nodeParams.Nodes.Add (node);
}
}
void SetFunctions(){
AbstractFieldsNode node;
this.nodeFunction.Nodes.Clear();
foreach (ReportSection section in this.reportModel.SectionCollection) {
foreach (BaseReportObject item in section.Items) {
BaseFunction func = item as BaseFunction;
if (func != null) {
node = new ColumnsTreeNode (ResourceService.GetString(func.LocalisedName));
node.SelectedImageIndex = functionIcon;
node.ImageIndex = functionIcon;
this.nodeFunction.Nodes.Add(node);
}
}
}
}
private void FillTree () {
System.Console.WriteLine("FillTree");
this.BeginUpdate();
SetAvailableFields();
SetGroupFields();
SetSortFields();
SetParamFields ();
SetFunctions();
this.EndUpdate();
}
void BuildNodes() {
System.Console.WriteLine("BuildNodes");
BeginUpdate();
this.Nodes.Clear();
TreeNode root = new TreeNode(ResourceService.GetString("SharpReport.FieldsExplorer.Title"));
nodeAvailableFields = new SectionTreeNode(ResourceService.GetString("SharpReport.FieldsExplorer.AvailableFields"));
nodeAvailableFields.ImageIndex = folderClosed;
nodeAvailableFields.SelectedImageIndex = folderOpen;
// we don't like a ContextMenu here
nodeAvailableFields.ContextmenuAddinTreePath = "";
root.Nodes.Add(this.nodeAvailableFields);
nodeSorting = new SectionTreeNode (ResourceService.GetString("SharpReport.FieldsExplorer.Sorting"));
nodeSorting.ImageIndex = folderClosed;
nodeSorting.SelectedImageIndex = folderOpen;
root.Nodes.Add(this.nodeSorting);
nodeGrouping = new SectionTreeNode (ResourceService.GetString("SharpReport.FieldsExplorer.Grouping"));
nodeGrouping.ImageIndex = folderClosed;
nodeGrouping.SelectedImageIndex = folderOpen;
root.Nodes.Add(this.nodeGrouping);
nodeFunction = new TreeNode(ResourceService.GetString("SharpReport.FieldsExplorer.Functions"));
nodeFunction.ImageIndex = folderClosed;
nodeFunction.SelectedImageIndex = folderOpen;
root.Nodes.Add(this.nodeFunction);
nodeParams = new TreeNode(ResourceService.GetString("SharpReport.FieldsExplorer.Parameters"));
nodeParams.ImageIndex = folderClosed;
nodeParams.SelectedImageIndex = folderOpen;
root.Nodes.Add(this.nodeParams);
Nodes.Add(root);
this.EndUpdate();
}
private const int folderClosed = 0;
private const int folderOpen = 1;
private const int clearIcon = 2;
private const int ascendingIcon = 4;
private const int descendingIcon = 5;
private const int storedprocIcon = 7;
private const int columnIcon = 8;
private const int functionIcon = 9;
void InitImageList() {
ImageList imageList = new ImageList();
imageList.ColorDepth = ColorDepth.Depth32Bit;
imageList.ImageSize = new System.Drawing.Size(16, 16);
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.ClosedFolderBitmap"));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.OpenFolderBitmap"));
imageList.Images.Add(new Bitmap(1, 1));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SelectionArrow"));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpReport.Ascending"));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpReport.Descending"));
//Table's or procedure
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpQuery.Table"));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpQuery.Procedure"));
//Parameters
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpQuery.Column"));
//Function
imageList.Images.Add(ResourceService.GetIcon("Icons.16x16.SharpReport.Function"));
ImageList = imageList;
}
#endregion
#region ICSharpCode.SharpDevelop.Gui.IPadContent interface implementation
public string Title {
get {
return ResourceService.GetString("SharpReport.FieldsExplorer.Title");
}
}
public string s_Icon {
get {
return "FileIcons.XmlIcon";
}
}
public string s_Category {
get {
return String.Empty;
}
set {
}
}
public void RedrawContent() {
}
public string[] Shortcut {
get {
return null;
}
set {
}
}
public System.Windows.Forms.Control Control {
get {
return this.contentPanel;
}
}
// ********* Own events
protected virtual void OnTitleChanged(EventArgs e)
{
if (TitleChanged != null) {
TitleChanged(this, e);
}
}
protected virtual void OnIconChanged(EventArgs e)
{
if (IconChanged != null) {
IconChanged(this, e);
}
}
public event EventHandler TitleChanged;
public event EventHandler IconChanged;
#endregion
public FieldsExplorer() {
// WorkbenchSingleton.Workbench.ActiveWorkbenchWindowChanged += OnUpdateExplorerWindow;
// WorkbenchSingleton.Workbench.ActiveWorkbenchWindow.ViewContent.DirtyChanged += old_OnUpdateExplorerWindow;
System.Console.WriteLine("");
System.Console.WriteLine("Init FieldsExplorer");
LabelEdit = true;
AllowDrop = true;
HideSelection = false;
Dock = DockStyle.Fill;
Scrollable = true;
LabelEdit = false;
this.MouseDown += TreeMouseDown;
this.ItemDrag += TreeViewItemDrag;
this.DragDrop += TreeViewDragDrop;
this.DragOver += TreeViewDragOver;
contentPanel.Controls.Add(this);
this.InitImageList();
BuildNodes();
}
}
}
Loading…
Cancel
Save