Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / UIAutomation / UIAutomationClient / MS / Internal / Automation / ClientSideQueueItem.cs / 1 / ClientSideQueueItem.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
//
// Description: Class to create a queue on its own thread.
//
// History:
// 06/17/2003 : BrendanM Ported to WCP
//
//---------------------------------------------------------------------------
using System.Windows.Automation;
using System.Windows.Automation.Provider;
using System;
using System.Collections;
using System.ComponentModel;
using MS.Internal.Automation;
using MS.Win32;
namespace MS.Internal.Automation
{
// Worker class used to queue events that originated on the client side (e.g.
// used by focus and top-level window tracking to queue WinEvent information).
internal class ClientSideQueueItem : QueueItem
{
//-----------------------------------------------------
//
// Constructors
//
//-----------------------------------------------------
#region Constructors
internal ClientSideQueueItem(Delegate clientCallback, AutomationElement srcEl, UiaCoreApi.UiaCacheRequest request, AutomationEventArgs e)
{
_clientCallback = clientCallback;
_srcEl = srcEl;
_request = request;
_e = e;
}
#endregion Constructors
//------------------------------------------------------
//
// Internal Methods
//
//-----------------------------------------------------
#region Internal Methods
internal override void Process()
{
// Grab properties for cache request here...
AutomationElement src;
if (_srcEl == null)
{
src = null;
}
else
{
UiaCoreApi.UiaCacheResponse response = UiaCoreApi.UiaGetUpdatedCache(_srcEl.RawNode, _request, UiaCoreApi.NormalizeState.View, null);
src = CacheHelper.BuildAutomationElementsFromResponse(_request, response);
}
//
if (!(src == null && _e.EventId == AutomationElement.AutomationFocusChangedEvent))
InvokeHandlers.InvokeClientHandler(_clientCallback, src, _e);
}
#endregion Internal Methods
//------------------------------------------------------
//
// Private Fields
//
//------------------------------------------------------
#region Private Fields
private Delegate _clientCallback; // a client callback delegate
private AutomationElement _srcEl; // the source element
private UiaCoreApi.UiaCacheRequest _request; // shopping list for prefetch
private AutomationEventArgs _e; // the event args for the callback
#endregion Private Fields
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
//
// Description: Class to create a queue on its own thread.
//
// History:
// 06/17/2003 : BrendanM Ported to WCP
//
//---------------------------------------------------------------------------
using System.Windows.Automation;
using System.Windows.Automation.Provider;
using System;
using System.Collections;
using System.ComponentModel;
using MS.Internal.Automation;
using MS.Win32;
namespace MS.Internal.Automation
{
// Worker class used to queue events that originated on the client side (e.g.
// used by focus and top-level window tracking to queue WinEvent information).
internal class ClientSideQueueItem : QueueItem
{
//-----------------------------------------------------
//
// Constructors
//
//-----------------------------------------------------
#region Constructors
internal ClientSideQueueItem(Delegate clientCallback, AutomationElement srcEl, UiaCoreApi.UiaCacheRequest request, AutomationEventArgs e)
{
_clientCallback = clientCallback;
_srcEl = srcEl;
_request = request;
_e = e;
}
#endregion Constructors
//------------------------------------------------------
//
// Internal Methods
//
//-----------------------------------------------------
#region Internal Methods
internal override void Process()
{
// Grab properties for cache request here...
AutomationElement src;
if (_srcEl == null)
{
src = null;
}
else
{
UiaCoreApi.UiaCacheResponse response = UiaCoreApi.UiaGetUpdatedCache(_srcEl.RawNode, _request, UiaCoreApi.NormalizeState.View, null);
src = CacheHelper.BuildAutomationElementsFromResponse(_request, response);
}
//
if (!(src == null && _e.EventId == AutomationElement.AutomationFocusChangedEvent))
InvokeHandlers.InvokeClientHandler(_clientCallback, src, _e);
}
#endregion Internal Methods
//------------------------------------------------------
//
// Private Fields
//
//------------------------------------------------------
#region Private Fields
private Delegate _clientCallback; // a client callback delegate
private AutomationElement _srcEl; // the source element
private UiaCoreApi.UiaCacheRequest _request; // shopping list for prefetch
private AutomationEventArgs _e; // the event args for the callback
#endregion Private Fields
}
}
// 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
- ListViewDeleteEventArgs.cs
- FrameDimension.cs
- EntityViewContainer.cs
- Mutex.cs
- HtmlImage.cs
- BuildProvider.cs
- DefaultPerformanceCounters.cs
- _SslState.cs
- Baml6Assembly.cs
- AlignmentYValidation.cs
- MemoryPressure.cs
- PathFigureCollection.cs
- entityreference_tresulttype.cs
- StyleSelector.cs
- ManifestBasedResourceGroveler.cs
- XmlRootAttribute.cs
- Utils.cs
- typedescriptorpermissionattribute.cs
- InvalidOperationException.cs
- ipaddressinformationcollection.cs
- CustomAttributeSerializer.cs
- CommentAction.cs
- DataGridColumn.cs
- ValidatorCollection.cs
- DataListItem.cs
- AppDomain.cs
- ServiceBuildProvider.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- SecurityUtils.cs
- SqlProviderManifest.cs
- CorrelationManager.cs
- TabletDeviceInfo.cs
- EventArgs.cs
- Rect3D.cs
- processwaithandle.cs
- FixedNode.cs
- XPathNode.cs
- Exceptions.cs
- StrongNameMembershipCondition.cs
- Listener.cs
- ServiceMetadataPublishingElement.cs
- ParamArrayAttribute.cs
- PreviewPageInfo.cs
- MarginsConverter.cs
- metadatamappinghashervisitor.hashsourcebuilder.cs
- TcpConnectionPool.cs
- CacheMode.cs
- formatter.cs
- ResXResourceSet.cs
- XmlILTrace.cs
- StringFormat.cs
- nulltextnavigator.cs
- RtType.cs
- SAPICategories.cs
- XhtmlConformanceSection.cs
- ComplexTypeEmitter.cs
- AsymmetricSignatureDeformatter.cs
- MimeTextImporter.cs
- Rect3DValueSerializer.cs
- SEHException.cs
- MutexSecurity.cs
- Style.cs
- ImageInfo.cs
- EncryptedPackageFilter.cs
- XmlNotation.cs
- TrustSection.cs
- PartialCachingControl.cs
- ErrorReporting.cs
- DateTimeOffsetStorage.cs
- RuleSetDialog.Designer.cs
- TypeSemantics.cs
- UTF7Encoding.cs
- InputBindingCollection.cs
- StylusButton.cs
- ListenerElementsCollection.cs
- SingleTagSectionHandler.cs
- DesignerView.xaml.cs
- UrlParameterWriter.cs
- ConnectionProviderAttribute.cs
- DataControlReferenceCollection.cs
- KeyInfo.cs
- FormsAuthenticationEventArgs.cs
- DbParameterCollection.cs
- XmlSerializerAssemblyAttribute.cs
- DbProviderFactories.cs
- HttpApplicationFactory.cs
- DateTimeFormatInfo.cs
- ConfigurationErrorsException.cs
- WorkflowFileItem.cs
- CommonXSendMessage.cs
- IncrementalReadDecoders.cs
- FrameworkContextData.cs
- COM2ExtendedTypeConverter.cs
- versioninfo.cs
- ViewgenContext.cs
- Marshal.cs
- BrushValueSerializer.cs
- Vector3DAnimationUsingKeyFrames.cs
- FunctionMappingTranslator.cs
- NumericUpDown.cs