PHP-GTK
Thursday, October 23, 2014 
download | documentation | applications | faq | changelog | resources 


search for in the  


previousGtkTreeView
GtkTreeView::append_columnnext

Last updated: Sun, 12 May 2013
view this page in English

GtkTreeView Constructor

Creates a new GtkTreeView, optionally with a data store. If you don't set a it on construction, you can use set_model() after.

Example 139. GtkTreeview with sortable columns and some data

<?php
//the model
$store = new GtkListStore(Gobject::TYPE_BOOLEAN, Gobject::TYPE_STRING, Gobject::TYPE_LONG);
 
//add some data to the data store
$store->append(array(true , 'PHP'    , 1994));
$store->append(array(true , 'C'      , 1970));
$store->append(array(true , 'C++'    , 1983));
$store->append(array(false, 'Ruby'   , 1995));
$store->append(array(false, 'Python' , 1990));
$store->append(array(true , 'Java'   , 1994));
$store->append(array(false, 'Fortran', 1950));
$store->append(array(false, 'List'   , 1958));
$store->append(array(false, 'Haskell', 1987));
$store->append(array(false, 'Eiffel' , 1985));
 
//sort by year by default
$store->set_sort_column_id(2, Gtk::SORT_ASCENDING);
 
//We want to display our data in a GtkTreeView
$treeview = new GtkTreeView($store);
 
//the text renderer is used to display text
$cell_renderer = new GtkCellRendererText();
 
//Create the first column, make it resizable and sortable
$colLanguage = new GtkTreeViewColumn('Language', $cell_renderer, 'text', 1);
//make the column resizable in width
$colLanguage->set_resizable(true);
//make it sortable and let it sort after model column 1
$colLanguage->set_sort_column_id(1);
//add the column to the view
$treeview->append_column($colLanguage);
 
//second column, also sortable
$colYear = new GtkTreeViewColumn('Year', $cell_renderer, 'text', 2);
$colYear->set_sort_column_id(2);
$treeview->append_column($colYear);
 
//we want to display a boolean value, so we can use a check box for display
$bool_cell_renderer = new GtkCellRendererToggle();
$colUsed = new GtkTreeViewColumn('Used', $bool_cell_renderer, 'active', 0);
$colUsed->set_sort_column_id(0);
$treeview->append_column($colUsed);
 
 
//A window where we can put our tree view
$wnd = new GtkWindow();
$wnd->set_title('Programming languages');
$wnd->connect_simple('destroy', array('gtk', 'main_quit'));
 
//to make the view scrollable, we need a scrolled window
$scrwnd = new GtkScrolledWindow();
$scrwnd->set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
$scrwnd->add($treeview);
 
$wnd->add($scrwnd);
$wnd->set_default_size(250, 200);
$wnd->show_all();
Gtk::main();
?>

User Contributed Notes
gtk.gtktreeview.constructor.php
add a note about notes
There are no user contributed notes for this page.


previousGtkTreeView
GtkTreeView::append_columnnext

Last updated: Sun, 12 May 2013
view this page in English


credits 

PHP  Copyright © 2001-2014 The PHP Group
 All rights reserved.
Last updated: Sun May 12 20:51:01 2013 CEST