Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / WinForms / Managed / System / WinForms / ButtonInternal / RadioButtonStandardAdapter.cs / 1 / RadioButtonStandardAdapter.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 RadioButtonStandardAdapter : RadioButtonBaseAdapter {
internal RadioButtonStandardAdapter(ButtonBase control) : base(control) {}
internal override void PaintUp(PaintEventArgs e, CheckState state) {
if (Control.Appearance == Appearance.Button) {
ButtonAdapter.PaintUp(e, Control.Checked ? CheckState.Checked : CheckState.Unchecked);
}
else {
ColorData colors = PaintRender(e.Graphics).Calculate();
LayoutData layout = Layout(e).Layout();
PaintButtonBackground(e, Control.ClientRectangle, null);
PaintImage(e, layout);
DrawCheckBox(e, layout);
PaintField(e, layout, colors, colors.windowText, true);
}
}
internal override void PaintDown(PaintEventArgs e, CheckState state) {
if (Control.Appearance == Appearance.Button) {
ButtonAdapter.PaintDown(e, Control.Checked ? CheckState.Checked : CheckState.Unchecked);
}
else {
PaintUp(e, state);
}
}
internal override void PaintOver(PaintEventArgs e, CheckState state) {
if (Control.Appearance == Appearance.Button) {
ButtonAdapter.PaintOver(e, Control.Checked ? CheckState.Checked : CheckState.Unchecked);
}
else {
PaintUp(e, state);
}
}
private new ButtonStandardAdapter ButtonAdapter {
get {
return ((ButtonStandardAdapter)base.ButtonAdapter);
}
}
protected override ButtonBaseAdapter CreateButtonAdapter() {
return new ButtonStandardAdapter(Control);
}
#region Temp
protected override LayoutOptions Layout(PaintEventArgs e) {
LayoutOptions layout = CommonLayout();
layout.hintTextUp = false;
layout.everettButtonCompat = !Application.RenderWithVisualStyles;
// VSWhidbey 420870
if (Application.RenderWithVisualStyles) {
using (Graphics g = WindowsFormsUtils.CreateMeasurementGraphics()) {
layout.checkSize = RadioButtonRenderer.GetGlyphSize(g, RadioButtonRenderer.ConvertFromButtonState(GetState(), Control.MouseIsOver)).Width;
}
}
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 RadioButtonStandardAdapter : RadioButtonBaseAdapter {
internal RadioButtonStandardAdapter(ButtonBase control) : base(control) {}
internal override void PaintUp(PaintEventArgs e, CheckState state) {
if (Control.Appearance == Appearance.Button) {
ButtonAdapter.PaintUp(e, Control.Checked ? CheckState.Checked : CheckState.Unchecked);
}
else {
ColorData colors = PaintRender(e.Graphics).Calculate();
LayoutData layout = Layout(e).Layout();
PaintButtonBackground(e, Control.ClientRectangle, null);
PaintImage(e, layout);
DrawCheckBox(e, layout);
PaintField(e, layout, colors, colors.windowText, true);
}
}
internal override void PaintDown(PaintEventArgs e, CheckState state) {
if (Control.Appearance == Appearance.Button) {
ButtonAdapter.PaintDown(e, Control.Checked ? CheckState.Checked : CheckState.Unchecked);
}
else {
PaintUp(e, state);
}
}
internal override void PaintOver(PaintEventArgs e, CheckState state) {
if (Control.Appearance == Appearance.Button) {
ButtonAdapter.PaintOver(e, Control.Checked ? CheckState.Checked : CheckState.Unchecked);
}
else {
PaintUp(e, state);
}
}
private new ButtonStandardAdapter ButtonAdapter {
get {
return ((ButtonStandardAdapter)base.ButtonAdapter);
}
}
protected override ButtonBaseAdapter CreateButtonAdapter() {
return new ButtonStandardAdapter(Control);
}
#region Temp
protected override LayoutOptions Layout(PaintEventArgs e) {
LayoutOptions layout = CommonLayout();
layout.hintTextUp = false;
layout.everettButtonCompat = !Application.RenderWithVisualStyles;
// VSWhidbey 420870
if (Application.RenderWithVisualStyles) {
using (Graphics g = WindowsFormsUtils.CreateMeasurementGraphics()) {
layout.checkSize = RadioButtonRenderer.GetGlyphSize(g, RadioButtonRenderer.ConvertFromButtonState(GetState(), Control.MouseIsOver)).Width;
}
}
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
- InvalidPrinterException.cs
- UserMapPath.cs
- SafeEventHandle.cs
- FrameworkElementFactoryMarkupObject.cs
- SQLInt32Storage.cs
- HitTestWithPointDrawingContextWalker.cs
- WSHttpBindingBaseElement.cs
- WebServiceTypeData.cs
- XamlPoint3DCollectionSerializer.cs
- BinaryNegotiation.cs
- WorkflowApplicationCompletedException.cs
- DataContractSerializerOperationFormatter.cs
- NameValueConfigurationElement.cs
- ConfigurationManagerInternalFactory.cs
- DbConnectionInternal.cs
- Sql8ConformanceChecker.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- RegexWorker.cs
- SiteMapPath.cs
- ViewPort3D.cs
- RealizedColumnsBlock.cs
- OleDbStruct.cs
- DataBoundControl.cs
- SingleStorage.cs
- UnionCodeGroup.cs
- XmlCharType.cs
- TrackingStringDictionary.cs
- SwitchElementsCollection.cs
- ThumbAutomationPeer.cs
- RowType.cs
- ObjectDataSourceFilteringEventArgs.cs
- DEREncoding.cs
- TableLayoutPanelResizeGlyph.cs
- COM2ComponentEditor.cs
- ClientTargetCollection.cs
- LocalizableAttribute.cs
- GroupItemAutomationPeer.cs
- ChangePassword.cs
- TabControl.cs
- FormatPage.cs
- Transform.cs
- FontStyleConverter.cs
- BinaryNode.cs
- XamlTypeMapperSchemaContext.cs
- DetailsViewUpdatedEventArgs.cs
- WebFaultClientMessageInspector.cs
- FontFamilyValueSerializer.cs
- TemplateBindingExtension.cs
- AssemblyBuilderData.cs
- CodeStatementCollection.cs
- _SslSessionsCache.cs
- LayoutDump.cs
- BlockingCollection.cs
- SchemaElementLookUpTableEnumerator.cs
- DESCryptoServiceProvider.cs
- AlignmentYValidation.cs
- ThreadExceptionEvent.cs
- SmtpNegotiateAuthenticationModule.cs
- BrowserCapabilitiesFactoryBase.cs
- EventHandlerList.cs
- GrammarBuilderRuleRef.cs
- HttpServerChannel.cs
- StrokeIntersection.cs
- QueueProcessor.cs
- AmbiguousMatchException.cs
- PenContext.cs
- XmlSchemaCollection.cs
- PropertyOverridesDialog.cs
- ProcessModelInfo.cs
- SelfIssuedAuthProofToken.cs
- CaseStatement.cs
- WebBrowserProgressChangedEventHandler.cs
- BamlVersionHeader.cs
- TemplateColumn.cs
- DependencyPropertyConverter.cs
- CharUnicodeInfo.cs
- XamlPointCollectionSerializer.cs
- DbConnectionInternal.cs
- ImageEditor.cs
- DependencyObjectType.cs
- ScriptIgnoreAttribute.cs
- GradientSpreadMethodValidation.cs
- DBDataPermissionAttribute.cs
- DrawListViewColumnHeaderEventArgs.cs
- XNodeValidator.cs
- CorePropertiesFilter.cs
- Binding.cs
- CapabilitiesState.cs
- XamlWrapperReaders.cs
- RC2CryptoServiceProvider.cs
- SelectorItemAutomationPeer.cs
- RightsManagementPermission.cs
- SamlAuthorityBinding.cs
- SafeNativeMethodsMilCoreApi.cs
- DirectionalLight.cs
- DesignerHelpers.cs
- AsymmetricKeyExchangeFormatter.cs
- DataObjectMethodAttribute.cs
- MethodAccessException.cs
- WebPartConnectionsConfigureVerb.cs