Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Common / AuthoringOM / Design / ActivityDesignerAccessibleObject.cs / 1305376 / ActivityDesignerAccessibleObject.cs
#pragma warning disable 1634, 1691 namespace System.Workflow.ComponentModel.Design { using System; using System.IO; using System.Drawing; using System.CodeDom; using System.Diagnostics; using System.Collections; using System.Collections.Generic; using System.Windows.Forms; using System.ComponentModel; using System.Globalization; using System.Drawing.Design; using System.Drawing.Imaging; using System.Drawing.Drawing2D; using System.Windows.Forms.Design; using System.ComponentModel.Design; using System.Collections.Specialized; using System.ComponentModel.Design.Serialization; using System.Workflow.ComponentModel.Compiler; using System.Workflow.ComponentModel.Serialization; using System.Collections.ObjectModel; using System.Reflection; using System.Workflow.ComponentModel.Design; using System.Runtime.Serialization.Formatters.Binary; // #region Class ActivityDesignerAccessibleObject ////// Accessibility object class for the ActivityDesigner /// public class ActivityDesignerAccessibleObject : AccessibleObject { private ActivityDesigner activityDesigner; ////// Constructs the accessibility class for ActivityDesigner /// /// ActivityDesigner associated with accessiblity object public ActivityDesignerAccessibleObject(ActivityDesigner activityDesigner) { if (activityDesigner == null) throw new ArgumentNullException("activityDesigner"); if (activityDesigner.Activity == null) throw new ArgumentException(DR.GetString(DR.DesignerNotInitialized), "activityDesigner"); this.activityDesigner = activityDesigner; } public override Rectangle Bounds { get { return this.activityDesigner.InternalRectangleToScreen(this.activityDesigner.Bounds); } } public override string DefaultAction { get { return DR.GetString(DR.AccessibleAction); } } public override string Description { get { return DR.GetString(DR.ActivityDesignerAccessibleDescription, this.activityDesigner.Activity.GetType().Name); } } public override string Help { get { return DR.GetString(DR.ActivityDesignerAccessibleHelp, this.activityDesigner.Activity.GetType().Name); } } public override string Name { get { Activity activity = this.activityDesigner.Activity as Activity; if (activity != null) { if (TypeDescriptor.GetProperties(activity)["TypeName"] != null) return TypeDescriptor.GetProperties(activity)["TypeName"].GetValue(activity) as string; else if (!string.IsNullOrEmpty(activity.QualifiedName)) return activity.QualifiedName; else return activity.GetType().FullName; } else { return base.Name; } } set { //We do not allow setting ID programatically } } public override AccessibleObject Parent { get { CompositeActivityDesigner compositeDesigner = this.activityDesigner.ParentDesigner; return (compositeDesigner != null) ? compositeDesigner.AccessibilityObject : null; } } public override AccessibleRole Role { get { return AccessibleRole.Diagram; } } public override AccessibleStates State { get { AccessibleStates state = (this.activityDesigner.IsSelected) ? AccessibleStates.Selected : AccessibleStates.Selectable; state |= AccessibleStates.MultiSelectable; state |= (this.activityDesigner.IsPrimarySelection) ? AccessibleStates.Focused : AccessibleStates.Focusable; if (this.activityDesigner.IsLocked) state |= AccessibleStates.ReadOnly; else state |= AccessibleStates.Moveable; if (!this.activityDesigner.IsVisible) state |= AccessibleStates.Invisible; return state; } } public override void DoDefaultAction() { ISelectionService selectionService = GetService(typeof(ISelectionService)) as ISelectionService; if (selectionService != null) selectionService.SetSelectedComponents(new object[] { this.activityDesigner.Activity }, SelectionTypes.Replace); else base.DoDefaultAction(); } public override AccessibleObject Navigate(AccessibleNavigation navdir) { if (navdir == AccessibleNavigation.FirstChild) { return GetChild(0); } else if (navdir == AccessibleNavigation.LastChild) { return GetChild(GetChildCount() - 1); } else { CompositeActivityDesigner compositeDesigner = this.activityDesigner.ParentDesigner; if (compositeDesigner != null) { DesignerNavigationDirection navigate = default(DesignerNavigationDirection); if (navdir == AccessibleNavigation.Left) navigate = DesignerNavigationDirection.Left; else if (navdir == AccessibleNavigation.Right) navigate = DesignerNavigationDirection.Right; else if (navdir == AccessibleNavigation.Up || navdir == AccessibleNavigation.Previous) navigate = DesignerNavigationDirection.Up; else if (navdir == AccessibleNavigation.Down || navdir == AccessibleNavigation.Next) navigate = DesignerNavigationDirection.Down; ActivityDesigner activityDesigner = ActivityDesigner.GetDesigner(compositeDesigner.GetNextSelectableObject(this.activityDesigner.Activity, navigate) as Activity); if (activityDesigner != null) return activityDesigner.AccessibilityObject; } } return base.Navigate(navdir); } public override void Select(AccessibleSelection flags) { ISelectionService selectionService = GetService(typeof(ISelectionService)) as ISelectionService; if (selectionService != null) { if (((flags & AccessibleSelection.TakeFocus) > 0) || ((flags & AccessibleSelection.TakeSelection) > 0)) selectionService.SetSelectedComponents(new object[] { this.activityDesigner.Activity }, SelectionTypes.Replace); else if ((flags & AccessibleSelection.AddSelection) > 0) selectionService.SetSelectedComponents(new object[] { this.activityDesigner.Activity }, SelectionTypes.Add); else if ((flags & AccessibleSelection.RemoveSelection) > 0) selectionService.SetSelectedComponents(new object[] { this.activityDesigner.Activity }, SelectionTypes.Remove); } } protected object GetService(Type serviceType) { if (serviceType == null) throw new ArgumentNullException("serviceType"); if (this.ActivityDesigner.Activity != null && this.ActivityDesigner.Activity.Site != null) return this.ActivityDesigner.Activity.Site.GetService(serviceType); else return null; } protected ActivityDesigner ActivityDesigner { get { return this.activityDesigner; } } } #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
- Semaphore.cs
- DataTableReader.cs
- BindingList.cs
- MulticastDelegate.cs
- ConfigurationException.cs
- PropertyInformation.cs
- ExtensibleClassFactory.cs
- AttributeAction.cs
- BindingManagerDataErrorEventArgs.cs
- SingleAnimationUsingKeyFrames.cs
- XPathParser.cs
- RewritingValidator.cs
- ManagedCodeMarkers.cs
- DependencyObjectPropertyDescriptor.cs
- TrackingProfileCache.cs
- __Filters.cs
- EventSinkActivity.cs
- QilScopedVisitor.cs
- LayoutDump.cs
- GPStream.cs
- CompiledQueryCacheEntry.cs
- XamlSerializer.cs
- SafeFreeMibTable.cs
- InstanceHandle.cs
- DataGridItem.cs
- sqlcontext.cs
- Listen.cs
- RuntimeConfigLKG.cs
- InternalCache.cs
- ScopelessEnumAttribute.cs
- RoleGroupCollection.cs
- HtmlTable.cs
- OracleTimeSpan.cs
- HtmlMobileTextWriter.cs
- XmlDomTextWriter.cs
- BitmapCacheBrush.cs
- ResourceContainerWrapper.cs
- ChildrenQuery.cs
- DbMetaDataFactory.cs
- SecureStringHasher.cs
- ContentPlaceHolder.cs
- TextDecorationLocationValidation.cs
- FrameworkObject.cs
- ActiveXHelper.cs
- DatagridviewDisplayedBandsData.cs
- login.cs
- BehaviorEditorPart.cs
- ResXBuildProvider.cs
- GetPageCompletedEventArgs.cs
- XmlSchemaNotation.cs
- String.cs
- LinearGradientBrush.cs
- HtmlHead.cs
- CompressedStack.cs
- XmlSerializableServices.cs
- _LocalDataStore.cs
- DataGridViewRowConverter.cs
- Coordinator.cs
- MessageQueuePermission.cs
- XmlSchemaSet.cs
- Formatter.cs
- EventLogPermissionAttribute.cs
- ParseChildrenAsPropertiesAttribute.cs
- FocusTracker.cs
- RtfToken.cs
- ToolStripRendererSwitcher.cs
- DockPanel.cs
- Transform3D.cs
- OleDbException.cs
- METAHEADER.cs
- HtmlTitle.cs
- TcpSocketManager.cs
- ActivityBindForm.Designer.cs
- StorageMappingFragment.cs
- SelectionItemPatternIdentifiers.cs
- DataGridViewRowCancelEventArgs.cs
- DataServiceSaveChangesEventArgs.cs
- UrlAuthFailedErrorFormatter.cs
- XmlSerializerVersionAttribute.cs
- LocalizableAttribute.cs
- URLAttribute.cs
- TabletDeviceInfo.cs
- CompressionTransform.cs
- WindowsListViewGroupSubsetLink.cs
- GridViewRow.cs
- OracleMonthSpan.cs
- ping.cs
- ObjectDataSourceSelectingEventArgs.cs
- TripleDES.cs
- OleDbRowUpdatedEvent.cs
- Nullable.cs
- GraphicsPathIterator.cs
- SiteMap.cs
- UInt32Converter.cs
- StatusStrip.cs
- PropertyIDSet.cs
- RoleGroup.cs
- ColorConvertedBitmap.cs
- PerformanceCounterPermission.cs
- TextAutomationPeer.cs