Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / ButtonInternal / RadioButtonFlatAdapter.cs / 1305376 / 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 = (int)(flatCheckSize * GetDpiScaleRatio(e.Graphics)); layout.shadowedText = false; return layout; } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// 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 = (int)(flatCheckSize * GetDpiScaleRatio(e.Graphics)); layout.shadowedText = false; return layout; } #endregion } } // 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
- CodeSnippetExpression.cs
- ActivityDesignerLayoutSerializers.cs
- FragmentNavigationEventArgs.cs
- ClientTargetCollection.cs
- ListControlDataBindingHandler.cs
- DebugView.cs
- EventLogRecord.cs
- HttpCacheVary.cs
- FormViewRow.cs
- ConfigXmlElement.cs
- AppliesToBehaviorDecisionTable.cs
- Hashtable.cs
- ToolStripDropDown.cs
- CanonicalXml.cs
- Deserializer.cs
- PersonalizationStateQuery.cs
- ResourcePart.cs
- InkSerializer.cs
- Vars.cs
- ListViewInsertEventArgs.cs
- RecordManager.cs
- FontUnitConverter.cs
- EditingScope.cs
- Function.cs
- VersionedStreamOwner.cs
- SqlTransaction.cs
- FontDialog.cs
- OleDbErrorCollection.cs
- VersionedStream.cs
- AndCondition.cs
- DrawingContext.cs
- TileBrush.cs
- CheckedListBox.cs
- SourceFileBuildProvider.cs
- QueryServiceConfigHandle.cs
- CollectionViewGroup.cs
- Internal.cs
- FilteredAttributeCollection.cs
- ParameterBuilder.cs
- ImageDrawing.cs
- NoClickablePointException.cs
- SrgsDocumentParser.cs
- KeyValuePair.cs
- NativeMethods.cs
- DefaultProxySection.cs
- GeneralTransform3DGroup.cs
- XamlClipboardData.cs
- XamlToRtfWriter.cs
- SourceElementsCollection.cs
- InstallerTypeAttribute.cs
- SqlOuterApplyReducer.cs
- LocalizationComments.cs
- WorkflowInstanceAbortedRecord.cs
- ImageMapEventArgs.cs
- MouseEventArgs.cs
- RequestQueue.cs
- MsmqTransportBindingElement.cs
- GridViewCancelEditEventArgs.cs
- MouseWheelEventArgs.cs
- Type.cs
- ConfigXmlDocument.cs
- ConfigsHelper.cs
- IProvider.cs
- PathFigureCollection.cs
- ReadonlyMessageFilter.cs
- LinqDataSourceUpdateEventArgs.cs
- CommandLineParser.cs
- ModuleConfigurationInfo.cs
- ProjectionCamera.cs
- EntityContainerEntitySet.cs
- ValidatingReaderNodeData.cs
- PenThreadWorker.cs
- BaseDataBoundControlDesigner.cs
- DesignerForm.cs
- RequestBringIntoViewEventArgs.cs
- PassportAuthenticationModule.cs
- UnmanagedMemoryStream.cs
- TogglePattern.cs
- TreeNodeEventArgs.cs
- GetReadStreamResult.cs
- DataGridViewRowCancelEventArgs.cs
- CompositeTypefaceMetrics.cs
- FilterQuery.cs
- StreamWriter.cs
- ReaderWriterLock.cs
- XmlEventCache.cs
- SiteMapNodeCollection.cs
- ContactManager.cs
- MetadataArtifactLoaderCompositeResource.cs
- TreeWalker.cs
- TextEffect.cs
- DeviceSpecificChoiceCollection.cs
- ProxyAttribute.cs
- UserControl.cs
- BinaryReader.cs
- SafeRightsManagementHandle.cs
- Wildcard.cs
- UTF32Encoding.cs
- Exception.cs
- TableProviderWrapper.cs