//Auto-generated by kalyptus. DO NOT EDIT.
namespace DOM {
	using Kimono;
	using System;
	using Qyoto;
	/// <remarks>
	///  Introduced in DOM Level 2
	///  A base interface that all views shall derive from.
	///  </remarks>		<short>    Introduced in DOM Level 2 </short>
	[SmokeClass("DOM::AbstractView")]
	public abstract class AbstractView : Object {
		protected SmokeInvocation interceptor = null;
		private IntPtr smokeObject;
		protected AbstractView(Type dummy) {}
		protected void CreateProxy() {
			interceptor = new SmokeInvocation(typeof(AbstractView), this);
		}
		// DOM::AbstractView* AbstractView(DOM::AbstractViewImpl* arg1); >>>> NOT CONVERTED
		public AbstractView() : this((Type) null) {
			CreateProxy();
			interceptor.Invoke("AbstractView", "AbstractView()", typeof(void));
		}
		public AbstractView(DOM.AbstractView other) : this((Type) null) {
			CreateProxy();
			interceptor.Invoke("AbstractView#", "AbstractView(const DOM::AbstractView&)", typeof(void), typeof(DOM.AbstractView), other);
		}
		/// <remarks>
		///  The source DocumentView of which this is an AbstractView.
		///      </remarks>		<short>    The source DocumentView of which this is an AbstractView.</short>
		public DOM.Document Document() {
			return (DOM.Document) interceptor.Invoke("document", "document() const", typeof(DOM.Document));
		}
		/// <remarks>
		///  Introduced in DOM Level 2
		///  This method is from the ViewCSS interface
		///  This method is used to get the computed style as it is defined in
		///  [CSS2].
		/// <param> name="elt" The element whose style is to be computed. This parameter
		///  cannot be null.
		/// </param><param> name="pseudoElt" The pseudo-element or null if none.
		/// </param></remarks>		<return> The computed style. The CSSStyleDeclaration is read-only and
		///  contains only absolute values.
		///      </return>
		/// 		<short>    Introduced in DOM Level 2  This method is from the ViewCSS interface </short>
		public DOM.CSSStyleDeclaration GetComputedStyle(DOM.Element elt, DOM.DOMString pseudoElt) {
			return (DOM.CSSStyleDeclaration) interceptor.Invoke("getComputedStyle##", "getComputedStyle(const DOM::Element&, const DOM::DOMString&)", typeof(DOM.CSSStyleDeclaration), typeof(DOM.Element), elt, typeof(DOM.DOMString), pseudoElt);
		}
		public bool IsNull() {
			return (bool) interceptor.Invoke("isNull", "isNull() const", typeof(bool));
		}
	}
}
