context: /********
   * This file is part of Ext.NET.
   *     
   * Ext.NET is free software: you can redistribute it and/or modify
   * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as 
   * published by the Free Software Foundation, either version 3 of the 
   * License, or (at your option) any later version.
   * 
   * Ext.NET is distributed in the hope that it will be useful,
   * but WITHOUT ANY WARRANTY; without even the implied warranty of
   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
   * 
   * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
   * along with Ext.NET.  If not, see <http://www.gnu.org/licenses/>.
   *
   *
   * @version   : 2.0.0.beta - Community Edition (AGPLv3 License)
   * @author    : Ext.NET, Inc. http://www.ext.net/
   * @date      : 2012-03-07
   * @copyright : Copyright (c) 2007-2012, Ext.NET, Inc. (http://www.ext.net/). All rights reserved.
   * @license   : GNU AFFERO GENERAL PUBLIC LICENSE (AGPL) 3.0. 
   *              See license.txt and http://www.ext.net/license/.
   *              See AGPL License at http://www.gnu.org/licenses/agpl-3.0.txt
   ********/
  
  using System.ComponentModel;
  using System.Web.UI;
  using System.Web.UI.WebControls;
  
  namespace Ext.Net
  {
      /// <summary>
      /// 
      /// </summary>
      [Meta]
      [Description("")]
      public abstract partial class ImageBase : ComponentBase
      {
          /// <summary>
  		/// 
  		/// </summary>
  		[Description("")]
          public ImageBase() { }
  
          /// <summary>
          /// 
          /// </summary>
          protected override string ContainerStyle
          {
              get
              {
                  return Const.DisplayInline;
              }
          }
  
          /// <summary>
          /// The height of this component in pixels (defaults to auto).
          /// </summary>
          [ConfigOption]
          [DirectEventUpdate(MethodName = "SetHeight")]
          [Category("4. BoxComponent")]
          [DefaultValue(typeof(Unit), "")]
          [NotifyParentProperty(true)]
          [Description("The height of this component in pixels (defaults to auto).")]
          public override Unit Height
          {
              get
              {
                  return this.State.Get<Unit>("Height", Unit.Empty);
              }
              set
              {
                  this.State.Set("Height", value);
              }
          }
  
          /// <summary>
          /// The width of this component in pixels (defaults to auto).
          /// </summary>
          [ConfigOption]
          [DirectEventUpdate(MethodName = "SetWidth")]
          [Category("4. BoxComponent")]
          [DefaultValue(typeof(Unit), "")]
          [NotifyParentProperty(true)]
          [Description("The width of this component in pixels (defaults to auto).")]
          public override Unit Width
          {
              get
              {
                  return this.State.Get<Unit>("Width", Unit.Empty);
              }
              set
              {
                  this.State.Set("Width", value);
              }
          }
  
          /// <summary>
          /// 
          /// </summary>
          [Meta]
          [ConfigOption(JsonMode.Ignore)]
          [Category("5. Image")]
          [DefaultValue("")]
          [DirectEventUpdate(MethodName = "SetImageUrl")]
          public virtual string ImageUrl
          {
              get
              {
                  return this.State.Get<string>("ImageUrl", "");
              }
              set
              {
                  this.State.Set("ImageUrl", value);
              }
          }
  
          /// <summary>
          /// 
          /// </summary>
          [ConfigOption("imageUrl")]
          [DefaultValue("")]
          protected virtual string ImageUrlProxy
          {
              get
              {
                  return this.ResolveUrlLink(this.ImageUrl);
              }
          }
  
          /// <summary>
          /// 
          /// </summary>
          [Meta]
          [ConfigOption("altText")]
          [Category("5. Image")]
          [DefaultValue("")]
          [DirectEventUpdate(MethodName = "SetAltText")]
          public virtual string AlternateText
          {
              get
              {
                  return this.State.Get<string>("AlternateText", "");
              }
              set
              {
                  this.State.Set("AlternateText", value);
              }
          }
  
          /// <summary>
          /// 
          /// </summary>
          [Meta]
          [ConfigOption(JsonMode.ToLower)]
          [Category("5. Image")]
          [DefaultValue(ImageAlign.NotSet)]
          [DirectEventUpdate(MethodName = "SetAlign")]
          public ImageAlign Align
          {
              get
              {
                  return this.State.Get<ImageAlign>("Align", ImageAlign.NotSet);
              }
              set
              {
                  this.State.Set("Align", value);
              }
          }
  
          /// <summary>
          /// true to load image after rendering only
          /// </summary>
          [Meta]
          [ConfigOption]
          [Category("5. Image")]
          [DefaultValue(false)]
          [NotifyParentProperty(true)]
          [Description("true to load image after rendering only")]
          public virtual bool LazyLoad
          {
              get
              {
                  return this.State.Get<bool>("LazyLoad", false);
              }
              set
              {
                  this.State.Set("LazyLoad", value);
              }
          }
  
          /// <summary>
          /// true to monitor complete state and fire Complete event
          /// </summary>
          [Meta]
          [ConfigOption]
          [Category("5. Image")]
          [DefaultValue(true)]
          [NotifyParentProperty(true)]
          [Description("true to monitor complete state and fire Complete event")]
          public virtual bool MonitorComplete
          {
              get
              {
                  return this.State.Get<bool>("MonitorComplete", true);
              }
              set
              {
                  this.State.Set("MonitorComplete", value);
              }
          }
  
          /// <summary>
          /// true to allow scroll the image by mouse dragging
          /// </summary>
          [Meta]
          [ConfigOption]
          [Category("5. Image")]
          [DefaultValue(false)]
          [NotifyParentProperty(true)]
          [Description("true to allow scroll the image by mouse dragging")]
          public virtual bool AllowPan
          {
              get
              {
                  return this.State.Get<bool>("AllowPan", false);
              }
              set
              {
                  this.State.Set("AllowPan", value);
              }
          }
  
          /// <summary>
          /// The milliseconds to poll complete state, ignored if MonitorComplete is not true (defaults to 200)
          /// </summary>
          [Meta]
          [ConfigOption]
          [Category("5. Image")]
          [DefaultValue(200)]
          [NotifyParentProperty(true)]
          [Description("The milliseconds to poll complete state, ignored if MonitorComplete is not true (defaults to 200)")]
          public virtual int MonitorPoll
          {
              get
              {
  
gt:                 return this.State.Get<int>("MonitorPoll", 200);