//-----------------------------------------------------------------------
//
// 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) {
Contract.Requires(writer != null);
}
///
/// Renders the content of the button.
///
/// The writer.
/// The containing selector control.
protected internal override void RenderButtonContent(HtmlTextWriter writer, OpenIdSelector selector) {
Contract.Requires(writer != null);
Contract.Requires(selector != null);
}
}
}