continuacion
Código PHP:
$field_header = array('TgrpA', 'TgrpB', 'Duracion'); // note 3
// Creates the view to display the list store
$view = new GtkTreeView($model); // note 4
$scrolled_win->add($view); // note 5
// Creates columns
for ($col=0; $col<count($field_header); $col++) {
$cell_renderer = new GtkCellRendererText();
$column = new GtkTreeViewColumn($field_header[$col],
$cell_renderer, 'text', $col);
$view->append_column($column);
}
//pupulates the data
for ($row=0; $row<count($data); $row++) {
$values = array();
for ($col=0; $col<count($data[$row]); ++$col) {
$values[] = $data[$row][$col];
}
$model->append($values); // note 6
//print_r (array_values($values));
}
}
class entel extends base_module {
function setup($vbox) {
$this->dialog->set_size_request(800, 600);
$title = new GtkLabel("Entel 2");
$vbox->pack_start($title, 0, 0);
$vbox->pack_start(new GtkLabel(), 0, 0);
$flat_file_db = 'C:\Users\Nat\Desktop\proyectoGTK\php-gtk2\en-2-2.txt'; // note 1
$handle = @fopen($flat_file_db, "r");
//array entel 2
$array_TgrpA = array();
$array_TgrpB = array();
$array_Nadi142 = array();
$array_Fecha = array();
$array_Hora = array();
$array_Durac = array();
$array_NadiB = array();
$array_number = array();
if ($handle) {
while (!feof($handle)) {
$buffer = fgets($handle);
$TgrpA = substr("$buffer",1, 6);
$TgrpB = substr("$buffer",7, 7);
$Nadi142 = substr("$buffer",30, 9);
$Fecha = substr("$buffer",80, 8);
$Hora = substr("$buffer",89, 8);
$Durac = substr("$buffer",98, 5);
$NadiB = substr("$buffer",107, 15);
$number = substr("$buffer", 107, 3);
array_push($array_TgrpA, $TgrpA);
array_push($array_TgrpB, $TgrpB);
array_push($array_Nadi142, $Nadi142);
array_push($array_Fecha, $Fecha);
array_push($array_Hora, $Hora);
array_push($array_Durac, $Durac);
array_push($array_NadiB, $NadiB);
array_push($array_number, $number);
}
$data = array($array_TgrpA,
$array_TgrpB,
$array_Durac);
//numbers
$array_count_number = array_count_values($array_number); // muestra cuantas veces se repite el mismo valor
$array_keys_number = array_keys($array_count_number); // muestra las llaves de los numeros buscados con $array_count_number
/*
//TgrpA
$array_count_TgrpA = array_count_values($array_TgrpA);
$array_keys_TgrpA = array_keys($array_count_TgrpA);
//TgrpB
$array_count_TgrpB = array_count_values($array_TgrpB);
$array_keys_TgrPB = array_keys($array_count_TgrpB);*/
function obtenerUbicacionIguales($NumeroIndice, $array_number)
{
$resultado = array();
for($i = 0; $i < count($array_number); $i++)
if($array_number[$i] == $NumeroIndice) // Si el numero indice buscado es igual al indice en la posicion actual
$resultado[] = $i; // Agregar la posicion / ubicacion en el resultado.
return $resultado;
}
//OBTENER VALORES 1
function obtenerValoresTgrpA($NumeroIndice, $array_number, $array_TgrpA)
{
$resultado = array();
for($i = 0; $i < count($array_number); $i++)
if($array_number[$i] == $NumeroIndice) // Si coincide el indice con el numero indice requerido
$resultado[] = $array_TgrpA[$i]; // Agregar la palabra correspondiente en el resultado.
return $resultado;
}
function obtenerValoresTgrpB($NumeroIndice, $array_number, $array_TgrpB)
{
$resultado = array();
for($i = 0; $i < count($array_number); $i++)
if($array_number[$i] == $NumeroIndice) // Si coincide el indice con el numero indice requerido
$resultado[] = $array_TgrpB[$i]; // Agregar la palabra correspondiente en el resultado.
return $resultado;
}
function obtenerValoresNadi142($NumeroIndice, $array_number, $array_Nadi142)
{
$resultado = array();
for($i = 0; $i < count($array_number); $i++)
if($array_number[$i] == $NumeroIndice) // Si coincide el indice con el numero indice requerido
$resultado[] = $array_Nadi142[$i]; // Agregar la palabra correspondiente en el resultado.
return $resultado;
}
function obtenerValoresNadiB($NumeroIndice, $array_number, $array_NadiB)
{
$resultado = array();
for($i = 0; $i < count($array_number); $i++)
if($array_number[$i] == $NumeroIndice) // Si coincide el indice con el numero indice requerido
$resultado[] = $array_NadiB[$i]; // Agregar la palabra correspondiente en el resultado.
return $resultado;
}
function obtenerValoresDurac($NumeroIndice, $array_number, $array_Durac)
{
$resultado = array();
for($i = 0; $i < count($array_number); $i++)
if($array_number[$i] == $NumeroIndice) // Si coincide el indice con el numero indice requerido
$resultado[] = $array_Durac[$i]; // Agregar la palabra correspondiente en el resultado.
return $resultado;
}
// FIN OBTENER VALORES1
display_table($vbox, $data);
}
}
}
class softswitch extends base_module {
function setup($vbox) {
$this->dialog->set_size_request(800, 600);
$vbox->pack_start(new GtkLabel(get_class($this)));
}
}
class main extends base_module {
function setup($vbox) {
//define menu definition
$menu_definition = array(
'_Archivo' => array('_Cerrar'),
'_Aplicaciones' => array( 'Entel', 'SoftSwitch')
);
$this->setup_menu($vbox, $menu_definition);
$vbox->pack_start(new GtkLabel('Menu Principal'));
}
// shows the buttons at bottom of windows only for main_menu
function show_buttons($vbox) {
global $modules;
$hbox = new GtkHBox();
$vbox->pack_start($hbox, 0, 0);
$hbox->pack_start(new GtkLabel());
foreach($this->main->modules as $module) {
if ($module=='main') continue; // skip the main_menu button
$button = new GtkButton(strtoupper(substr($module,0,1)).substr($module,1)); // cap 1st letter
$button->set_size_request(80, 32); // makes all button the same size
if ($module == get_class($this)) { // sets the color of the respective button
$button->modify_bg(Gtk::STATE_NORMAL, GdkColor::parse("#95DDFF"));
$button->modify_bg(Gtk::STATE_ACTIVE, GdkColor::parse("#95DDFF"));
$button->modify_bg(Gtk::STATE_PRELIGHT, GdkColor::parse("#95DDFF"));
}
$hbox->pack_start($button, 0, 0);
$hbox->pack_start(new GtkLabel());
$button->connect('clicked', array(&$this->main,'on_clicked'), $module); // event handler to handle button click
}
}
// setup menu
function setup_menu($vbox, $menus) {
$menubar = new GtkMenuBar();
$vbox->pack_start($menubar, 0, 0);
foreach($menus as $toplevel => $sublevels) {
$menubar->append($top_menu = new GtkMenuItem($toplevel));
$menu = new GtkMenu();
$top_menu->set_submenu($menu);
foreach($sublevels as $submenu) {
if ($submenu=='<hr>') {
$menu->append(new GtkSeparatorMenuItem());
} else {
$menu->append($menu_item = new GtkMenuItem($submenu));
$menu_item->connect('activate', array(&$this->main, 'on_menu_select'));
}
}
}
}
}
?>