Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Activities / Designers / CAGDesigner.cs / 1305376 / CAGDesigner.cs
namespace System.Workflow.Activities { using System; using System.Drawing; using System.Diagnostics; using System.Collections; using System.Windows.Forms; using System.Windows.Forms.Design; using System.ComponentModel; using System.Drawing.Drawing2D; using System.Xml; using System.Collections.Generic; using System.ComponentModel.Design; using System.Workflow.ComponentModel; using System.Workflow.ComponentModel.Design; using System.ComponentModel.Design.Serialization; [ActivityDesignerTheme(typeof(ConditionedActivityGroupDesignerTheme))] internal sealed class ConditionedActivityGroupDesigner: ActivityPreviewDesigner { #region Members, Constructor and Destructor protected override void Initialize(Activity activity) { base.Initialize(activity); IExtenderListService extenderListService = (IExtenderListService)GetService(typeof(IExtenderListService)); if (extenderListService != null) { bool foundCAGExtender = false; foreach (IExtenderProvider extenderProvider in extenderListService.GetExtenderProviders()) { if (extenderProvider.GetType() == typeof(ConditionPropertyProviderExtender)) foundCAGExtender = true; } if (!foundCAGExtender) { IExtenderProviderService extenderProviderService = (IExtenderProviderService)GetService(typeof(IExtenderProviderService)); if (extenderProviderService != null) { extenderProviderService.AddExtenderProvider(new ConditionPropertyProviderExtender()); } } } } protected override void Dispose(bool disposing) { base.Dispose(disposing); } #endregion } #region ConditionedActivityGroupDesignerTheme internal sealed class ConditionedActivityGroupDesignerTheme : ActivityPreviewDesignerTheme { public ConditionedActivityGroupDesignerTheme(WorkflowTheme theme) : base(theme) { this.ShowDropShadow = false; this.ConnectorStartCap = LineAnchor.None; this.ConnectorEndCap = LineAnchor.None; this.ForeColor = Color.FromArgb(0xFF, 0x00, 0x00, 0x00); this.BorderColor = Color.FromArgb(0xFF, 0x6B, 0x6D, 0x6B); this.BorderStyle = DashStyle.Solid; this.BackColorStart = Color.FromArgb(0xFF, 0xEF, 0xEF, 0xEF); this.BackColorEnd = Color.FromArgb(0xFF, 0xEF, 0xEF, 0xEF); this.PreviewForeColor = Color.FromArgb(0xFF, 0xF0, 0xF0, 0xF0); this.PreviewBorderColor = Color.FromArgb(0xFF, 0x6B, 0x6D, 0x6B); this.PreviewBackColor = Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF); } } #endregion #region Class ConditionPropertyProviderExtender [ProvideProperty("WhenCondition", typeof(Activity))] [ProvideProperty("UnlessCondition", typeof(Activity))] internal sealed class ConditionPropertyProviderExtender : IExtenderProvider { internal ConditionPropertyProviderExtender() { } [SRCategory(SR.ConditionedActivityConditions)] [SRDescription(SR.WhenConditionDescr)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public ActivityCondition GetWhenCondition(Activity activity) { if (activity.Parent is ConditionedActivityGroup) return activity.GetValue(ConditionedActivityGroup.WhenConditionProperty) as ActivityCondition; else return null; } [SRCategory(SR.ConditionedActivityConditions)] [SRDescription(SR.WhenConditionDescr)] public void SetWhenCondition(Activity activity, ActivityCondition handler) { if (activity.Parent is ConditionedActivityGroup) activity.SetValue(ConditionedActivityGroup.WhenConditionProperty, handler); } #region IExtenderProvider Members public bool CanExtend(object extendee) { return ((extendee != this) && (extendee is Activity) && (((Activity)extendee).Parent is ConditionedActivityGroup)); } #endregion } #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
- InvokeGenerator.cs
- SafeProcessHandle.cs
- CompiledRegexRunnerFactory.cs
- CompilationUnit.cs
- TextEffect.cs
- SimpleExpression.cs
- CodeTryCatchFinallyStatement.cs
- RoleManagerModule.cs
- Polygon.cs
- DetailsViewCommandEventArgs.cs
- CursorInteropHelper.cs
- SamlSubjectStatement.cs
- WindowsAuthenticationModule.cs
- _StreamFramer.cs
- OdbcInfoMessageEvent.cs
- DataGridRow.cs
- ObjectHandle.cs
- DataControlImageButton.cs
- ListViewTableRow.cs
- GatewayDefinition.cs
- DataStreams.cs
- DesignBindingValueUIHandler.cs
- InputQueue.cs
- RtfControls.cs
- CompiledRegexRunner.cs
- InvokeMethodDesigner.xaml.cs
- HostProtectionException.cs
- MouseButtonEventArgs.cs
- Util.cs
- PolyBezierSegment.cs
- HyperLinkStyle.cs
- LayoutEvent.cs
- embossbitmapeffect.cs
- ProcessInputEventArgs.cs
- ControllableStoryboardAction.cs
- WorkflowPageSetupDialog.cs
- SymbolMethod.cs
- TreeViewItemAutomationPeer.cs
- WizardForm.cs
- PnrpPermission.cs
- ActivityUtilities.cs
- SkewTransform.cs
- __ConsoleStream.cs
- CultureInfoConverter.cs
- TreeView.cs
- EditorPartChrome.cs
- SiteMapProvider.cs
- ObjectView.cs
- FixedPageStructure.cs
- Panel.cs
- ToolStripDropDown.cs
- GlobalizationAssembly.cs
- RedistVersionInfo.cs
- SchemaTypeEmitter.cs
- CreateUserWizard.cs
- DeferredBinaryDeserializerExtension.cs
- PackageRelationship.cs
- _AuthenticationState.cs
- MruCache.cs
- SafeNativeMethods.cs
- ToolStripDropDownClosingEventArgs.cs
- SmiGettersStream.cs
- _CookieModule.cs
- MatrixIndependentAnimationStorage.cs
- IndependentlyAnimatedPropertyMetadata.cs
- WebDescriptionAttribute.cs
- MinimizableAttributeTypeConverter.cs
- SiteMapSection.cs
- RoleManagerEventArgs.cs
- BitmapVisualManager.cs
- StructuredTypeEmitter.cs
- SoapInteropTypes.cs
- SuppressIldasmAttribute.cs
- ChannelDispatcherCollection.cs
- TableHeaderCell.cs
- IpcClientManager.cs
- FontFamily.cs
- MonitoringDescriptionAttribute.cs
- AttachedPropertyInfo.cs
- ValidatingReaderNodeData.cs
- WindowsTitleBar.cs
- GraphicsPathIterator.cs
- XamlStyleSerializer.cs
- XmlSerializableReader.cs
- X509CertificateStore.cs
- HWStack.cs
- FontCacheUtil.cs
- TransportContext.cs
- Help.cs
- EmbeddedObject.cs
- RTLAwareMessageBox.cs
- Vector.cs
- ForeignConstraint.cs
- RemoveStoryboard.cs
- MinimizableAttributeTypeConverter.cs
- ConvertEvent.cs
- Vector3dCollection.cs
- NavigationWindowAutomationPeer.cs
- dataobject.cs
- EntityDataSourceDataSelection.cs