Re: GdkRectangle, again



it's nice to be able to set the members without having to call a function.you
would like to be able to $update_rect->{x} = 5; granted it's just as easy to
say $update_rect->x(5); but that's not what you'd first assume would be the
case. these are c structures that in a c app you directly manipulate. when in
perl that equates to a hash. and that would probably be people's first
assumption to what a GtkRectangle would/should be.

there's nothing keeping you from making it functions that operate on a hash so
that you could choose which way. use it as hash ($rect->{x}) or as a function
($rect->x)

-rm

On 29 Apr 2003, Guillaume Cottenceau wrote:

"muppet" <scott asofyet org> writes:

old gtk-perl treated GdkRectangle as a 4-element list in perl.  this
made it very easy to manipulate the contents of the rectangle in perl,
and i switched to this because dealing with a boxed type from perl via
member accessor functions is clumsy.

I personally favored the orthogonality of methods in gtk2-perl,
and that's why we are (were?) using GdkRectangle like all other
Boxed types, with methods to access members. E.g.:

  $pixmap->draw_rectangle ($gc, TRUE,
                           $update_rect->x,
                           $update_rect->y,
                           $update_rect->width,
                           $update_rect->height);

E.g. even more readable than hash ref thing. There's also
->values so that you can do things like:

my (undef, undef, $w, $h) = $update_rect->values;


Just my personal point of view, of course.

--
Guillaume Cottenceau - http://people.mandrakesoft.com/~gc/

I think I have to vote this way as well.  Besides it will look really silly
in Perl 6 to say

$pixmap->draw_rectangle (
      $gc,
      TRUE,
      $update_rect.{x},
      $update_rect.{y},
      $update_rect.{width},
      $update_rect.{height}
);

instead of

$pixmap->draw_rectangle (
      $gc,
      TRUE,
      $update_rect.x,
      $update_rect.y,
      $update_rect.width,
      $update_rect.height
);

_______________________________________________
gtk-perl-list mailing list
gtk-perl-list gnome org
http://mail.gnome.org/mailman/listinfo/gtk-perl-list






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]