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
- HtmlInputControl.cs
- Camera.cs
- TextEditorMouse.cs
- StylusPointProperty.cs
- FastEncoderWindow.cs
- LinkButton.cs
- QueryAsyncResult.cs
- FixedSOMPageConstructor.cs
- Selector.cs
- RequestQueryParser.cs
- Int32Collection.cs
- TextBounds.cs
- NullableDecimalMinMaxAggregationOperator.cs
- CurrentChangingEventManager.cs
- FunctionMappingTranslator.cs
- SecurityContext.cs
- sqlpipe.cs
- Schema.cs
- MetadataSerializer.cs
- ValidationError.cs
- RijndaelManagedTransform.cs
- DataGridViewColumnDesigner.cs
- MailMessage.cs
- IPEndPoint.cs
- ListBoxItem.cs
- CustomExpression.cs
- PathTooLongException.cs
- XmlDataSourceNodeDescriptor.cs
- ReferencedCollectionType.cs
- QilReference.cs
- COM2ExtendedTypeConverter.cs
- ReadOnlyDictionary.cs
- TextLineBreak.cs
- CollectionEditVerbManager.cs
- CompilerGlobalScopeAttribute.cs
- XmlSchemaSet.cs
- PaintValueEventArgs.cs
- AlignmentYValidation.cs
- BitStack.cs
- ProjectionCamera.cs
- Lease.cs
- DropDownButton.cs
- Bidi.cs
- XamlLoadErrorInfo.cs
- Decimal.cs
- ScriptControlDescriptor.cs
- AssemblyAttributesGoHere.cs
- SqlRecordBuffer.cs
- DescendantQuery.cs
- MediaScriptCommandRoutedEventArgs.cs
- OleDbException.cs
- SqlComparer.cs
- MembershipSection.cs
- CompoundFileReference.cs
- DirectionalLight.cs
- exports.cs
- Baml2006Reader.cs
- CustomTypeDescriptor.cs
- ReachFixedPageSerializerAsync.cs
- SimpleTypeResolver.cs
- JavaScriptSerializer.cs
- NamedPermissionSet.cs
- Model3DCollection.cs
- FaultBookmark.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- UriSection.cs
- VirtualPathUtility.cs
- PointCollectionConverter.cs
- WizardPanel.cs
- ReferentialConstraintRoleElement.cs
- DesignTimeDataBinding.cs
- NetMsmqBinding.cs
- TypeConverter.cs
- MethodBuilderInstantiation.cs
- EarlyBoundInfo.cs
- InputScope.cs
- Color.cs
- CommandValueSerializer.cs
- TextBlockAutomationPeer.cs
- DecimalKeyFrameCollection.cs
- DbTransaction.cs
- XsltException.cs
- CodeRemoveEventStatement.cs
- DispatcherProcessingDisabled.cs
- MatrixConverter.cs
- RepeaterCommandEventArgs.cs
- ConnectivityStatus.cs
- LinqDataSourceInsertEventArgs.cs
- EntityParameterCollection.cs
- FileLogRecord.cs
- SqlClientFactory.cs
- ProtocolImporter.cs
- ColumnMapVisitor.cs
- WorkflowApplicationUnhandledExceptionEventArgs.cs
- ServiceContractGenerationContext.cs
- LineSegment.cs
- NCryptNative.cs
- GacUtil.cs
- MergeFilterQuery.cs
- ProtocolsConfigurationEntry.cs