dear-imgui-raw-1.0.0: src/DearImGui/Raw/ImGuiPlatformIO.hsc
{-# LANGUAGE CApiFFI #-}
{-# LANGUAGE PatternSynonyms #-}
-- This file was generated by dear-bindings-ffi. Do not edit by hand.
module DearImGui.Raw.ImGuiPlatformIO
( ImGuiPlatformIO (..)
, clearPlatformHandlers
, clearRendererHandlers
, destroy
, init
, withDefault
) where
import Control.Exception (bracket_)
import DearImGui.Raw (ImDrawCallback, ImU64, ImWchar)
import DearImGui.Raw.ImGuiContext (ImGuiContext)
import DearImGui.Raw.ImGuiPlatformImeData (ImGuiPlatformImeData)
import DearImGui.Raw.ImGuiPlatformMonitor (ImGuiPlatformMonitor)
import DearImGui.Raw.ImGuiViewport (ImGuiViewport)
import DearImGui.Raw.ImTextureData (ImTextureData)
import DearImGui.Raw.ImVec2 (ImVec2)
import DearImGui.Raw.ImVec4 (ImVec4)
import DearImGui.Raw.ImVector (ImVector)
import Foreign.C.String (CString)
import Foreign.C.Types
import Foreign.Marshal.Alloc (alloca)
import Foreign.Ptr (FunPtr, Ptr, plusPtr)
import Foreign.Storable (Storable (..))
import GHC.Records (HasField (..))
import Prelude hiding (init)
#include "dcimgui_nodefaultargfunctions.h"
-- structs (opaque)
data {-# CTYPE "dcimgui_nodefaultargfunctions.h" "ImGuiPlatformIO" #-} ImGuiPlatformIO = ImGuiPlatformIO
{ platform_GetClipboardTextFn :: FunPtr ((Ptr ImGuiContext) -> IO CString)
, platform_SetClipboardTextFn :: FunPtr ((Ptr ImGuiContext) -> CString -> IO ())
, platform_ClipboardUserData :: Ptr ()
, platform_OpenInShellFn :: FunPtr ((Ptr ImGuiContext) -> CString -> IO CBool)
, platform_OpenInShellUserData :: Ptr ()
, platform_SetImeDataFn :: FunPtr ((Ptr ImGuiContext) -> (Ptr ImGuiViewport) -> (Ptr ImGuiPlatformImeData) -> IO ())
, platform_ImeUserData :: Ptr ()
, platform_LocaleDecimalPoint :: ImWchar
, platform_SessionDate :: CInt
, renderer_TextureMaxWidth :: CInt
, renderer_TextureMaxHeight :: CInt
, renderer_RenderState :: Ptr ()
, drawCallback_ResetRenderState :: ImDrawCallback
, drawCallback_SetSamplerLinear :: ImDrawCallback
, drawCallback_SetSamplerNearest :: ImDrawCallback
, drawCallback_SetSamplerFromTex :: ImDrawCallback
, platform_CreateWindow :: FunPtr ((Ptr ImGuiViewport) -> IO ())
, platform_DestroyWindow :: FunPtr ((Ptr ImGuiViewport) -> IO ())
, platform_ShowWindow :: FunPtr ((Ptr ImGuiViewport) -> IO ())
, platform_SetWindowPos :: FunPtr ((Ptr ImGuiViewport) -> ImVec2 -> IO ())
, platform_GetWindowPos :: FunPtr ((Ptr ImGuiViewport) -> IO ImVec2)
, platform_SetWindowSize :: FunPtr ((Ptr ImGuiViewport) -> ImVec2 -> IO ())
, platform_GetWindowSize :: FunPtr ((Ptr ImGuiViewport) -> IO ImVec2)
, platform_GetWindowFramebufferScale :: FunPtr ((Ptr ImGuiViewport) -> IO ImVec2)
, platform_SetWindowFocus :: FunPtr ((Ptr ImGuiViewport) -> IO ())
, platform_GetWindowFocus :: FunPtr ((Ptr ImGuiViewport) -> IO CBool)
, platform_GetWindowMinimized :: FunPtr ((Ptr ImGuiViewport) -> IO CBool)
, platform_SetWindowTitle :: FunPtr ((Ptr ImGuiViewport) -> CString -> IO ())
, platform_SetWindowAlpha :: FunPtr ((Ptr ImGuiViewport) -> Float -> IO ())
, platform_UpdateWindow :: FunPtr ((Ptr ImGuiViewport) -> IO ())
, platform_RenderWindow :: FunPtr ((Ptr ImGuiViewport) -> (Ptr ()) -> IO ())
, platform_SwapBuffers :: FunPtr ((Ptr ImGuiViewport) -> (Ptr ()) -> IO ())
, platform_GetWindowDpiScale :: FunPtr ((Ptr ImGuiViewport) -> IO Float)
, platform_OnChangedViewport :: FunPtr ((Ptr ImGuiViewport) -> IO ())
, platform_GetWindowWorkAreaInsets :: FunPtr ((Ptr ImGuiViewport) -> IO ImVec4)
, platform_CreateVkSurface :: FunPtr ((Ptr ImGuiViewport) -> ImU64 -> (Ptr ()) -> (Ptr ImU64) -> IO CInt)
, renderer_CreateWindow :: FunPtr ((Ptr ImGuiViewport) -> IO ())
, renderer_DestroyWindow :: FunPtr ((Ptr ImGuiViewport) -> IO ())
, renderer_SetWindowSize :: FunPtr ((Ptr ImGuiViewport) -> ImVec2 -> IO ())
, renderer_RenderWindow :: FunPtr ((Ptr ImGuiViewport) -> (Ptr ()) -> IO ())
, renderer_SwapBuffers :: FunPtr ((Ptr ImGuiViewport) -> (Ptr ()) -> IO ())
, monitors :: ImVector ImGuiPlatformMonitor
, textures :: ImVector (Ptr ImTextureData)
, viewports :: ImVector (Ptr ImGuiViewport)
}
deriving (Eq, Show)
instance Storable ImGuiPlatformIO where
sizeOf _ = #{size ImGuiPlatformIO}
alignment _ = #{alignment ImGuiPlatformIO}
peek p = ImGuiPlatformIO <$> #{peek ImGuiPlatformIO, Platform_GetClipboardTextFn} p <*> #{peek ImGuiPlatformIO, Platform_SetClipboardTextFn} p <*> #{peek ImGuiPlatformIO, Platform_ClipboardUserData} p <*> #{peek ImGuiPlatformIO, Platform_OpenInShellFn} p <*> #{peek ImGuiPlatformIO, Platform_OpenInShellUserData} p <*> #{peek ImGuiPlatformIO, Platform_SetImeDataFn} p <*> #{peek ImGuiPlatformIO, Platform_ImeUserData} p <*> #{peek ImGuiPlatformIO, Platform_LocaleDecimalPoint} p <*> #{peek ImGuiPlatformIO, Platform_SessionDate} p <*> #{peek ImGuiPlatformIO, Renderer_TextureMaxWidth} p <*> #{peek ImGuiPlatformIO, Renderer_TextureMaxHeight} p <*> #{peek ImGuiPlatformIO, Renderer_RenderState} p <*> #{peek ImGuiPlatformIO, DrawCallback_ResetRenderState} p <*> #{peek ImGuiPlatformIO, DrawCallback_SetSamplerLinear} p <*> #{peek ImGuiPlatformIO, DrawCallback_SetSamplerNearest} p <*> #{peek ImGuiPlatformIO, DrawCallback_SetSamplerFromTex} p <*> #{peek ImGuiPlatformIO, Platform_CreateWindow} p <*> #{peek ImGuiPlatformIO, Platform_DestroyWindow} p <*> #{peek ImGuiPlatformIO, Platform_ShowWindow} p <*> #{peek ImGuiPlatformIO, Platform_SetWindowPos} p <*> #{peek ImGuiPlatformIO, Platform_GetWindowPos} p <*> #{peek ImGuiPlatformIO, Platform_SetWindowSize} p <*> #{peek ImGuiPlatformIO, Platform_GetWindowSize} p <*> #{peek ImGuiPlatformIO, Platform_GetWindowFramebufferScale} p <*> #{peek ImGuiPlatformIO, Platform_SetWindowFocus} p <*> #{peek ImGuiPlatformIO, Platform_GetWindowFocus} p <*> #{peek ImGuiPlatformIO, Platform_GetWindowMinimized} p <*> #{peek ImGuiPlatformIO, Platform_SetWindowTitle} p <*> #{peek ImGuiPlatformIO, Platform_SetWindowAlpha} p <*> #{peek ImGuiPlatformIO, Platform_UpdateWindow} p <*> #{peek ImGuiPlatformIO, Platform_RenderWindow} p <*> #{peek ImGuiPlatformIO, Platform_SwapBuffers} p <*> #{peek ImGuiPlatformIO, Platform_GetWindowDpiScale} p <*> #{peek ImGuiPlatformIO, Platform_OnChangedViewport} p <*> #{peek ImGuiPlatformIO, Platform_GetWindowWorkAreaInsets} p <*> #{peek ImGuiPlatformIO, Platform_CreateVkSurface} p <*> #{peek ImGuiPlatformIO, Renderer_CreateWindow} p <*> #{peek ImGuiPlatformIO, Renderer_DestroyWindow} p <*> #{peek ImGuiPlatformIO, Renderer_SetWindowSize} p <*> #{peek ImGuiPlatformIO, Renderer_RenderWindow} p <*> #{peek ImGuiPlatformIO, Renderer_SwapBuffers} p <*> #{peek ImGuiPlatformIO, Monitors} p <*> #{peek ImGuiPlatformIO, Textures} p <*> #{peek ImGuiPlatformIO, Viewports} p
poke p v = do
#{poke ImGuiPlatformIO, Platform_GetClipboardTextFn} p v.platform_GetClipboardTextFn
#{poke ImGuiPlatformIO, Platform_SetClipboardTextFn} p v.platform_SetClipboardTextFn
#{poke ImGuiPlatformIO, Platform_ClipboardUserData} p v.platform_ClipboardUserData
#{poke ImGuiPlatformIO, Platform_OpenInShellFn} p v.platform_OpenInShellFn
#{poke ImGuiPlatformIO, Platform_OpenInShellUserData} p v.platform_OpenInShellUserData
#{poke ImGuiPlatformIO, Platform_SetImeDataFn} p v.platform_SetImeDataFn
#{poke ImGuiPlatformIO, Platform_ImeUserData} p v.platform_ImeUserData
#{poke ImGuiPlatformIO, Platform_LocaleDecimalPoint} p v.platform_LocaleDecimalPoint
#{poke ImGuiPlatformIO, Platform_SessionDate} p v.platform_SessionDate
#{poke ImGuiPlatformIO, Renderer_TextureMaxWidth} p v.renderer_TextureMaxWidth
#{poke ImGuiPlatformIO, Renderer_TextureMaxHeight} p v.renderer_TextureMaxHeight
#{poke ImGuiPlatformIO, Renderer_RenderState} p v.renderer_RenderState
#{poke ImGuiPlatformIO, DrawCallback_ResetRenderState} p v.drawCallback_ResetRenderState
#{poke ImGuiPlatformIO, DrawCallback_SetSamplerLinear} p v.drawCallback_SetSamplerLinear
#{poke ImGuiPlatformIO, DrawCallback_SetSamplerNearest} p v.drawCallback_SetSamplerNearest
#{poke ImGuiPlatformIO, DrawCallback_SetSamplerFromTex} p v.drawCallback_SetSamplerFromTex
#{poke ImGuiPlatformIO, Platform_CreateWindow} p v.platform_CreateWindow
#{poke ImGuiPlatformIO, Platform_DestroyWindow} p v.platform_DestroyWindow
#{poke ImGuiPlatformIO, Platform_ShowWindow} p v.platform_ShowWindow
#{poke ImGuiPlatformIO, Platform_SetWindowPos} p v.platform_SetWindowPos
#{poke ImGuiPlatformIO, Platform_GetWindowPos} p v.platform_GetWindowPos
#{poke ImGuiPlatformIO, Platform_SetWindowSize} p v.platform_SetWindowSize
#{poke ImGuiPlatformIO, Platform_GetWindowSize} p v.platform_GetWindowSize
#{poke ImGuiPlatformIO, Platform_GetWindowFramebufferScale} p v.platform_GetWindowFramebufferScale
#{poke ImGuiPlatformIO, Platform_SetWindowFocus} p v.platform_SetWindowFocus
#{poke ImGuiPlatformIO, Platform_GetWindowFocus} p v.platform_GetWindowFocus
#{poke ImGuiPlatformIO, Platform_GetWindowMinimized} p v.platform_GetWindowMinimized
#{poke ImGuiPlatformIO, Platform_SetWindowTitle} p v.platform_SetWindowTitle
#{poke ImGuiPlatformIO, Platform_SetWindowAlpha} p v.platform_SetWindowAlpha
#{poke ImGuiPlatformIO, Platform_UpdateWindow} p v.platform_UpdateWindow
#{poke ImGuiPlatformIO, Platform_RenderWindow} p v.platform_RenderWindow
#{poke ImGuiPlatformIO, Platform_SwapBuffers} p v.platform_SwapBuffers
#{poke ImGuiPlatformIO, Platform_GetWindowDpiScale} p v.platform_GetWindowDpiScale
#{poke ImGuiPlatformIO, Platform_OnChangedViewport} p v.platform_OnChangedViewport
#{poke ImGuiPlatformIO, Platform_GetWindowWorkAreaInsets} p v.platform_GetWindowWorkAreaInsets
#{poke ImGuiPlatformIO, Platform_CreateVkSurface} p v.platform_CreateVkSurface
#{poke ImGuiPlatformIO, Renderer_CreateWindow} p v.renderer_CreateWindow
#{poke ImGuiPlatformIO, Renderer_DestroyWindow} p v.renderer_DestroyWindow
#{poke ImGuiPlatformIO, Renderer_SetWindowSize} p v.renderer_SetWindowSize
#{poke ImGuiPlatformIO, Renderer_RenderWindow} p v.renderer_RenderWindow
#{poke ImGuiPlatformIO, Renderer_SwapBuffers} p v.renderer_SwapBuffers
#{poke ImGuiPlatformIO, Monitors} p v.monitors
#{poke ImGuiPlatformIO, Textures} p v.textures
#{poke ImGuiPlatformIO, Viewports} p v.viewports
instance HasField "platform_GetClipboardTextFn" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiContext) -> IO CString))) where
getField = #{ptr ImGuiPlatformIO, Platform_GetClipboardTextFn}
instance HasField "platform_SetClipboardTextFn" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiContext) -> CString -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_SetClipboardTextFn}
instance HasField "platform_ClipboardUserData" (Ptr ImGuiPlatformIO) (Ptr (Ptr ())) where
getField = #{ptr ImGuiPlatformIO, Platform_ClipboardUserData}
instance HasField "platform_OpenInShellFn" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiContext) -> CString -> IO CBool))) where
getField = #{ptr ImGuiPlatformIO, Platform_OpenInShellFn}
instance HasField "platform_OpenInShellUserData" (Ptr ImGuiPlatformIO) (Ptr (Ptr ())) where
getField = #{ptr ImGuiPlatformIO, Platform_OpenInShellUserData}
instance HasField "platform_SetImeDataFn" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiContext) -> (Ptr ImGuiViewport) -> (Ptr ImGuiPlatformImeData) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_SetImeDataFn}
instance HasField "platform_ImeUserData" (Ptr ImGuiPlatformIO) (Ptr (Ptr ())) where
getField = #{ptr ImGuiPlatformIO, Platform_ImeUserData}
instance HasField "platform_LocaleDecimalPoint" (Ptr ImGuiPlatformIO) (Ptr ImWchar) where
getField = #{ptr ImGuiPlatformIO, Platform_LocaleDecimalPoint}
instance HasField "platform_SessionDate" (Ptr ImGuiPlatformIO) (Ptr CInt) where
getField = #{ptr ImGuiPlatformIO, Platform_SessionDate}
instance HasField "renderer_TextureMaxWidth" (Ptr ImGuiPlatformIO) (Ptr CInt) where
getField = #{ptr ImGuiPlatformIO, Renderer_TextureMaxWidth}
instance HasField "renderer_TextureMaxHeight" (Ptr ImGuiPlatformIO) (Ptr CInt) where
getField = #{ptr ImGuiPlatformIO, Renderer_TextureMaxHeight}
instance HasField "renderer_RenderState" (Ptr ImGuiPlatformIO) (Ptr (Ptr ())) where
getField = #{ptr ImGuiPlatformIO, Renderer_RenderState}
instance HasField "drawCallback_ResetRenderState" (Ptr ImGuiPlatformIO) (Ptr ImDrawCallback) where
getField = #{ptr ImGuiPlatformIO, DrawCallback_ResetRenderState}
instance HasField "drawCallback_SetSamplerLinear" (Ptr ImGuiPlatformIO) (Ptr ImDrawCallback) where
getField = #{ptr ImGuiPlatformIO, DrawCallback_SetSamplerLinear}
instance HasField "drawCallback_SetSamplerNearest" (Ptr ImGuiPlatformIO) (Ptr ImDrawCallback) where
getField = #{ptr ImGuiPlatformIO, DrawCallback_SetSamplerNearest}
instance HasField "drawCallback_SetSamplerFromTex" (Ptr ImGuiPlatformIO) (Ptr ImDrawCallback) where
getField = #{ptr ImGuiPlatformIO, DrawCallback_SetSamplerFromTex}
instance HasField "platform_CreateWindow" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_CreateWindow}
instance HasField "platform_DestroyWindow" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_DestroyWindow}
instance HasField "platform_ShowWindow" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_ShowWindow}
instance HasField "platform_SetWindowPos" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> ImVec2 -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_SetWindowPos}
instance HasField "platform_GetWindowPos" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ImVec2))) where
getField = #{ptr ImGuiPlatformIO, Platform_GetWindowPos}
instance HasField "platform_SetWindowSize" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> ImVec2 -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_SetWindowSize}
instance HasField "platform_GetWindowSize" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ImVec2))) where
getField = #{ptr ImGuiPlatformIO, Platform_GetWindowSize}
instance HasField "platform_GetWindowFramebufferScale" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ImVec2))) where
getField = #{ptr ImGuiPlatformIO, Platform_GetWindowFramebufferScale}
instance HasField "platform_SetWindowFocus" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_SetWindowFocus}
instance HasField "platform_GetWindowFocus" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO CBool))) where
getField = #{ptr ImGuiPlatformIO, Platform_GetWindowFocus}
instance HasField "platform_GetWindowMinimized" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO CBool))) where
getField = #{ptr ImGuiPlatformIO, Platform_GetWindowMinimized}
instance HasField "platform_SetWindowTitle" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> CString -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_SetWindowTitle}
instance HasField "platform_SetWindowAlpha" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> Float -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_SetWindowAlpha}
instance HasField "platform_UpdateWindow" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_UpdateWindow}
instance HasField "platform_RenderWindow" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> (Ptr ()) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_RenderWindow}
instance HasField "platform_SwapBuffers" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> (Ptr ()) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_SwapBuffers}
instance HasField "platform_GetWindowDpiScale" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO Float))) where
getField = #{ptr ImGuiPlatformIO, Platform_GetWindowDpiScale}
instance HasField "platform_OnChangedViewport" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Platform_OnChangedViewport}
instance HasField "platform_GetWindowWorkAreaInsets" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ImVec4))) where
getField = #{ptr ImGuiPlatformIO, Platform_GetWindowWorkAreaInsets}
instance HasField "platform_CreateVkSurface" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> ImU64 -> (Ptr ()) -> (Ptr ImU64) -> IO CInt))) where
getField = #{ptr ImGuiPlatformIO, Platform_CreateVkSurface}
instance HasField "renderer_CreateWindow" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Renderer_CreateWindow}
instance HasField "renderer_DestroyWindow" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Renderer_DestroyWindow}
instance HasField "renderer_SetWindowSize" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> ImVec2 -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Renderer_SetWindowSize}
instance HasField "renderer_RenderWindow" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> (Ptr ()) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Renderer_RenderWindow}
instance HasField "renderer_SwapBuffers" (Ptr ImGuiPlatformIO) (Ptr (FunPtr ((Ptr ImGuiViewport) -> (Ptr ()) -> IO ()))) where
getField = #{ptr ImGuiPlatformIO, Renderer_SwapBuffers}
instance HasField "monitors" (Ptr ImGuiPlatformIO) (Ptr (ImVector ImGuiPlatformMonitor)) where
getField = #{ptr ImGuiPlatformIO, Monitors}
instance HasField "textures" (Ptr ImGuiPlatformIO) (Ptr (ImVector (Ptr ImTextureData))) where
getField = #{ptr ImGuiPlatformIO, Textures}
instance HasField "viewports" (Ptr ImGuiPlatformIO) (Ptr (ImVector (Ptr ImGuiViewport))) where
getField = #{ptr ImGuiPlatformIO, Viewports}
foreign import capi unsafe "DearImGuiWrappers.h ImGuiPlatformIO_Init_wrap"
init
:: Ptr ImGuiPlatformIO
-> IO ()
foreign import capi unsafe "DearImGuiWrappers.h ImGuiPlatformIO_Destroy_wrap"
destroy
:: Ptr ImGuiPlatformIO
-> IO ()
withDefault :: (Ptr ImGuiPlatformIO -> IO a) -> IO a
withDefault k = alloca $ \p -> bracket_ (init p) (destroy p) (k p)
-- functions
-- C: void ClearPlatformHandlers(ImGuiPlatformIO* self)
foreign import capi safe "dcimgui_nodefaultargfunctions.h ImGuiPlatformIO_ClearPlatformHandlers"
clearPlatformHandlers
:: (Ptr ImGuiPlatformIO) -- ^ self
-> IO ()
-- C: void ClearRendererHandlers(ImGuiPlatformIO* self)
foreign import capi safe "dcimgui_nodefaultargfunctions.h ImGuiPlatformIO_ClearRendererHandlers"
clearRendererHandlers
:: (Ptr ImGuiPlatformIO) -- ^ self
-> IO ()