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
- MenuEventArgs.cs
- controlskin.cs
- ColorContextHelper.cs
- PointAnimationUsingKeyFrames.cs
- SymDocumentType.cs
- IdnElement.cs
- ToolStripGrip.cs
- odbcmetadatacolumnnames.cs
- Tool.cs
- OdbcHandle.cs
- PackagePart.cs
- ControlBindingsCollection.cs
- ListControlDesigner.cs
- StateMachineAction.cs
- ResourceReferenceExpression.cs
- Socket.cs
- diagnosticsswitches.cs
- CodeMemberProperty.cs
- JsonServiceDocumentSerializer.cs
- RuntimeCompatibilityAttribute.cs
- _NestedSingleAsyncResult.cs
- SoapIgnoreAttribute.cs
- FontWeight.cs
- IteratorFilter.cs
- RotateTransform.cs
- documentsequencetextview.cs
- CodeComment.cs
- SafeSystemMetrics.cs
- XslAst.cs
- RangeExpression.cs
- MenuItemAutomationPeer.cs
- OrderedDictionaryStateHelper.cs
- CodeFieldReferenceExpression.cs
- PropertyFilterAttribute.cs
- Int64.cs
- SamlAdvice.cs
- ProgramNode.cs
- IisTraceListener.cs
- SafeProcessHandle.cs
- DBSchemaTable.cs
- SoapReflector.cs
- Module.cs
- OleDbTransaction.cs
- ItemDragEvent.cs
- QuadraticBezierSegment.cs
- PageContentCollection.cs
- Debug.cs
- InputProcessorProfiles.cs
- EnumerableRowCollectionExtensions.cs
- WizardSideBarListControlItemEventArgs.cs
- Evaluator.cs
- xsdvalidator.cs
- Literal.cs
- ConfigurationManagerInternalFactory.cs
- QuaternionKeyFrameCollection.cs
- HMACSHA1.cs
- XPathPatternBuilder.cs
- XmlSerializationReader.cs
- Style.cs
- GcHandle.cs
- ConstructorBuilder.cs
- GlobalProxySelection.cs
- StringSorter.cs
- FillBehavior.cs
- OleServicesContext.cs
- DesignConnection.cs
- HWStack.cs
- XmlSerializationGeneratedCode.cs
- TransportContext.cs
- DesignTimeTemplateParser.cs
- ApplicationException.cs
- HiddenFieldPageStatePersister.cs
- InvokeHandlers.cs
- DataGridViewCellEventArgs.cs
- DBAsyncResult.cs
- ExpressionVisitor.cs
- VarInfo.cs
- LocatorBase.cs
- FrameworkTemplate.cs
- IdnElement.cs
- Light.cs
- Trace.cs
- PrintSchema.cs
- Encoding.cs
- NameTable.cs
- DatatypeImplementation.cs
- PropertyGeneratedEventArgs.cs
- AppearanceEditorPart.cs
- SoapIncludeAttribute.cs
- WebPartVerb.cs
- OperationCanceledException.cs
- SystemUnicastIPAddressInformation.cs
- SkinBuilder.cs
- ObjectContext.cs
- RSAOAEPKeyExchangeDeformatter.cs
- ReturnValue.cs
- SByteStorage.cs
- XmlSchemaGroupRef.cs
- VariableQuery.cs
- ComponentResourceManager.cs