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
- SynchronizingStream.cs
- Mouse.cs
- DataGridViewTextBoxColumn.cs
- VariableAction.cs
- OrderByQueryOptionExpression.cs
- HttpModulesSection.cs
- GetIsBrowserClientRequest.cs
- DeferredSelectedIndexReference.cs
- ConfigXmlComment.cs
- DefaultTypeArgumentAttribute.cs
- ContainerUIElement3D.cs
- ZipPackagePart.cs
- ContextMenuStripGroupCollection.cs
- EntryWrittenEventArgs.cs
- ClosableStream.cs
- StringReader.cs
- TextElement.cs
- SqlProvider.cs
- ConditionValidator.cs
- ConnectionStringSettings.cs
- XmlCustomFormatter.cs
- CodeActivityContext.cs
- EventsTab.cs
- QEncodedStream.cs
- EmptyEnumerable.cs
- MetadataArtifactLoaderFile.cs
- ManagementBaseObject.cs
- BypassElement.cs
- MULTI_QI.cs
- DataIdProcessor.cs
- PageSetupDialog.cs
- TextEditorCharacters.cs
- StrokeNode.cs
- ExtensionsSection.cs
- Baml2006KnownTypes.cs
- ExpressionLexer.cs
- XmlHierarchyData.cs
- Graphics.cs
- PlatformNotSupportedException.cs
- DataControlPagerLinkButton.cs
- Resources.Designer.cs
- PermissionAttributes.cs
- OLEDB_Util.cs
- CommandManager.cs
- DecoderNLS.cs
- GenericUriParser.cs
- Transform.cs
- DocobjHost.cs
- CodeCompiler.cs
- BulletedListEventArgs.cs
- WebPartActionVerb.cs
- CatalogZoneBase.cs
- RectangleConverter.cs
- BaseCodeDomTreeGenerator.cs
- DbConnectionClosed.cs
- Message.cs
- Metadata.cs
- TextSegment.cs
- BuilderInfo.cs
- SaveFileDialogDesigner.cs
- SystemResourceHost.cs
- NetSectionGroup.cs
- DataServiceProcessingPipelineEventArgs.cs
- ObjectHelper.cs
- RtfFormatStack.cs
- MetabaseServerConfig.cs
- CqlIdentifiers.cs
- CodeSnippetExpression.cs
- DispatcherProcessingDisabled.cs
- ConnectionStringSettings.cs
- RunClient.cs
- XmlSchemaInfo.cs
- InternalConfigSettingsFactory.cs
- FindCriteria.cs
- TextBlock.cs
- FormViewRow.cs
- ObjectDataSourceFilteringEventArgs.cs
- SqlClientWrapperSmiStreamChars.cs
- TypefaceMetricsCache.cs
- UpdatePanelControlTrigger.cs
- GridPatternIdentifiers.cs
- ReceiveContextCollection.cs
- WCFBuildProvider.cs
- CommandEventArgs.cs
- FixedDocumentPaginator.cs
- ProcessRequestArgs.cs
- _ScatterGatherBuffers.cs
- GenerateHelper.cs
- CrossAppDomainChannel.cs
- D3DImage.cs
- DocumentGridPage.cs
- figurelengthconverter.cs
- SplitterEvent.cs
- StdValidatorsAndConverters.cs
- BaseAsyncResult.cs
- FileRegion.cs
- LineUtil.cs
- StandardToolWindows.cs
- VersionPair.cs
- PointIndependentAnimationStorage.cs