Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / InheritanceUI.cs / 1 / InheritanceUI.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Windows.Forms.Design { using System; using System.ComponentModel; using System.ComponentModel.Design; using System.Design; using System.Drawing; using System.Diagnostics; using System.Windows.Forms; ////// This class handles the user interface for inherited components. /// internal class InheritanceUI { private static Bitmap inheritanceGlyph; private static Rectangle inheritanceGlyphRect; private ToolTip tooltip; ////// The bitmap we use to show inheritance. /// public Bitmap InheritanceGlyph { get { if (inheritanceGlyph == null) { inheritanceGlyph = new Bitmap(typeof(InheritanceUI), "InheritedGlyph.bmp"); inheritanceGlyph.MakeTransparent(); } return inheritanceGlyph; } } ////// The rectangle surrounding the glyph. /// public Rectangle InheritanceGlyphRectangle { get { if (inheritanceGlyphRect == Rectangle.Empty) { Size size = InheritanceGlyph.Size; inheritanceGlyphRect = new Rectangle(0, 0, size.Width, size.Height); } return inheritanceGlyphRect; } } ////// Adds an inherited control to our list. This creates a tool tip for that /// control. /// public void AddInheritedControl(Control c, InheritanceLevel level) { if (tooltip == null) { tooltip = new ToolTip(); tooltip.ShowAlways = true; } Debug.Assert(level != InheritanceLevel.NotInherited, "This should only be called for inherited components."); string text; if (level == InheritanceLevel.InheritedReadOnly) { text = SR.GetString(SR.DesignerInheritedReadOnly); } else { text = SR.GetString(SR.DesignerInherited); } tooltip.SetToolTip(c, text); // Also, set all of its non-sited children foreach(Control child in c.Controls) { if (child.Site == null) { tooltip.SetToolTip(child, text); } } } public void Dispose() { if (tooltip != null) { tooltip.Dispose(); } } ////// Removes a previously added inherited control. /// public void RemoveInheritedControl(Control c) { if (tooltip != null && tooltip.GetToolTip(c).Length > 0) { tooltip.SetToolTip(c, null); // Also, set all of its non-sited children foreach(Control child in c.Controls) { if (child.Site == null) { tooltip.SetToolTip(child, null); } } } } } } // 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
- ThicknessAnimation.cs
- AnnotationResourceCollection.cs
- HttpModuleCollection.cs
- QilInvokeLateBound.cs
- TextPatternIdentifiers.cs
- WebPartConnectionsCancelVerb.cs
- JoinGraph.cs
- InputLanguageSource.cs
- ProfessionalColorTable.cs
- DispatcherEventArgs.cs
- Attributes.cs
- RelationshipType.cs
- FixedBufferAttribute.cs
- BaseCodeDomTreeGenerator.cs
- SizeChangedEventArgs.cs
- DbConnectionHelper.cs
- InputLanguageCollection.cs
- ReadOnlyCollection.cs
- RequestCacheEntry.cs
- TileBrush.cs
- UnionExpr.cs
- ServiceHostFactory.cs
- Int32.cs
- RestHandlerFactory.cs
- HostVisual.cs
- ImmutableObjectAttribute.cs
- DBDataPermission.cs
- CodeMethodReturnStatement.cs
- RecipientInfo.cs
- EmptyEnumerator.cs
- XmlSchemaDocumentation.cs
- XhtmlBasicTextViewAdapter.cs
- Events.cs
- SmtpFailedRecipientException.cs
- TextEncodedRawTextWriter.cs
- WebPartCancelEventArgs.cs
- StringFreezingAttribute.cs
- BCLDebug.cs
- SynchronizedDispatch.cs
- QueryOutputWriterV1.cs
- ContainerCodeDomSerializer.cs
- EventsTab.cs
- SettingsSection.cs
- DefaultAutoFieldGenerator.cs
- SignerInfo.cs
- ResourceExpression.cs
- ValidationEventArgs.cs
- Filter.cs
- AssemblyAssociatedContentFileAttribute.cs
- MsmqChannelFactory.cs
- DataRelation.cs
- JulianCalendar.cs
- ImageDrawing.cs
- Configuration.cs
- sortedlist.cs
- LocatorPart.cs
- WebRequest.cs
- Point4DValueSerializer.cs
- OciHandle.cs
- FontWeightConverter.cs
- HttpCachePolicy.cs
- Mappings.cs
- DesignerActionHeaderItem.cs
- DiscoveryServiceExtension.cs
- DiffuseMaterial.cs
- RelationshipType.cs
- LabelEditEvent.cs
- InputReferenceExpression.cs
- EndGetFileNameFromUserRequest.cs
- HitTestParameters.cs
- SessionConnectionReader.cs
- RelatedView.cs
- FileUpload.cs
- SoapAttributes.cs
- OrderedDictionary.cs
- KeyValueConfigurationElement.cs
- ModuleElement.cs
- GridViewColumnHeaderAutomationPeer.cs
- QilTargetType.cs
- Composition.cs
- ValidationError.cs
- PlainXmlWriter.cs
- ToolZone.cs
- ValuePattern.cs
- HighlightOverlayGlyph.cs
- DoubleLinkList.cs
- SchemaComplexType.cs
- ScriptingRoleServiceSection.cs
- ReadOnlyCollectionBase.cs
- ContentPlaceHolder.cs
- InvokeMethodActivity.cs
- InternalTypeHelper.cs
- EventLogPermissionEntryCollection.cs
- InheritanceService.cs
- SignerInfo.cs
- ItemChangedEventArgs.cs
- BigInt.cs
- TextRangeSerialization.cs
- ControlLocalizer.cs
- MSAANativeProvider.cs