#5908 - Part 8 - Johan Vindevogel
Vraag over Systeem 7 Dialoog Positionering
Het volgende is niet echt een onoverkomelijk probleem, er is vrij eenvoudig een mouw aan te passen, alleen maar irritant omdat ik het niet goed begrijp...
Onder Systeem 6 deed ik al aan positioneren van dialogen met behulp van de volgende routine (beetje vereenvoudigd weergegeven) :
hRsrc := GetResource('DLOG', dlgRsrcID);
HNoPurge(hRsrc);
if centerRequested then
PositionDialog(hRsrc);
theDialog := GetNewDialog(dlgRsrcID, dStorage, behind);
HPurge(hRsrc);
Er komst dus verder geen GetNewDialog in mijn code voor, dit gaat altijd via deze routine. En om S6-compatibel te blijven laat ik dit ook nog maar even zo.
Wanneer echter, in ResEdit, Systeem 7-positionering aan de DLOG-resource toegevoegd wordt, lukt dit één keer maar geen twee keer: na de eerste keer blijkt de boundsRect in hRsrc junk (maar wel reproduceerbare junk) te bevatten. De andere velden blijven wel OK. bv.
- na GetResource
boundsRect = 115, 174, 351, 466 (volgorde T, L, B,
R)
- na mijn PositionDialog (ik gebruik de 2/3-regel, schuift
dus wat op naar boven)
boundsRect = 81, 174, 317, 466
- na GetNewDialog
boundsRect = 32764, 10250, 236, 292
Bij de volgende aanroep (en veronderstellend dat de resource zich nog in het geheugen bevindt) is het dan natuurlijk miserie, vermits mijn PositionDialog een 'behoorlijke' boundsRect verwacht en niet dat onding. De boundsRect wordt verder verminkt zodat ook S7's GetNewDialog er niets meer van bakt en de dialoog onzichtbaar blijft.
Maar hoe doet Systeem 7 het normaal (dus zonder mijn PositionDialog) dan wél ? Pretty Good Privacy, ;-), in the boundsRect of zoiets ? Steeds opnieuw de resource inlezen lijkt mij niet erg efficiënt. Of is de oorspronkelijke positie (zoals bepaald in ResEdit) dan tóch belangrijk ? (lijkt me niet waarschijnlijk want waarom vráág je dan die positionering ?)
© Mactivity Estonia 1996
Hot: Index Compatibility Description old Macintosh Games
Copyright © 1995-2005 EUREGIO.NET AG - Legal Use - Privacy Policy - Security Info - Advertise - Contact Info
Last modified: 07/09/2008 - URL: http://www.euregio.net/mactivity/0296nl/X0132_9602-Systeem_7_Dialo.html
Click here for more interesting topics powered by Euregio.Net:
EasyScopes:
weekly horoscopes
astrology information
web cam movies
daily horoscopes
free horoscopes
free love test quiz
calculate compatibility
new music quiz
song lyrics search