Adorner.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / Behavior / Adorner.cs / 1 / Adorner.cs

                            namespace System.Windows.Forms.Design.Behavior { 
    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.ComponentModel.Design; 
    using System.Design;
    using System.Diagnostics; 
    using System.Drawing; 
    using System.Windows.Forms.Design;
 
    /// 
    /// 
    ///     An Adorner manages a collection of UI-related Glyphs.  Each Adorner
    ///     can be enabled/disabled.  Only Enabled Adorners will receive hit test 
    ///     and paint messages from the BehaviorService.  An Adorner can be viewed
    ///     as a proxy between UI-related elements (all Glyphs) and the BehaviorService. 
    ///  
    public sealed class Adorner {
 
        private BehaviorService     behaviorService;//ptr back to the BehaviorService
        private GlyphCollection     glyphs;//collection of Glyphs that this particular Adorner manages
        private bool                enabled;//enabled value - determines if Adorner gets paints & hits
 
        /// 
        ///  
        ///     Standard constructor.  Creates a new GlyphCollection and by default is enabled. 
        /// 
        public Adorner() { 
            glyphs = new GlyphCollection();
            enabled = true;
        }
 
        /// 
        ///  
        ///     When an Adorner is added to the BehaviorService's AdornerCollection, the collection 
        ///     will set this property so that the Adorner can call back to the BehaviorService.
        ///  
        public BehaviorService BehaviorService {
            get {
                return behaviorService;
            } 
            set {
                this.behaviorService = value; 
            } 
        }
 
        /// 
        /// 
        ///     Determines if the BehaviorService will send HitTest and Paint messages to
        ///     the Adorner. 
        /// 
        public bool Enabled { 
            get { 
                return enabled;
            } 
            set {
                if (value != enabled) {
                    enabled = value;
                    Invalidate(); 
                }
            } 
        } 

        ///  
        /// 
        ///     Returns the stronly-typed Glyph collection.
        /// 
        public GlyphCollection Glyphs { 
            get {
                return glyphs; 
            } 
        }
 
        /// 
        /// 
        ///     Forces the BehaviorService to refresh its AdornerWindow.
        ///  
        public void Invalidate() {
            if (behaviorService != null) { 
                behaviorService.Invalidate(); 
            }
        } 

        /// 
        /// 
        ///     Forces the BehaviorService to refresh its AdornerWindow within the given Rectangle. 
        /// 
        public void Invalidate(Rectangle rectangle) { 
            if (behaviorService != null) { 
                behaviorService.Invalidate(rectangle);
            } 
        }

        /// 
        ///  
        ///     Forces the BehaviorService to refresh its AdornerWindow within the given Region.
        ///  
        public void Invalidate(Region region)  { 
            if (behaviorService != null) {
                behaviorService.Invalidate(region); 
            }
        }
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK