aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAngelo Naselli <anaselli@linux.it>2015-07-17 07:56:43 (GMT)
committerAngelo Naselli <anaselli@linux.it>2015-07-17 07:56:43 (GMT)
commit78ed12063bf290ffea513c76f0aa000810d0f93c (patch)
treefaef418ffa069e2f5faa3b8f40e40da34fbe5d6d
parent297d8b15f065ce9555c6ca387d11d26168fd292f (diff)
Updated
-rw-r--r--Changes1
-rw-r--r--MODULE_HACKING17
-rw-r--r--README.md4
-rw-r--r--extras/ModuleTemplate.pm101
-rwxr-xr-xextras/mana_mt35
5 files changed, 17 insertions, 141 deletions
diff --git a/Changes b/Changes
index 03b34a6..315cf39 100644
--- a/Changes
+++ b/Changes
@@ -1,3 +1,4 @@
+ - Added a module template to extras/module_template
- Shared::urpmi_backend::DB first attempt to write a urpmi
backend once and for all (porting of open_db
- Shared::Locales fixed iconv undef value warning
diff --git a/MODULE_HACKING b/MODULE_HACKING
index 4ed3af1..55c8d25 100644
--- a/MODULE_HACKING
+++ b/MODULE_HACKING
@@ -65,6 +65,12 @@ Said that you have to:
Some share code is into ManaTools::Shared modules, such as Locales to manage localization
or Module back-ends for instance.
+A module template example is into extras/module_templete/ directory, where
+extras/module_templete/mana_mt is the example script that use and run
+the module, while the module itself is
+extras/module_templete/ManaTools/Module/ModuleTemplate.pm
+The module just show a MessageBox and exit.
+
- ManaTools configuration (how to run a module)
mpan can be run using a "name" parameter and eventually by forcing a configuration
@@ -93,12 +99,12 @@ _______________
---------------
Layout can change in future though.
-Let's see an example
+Let's see an example of a category configuration
<category>
<title>Hardware</title>
<icon>/usr/share/icons/configuration_section.png</icon>
<module>
- <class>ManaTools::Module::AdminMouse</class>
+ <class>ManaTools::Module::Services</class>
</module>
<module>
<title>Module name</title>
@@ -107,7 +113,8 @@ Let's see an example
</module>
</category>
-First module is a perl ManaTools::Module extension (AdminMouse),
-latter is an external one, as you can see could be a script
-as well as an executable command.
+First module is a perl ManaTools::Module extension (Services),
+latter is an external one, called "module" and with a full pathname.
+
+As you can see it could be a script, as well as an executable command.
Look at settings.conf and categories.conf for details.
diff --git a/README.md b/README.md
index 9926673..4e1ca07 100644
--- a/README.md
+++ b/README.md
@@ -93,6 +93,10 @@ perldoc command.
perldoc ManaTools
+# CONTRIBUTING #
+
+Read MODULE_HACKING to understand how to write a Module.
+Contact authors or Mageia team (http://www.mageia.org/en/contribute/)
# EMBEDDED MODULES #
diff --git a/extras/ModuleTemplate.pm b/extras/ModuleTemplate.pm
deleted file mode 100644
index 19a2514..0000000
--- a/extras/ModuleTemplate.pm
+++ /dev/null
@@ -1,101 +0,0 @@
-# vim: set et ts=4 sw=4:
-#*****************************************************************************
-#
-# Copyright (c) 2015 Angelo Naselli <anaselli@linux.it>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2, as
-# published by the Free Software Foundation.
-#
-# This program 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 this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-#*****************************************************************************
-
-# Use the right name space simplified for testing
-#package ManaTools::Module::ModuleTemplate;
-package ModuleTemplate;
-
-use Moose;
-
-use yui;
-use File::ShareDir ':ALL';
-
-use ManaTools::Shared;
-use ManaTools::Shared::Locales;
-use ManaTools::Shared::GUI;
-
-extends qw( ManaTools::Module );
-
-
-#uncomment this and set the right icon
-#has '+icon' => (
-# default => File::ShareDir::dist_file(ManaTools::Shared::distName(), 'images/ModuleTemplate.png'),
-#);
-
-has '+name' => (
- lazy => 1,
- builder => '_nameInitializer',
-);
-
-sub _nameInitializer {
- my $self = shift;
-
- return ($self->loc->N("Module template tools"));
-}
-
-
-=head1 VERSION
-
-Version 0.0.1
-
-=cut
-
-our $VERSION = '0.0.1';
-
-# sh_gui to use Shared/GUI object
-has 'sh_gui' => (
- is => 'rw',
- init_arg => undef,
- builder => '_SharedUGUIInitialize'
-);
-
-sub _SharedUGUIInitialize {
- my $self = shift();
-
- $self->sh_gui(ManaTools::Shared::GUI->new() );
-}
-
-#=============================================================
-
-=head2 start
-
-=head3 INPUT
-
- $self: this object
-
-=head3 DESCRIPTION
-
- This method extends Module::start and is invoked to
- start host manager
-
-=cut
-
-#=============================================================
-sub start {
- my $self = shift;
-
- $self->sh_gui->msgBox({
- text => $self->loc->N("Hello world, I am the beautiful module template")
- });
-
-};
-
-
-1;
diff --git a/extras/mana_mt b/extras/mana_mt
deleted file mode 100755
index baeac12..0000000
--- a/extras/mana_mt
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/usr/bin/perl
-# vim: set et ts=4 sw=4:
-# Copyright 2015 Angelo Naselli
-#
-# This file is part of manatools
-# and it is a script to test the module template
-#
-# mana_mt 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.
-#
-# mana_mt 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 ManaTools. If not, see <http://www.gnu.org/licenses/>.
-
-#Run as "perl -I$PWD mana_mt" to find the module here
-
-# Use the right name space simplified for testing
-#use ManaTools::Module::ModuleTemplate;
-use ModuleTemplate;
-
-use yui;
-
-
-my $mt = ModuleTemplate->new({
-});
-
-$mt->start();
-
-1;