Getting the size of a Gtk::TreeView
- From: "Laurent Marzullo" <laurent marzullo atosorigin com>
- To: "GTK--" <gtkmm-list gnome org>
- Subject: Getting the size of a Gtk::TreeView
- Date: Wed, 9 Feb 2005 10:54:44 +0100
Hello,
I'm trying to make a druid with Gnome::UI::Druid.
My second page for the druid hold a list containing information concerning
CORBA Server:
+----------------------------+----------+------+----------------------+
|Name | Activate | Mode | Data |
+----------------------------+----------+------+----------------------+
...
...
+---+------------------------+----------+------+----------------------+
This list is inside a scrolled window. But the scrolled window 'cut'
the list in the middle of the 'Activate' Column
|
+--------------------------+------|
|Name | Activ|
|
^
|
Border of the |
ScrolledWindow --+
So I'm trying to resize the ScrolledWindow by calculating the size of the
first 3 columns size('Ok') + size('Name') + size('Activate') But it does not
seem to work !
Here What I do:
m_scrolled_window.add( m_tree_view );
m_scrolled_window.set_policy( Gtk::POLICY_AUTOMATIC ,
Gtk::POLICY_AUTOMATIC );
pack_start( m_scrolled_window , Gtk::PACK_EXPAND_WIDGET , 5 );
m_ref_tree_model = Gtk::ListStore::create( m_model_column );
m_tree_view.set_model( m_ref_tree_model );
ok = Gdk::Pixbuf::create_from_file( "server-ok.png" );
unknown = Gdk::Pixbuf::create_from_file( "server-unknown.png" );
not_ok = Gdk::Pixbuf::create_from_file( "server-not-ok.png" );
Gtk::TreeView::Column* = Gtk::manage( new Gtk::TreeView::Column( "Name" ) );
col->pack_start( m_model_columns.m_icon );
col->pack_start( m_model_columns.m_name );
m_tree_view.append_column( *col );
m_tree_view.append_column( "Activate" , m_model_columns.m_activate );
m_tree_view.append_column( "Mode" , m_model_columns.m_mode );
m_tree_view.append_column( "Data" , m_model_columns.m_data );
// Populating the row of the list
CORBA::Server::iterator itr = CORBA::Server::begin();
while ( itr != CORBA::Server::end() )
{
Gtk::TreeModel::Row row = *(m_ref_tree_model->append());
row[m_model_columns.m_icon = unknown;
row[m_model_columns.m_name = (*itr)->name();
...
}
// Here I'm trying to get the size of the 3 first columns
Gtk::TreeViewColumn* col1 = m_tree_view.get_column(0);
Gtk::TreeViewColumn* col2 = m_tree_view.get_column(1);
Gtk::TreeViewColumn* col3 = m_tree_view.get_column(2);
int width = col1->get_width() + col2->get_width() + col3->get_width();
m_scolled_window->set_size_request( width , 50 );
// But here the 'width' variable is 0
Could someone help me please ?
Thanks
Laurent Marzullo
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]