public void GetCreateInstanceSupported()
        {
            MarginsConverter mc = new MarginsConverter();

            Assert.True(mc.GetCreateInstanceSupported(null));
            Assert.True(mc.GetCreateInstanceSupported(new MyTypeDescriptorContext()));
        }
        public void CreateInstance()
        {
            MarginsConverter        mc      = new MarginsConverter();
            MyTypeDescriptorContext context = new MyTypeDescriptorContext();

            IDictionary values = new Dictionary <string, int>();

            values.Add("Left", 1);
            values.Add("Right", 2);
            values.Add("Top", 3);
            Assert.Throws <ArgumentException>(() => mc.CreateInstance(context, values));
            values.Add("Bottom", 4);

            object result = mc.CreateInstance(context, values);

            Assert.NotNull(result);

            Assert.IsType <Margins>(result);
            Margins margins = result as Margins;

            Assert.Equal(1, margins.Left);
            Assert.Equal(2, margins.Right);
            Assert.Equal(3, margins.Top);
            Assert.Equal(4, margins.Bottom);
        }
        public void ConvertTo()
        {
            MarginsConverter mc      = new MarginsConverter();
            Guid             guid    = Guid.NewGuid();
            CultureInfo      culture = CultureInfo.InvariantCulture;
            Margins          margins = new Margins()
            {
                Left = 1, Right = 2, Top = 3, Bottom = 4
            };

            // try once with then once without context
            for (var context = new MyTypeDescriptorContext(); context != null; context = null)
            {
                Assert.Equal("1;2;3;4", mc.ConvertTo(context, culture, "1;2;3;4", typeof(string)));

                object converted = mc.ConvertTo(context, culture, margins, typeof(string));
                Assert.IsType <string>(converted);
                Assert.Equal(',', culture.TextInfo.ListSeparator[0]);
                Assert.Equal("1, 2, 3, 4", converted);

                converted = mc.ConvertTo(context, culture, margins, typeof(InstanceDescriptor));
                Assert.IsType <InstanceDescriptor>(converted);
                Assert.Equal(new object[] { 1, 2, 3, 4 }, ((InstanceDescriptor)converted).Arguments);

                Assert.Throws <NotSupportedException>(() => mc.ConvertTo(context, culture, new object(), typeof(object)));
                Assert.Throws <NotSupportedException>(() => mc.ConvertTo(context, culture, 12, typeof(int)));
                Assert.Throws <NotSupportedException>(() => mc.ConvertTo(context, culture, guid, typeof(Guid)));
            }
        }
Example #4
0
        /// <summary>
        /// Extends ConvertTo so that methods that return a specific type object given a Type parameter can be
        /// used as generic method and casting is not required.
        /// <example>
        /// marginsconverter.ConvertTo<int>(context, culture, value);
        /// </example>
        /// </summary>
        public static T ConvertTo <T>(this MarginsConverter marginsconverter, System.ComponentModel.ITypeDescriptorContext context, System.Globalization.CultureInfo culture, Object value)
        {
            if (marginsconverter == null)
            {
                throw new ArgumentNullException("marginsconverter");
            }

            return((T)marginsconverter.ConvertTo(context, culture, value, typeof(T)));
        }
Example #5
0
        /// <summary>
        /// Extends ConvertTo so that methods that return a specific type object given a Type parameter can be
        /// used as generic method and casting is not required.
        /// <example>
        /// typeconverter.ConvertTo<int>(value);
        /// </example>
        /// </summary>
        public static T ConvertTo <T>(this MarginsConverter typeconverter, Object value)
        {
            if (typeconverter == null)
            {
                throw new ArgumentNullException("typeconverter");
            }

            return((T)typeconverter.ConvertTo(value, typeof(T)));
        }
        public void CanConvertTo()
        {
            MarginsConverter mc = new MarginsConverter();

            // try once with then once without context
            for (var context = new MyTypeDescriptorContext(); context != null; context = null)
            {
                Assert.True(mc.CanConvertTo(context, typeof(string)));
                Assert.False(mc.CanConvertTo(context, typeof(Guid)));
                Assert.False(mc.CanConvertTo(context, typeof(object)));
                Assert.False(mc.CanConvertTo(context, typeof(int)));
            }
        }
        public void ConvertFrom_Throws()
        {
            MarginsConverter mc      = new MarginsConverter();
            CultureInfo      culture = CultureInfo.InvariantCulture;

            // try once with then once without context
            for (var context = new MyTypeDescriptorContext(); context != null; context = null)
            {
                Assert.Throws <NotSupportedException>(() => mc.ConvertFrom(context, null, null));
                Assert.Throws <NotSupportedException>(() => mc.ConvertFrom(context, culture, null));
                Assert.Throws <NotSupportedException>(() => mc.ConvertFrom(context, culture, Guid.NewGuid()));
                AssertExtensions.Throws <ArgumentException, Exception>(() => mc.ConvertFrom(context, null, "wrong string format"));
                AssertExtensions.Throws <ArgumentException, Exception>(() => mc.ConvertFrom(context, culture, "wrong string format"));
            }
        }
        public void ConvertFrom()
        {
            MarginsConverter mc      = new MarginsConverter();
            CultureInfo      culture = CultureInfo.InvariantCulture;

            // try once with then once without context
            for (var context = new MyTypeDescriptorContext(); context != null; context = null)
            {
                object result;
                Assert.Equal(',', culture.TextInfo.ListSeparator[0]);
                AssertExtensions.Throws <ArgumentException, Exception>(() => mc.ConvertFrom(context, culture, "1;2;3;4"));
                result = mc.ConvertFrom(context, culture, "1,2,3,4");
                Assert.IsType <Margins>(result);
                Margins margins = result as Margins;
                Assert.Equal(1, margins.Left);
                Assert.Equal(2, margins.Right);
                Assert.Equal(3, margins.Top);
                Assert.Equal(4, margins.Bottom);
            }
        }
Example #9
0
        public BcPrintDocument(AxBarCodeWiz bc, BcProject project)
        {
            this.bc             = bc;
            DefaultPageSettings = project.pageSettings;
            table = project.table;
            data  = project.data;
            project.state.ApplyState(bc);
            xDist          = project.layout.xDist;
            yDist          = project.layout.yDist;
            title          = project.layout.title;
            titleFont      = project.layout.titleFont;
            printTitleOnce = project.layout.printTitleOnce;
            bs             = new BindingSource();
            bs.DataSource  = table;
            bs.Sort        = data.sort;
            MarginsConverter mc = new MarginsConverter();

            xDist = (float)PrinterUnitConvert.Convert(xDist * 10,
                                                      PrinterUnit.TenthsOfAMillimeter,
                                                      PrinterUnit.Display);
            yDist = (float)PrinterUnitConvert.Convert(yDist * 10,
                                                      PrinterUnit.TenthsOfAMillimeter,
                                                      PrinterUnit.Display);
        }