see plug-ins/perl/Changes

This commit is contained in:
Marc Lehmann 1999-09-18 17:16:58 +00:00
parent 5d44dcd363
commit 29e988d244
4 changed files with 13 additions and 9 deletions

View File

@ -152,7 +152,8 @@ BOOT:
MODULE = Gimp PACKAGE = Gimp::RAW MODULE = Gimp PACKAGE = Gimp::RAW
# some raw byte/bit-manipulation, use PDL instead # some raw byte/bit-manipulation (e.g. for avi and miff), use PDL instead
# mostly undocumented as well...
void void
reverse_v_inplace (datasv, bpl) reverse_v_inplace (datasv, bpl)
@ -213,7 +214,7 @@ convert_24_15_inplace (datasv)
U16 m31d255[256]; U16 m31d255[256];
for (dc = 256; dc--; ) for (dc = 256; dc--; )
m31d255[dc] = (dc*31+15)/255; m31d255[dc] = (dc*31+127)/255;
data = SvPV (datasv, dc); end = data + dc; data = SvPV (datasv, dc); end = data + dc;
@ -242,7 +243,7 @@ convert_15_24_inplace (datasv)
U8 m255d31[32]; U8 m255d31[32];
for (dc = 32; dc--; ) for (dc = 32; dc--; )
m255d31[dc] = (dc*255+127)/31; m255d31[dc] = (dc*255+15)/31;
data = SvPV (datasv, dc); dc &= ~1; data = SvPV (datasv, dc); dc &= ~1;
de = dc + (dc >> 1); de = dc + (dc >> 1);

View File

@ -697,7 +697,7 @@ sub interact($$$$@) {
$b->pack_start ($radio,1,0,5); $b->pack_start ($radio,1,0,5);
$radio->signal_connect(clicked => sub { $r = $value }); $radio->signal_connect(clicked => sub { $r = $value });
my $prev_sub_my = $prev_sub; my $prev_sub_my = $prev_sub;
$prev_sub = sub { $radio->set_active ($_[0] == $value); &$prev_sub_my }; $prev_sub = sub { $radio->set_active ($_[0] eq $value); &$prev_sub_my };
$prev = $radio; $prev = $radio;
} }
$a = new Gtk::Frame; $a = new Gtk::Frame;

View File

@ -23,6 +23,7 @@ olof
bugs bugs
* better default argument-handlign via a "massage_args" callback from Gimp/UI/interact?
* update frosty-logo.scm t-o-p-logo.scm starscape-logo.scm starburst-logo.scm * update frosty-logo.scm t-o-p-logo.scm starscape-logo.scm starburst-logo.scm
* installation & Feature system (?) * installation & Feature system (?)
* map_to_gradient does not work on GRAYA thingies. Argh. * map_to_gradient does not work on GRAYA thingies. Argh.

View File

@ -28,7 +28,7 @@ register "file_avi_save",
"Saves images in the 24 bit uncompressed AVI format used by windows software", "Saves images in the 24 bit uncompressed AVI format used by windows software",
"Marc Lehmann", "Marc Lehmann",
"Marc Lehmann <pcg\@goof.com>", "Marc Lehmann <pcg\@goof.com>",
"1999-09-15", "1999-09-18",
"<Save>/AVI", "<Save>/AVI",
"RGB", "RGB",
[ [
@ -151,7 +151,7 @@ sub parse_iff {
$size >= 4 or die "AVI hunk $hunk ends unexpectedly\n"; $size >= 4 or die "AVI hunk $hunk ends unexpectedly\n";
read FILE,$len,4; $size -= 4; read FILE,$len,4; $size -= 4;
$len = unpack "V", $len; $len = unpack "V", $len;
$size >= $len or die "hunk $hunk too long\n"; $size >= $len or Gimp->message("WARNING: broken avi, hunk '$hunk' too long ($size < $len)");
$size -= $len; $size -= $len;
if ($hunk eq "LIST") { if ($hunk eq "LIST") {
read FILE,$hunk,4; read FILE,$hunk,4;
@ -222,7 +222,7 @@ register "file_avi_load",
die "strh(vids)/strf header too short\n" unless $_[0] >= 7*4; die "strh(vids)/strf header too short\n" unless $_[0] >= 7*4;
($size,$width,$height,$planes,$depth,$compression,$image_size) ($size,$width,$height,$planes,$depth,$compression,$image_size)
= unpack "V3 v2 V3", $comment; = unpack "V3 v2 V3", $comment;
$depth == 24 or $depth == 16 or die "unsupported bit depth $depth (only 16/24 bit supported)\n"; $depth == 24 or $depth == 16 or die "unsupported bit depth $depth (only 15/24 bit supported)\n";
$compression == 0 or die "compressed streams not supported\n"; $compression == 0 or die "compressed streams not supported\n";
$planes == 1 or die "incompatible frameformat ($planes)\n"; $planes == 1 or die "incompatible frameformat ($planes)\n";
($width * $height * $depth) >> 3 == $image_size or die "strh(vids)/strf header format error\n"; ($width * $height * $depth) >> 3 == $image_size or die "strh(vids)/strf header format error\n";
@ -231,9 +231,11 @@ register "file_avi_load",
$image->disable_undo; $image->disable_undo;
$image->set_filename($filename); $image->set_filename($filename);
$image->attach_parasite(new Parasite "gimp-interframe-delay", PARASITE_PERSISTENT, $us_frame); $image->attach_parasite(new Parasite "gimp-interframe-delay", PARASITE_PERSISTENT, $us_frame);
$image->attach_parasite(new Parasite "gimp-avi-depth", PARASITE_PERSISTENT, $depth == 16 ? 15 : $depth);
$image->attach_parasite(new Parasite "gimp-avi-compression", PARASITE_PERSISTENT, $compression);
} }
}, },
"00db" => sub { # 00dw is 15 bit "00db" => sub {
$_[0] == ($width * $height * $depth) >> 3 or die "frame has incorrect size\n"; $_[0] == ($width * $height * $depth) >> 3 or die "frame has incorrect size\n";
read FILE,$comment,$_[0]; read FILE,$comment,$_[0];
my $layer = $image->layer_new($width,$height,RGB_IMAGE, my $layer = $image->layer_new($width,$height,RGB_IMAGE,