Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / WinForms / Managed / System / WinForms / ButtonInternal / RadioButtonFlatAdapter.cs / 1 / RadioButtonFlatAdapter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms.ButtonInternal { using System; using System.Diagnostics; using System.Drawing; using System.Drawing.Drawing2D; using System.Drawing.Imaging; using System.Drawing.Text; using System.Windows.Forms; internal class RadioButtonFlatAdapter : RadioButtonBaseAdapter { protected const int flatCheckSize = 12; internal RadioButtonFlatAdapter(ButtonBase control) : base(control) {} internal override void PaintDown(PaintEventArgs e, CheckState state) { if (Control.Appearance == Appearance.Button) { ButtonFlatAdapter adapter = new ButtonFlatAdapter(Control); adapter.PaintDown(e, Control.Checked ? CheckState.Checked : CheckState.Unchecked); return; } ColorData colors = PaintFlatRender(e.Graphics).Calculate(); if (Control.Enabled) { PaintFlatWorker(e, colors.windowText, colors.highlight, colors.windowFrame, colors); } else { PaintFlatWorker(e, colors.buttonShadow, colors.buttonFace, colors.buttonShadow, colors); } } internal override void PaintOver(PaintEventArgs e, CheckState state) { if (Control.Appearance == Appearance.Button) { ButtonFlatAdapter adapter = new ButtonFlatAdapter(Control); adapter.PaintOver(e, Control.Checked ? CheckState.Checked : CheckState.Unchecked); return; } ColorData colors = PaintFlatRender(e.Graphics).Calculate(); if (Control.Enabled) { PaintFlatWorker(e, colors.windowText, colors.lowHighlight, colors.windowFrame, colors); } else { PaintFlatWorker(e, colors.buttonShadow, colors.buttonFace, colors.buttonShadow, colors); } } internal override void PaintUp(PaintEventArgs e, CheckState state) { if (Control.Appearance == Appearance.Button) { ButtonFlatAdapter adapter = new ButtonFlatAdapter(Control); adapter.PaintUp(e, Control.Checked ? CheckState.Checked : CheckState.Unchecked); return; } ColorData colors = PaintFlatRender(e.Graphics).Calculate(); if (Control.Enabled) { PaintFlatWorker(e, colors.windowText, colors.highlight, colors.windowFrame, colors); } else { PaintFlatWorker(e, colors.buttonShadow, colors.buttonFace, colors.buttonShadow, colors); } } void PaintFlatWorker(PaintEventArgs e, Color checkColor, Color checkBackground, Color checkBorder, ColorData colors) { System.Drawing.Graphics g = e.Graphics; LayoutData layout = Layout(e).Layout(); PaintButtonBackground(e, Control.ClientRectangle, null); PaintImage(e, layout); DrawCheckFlat(e, layout, checkColor, colors.options.highContrast ? colors.buttonFace : checkBackground, checkBorder); PaintField(e, layout, colors, checkColor, true); } #region Layout protected override ButtonBaseAdapter CreateButtonAdapter() { return new ButtonFlatAdapter(Control); } // RadioButtonPopupLayout also uses this layout for down and over protected override LayoutOptions Layout(PaintEventArgs e) { LayoutOptions layout = CommonLayout(); layout.checkSize = flatCheckSize; layout.shadowedText = false; return layout; } #endregion } } // 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
- GridView.cs
- SignedXmlDebugLog.cs
- WorkflowApplication.cs
- ReadContentAsBinaryHelper.cs
- CssTextWriter.cs
- AppSettingsReader.cs
- EdmToObjectNamespaceMap.cs
- mediaclock.cs
- MetadataResolver.cs
- StringArrayConverter.cs
- RadioButton.cs
- DataTemplate.cs
- WebPartZone.cs
- TableLayoutStyleCollection.cs
- CheckBoxStandardAdapter.cs
- X509ScopedServiceCertificateElementCollection.cs
- ObjectDataSourceMethodEventArgs.cs
- MappedMetaModel.cs
- FontFamilyValueSerializer.cs
- MinimizableAttributeTypeConverter.cs
- ValidationErrorEventArgs.cs
- FlowLayout.cs
- SendParametersContent.cs
- DataGridViewCellPaintingEventArgs.cs
- ObjectDataSourceDisposingEventArgs.cs
- DataGridViewRowDividerDoubleClickEventArgs.cs
- MaskInputRejectedEventArgs.cs
- PreviewPrintController.cs
- MemberDomainMap.cs
- FlowPosition.cs
- AttributeTableBuilder.cs
- PageAdapter.cs
- RepeaterCommandEventArgs.cs
- WorkflowViewService.cs
- WithParamAction.cs
- SQLMoney.cs
- ToggleButtonAutomationPeer.cs
- HttpPostedFileBase.cs
- GeneralTransform2DTo3DTo2D.cs
- XmlSerializer.cs
- TableRow.cs
- Array.cs
- DiagnosticsConfiguration.cs
- UIElementAutomationPeer.cs
- ApplicationActivator.cs
- Double.cs
- XmlSigningNodeWriter.cs
- SimplePropertyEntry.cs
- precedingsibling.cs
- RelOps.cs
- TitleStyle.cs
- HttpFileCollectionWrapper.cs
- RecipientInfo.cs
- SerializationEventsCache.cs
- HtmlInputControl.cs
- EntityWithChangeTrackerStrategy.cs
- TypeToArgumentTypeConverter.cs
- designeractionlistschangedeventargs.cs
- Brush.cs
- KeyConverter.cs
- LinearKeyFrames.cs
- HtmlTable.cs
- ByteAnimation.cs
- Package.cs
- SQLDoubleStorage.cs
- PlaceHolder.cs
- ComponentResourceKey.cs
- ImageCollectionEditor.cs
- VerificationAttribute.cs
- SoapMessage.cs
- EventHandlersStore.cs
- ToolStripPanelRow.cs
- FormViewModeEventArgs.cs
- IgnoreSectionHandler.cs
- DependencyPropertyValueSerializer.cs
- WebConfigurationHostFileChange.cs
- X509ClientCertificateAuthenticationElement.cs
- XmlEventCache.cs
- OdbcEnvironment.cs
- ControlIdConverter.cs
- XamlBrushSerializer.cs
- XmlDownloadManager.cs
- RenderCapability.cs
- UniqueIdentifierService.cs
- InkCanvasAutomationPeer.cs
- DataPagerFieldCommandEventArgs.cs
- DbDataAdapter.cs
- Funcletizer.cs
- SeverityFilter.cs
- ContainsRowNumberChecker.cs
- FixedSOMTextRun.cs
- BCryptSafeHandles.cs
- DataGridViewRowCollection.cs
- DllNotFoundException.cs
- SeverityFilter.cs
- DbParameterCollectionHelper.cs
- TemplateModeChangedEventArgs.cs
- IsolatedStorageException.cs
- LostFocusEventManager.cs
- BitConverter.cs