예제 #1
0
        /// <internalonly/>
        /// <devdoc>
        ///    <para>Copies non-blank elements from the specified style, but will not overwrite
        ///       any existing style elements.</para>
        /// </devdoc>
        public override void MergeWith(Style s)
        {
            if (s != null && !s.IsEmpty)
            {
                if (IsEmpty)
                {
                    // merge into an empty style is equivalent to a copy,
                    // which is more efficient
                    CopyFrom(s);
                    return;
                }

                base.MergeWith(s);

                if (s is PanelStyle)
                {
                    PanelStyle ts = (PanelStyle)s;

                    // Since we're already copying the registered CSS class in base.MergeWith, we don't
                    // need to any attributes that would be included in that class.
                    if (s.RegisteredCssClass.Length == 0)
                    {
                        if (ts.IsSet(PROP_BACKIMAGEURL) && !this.IsSet(PROP_BACKIMAGEURL))
                        {
                            this.BackImageUrl = ts.BackImageUrl;
                        }
                        if (ts.IsSet(PROP_SCROLLBARS) && !this.IsSet(PROP_SCROLLBARS))
                        {
                            this.ScrollBars = ts.ScrollBars;
                        }
                        if (ts.IsSet(PROP_WRAP) && !this.IsSet(PROP_WRAP))
                        {
                            this.Wrap = ts.Wrap;
                        }
                    }

                    if (ts.IsSet(PROP_DIRECTION) && !this.IsSet(PROP_DIRECTION))
                    {
                        this.Direction = ts.Direction;
                    }
                    if (ts.IsSet(PROP_HORIZONTALALIGN) && !this.IsSet(PROP_HORIZONTALALIGN))
                    {
                        this.HorizontalAlign = ts.HorizontalAlign;
                    }
                }
            }
        }
예제 #2
0
        /// <internalonly/>
        /// <devdoc>
        ///    <para>Copies non-blank elements from the specified style, overwriting existing
        ///       style elements if necessary.</para>
        /// </devdoc>
        public override void CopyFrom(Style s)
        {
            if (s != null && !s.IsEmpty)
            {
                base.CopyFrom(s);

                if (s is PanelStyle)
                {
                    PanelStyle ts = (PanelStyle)s;

                    if (s.RegisteredCssClass.Length != 0)
                    {
                        if (ts.IsSet(PROP_BACKIMAGEURL))
                        {
                            ViewState.Remove(STR_BACKIMAGEURL);
                            ClearBit(PROP_BACKIMAGEURL);
                        }
                        if (ts.IsSet(PROP_SCROLLBARS))
                        {
                            ViewState.Remove(STR_SCROLLBARS);
                            ClearBit(PROP_SCROLLBARS);
                        }
                        if (ts.IsSet(PROP_WRAP))
                        {
                            ViewState.Remove(STR_WRAP);
                            ClearBit(PROP_WRAP);
                        }
                    }
                    else
                    {
                        if (ts.IsSet(PROP_BACKIMAGEURL))
                        {
                            this.BackImageUrl = ts.BackImageUrl;
                        }
                        if (ts.IsSet(PROP_SCROLLBARS))
                        {
                            this.ScrollBars = ts.ScrollBars;
                        }
                        if (ts.IsSet(PROP_WRAP))
                        {
                            this.Wrap = ts.Wrap;
                        }
                    }

                    if (ts.IsSet(PROP_DIRECTION))
                    {
                        this.Direction = ts.Direction;
                    }
                    if (ts.IsSet(PROP_HORIZONTALALIGN))
                    {
                        this.HorizontalAlign = ts.HorizontalAlign;
                    }
                }
            }
        }
예제 #3
0
 public override void CopyFrom(Style s)
 {
     if ((s != null) && !s.IsEmpty)
     {
         base.CopyFrom(s);
         if (s is PanelStyle)
         {
             PanelStyle style = (PanelStyle)s;
             if (s.RegisteredCssClass.Length != 0)
             {
                 if (style.IsSet(0x10000))
                 {
                     base.ViewState.Remove("BackImageUrl");
                     base.ClearBit(0x10000);
                 }
                 if (style.IsSet(0x80000))
                 {
                     base.ViewState.Remove("ScrollBars");
                     base.ClearBit(0x80000);
                 }
                 if (style.IsSet(0x100000))
                 {
                     base.ViewState.Remove("Wrap");
                     base.ClearBit(0x100000);
                 }
             }
             else
             {
                 if (style.IsSet(0x10000))
                 {
                     this.BackImageUrl = style.BackImageUrl;
                 }
                 if (style.IsSet(0x80000))
                 {
                     this.ScrollBars = style.ScrollBars;
                 }
                 if (style.IsSet(0x100000))
                 {
                     this.Wrap = style.Wrap;
                 }
             }
             if (style.IsSet(0x20000))
             {
                 this.Direction = style.Direction;
             }
             if (style.IsSet(0x40000))
             {
                 this.HorizontalAlign = style.HorizontalAlign;
             }
         }
     }
 }
예제 #4
0
 public override void MergeWith(Style s)
 {
     if ((s != null) && !s.IsEmpty)
     {
         if (this.IsEmpty)
         {
             this.CopyFrom(s);
         }
         else
         {
             base.MergeWith(s);
             if (s is PanelStyle)
             {
                 PanelStyle style = (PanelStyle)s;
                 if (s.RegisteredCssClass.Length == 0)
                 {
                     if (style.IsSet(0x10000) && !base.IsSet(0x10000))
                     {
                         this.BackImageUrl = style.BackImageUrl;
                     }
                     if (style.IsSet(0x80000) && !base.IsSet(0x80000))
                     {
                         this.ScrollBars = style.ScrollBars;
                     }
                     if (style.IsSet(0x100000) && !base.IsSet(0x100000))
                     {
                         this.Wrap = style.Wrap;
                     }
                 }
                 if (style.IsSet(0x20000) && !base.IsSet(0x20000))
                 {
                     this.Direction = style.Direction;
                 }
                 if (style.IsSet(0x40000) && !base.IsSet(0x40000))
                 {
                     this.HorizontalAlign = style.HorizontalAlign;
                 }
             }
         }
     }
 }