mirror of
https://github.com/Drezil/dear-imgui.hs.git
synced 2025-07-06 04:58:48 +02:00
Add imageButton (#97)
This commit is contained in:
committed by
GitHub
parent
88326420b8
commit
e3f7fbfd6f
@ -106,6 +106,7 @@ module DearImGui.Raw
|
||||
, invisibleButton
|
||||
, arrowButton
|
||||
, image
|
||||
, imageButton
|
||||
, checkbox
|
||||
, progressBar
|
||||
, bullet
|
||||
@ -568,16 +569,39 @@ arrowButton strIdPtr dir = liftIO do
|
||||
-- Wraps @ImGui::Image()@.
|
||||
image :: (MonadIO m) => Ptr () -> Ptr ImVec2 -> Ptr ImVec2 -> Ptr ImVec2 -> Ptr ImVec4 -> Ptr ImVec4 -> m ()
|
||||
image userTextureIDPtr sizePtr uv0Ptr uv1Ptr tintColPtr borderColPtr = liftIO do
|
||||
[C.exp| void {
|
||||
Image(
|
||||
$(void* userTextureIDPtr),
|
||||
*$(ImVec2* sizePtr),
|
||||
*$(ImVec2* uv0Ptr),
|
||||
*$(ImVec2* uv1Ptr),
|
||||
*$(ImVec4* tintColPtr),
|
||||
*$(ImVec4* borderColPtr)
|
||||
)
|
||||
} |]
|
||||
[C.exp|
|
||||
void {
|
||||
Image(
|
||||
$(void* userTextureIDPtr),
|
||||
*$(ImVec2* sizePtr),
|
||||
*$(ImVec2* uv0Ptr),
|
||||
*$(ImVec2* uv1Ptr),
|
||||
*$(ImVec4* tintColPtr),
|
||||
*$(ImVec4* borderColPtr)
|
||||
)
|
||||
}
|
||||
|]
|
||||
|
||||
-- | Clickable Image Area.
|
||||
--
|
||||
-- Negative @frame_padding@ uses default frame padding settings. Set to 0 for no padding.
|
||||
--
|
||||
-- Wraps @ImGui::ImageButton()@.
|
||||
imageButton :: (MonadIO m) => Ptr () -> Ptr ImVec2 -> Ptr ImVec2 -> Ptr ImVec2 -> CInt -> Ptr ImVec4 -> Ptr ImVec4 -> m Bool
|
||||
imageButton userTextureIDPtr sizePtr uv0Ptr uv1Ptr framePadding bgColPtr tintColPtr = liftIO do
|
||||
(0 /=) <$> [C.exp|
|
||||
bool {
|
||||
ImageButton(
|
||||
$(void* userTextureIDPtr),
|
||||
*$(ImVec2* sizePtr),
|
||||
*$(ImVec2* uv0Ptr),
|
||||
*$(ImVec2* uv1Ptr),
|
||||
$(int framePadding),
|
||||
*$(ImVec4* bgColPtr),
|
||||
*$(ImVec4* tintColPtr)
|
||||
)
|
||||
}
|
||||
|]
|
||||
|
||||
|
||||
-- | Wraps @ImGui::Checkbox()@.
|
||||
|
Reference in New Issue
Block a user