+++ /dev/null
-package wxFileInfo;
-
-=head1 NAME
-
-wxFileInfo
-
-=head1 SYNOPSIS
-
- use wxFileInfo;
-
- my $info = new wxFileInfo( $filename, $filetype, $fileflags );
- my $info2 = new wxFileInfo( 'mdig.cpp', 'Generic',
- 'NotWin32,NotGTK,NotMac' );
-
- $f = $info->filename;
- $t = $info->filetype;
- $flags = $info->fileflags;
- $bool = $info->is_header;
- $bool = $info->is_source;
- $file = $info->object_file;
- $file = $info->source_file;
- $bool = $info->has_flag( 'NotX' );
-
-=cut
-
-use strict;
-
-sub new {
- my $ref = shift;
- my $class = ref( $ref ) || $ref;
- my $self = bless {}, $class;
-
- my( $filename, $filetype, $fileflags ) = @_;
- $fileflags =~ tr/ \t//d;
-
- @{$self}{'filename', 'filetype'} = ( $filename, $filetype );
- $self->{fileflags} = [ split /,/, $fileflags ];
-
- return $self;
-}
-
-sub filename { $_[0]->{filename} }
-sub filetype { $_[0]->{filetype} }
-sub fileflags { $_[0]->{fileflags} }
-sub is_header { scalar( $_[0]->{filename} =~ m/\.h$/i ) }
-sub is_source { !scalar( $_[0]->{filename} =~ m/\.h$/i ) }
-
-sub object_file {
- my $self = shift;
- my $obj = $self->{filename};
-
- $obj =~ s/cp?p?$/o/i; # PORTABILITY
-
- return $obj;
-}
-
-my %src_prefix = ( Common => 'common/',
- Generic => 'generic/',
- MSW => 'msw/',
- Mac => 'mac/',
- Motif => 'motif/',
- GTK => 'gtk/',
- Univ => 'univ/',
- X11 => 'x11/',
- HTML => 'html/',
- Unix => 'unix/',
- WXH => '',
- ProtoH => 'protocol/',
- HtmlH => 'html/',
- MotifH => 'motif/',
- X11H => 'x11/',
- GenericH => 'generic/',
- UnixH => 'unix/',
- );
-
-sub source_file {
- my $self = shift;
- my $type = $self->filetype;
-
- die "Unknown file type '$type'" unless exists $src_prefix{$type};
- return $src_prefix{$type} . $self->filename; # PORTABILITY
-}
-
-sub has_flag {
- my( $self, $flag ) = @_;
- $flag = lc( $flag );
- return grep { lc( $_ ) eq $flag } @{$self->{fileflags}};
-}
-
-1;