Commit 10496eb5 authored by Jack Jansen's avatar Jack Jansen

Added handling for new options, fixed applet option setting

parent b072150d
...@@ -46,7 +46,7 @@ GUSI_ID = 10240 ...@@ -46,7 +46,7 @@ GUSI_ID = 10240
OVERRIDE_PATH_STRINGS_ID = 129 OVERRIDE_PATH_STRINGS_ID = 129
OVERRIDE_DIRECTORY_ID = 129 OVERRIDE_DIRECTORY_ID = 129
OVERRIDE_OPTIONS_ID = 129 OVERRIDE_OPTIONS_ID = 129
OVERRIDE_GUSI_ID = 10240 OVERRIDE_GUSI_ID = 10241
# Things we know about the GUSI resource. Note the code knows these too. # Things we know about the GUSI resource. Note the code knows these too.
GUSIPOS_TYPE=0 GUSIPOS_TYPE=0
...@@ -86,7 +86,6 @@ def message(str = "Hello, world!", id = MESSAGE_ID): ...@@ -86,7 +86,6 @@ def message(str = "Hello, world!", id = MESSAGE_ID):
"""Show a simple alert with a text message""" """Show a simple alert with a text message"""
d = GetNewDialog(id, -1) d = GetNewDialog(id, -1)
d.SetDialogDefaultItem(1) d.SetDialogDefaultItem(1)
print 'd=', d
tp, h, rect = d.GetDialogItem(2) tp, h, rect = d.GetDialogItem(2)
SetDialogItemText(h, str) SetDialogItemText(h, str)
while 1: while 1:
...@@ -187,8 +186,11 @@ def getoptions(id): ...@@ -187,8 +186,11 @@ def getoptions(id):
try: try:
opr = GetResource('Popt', id) opr = GetResource('Popt', id)
except (MacOS.Error, Res.Error): except (MacOS.Error, Res.Error):
return [0]*7, None return [0]*9, None
return map(lambda x: ord(x), opr.data), opr options = map(lambda x: ord(x), opr.data)
while len(options) < 9:
options = options + [0]
return options, opr
def getgusioptions(id): def getgusioptions(id):
try: try:
...@@ -301,8 +303,7 @@ def edit_preferences(): ...@@ -301,8 +303,7 @@ def edit_preferences():
gusi_opr.data = newdata gusi_opr.data = newdata
gusi_opr.ChangedResource() gusi_opr.ChangedResource()
else: else:
print 'Created new GUSI option' ngusi_opr = Resource(newdata)
ngusi_opr = Resource(gusi_opr.data)
ngusi_opr.AddResource('GU\267I', GUSI_ID, '') ngusi_opr.AddResource('GU\267I', GUSI_ID, '')
CloseResFile(preff_handle) CloseResFile(preff_handle)
...@@ -342,12 +343,12 @@ def edit_applet(name): ...@@ -342,12 +343,12 @@ def edit_applet(name):
saved_options = options[:] saved_options = options[:]
creator, type, delaycons, gusi_opr = getgusioptions(OVERRIDE_GUSI_ID) creator, type, delaycons, gusi_opr = getgusioptions(OVERRIDE_GUSI_ID)
if not opr: if not gusi_opr:
if notfound: if notfound:
notfound = notfound + ', GUSI options' notfound = notfound + ', GUSI options'
else: else:
notfound = 'GUSI options' notfound = 'GUSI options'
creator, type, delaycons, dummy = getgusioptions(GUSI_ID) creator, type, delaycons, gusi_opr = getgusioptions(GUSI_ID)
saved_gusi_options = creator, type, delaycons saved_gusi_options = creator, type, delaycons
dummy = dummy2 = None # Discard them. dummy = dummy2 = None # Discard them.
...@@ -361,7 +362,7 @@ def edit_applet(name): ...@@ -361,7 +362,7 @@ def edit_applet(name):
if result == None: if result == None:
sys.exit(0) sys.exit(0)
pathlist, nfss, options = result pathlist, nfss, (options, creator, type, delaycons) = result
if nfss != fss: if nfss != fss:
fss_changed = 1 fss_changed = 1
...@@ -396,12 +397,13 @@ def edit_applet(name): ...@@ -396,12 +397,13 @@ def edit_applet(name):
if (creator, type, delaycons) != saved_gusi_options: if (creator, type, delaycons) != saved_gusi_options:
newdata = setgusioptions(gusi_opr, creator, type, delaycons) newdata = setgusioptions(gusi_opr, creator, type, delaycons)
if gusi_opr.HomeResFile == app_handle: id, type, name = gusi_opr.GetResInfo()
if gusi_opr.HomeResFile() == app_handle and id == OVERRIDE_GUSI_ID:
gusi_opr.data = newdata gusi_opr.data = newdata
gusi_opr.ChangedResource() gusi_opr.ChangedResource()
else: else:
gusi_opr = Resource(gusi_opr.data) ngusi_opr = Resource(newdata)
gusi_opr.AddResource('GU\267I', OVERRIDE_GUSI_ID, '') ngusi_opr.AddResource('GU\267I', OVERRIDE_GUSI_ID, '')
CloseResFile(app_handle) CloseResFile(app_handle)
......
...@@ -49,17 +49,17 @@ bDA"d)`#3"6-!#3"&!3i&&e4bB@0P)'PYF'pbG#"cG'&dC@ePER4cJJ#3"8N!#3" ...@@ -49,17 +49,17 @@ bDA"d)`#3"6-!#3"&!3i&&e4bB@0P)'PYF'pbG#"cG'&dC@ePER4cJJ#3"8N!#3"
E!3d&(&0eF("bCA0c)'9iF(*PFh0TEfiJF(*TER4TEQF!N!9I!!N!F3%-"4K9EQ* E!3d&(&0eF("bCA0c)'9iF(*PFh0TEfiJF(*TER4TEQF!N!9I!!N!F3%-"4K9EQ*
eCQCPFQ9N)(0dC'peG#pcG'4PFR)!N!9e!!N!K`%,"40%C@*eCb"`BA*cCA)JEh9 eCQCPFQ9N)(0dC'peG#pcG'4PFR)!N!9e!!N!K`%,"40%C@*eCb"`BA*cCA)JEh9
dF(9dC3#3"D!!(J#b!)`&#dj[FQeKE#"PH'PdF`#3"D!!S!#b!3S&#Q9bFQpb)'9 dF(9dC3#3"D!!(J#b!)`&#dj[FQeKE#"PH'PdF`#3"D!!S!#b!3S&#Q9bFQpb)'9
iDA3!N!AJ!!S!m3%,K4Y%DA0KBQaP)'&bCf-[BA*RGL"PEA9XBA4TEfi'!*!&p!! iDA3!N!AJ!!S!m3%,"4Y%DA0KBQaP)'&bCf-[BA*RGL"PEA9XBA4TEfi'!*!&p!!
+!3B"$)8L4'PcB@*XC5"TER4PFQ&MG'PfC5"[F(4TEfiYFf9dG'PZC`#3"EJ!S!$ +!3B"$!8L4'PcB@*XC5"TER4PFQ&MG'PfC5"[F(4TEfiYFf9dG'PZC`#3"EJ!S!$
)!1X3!*!'c!#J!0`!ka!!N!8"#!!+!4S"#`8K4'9XBANJBfpZFfpXC5"hD@jNEhF )!1X3!*!'c!#J!0`!ka!!N!8"#!!+!4S"#`8K4'9XBANJBfpZFfpXC5"hD@jNEhF
JG@jdD@`JEQ9PC'9N!*!&!4m!e3%c!3m%!Np,!*!%!4m!#J%c!%F%"N0KEQ0PE!# JG@jdD@`JEQ9PC'9N!*!&!4m!e3%c!3m%!Np,!*!%!4m!#J%c!%F%"N0KEQ0PE!#
3"3B!*J!A!1k)'P"jG'K[EL"TER4PFR"bCA4PFL"[F(4TEfjc!*!&M!!+!*`"#iJ 3"3B!*J!A!1k)'P"jG'K[EL"TER4PFR"bCA4PFL"[F(4TEfjc!*!&M!!+!*`"#iJ
D5f9PF#"cG'4TEb"hD@jNEhFJEh"PEL"[EMS!N!@i!!S!b3#AL"9%C@CKG@ad)'C D5f9PF#"cG'4TEb"hD@jNEhFJEh"PEL"[EMS!N!@i!!S!b3#AL"9%C@CKG@ad)'C
TE'8JBh*PBA4[FMTP!*!&c!!+!0d!PiJ54'9QBA9XG#"QD@aP)(4jF'8k!!!"!!! TE'8JBh*PBA4[FMTP!*!&c!!+!0d!PiJ54'9QBA9XG#"QD@aP)(4jF'8k!!!"!!!
!$FN!!!c*!!!"33$4-536'J!!!"`"-J!,3Nj%6!!!!'**3diM!!!!EP0*@N8!!!" !$FN!!!c*!!!"33$!6K396J!!!"`"-J!,3Nj%6!!!!'**3diM!!!!EP0*@N8!!!"
k4P*&4J!"!)CTBh-M!!!!RQPME$J!!!#UD@0c1!!!!,CTBh-d!!!!`QPME$3!!!$ k4P*&4J!"!)CTBh-M!!!!RQPME$J!!!#UD@0c1!!!!,CTBh-d!!!!`QPME$3!!!$
14%a24`!"!0T%594-!!%!mP"jG$!!!!%+!)$rr`!!#4S!N!3",2rr!*!)rj!%!!! 14%a24`!"!0T%594-!!%!mP"jG$!!!!%+!)$rr`!!#4S!N!3",2rr!*!)rj!%!!!
""!#3"B$rr`!!!4)!N!@"rrm!!!N2!*!%!5crr`!!!4d!N!3",2rr!!!"B3#3"!% ""!#3"B$rr`!!!4)!N!@"rrm!!!N2!*!%!5crr`!!!4d!N!3",2rr!!!"B3#3"!%
Xrrm!!!9P!*!%!5crr`!!"QN!N!3",2rr!!!'l3#3"!)!rrm!!!Ma!*!%!J(rr`! Xrrm!!!9P!*!%!5crr`!!"QN!N!3",2rr!!!'l3#3"!)!rrm!!!Ma!*!%!J(rr`!
!#P!!d5kS!J$rr`!!#8)!d5rm!J(rr`!!#QN!d6!%!*!'#3S!N!316hGZCA)JFQ9 !#P!!N!3#!2rr!!!*3J$!61`#!Irr!!!+D3$!623!N!B*#J#3"!j2GfjPFL"bCA0
cEh9bBfA2XJ: [GA*MC4Y8:
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment