home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / sys / atari / st / 19059 < prev    next >
Encoding:
Internet Message Format  |  1992-12-30  |  2.2 KB

  1. Path: sparky!uunet!pipex!bnr.co.uk!uknet!mcsun!sun4nl!wtrlnd!nextjk!fidonet!p15.f202.n281.z2.fidonet
  2. From: Vincent_Partington@p15.f202.n281.z2.fidonet
  3. Newsgroups: comp.sys.atari.st
  4. Subject: Re: MultiTos redraw problem
  5. Message-ID: <2b3de82c@p15.f202.n281.z2.fidonet>
  6. Date: 27 Dec 92 17:27:04 GMT
  7. Reply-To: p15.f202.n281.z2.fidonet!Vincent_Partington@nextjk.wlink.nl
  8. Lines: 56
  9. X-FSC-PID: LED 1.00
  10.  
  11. In a message of <Wed 23 Dec 92 15:04>, Luc Castermans (2:281/202.0) writes:
  12.  
  13.  LC> I want to force a redraw on the INFO-line in a
  14.  LC> window. To do that I calculate the x,y,w,h of
  15.  LC> that part and than do an form_dial(FMD_FINISH,...)
  16.  LC> call. The code looks like this:
  17.  LC> 
  18.  LC> void redraw_info(void)
  19.  LC> {
  20.  LC>   /* fill dimensions of INFO line in window */
  21.  LC>   ...
  22.  LC>   form_dial(FMD_FINISH,...);
  23.  LC> }
  24.  LC> 
  25.  LC> void redraw(GRECT *area_ptr)
  26.  LC> {
  27.  LC>   redraw_info();
  28.  LC> 
  29.  LC>   /* walk rectangle list below here */
  30.  LC>   .....
  31.  LC> }
  32.  LC> 
  33.  LC> Upon a WM_REDRAW request redraw() is called.
  34.  LC> 
  35.  LC> 
  36.  LC> This works fine under TOS.
  37.  LC> 
  38.  LC> I have a MultiTos version. Now this redraw
  39.  LC> piece of code seems to come into a infinite loop. For
  40.  LC> some reason the AES keeps on sending WM_REDRAW messages
  41.  LC> after the first form_dial call.
  42.  LC> 
  43.  LC> I trust the MultiTos I have. Now: what is the only and
  44.  LC> only good way to do what I want to do ??
  45.  
  46. Obviously TOS sends you redraw-messages even when you (think you) only
  47. requested a redraw for the infobar. But how do you calculate the
  48. coordinates for the infobar? Maybe you're a pixel of and then a WM_REDRAW
  49. message get sent and then ouy request a redraw etc. etc.
  50. But WHY would you want to force a redraw of the infobar? It gets redrawn
  51. automatically? Or do you change the contents of the string containing the
  52. info-line? The only good way to change the info-line is using wind_set(wh,
  53. WF_INFO, ...). This will also force a redraw of the info-line. And I
  54. suggest NOT doing this in the redraw-handling but when you actually change
  55. the info-line.
  56. Hope it helps.
  57.  
  58. Ta!
  59.     Vincent
  60.  
  61. FidoNet : 2:281/202.15
  62. NeST    : 90:500/202.15 <-- NEW ADDRESS!!!
  63. Usenet  : vincent@nextjk.wlink.nl
  64.  
  65. --- MARSmail v1.20/4D
  66.  * Origin: For the best host-mode, use Jekyll (2:281/202.15)
  67.