#!/usr/bin/perl
use strict;
use Gtk2 '-init';
use Gtk2::GladeXML;
use Gtk2::SimpleList;

my($programa, $vista_arbol, $vista_de_arbol_widget);
my($ventana_principal, $entrada_nombre, $entrada_edad, $entrada_comida, $entrada_telefono);

$programa = Gtk2::GladeXML->new('articulo.glade');

$ventana_principal = $programa->get_widget('ventana_principal');
$vista_de_arbol_widget = $programa->get_widget('vista_de_arbol');

$programa->signal_autoconnect_from_package('main');

$ventana_principal->show_all();

&todo_vista_arbol; &filas_vista_arbol; Gtk2->main; sub todo_vista_arbol { $vista_arbol = Gtk2::SimpleList->new_from_treeview($vista_de_arbol_widget, 'Nombre' => 'text', 'Apellido' => 'text', 'Teléfono' => 'scalar', 'Cuidad' => 'text', 'País' => 'text' ); $vista_arbol->set_headers_clickable(1); foreach ($vista_arbol->get_columns()) { $_->set_resizable(1); $_->set_sizing('grow-only'); } } sub filas_vista_arbol { open(ARCHIVO, 'datos_personales.txt') || die('No existe ese archivo'); while(<ARCHIVO>){ chomp; my($nombre, $apellido, $telefono, $cuidad, $pais) = split(/,/, $_); push @{$vista_arbol->{data}}, [$nombre, $apellido, $telefono, $cuidad, $pais]; } close(ARCHIVO); } sub on_boton_salir_clicked {Gtk2->main_quit;}