Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / Behavior / ContainerSelectorGlyph.cs / 1 / ContainerSelectorGlyph.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.Drawing.Drawing2D; using System.Windows.Forms.Design; using System.Windows.Forms; ////// /// This is the glyph used to drag container controls around the designer. /// This glyph (and associated behavior) is created by the ParentControlDesigner. /// internal sealed class ContainerSelectorGlyph : Glyph { private Rectangle glyphBounds; private ContainerSelectorBehavior relatedBehavior; ////// /// ContainerSelectorGlyph constructor. /// internal ContainerSelectorGlyph(Rectangle containerBounds, int glyphSize, int glyphOffset, ContainerSelectorBehavior behavior) : base(behavior) { relatedBehavior = (ContainerSelectorBehavior)behavior; glyphBounds = new Rectangle(containerBounds.X + glyphOffset, containerBounds.Y - (int)(glyphSize * .5), glyphSize, glyphSize); } ////// /// The bounds of this Glyph. /// public override Rectangle Bounds { get { return glyphBounds; } } public Behavior RelatedBehavior { get { return relatedBehavior; } } ////// /// Simple hit test rule: if the point is contained within the bounds /// - then it is a positive hit test. /// public override Cursor GetHitTest(Point p) { if (glyphBounds.Contains(p) || relatedBehavior.OkToMove) { return Cursors.SizeAll; } return null; } private Bitmap glyph = null; private Bitmap MoveGlyph { get { if (glyph == null) { glyph = new Bitmap(typeof(ContainerSelectorGlyph), "MoverGlyph.bmp"); glyph.MakeTransparent(); } return glyph; } } ////// /// Very simple paint logic. /// public override void Paint(PaintEventArgs pe) { pe.Graphics.DrawImage(MoveGlyph, glyphBounds); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ChtmlImageAdapter.cs
- ProcessHostConfigUtils.cs
- RetrieveVirtualItemEventArgs.cs
- StrokeCollectionConverter.cs
- BitmapPalettes.cs
- _BaseOverlappedAsyncResult.cs
- DesigntimeLicenseContext.cs
- BamlLocalizationDictionary.cs
- ZipPackagePart.cs
- RefreshEventArgs.cs
- WindowsFormsSynchronizationContext.cs
- MultiBinding.cs
- DataGridViewMethods.cs
- MarshalDirectiveException.cs
- HttpServerProtocol.cs
- TextEffectCollection.cs
- Fx.cs
- MailWebEventProvider.cs
- MailAddressCollection.cs
- TransactionBridgeSection.cs
- SimpleHandlerBuildProvider.cs
- ChangeNode.cs
- AutoCompleteStringCollection.cs
- Misc.cs
- WebPartConnectionsCloseVerb.cs
- WebZone.cs
- SettingsPropertyCollection.cs
- unsafenativemethodstextservices.cs
- Invariant.cs
- ExpandoClass.cs
- WebServiceParameterData.cs
- DocumentViewerAutomationPeer.cs
- ColumnResult.cs
- LineServices.cs
- ValidationError.cs
- RSAOAEPKeyExchangeFormatter.cs
- TouchFrameEventArgs.cs
- ButtonBaseDesigner.cs
- StrongName.cs
- WebServiceResponseDesigner.cs
- DocumentXPathNavigator.cs
- DateTimeUtil.cs
- EditBehavior.cs
- PeerCollaboration.cs
- DataGridViewElement.cs
- CSharpCodeProvider.cs
- XomlCompilerResults.cs
- DataContractAttribute.cs
- PasswordBox.cs
- WebBrowserUriTypeConverter.cs
- FontInfo.cs
- WebBrowserEvent.cs
- MatrixTransform.cs
- XPathDocumentNavigator.cs
- Token.cs
- sqlmetadatafactory.cs
- LicenseContext.cs
- TextViewDesigner.cs
- NavigationWindow.cs
- AssemblyContextControlItem.cs
- Stack.cs
- ClientFormsIdentity.cs
- MimeAnyImporter.cs
- NameNode.cs
- MarkerProperties.cs
- SerializationInfo.cs
- RuntimeWrappedException.cs
- ApplicationGesture.cs
- GregorianCalendar.cs
- Color.cs
- PersonalizationStateInfoCollection.cs
- LinkLabel.cs
- SoapExtensionTypeElementCollection.cs
- CancellationTokenRegistration.cs
- OleStrCAMarshaler.cs
- ConfigsHelper.cs
- Button.cs
- AnnotationResourceCollection.cs
- CodeVariableReferenceExpression.cs
- Misc.cs
- basenumberconverter.cs
- SocketElement.cs
- CompressStream.cs
- TdsRecordBufferSetter.cs
- Number.cs
- ToolboxCategory.cs
- BaseTemplateCodeDomTreeGenerator.cs
- ButtonBaseAutomationPeer.cs
- Line.cs
- NavigatorInput.cs
- Unit.cs
- RSAPKCS1SignatureFormatter.cs
- TextElementEnumerator.cs
- HttpCacheVary.cs
- documentsequencetextpointer.cs
- PerformanceCounter.cs
- Executor.cs
- FactoryGenerator.cs
- EventLogInternal.cs
- DBDataPermission.cs