Ticket #1266: PerlCritic.pm.patch

File PerlCritic.pm.patch, 2.4 KB (added by bowtie, 3 years ago)

as per http://irclog.perlgeek.de/padre/2011-08-29#i_4340776

  • home/kevin/src/Padre/Padre-Plugin-PerlCritic/lib/Padre/Plugin/PerlCritic.pm

     
    77use warnings; 
    88use Padre::Wx     (); 
    99use Padre::Plugin (); 
    10  
     10our $VERSION = 0.101; 
    1111our @ISA = 'Padre::Plugin'; 
    12  
     12####### 
     13# Method Padre_Interfaces required 
     14####### 
    1315sub padre_interfaces { 
    14     'Padre::Plugin' => '0.47',; 
     16    return ( 
     17        'Padre::Plugin'   => '0.91', 
     18        'Padre::Wx'       => '0.91', 
     19        'Padre::Wx::Main' => '0.91', 
     20        'Padre::Logger'   => '0.91', 
     21    ); 
    1522} 
    1623 
    1724sub plugin_name { 
    18     Wx::gettext('Perl Critic'); 
     25    return Wx::gettext('Perl-Critic'); 
    1926} 
    2027 
    21 sub menu_plugins_simple { 
     28sub menu_plugins { 
    2229    my $self = shift; 
    23     return $self->plugin_name => [ 
    24         Wx::gettext('Perl::Critic Current Document') => sub { 
    25             $self->critic(@_); 
    26             } 
    27     ]; 
     30    my $main = shift; 
     31 
     32    # Create a manual menu item 
     33    my $item = Wx::MenuItem->new( undef, -1, $self->plugin_name, ); 
     34    Wx::Event::EVT_MENU( 
     35        $main, $item, 
     36        sub { 
     37            local $@; 
     38            eval { $self->critic($main); }; 
     39        }, 
     40    ); 
     41 
     42    return $item; 
    2843} 
    2944 
    3045sub critic { 
     
    3752    unless ( $document->isa('Padre::Document::Perl') ) { 
    3853        return Wx::MessageBox( 
    3954            Wx::gettext('Document is not a Perl document'), 
    40             Wx::gettext('Error'), 
    41             Wx::wxOK | Wx::wxCENTRE, 
    42             $self, 
     55            Wx::gettext('Error'), Wx::wxOK | Wx::wxCENTRE, $self, 
    4356        ); 
    4457    } 
    4558    my $text = $document->text_get; 
     
    6174    $main->show_output(1); 
    6275    if (@params) { 
    6376        $output->AppendText( 
    64             sprintf( Wx::gettext('Perl::Critic running with project-specific configuration %s'), $config_perlcritic ) 
    65                 . "\n" ); 
     77            sprintf( 
     78                Wx::gettext( 'Perl::Critic running with project-specific configuration %s' ), 
     79                $config_perlcritic 
     80                ) 
     81                . "\n" 
     82        ); 
    6683    } else { 
    67         $output->AppendText( Wx::gettext("Perl\::Critic running with default or user configuration") . "\n" ); 
     84        $output->AppendText( Wx::gettext('Perl::Critic running with default or user configuration') . "\n" ); 
    6885    } 
    6986 
    7087    # Hand off to Perl::Critic 
     
    8299    return; 
    83100} 
    84101 
     102####### 
     103# Method plugin_disable required 
     104####### 
     105sub plugin_disable { 
     106    my $self = shift; 
     107 
     108    # Unload other cpan modules 
     109    $self->unload( 
     110        qw{ 
     111            Perl::Critic 
     112            } 
     113    ); 
     114 
     115    $self->SUPER::plugin_disable(@_); 
     116 
     117    return 1; 
     118} 
     119 
    851201; 
    86121 
    87122__END__