Exemplo n.º 1
0
 /// <include file='doc\RepeatInfo.uex' path='docs/doc[@for="RepeatInfo.RepeatInfo"]/*' />
 /// <devdoc>
 /// <para>Initializes a new instance of the <see cref='System.Web.UI.WebControls.RepeatInfo'/> class. This class is not
 ///    inheritable.</para>
 /// </devdoc>
 public RepeatInfo()
 {
     repeatDirection   = RepeatDirection.Vertical;
     repeatLayout      = RepeatLayout.Table;
     repeatColumns     = 0;
     outerTableImplied = false;
 }
 public static void ValidateRepeatLayout(RepeatLayout value)
 {
     if ((value < RepeatLayout.Table) || (value > RepeatLayout.OrderedList))
     {
         throw new ArgumentOutOfRangeException("value");
     }
 }
Exemplo n.º 3
0
		public RepeatInfo()
		{
			outerTableImp   = false;
			repeatColumns   = 0;
			repeatDirection = RepeatDirection.Vertical;
			repeatLayout    = RepeatLayout.Table;
		}
Exemplo n.º 4
0
        string DoTest(int cols, int cnt, RepeatDirection d, RepeatLayout l, bool OuterTableImplied, bool ftr, bool hdr, bool sep)
        {
            HtmlTextWriter htw = GetWriter();
            RepeatInfo     ri  = new RepeatInfo();

            ri.RepeatColumns     = cols;
            ri.RepeatDirection   = d;
            ri.RepeatLayout      = l;
            ri.OuterTableImplied = OuterTableImplied;

            ri.RenderRepeater(htw, new RepeatInfoUser(ftr, hdr, sep, cnt), new TableStyle(), new DataList());
            return(htw.InnerWriter.ToString());
        }
Exemplo n.º 5
0
        // What is baseControl for ?
        public void RenderRepeater(HtmlTextWriter w, IRepeatInfoUser user, Style controlStyle, WebControl baseControl)
        {
            PrintValues(user);
#if NET_4_0
            RepeatLayout layout     = RepeatLayout;
            bool         listLayout = layout == RepeatLayout.OrderedList || layout == RepeatLayout.UnorderedList;

            if (listLayout)
            {
                if (user != null)
                {
                    if ((user.HasHeader || user.HasFooter || user.HasSeparators))
                    {
                        throw new InvalidOperationException("The UnorderedList and OrderedList layouts do not support headers, footers or separators.");
                    }
                }

                if (OuterTableImplied)
                {
                    throw new InvalidOperationException("The UnorderedList and OrderedList layouts do not support implied outer tables.");
                }

                int cols = RepeatColumns;
                if (cols > 1)
                {
                    throw new InvalidOperationException("The UnorderedList and OrderedList layouts do not support multi-column layouts.");
                }
            }
#endif
            if (RepeatDirection == RepeatDirection.Vertical)
            {
#if NET_4_0
                if (listLayout)
                {
                    RenderList(w, user, controlStyle, baseControl);
                }
                else
#endif
                RenderVert(w, user, controlStyle, baseControl);
            }
            else
            {
#if NET_4_0
                if (listLayout)
                {
                    throw new InvalidOperationException("The UnorderedList and OrderedList layouts only support vertical layout.");
                }
#endif
                RenderHoriz(w, user, controlStyle, baseControl);
            }
        }
		public static string DoTest (int cols, int cnt, RepeatDirection d, RepeatLayout l, bool OuterTableImplied, bool hdr, bool ftr, bool sep)
		{
			HtmlTextWriter htw = GetWriter ();
			RepeatInfo ri = new RepeatInfo ();
			ri.RepeatColumns = cols;
			ri.RepeatDirection = d;
			ri.RepeatLayout = l;
			ri.OuterTableImplied = OuterTableImplied;
			Style s = new Style ();
			if (cols != 3)
				s.CssClass = "mainstyle";

			ri.RenderRepeater (htw, new RepeatInfoUser (hdr, ftr, sep, cnt), s, new DataList ());
			return htw.InnerWriter.ToString ();
		}
Exemplo n.º 7
0
	static string GetLayoutName (RepeatLayout layout)
	{
		switch (layout) {
			case RepeatLayout.Flow:
				return "flow";

			case RepeatLayout.Table:
				return "tbl";
			case RepeatLayout.OrderedList:
				return "ol";

			case RepeatLayout.UnorderedList:
				return "ul";
			default:
				throw new InvalidOperationException ("Unsupported layout value: " + layout);
		}
	}
