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
# 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
reverse_v_inplace (datasv, bpl)
@ -213,7 +214,7 @@ convert_24_15_inplace (datasv)
U16 m31d255[256];
for (dc = 256; dc--; )
m31d255[dc] = (dc*31+15)/255;
m31d255[dc] = (dc*31+127)/255;
data = SvPV (datasv, dc); end = data + dc;
@ -242,7 +243,7 @@ convert_15_24_inplace (datasv)
U8 m255d31[32];
for (dc = 32; dc--; )
m255d31[dc] = (dc*255+127)/31;
m255d31[dc] = (dc*255+15)/31;
data = SvPV (datasv, dc); dc &= ~1;
de = dc + (dc >> 1);

View File

@ -581,7 +581,7 @@ sub interact($$$$@) {
$g = new Gtk::Table scalar@types,2,0;
$g->border_width(4);
$w->vbox->pack_start($g,1,1,0);
for(@types) {
my($label,$a);
my($type,$name,$desc,$default,$extra)=@$_;
@ -697,7 +697,7 @@ sub interact($$$$@) {
$b->pack_start ($radio,1,0,5);
$radio->signal_connect(clicked => sub { $r = $value });
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;
}
$a = new Gtk::Frame;

View File

@ -23,6 +23,7 @@ olof
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
* installation & Feature system (?)
* 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",
"Marc Lehmann",
"Marc Lehmann <pcg\@goof.com>",
"1999-09-15",
"1999-09-18",
"<Save>/AVI",
"RGB",
[
@ -151,7 +151,7 @@ sub parse_iff {
$size >= 4 or die "AVI hunk $hunk ends unexpectedly\n";
read FILE,$len,4; $size -= 4;
$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;
if ($hunk eq "LIST") {
read FILE,$hunk,4;
@ -222,7 +222,7 @@ register "file_avi_load",
die "strh(vids)/strf header too short\n" unless $_[0] >= 7*4;
($size,$width,$height,$planes,$depth,$compression,$image_size)
= 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";
$planes == 1 or die "incompatible frameformat ($planes)\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->set_filename($filename);
$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";
read FILE,$comment,$_[0];
my $layer = $image->layer_new($width,$height,RGB_IMAGE,