Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / WinForms / Managed / System / WinForms / ButtonInternal / CheckBoxFlatAdapter.cs / 1 / 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 = 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. // //----------------------------------------------------------------------------- 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 = flatCheckSize; 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
- SystemIPGlobalProperties.cs
- PropertyChangingEventArgs.cs
- PolyBezierSegmentFigureLogic.cs
- RowsCopiedEventArgs.cs
- bidPrivateBase.cs
- MaskInputRejectedEventArgs.cs
- HMACSHA384.cs
- XmlWriter.cs
- DataGridViewCellFormattingEventArgs.cs
- RotateTransform.cs
- AsyncStreamReader.cs
- DictionaryChange.cs
- LicenseException.cs
- StreamMarshaler.cs
- OlePropertyStructs.cs
- AnnotationDocumentPaginator.cs
- BitStream.cs
- SupportsEventValidationAttribute.cs
- ExtendedProtectionPolicyElement.cs
- SplashScreen.cs
- BooleanConverter.cs
- Soap12ServerProtocol.cs
- PauseStoryboard.cs
- DescendantQuery.cs
- RenderData.cs
- ObjectIDGenerator.cs
- ListenerConfig.cs
- QueryInterceptorAttribute.cs
- Rect.cs
- SamlAuthenticationStatement.cs
- AutomationElementIdentifiers.cs
- WebControlsSection.cs
- AccessDataSourceView.cs
- WorkerRequest.cs
- ReflectionTypeLoadException.cs
- XhtmlConformanceSection.cs
- GridPatternIdentifiers.cs
- WebConfigurationHost.cs
- SplitContainer.cs
- PropertyInfoSet.cs
- EntityDataSourceState.cs
- Adorner.cs
- CachedCompositeFamily.cs
- OleDbReferenceCollection.cs
- XmlIlGenerator.cs
- ValuePattern.cs
- SwitchAttribute.cs
- CustomAttributeSerializer.cs
- RenderDataDrawingContext.cs
- nulltextcontainer.cs
- FileSystemWatcher.cs
- BaseInfoTable.cs
- ValueConversionAttribute.cs
- DocumentViewerAutomationPeer.cs
- ControlPaint.cs
- FontSizeConverter.cs
- SecurityValidationBehavior.cs
- SystemFonts.cs
- WindowsListViewItemStartMenu.cs
- PlatformCulture.cs
- Rfc2898DeriveBytes.cs
- ContentValidator.cs
- ViewManager.cs
- OutOfMemoryException.cs
- PersistenceProviderBehavior.cs
- UIElementPropertyUndoUnit.cs
- ListDataBindEventArgs.cs
- ConfigurationManagerHelper.cs
- PasswordTextContainer.cs
- XPathNodeList.cs
- SafeReversePInvokeHandle.cs
- DataBoundControlAdapter.cs
- HtmlShim.cs
- SqlServer2KCompatibilityCheck.cs
- ConfigXmlReader.cs
- Token.cs
- CheckoutException.cs
- ClientUrlResolverWrapper.cs
- LiteralControl.cs
- UriExt.cs
- CounterCreationDataCollection.cs
- MatrixUtil.cs
- DependsOnAttribute.cs
- ExceptionTrace.cs
- BamlRecordReader.cs
- InvalidAsynchronousStateException.cs
- CaretElement.cs
- WindowsToolbarAsMenu.cs
- DefaultHttpHandler.cs
- CodeTypeReferenceExpression.cs
- DataGridViewLayoutData.cs
- ProviderConnectionPointCollection.cs
- Visitors.cs
- FragmentQueryProcessor.cs
- AspCompat.cs
- TypeToArgumentTypeConverter.cs
- Documentation.cs
- DynamicDataExtensions.cs
- ServiceOperationDetailViewControl.cs
- XPathSelfQuery.cs