Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / CommonUI / System / Drawing / Size.cs / 2 / Size.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Drawing {
using System.Runtime.Serialization.Formatters;
using System.Diagnostics;
using System;
using System.IO;
using Microsoft.Win32;
using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
/**
* Represents a dimension in 2D coordinate space
*/
///
///
/// Represents the size of a rectangular region
/// with an ordered pair of width and height.
///
[
TypeConverterAttribute(typeof(SizeConverter)),
]
[Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
[SuppressMessage("Microsoft.Usage", "CA2225:OperatorOverloadsHaveNamedAlternates")]
public struct Size {
///
///
/// Initializes a new instance of the class.
///
public static readonly Size Empty = new Size();
private int width;
private int height;
/**
* Create a new Size object from a point
*/
///
///
///
/// Initializes a new instance of the class from
/// the specified .
///
///
public Size(Point pt) {
width = pt.X;
height = pt.Y;
}
/**
* Create a new Size object of the specified dimension
*/
///
///
/// Initializes a new instance of the class from
/// the specified dimensions.
///
public Size(int width, int height) {
this.width = width;
this.height = height;
}
///
///
/// Converts the specified to a
/// .
///
public static implicit operator SizeF(Size p) {
return new SizeF(p.Width, p.Height);
}
///
///
///
/// Performs vector addition of two objects.
///
///
public static Size operator +(Size sz1, Size sz2) {
return Add(sz1, sz2);
}
///
///
///
/// Contracts a by another
/// .
///
///
public static Size operator -(Size sz1, Size sz2) {
return Subtract(sz1, sz2);
}
///
///
/// Tests whether two objects
/// are identical.
///
public static bool operator ==(Size sz1, Size sz2) {
return sz1.Width == sz2.Width && sz1.Height == sz2.Height;
}
///
///
///
/// Tests whether two objects are different.
///
///
public static bool operator !=(Size sz1, Size sz2) {
return !(sz1 == sz2);
}
///
///
/// Converts the specified to a
/// .
///
public static explicit operator Point(Size size) {
return new Point(size.Width, size.Height);
}
///
///
/// Tests whether this has zero
/// width and height.
///
[Browsable(false)]
public bool IsEmpty {
get {
return width == 0 && height == 0;
}
}
/**
* Horizontal dimension
*/
///
///
///
/// Represents the horizontal component of this
/// .
///
///
public int Width {
get {
return width;
}
set {
width = value;
}
}
/**
* Vertical dimension
*/
///
///
/// Represents the vertical component of this
/// .
///
public int Height {
get {
return height;
}
set {
height = value;
}
}
///
///
/// Performs vector addition of two objects.
///
///
public static Size Add(Size sz1, Size sz2) {
return new Size(sz1.Width + sz2.Width, sz1.Height + sz2.Height);
}
///
///
/// Converts a SizeF to a Size by performing a ceiling operation on
/// all the coordinates.
///
public static Size Ceiling(SizeF value) {
return new Size((int)Math.Ceiling(value.Width), (int)Math.Ceiling(value.Height));
}
///
///
/// Contracts a by another .
///
///
public static Size Subtract(Size sz1, Size sz2) {
return new Size(sz1.Width - sz2.Width, sz1.Height - sz2.Height);
}
///
///
/// Converts a SizeF to a Size by performing a truncate operation on
/// all the coordinates.
///
public static Size Truncate(SizeF value) {
return new Size((int)value.Width, (int)value.Height);
}
///
///
/// Converts a SizeF to a Size by performing a round operation on
/// all the coordinates.
///
public static Size Round(SizeF value) {
return new Size((int)Math.Round(value.Width), (int)Math.Round(value.Height));
}
///
///
///
/// Tests to see whether the specified object is a
///
/// with the same dimensions as this .
///
///
public override bool Equals(object obj) {
if (!(obj is Size))
return false;
Size comp = (Size)obj;
// Note value types can't have derived classes, so we don't need to
// check the types of the objects here. -- [....], 2/21/2001
return (comp.width == this.width) &&
(comp.height == this.height);
}
///
///
///
/// Returns a hash code.
///
///
public override int GetHashCode() {
return width ^ height;
}
///
///
///
/// Creates a human-readable string that represents this
/// .
///
///
public override string ToString() {
return "{Width=" + width.ToString(CultureInfo.CurrentCulture) + ", Height=" + height.ToString(CultureInfo.CurrentCulture) + "}";
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Drawing {
using System.Runtime.Serialization.Formatters;
using System.Diagnostics;
using System;
using System.IO;
using Microsoft.Win32;
using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
/**
* Represents a dimension in 2D coordinate space
*/
///
///
/// Represents the size of a rectangular region
/// with an ordered pair of width and height.
///
[
TypeConverterAttribute(typeof(SizeConverter)),
]
[Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
[SuppressMessage("Microsoft.Usage", "CA2225:OperatorOverloadsHaveNamedAlternates")]
public struct Size {
///
///
/// Initializes a new instance of the class.
///
public static readonly Size Empty = new Size();
private int width;
private int height;
/**
* Create a new Size object from a point
*/
///
///
///
/// Initializes a new instance of the class from
/// the specified .
///
///
public Size(Point pt) {
width = pt.X;
height = pt.Y;
}
/**
* Create a new Size object of the specified dimension
*/
///
///
/// Initializes a new instance of the class from
/// the specified dimensions.
///
public Size(int width, int height) {
this.width = width;
this.height = height;
}
///
///
/// Converts the specified to a
/// .
///
public static implicit operator SizeF(Size p) {
return new SizeF(p.Width, p.Height);
}
///
///
///
/// Performs vector addition of two objects.
///
///
public static Size operator +(Size sz1, Size sz2) {
return Add(sz1, sz2);
}
///
///
///
/// Contracts a by another
/// .
///
///
public static Size operator -(Size sz1, Size sz2) {
return Subtract(sz1, sz2);
}
///
///
/// Tests whether two objects
/// are identical.
///
public static bool operator ==(Size sz1, Size sz2) {
return sz1.Width == sz2.Width && sz1.Height == sz2.Height;
}
///
///
///
/// Tests whether two objects are different.
///
///
public static bool operator !=(Size sz1, Size sz2) {
return !(sz1 == sz2);
}
///
///
/// Converts the specified to a
/// .
///
public static explicit operator Point(Size size) {
return new Point(size.Width, size.Height);
}
///
///
/// Tests whether this has zero
/// width and height.
///
[Browsable(false)]
public bool IsEmpty {
get {
return width == 0 && height == 0;
}
}
/**
* Horizontal dimension
*/
///
///
///
/// Represents the horizontal component of this
/// .
///
///
public int Width {
get {
return width;
}
set {
width = value;
}
}
/**
* Vertical dimension
*/
///
///
/// Represents the vertical component of this
/// .
///
public int Height {
get {
return height;
}
set {
height = value;
}
}
///
///
/// Performs vector addition of two objects.
///
///
public static Size Add(Size sz1, Size sz2) {
return new Size(sz1.Width + sz2.Width, sz1.Height + sz2.Height);
}
///
///
/// Converts a SizeF to a Size by performing a ceiling operation on
/// all the coordinates.
///
public static Size Ceiling(SizeF value) {
return new Size((int)Math.Ceiling(value.Width), (int)Math.Ceiling(value.Height));
}
///
///
/// Contracts a by another .
///
///
public static Size Subtract(Size sz1, Size sz2) {
return new Size(sz1.Width - sz2.Width, sz1.Height - sz2.Height);
}
///
///
/// Converts a SizeF to a Size by performing a truncate operation on
/// all the coordinates.
///
public static Size Truncate(SizeF value) {
return new Size((int)value.Width, (int)value.Height);
}
///
///
/// Converts a SizeF to a Size by performing a round operation on
/// all the coordinates.
///
public static Size Round(SizeF value) {
return new Size((int)Math.Round(value.Width), (int)Math.Round(value.Height));
}
///
///
///
/// Tests to see whether the specified object is a
///
/// with the same dimensions as this .
///
///
public override bool Equals(object obj) {
if (!(obj is Size))
return false;
Size comp = (Size)obj;
// Note value types can't have derived classes, so we don't need to
// check the types of the objects here. -- [....], 2/21/2001
return (comp.width == this.width) &&
(comp.height == this.height);
}
///
///
///
/// Returns a hash code.
///
///
public override int GetHashCode() {
return width ^ height;
}
///
///
///
/// Creates a human-readable string that represents this
/// .
///
///
public override string ToString() {
return "{Width=" + width.ToString(CultureInfo.CurrentCulture) + ", Height=" + height.ToString(CultureInfo.CurrentCulture) + "}";
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Imaging.cs
- MyContact.cs
- ObjectParameter.cs
- DataGridColumn.cs
- HtmlTable.cs
- SharedPersonalizationStateInfo.cs
- HttpPostClientProtocol.cs
- SiteMapNode.cs
- TransformGroup.cs
- XmlCodeExporter.cs
- HandleRef.cs
- TextElement.cs
- ModulesEntry.cs
- WaitHandle.cs
- BinHexDecoder.cs
- OracleConnection.cs
- NameValuePair.cs
- PartialTrustVisibleAssemblyCollection.cs
- Dispatcher.cs
- CodeTypeOfExpression.cs
- PlatformNotSupportedException.cs
- CorrelationManager.cs
- KeyValueSerializer.cs
- CompilationPass2Task.cs
- ProfileManager.cs
- TrackingMemoryStreamFactory.cs
- CustomWebEventKey.cs
- FormsAuthenticationConfiguration.cs
- EnumerableRowCollectionExtensions.cs
- AutoGeneratedField.cs
- ExpressionBindingsDialog.cs
- QilPatternVisitor.cs
- SqlBulkCopyColumnMapping.cs
- MultipleFilterMatchesException.cs
- Symbol.cs
- IntSecurity.cs
- ClientData.cs
- FontDriver.cs
- parserscommon.cs
- storepermissionattribute.cs
- _TransmitFileOverlappedAsyncResult.cs
- InkPresenterAutomationPeer.cs
- PowerEase.cs
- EntityClassGenerator.cs
- TextTrailingCharacterEllipsis.cs
- DispatcherObject.cs
- RectAnimationClockResource.cs
- HitTestParameters.cs
- WhitespaceRuleReader.cs
- BCryptHashAlgorithm.cs
- JsonFormatWriterGenerator.cs
- XPathExpr.cs
- PolyLineSegment.cs
- DescendantOverDescendantQuery.cs
- HttpException.cs
- ConfigurationLocation.cs
- Int64KeyFrameCollection.cs
- KoreanCalendar.cs
- HideDisabledControlAdapter.cs
- CounterCreationDataCollection.cs
- ToolStripProgressBar.cs
- ColorAnimationBase.cs
- Visual.cs
- TextTreeTextNode.cs
- UnregisterInfo.cs
- GridViewActionList.cs
- smtpconnection.cs
- MulticastIPAddressInformationCollection.cs
- ObjectRef.cs
- FormsAuthenticationEventArgs.cs
- httpserverutility.cs
- XPathScanner.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- RangeValuePatternIdentifiers.cs
- SqlUserDefinedTypeAttribute.cs
- WebPartEditVerb.cs
- AngleUtil.cs
- LocationUpdates.cs
- AppDomainGrammarProxy.cs
- GeneralTransform2DTo3DTo2D.cs
- SqlServices.cs
- LabelDesigner.cs
- DynamicMethod.cs
- GeometryCombineModeValidation.cs
- ViewStateException.cs
- OleAutBinder.cs
- Image.cs
- TimelineClockCollection.cs
- Italic.cs
- ImpersonateTokenRef.cs
- RequestCacheValidator.cs
- RegexReplacement.cs
- ConnectionPool.cs
- EdmProviderManifest.cs
- TextServicesCompartment.cs
- SqlTypeSystemProvider.cs
- MachineKeyConverter.cs
- SqlCacheDependencyDatabase.cs
- ExtensionQuery.cs
- SrgsElementFactoryCompiler.cs