//----------------------------------------------------------------------- // // Copyright (c) Andrew Arnott. All rights reserved. // //----------------------------------------------------------------------- namespace DotNetOpenAuth.OpenId.RelyingParty { using System; using System.Diagnostics.Contracts; using System.Web.UI; /// /// The contract class for the class. /// [ContractClassFor(typeof(SelectorButton))] internal abstract class SelectorButtonContract : SelectorButton { /// /// Ensures that this button has been initialized to a valid state. /// /// /// This is "internal" -- NOT "protected internal" deliberately. It makes it impossible /// to derive from this class outside the assembly, which suits our purposes since the /// control is not designed for an extensible set of button types. /// internal override void EnsureValid() { } /// /// Renders the leading attributes for the LI tag. /// /// The writer. protected internal override void RenderLeadingAttributes(HtmlTextWriter writer) { Requires.NotNull(writer, "writer"); } /// /// Renders the content of the button. /// /// The writer. /// The containing selector control. protected internal override void RenderButtonContent(HtmlTextWriter writer, OpenIdSelector selector) { Requires.NotNull(writer, "writer"); Requires.NotNull(selector, "selector"); } } }