/* * ECell::max_width method */ static gint ect_max_width (ECellView *ecell_view, gint model_col, gint view_col) { ECellTreeView *tree_view = (ECellTreeView *) ecell_view; gint row; gint number_of_rows; gint max_width = 0; gint width = 0; gint subcell_max_width = 0; gboolean per_row = e_cell_max_width_by_row_implemented (tree_view->subcell_view); number_of_rows = e_table_model_row_count (ecell_view->e_table_model); if (!per_row) subcell_max_width = e_cell_max_width (tree_view->subcell_view, model_col, view_col); for (row = 0; row < number_of_rows; row++) { gint offset, subcell_offset; #if 0 gboolean expanded, expandable; ETreeTableAdapter *tree_table_adapter = e_cell_tree_get_tree_table_adapter (ecell_view->e_table_model, row); #endif offset = offset_of_node (ecell_view->e_table_model, row); subcell_offset = offset; width = subcell_offset; if (per_row) width += e_cell_max_width_by_row (tree_view->subcell_view, model_col, view_col, row); else width += subcell_max_width; #if 0 expandable = e_tree_model_node_is_expandable (tree_model, node); expanded = e_tree_table_adapter_node_is_expanded (tree_table_adapter, node); /* This is unnecessary since this is already handled * by the offset_of_node function. If that changes, * this will have to change too. */ if (expandable) { GdkPixbuf *image; image = (expanded ? E_CELL_TREE (tree_view->cell_view.ecell)->open_pixbuf : E_CELL_TREE (tree_view->cell_view.ecell)->closed_pixbuf); width += gdk_pixbuf_get_width (image); } #endif max_width = MAX (max_width, width); } return max_width; }
/* * ECell::max_width method */ static gint ecv_max_width (ECellView *ecell_view, gint model_col, gint view_col) { ECellVboxView *vbox_view = (ECellVboxView *) ecell_view; gint max_width = 0; gint i; for (i = 0; i < vbox_view->subcell_view_count; i++) { gint width = e_cell_max_width (vbox_view->subcell_views[i], vbox_view->model_cols[i], view_col); max_width = MAX (width, max_width); } return max_width; }
/* * ECell::max_width method */ static int ecv_max_width (ECellView *ecell_view, int model_col, int view_col) { ECellHboxView *hbox_view = (ECellHboxView *)ecell_view; int width = 0; int i; for (i = 0; i < hbox_view->subcell_view_count; i++) { int cell_width = e_cell_max_width (hbox_view->subcell_views[i], hbox_view->model_cols[i], view_col); if (cell_width < hbox_view->def_size_cols[i]) cell_width = hbox_view->def_size_cols[i]; width += cell_width; } return width; }