#!perl -w
# Version 0.01
use RISCOS::DynamicArea '/.*/';
use strict;

if (@ARGV)
{
    my $areas = hash_dynamic_areas dynamic_areas;
    
    ARGVLOOP: foreach my $area (@ARGV)
    {
	unless ($area =~ /^\d+$/)
	{
	    my $num = $areas->{$area};
	    unless (defined $num)
	    {
		warn "Dynamic area name '$area' is unknown\n";
		next ARGVLOOP;
	    }
	    if ($num == -1)
	    {
		warn "Dynamic area name '$area' is ambiguous\n";
		next ARGVLOOP;
	    }
	    $area = $num;
	}
        
	unless (delete_dynamic_area $area)
	{
	    my $name = name_dynamic_area $area;
	    $name = '' unless defined $name;
	    
	    warn "Failed to delete area $area - '$name' - $!\n";
	}
    }            
}
else
{
    my %area;
    foreach my $area (dynamic_areas)
    {
	$area{$area} = name_dynamic_area $area;
    }
    
    foreach (sort {$a <=> $b} keys %area)
    {
	print "$_:\t$area{$_}\n";
    }
}
