44 lines
945 B
Plaintext
44 lines
945 B
Plaintext
on.mouse_press = function(x,y, mouse_button)
|
|
print('mouse press', x,y)
|
|
if Cursor_node then
|
|
Cursor_node.show_cursor = nil
|
|
Cursor_node = nil
|
|
end
|
|
local sx, sy = sx(x), sy(y)
|
|
local node = on_node(sx,sy)
|
|
if node then
|
|
-- position cursor in node
|
|
Cursor_node = node
|
|
print('within node')
|
|
edit.mouse_press(node.editor, x,y, mouse_button)
|
|
print('cursor at', node.editor.cursor_x, node.editor.cursor_y)
|
|
return
|
|
end
|
|
node = on_move_bar(sx,sy)
|
|
if node then
|
|
Move_node = node
|
|
Move = {sx=sx-Move_node.x, sy=sy-Move_node.y}
|
|
return
|
|
end
|
|
node = on_resize(sx,sy)
|
|
if node then
|
|
Resize_node = node
|
|
Resize = {sx=sx-Resize_node.width}
|
|
return
|
|
end
|
|
node = on_border(sx,sy)
|
|
if node then
|
|
local edge = on_edge(sx,sy)
|
|
if edge == nil then
|
|
Edge = {source=node, s={sx=sx, sy=sy}, e={sx=sx, sy=sy}}
|
|
else
|
|
detach_edge(edge)
|
|
Global_next_save = Current_time + 3
|
|
A()
|
|
end
|
|
return
|
|
end
|
|
-- pan surface
|
|
Pan = {sx=sx, sy=sy}
|
|
end
|