Exemplo n.º 8
0
        public static string DoTest(int cols, int cnt, RepeatDirection d, RepeatLayout l, bool OuterTableImplied, bool hdr, bool ftr, bool sep)
        {
            HtmlTextWriter htw = GetWriter();
            RepeatInfo     ri  = new RepeatInfo();

            ri.RepeatColumns     = cols;
            ri.RepeatDirection   = d;
            ri.RepeatLayout      = l;
            ri.OuterTableImplied = OuterTableImplied;
            // get some variation in if we use style or not
            Style s = new Style();

            if (cols != 3)
            {
                s.CssClass = "mainstyle";
            }

            ri.RenderRepeater(htw, new RepeatInfoUser(hdr, ftr, sep, cnt), s, new DataList());
            return(htw.InnerWriter.ToString());
        }
Exemplo n.º 9
0
    static string GetLayoutName(RepeatLayout layout)
    {
        switch (layout)
        {
        case RepeatLayout.Flow:
            return("flow");

        case RepeatLayout.Table:
            return("tbl");

        case RepeatLayout.OrderedList:
            return("ol");

        case RepeatLayout.UnorderedList:
            return("ul");

        default:
            throw new InvalidOperationException("Unsupported layout value: " + layout);
        }
    }
Exemplo n.º 10
0
	static void BuildTestCode (StringBuilder sb, Exception ex, int cols, int cnt, RepeatDirection d, RepeatLayout l, bool oti, bool hdr, bool ftr, bool sep, string exp, int num)
	{
		if (ex == null) {
			sb.Insert (0, "\t[Test]");
		} else {
			sb.Insert (0, String.Format ("\t[ExpectedException (typeof (global::{0}))]", ex.GetType ().FullName));
			sb.Insert (0, "\t[Test]\n");
		}

		sb.AppendFormat (@"
		string v = global::MonoTests.Helpers.RepeatInfoUser.DoTest ({0}, {1}, RepeatDirection.{2}, RepeatLayout.{3}, {4}, {5}, {6}, {7});
",
			cols,
			cnt,
			d,
			l,
			oti ? "true" : "false",
			hdr ? "true" : "false",
			ftr ? "true" : "false",
			sep ? "true" : "false");
		if (ex == null) {
			sb.AppendFormat (@"		string exp = @""{0}"";
		Assert.AreEqual (exp, v, ""#{1}"");
	}}
", exp, num);
		} else {
			sb.AppendFormat (@"
		// Exception: {0} (""{1}"")
	}}
", ex.GetType ().FullName, ex.Message);
		}
	}
Exemplo n.º 11
0
		string DoTest (int cols, int cnt, RepeatDirection d, RepeatLayout l, bool OuterTableImplied, bool ftr, bool hdr, bool sep)
		{
			HtmlTextWriter htw = GetWriter ();
			RepeatInfo ri = new RepeatInfo ();
			ri.RepeatColumns = cols;
			ri.RepeatDirection = d;
			ri.RepeatLayout = l;
			ri.OuterTableImplied = OuterTableImplied;

			ri.RenderRepeater (htw, new RepeatInfoUser (ftr, hdr, sep, cnt), new TableStyle (), new DataList ());
			return htw.InnerWriter.ToString ();
		}
Exemplo n.º 12
0
    static void BuildTestCode(StringBuilder sb, Exception ex, int cols, int cnt, RepeatDirection d, RepeatLayout l, bool oti, bool hdr, bool ftr, bool sep, string exp, int num)
    {
        if (ex == null)
        {
            sb.Insert(0, "\t[Test]");
        }
        else
        {
            sb.Insert(0, String.Format("\t[ExpectedException (typeof (global::{0}))]", ex.GetType().FullName));
            sb.Insert(0, "\t[Test]\n");
        }

        sb.AppendFormat(@"
		string v = global::MonoTests.Helpers.RepeatInfoUser.DoTest ({0}, {1}, RepeatDirection.{2}, RepeatLayout.{3}, {4}, {5}, {6}, {7});
",
                        cols,
                        cnt,
                        d,
                        l,
                        oti ? "true" : "false",
                        hdr ? "true" : "false",
                        ftr ? "true" : "false",
                        sep ? "true" : "false");
        if (ex == null)
        {
            sb.AppendFormat(@"		string exp = @""{0}"";
		Assert.AreEqual (exp, v, ""#{1}"");
	}}
", exp, num);
        }
        else
        {
            sb.AppendFormat(@"
		// Exception: {0} (""{1}"")
	}}
", ex.GetType().FullName, ex.Message);
        }
    }
