11// -- GENERATION INFORMATION --
2- // Date: 04/14 /2023 20:57:08
3- // Constructors: 95
4- // Destructors: 74
5- // Enums: 72
6- // Global methods: 868
7- // Instance methods: 354
8- // Structs: 110
2+ // Date: 04/19 /2023 06:29:50
3+ // Constructors: 96
4+ // Destructors: 75
5+ // Enums: 73
6+ // Global methods: 872
7+ // Instance methods: 356
8+ // Structs: 111
99// Typedefs: 29
1010
1111using System ;
@@ -32,8 +32,8 @@ namespace ImGui
3232
3333 public static class ImGui
3434 {
35- public static char8 * VERSION = "1.89.4 " ;
36- public static int VERSION_NUM = 189400 ;
35+ public static char8 * VERSION = "1.89.5 " ;
36+ public static int VERSION_NUM = 189500 ;
3737 public static bool CHECKVERSION ( )
3838 {
3939 bool result = DebugCheckVersionAndDataLayout ( VERSION , sizeof ( IO ) , sizeof ( Style ) , sizeof ( Vec2 ) , sizeof ( Vec4 ) , sizeof ( DrawVert ) , sizeof ( DrawIdx ) ) ;
@@ -480,10 +480,11 @@ namespace ImGui
480480 EventPopup = 4 ,
481481 EventNav = 8 ,
482482 EventClipper = 16 ,
483- EventIO = 32 ,
484- EventDocking = 64 ,
485- EventViewport = 128 ,
486- EventMask_ = 255 ,
483+ EventSelection = 32 ,
484+ EventIO = 64 ,
485+ EventDocking = 128 ,
486+ EventViewport = 256 ,
487+ EventMask_ = 511 ,
487488 OutputToTTY = 1024 ,
488489
489490 }
@@ -653,8 +654,7 @@ namespace ImGui
653654 Keyboard = 2 ,
654655 Gamepad = 3 ,
655656 Clipboard = 4 ,
656- Nav = 5 ,
657- COUNT = 6 ,
657+ COUNT = 5 ,
658658
659659 }
660660
@@ -950,6 +950,16 @@ namespace ImGui
950950
951951 }
952952
953+ [ AllowDuplicates ]
954+ public enum MouseSource : int32
955+ {
956+ Mouse = 0 ,
957+ TouchScreen = 1 ,
958+ Pen = 2 ,
959+ COUNT = 3 ,
960+
961+ }
962+
953963 [ AllowDuplicates ]
954964 public enum NavHighlightFlags : int32
955965 {
@@ -1405,10 +1415,11 @@ namespace ImGui
14051415 NoFocusOnClick = 64 ,
14061416 NoInputs = 128 ,
14071417 NoRendererClear = 256 ,
1408- TopMost = 512 ,
1409- Minimized = 1024 ,
1410- NoAutoMerge = 2048 ,
1411- CanHostOtherWindows = 4096 ,
1418+ NoAutoMerge = 512 ,
1419+ TopMost = 1024 ,
1420+ CanHostOtherWindows = 2048 ,
1421+ IsMinimized = 4096 ,
1422+ IsFocused = 8192 ,
14121423
14131424 }
14141425
@@ -2427,8 +2438,6 @@ namespace ImGui
24272438 public bool FontAtlasOwnedByContext ;
24282439 public IO IO ;
24292440 public PlatformIO PlatformIO ;
2430- public Vector < InputEvent > InputEventsQueue ;
2431- public Vector < InputEvent > InputEventsTrail ;
24322441 public Style Style ;
24332442 public ConfigFlags ConfigFlagsCurrFrame ;
24342443 public ConfigFlags ConfigFlagsLastFrame ;
@@ -2447,6 +2456,10 @@ namespace ImGui
24472456 public bool GcCompactAll ;
24482457 public bool TestEngineHookItems ;
24492458 public void * TestEngine ;
2459+ public Vector < InputEvent > InputEventsQueue ;
2460+ public Vector < InputEvent > InputEventsTrail ;
2461+ public MouseSource InputEventsNextMouseSource ;
2462+ public U32 InputEventsNextEventId ;
24502463 public Vector < Window * > Windows ;
24512464 public Vector < Window * > WindowsFocusOrder ;
24522465 public Vector < Window * > WindowsTempSortBuffer ;
@@ -2517,7 +2530,7 @@ namespace ImGui
25172530 public ViewportP * MouseLastHoveredViewport ;
25182531 public ID PlatformLastFocusedViewportId ;
25192532 public PlatformMonitor FallbackMonitor ;
2520- public int32 ViewportFrontMostStampCount ;
2533+ public int32 ViewportFocusedStampCount ;
25212534 public Window * NavWindow ;
25222535 public ID NavId ;
25232536 public ID NavFocusScopeId ;
@@ -2606,6 +2619,7 @@ namespace ImGui
26062619 public float HoverDelayClearTimer ;
26072620 public Vec2 MouseLastValidPos ;
26082621 public InputTextState InputTextState ;
2622+ public InputTextDeactivatedState InputTextDeactivatedState ;
26092623 public Font InputTextPasswordFont ;
26102624 public ID TempInputId ;
26112625 public ColorEditFlags ColorEditOptions ;
@@ -2947,6 +2961,7 @@ namespace ImGui
29472961 public bool [ 5 ] MouseDown ;
29482962 public float MouseWheel ;
29492963 public float MouseWheelH ;
2964+ public MouseSource MouseSource ;
29502965 public ID MouseHoveredViewport ;
29512966 public bool KeyCtrl ;
29522967 public bool KeyShift ;
@@ -2965,6 +2980,7 @@ namespace ImGui
29652980 public bool [ 5 ] MouseReleased ;
29662981 public bool [ 5 ] MouseDownOwned ;
29672982 public bool [ 5 ] MouseDownOwnedUnlessPopupClose ;
2983+ public bool MouseWheelRequestAxisSwap ;
29682984 public float [ 5 ] MouseDownDuration ;
29692985 public float [ 5 ] MouseDownDurationPrev ;
29702986 public Vec2 [ 5 ] MouseDragMaxDistanceAbs ;
@@ -3016,6 +3032,10 @@ namespace ImGui
30163032 private static extern void AddMousePosEventImpl ( Self * self , float x , float y ) ;
30173033 public void AddMousePosEvent ( float x , float y ) mut=> AddMousePosEventImpl ( & this , x , y ) ;
30183034
3035+ [ LinkName ( "ImGuiIO_AddMouseSourceEvent" ) ]
3036+ private static extern void AddMouseSourceEventImpl ( Self * self , MouseSource source ) ;
3037+ public void AddMouseSourceEvent ( MouseSource source ) mut=> AddMouseSourceEventImpl ( & this , source ) ;
3038+
30193039 [ LinkName ( "ImGuiIO_AddMouseViewportEvent" ) ]
30203040 private static extern void AddMouseViewportEventImpl ( Self * self , ID id ) ;
30213041 public void AddMouseViewportEvent ( ID id ) mut=> AddMouseViewportEventImpl ( & this , id ) ;
@@ -3047,6 +3067,7 @@ namespace ImGui
30473067 {
30483068 public InputEventType Type ;
30493069 public InputSource Source ;
3070+ public U32 EventId ;
30503071 private InputEventUnion0 Union0 = . ( ) ;
30513072 public InputEventMousePos MousePos { get { return Union0 . MousePos ; } set mut { Union0 . MousePos = value ; } } ;
30523073 public InputEventMouseWheel MouseWheel { get { return Union0 . MouseWheel ; } set mut { Union0 . MouseWheel = value ; } } ;
@@ -3098,6 +3119,7 @@ namespace ImGui
30983119 {
30993120 public int32 Button ;
31003121 public bool Down ;
3122+ public MouseSource MouseSource ;
31013123
31023124 }
31033125
@@ -3106,6 +3128,7 @@ namespace ImGui
31063128 {
31073129 public float PosX ;
31083130 public float PosY ;
3131+ public MouseSource MouseSource ;
31093132
31103133 }
31113134
@@ -3121,6 +3144,7 @@ namespace ImGui
31213144 {
31223145 public float WheelX ;
31233146 public float WheelY ;
3147+ public MouseSource MouseSource ;
31243148
31253149 }
31263150
@@ -3177,6 +3201,25 @@ namespace ImGui
31773201
31783202 }
31793203
3204+ [ CRepr ]
3205+ public struct InputTextDeactivatedState
3206+ {
3207+ public ID ID ;
3208+ public Vector < char > TextA ;
3209+
3210+ [ LinkName ( "ImGuiInputTextDeactivatedState_ImGuiInputTextDeactivatedState" ) ]
3211+ private static extern InputTextDeactivatedState * CtorImpl ( ) ;
3212+ public this ( )
3213+ {
3214+ this = * CtorImpl ( ) ;
3215+ }
3216+
3217+ [ LinkName ( "ImGuiInputTextDeactivatedState_ClearFreeMemory" ) ]
3218+ private static extern void ClearFreeMemoryImpl ( Self * self ) ;
3219+ public void ClearFreeMemory ( ) mut=> ClearFreeMemoryImpl ( & this ) ;
3220+
3221+ }
3222+
31803223 [ CRepr ]
31813224 public struct InputTextState
31823225 {
@@ -4643,15 +4686,16 @@ namespace ImGui
46434686 public struct ViewportP
46444687 {
46454688 public Viewport _ImGuiViewport ;
4689+ public Window * Window ;
46464690 public int32 Idx ;
46474691 public int32 LastFrameActive ;
4648- public int32 LastFrontMostStampCount ;
4692+ public int32 LastFocusedStampCount ;
46494693 public ID LastNameHash ;
46504694 public Vec2 LastPos ;
46514695 public float Alpha ;
46524696 public float LastAlpha ;
4697+ public bool LastFocusedHadNavWindow ;
46534698 public short PlatformMonitor ;
4654- public Window * Window ;
46554699 public int32 [ 2 ] DrawListsLastFrame ;
46564700 public DrawList * [ 2 ] DrawLists ;
46574701 public DrawData DrawDataP ;
@@ -6113,8 +6157,8 @@ namespace ImGui
61136157 public static KeyChord ConvertShortcutMod ( KeyChord key_chord ) => ConvertShortcutModImpl ( key_chord ) ;
61146158
61156159 [ LinkName ( "igConvertSingleModFlagToKey" ) ]
6116- private static extern Key ConvertSingleModFlagToKeyImpl ( Key key ) ;
6117- public static Key ConvertSingleModFlagToKey ( Key key ) => ConvertSingleModFlagToKeyImpl ( key ) ;
6160+ private static extern Key ConvertSingleModFlagToKeyImpl ( Context * ctx , Key key ) ;
6161+ public static Key ConvertSingleModFlagToKey ( Context * ctx , Key key ) => ConvertSingleModFlagToKeyImpl ( ctx , key ) ;
61186162
61196163 [ LinkName ( "igCreateContext" ) ]
61206164 private static extern Context * CreateContextImpl ( FontAtlas * shared_font_atlas ) ;
@@ -6719,8 +6763,8 @@ namespace ImGui
67196763 #endif
67206764
67216765 [ LinkName ( "igFocusTopMostWindowUnderOne" ) ]
6722- private static extern void FocusTopMostWindowUnderOneImpl ( Window * under_this_window , Window * ignore_window ) ;
6723- public static void FocusTopMostWindowUnderOne ( Window * under_this_window , Window * ignore_window ) => FocusTopMostWindowUnderOneImpl ( under_this_window , ignore_window ) ;
6766+ private static extern void FocusTopMostWindowUnderOneImpl ( Window * under_this_window , Window * ignore_window , Viewport * filter_viewport ) ;
6767+ public static void FocusTopMostWindowUnderOne ( Window * under_this_window , Window * ignore_window , Viewport * filter_viewport ) => FocusTopMostWindowUnderOneImpl ( under_this_window , ignore_window , filter_viewport ) ;
67246768
67256769 [ LinkName ( "igFocusWindow" ) ]
67266770 private static extern void FocusWindowImpl ( Window * window ) ;
@@ -7095,7 +7139,15 @@ namespace ImGui
70957139 out_buf = ? ;
70967140 }
70977141
7098- [ LinkName ( "igGetKeyData" ) ]
7142+ [ LinkName ( "igGetKeyData_ContextPtr" ) ]
7143+ private static extern KeyData * GetKeyDataImpl ( Context * ctx , Key key ) ;
7144+ #if IMGUI_USE_REF
7145+ public static ref KeyData GetKeyData ( Context * ctx , Key key ) { return ref * GetKeyDataImpl ( ctx , key ) ; }
7146+ #else
7147+ public static KeyData * GetKeyData ( Context * ctx , Key key ) => GetKeyDataImpl ( ctx , key ) ;
7148+ #endif
7149+
7150+ [ LinkName ( "igGetKeyData_Key" ) ]
70997151 private static extern KeyData * GetKeyDataImpl ( Key key ) ;
71007152 #if IMGUI_USE_REF
71017153 public static ref KeyData GetKeyData ( Key key ) { return ref * GetKeyDataImpl ( key ) ; }
@@ -7129,11 +7181,11 @@ namespace ImGui
71297181 public static ID GetKeyOwner ( Key key ) => GetKeyOwnerImpl ( key ) ;
71307182
71317183 [ LinkName ( "igGetKeyOwnerData" ) ]
7132- private static extern KeyOwnerData * GetKeyOwnerDataImpl ( Key key ) ;
7184+ private static extern KeyOwnerData * GetKeyOwnerDataImpl ( Context * ctx , Key key ) ;
71337185 #if IMGUI_USE_REF
7134- public static ref KeyOwnerData GetKeyOwnerData ( Key key ) { return ref * GetKeyOwnerDataImpl ( key ) ; }
7186+ public static ref KeyOwnerData GetKeyOwnerData ( Context * ctx , Key key ) { return ref * GetKeyOwnerDataImpl ( ctx , key ) ; }
71357187 #else
7136- public static KeyOwnerData * GetKeyOwnerData ( Key key ) => GetKeyOwnerDataImpl ( key ) ;
7188+ public static KeyOwnerData * GetKeyOwnerData ( Context * ctx , Key key ) => GetKeyOwnerDataImpl ( ctx , key ) ;
71377189 #endif
71387190
71397191 [ LinkName ( "igGetKeyPressedAmount" ) ]
@@ -8046,6 +8098,10 @@ namespace ImGui
80468098 private static extern bool InputTextImpl ( char * label , char * buf , size buf_size , InputTextFlags flags , InputTextCallback callback , void * user_data ) ;
80478099 public static bool InputText ( char * label , char * buf , size buf_size , InputTextFlags flags = ( InputTextFlags ) 0 , InputTextCallback callback = null , void * user_data = null ) => InputTextImpl ( label , buf , buf_size , flags , callback , user_data ) ;
80488100
8101+ [ LinkName ( "igInputTextDeactivateHook" ) ]
8102+ private static extern void InputTextDeactivateHookImpl ( ID id ) ;
8103+ public static void InputTextDeactivateHook ( ID id ) => InputTextDeactivateHookImpl ( id ) ;
8104+
80498105 [ LinkName ( "igInputTextEx" ) ]
80508106 private static extern bool InputTextExImpl ( char * label , char * hint , char * buf , int32 buf_size , Vec2 size_arg , InputTextFlags flags , InputTextCallback callback , void * user_data ) ;
80518107 public static bool InputTextEx ( char * label , char * hint , char * buf , int32 buf_size , Vec2 size_arg , InputTextFlags flags , InputTextCallback callback = null , void * user_data = null ) => InputTextExImpl ( label , hint , buf , buf_size , size_arg , flags , callback , user_data ) ;
@@ -8270,6 +8326,10 @@ namespace ImGui
82708326 private static extern bool IsWindowCollapsedImpl ( ) ;
82718327 public static bool IsWindowCollapsed ( ) => IsWindowCollapsedImpl ( ) ;
82728328
8329+ [ LinkName ( "igIsWindowContentHoverable" ) ]
8330+ private static extern bool IsWindowContentHoverableImpl ( Window * window , HoveredFlags flags ) ;
8331+ public static bool IsWindowContentHoverable ( Window * window , HoveredFlags flags = ( HoveredFlags ) 0 ) => IsWindowContentHoverableImpl ( window , flags ) ;
8332+
82738333 [ LinkName ( "igIsWindowDocked" ) ]
82748334 private static extern bool IsWindowDockedImpl ( ) ;
82758335 public static bool IsWindowDocked ( ) => IsWindowDockedImpl ( ) ;
@@ -8895,6 +8955,10 @@ namespace ImGui
88958955 private static extern void SetKeyOwnerImpl ( Key key , ID owner_id , InputFlags flags ) ;
88968956 public static void SetKeyOwner ( Key key , ID owner_id , InputFlags flags = ( InputFlags ) 0 ) => SetKeyOwnerImpl ( key , owner_id , flags ) ;
88978957
8958+ [ LinkName ( "igSetKeyOwnersForKeyChord" ) ]
8959+ private static extern void SetKeyOwnersForKeyChordImpl ( KeyChord key , ID owner_id , InputFlags flags ) ;
8960+ public static void SetKeyOwnersForKeyChord ( KeyChord key , ID owner_id , InputFlags flags = ( InputFlags ) 0 ) => SetKeyOwnersForKeyChordImpl ( key , owner_id , flags ) ;
8961+
88988962 [ LinkName ( "igSetKeyboardFocusHere" ) ]
88998963 private static extern void SetKeyboardFocusHereImpl ( int32 offset ) ;
89008964 public static void SetKeyboardFocusHere ( int32 offset = ( int32 ) 0 ) => SetKeyboardFocusHereImpl ( offset ) ;
0 commit comments