File Coverage

blib/lib/Tkx/TclTk/Bind/IWidgets.pm
Criterion Covered Total %
statement 7 9 77.7
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 10 12 83.3


line stmt bran cond sub pod time code
1             # ##############################################################################
2             # # Script : Tkx::TclTk::Bind::IWidgets.pm #
3             # # -------------------------------------------------------------------------- #
4             # # Copyright : Frei unter GNU General Public License bzw. Artistic License #
5             # # Authors : JVBSOFT - Jürgen von Brietzke 0.001 - 1.301 #
6             # # Version : 1.301 20.Dez.2015 #
7             # # -------------------------------------------------------------------------- #
8             # # Function : Bindet die TclTk 'iwidgets4.0.2' Bibliothek an Perl::Tkx #
9             # # -------------------------------------------------------------------------- #
10             # # Language : PERL 5 (V) 5.12.xx - 5.22.xx #
11             # # Coding : ISO 8859-15 / Latin-9 UNIX-Zeilenende #
12             # # Standards : Perl-Best-Practices severity 1 (brutal) #
13             # # -------------------------------------------------------------------------- #
14             # # Module : Enc::C ActivePerl-REPO-Module #
15             # # Perl::Modern::Perl #
16             # # Tkx::TclTk::Bind #
17             # ##############################################################################
18              
19             package Tkx::TclTk::Bind::IWidgets 1.301;
20              
21             # ##############################################################################
22              
23 1     1   22106 use Env::C;
  1         587  
  1         33  
24 1     1   827 use Perl::Modern::Perl qw{5.12};
  1         28022  
  1         8  
25 1     1   1458 use Tkx::TclTk::Bind qw{ &load_library };
  0            
  0            
26              
27             # ##############################################################################
28              
29             sub BEGIN {
30              
31             my $temp_dir = load_library( 'iwidgets', 'iwidgets4.0.2' );
32              
33             # --- Steuervariablen belegen -----------------------------------------------
34             my $path_to_iwidgets_library
35             = File::Spec->catfile( $temp_dir, 'iwidgets4.0.2' );
36             my $path_to_itk_library = File::Spec->catfile( $temp_dir, 'itk3.4' );
37             my $path_to_itcl_library = File::Spec->catfile( $temp_dir, 'itcl3.4' );
38              
39             # --- Environment-Variablen setzen ------------------------------------------
40             Env::C::setenv( 'ITCL_LIBRARY', $path_to_itcl_library );
41             Env::C::setenv( 'ITK_LIBRARY', $path_to_itk_library );
42              
43             # --- IWidgets in Tkx binden ------------------------------------------------
44             Tkx::lappend( '::auto_path', $path_to_itk_library );
45             Tkx::lappend( '::auto_path', $path_to_itcl_library );
46             Tkx::lappend( '::auto_path', $path_to_iwidgets_library );
47             Tkx::package_require('Iwidgets');
48              
49             } # end of sub BEGIN
50              
51             # ##############################################################################
52              
53             sub END {
54              
55             Env::C::unsetenv('ITCL_LIBRARY');
56             Env::C::unsetenv('ITK_LIBRARY');
57              
58             } # end of sub END
59              
60             # ##############################################################################
61             # # E N D #
62             # ##############################################################################
63             1;
64              
65             __END__