Browse Source

ColumnNodes in ReportExplorer can be DragDropped

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@1718 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Peter Forstmeier 20 years ago
parent
commit
51f2580870
  1. 44
      src/AddIns/Misc/SharpReport/SharpReportAddin/FieldsExplorer/ExplorerTree.cs
  2. 9
      src/AddIns/Misc/SharpReport/SharpReportAddin/FieldsExplorer/ReportExplorer.cs

44
src/AddIns/Misc/SharpReport/SharpReportAddin/FieldsExplorer/ExplorerTree.cs

@ -11,6 +11,7 @@ using System;
using System.ComponentModel; using System.ComponentModel;
using System.Data; using System.Data;
using System.Drawing; using System.Drawing;
using System.Text;
using System.Windows.Forms; using System.Windows.Forms;
using ICSharpCode.Core; using ICSharpCode.Core;
@ -235,30 +236,19 @@ namespace SharpReportAddin{
private void SetAvailableFields (ReportModel model) { private void SetAvailableFields (ReportModel model) {
this.nodeAvailableFields.Nodes.Clear(); this.nodeAvailableFields.Nodes.Clear();
foreach (AbstractColumn af in model.ReportSettings.AvailableFieldsCollection){ foreach (AbstractColumn af in model.ReportSettings.AvailableFieldsCollection){
ColumnsTreeNode node = new ColumnsTreeNode(af.ColumnName); ColumnsTreeNode node = new ColumnsTreeNode(af.ColumnName);
node.Tag = this.nodeAvailableFields; node.Tag = this.nodeAvailableFields;
//we don't like ContextMenu here //we don't like ContextMenu here
node.ContextmenuAddinTreePath = ""; node.ContextmenuAddinTreePath = "";
switch (model.ReportSettings.CommandType) { // and a node is a node, otherwise we cant't dragdrop
case CommandType.Text:{ node.ImageIndex = columnIcon;
node.ImageIndex = columnIcon; node.SelectedImageIndex = columnIcon;
node.SelectedImageIndex = columnIcon;
break;
}
case CommandType.StoredProcedure: {
node.ImageIndex = storedprocIcon ;
node.SelectedImageIndex = storedprocIcon ;
break;
}
default:{
node.ImageIndex = columnIcon;
node.SelectedImageIndex = columnIcon;
break;
}
}
this.nodeAvailableFields.Nodes.Add(node); this.nodeAvailableFields.Nodes.Add(node);
} }
@ -305,13 +295,17 @@ namespace SharpReportAddin{
this.nodeParams.Nodes.Clear(); this.nodeParams.Nodes.Clear();
foreach (SqlParameter par in collection) { foreach (SqlParameter par in collection) {
node = new ColumnsTreeNode(par.ParameterName); StringBuilder sb = new StringBuilder(par.ParameterName);
node.Tag = par; sb.Append(" {");
// No ContextMenu for Parameters sb.Append(par.DataType);
node.ContextmenuAddinTreePath = String.Empty; sb.Append("}");
node.SelectedImageIndex = columnIcon; node = new ColumnsTreeNode(sb.ToString());
node.ImageIndex = columnIcon; node.Tag = par;
this.nodeParams.Nodes.Add (node); // No ContextMenu for Parameters
node.ContextmenuAddinTreePath = String.Empty;
node.SelectedImageIndex = columnIcon;
node.ImageIndex = columnIcon;
this.nodeParams.Nodes.Add (node);
} }
} }

9
src/AddIns/Misc/SharpReport/SharpReportAddin/FieldsExplorer/ReportExplorer.cs

@ -31,7 +31,6 @@ namespace SharpReportAddin
/// </summary> /// </summary>
public ReportExplorer():base(){ public ReportExplorer():base(){
System.Console.WriteLine("InitExplorer");
this.contentPanel.Controls.Add(this.treeView); this.contentPanel.Controls.Add(this.treeView);
this.treeView.ItemDrag += TreeViewItemDrag; this.treeView.ItemDrag += TreeViewItemDrag;
this.treeView.DragDrop += TreeViewDragDrop; this.treeView.DragDrop += TreeViewDragDrop;
@ -41,15 +40,13 @@ namespace SharpReportAddin
#region DragDrop #region DragDrop
void TreeViewItemDrag (object sender,ItemDragEventArgs e) { void TreeViewItemDrag (object sender,ItemDragEventArgs e) {
ColumnsTreeNode node = (ColumnsTreeNode)e.Item;
if (e.Item is ColumnsTreeNode) { if (node != null) {
ColumnsTreeNode node = (ColumnsTreeNode)e.Item;
// for now, only dragging of Columns is allowed
if (node.ImageIndex == this.treeView.ColumnIcon) { if (node.ImageIndex == this.treeView.ColumnIcon) {
this.treeView.SelectedNode = node; this.treeView.SelectedNode = node;
if (node != null) { if (node != null) {
this.treeView.DoDragDrop(node.DragDropDataObject, this.treeView.DoDragDrop(node.DragDropDataObject,
DragDropEffects.Copy | DragDropEffects.Scroll); DragDropEffects.Copy | DragDropEffects.Scroll);
} }
} }
} }

Loading…
Cancel
Save