[asp.net] Fix for bug #685267. ClientScriptManager generates correct post-back event...
[mono.git] / mcs / class / System.Web / System.Web.UI / Html32TextWriter.cs
index e8bb5f9a7e4414a448502ab4596a7e88abb3b43c..3ecee2c0076f4347b1bd3c637bd4798f9ed8b843 100644 (file)
@@ -6,9 +6,7 @@
 //     Gonzalo Paniagua Javier (gonzalo@ximian.com)
 //
 // Copyright (C) Matthijs ter Woord, 2004
-// (C) 2004 Novell, Inc (http://www.novell.com)
-//
-
+// Copyright (C) 2004-2010 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
 using System.Collections;
 using System.Globalization;
 using System.IO;
+using System.Security.Permissions;
+using System.Web.Util;
 
 namespace System.Web.UI
 {
-       [MonoTODO ("Needs work and verification.")]
+       // CAS
+       [AspNetHostingPermission (SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
+       [AspNetHostingPermission (SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
        public class Html32TextWriter : HtmlTextWriter
        {
+               bool div_table_substitution;
+               bool bold;
+               bool italic;
+
                public Html32TextWriter (TextWriter writer) : base (writer)
                {
                }
@@ -47,6 +53,23 @@ namespace System.Web.UI
                {
                }
 
+               [MonoTODO ("no effect on html generation")]
+               public bool ShouldPerformDivTableSubstitution {
+                       get { return div_table_substitution; }
+                       set { div_table_substitution = value; }
+               }
+
+               [MonoTODO ("no effect on html generation")]
+               public bool SupportsBold {
+                       get { return bold; }
+                       set { bold = value; }
+               }
+
+               [MonoTODO ("no effect on html generation")]
+               public bool SupportsItalic {
+                       get { return italic; }
+                       set { italic = value; }
+               }
 
                public override void RenderBeginTag (HtmlTextWriterTag tagKey)
                {
@@ -62,13 +85,13 @@ namespace System.Web.UI
                {
                        if (tagKey == HtmlTextWriterTag.Unknown ||
                            !Enum.IsDefined (typeof (HtmlTextWriterTag), tagKey))
-                               return "";
+                               return String.Empty;
 
-                       return tagKey.ToString ().ToLower (CultureInfo.InvariantCulture);
+                       return tagKey.ToString ().ToLower (Helpers.InvariantCulture);
                        /* The code below is here just in case we need to split things up
                        switch (tagkey) {
                        case HtmlTextWriterTag.Unknown:
-                               return "";
+                               return String.Empty;
                        case HtmlTextWriterTag.A:
                                return "a";
                        case HtmlTextWriterTag.Acronym:
@@ -262,7 +285,7 @@ namespace System.Web.UI
                        case HtmlTextWriterTag.Xml:
                                return "xml";
                        default:
-                               return "";
+                               return String.Empty;
                        }
                        */
                }
@@ -297,7 +320,7 @@ namespace System.Web.UI
                         return base.RenderBeforeTag ();
                }
 
-               [MonoTODO]
+               [MonoTODO("Not implemented, always returns null")]
                protected Stack FontStack {
                        get {
                                return null;