Autodia

 view release on metacpan or  search on metacpan

CHANGES  view on Meta::CPAN

- fixes to DBI handler 
- added SQL handler
- fixes to c++ handler
- fixes to Perl handler
- added dia handler
- added new options for hiding/showing attributes/methods
- added new option to hide private/hidden attributes/methods
- tidied up code and distribution

version 1.4 12/02/2003
- Added better support for GraphViz and output in png, jpg and dot
- added experimental support for VCG
- some small improvements to C++ and perl handlers
- added experimental dbi handler
- escaped amphersans that broke dia xml
- added support for ' use fields qw( fielda fieldb ) ' in perl handler

version 1.3 24/12/2002
- Patch from Johan Van den Brande to handle use base in perl handler
- Patch from Pascal to make php handler compile
- Many fixes to C++ and PHP handlers

autodia.pl  view on Meta::CPAN

autodia.pl -d 'foo bar quz'       : use *pl/pm in directories foo, bar and quz as input files
autodia.pl -d directory -r        : use *pl/pm in directory and its subdirectories as input files
autodia.pl -d directory -F        : use files in directory but only one file per diagram
autodia.pl -d directory -C        : use files in directory but skip CVS directories
autodia.pl -o outfile.xml         : use outfile.xml as output file (otherwise uses autodial.out.dia)
autodia.pl -O                     : output to stdout
autodia.pl -l language            : parse source as language (ie: C) and look for appropriate filename extensions if also -d
autodia.pl -t templatefile        : use templatefile as template (otherwise uses default)
autodia.pl -l DBI -i "mysql:test:localhost" -U username -P password : use the test database on localhost with username and password as username and password
autodia.pl -l Mason -i "/index.html" -p comp_root -G '\$c' : use HTML::Mason to fetch /index.html from comp_root and show all components in reach. -G corresponds to allow_globals.
autodia.pl -z                     : use graphviz to produce dot, gif, jpg or png output
autodia.pl -Z                     : use springgraph to produce png output
autodia.pl -v                     : use vcg to output postscript
autodia.pl -D                     : ignore dependancies (ie do not process or display dependancies)
autodia.pl -K                     : process dependance but do not display in output
autodia.pl -k                     : process inheritance but do not display in output
autodia.pl -S                     : silent mode, no output to stdout except with -O
autodia.pl -s skipfile            : exclude files or packagenames matching those listed in file
autodia.pl -H                     : show only public/visible methods and attributes
autodia.pl -m                     : show only Class methods
autodia.pl -M                     : do not show Class Methods
autodia.pl -a                     : show only Class Attributes

lib/Autodia/Diagram.pm  view on Meta::CPAN

use Autodia::Diagram::Class;
use Autodia::Diagram::Component;
use Autodia::Diagram::Superclass;
use Autodia::Diagram::Dependancy;
use Autodia::Diagram::Inheritance;
use Autodia::Diagram::Relation;
use Autodia::Diagram::Realization;

my %dot_filetypes = (
		     gif => 'as_gif',
		     png => 'as_png',
		     jpg => 'as_jpeg',
		     jpeg => 'as_jpeg',
		     dot => 'as_canon',
		     svg => 'as_svg',
		     fig => 'as_fig',
		    );

my %vcg_filetypes = (
		     ps => 'as_ps',
		     pbm => 'as_pbm',

lib/Autodia/Diagram.pm  view on Meta::CPAN


    my $dependancies = $self->Dependancies;
    if (ref $dependancies) {
      foreach my $Dependancy (@$dependancies) {
	  next unless ($nodes{$Dependancy->Parent});
	  #	warn "dependancy parent ", $Dependancy->Parent, " child :", $Dependancy->Child, "\n";
	  $g->add_edge( $nodes{$Dependancy->Parent}=>$nodes{$Dependancy->Child}, style=>'dashed',dir=>1);
      }
    }

    $g->as_png($output_filename);

    return 1;
  }

####################################################
# export_vcg - output to file via VCG.pm and xvcg

sub export_vcg {
  my $self = shift;
  require VCG;

lib/Autodia/Handler.pm  view on Meta::CPAN

	$alternative_filename =~ s|^-||;
    }
    

    $Diagram->remove_duplicates;

    # export output
    my $success = 0;
    OUTPUT_TYPE: {
	    if ($config{graphviz}) {
		$self->{Config}{outputfile} = "$alternative_filename.png" if ($config{singlefile});
		$success = $Diagram->export_graphviz(\%config);
		last;
	    }

	    if ($config{springgraph}) {
		$self->{Config}{outputfile} = "$alternative_filename.png" if ($config{singlefile});
		$success = $Diagram->export_springgraph(\%config);
		last;
	    }

	    if ($config{vcg}) {
		$self->{Config}{outputfile} = "$alternative_filename.ps" if ($config{singlefile});
		$success = $Diagram->export_vcg(\%config);
		last;
	    }



( run in 0.568 second using v1.01-cache-2.11-cpan-788537b7465 )