push @a, _attr($atr) if #!_ateq($lat,$atr);
$lat->[AS_BG] ne $atr->[AS_BG] ||
$lat->[AS_FG] ne $atr->[AS_FG] ||
$lat->[AS_U] != $atr->[AS_U] ||
$lat->[AS_BOLD] != $atr->[AS_BOLD] ||
$lat->[AS_BLINK] != $atr->[AS_BLINK];
####
push @a, $atr if $lat ne $atr;
####
sub _atlayer
{
#$_[0] = shift;
local $_ = clone($_[1]);
#$_->{$_} = $_[1]->{$_} foreach keys %{$_[1]};
$_->[AS_BG] = $_[0]->[AS_BG] if !$_->[AS_BG];
$_->[AS_FG] = $_[0]->[AS_FG] if !$_->[AS_FG];
$_->[AS_U] = $_[0]->[AS_U] if $_->[AS_U] < 0;
$_->[AS_BOLD] = $_[0]->[AS_BOLD] if $_->[AS_BOLD] < 0;
$_->[AS_BLINK] = $_[0]->[AS_BLINK] if $_->[AS_BLINK] < 0;
return $_;
}
####
sub _atlayer
{
#$_[0] = shift;
local $_ = $_[1];
$_ &= $_[ 0 ];
return $_;
}
####
sub _atlayer
{
local $_ = [ @$_[1] ];
$_->[AS_BG] ||= $_[0]->[AS_BG];
$_->[AS_FG] ||= $_[0]->[AS_FG];
$_->[AS_U] ||= $_[0]->[AS_U];
$_->[AS_BOLD] ||= $_[0]->[AS_BOLD];
$_->[AS_BLINK] ||= $_[0]->[AS_BLINK];
return $_;
}