Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / MS / Internal / Controls / ActiveXHelper.cs / 1 / ActiveXHelper.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // // // // Description: // Helper functions for ActiveX hosting // // Source copied from axhosthelper.cs // // // History // 04/17/05 [....] Created // //----------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Specialized; using System.Runtime.InteropServices; using System.Security; using MS.Win32; namespace MS.Internal.Controls { // // This class contains static properties/methods that are internal. // It also has types that make sense only for ActiveX hosting classes. // In other words, this is a helper class for the ActiveX hosting classes. // internal class ActiveXHelper { // // Types: // // // Enumeration of the different states of the ActiveX control public enum ActiveXState { Passive = 0, // Not loaded Loaded = 1, // Loaded, but no server [ocx created] Running = 2, // Server running, invisible [depersisted] InPlaceActive = 4, // Server in-place active [visible] UIActive = 8, // Server is UI active [ready to accept input] Open = 16 // Server is opened for editing [not used] } // // Static members: // // // BitVector32 masks for various internal state flags. public static readonly int sinkAttached = BitVector32.CreateMask(); public static readonly int inTransition = BitVector32.CreateMask(sinkAttached); public static readonly int processingKeyUp = BitVector32.CreateMask(inTransition); //[[....]]These are from Winforms code. These transforms were not working correctly //I used Avalon sizes but leaving these in here since they are used in TransformCoordinates //in ActiveXSite. It doesn't seem to be invoked by WebBrowser control // // Gets the LOGPIXELSX of the screen DC. private static int logPixelsX = -1; private static int logPixelsY = -1; private const int HMperInch = 2540; // Prevent compiler from generating public CTOR private ActiveXHelper() { } // // Static helper methods: // public static int Pix2HM(int pix, int logP) { return (HMperInch * pix + (logP >> 1)) / logP; } public static int HM2Pix(int hm, int logP) { return (logP * hm + HMperInch / 2) / HMperInch; } // // We cache LOGPIXELSX for optimization ////// Critical: This code calls critical code. /// TreatAsSafe: This information is safe to expose. /// public static int LogPixelsX { [SecurityCritical, SecurityTreatAsSafe] get { if (logPixelsX == -1) { IntPtr hDC = UnsafeNativeMethods.GetDC(NativeMethods.NullHandleRef); if (hDC != IntPtr.Zero) { logPixelsX = UnsafeNativeMethods.GetDeviceCaps(new HandleRef(null, hDC), NativeMethods.LOGPIXELSX); UnsafeNativeMethods.ReleaseDC(NativeMethods.NullHandleRef, new HandleRef(null, hDC)); } } return logPixelsX; } } public static void ResetLogPixelsX() { logPixelsX = -1; } // // We cache LOGPIXELSY for optimization ////// Critical: This code calls critical code. /// TreatAsSafe: This information is safe to expose. /// public static int LogPixelsY { [SecurityCritical, SecurityTreatAsSafe] get { if (logPixelsY == -1) { IntPtr hDC = UnsafeNativeMethods.GetDC(NativeMethods.NullHandleRef); if (hDC != IntPtr.Zero) { logPixelsY = UnsafeNativeMethods.GetDeviceCaps(new HandleRef(null, hDC), NativeMethods.LOGPIXELSY); UnsafeNativeMethods.ReleaseDC(NativeMethods.NullHandleRef, new HandleRef(null, hDC)); } } return logPixelsY; } } public static void ResetLogPixelsY() { logPixelsY = -1; } } } // 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
- FormsAuthenticationUserCollection.cs
- BuilderPropertyEntry.cs
- SecurityHelper.cs
- MergeFailedEvent.cs
- securestring.cs
- ZoneButton.cs
- EntitySetBase.cs
- TransactionTraceIdentifier.cs
- VSWCFServiceContractGenerator.cs
- EvidenceTypeDescriptor.cs
- OrderablePartitioner.cs
- ProviderConnectionPoint.cs
- UserPersonalizationStateInfo.cs
- IconHelper.cs
- DataRecordInfo.cs
- ContentElement.cs
- DataServiceQueryException.cs
- SqlStream.cs
- Geometry3D.cs
- DetailsViewModeEventArgs.cs
- ConnectionConsumerAttribute.cs
- SafeSecurityHelper.cs
- BinaryParser.cs
- DelegateCompletionCallbackWrapper.cs
- ManipulationInertiaStartingEventArgs.cs
- ObjectHelper.cs
- FixedSOMSemanticBox.cs
- TrackingRecord.cs
- SimpleTypeResolver.cs
- RegexCode.cs
- InvokePattern.cs
- SafeViewOfFileHandle.cs
- GridViewCancelEditEventArgs.cs
- TabPage.cs
- ByteAnimationBase.cs
- HttpContextServiceHost.cs
- TextBounds.cs
- XmlLinkedNode.cs
- ExpressionBuilderContext.cs
- XmlCountingReader.cs
- X509CertificateEndpointIdentity.cs
- SqlVisitor.cs
- PixelFormats.cs
- Pkcs7Signer.cs
- MarkupCompiler.cs
- MaskedTextBoxDesignerActionList.cs
- TextChange.cs
- Rights.cs
- EventsTab.cs
- RuntimeHelpers.cs
- TextBounds.cs
- Calendar.cs
- SoapTransportImporter.cs
- ColorMap.cs
- PasswordPropertyTextAttribute.cs
- DependencyPropertyAttribute.cs
- Token.cs
- BitmapEffectDrawingContent.cs
- TextWriter.cs
- ColorDialog.cs
- FormattedTextSymbols.cs
- ToolboxBitmapAttribute.cs
- StreamGeometry.cs
- MatrixTransform.cs
- XmlSchemaObjectCollection.cs
- Vector3D.cs
- BreakRecordTable.cs
- MenuItemCollection.cs
- GenerateHelper.cs
- XmlLinkedNode.cs
- BackEase.cs
- DataGridViewCellCollection.cs
- SQLInt16Storage.cs
- LocalizationParserHooks.cs
- WindowsGraphics.cs
- GeneralTransform2DTo3D.cs
- ClientUrlResolverWrapper.cs
- DataServiceHostFactory.cs
- PrimitiveDataContract.cs
- Directory.cs
- HandleCollector.cs
- ValidationPropertyAttribute.cs
- RegularExpressionValidator.cs
- DbMetaDataFactory.cs
- ToolStripPanelSelectionBehavior.cs
- FormatException.cs
- WebPartCatalogCloseVerb.cs
- Guid.cs
- Brush.cs
- ComplexTypeEmitter.cs
- DataGridViewDataErrorEventArgs.cs
- ThreadExceptionEvent.cs
- RichTextBox.cs
- Stack.cs
- ActiveXHelper.cs
- Schema.cs
- XmlValueConverter.cs
- BamlTreeNode.cs
- isolationinterop.cs
- MSAAWinEventWrap.cs