summaryrefslogtreecommitdiffstats
path: root/Mac/Lib/test/tdlg_modeless.py
blob: 8d79dd772f2e09f8e5e065df628f19315796caf9 (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
37
38
39
40
41
42
43
44
45
# Function to display a message and wait for the user to hit OK.
# This uses a DLOG resource with ID=256 which is part of the standard
# Python library.
# The ID can be overridden by passing a second parameter.
# This is the modeless version of this test program, the normal
# modal version is in tdlg.py

import addpack
addpack.addpack(':Tools:bgen:evt')

from Dlg import *
from Evt import *
from Events import *
import MacOS
import string

ID = 256

def message(str = "Hello, modeless world!", id = ID):
	print 'This is to init the console window...'
	d = GetNewDialog(id, -1)
	tp, h, rect = d.GetDialogItem(2)
	SetDialogItemText(h, str)
	while 1:
		ok, ev = WaitNextEvent(0xffff, 10)
		if not ok:
			continue
		if IsDialogEvent(ev):
			ok, window, item = DialogSelect(ev)
			if ok:
				if window == d:
					if item == 1:
						break
					else:
						print 'Unexpected item hit'
				else:
					print 'Unexpected dialog hit'
		else:
			MacOS.HandleEvent(ev)

def test():
	message()

if __name__ == '__main__':
	test()