Skip to content

Commit 4851478

Browse files
authored
Merge pull request #204 from musm/wrap
Wrap Additional v3.3 API
2 parents 05f7961 + 58db425 commit 4851478

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

examples/callbacks.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ GLFW.SetWindowPosCallback(window, (_, x, y) -> println("window position: $x, $y"
1313
GLFW.SetWindowSizeCallback(window, (_, w, h) -> println("window size: $h x $w"))
1414
GLFW.SetWindowFocusCallback(window, (_, focused) -> println("window focus: $focused"))
1515
GLFW.SetWindowIconifyCallback(window, (_, iconified) -> println("window iconify: $iconified"))
16+
GLFW.SetWindowMaximizeCallback(window, (_, maximized) -> println("window maximized: $maximized"))
1617

1718
# Input callbacks
1819
GLFW.SetKeyCallback(window, (_, key, scancode, action, mods) -> begin

src/glfw3.jl

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -581,6 +581,22 @@ function GetWindowContentScale(window::Window)
581581
(xscale=xscale[], yscale=yscale[])
582582
end
583583

584+
GetWindowAttrib(window::Window, attrib::Integer) = ccall((:glfwGetWindowAttrib, libglfw), Cint, (Window, Cint), window, attrib)
585+
586+
function SetWindowAttrib(window::Window, attrib::Integer, value::Integer)
587+
ccall((:glfwSetWindowAttrib, libglfw), Cvoid, (Window, Cint, Cint), window, attrib, value)
588+
end
589+
590+
function WindowHintString(hint::Integer, value::AbstractString)
591+
ccall((:glfwWindowHintString, libglfw), Cvoid, (Cint, Cstring), hint, value)
592+
end
593+
594+
RequestWindowAttention(window::Window) = ccall((:glfwRequestWindowAttention, libglfw), Cvoid, (Window,), window)
595+
596+
GetWindowOpacity(window::Window) = ccall((:glfwGetWindowOpacity, libglfw), Cfloat, (Window,), window)
597+
SetWindowOpacity(window::Window, opacity::AbstractFloat) = ccall((:glfwSetWindowOpacity, libglfw), Cvoid, (Window, Cfloat), window, opacity)
598+
599+
584600
IconifyWindow(window::Window) = ccall((:glfwIconifyWindow, libglfw), Cvoid, (Window,), window)
585601
RestoreWindow(window::Window) = ccall((:glfwRestoreWindow, libglfw), Cvoid, (Window,), window)
586602
MaximizeWindow(window) = ccall((:glfwMaximizeWindow, libglfw), Cvoid, (Window,), window)
@@ -592,7 +608,6 @@ GetWindowMonitor(window::Window) = ccall((:glfwGetWindowMonitor, libglfw), Monit
592608
# - Nothing with size and position
593609
SetWindowMonitor(window, monitor, xpos, ypos, width, height, refreshRate) = ccall((:glfwSetWindowMonitor, libglfw),
594610
Cvoid, (Window, Monitor, Cint, Cint, Cint, Cint, Cint), window, monitor, xpos, ypos, width, height, refreshRate)
595-
GetWindowAttrib(window::Window, attrib::Integer) = ccall((:glfwGetWindowAttrib, libglfw), Cint, (Window, Cint), window, attrib)
596611
@windowcallback WindowPos(window::Window, x::Cint, y::Cint)
597612
@windowcallback WindowSize(window::Window, width::Cint, height::Cint)
598613
@windowcallback WindowClose(window::Window)
@@ -601,6 +616,7 @@ GetWindowAttrib(window::Window, attrib::Integer) = ccall((:glfwGetWindowAttrib,
601616
@windowcallback WindowIconify(window::Window, iconified::Cint) -> (window, Bool(iconified))
602617
@windowcallback FramebufferSize(window::Window, width::Cint, height::Cint)
603618
@windowcallback WindowContentScale(window::Window, xscale::Cfloat, yscale::Cfloat)
619+
@windowcallback WindowMaximize(window::Window, maximized::Cint) -> (window, Bool(maximized))
604620
PollEvents() = ccall((:glfwPollEvents, libglfw), Cvoid, ())
605621
WaitEvents() = ccall((:glfwWaitEvents, libglfw), Cvoid, ())
606622
WaitEvents(timeout) = ccall((:glfwWaitEventsTimeout, libglfw), Cvoid, (Cdouble,), timeout)

0 commit comments

Comments
 (0)