dear-imgui-raw-internal-1.0.0: src/DearImGui/Raw/Internal/ImGuiDockNode.hsc
{-# LANGUAGE CApiFFI #-}
{-# LANGUAGE PatternSynonyms #-}
-- This file was generated by dear-bindings-ffi. Do not edit by hand.
module DearImGui.Raw.Internal.ImGuiDockNode
( ImGuiDockNode
, c_rect
, childNodesLength
, isCentralNode
, isDockSpace
, isEmpty
, isFloatingNode
, isHiddenTabBar
, isLeafNode
, isNoTabBar
, isRootNode
, isSplitNode
, rect
, setLocalFlags
, updateMergedFlags
) where
import DearImGui.Raw (ImGuiID, ImU32)
import DearImGui.Raw.Enums.ImGuiDockNodeFlags (ImGuiDockNodeFlags)
import DearImGui.Raw.ImGuiWindowClass (ImGuiWindowClass)
import DearImGui.Raw.ImVec2 (ImVec2)
import DearImGui.Raw.ImVector (ImVector)
import DearImGui.Raw.Internal.Enums.ImGuiAxis (ImGuiAxis)
import DearImGui.Raw.Internal.Enums.ImGuiDockNodeState (ImGuiDockNodeState)
import DearImGui.Raw.Internal.ImGuiTabBar (ImGuiTabBar)
import DearImGui.Raw.Internal.ImGuiWindow (ImGuiWindow)
import DearImGui.Raw.Internal.ImRect (ImRect)
import Foreign.C.Types
import Foreign.Marshal.Alloc (alloca)
import Foreign.Ptr (Ptr, plusPtr)
import Foreign.Storable (Storable (..))
import GHC.Records (HasField (..))
#include "dcimgui_nodefaultargfunctions_internal.h"
-- structs (opaque)
data ImGuiDockNode
instance Storable ImGuiDockNode where
sizeOf _ = #{size ImGuiDockNode}
alignment _ = #{alignment ImGuiDockNode}
peek _ = error "ImGuiDockNode: opaque struct, peek not supported in v0"
poke _ _ = error "ImGuiDockNode: opaque struct, poke not supported in v0"
instance HasField "iD" (Ptr ImGuiDockNode) (Ptr ImGuiID) where
getField = #{ptr ImGuiDockNode, ID}
instance HasField "sharedFlags" (Ptr ImGuiDockNode) (Ptr ImGuiDockNodeFlags) where
getField = #{ptr ImGuiDockNode, SharedFlags}
instance HasField "localFlags" (Ptr ImGuiDockNode) (Ptr ImGuiDockNodeFlags) where
getField = #{ptr ImGuiDockNode, LocalFlags}
instance HasField "localFlagsInWindows" (Ptr ImGuiDockNode) (Ptr ImGuiDockNodeFlags) where
getField = #{ptr ImGuiDockNode, LocalFlagsInWindows}
instance HasField "mergedFlags" (Ptr ImGuiDockNode) (Ptr ImGuiDockNodeFlags) where
getField = #{ptr ImGuiDockNode, MergedFlags}
instance HasField "state" (Ptr ImGuiDockNode) (Ptr ImGuiDockNodeState) where
getField = #{ptr ImGuiDockNode, State}
instance HasField "parentNode" (Ptr ImGuiDockNode) (Ptr (Ptr ImGuiDockNode)) where
getField = #{ptr ImGuiDockNode, ParentNode}
instance HasField "childNodes" (Ptr ImGuiDockNode) (Ptr (Ptr ImGuiDockNode)) where
getField = #{ptr ImGuiDockNode, ChildNodes}
childNodesLength :: Int
childNodesLength = #{const 2}
instance HasField "windows" (Ptr ImGuiDockNode) (Ptr (ImVector (Ptr ImGuiWindow))) where
getField = #{ptr ImGuiDockNode, Windows}
instance HasField "tabBar" (Ptr ImGuiDockNode) (Ptr (Ptr ImGuiTabBar)) where
getField = #{ptr ImGuiDockNode, TabBar}
instance HasField "pos" (Ptr ImGuiDockNode) (Ptr ImVec2) where
getField = #{ptr ImGuiDockNode, Pos}
instance HasField "size" (Ptr ImGuiDockNode) (Ptr ImVec2) where
getField = #{ptr ImGuiDockNode, Size}
instance HasField "sizeRef" (Ptr ImGuiDockNode) (Ptr ImVec2) where
getField = #{ptr ImGuiDockNode, SizeRef}
instance HasField "splitAxis" (Ptr ImGuiDockNode) (Ptr ImGuiAxis) where
getField = #{ptr ImGuiDockNode, SplitAxis}
instance HasField "lastBgColor" (Ptr ImGuiDockNode) (Ptr ImU32) where
getField = #{ptr ImGuiDockNode, LastBgColor}
instance HasField "windowClass" (Ptr ImGuiDockNode) (Ptr ImGuiWindowClass) where
getField = #{ptr ImGuiDockNode, WindowClass}
instance HasField "hostWindow" (Ptr ImGuiDockNode) (Ptr (Ptr ImGuiWindow)) where
getField = #{ptr ImGuiDockNode, HostWindow}
instance HasField "visibleWindow" (Ptr ImGuiDockNode) (Ptr (Ptr ImGuiWindow)) where
getField = #{ptr ImGuiDockNode, VisibleWindow}
instance HasField "centralNode" (Ptr ImGuiDockNode) (Ptr (Ptr ImGuiDockNode)) where
getField = #{ptr ImGuiDockNode, CentralNode}
instance HasField "onlyNodeWithWindows" (Ptr ImGuiDockNode) (Ptr (Ptr ImGuiDockNode)) where
getField = #{ptr ImGuiDockNode, OnlyNodeWithWindows}
instance HasField "countNodeWithWindows" (Ptr ImGuiDockNode) (Ptr CInt) where
getField = #{ptr ImGuiDockNode, CountNodeWithWindows}
instance HasField "lastFrameAlive" (Ptr ImGuiDockNode) (Ptr CInt) where
getField = #{ptr ImGuiDockNode, LastFrameAlive}
instance HasField "lastFrameActive" (Ptr ImGuiDockNode) (Ptr CInt) where
getField = #{ptr ImGuiDockNode, LastFrameActive}
instance HasField "lastFrameFocused" (Ptr ImGuiDockNode) (Ptr CInt) where
getField = #{ptr ImGuiDockNode, LastFrameFocused}
instance HasField "lastFocusedNodeId" (Ptr ImGuiDockNode) (Ptr ImGuiID) where
getField = #{ptr ImGuiDockNode, LastFocusedNodeId}
instance HasField "selectedTabId" (Ptr ImGuiDockNode) (Ptr ImGuiID) where
getField = #{ptr ImGuiDockNode, SelectedTabId}
instance HasField "wantCloseTabId" (Ptr ImGuiDockNode) (Ptr ImGuiID) where
getField = #{ptr ImGuiDockNode, WantCloseTabId}
instance HasField "refViewportId" (Ptr ImGuiDockNode) (Ptr ImGuiID) where
getField = #{ptr ImGuiDockNode, RefViewportId}
-- functions
-- C: bool IsCentralNode(const ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_IsCentralNode"
isCentralNode
:: (Ptr ImGuiDockNode) -- ^ self
-> IO CBool
-- C: bool IsDockSpace(const ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_IsDockSpace"
isDockSpace
:: (Ptr ImGuiDockNode) -- ^ self
-> IO CBool
-- C: bool IsEmpty(const ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_IsEmpty"
isEmpty
:: (Ptr ImGuiDockNode) -- ^ self
-> IO CBool
-- C: bool IsFloatingNode(const ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_IsFloatingNode"
isFloatingNode
:: (Ptr ImGuiDockNode) -- ^ self
-> IO CBool
-- C: bool IsHiddenTabBar(const ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_IsHiddenTabBar"
isHiddenTabBar
:: (Ptr ImGuiDockNode) -- ^ self
-> IO CBool
-- C: bool IsLeafNode(const ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_IsLeafNode"
isLeafNode
:: (Ptr ImGuiDockNode) -- ^ self
-> IO CBool
-- C: bool IsNoTabBar(const ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_IsNoTabBar"
isNoTabBar
:: (Ptr ImGuiDockNode) -- ^ self
-> IO CBool
-- C: bool IsRootNode(const ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_IsRootNode"
isRootNode
:: (Ptr ImGuiDockNode) -- ^ self
-> IO CBool
-- C: bool IsSplitNode(const ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_IsSplitNode"
isSplitNode
:: (Ptr ImGuiDockNode) -- ^ self
-> IO CBool
foreign import capi unsafe "DearImGuiWrappers.h ImGuiDockNode_Rect_wrap"
c_rect
:: (Ptr ImGuiDockNode) -- ^ self
-> (Ptr ImRect) -- ^ out
-> IO ()
rect
:: (Ptr ImGuiDockNode) -- ^ self
-> IO ImRect
rect self =
alloca $ \outPtr -> c_rect self outPtr >> peek outPtr
-- C: void SetLocalFlags(ImGuiDockNode* self, ImGuiDockNodeFlags flags)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_SetLocalFlags"
setLocalFlags
:: (Ptr ImGuiDockNode) -- ^ self
-> ImGuiDockNodeFlags -- ^ flags
-> IO ()
-- C: void UpdateMergedFlags(ImGuiDockNode* self)
foreign import capi unsafe "dcimgui_nodefaultargfunctions_internal.h ImGuiDockNode_UpdateMergedFlags"
updateMergedFlags
:: (Ptr ImGuiDockNode) -- ^ self
-> IO ()