[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

[MacPerl] MacPerl wish/bug list (part 2)



> kpreid@ibm.net (Kevin Reid) writes:
> > I wish MacPerl had:
> 
> All of these are doable. "Priority 2" means that *I* will not address them
> for the next release, Prio 1 means I probably will.
<snip list>

Thanks. (BTW, the Drag Manager is, to me, the most important item on the
list, with the cursor fix second.)

Part 2:

* It would be nice if MacWindow::drawgrowicon was a little smarter;
right now it draws grow boxes in windows that shouldn't have them (e.g.
noGrowDocProc, floatProc).

* A slight change to MacWindow::goaway - Instead of immediately calling
$my->dispose, call $my->close. MacWindow::close would then call a hook
if set, or call MacWindow::dispose instead. The advantages of this are:
  1. You can define alternate behavior for the close box (e.g. ask the
user about saving changes, etc.) without having to call TrackGoAway()
yorself.
  2. You get a universal method for "get rid of this window, cleaning up
if neccesary". For example, it could be used to implement a Close menu
item that outomatically works on all MacWindows (even those that need
special handling).

* The pane system is excellent, but it would be nice if it were a little
better documented (like, in Mac::Pane's POD include a sample pane class
(perhaps a rectangle that beeps when you click it?); right now, the only
pane classes that come with MacPerl are either degenerate
(MacControlManager) or rather complex (MacList) and therefore not easy
to learn how to write your own from). (I never understood panes until I
saw Alan Fry's tic-tac-toe example.)

* MacControl needs an accessor method for the ControlHandle:
  sub control {$_[0]->{control}}

* MacControls generate uninitialized value warnings at destruction time.
Fix for MacControl::DESTROY:
sub DESTROY {
    my($my) = @_;
    DisposeControl($my->{control}) if $my->{control};
}

* When multiple MacWindows are created between WaitNextEvents, the
activate method does not get called for the ones that were created first
(and therefore are not frontmost), sometimes resulting in incorrect
highlighting.

-- 
 Kevin Reid: |    Macintosh:      
  "I'm me."  | Think different.

===== Want to unsubscribe from this list?
===== Send mail with body "unsubscribe" to macperl-request@macperl.org