StylusButton.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Input / Stylus / StylusButton.cs / 1305600 / StylusButton.cs

                            using System; 
using System.Globalization;

namespace System.Windows.Input
{ 
    /////////////////////////////////////////////////////////////////////////
    ///  
    /// StylusButton class 
    /// 
    public class StylusButton 
    {
        /////////////////////////////////////////////////////////////////////

        internal StylusButton(string name, Guid id) 
        {
            _name = name; 
            _guid = id; 
        }
 
        /////////////////////////////////////////////////////////////////////
        /// 
        ///		Returns the hardware Guid of the StylusDevice button.
        ///  
        public Guid Guid
        { 
            get 
            {
                return _guid; 
            }
        }

        ///////////////////////////////////////////////////////////////////// 
        /// 
        /// Returns the current state of the button. 
        ///  
        public StylusButtonState StylusButtonState
        { 
            //
            get
            {
                StylusPointCollection stylusPoints = StylusDevice.GetStylusPoints(null); 
                if (stylusPoints == null || stylusPoints.Count == 0)
                    return CachedButtonState; 
 
                return (StylusButtonState)stylusPoints[stylusPoints.Count - 1].GetPropertyValue(new StylusPointProperty(Guid, true));
            } 
        }

        internal StylusButtonState CachedButtonState
        { 
            get
            { 
                return _cachedButtonState; 
            }
            set 
            {
                _cachedButtonState = value;
            }
        } 

        ///////////////////////////////////////////////////////////////////// 
        ///  
        ///		Returns the name of the button.
        ///  
        public string Name
        {
            get
            {	 
                return _name;
            } 
        } 

        ///////////////////////////////////////////////////////////////////// 
        /// 
        ///		Returns StylusDevice object that owns this button.
        /// 
        public StylusDevice StylusDevice 
        {
            get 
            {	 
                return _stylusDevice;
            } 
        }

        /////////////////////////////////////////////////////////////////////
        /// 
        internal void SetOwner(StylusDevice stylusDevice)
        { 
            _stylusDevice = stylusDevice; 
        }
 
        /////////////////////////////////////////////////////////////////////
        /// 
        ///		Returns the friendly representation of the button object
        ///  
        ///  name of the tablet
        public override string ToString() 
        { 
            return String.Format(CultureInfo.CurrentCulture, "{0}({1})", base.ToString(), this.Name);
        } 

        /////////////////////////////////////////////////////////////////////

        StylusDevice    _stylusDevice; 
        string          _name;
        Guid            _guid; 
        StylusButtonState _cachedButtonState = StylusButtonState.Up; 
    }
} 

// 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