Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Activities / Designers / ListenDesigner.cs / 1305376 / ListenDesigner.cs
namespace System.Workflow.Activities { using System; using System.Text; using System.Reflection; using System.Collections; using System.Collections.ObjectModel; using System.CodeDom; using System.ComponentModel; using System.ComponentModel.Design; using System.Drawing.Design; using System.Drawing; using System.Drawing.Drawing2D; using System.Diagnostics; using System.Workflow.ComponentModel; using System.Workflow.ComponentModel.Design; using System.Runtime.Serialization; #region Class ListenToolboxItem [Serializable] internal sealed class ListenToolboxItem: ActivityToolboxItem { public ListenToolboxItem(Type type) : base(type) { } private ListenToolboxItem(SerializationInfo info, StreamingContext context) { Deserialize(info, context); } protected override IComponent[] CreateComponentsCore(IDesignerHost designerHost) { CompositeActivity listenActivity = new ListenActivity(); listenActivity.Activities.Add(new EventDrivenActivity()); listenActivity.Activities.Add(new EventDrivenActivity()); return (IComponent[])new IComponent[] {listenActivity}; } } #endregion #region Class ListenDesigner [ActivityDesignerTheme(typeof(ListenDesignerTheme))] internal sealed class ListenDesigner: ParallelActivityDesigner { #region Properties and Methods public override bool CanInsertActivities(HitTestInfo insertLocation, ReadOnlyCollectionactivitiesToInsert) { foreach (Activity activity in activitiesToInsert) { if (!(activity is EventDrivenActivity)) return false; } return base.CanInsertActivities(insertLocation, activitiesToInsert); } protected override CompositeActivity OnCreateNewBranch() { return new EventDrivenActivity(); } protected override void OnPaint(ActivityDesignerPaintEventArgs e) { base.OnPaint(e); if (!Expanded || ContainedDesigners.Count == 0 || this != ActiveView.AssociatedDesigner) return; CompositeDesignerTheme compositeDesignerTheme = e.DesignerTheme as CompositeDesignerTheme; Debug.Assert(compositeDesignerTheme != null); if (compositeDesignerTheme == null) return; //Draw the Icon and Text Rectangle bounds = Bounds; Rectangle imageRectangle = ImageRectangle; Rectangle roundRectangle = Rectangle.Empty; roundRectangle.Width = compositeDesignerTheme.ConnectorSize.Height - 2 * e.AmbientTheme.Margin.Height - 1; roundRectangle.Height = roundRectangle.Width; roundRectangle.X = bounds.Left + bounds.Width / 2 - roundRectangle.Width / 2; roundRectangle.Y = bounds.Top + TitleHeight + (compositeDesignerTheme.ConnectorSize.Height * 3 / 2 - roundRectangle.Height) / 2; e.Graphics.FillEllipse(compositeDesignerTheme.ForegroundBrush, roundRectangle); e.Graphics.DrawEllipse(compositeDesignerTheme.ForegroundPen, roundRectangle); roundRectangle.Y = bounds.Bottom - compositeDesignerTheme.ConnectorSize.Height * 3 / 2 + (compositeDesignerTheme.ConnectorSize.Height * 3 / 2 - roundRectangle.Height) / 2; e.Graphics.FillEllipse(compositeDesignerTheme.ForegroundBrush, roundRectangle); e.Graphics.DrawEllipse(compositeDesignerTheme.ForegroundPen, roundRectangle); } #endregion } #endregion #region ListenDesignerTheme internal sealed class ListenDesignerTheme : CompositeDesignerTheme { public ListenDesignerTheme(WorkflowTheme theme) : base(theme) { this.ShowDropShadow = false; this.ConnectorStartCap = LineAnchor.None; this.ConnectorEndCap = LineAnchor.None; this.ForeColor = Color.FromArgb(0xFF, 0x80, 0x00, 0x00); this.BorderColor = Color.FromArgb(0xFF, 0xE0, 0xE0, 0xE0); this.BorderStyle = DashStyle.Dash; this.BackColorStart = Color.FromArgb(0x00, 0x00, 0x00, 0x00); this.BackColorEnd = Color.FromArgb(0x00, 0x00, 0x00, 0x00); } } #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
- SmiTypedGetterSetter.cs
- CachedPathData.cs
- Msec.cs
- ToolboxService.cs
- DBNull.cs
- SharedRuntimeState.cs
- HyperLinkStyle.cs
- CalendarDay.cs
- DiagnosticsConfiguration.cs
- TableLayoutStyle.cs
- ValidationResult.cs
- WebHttpEndpoint.cs
- OutputCacheSection.cs
- EntityDataSourceDesigner.cs
- log.cs
- StrongNameIdentityPermission.cs
- DesignerSerializationOptionsAttribute.cs
- Vector3DCollectionConverter.cs
- EntityDataSourceState.cs
- VisemeEventArgs.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- RecordBuilder.cs
- ForeignConstraint.cs
- RectangleF.cs
- CompositionAdorner.cs
- SoapCodeExporter.cs
- _UriTypeConverter.cs
- TextCompositionEventArgs.cs
- ClientUrlResolverWrapper.cs
- NavigationProperty.cs
- ActivityInterfaces.cs
- MultilineStringConverter.cs
- ZoneMembershipCondition.cs
- OracleException.cs
- IgnoreSectionHandler.cs
- HtmlDocument.cs
- StringPropertyBuilder.cs
- EntityTransaction.cs
- PassportAuthenticationEventArgs.cs
- PtsContext.cs
- ObjectTag.cs
- PackUriHelper.cs
- DrawingAttributesDefaultValueFactory.cs
- XpsFixedDocumentSequenceReaderWriter.cs
- ProfileModule.cs
- FreezableDefaultValueFactory.cs
- BitmapEffectDrawingContextWalker.cs
- EUCJPEncoding.cs
- RegexCode.cs
- ExtendedPropertyCollection.cs
- AssociationSet.cs
- ProxyGenerationError.cs
- WithParamAction.cs
- webeventbuffer.cs
- OpenTypeLayout.cs
- CounterSetInstanceCounterDataSet.cs
- WindowsMenu.cs
- BinaryFormatterWriter.cs
- FillErrorEventArgs.cs
- HttpStreamMessageEncoderFactory.cs
- BitStack.cs
- ChangeInterceptorAttribute.cs
- HwndHostAutomationPeer.cs
- PackageStore.cs
- EventMetadata.cs
- StylusPointPropertyId.cs
- SchemaEntity.cs
- DataListItemEventArgs.cs
- WriterOutput.cs
- ValueExpressions.cs
- safex509handles.cs
- CustomSignedXml.cs
- TargetParameterCountException.cs
- SimpleWorkerRequest.cs
- SqlRewriteScalarSubqueries.cs
- WebMethodAttribute.cs
- GeneralTransform3DTo2DTo3D.cs
- CommonXSendMessage.cs
- ConsoleTraceListener.cs
- SizeChangedInfo.cs
- DesignerVerb.cs
- TypefaceMap.cs
- RegistryKey.cs
- WebBrowserHelper.cs
- ObjectSet.cs
- Point3DKeyFrameCollection.cs
- DesignBindingPropertyDescriptor.cs
- HttpValueCollection.cs
- CategoryGridEntry.cs
- IdentityModelStringsVersion1.cs
- SaveFileDialog.cs
- AmbiguousMatchException.cs
- FocusChangedEventArgs.cs
- ClientScriptItem.cs
- QueryOptionExpression.cs
- GB18030Encoding.cs
- DataGridViewEditingControlShowingEventArgs.cs
- CodeMemberProperty.cs
- SqlDataSourceCommandParser.cs
- SelectorItemAutomationPeer.cs