Root/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 | #region License /* FNA - XNA4 Reimplementation for Desktop Platforms * Copyright 2009-2016 Ethan Lee and the MonoGame Team * * Released under the Microsoft Public License. * See LICENSE for details. */ /* Derived from code by the Mono.Xna Team (Copyright 2006). * Released under the MIT License. See monoxna.LICENSE for details. */ #endregion License #region Using Statements using System; using System.Globalization; #endregion namespace Microsoft.Xna.Framework.Graphics { [Serializable] public class DisplayMode { #region Public Properties public float AspectRatio { get { return ( float ) Width / ( float ) Height; } } public SurfaceFormat Format { get ; private set ; } public int Height { get ; private set ; } public int Width { get ; private set ; } public Rectangle TitleSafeArea { get { return new Rectangle(0, 0, Width, Height); } } #endregion #region Internal Constructor internal DisplayMode( int width, int height, SurfaceFormat format) { Width = width; Height = height; Format = format; } #endregion #region Public Static Operators and Override Methods public static bool operator !=(DisplayMode left, DisplayMode right) { return !(left == right); } public static bool operator ==(DisplayMode left, DisplayMode right) { if (ReferenceEquals(left, right)) // Same object or both are null { return true ; } if (ReferenceEquals(left, null ) || ReferenceEquals(right, null )) { return false ; } return ( (left.Format == right.Format) && (left.Height == right.Height) && (left.Width == right.Width) ); } public override bool Equals( object obj) { return (obj as DisplayMode) == this ; } public override int GetHashCode() { return (Width.GetHashCode() ^ Height.GetHashCode() ^ Format.GetHashCode()); } public override string ToString() { return ( "{{Width:" + Width.ToString() + " Height:" + Height.ToString() + " Format:" + Format.ToString() + "}}" ); } #endregion } } |