summaryrefslogtreecommitdiff
path: root/src/samples/drag.py
blob: e5d50e7bcd19f10f4b5659074f3338a4b446b4fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/env python
# -*- coding: utf-8 -*-

from libavg import avg, player

offset = None

def onMouseDown(event):
    global offset
    node = event.node
    offset = node.getRelPos((event.x, event.y))
    node.setEventCapture()

def onMouseMove(event):
    global offset
    node = event.node
    if offset != None:
        node.x = event.x-offset[0]
        node.y = event.y-offset[1]

def onMouseUp(event):
    global offset
    node = event.node
    if offset != None:
        node.releaseEventCapture()
        offset = None;

canvas = player.createMainCanvas(size=(640,480))
rootNode = canvas.getRootNode()
node = avg.WordsNode(pos=(10,10), text="Hello World", parent=rootNode)
node.subscribe(node.CURSOR_DOWN, onMouseDown)
node.subscribe(node.CURSOR_MOTION, onMouseMove)
node.subscribe(node.CURSOR_UP, onMouseUp)

player.play()