dear-imgui-raw-1.0.0: src/DearImGui/Raw/ImGuiInputTextCallbackData.hsc
{-# LANGUAGE CApiFFI #-}
{-# LANGUAGE PatternSynonyms #-}
-- This file was generated by dear-bindings-ffi. Do not edit by hand.
module DearImGui.Raw.ImGuiInputTextCallbackData
( ImGuiInputTextCallbackData (..)
, clearSelection
, deleteChars
, destroy
, hasSelection
, init
, insertChars
, selectAll
, setSelection
, withDefault
) where
import Control.Exception (bracket_)
import DearImGui.Raw (ImGuiID, ImWchar)
import DearImGui.Raw.Enums.ImGuiInputTextFlags (ImGuiInputTextFlags)
import DearImGui.Raw.Enums.ImGuiKey (ImGuiKey)
import DearImGui.Raw.ImGuiContext (ImGuiContext)
import Foreign.C.String (CString)
import Foreign.C.Types
import Foreign.Marshal.Alloc (alloca)
import Foreign.Ptr (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" "ImGuiInputTextCallbackData" #-} ImGuiInputTextCallbackData = ImGuiInputTextCallbackData
{ ctx :: Ptr ImGuiContext
, eventFlag :: ImGuiInputTextFlags
, flags :: ImGuiInputTextFlags
, userData :: Ptr ()
, iD :: ImGuiID
, eventKey :: ImGuiKey
, eventChar :: ImWchar
, eventActivated :: CBool
, bufDirty :: CBool
, buf :: Ptr CChar
, bufTextLen :: CInt
, bufSize :: CInt
, cursorPos :: CInt
, selectionStart :: CInt
, selectionEnd :: CInt
}
deriving (Eq, Show)
instance Storable ImGuiInputTextCallbackData where
sizeOf _ = #{size ImGuiInputTextCallbackData}
alignment _ = #{alignment ImGuiInputTextCallbackData}
peek p = ImGuiInputTextCallbackData <$> #{peek ImGuiInputTextCallbackData, Ctx} p <*> #{peek ImGuiInputTextCallbackData, EventFlag} p <*> #{peek ImGuiInputTextCallbackData, Flags} p <*> #{peek ImGuiInputTextCallbackData, UserData} p <*> #{peek ImGuiInputTextCallbackData, ID} p <*> #{peek ImGuiInputTextCallbackData, EventKey} p <*> #{peek ImGuiInputTextCallbackData, EventChar} p <*> #{peek ImGuiInputTextCallbackData, EventActivated} p <*> #{peek ImGuiInputTextCallbackData, BufDirty} p <*> #{peek ImGuiInputTextCallbackData, Buf} p <*> #{peek ImGuiInputTextCallbackData, BufTextLen} p <*> #{peek ImGuiInputTextCallbackData, BufSize} p <*> #{peek ImGuiInputTextCallbackData, CursorPos} p <*> #{peek ImGuiInputTextCallbackData, SelectionStart} p <*> #{peek ImGuiInputTextCallbackData, SelectionEnd} p
poke p v = do
#{poke ImGuiInputTextCallbackData, Ctx} p v.ctx
#{poke ImGuiInputTextCallbackData, EventFlag} p v.eventFlag
#{poke ImGuiInputTextCallbackData, Flags} p v.flags
#{poke ImGuiInputTextCallbackData, UserData} p v.userData
#{poke ImGuiInputTextCallbackData, ID} p v.iD
#{poke ImGuiInputTextCallbackData, EventKey} p v.eventKey
#{poke ImGuiInputTextCallbackData, EventChar} p v.eventChar
#{poke ImGuiInputTextCallbackData, EventActivated} p v.eventActivated
#{poke ImGuiInputTextCallbackData, BufDirty} p v.bufDirty
#{poke ImGuiInputTextCallbackData, Buf} p v.buf
#{poke ImGuiInputTextCallbackData, BufTextLen} p v.bufTextLen
#{poke ImGuiInputTextCallbackData, BufSize} p v.bufSize
#{poke ImGuiInputTextCallbackData, CursorPos} p v.cursorPos
#{poke ImGuiInputTextCallbackData, SelectionStart} p v.selectionStart
#{poke ImGuiInputTextCallbackData, SelectionEnd} p v.selectionEnd
instance HasField "ctx" (Ptr ImGuiInputTextCallbackData) (Ptr (Ptr ImGuiContext)) where
getField = #{ptr ImGuiInputTextCallbackData, Ctx}
instance HasField "eventFlag" (Ptr ImGuiInputTextCallbackData) (Ptr ImGuiInputTextFlags) where
getField = #{ptr ImGuiInputTextCallbackData, EventFlag}
instance HasField "flags" (Ptr ImGuiInputTextCallbackData) (Ptr ImGuiInputTextFlags) where
getField = #{ptr ImGuiInputTextCallbackData, Flags}
instance HasField "userData" (Ptr ImGuiInputTextCallbackData) (Ptr (Ptr ())) where
getField = #{ptr ImGuiInputTextCallbackData, UserData}
instance HasField "iD" (Ptr ImGuiInputTextCallbackData) (Ptr ImGuiID) where
getField = #{ptr ImGuiInputTextCallbackData, ID}
instance HasField "eventKey" (Ptr ImGuiInputTextCallbackData) (Ptr ImGuiKey) where
getField = #{ptr ImGuiInputTextCallbackData, EventKey}
instance HasField "eventChar" (Ptr ImGuiInputTextCallbackData) (Ptr ImWchar) where
getField = #{ptr ImGuiInputTextCallbackData, EventChar}
instance HasField "eventActivated" (Ptr ImGuiInputTextCallbackData) (Ptr CBool) where
getField = #{ptr ImGuiInputTextCallbackData, EventActivated}
instance HasField "bufDirty" (Ptr ImGuiInputTextCallbackData) (Ptr CBool) where
getField = #{ptr ImGuiInputTextCallbackData, BufDirty}
instance HasField "buf" (Ptr ImGuiInputTextCallbackData) (Ptr (Ptr CChar)) where
getField = #{ptr ImGuiInputTextCallbackData, Buf}
instance HasField "bufTextLen" (Ptr ImGuiInputTextCallbackData) (Ptr CInt) where
getField = #{ptr ImGuiInputTextCallbackData, BufTextLen}
instance HasField "bufSize" (Ptr ImGuiInputTextCallbackData) (Ptr CInt) where
getField = #{ptr ImGuiInputTextCallbackData, BufSize}
instance HasField "cursorPos" (Ptr ImGuiInputTextCallbackData) (Ptr CInt) where
getField = #{ptr ImGuiInputTextCallbackData, CursorPos}
instance HasField "selectionStart" (Ptr ImGuiInputTextCallbackData) (Ptr CInt) where
getField = #{ptr ImGuiInputTextCallbackData, SelectionStart}
instance HasField "selectionEnd" (Ptr ImGuiInputTextCallbackData) (Ptr CInt) where
getField = #{ptr ImGuiInputTextCallbackData, SelectionEnd}
foreign import capi unsafe "DearImGuiWrappers.h ImGuiInputTextCallbackData_Init_wrap"
init
:: Ptr ImGuiInputTextCallbackData
-> IO ()
foreign import capi unsafe "DearImGuiWrappers.h ImGuiInputTextCallbackData_Destroy_wrap"
destroy
:: Ptr ImGuiInputTextCallbackData
-> IO ()
withDefault :: (Ptr ImGuiInputTextCallbackData -> IO a) -> IO a
withDefault k = alloca $ \p -> bracket_ (init p) (destroy p) (k p)
-- functions
-- C: void ClearSelection(ImGuiInputTextCallbackData* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions.h ImGuiInputTextCallbackData_ClearSelection"
clearSelection
:: (Ptr ImGuiInputTextCallbackData) -- ^ self
-> IO ()
-- C: void DeleteChars(ImGuiInputTextCallbackData* self, int pos, int bytes_count)
foreign import capi unsafe "dcimgui_nodefaultargfunctions.h ImGuiInputTextCallbackData_DeleteChars"
deleteChars
:: (Ptr ImGuiInputTextCallbackData) -- ^ self
-> CInt -- ^ pos
-> CInt -- ^ bytes_count
-> IO ()
-- C: bool HasSelection(const ImGuiInputTextCallbackData* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions.h ImGuiInputTextCallbackData_HasSelection"
hasSelection
:: (Ptr ImGuiInputTextCallbackData) -- ^ self
-> IO CBool
-- C: void InsertChars(ImGuiInputTextCallbackData* self, int pos, const char* text, const char* text_end)
foreign import capi unsafe "dcimgui_nodefaultargfunctions.h ImGuiInputTextCallbackData_InsertChars"
insertChars
:: (Ptr ImGuiInputTextCallbackData) -- ^ self
-> CInt -- ^ pos
-> CString -- ^ text
-> CString -- ^ text_end
-> IO ()
-- C: void SelectAll(ImGuiInputTextCallbackData* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions.h ImGuiInputTextCallbackData_SelectAll"
selectAll
:: (Ptr ImGuiInputTextCallbackData) -- ^ self
-> IO ()
-- C: void SetSelection(ImGuiInputTextCallbackData* self, int s, int e)
foreign import capi unsafe "dcimgui_nodefaultargfunctions.h ImGuiInputTextCallbackData_SetSelection"
setSelection
:: (Ptr ImGuiInputTextCallbackData) -- ^ self
-> CInt -- ^ s
-> CInt -- ^ e
-> IO ()