a bit of formatting (no other changes in this commit)
This commit is contained in:
@@ -86,16 +86,16 @@ struct
|
||||
MOUSE_MOVE {x = mouseX, y = mouseY} =>
|
||||
let
|
||||
val _ = print "mouse moved\n"
|
||||
val drawMsg =
|
||||
DRAW_BUTTON (getClickPos (mouseX, mouseY, 1.0, 0.0, 0.0))
|
||||
val drawMsg =
|
||||
DRAW_BUTTON (getClickPos (mouseX, mouseY, 1.0, 0.0, 0.0))
|
||||
in
|
||||
(model, drawMsg, mouseX, mouseY)
|
||||
end
|
||||
| MOUSE_LEFT_RELEASE =>
|
||||
let
|
||||
val _ = print "mouse released\n"
|
||||
val drawMsg = DRAW_BUTTON
|
||||
(getClickPos (mouseX, mouseY, 1.0, 0.0, 0.0))
|
||||
val drawMsg =
|
||||
DRAW_BUTTON (getClickPos (mouseX, mouseY, 1.0, 0.0, 0.0))
|
||||
in
|
||||
(model, drawMsg, mouseX, mouseY)
|
||||
end
|
||||
|
||||
@@ -106,5 +106,4 @@ struct
|
||||
in
|
||||
()
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -4,20 +4,22 @@ struct
|
||||
open InputMessage
|
||||
|
||||
local
|
||||
fun loop (inputMailbox, drawMailbox, mouseX, mouseY, model) =
|
||||
let
|
||||
val inputMsg = Mailbox.recv inputMailbox
|
||||
val (model, drawMsg, mouseX, mouseY) = AppUpdate.update (model, mouseX, mouseY, inputMsg)
|
||||
val _ = Mailbox.send (drawMailbox, drawMsg)
|
||||
in
|
||||
loop (inputMailbox, drawMailbox, mouseX, mouseY, model)
|
||||
end
|
||||
fun loop (inputMailbox, drawMailbox, mouseX, mouseY, model) =
|
||||
let
|
||||
val inputMsg = Mailbox.recv inputMailbox
|
||||
val (model, drawMsg, mouseX, mouseY) =
|
||||
AppUpdate.update (model, mouseX, mouseY, inputMsg)
|
||||
val _ = Mailbox.send (drawMailbox, drawMsg)
|
||||
in
|
||||
loop (inputMailbox, drawMailbox, mouseX, mouseY, model)
|
||||
end
|
||||
in
|
||||
fun update (inputMailbox, drawMailbox) =
|
||||
loop (inputMailbox, drawMailbox, 0, 0, AppType.initial)
|
||||
end
|
||||
|
||||
fun draw (drawMailbox, window, graphDrawObject, buttonDrawObject, buttonDrawLength) =
|
||||
fun draw
|
||||
(drawMailbox, window, graphDrawObject, buttonDrawObject, buttonDrawLength) =
|
||||
if not (Glfw.windowShouldClose window) then
|
||||
let
|
||||
val _ = Gles3.clearColor (1.0, 1.0, 1.0, 1.0)
|
||||
@@ -29,7 +31,13 @@ struct
|
||||
val _ = Glfw.pollEvents ()
|
||||
val _ = Glfw.swapBuffers window
|
||||
in
|
||||
draw (drawMailbox, window, graphDrawObject, buttonDrawObject, buttonDrawLength)
|
||||
draw
|
||||
( drawMailbox
|
||||
, window
|
||||
, graphDrawObject
|
||||
, buttonDrawObject
|
||||
, buttonDrawLength
|
||||
)
|
||||
end
|
||||
else
|
||||
Glfw.terminate ()
|
||||
|
||||
@@ -16,16 +16,15 @@ struct
|
||||
()
|
||||
|
||||
fun registerCallbacks (window, inputMailbox) =
|
||||
let
|
||||
val mouseMoveCallback = mouseMoveCallback inputMailbox
|
||||
val _ = Input.exportMouseMoveCallback mouseMoveCallback
|
||||
val _ = Input.setMouseMoveCallback window
|
||||
let
|
||||
val mouseMoveCallback = mouseMoveCallback inputMailbox
|
||||
val _ = Input.exportMouseMoveCallback mouseMoveCallback
|
||||
val _ = Input.setMouseMoveCallback window
|
||||
|
||||
val mouseClickCallback =
|
||||
mouseClickCallback inputMailbox
|
||||
val _ = Input.exportMouseClickCallback mouseClickCallback
|
||||
val _ = Input.setMouseClickCallback window
|
||||
in
|
||||
()
|
||||
end
|
||||
val mouseClickCallback = mouseClickCallback inputMailbox
|
||||
val _ = Input.exportMouseClickCallback mouseClickCallback
|
||||
val _ = Input.setMouseClickCallback window
|
||||
in
|
||||
()
|
||||
end
|
||||
end
|
||||
|
||||
@@ -19,9 +19,12 @@ struct
|
||||
val inputMailbox = Mailbox.mailbox ()
|
||||
val drawMailbox = Mailbox.mailbox ()
|
||||
|
||||
val _ = CML.spawn (fn () => InputCallbacks.registerCallbacks (window, inputMailbox))
|
||||
val _ = CML.spawn (fn () =>
|
||||
InputCallbacks.registerCallbacks (window, inputMailbox))
|
||||
val _ = CML.spawn (fn () => EventLoop.update (inputMailbox, drawMailbox))
|
||||
val _ = CML.spawn (fn () => EventLoop.draw (drawMailbox, window, graphDrawObject, buttonDrawObject, 0))
|
||||
val _ = CML.spawn (fn () =>
|
||||
EventLoop.draw
|
||||
(drawMailbox, window, graphDrawObject, buttonDrawObject, 0))
|
||||
in
|
||||
()
|
||||
end
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
signature DRAW_MESSAGE =
|
||||
sig
|
||||
datatype t =
|
||||
DRAW_BUTTON of Real32.real vector
|
||||
datatype t = DRAW_BUTTON of Real32.real vector
|
||||
end
|
||||
|
||||
structure DrawMessage :> DRAW_MESSAGE =
|
||||
struct
|
||||
datatype t =
|
||||
DRAW_BUTTON of Real32.real vector
|
||||
struct
|
||||
datatype t = DRAW_BUTTON of Real32.real vector
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user