home *** CD-ROM | disk | FTP | other *** search
/ Netrunner 2004 October / NETRUNNER0410.ISO / regular / ActivePerl-5.8.4.810-MSWin32-x86.msi / _869f7360b5295c245abc7f303dd81d1d < prev    next >
Encoding:
Internet Message Format  |  2004-06-01  |  3.4 KB

  1. Subject: Adjuster
  2. Date: Wed, 16 Dec 1998 22:23:23 +0100
  3. From: Stephen Kun <stephen.kun@is.gaertner.de>
  4. To: Nick Ing-Simmons <nick@ni-s.u-net.com>
  5.  
  6.  
  7.  
  8.  
  9. 3. How do I find out whether slave is a pack or grid master or if it is not a
  10. master (for setting packPropagate(0))
  11. Currently I set both on the slave.
  12.  
  13. 4. In setting position of drag bar, I do a lot of calcs for each motion event.
  14. Some could be done one for first, then used again for subsequent calls, eg:
  15. borderwidth of master, etc.
  16. I've now partially done this and store them on the widget.
  17.  
  18. 5. Do I need XSync and idletasks calls in Adjuster.pm?
  19. XSync causes a bug. idletasks doesn't make any difference in practice, from
  20. what I can see. I've commented both out.
  21. Bug when using XSync:
  22.   Run pack_adj_4r
  23.   Shorten whole window from right so that left window edge crosses leftmost
  24.     adjuster. Buttons on other adjusters disappear
  25.  
  26. 6. Sometimes the effect given by the Restore method, is undesirable. Eg.
  27. for multi-columns. Then when you expand say the 1st column, the size of the
  28. col at the end gets reduced to 0 width when the Adjuster forces itself in.
  29. Then when you reduce the size of the first column again, the end col is still
  30. 0 width.
  31. Better would be:
  32. a) put the restore functionality on a flag OR
  33. b) when a col is reduced because of a Restore, it saves previous width of
  34. its slave, and attempts to restore it when the space becomes availabe. (Sounds
  35. impracticable.)
  36. I've implemented a) with default ON. In the documentation I'll recommend the
  37. default for the 1st Adjuster, then OFF for the remaining.
  38.  
  39. 8. What about a packAdjustForget? Given that Adjuster doesn't work well for
  40. grid anyway, and doesn't consider other managers, that wouldn't be too bad.
  41. I'm not going to do this, but someone mentioned it a while ago. I can
  42. see me probably wanting it too at some point.
  43. Are you for the idea?
  44.  
  45. 10. Grid doesn't work well with Adjuster, didn't before either. I think
  46. this has to do with grid, rather than adjuster. You get the same effect
  47. if you grid a row of widgets, then reduce the width of the window.
  48. Bugs demonstrated by grid_adj_4l:
  49. a) there's never an Unmap event for the adjuster.
  50. b) after adjusting, widgets protrude into border on right.
  51. c) grid('Propagate', 0) on MainWindow has no effect - window shrinks/grows
  52.    when widgets are adjusted
  53. d) widgets shuffle to correct position on startup
  54. I don't recommend use of grid with Adjust!
  55.  
  56. 11. Have taken out __END__ temporarily for testing
  57. Will put it back before publishing on the mailing list.
  58.  
  59. 12. Why do the adjusters in my testcases come out grey? That's not the
  60. default background.
  61.  
  62. 13. Could packAdjust return ($adj, $w). Could then do:
  63.     my $canv = $top->Canvas()->packAdjust();
  64. OR
  65.     my ($adj, $canv) = $top->Canvas()->packAdjust();
  66. Latter is good if you want to configure or unpack adjuster later.
  67. I realise this is very Kludgy, but there's no other way to get the
  68. Adjuster from packAdjust.
  69. I suppose the workaround of creating the Adjuster yourself is OK. When
  70. you do it by hand though, there's more chance of making mistakes, eg
  71. forgetting the -side (which defaults then to 'top') which would cause havoc.
  72. What's your opinion.
  73.  
  74. 14. Run the script adj_button_bug: You can't reduce size of button.
  75. Button can be expanded, but as soon as focus enters button, it springs back
  76. to its original size. Why?
  77. It's not important though.
  78.