diff options
author | Angelo Naselli <anaselli@linux.it> | 2014-01-27 18:20:30 +0100 |
---|---|---|
committer | Angelo Naselli <anaselli@linux.it> | 2014-01-27 18:20:30 +0100 |
commit | 1624ce382eb033c2cf3ef1fe6b9c41beb0b0a91b (patch) | |
tree | 1363e3d3bdcfa5b2ff3111a41b2c700a5a922140 /Module.pm | |
parent | f519e47d15103514585a272c6308467ac41ce551 (diff) | |
download | manatools-1624ce382eb033c2cf3ef1fe6b9c41beb0b0a91b.tar manatools-1624ce382eb033c2cf3ef1fe6b9c41beb0b0a91b.tar.gz manatools-1624ce382eb033c2cf3ef1fe6b9c41beb0b0a91b.tar.bz2 manatools-1624ce382eb033c2cf3ef1fe6b9c41beb0b0a91b.tar.xz manatools-1624ce382eb033c2cf3ef1fe6b9c41beb0b0a91b.zip |
Project structure change
Diffstat (limited to 'Module.pm')
-rw-r--r-- | Module.pm | 121 |
1 files changed, 0 insertions, 121 deletions
diff --git a/Module.pm b/Module.pm deleted file mode 100644 index 48eb5bdc..00000000 --- a/Module.pm +++ /dev/null @@ -1,121 +0,0 @@ -#!/usr/bin/perl - -# vim: set et ts=4 sw=4: -# Copyright 2012 Steven Tucker -# -# This file is part of AdminPanel -# -# AdminPanel is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 2 of the License, or -# (at your option) any later version. -# -# AdminPanel is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with AdminPanel. If not, see <http://www.gnu.org/licenses/>. - - -#Class Module -package Module; - -use Moose; - -=head1 VERSION - -Version 0.01 - -=cut - -our $VERSION = '1.0.0'; - -use strict; -use warnings; -use diagnostics; -use yui; - -=head1 SUBROUTINES/METHODS - -=head2 create - returns a Module object such as a module - launcher (this object) or an extension of - this class - -=cut - -sub create { - my $class = shift; - $class = ref $class || $class; - my (%params) = @_; - - my $obj; - if ( exists $params{-CLASS} ) { - my $driver = $params{-CLASS}; - - eval { - my $pkg = $driver; - $pkg =~ s/::/\//g; - $pkg .= '.pm'; - require $pkg; - $obj=$driver->new(); - }; - if ( $@ ) { - die "Error getting obj for driver $params{-CLASS}: $@"; - return undef; - } - } - else { - $obj = new Module(@_); - } - return $obj; -} - -has 'icon' => ( - is => 'rw', - isa => 'Str', -); - -has 'name' => ( - is => 'rw', - isa => 'Str', -); - -has 'launch' => ( - is => 'rw', - isa => 'Str', -); - -has 'button' => ( - is => 'rw', - init_arg => undef, -); - - -sub setButton { - my ($self, $button) = @_; - $self->{button} = $button; -} - -sub removeButton { - my($self) = @_; - - undef($self->{button}); -} - -# base class launcher -sub start { - my $self = shift; - - if ($self->{launch}) { - my $err = yui::YUI::app()->runInTerminal( $self->{launch} . " --ncurses"); - if ($err == -1) { - system($self->{launch}); - } - } -} - - -no Moose; -1; |