Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ProxyHwnd.cs
- ComponentResourceManager.cs
- DataGridViewCell.cs
- SmtpClient.cs
- XamlReaderHelper.cs
- DispatcherExceptionFilterEventArgs.cs
- DeclarativeCatalogPart.cs
- Quaternion.cs
- QueryConverter.cs
- TableHeaderCell.cs
- UnsafeNativeMethods.cs
- TimeSpanValidatorAttribute.cs
- ParserStreamGeometryContext.cs
- RtfToken.cs
- ScrollItemPatternIdentifiers.cs
- DiscoveryClientRequestChannel.cs
- ResourceDisplayNameAttribute.cs
- SmtpNegotiateAuthenticationModule.cs
- ListViewItemCollectionEditor.cs
- DomNameTable.cs
- FontSource.cs
- HtmlTitle.cs
- BamlCollectionHolder.cs
- ContentElement.cs
- SiteMapNodeItem.cs
- ObjectQuery.cs
- SamlAction.cs
- HelloMessageCD1.cs
- ResXBuildProvider.cs
- HashCodeCombiner.cs
- GacUtil.cs
- DoubleStorage.cs
- GZipDecoder.cs
- AlgoModule.cs
- ComponentManagerBroker.cs
- PrintDialog.cs
- GenericUriParser.cs
- ServiceNameCollection.cs
- ParameterBuilder.cs
- ClientScriptManager.cs
- UriSection.cs
- StylusPointDescription.cs
- DeviceContext2.cs
- StackOverflowException.cs
- TextTreeInsertElementUndoUnit.cs
- EditingScopeUndoUnit.cs
- XmlExtensionFunction.cs
- ServerValidateEventArgs.cs
- TransactionException.cs
- EmbeddedMailObjectsCollection.cs
- RootProfilePropertySettingsCollection.cs
- IRCollection.cs
- NavigationProperty.cs
- KeyValuePair.cs
- PolicyStatement.cs
- CommonProperties.cs
- Span.cs
- NonVisualControlAttribute.cs
- FrameAutomationPeer.cs
- ColumnHeader.cs
- CompoundFileStreamReference.cs
- ContainerAction.cs
- SystemParameters.cs
- Translator.cs
- TextElement.cs
- RefExpr.cs
- ProcessHostServerConfig.cs
- RoleGroupCollection.cs
- HandlerBase.cs
- RegionData.cs
- CodeMemberField.cs
- HttpRequestWrapper.cs
- Dictionary.cs
- COM2FontConverter.cs
- LayoutSettings.cs
- ImageField.cs
- Line.cs
- DisplayNameAttribute.cs
- RadioButtonPopupAdapter.cs
- OracleLob.cs
- ProfileSection.cs
- RsaKeyGen.cs
- LeafCellTreeNode.cs
- WebPartConnectionsConnectVerb.cs
- AssemblyGen.cs
- InputScopeConverter.cs
- ArraySubsetEnumerator.cs
- PluggableProtocol.cs
- Binding.cs
- ItemCollection.cs
- UserControlDesigner.cs
- Symbol.cs
- LogicalExpressionTypeConverter.cs
- querybuilder.cs
- StylusPointPropertyInfo.cs
- SqlConnectionManager.cs
- ToolStripContentPanel.cs
- CellCreator.cs
- DrawingContextDrawingContextWalker.cs
- Exceptions.cs