Exemplo n.º 13
0
    static void Main()
    {
#if NET_2_0
        Console.WriteLine("#if NET_2_0");
#else
        Console.WriteLine("#if !NET_2_0");
#endif

        Console.WriteLine(@"
// THIS IS AUTOGENERATED DO NOT EDIT
//
// Authors:
//    Ben Maurer ([email protected])
//
// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// ""Software""), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
// 
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
// 
// THE SOFTWARE IS PROVIDED ""AS IS"", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//

using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.IO;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using NUnit.Framework;
namespace MonoTests.System.Web.UI.WebControls {
[TestFixture]
public class RepeatInfo_Autogen {
	public class RepeatInfoUser : IRepeatInfoUser {

		private bool footer;
		private bool header;
		private bool separators;
		private int count;
		private int counter;


		public RepeatInfoUser (bool header, bool footer, bool separators, int count)
		{
			this.footer = footer;
			this.header = header;
			this.separators = separators;
			this.count = count;
		}

		static HtmlTextWriter GetWriter ()
		{
			StringWriter sw = new StringWriter ();
			sw.NewLine = ""\n"";
			return new HtmlTextWriter (sw);
		}

		public static string DoTest (int cols, int cnt, RepeatDirection d, RepeatLayout l, bool OuterTableImplied, bool hdr, bool ftr, bool sep)
		{
			HtmlTextWriter htw = GetWriter ();
			RepeatInfo ri = new RepeatInfo ();
			ri.RepeatColumns = cols;
			ri.RepeatDirection = d;
			ri.RepeatLayout = l;
			ri.OuterTableImplied = OuterTableImplied;
			Style s = new Style ();
			if (cols != 3)
				s.CssClass = ""mainstyle"";

			ri.RenderRepeater (htw, new RepeatInfoUser (hdr, ftr, sep, cnt), s, new DataList ());
			return htw.InnerWriter.ToString ();
		}


		public bool HasFooter {
			get { return footer; }
		}

		public bool HasHeader {
			get { return header; }
		}
		
		public bool HasSeparators {
			get { return separators; }
		}

		public int RepeatedItemCount {
			get { return count; }
		}

		public Style GetItemStyle (ListItemType itemType, int repeatIndex)
		{
			Style s = new Style ();
			s.CssClass = String.Format (""{0}{1}"", itemType, repeatIndex);
			return s;
		}

		public void RenderItem (ListItemType itemType, int repeatIndex, RepeatInfo repeatInfo, HtmlTextWriter writer)
		{
			writer.Write (""({0},{1},{2})"", counter++, itemType, repeatIndex);
		}
	}"    );


        int      num    = 0;
        int [][] combos =
        {
            new int [] { 0, 0 },
            new int [] { 0, 1 },
            new int [] { 0, 2 },
            new int [] { 0, 5 },
            new int [] { 1, 0 },
            new int [] { 1, 5 },
            new int [] { 2, 4 },
            new int [] { 2, 7 },
            new int [] { 3, 9 },
            new int [] { 3, 7 }
        };


        for (int i = 0; i < (1 << 6); i++)
        {
            RepeatDirection d   = (RepeatDirection)(i & (1 << 0));
            RepeatLayout    l   = (RepeatLayout)((i & (1 << 1)) >> 1);
            bool            oti = (i & (1 << 2)) == 0;
            bool            hdr = (i & (1 << 3)) == 0;
            bool            ftr = (i & (1 << 4)) == 0;
            bool            sep = (i & (1 << 5)) == 0;

            foreach (int [] col_cnt in combos)
            {
                string nm = String.Format("RepeatInfo_{0}cols_{1}itms_{2}_{3}{4}{5}{6}{7}",
                                          col_cnt [0],
                                          col_cnt [1],
                                          d == RepeatDirection.Vertical ? "vert" : "horiz",
                                          l == RepeatLayout.Flow ? "flow" : "tbl",
                                          oti ? "_otrtblimp" : "",
                                          hdr ? "_hdr" : "",
                                          ftr ? "_ftr" : "",
                                          sep ? "_sep" : "");
                Console.WriteLine(@"
	[Test]
	public void {0} ()
	{{
        // cols              : {1}
		// cnt               : {2}
		// RepeatDirection   : {3}
		// RepeatLayout      : {4}
		// OuterTableImplied : {5}
		// Header            : {6}
		// Footer            : {7}
		// Separator         : {8}
",
                                  nm,
                                  col_cnt [0],
                                  col_cnt [1],
                                  d,
                                  l,
                                  oti,
                                  hdr,
                                  ftr,
                                  sep
                                  );
                string exp = RepeatInfoUser.DoTest(col_cnt [0], col_cnt [1], d, l, oti, hdr, ftr, sep).Replace(@"""", @"""""");
                Console.WriteLine(@"
		string v = RepeatInfoUser.DoTest ({0}, {1}, RepeatDirection.{2}, RepeatLayout.{3}, {4}, {5}, {6}, {7});
		string exp = @""{8}"";
		Assert.AreEqual (exp, v, ""#{9}"");
	}}
",

                                  col_cnt [0],
                                  col_cnt [1],
                                  d,
                                  l,
                                  oti ? "true" : "false",
                                  hdr ? "true" : "false",
                                  ftr ? "true" : "false",
                                  sep ? "true" : "false",
                                  exp,
                                  num++
                                  );
            }
        }
        Console.WriteLine(@"
}
}
#endif");
    }