| File: System\Windows\Forms\Control.ExtendedStates.cs | Web Access |
| Project: src\winforms\src\System.Windows.Forms\System.Windows.Forms.csproj (System.Windows.Forms) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. namespace System.Windows.Forms; public partial class Control { [Flags] private protected enum ExtendedStates { /// <summary> /// When we change RightToLeft, we need to change the scrollbar thumb. We can't do that until after the /// control has been created, and all the items added back. This is because the system control won't know /// the nMin and nMax of the scroll bar until the items are added. So in RightToLeftChanged, we set a /// flag that indicates that we want to set the scroll position. In OnHandleCreated we check this flag, /// and if set, we BeginInvoke. We have to BeginInvoke since we have to wait until the items are added. /// We only want to do this when RightToLeft changes thus the flags HAVEINVOKED and SETSCROLLPOS. /// Otherwise we would do this on each HandleCreated. /// </summary> HaveInvoked = 0x00000001, SetScrollPosition = 0x00000002, /// <summary> /// If set, the control will listen to SystemEvents.UserPreferenceChanged when TopLevel is true and handle is created. /// </summary> InterestedInUserPreferenceChanged = 0x00000008, /// <summary> /// If set, the control DOES NOT necessarily take capture on MouseDown /// </summary> MaintainsOwnCaptureMode = 0x00000010, /// <summary> /// Set to true by ContainerControl when this control is becoming its active control /// </summary> BecomingActiveControl = 0x00000020, /// <summary> /// If set, the next time PerformLayout is called, cachedLayoutEventArg will be cleared. /// </summary> ClearLayoutArgs = 0x00000040, /// <summary> /// Used to flag that <see cref="IsInputKey(Keys)"/> returned true in <see cref="PreProcessMessage(ref Message)" /> /// so that <see cref="PreProcessControlMessageInternal(Control, ref Message)"/> doesn't call it again. /// </summary> InputKey = 0x00000080, /// <summary> /// Used to flag that <see cref="IsInputChar(char)"/> returned true in <see cref="PreProcessMessage(ref Message)" /> /// so that <see cref="PreProcessControlMessageInternal(Control, ref Message)"/> doesn't call it again. /// </summary> InputChar = 0x00000100, /// <summary> /// Used by <see cref="PreProcessControlMessageInternal(Control, ref Message)"/> to avoid calling /// <see cref="ProcessUICues(ref Message)"/> multiple times. /// </summary> UiCues = 0x00000200, IsActiveX = 0x00000400, UserPreferredSizeCache = 0x00000800, TopMDIWindowClosing = 0x00001000, /// <summary> /// If set, the control is being scaled currently /// </summary> CurrentlyBeingScaled = 0x00002000 } }