From 39eecd3d0a071d8ff152eb5f8e20e1cd6439ba7c Mon Sep 17 00:00:00 2001 From: peterforstmeier Date: Sun, 2 Jan 2011 20:05:13 +0100 Subject: [PATCH] Extract included classes to seperate Files --- .../ICSharpCode.Reports.Addin.csproj | 15 +++- .../Project/ReportItems/AbstractItem.cs | 47 +--------- .../Project/ReportItems/BaseCircleItem.cs | 2 +- .../Project/ReportItems/BaseDataItem.cs | 76 +--------------- .../Project/ReportItems/BaseImageItem.cs | 74 +--------------- .../Project/ReportItems/BaseLine.cs | 73 +--------------- .../Project/ReportItems/BaseRectangleItem.cs | 1 + .../Project/ReportItems/BaseRowItem.cs | 67 +------------- .../Project/ReportItems/BaseSection.cs | 64 +------------- .../Project/ReportItems/BaseTableItem.cs | 61 +------------ .../Project/ReportItems/BaseTextItem.cs | 69 +-------------- .../ReportItems/CircleItemTypeProvider.cs | 70 +++++++++++++++ .../Project/ReportItems/GroupHeader.cs | 67 +------------- .../TypeProviders/AbstractItemTypeProvider.cs | 64 ++++++++++++++ .../TypeProviders/DataItemTypeProvider.cs | 87 +++++++++++++++++++ .../TypeProviders/GroupedRowTypeProvider.cs | 83 ++++++++++++++++++ .../TypeProviders/ImageItemTypeProvider.cs | 86 ++++++++++++++++++ .../TypeProviders/LineItemTypeDescriptor.cs | 83 ++++++++++++++++++ .../RectangleItemTypeProvider.cs | 13 +-- .../TypeProviders/RowItemTypeProvider.cs | 80 +++++++++++++++++ .../TypeProviders/SectionItemTypeProvider.cs | 81 +++++++++++++++++ .../TypeProviders/TableItemTypeProvider.cs | 78 +++++++++++++++++ .../TypeProviders/TextItemTypeProvider.cs | 79 +++++++++++++++++ 23 files changed, 821 insertions(+), 599 deletions(-) create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/CircleItemTypeProvider.cs create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/AbstractItemTypeProvider.cs create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/DataItemTypeProvider.cs create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/GroupedRowTypeProvider.cs create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/ImageItemTypeProvider.cs create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/LineItemTypeDescriptor.cs rename src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/{ => TypeProviders}/RectangleItemTypeProvider.cs (89%) create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/RowItemTypeProvider.cs create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/SectionItemTypeProvider.cs create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/TableItemTypeProvider.cs create mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/TextItemTypeProvider.cs diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj index e0738c02b5..6c02c262f5 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj @@ -145,6 +145,7 @@ Component + Component @@ -171,7 +172,16 @@ Component - + + + + + + + + + + @@ -338,5 +348,8 @@ true + + + \ No newline at end of file diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/AbstractItem.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/AbstractItem.cs index 4ea1bc6edd..77adcf5271 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/AbstractItem.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/AbstractItem.cs @@ -6,6 +6,7 @@ using System.Collections.Generic; using System.ComponentModel; using System.Drawing; +using ICSharpCode.Reports.Addin.TypeProviders; using ICSharpCode.Reports.Core; namespace ICSharpCode.Reports.Addin @@ -85,52 +86,6 @@ namespace ICSharpCode.Reports.Addin } } - internal class AbstractItemTypeProvider : TypeDescriptionProvider { - public AbstractItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) - { - } - - public AbstractItemTypeProvider(TypeDescriptionProvider parent): base(parent) - { - } - - - public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) - { - ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType, instance); - return new AbstractItemTypeDescriptor(td, instance); - } - } - internal class AbstractItemTypeDescriptor : CustomTypeDescriptor - { -// private AbstractItem _instance; - - public AbstractItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) - : base(parent) - { -// _instance = instance as AbstractItem; - } - - - - public override PropertyDescriptorCollection GetProperties() - { - return GetProperties(null); - } - - - public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) - { - PropertyDescriptorCollection props = base.GetProperties(attributes); - List allProperties = new List(); - - foreach (PropertyDescriptor p in props) - { - allProperties.Add(p); - } - return new PropertyDescriptorCollection(allProperties.ToArray()); - } - } } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseCircleItem.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseCircleItem.cs index f19e8fc168..59e1195541 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseCircleItem.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseCircleItem.cs @@ -28,7 +28,7 @@ namespace ICSharpCode.Reports.Addin this.thickness = 1; this.dashStyle = DashStyle.Solid; this.Size = new Size(GlobalValues.PreferedSize.Width,2* GlobalValues.PreferedSize.Height); - TypeDescriptor.AddProvider(new RectangleItemTypeProvider(), typeof(BaseCircleItem)); + TypeDescriptor.AddProvider(new CircleItemTypeProvider(), typeof(BaseCircleItem)); } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseDataItem.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseDataItem.cs index 863ece1c8b..136a8714a5 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseDataItem.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseDataItem.cs @@ -2,12 +2,10 @@ // This code is distributed under the GNU LGPL (for details please see \doc\license.txt) using System; -using System.Collections.Generic; using System.ComponentModel; using System.Drawing; -using ICSharpCode.Reports.Addin.Designer; -using ICSharpCode.Reports.Core; +using ICSharpCode.Reports.Addin.TypeProviders; namespace ICSharpCode.Reports.Addin @@ -72,76 +70,4 @@ namespace ICSharpCode.Reports.Addin } } - - - internal class DataItemTypeProvider : TypeDescriptionProvider - { - - public DataItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) - { - } - - - public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) - { - ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); - return new DataItemTypeDescriptor(td, instance); - } - } - - - - internal class DataItemTypeDescriptor : CustomTypeDescriptor - { - - public DataItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) - : base(parent) - { - } - - - public override PropertyDescriptorCollection GetProperties() - { - return GetProperties(null); - } - - - public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) - { - PropertyDescriptorCollection props = base.GetProperties(attributes); - List allProperties = new List(); - - DesignerHelper.AddDefaultProperties(allProperties,props); - DesignerHelper.AddTextbasedProperties(allProperties,props); - - PropertyDescriptor prop = props.Find("Text",true); - allProperties.Add(prop); - - prop = props.Find("DrawBorder",true); - allProperties.Add(prop); - - prop = props.Find("FrameColor",true); - allProperties.Add(prop); - - prop = props.Find("ForeColor",true); - allProperties.Add(prop); - - prop = props.Find("Visible",true); - allProperties.Add(prop); - - prop = props.Find("ColumnName",true); - allProperties.Add(prop); - - prop = props.Find("BaseTableName",true); - allProperties.Add(prop); - - prop = props.Find("DbValue",true); - allProperties.Add(prop); - - prop = props.Find("NullValue",true); - allProperties.Add(prop); - - return new PropertyDescriptorCollection(allProperties.ToArray()); - } - } } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseImageItem.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseImageItem.cs index 4ce90a773c..aa71fc71b3 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseImageItem.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseImageItem.cs @@ -12,6 +12,7 @@ using System.Windows.Forms.Design; using System.Xml.Serialization; using ICSharpCode.Reports.Addin.Designer; +using ICSharpCode.Reports.Addin.TypeProviders; using ICSharpCode.Reports.Core; namespace ICSharpCode.Reports.Addin @@ -255,78 +256,5 @@ namespace ICSharpCode.Reports.Addin } - internal class ImageItemTypeProvider : TypeDescriptionProvider - { - public ImageItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) - { - } - -// public ImageItemTypeProvider(TypeDescriptionProvider parent): base(parent) -// { -// -// } - - - public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) - { - ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); - return new ImageItemTypeDescriptor(td, instance); - } - } - - internal class ImageItemTypeDescriptor : CustomTypeDescriptor - { - - public ImageItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) - : base(parent) - { -// instance = instance as BaseTextItem; - } - - - public override PropertyDescriptorCollection GetProperties() - { - return GetProperties(null); - } - - - public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) - { - PropertyDescriptorCollection props = base.GetProperties(attributes); - List allProperties = new List(); - - - DesignerHelper.AddDefaultProperties(allProperties,props); - - PropertyDescriptor prop = prop = props.Find("imageFileName",true); - allProperties.Add(prop); - - prop = props.Find("Image",true); - allProperties.Add(prop); - - prop = props.Find("ScaleImageToSize",true); - allProperties.Add(prop); - - prop = props.Find("ImageSource",true); - allProperties.Add(prop); - - prop = props.Find("ReportFileName",true); - allProperties.Add(prop); - - prop = props.Find("RelativeFileName",true); - allProperties.Add(prop); - - prop = props.Find("AbsoluteFileName",true); - allProperties.Add(prop); - - prop = props.Find("ColumnName",true); - allProperties.Add(prop); - - prop = props.Find("BaseTableName",true); - allProperties.Add(prop); - - return new PropertyDescriptorCollection(allProperties.ToArray()); - } - } } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseLine.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseLine.cs index b951f824fa..3b9becf9e1 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseLine.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseLine.cs @@ -8,6 +8,7 @@ using System.Drawing; using System.Drawing.Drawing2D; using ICSharpCode.Reports.Addin.Designer; +using ICSharpCode.Reports.Addin.TypeProviders; namespace ICSharpCode.Reports.Addin { @@ -156,75 +157,7 @@ namespace ICSharpCode.Reports.Addin } - internal class LineItemTypeProvider : TypeDescriptionProvider - { - public LineItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) - { - } - -// public LineItemTypeProvider(TypeDescriptionProvider parent): base(parent) -// { -// -// } - - - public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) - { - ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); - return new LineItemTypeDescriptor(td, instance); - } - } - internal class LineItemTypeDescriptor : CustomTypeDescriptor - { -// private BaseTextItem instance; - - public LineItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) - : base(parent) - { -// instance = instance as BaseTextItem; - } - - - public override PropertyDescriptorCollection GetProperties() - { - return GetProperties(null); - } - - - public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) - { - PropertyDescriptorCollection props = base.GetProperties(attributes); - List allProperties = new List(); - - DesignerHelper.AddDefaultProperties(allProperties,props); - - PropertyDescriptor prop = null; - prop = props.Find("ForeColor",true); - allProperties.Add(prop); - - prop = props.Find("FromPoint",true); - allProperties.Add(prop); - - prop = props.Find("ToPoint",true); - allProperties.Add(prop); - - prop = props.Find("StartLineCap",true); - allProperties.Add(prop); - - prop = props.Find("EndLineCap",true); - allProperties.Add(prop); - - prop = props.Find("dashLineCap",true); - allProperties.Add(prop); - - prop = props.Find("DashStyle",true); - allProperties.Add(prop); - - prop = props.Find("Thickness",true); - allProperties.Add(prop); - - return new PropertyDescriptorCollection(allProperties.ToArray()); - } - } + + } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseRectangleItem.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseRectangleItem.cs index facc77614f..ad05261673 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseRectangleItem.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseRectangleItem.cs @@ -6,6 +6,7 @@ using System.ComponentModel; using System.Drawing; using System.Drawing.Drawing2D; +using ICSharpCode.Reports.Addin.TypeProviders; using ICSharpCode.Reports.Core; namespace ICSharpCode.Reports.Addin diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseRowItem.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseRowItem.cs index ce5d40d9e5..aefc01790f 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseRowItem.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseRowItem.cs @@ -7,6 +7,7 @@ using System.ComponentModel; using System.Drawing; using ICSharpCode.Reports.Addin.Designer; +using ICSharpCode.Reports.Addin.TypeProviders; using ICSharpCode.Reports.Core; namespace ICSharpCode.Reports.Addin @@ -74,70 +75,4 @@ namespace ICSharpCode.Reports.Addin #endregion } - - internal class RowItemTypeProvider : TypeDescriptionProvider - { - public RowItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) - { - } - - - public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) - { - ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); - return new RowItemTypeDescriptor(td, instance); - } - } - - - internal class RowItemTypeDescriptor : CustomTypeDescriptor - { - public RowItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) - : base(parent) - { - } - - - public override PropertyDescriptorCollection GetProperties() - { - return GetProperties(null); - } - - - public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) - { - PropertyDescriptorCollection props = base.GetProperties(attributes); - List allProperties = new List(); - - DesignerHelper.AddDefaultProperties(allProperties,props); - - PropertyDescriptor prop = null; - - prop = props.Find("DrawBorder",true); - allProperties.Add(prop); - - prop = props.Find("ForeColor",true); - allProperties.Add(prop); - - prop = props.Find("Visible",true); - allProperties.Add(prop); - - prop = props.Find("FrameColor",true); - allProperties.Add(prop); - - prop = props.Find("Controls",true); - allProperties.Add(prop); - /* - prop = props.Find("Padding",true); - allProperties.Add(prop); - */ - prop = props.Find("AlternateBackColor",true); - allProperties.Add(prop); - - prop = props.Find("ChangeBackColorEveryNRow",true); - allProperties.Add(prop); - - return new PropertyDescriptorCollection(allProperties.ToArray()); - } - } } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseSection.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseSection.cs index 0b23c1708c..ba62dfb6f8 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseSection.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseSection.cs @@ -7,6 +7,7 @@ using System.ComponentModel; using System.Drawing; using ICSharpCode.Reports.Addin.Designer; +using ICSharpCode.Reports.Addin.TypeProviders; using ICSharpCode.Reports.Core; namespace ICSharpCode.Reports.Addin @@ -76,68 +77,5 @@ namespace ICSharpCode.Reports.Addin #endregion } - internal class SectionItemTypeProvider : TypeDescriptionProvider - { - public SectionItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) - { - } - -// public SectionItemTypeProvider(TypeDescriptionProvider parent): base(parent) -// { -// } - - - public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) - { - ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); - return new SectionItemDescriptor(td, instance); - } - } - - internal class SectionItemDescriptor : CustomTypeDescriptor - { -// private BaseTextItem instance; - - public SectionItemDescriptor(ICustomTypeDescriptor parent, object instance) - : base(parent) - { -// instance = instance as BaseTextItem; - } - - - public override PropertyDescriptorCollection GetProperties() - { - return GetProperties(null); - } - - - public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) - { - PropertyDescriptorCollection props = base.GetProperties(attributes); - List allProperties = new List(); - - DesignerHelper.AddDefaultProperties(allProperties,props); - PropertyDescriptor prop = null; - - prop = props.Find("SectionOffset",true); - allProperties.Add(prop); - - prop = props.Find("SectionMargin",true); - allProperties.Add(prop); - - prop = props.Find("DrawBorder",true); - allProperties.Add(prop); - - prop = props.Find("PageBreakAfter",true); - allProperties.Add(prop); - - prop = props.Find("Controls",true); - allProperties.Add(prop); - - prop = props.Find("FrameColor",true); - allProperties.Add(prop); - return new PropertyDescriptorCollection(allProperties.ToArray()); - } - } } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTableItem.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTableItem.cs index 3019a8f3f5..cec16f0ab7 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTableItem.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTableItem.cs @@ -8,6 +8,7 @@ using System.Drawing; using System.Windows.Forms; using ICSharpCode.Reports.Addin.Designer; +using ICSharpCode.Reports.Addin.TypeProviders; using ICSharpCode.Reports.Core; namespace ICSharpCode.Reports.Addin @@ -53,65 +54,5 @@ namespace ICSharpCode.Reports.Addin } - internal class TableItemTypeProvider : TypeDescriptionProvider - { - public TableItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) - { - } - -// public TableItemTypeProvider(TypeDescriptionProvider parent): base(parent) -// { -// -// } - - - public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) - { - ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); - return new TableItemTypeDescriptor(td, instance); - } - } - - internal class TableItemTypeDescriptor : CustomTypeDescriptor - { - public TableItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) - : base(parent) - { - } - - - public override PropertyDescriptorCollection GetProperties() - { - return GetProperties(null); - } - - - public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) - { - PropertyDescriptorCollection props = base.GetProperties(attributes); - List allProperties = new List(); - - DesignerHelper.AddDefaultProperties(allProperties,props); - - PropertyDescriptor prop = null; - - prop = props.Find("DrawBorder",true); - allProperties.Add(prop); - - prop = props.Find("ForeColor",true); - allProperties.Add(prop); - - prop = props.Find("Visible",true); - allProperties.Add(prop); - - prop = props.Find("FrameColor",true); - allProperties.Add(prop); - - prop = props.Find("Controls",true); - allProperties.Add(prop); - - return new PropertyDescriptorCollection(allProperties.ToArray()); - } - } } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTextItem.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTextItem.cs index afa02f691d..4e1453d327 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTextItem.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTextItem.cs @@ -7,9 +7,10 @@ using System.ComponentModel; using System.Drawing; using ICSharpCode.Reports.Addin.Designer; +using ICSharpCode.Reports.Addin.Dialogs; +using ICSharpCode.Reports.Addin.TypeProviders; using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core.BaseClasses.Printing; -using ICSharpCode.Reports.Addin.Dialogs; namespace ICSharpCode.Reports.Addin { @@ -161,70 +162,4 @@ namespace ICSharpCode.Reports.Addin #endregion } - #region TypeProvider - - internal class TextItemTypeProvider : TypeDescriptionProvider - { - public TextItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) - { - } - - - public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) - { - ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); - return new TextItemTypeDescriptor(td, instance); - } - } - - - internal class TextItemTypeDescriptor : CustomTypeDescriptor - { -// private BaseTextItem instance; - - public TextItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) - : base(parent) - { -// instance = instance as BaseTextItem; - } - - - public override PropertyDescriptorCollection GetProperties() - { - return GetProperties(null); - } - - - public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) - { - PropertyDescriptorCollection props = base.GetProperties(attributes); - List allProperties = new List(); - - DesignerHelper.AddDefaultProperties(allProperties,props); - - DesignerHelper.AddTextbasedProperties(allProperties,props); - - PropertyDescriptor prop = prop = props.Find("Text",true); - allProperties.Add(prop); - - prop = props.Find("DrawBorder",true); - allProperties.Add(prop); - - prop = props.Find("FrameColor",true); - allProperties.Add(prop); - - prop = props.Find("ForeColor",true); - allProperties.Add(prop); - - prop = props.Find("Visible",true); - allProperties.Add(prop); - - prop = props.Find("Expression",true); - allProperties.Add(prop); - - return new PropertyDescriptorCollection(allProperties.ToArray()); - } - } - #endregion - } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/CircleItemTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/CircleItemTypeProvider.cs new file mode 100644 index 0000000000..58678fee59 --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/CircleItemTypeProvider.cs @@ -0,0 +1,70 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:24 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.ComponentModel; +using ICSharpCode.Reports.Addin.Designer; + + +namespace ICSharpCode.Reports.Addin +{ + + internal class CircleItemTypeProvider : TypeDescriptionProvider + { + public CircleItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); + return new CircleItemTypeDescriptor(td, instance); + } + } + + + + internal class CircleItemTypeDescriptor : CustomTypeDescriptor + { + + public CircleItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { + } + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + System.Collections.Generic.List allProperties = new System.Collections.Generic.List(); + + DesignerHelper.AddDefaultProperties(allProperties,props); + + PropertyDescriptor prop = null; + prop = props.Find("ForeColor",true); + allProperties.Add(prop); + + prop = props.Find("DashStyle",true); + allProperties.Add(prop); + + prop = props.Find("Thickness",true); + allProperties.Add(prop); + + + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +} + diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/GroupHeader.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/GroupHeader.cs index 712a7adcc2..742326e34d 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/GroupHeader.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/GroupHeader.cs @@ -7,6 +7,7 @@ using System.ComponentModel; using System.Drawing; using ICSharpCode.Reports.Addin.Designer; +using ICSharpCode.Reports.Addin.TypeProviders; using ICSharpCode.Reports.Core; namespace ICSharpCode.Reports.Addin @@ -27,71 +28,5 @@ namespace ICSharpCode.Reports.Addin public bool PageBreakOnGroupChange {get;set;} } - - internal class GroupedRowTypeProvider : TypeDescriptionProvider - { - public GroupedRowTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) - { - } - - - public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) - { - ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); - return new GroupedRowItemTypeDescriptor(td, instance); - } - } - - - internal class GroupedRowItemTypeDescriptor : CustomTypeDescriptor - { - public GroupedRowItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) - : base(parent) - { - } - - - public override PropertyDescriptorCollection GetProperties() - { - return GetProperties(null); - } - - public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) - { - PropertyDescriptorCollection props = base.GetProperties(attributes); - List allProperties = new List(); - - DesignerHelper.AddDefaultProperties(allProperties,props); - - PropertyDescriptor prop = null; - - prop = props.Find("DrawBorder",true); - allProperties.Add(prop); - - prop = props.Find("ForeColor",true); - allProperties.Add(prop); - - prop = props.Find("Visible",true); - allProperties.Add(prop); - - prop = props.Find("FrameColor",true); - allProperties.Add(prop); - - prop = props.Find("Controls",true); - allProperties.Add(prop); - - prop = props.Find("AlternateBackColor",true); - allProperties.Add(prop); - - prop = props.Find("ChangeBackColorEveryNRow",true); - allProperties.Add(prop); - - prop = props.Find("PageBreakOnGroupChange",true); - allProperties.Add(prop); - - - return new PropertyDescriptorCollection(allProperties.ToArray()); - } - } } diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/AbstractItemTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/AbstractItemTypeProvider.cs new file mode 100644 index 0000000000..9c8c4b6ee4 --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/AbstractItemTypeProvider.cs @@ -0,0 +1,64 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:47 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using ICSharpCode.Reports.Addin.Designer; + + +namespace ICSharpCode.Reports.Addin.TypeProviders +{ + internal class AbstractItemTypeProvider : TypeDescriptionProvider { + public AbstractItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + + public AbstractItemTypeProvider(TypeDescriptionProvider parent): base(parent) + { + } + + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType, instance); + return new AbstractItemTypeDescriptor(td, instance); + } + } + + internal class AbstractItemTypeDescriptor : CustomTypeDescriptor + { +// private AbstractItem _instance; + + public AbstractItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { +// _instance = instance as AbstractItem; + } + + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + List allProperties = new List(); + + foreach (PropertyDescriptor p in props) + { + allProperties.Add(p); + } + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +} diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/DataItemTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/DataItemTypeProvider.cs new file mode 100644 index 0000000000..e9f760b363 --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/DataItemTypeProvider.cs @@ -0,0 +1,87 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:36 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.Collections.Generic; +using System.ComponentModel; + +using ICSharpCode.Reports.Addin.Designer; + +namespace ICSharpCode.Reports.Addin.TypeProviders +{ + internal class DataItemTypeProvider : TypeDescriptionProvider + { + + public DataItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); + return new DataItemTypeDescriptor(td, instance); + } + } + + + + internal class DataItemTypeDescriptor : CustomTypeDescriptor + { + + public DataItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { + } + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + List allProperties = new List(); + + DesignerHelper.AddDefaultProperties(allProperties,props); + DesignerHelper.AddTextbasedProperties(allProperties,props); + + PropertyDescriptor prop = props.Find("Text",true); + allProperties.Add(prop); + + prop = props.Find("DrawBorder",true); + allProperties.Add(prop); + + prop = props.Find("FrameColor",true); + allProperties.Add(prop); + + prop = props.Find("ForeColor",true); + allProperties.Add(prop); + + prop = props.Find("Visible",true); + allProperties.Add(prop); + + prop = props.Find("ColumnName",true); + allProperties.Add(prop); + + prop = props.Find("BaseTableName",true); + allProperties.Add(prop); + + prop = props.Find("DbValue",true); + allProperties.Add(prop); + + prop = props.Find("NullValue",true); + allProperties.Add(prop); + + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +} diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/GroupedRowTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/GroupedRowTypeProvider.cs new file mode 100644 index 0000000000..52f60ec463 --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/GroupedRowTypeProvider.cs @@ -0,0 +1,83 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:58 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using ICSharpCode.Reports.Addin.Designer; + + +namespace ICSharpCode.Reports.Addin.TypeProviders +{ + internal class GroupedRowTypeProvider : TypeDescriptionProvider + { + public GroupedRowTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); + return new GroupedRowItemTypeDescriptor(td, instance); + } + } + + + internal class GroupedRowItemTypeDescriptor : CustomTypeDescriptor + { + public GroupedRowItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { + } + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + List allProperties = new List(); + + DesignerHelper.AddDefaultProperties(allProperties,props); + + PropertyDescriptor prop = null; + + prop = props.Find("DrawBorder",true); + allProperties.Add(prop); + + prop = props.Find("ForeColor",true); + allProperties.Add(prop); + + prop = props.Find("Visible",true); + allProperties.Add(prop); + + prop = props.Find("FrameColor",true); + allProperties.Add(prop); + + prop = props.Find("Controls",true); + allProperties.Add(prop); + + prop = props.Find("AlternateBackColor",true); + allProperties.Add(prop); + + prop = props.Find("ChangeBackColorEveryNRow",true); + allProperties.Add(prop); + + prop = props.Find("PageBreakOnGroupChange",true); + allProperties.Add(prop); + + + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +} diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/ImageItemTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/ImageItemTypeProvider.cs new file mode 100644 index 0000000000..8a658aec7e --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/ImageItemTypeProvider.cs @@ -0,0 +1,86 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:41 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.Collections.Generic; +using System.ComponentModel; + +using ICSharpCode.Reports.Addin.Designer; + +namespace ICSharpCode.Reports.Addin.TypeProviders +{ + internal class ImageItemTypeProvider : TypeDescriptionProvider + { + public ImageItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); + return new ImageItemTypeDescriptor(td, instance); + } + } + + + internal class ImageItemTypeDescriptor : CustomTypeDescriptor + { + + public ImageItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { +// instance = instance as BaseTextItem; + } + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + List allProperties = new List(); + + + DesignerHelper.AddDefaultProperties(allProperties,props); + + PropertyDescriptor prop = prop = props.Find("imageFileName",true); + allProperties.Add(prop); + + prop = props.Find("Image",true); + allProperties.Add(prop); + + prop = props.Find("ScaleImageToSize",true); + allProperties.Add(prop); + + prop = props.Find("ImageSource",true); + allProperties.Add(prop); + + prop = props.Find("ReportFileName",true); + allProperties.Add(prop); + + prop = props.Find("RelativeFileName",true); + allProperties.Add(prop); + + prop = props.Find("AbsoluteFileName",true); + allProperties.Add(prop); + + prop = props.Find("ColumnName",true); + allProperties.Add(prop); + + prop = props.Find("BaseTableName",true); + allProperties.Add(prop); + + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +} diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/LineItemTypeDescriptor.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/LineItemTypeDescriptor.cs new file mode 100644 index 0000000000..824c76ab26 --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/LineItemTypeDescriptor.cs @@ -0,0 +1,83 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:44 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using ICSharpCode.Reports.Addin.Designer; + +namespace ICSharpCode.Reports.Addin.TypeProviders +{ + internal class LineItemTypeProvider : TypeDescriptionProvider + { + public LineItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); + return new LineItemTypeDescriptor(td, instance); + } + } + + + + internal class LineItemTypeDescriptor : CustomTypeDescriptor + { + + + public LineItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { + + } + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + List allProperties = new List(); + + DesignerHelper.AddDefaultProperties(allProperties,props); + + PropertyDescriptor prop = null; + prop = props.Find("ForeColor",true); + allProperties.Add(prop); + + prop = props.Find("FromPoint",true); + allProperties.Add(prop); + + prop = props.Find("ToPoint",true); + allProperties.Add(prop); + + prop = props.Find("StartLineCap",true); + allProperties.Add(prop); + + prop = props.Find("EndLineCap",true); + allProperties.Add(prop); + + prop = props.Find("dashLineCap",true); + allProperties.Add(prop); + + prop = props.Find("DashStyle",true); + allProperties.Add(prop); + + prop = props.Find("Thickness",true); + allProperties.Add(prop); + + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +} diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/RectangleItemTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/RectangleItemTypeProvider.cs similarity index 89% rename from src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/RectangleItemTypeProvider.cs rename to src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/RectangleItemTypeProvider.cs index dddf2b7584..63fdaa4931 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/RectangleItemTypeProvider.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/RectangleItemTypeProvider.cs @@ -5,7 +5,7 @@ using System; using System.ComponentModel; using ICSharpCode.Reports.Addin.Designer; -namespace ICSharpCode.Reports.Addin +namespace ICSharpCode.Reports.Addin.TypeProviders { /// /// Description of RectangleItemTypeProvider. @@ -15,13 +15,7 @@ namespace ICSharpCode.Reports.Addin public RectangleItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) { } - -// public RectangleItemTypeProvider(TypeDescriptionProvider parent): base(parent) -// { -// -// } - - + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) { ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); @@ -57,9 +51,6 @@ namespace ICSharpCode.Reports.Addin prop = props.Find("ForeColor",true); allProperties.Add(prop); -// prop = props.Find("DrawBorder",true); -// allProperties.Add(prop); -// prop = props.Find("DashStyle",true); allProperties.Add(prop); diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/RowItemTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/RowItemTypeProvider.cs new file mode 100644 index 0000000000..1abc8713b2 --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/RowItemTypeProvider.cs @@ -0,0 +1,80 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:51 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.Collections.Generic; +using System.ComponentModel; + +using ICSharpCode.Reports.Addin.Designer; + +namespace ICSharpCode.Reports.Addin.TypeProviders +{ + + internal class RowItemTypeProvider : TypeDescriptionProvider + { + public RowItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); + return new RowItemTypeDescriptor(td, instance); + } + } + + + internal class RowItemTypeDescriptor : CustomTypeDescriptor + { + public RowItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { + } + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + List allProperties = new List(); + + DesignerHelper.AddDefaultProperties(allProperties,props); + + PropertyDescriptor prop = null; + + prop = props.Find("DrawBorder",true); + allProperties.Add(prop); + + prop = props.Find("ForeColor",true); + allProperties.Add(prop); + + prop = props.Find("Visible",true); + allProperties.Add(prop); + + prop = props.Find("FrameColor",true); + allProperties.Add(prop); + + prop = props.Find("Controls",true); + allProperties.Add(prop); + + prop = props.Find("AlternateBackColor",true); + allProperties.Add(prop); + + prop = props.Find("ChangeBackColorEveryNRow",true); + allProperties.Add(prop); + + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +} diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/SectionItemTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/SectionItemTypeProvider.cs new file mode 100644 index 0000000000..081d74e134 --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/SectionItemTypeProvider.cs @@ -0,0 +1,81 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:53 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using ICSharpCode.Reports.Addin.Designer; + + +namespace ICSharpCode.Reports.Addin.TypeProviders +{ + internal class SectionItemTypeProvider : TypeDescriptionProvider + { + public SectionItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + +// public SectionItemTypeProvider(TypeDescriptionProvider parent): base(parent) +// { +// } + + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); + return new SectionItemDescriptor(td, instance); + } + } + + + internal class SectionItemDescriptor : CustomTypeDescriptor + { +// private BaseTextItem instance; + + public SectionItemDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { +// instance = instance as BaseTextItem; + } + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + List allProperties = new List(); + + DesignerHelper.AddDefaultProperties(allProperties,props); + PropertyDescriptor prop = null; + + prop = props.Find("SectionOffset",true); + allProperties.Add(prop); + + prop = props.Find("SectionMargin",true); + allProperties.Add(prop); + + prop = props.Find("DrawBorder",true); + allProperties.Add(prop); + + prop = props.Find("PageBreakAfter",true); + allProperties.Add(prop); + + prop = props.Find("Controls",true); + allProperties.Add(prop); + + prop = props.Find("FrameColor",true); + allProperties.Add(prop); + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +} diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/TableItemTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/TableItemTypeProvider.cs new file mode 100644 index 0000000000..602e87dd83 --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/TableItemTypeProvider.cs @@ -0,0 +1,78 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:55 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using ICSharpCode.Reports.Addin.Designer; + + +namespace ICSharpCode.Reports.Addin.TypeProviders +{ + internal class TableItemTypeProvider : TypeDescriptionProvider + { + public TableItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + +// public TableItemTypeProvider(TypeDescriptionProvider parent): base(parent) +// { +// +// } + + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); + return new TableItemTypeDescriptor(td, instance); + } + } + + + internal class TableItemTypeDescriptor : CustomTypeDescriptor + { + public TableItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { + } + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + List allProperties = new List(); + + DesignerHelper.AddDefaultProperties(allProperties,props); + + PropertyDescriptor prop = null; + + prop = props.Find("DrawBorder",true); + allProperties.Add(prop); + + prop = props.Find("ForeColor",true); + allProperties.Add(prop); + + prop = props.Find("Visible",true); + allProperties.Add(prop); + + prop = props.Find("FrameColor",true); + allProperties.Add(prop); + + prop = props.Find("Controls",true); + allProperties.Add(prop); + + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +} diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/TextItemTypeProvider.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/TextItemTypeProvider.cs new file mode 100644 index 0000000000..f75c462075 --- /dev/null +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/TypeProviders/TextItemTypeProvider.cs @@ -0,0 +1,79 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 02.01.2011 + * Time: 19:56 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using ICSharpCode.Reports.Addin.Designer; + + +namespace ICSharpCode.Reports.Addin.TypeProviders +{ + internal class TextItemTypeProvider : TypeDescriptionProvider + { + public TextItemTypeProvider() : base(TypeDescriptor.GetProvider(typeof(AbstractItem))) + { + } + + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object instance) + { + ICustomTypeDescriptor td = base.GetTypeDescriptor(objectType,instance); + return new TextItemTypeDescriptor(td, instance); + } + } + + + internal class TextItemTypeDescriptor : CustomTypeDescriptor + { +// private BaseTextItem instance; + + public TextItemTypeDescriptor(ICustomTypeDescriptor parent, object instance) + : base(parent) + { +// instance = instance as BaseTextItem; + } + + + public override PropertyDescriptorCollection GetProperties() + { + return GetProperties(null); + } + + + public override PropertyDescriptorCollection GetProperties(Attribute[] attributes) + { + PropertyDescriptorCollection props = base.GetProperties(attributes); + List allProperties = new List(); + + DesignerHelper.AddDefaultProperties(allProperties,props); + + DesignerHelper.AddTextbasedProperties(allProperties,props); + + PropertyDescriptor prop = prop = props.Find("Text",true); + allProperties.Add(prop); + + prop = props.Find("DrawBorder",true); + allProperties.Add(prop); + + prop = props.Find("FrameColor",true); + allProperties.Add(prop); + + prop = props.Find("ForeColor",true); + allProperties.Add(prop); + + prop = props.Find("Visible",true); + allProperties.Add(prop); + + prop = props.Find("Expression",true); + allProperties.Add(prop); + + return new PropertyDescriptorCollection(allProperties.ToArray()); + } + } +}