Exemple #1
0
 function construir_dialogo($id_proyecto = null)
 {
     $archivo = dirname(__FILE__) . '/toba.glade';
     $glade = new GladeXML($archivo, 'vbox');
     foreach (self::$comp_req as $comp) {
         $this->comp[$comp] = $glade->get_widget($comp);
     }
     $glade->signal_autoconnect_instance($this);
     //--- Arbol
     $columna = new GtkTreeViewColumn('Comandos');
     $renderer = new GtkCellRendererPixbuf();
     $columna->pack_start($renderer, false);
     $columna->set_attributes($renderer, 'pixbuf', 1);
     $renderer = new GtkCellRendererText();
     $columna->pack_start($renderer, true);
     $columna->set_attributes($renderer, 'text', 0);
     $this->comp['arbol_comandos']->append_column($columna);
     $seleccionado = $this->cargar_comandos($id_proyecto);
     $selection = $this->comp['arbol_comandos']->get_selection();
     $selection->set_mode(Gtk::SELECTION_SINGLE);
     $selection->connect('changed', array($this, 'evt__seleccionar_comando'));
     if (isset($seleccionado)) {
         $selection->select_iter($seleccionado);
     }
     //$this->connect('button-release-event', array($this, 'evt__popup'));
     return $this->comp['vbox'];
 }
 function __construct($parent = null)
 {
     parent::__construct();
     if ($parent) {
         $this->set_screen($parent->get_screen());
     } else {
         $this->connect_simple('destroy', array('gtk', 'main_quit'));
     }
     $this->set_title(__CLASS__);
     $this->set_position(Gtk::WIN_POS_CENTER);
     $this->set_default_size(-1, 500);
     $this->set_border_width(8);
     $hbox = new GtkHBox(false, 8);
     $this->add($hbox);
     $scrolled = new GtkScrolledWindow();
     $scrolled->set_shadow_type(Gtk::SHADOW_ETCHED_IN);
     $scrolled->set_policy(Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC);
     $hbox->pack_start($scrolled, false, false, 0);
     $model = $this->create_model();
     $treeview = new GtkTreeView($model);
     $scrolled->add($treeview);
     $column = new GtkTreeViewColumn();
     $column->set_title('Icon and Constant');
     $cell_renderer = new GtkCellRendererPixbuf();
     $column->pack_start($cell_renderer, false);
     $column->set_attributes($cell_renderer, 'stock-id', 1);
     $cell_renderer = new GtkCellRendererText();
     $column->pack_start($cell_renderer, true);
     $column->set_cell_data_func($cell_renderer, 'constant_setter');
     $treeview->append_column($column);
     $cell_renderer = new GtkCellRendererText();
     $treeview->insert_column_with_data_func(-1, 'Label', $cell_renderer, 'label_setter');
     $cell_renderer = new GtkCellRendererText();
     $treeview->insert_column_with_data_func(-1, 'Accelerator', $cell_renderer, 'accel_setter');
     $cell_renderer = new GtkCellRendererText();
     $treeview->insert_column_with_data_func(-1, 'ID', $cell_renderer, 'id_setter');
     $align = new GtkAlignment(0.5, 0, 0, 0);
     $hbox->pack_end($align, true, true, 0);
     $frame = new GtkFrame('Selection Info');
     $align->add($frame);
     $vbox = new GtkVBox(false, 8);
     $vbox->set_border_width(4);
     $frame->add($vbox);
     $display = new StockItemDisplay();
     $treeview->set_data('stock-display', $display);
     $display->type_label = new GtkLabel();
     $display->constant_label = new GtkLabel();
     $display->id_label = new GtkLabel();
     $display->accel_label = new GtkLabel();
     $display->icon_image = new GtkImage();
     $vbox->pack_start($display->type_label, false, false, 0);
     $vbox->pack_start($display->icon_image, false, false, 0);
     $vbox->pack_start($display->accel_label, false, false, 0);
     $vbox->pack_start($display->constant_label, false, false, 0);
     $vbox->pack_start($display->id_label, false, false, 0);
     $selection = $treeview->get_selection();
     $selection->set_mode(Gtk::SELECTION_SINGLE);
     $selection->connect('changed', array($this, 'on_selection_changed'));
     $this->show_all();
 }
 /**
  * Construct treeview
  */
 function __construct()
 {
     parent::__construct();
     parent::set_headers_visible(FALSE);
     $this->model = new GtkTreeStore(GObject::TYPE_OBJECT, GObject::TYPE_STRING, GObject::TYPE_PHP_VALUE, GObject::TYPE_STRING);
     parent::set_model($this->model);
     parent::connect('row-activated', array($this, 'onClick'));
     $column1 = new GtkTreeViewColumn();
     $cell_renderer1 = new GtkCellRendererPixbuf();
     $cell_renderer2 = new GtkCellRendererText();
     $column1->pack_start($cell_renderer1, false);
     $column1->pack_start($cell_renderer2, false);
     $column1->set_attributes($cell_renderer1, 'pixbuf', 0);
     $column1->set_attributes($cell_renderer2, 'text', 1);
     parent::append_column($column1);
 }