Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / ButtonInternal / CheckBoxFlatAdapter.cs / 1305376 / CheckBoxFlatAdapter.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 CheckBoxFlatAdapter : CheckBoxBaseAdapter { internal CheckBoxFlatAdapter(ButtonBase control) : base(control) {} internal override void PaintDown(PaintEventArgs e, CheckState state) { if (Control.Appearance == Appearance.Button) { ButtonAdapter.PaintDown(e, Control.CheckState); 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) { ButtonAdapter.PaintOver(e, Control.CheckState); 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) { ButtonAdapter.PaintUp(e, Control.CheckState); 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); } } private 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, colors); PaintField(e, layout, colors, checkColor, true); } #region Layout private new ButtonFlatAdapter ButtonAdapter { get { return ((ButtonFlatAdapter)base.ButtonAdapter); } } protected override ButtonBaseAdapter CreateButtonAdapter() { return new ButtonFlatAdapter(Control); } 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 CheckBoxFlatAdapter : CheckBoxBaseAdapter { internal CheckBoxFlatAdapter(ButtonBase control) : base(control) {} internal override void PaintDown(PaintEventArgs e, CheckState state) { if (Control.Appearance == Appearance.Button) { ButtonAdapter.PaintDown(e, Control.CheckState); 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) { ButtonAdapter.PaintOver(e, Control.CheckState); 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) { ButtonAdapter.PaintUp(e, Control.CheckState); 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); } } private 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, colors); PaintField(e, layout, colors, checkColor, true); } #region Layout private new ButtonFlatAdapter ButtonAdapter { get { return ((ButtonFlatAdapter)base.ButtonAdapter); } } protected override ButtonBaseAdapter CreateButtonAdapter() { return new ButtonFlatAdapter(Control); } 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
- altserialization.cs
- MemberDescriptor.cs
- TextEditorTables.cs
- ListViewItem.cs
- ProfileService.cs
- CodeVariableReferenceExpression.cs
- CustomAttributeSerializer.cs
- IResourceProvider.cs
- ResourceExpressionBuilder.cs
- XmlSchemaAnyAttribute.cs
- TextEditorSpelling.cs
- AutoCompleteStringCollection.cs
- NavigationExpr.cs
- DSASignatureDeformatter.cs
- XmlCharCheckingWriter.cs
- SafeHandles.cs
- HtmlLink.cs
- HttpServerProtocol.cs
- HashMembershipCondition.cs
- RegistrationServices.cs
- InternalResources.cs
- NotImplementedException.cs
- tooltip.cs
- TypeSystemProvider.cs
- EventData.cs
- TempEnvironment.cs
- PageWrapper.cs
- JoinCqlBlock.cs
- ToolTip.cs
- QueryCacheManager.cs
- GPPOINTF.cs
- SelectionEditor.cs
- PenLineJoinValidation.cs
- TextServicesProperty.cs
- IssuedTokenClientBehaviorsElement.cs
- CorrelationToken.cs
- PersistChildrenAttribute.cs
- invalidudtexception.cs
- UndoUnit.cs
- WindowsBrush.cs
- CodePrimitiveExpression.cs
- EmptyWithCancelationCheckWorkItem.cs
- OuterGlowBitmapEffect.cs
- ProgressBarRenderer.cs
- InlineUIContainer.cs
- Span.cs
- HiddenField.cs
- followingsibling.cs
- WebRequest.cs
- DataSourceView.cs
- HttpWebResponse.cs
- TextParagraph.cs
- RegistrationServices.cs
- xml.cs
- HMACSHA512.cs
- ShaperBuffers.cs
- ViewStateException.cs
- DataServiceClientException.cs
- SqlRecordBuffer.cs
- InsufficientMemoryException.cs
- __ConsoleStream.cs
- DrawingImage.cs
- PropertyMapper.cs
- RuleSettings.cs
- TextPattern.cs
- MemberDescriptor.cs
- Span.cs
- SectionInput.cs
- FrameworkContentElement.cs
- LockingPersistenceProvider.cs
- ToggleButton.cs
- BinaryEditor.cs
- PairComparer.cs
- HtmlContainerControl.cs
- HtmlMeta.cs
- ListViewCancelEventArgs.cs
- EntityDataSource.cs
- CodeTryCatchFinallyStatement.cs
- OutKeywords.cs
- ImageList.cs
- ToolZone.cs
- TypeSemantics.cs
- OrderingQueryOperator.cs
- PointHitTestResult.cs
- ErrorCodes.cs
- HtmlButton.cs
- FormViewUpdateEventArgs.cs
- CommonRemoteMemoryBlock.cs
- ToolStripDesignerAvailabilityAttribute.cs
- PageBreakRecord.cs
- IndicShape.cs
- TreeBuilder.cs
- XmlSchemaInclude.cs
- baseaxisquery.cs
- querybuilder.cs
- WmlPhoneCallAdapter.cs
- FixedTextContainer.cs
- XmlDeclaration.cs
- CreateUserWizardAutoFormat.cs
- ShortcutKeysEditor.cs