Code:
/ DotNET / DotNET / 8.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
- CodeDOMProvider.cs
- ParameterElementCollection.cs
- ParameterReplacerVisitor.cs
- columnmapfactory.cs
- XmlNode.cs
- _UncName.cs
- AspNetCacheProfileAttribute.cs
- TableCellCollection.cs
- Compress.cs
- Transform.cs
- Delegate.cs
- Permission.cs
- RoleGroupCollection.cs
- COSERVERINFO.cs
- SymLanguageType.cs
- XmlILAnnotation.cs
- ApplicationDirectory.cs
- OleDbErrorCollection.cs
- CodeTypeDeclaration.cs
- SelectionListComponentEditor.cs
- ConcurrentBag.cs
- DbConnectionHelper.cs
- DPCustomTypeDescriptor.cs
- ReaderContextStackData.cs
- FormViewInsertEventArgs.cs
- PrintDialog.cs
- HandlerMappingMemo.cs
- SqlWebEventProvider.cs
- DispatcherOperation.cs
- TextTreeTextBlock.cs
- CanExecuteRoutedEventArgs.cs
- ExecutionContext.cs
- HeaderCollection.cs
- StackSpiller.Generated.cs
- WinEventQueueItem.cs
- TraceSection.cs
- Application.cs
- PolyBezierSegment.cs
- TemplateControlCodeDomTreeGenerator.cs
- FileDialogCustomPlace.cs
- DataControlReferenceCollection.cs
- RecipientIdentity.cs
- ArraySubsetEnumerator.cs
- DataExpression.cs
- Assert.cs
- SkipQueryOptionExpression.cs
- ProcessDesigner.cs
- XmlQueryOutput.cs
- DataSvcMapFile.cs
- RuntimeResourceSet.cs
- SelectingProviderEventArgs.cs
- NavigationProgressEventArgs.cs
- MetadataPropertyCollection.cs
- RenderData.cs
- PaperSize.cs
- CheckPair.cs
- PassportPrincipal.cs
- UnsafeNativeMethods.cs
- EventLogPermissionHolder.cs
- Authorization.cs
- XsdDuration.cs
- ZipIOCentralDirectoryFileHeader.cs
- WrapperSecurityCommunicationObject.cs
- StateBag.cs
- RemoteCryptoRsaServiceProvider.cs
- StyleSheetDesigner.cs
- ListViewItem.cs
- InputScopeManager.cs
- FixedPageProcessor.cs
- BeginEvent.cs
- EventTask.cs
- SqlTypeConverter.cs
- Util.cs
- GenericPrincipal.cs
- StateWorkerRequest.cs
- SafeFreeMibTable.cs
- DictionaryGlobals.cs
- RowCache.cs
- GridProviderWrapper.cs
- ListViewItem.cs
- PostBackOptions.cs
- X509AsymmetricSecurityKey.cs
- MetadataItemCollectionFactory.cs
- DesignTableCollection.cs
- DataGridViewLayoutData.cs
- ToolStripContentPanelRenderEventArgs.cs
- SafeIUnknown.cs
- Transform3DGroup.cs
- xmlformatgeneratorstatics.cs
- _BufferOffsetSize.cs
- TemplatedWizardStep.cs
- ObjRef.cs
- DesignerMetadata.cs
- recordstatescratchpad.cs
- ResponseBodyWriter.cs
- TextTreeInsertUndoUnit.cs
- infer.cs
- processwaithandle.cs
- DesigntimeLicenseContext.cs
- SqlSelectClauseBuilder.cs