 637c61da76
			
		
	
	637c61da76
	
	
	
		
			
			2001-01-09 Havoc Pennington <hp@redhat.com> * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where there are no rows in the model * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is NULL, then return the start of the list * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree if we can't get any rows from an empty model * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove extraneous * after function pointer typedef usage * Makefile.am: don't specify full path to cp and rm * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_get_size): check width/height != NULL before dereferencing, fixes a segfault that happened from time to time * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel, and reindent the function (gtk_cell_renderer_pixbuf_get_size): indentation * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after we quit it (gtk_dialog_add_buttons_valist): add g_return_if_fail (gtk_dialog_set_default_response): New function, to set default button (gtk_dialog_set_response_sensitive): New function, to set sensitivity of buttons * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value): handle any G_TYPE_OBJECT subclass, not just the base class, and also boxed types. (_gtk_tree_data_list_value_to_node): ditto * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if --gtk-debug=tree * gtk/gtkmain.c: add GTK_DEBUG_TREE * gtk/gtkdebug.h: add GTK_DEBUG_TREE
		
			
				
	
	
		
			88 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			88 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| This document is a laundry list of stuff to check if you want to
 | |
| verify that GtkTreeView and associated objects are working properly.
 | |
| It isn't a very formal test plan or anything.
 | |
|  
 | |
| Launching:
 | |
|  - Launch testtreeview with --gtk-debug=tree, this will ensure that 
 | |
|    debugging code in the tree widget gets run.
 | |
| 
 | |
| Automated tests:
 | |
| 
 | |
|  - on startup, testtreeview runs some automated tests; these all have
 | |
|    to pass. 
 | |
| 
 | |
| TreeModel testing:
 | |
| 
 | |
|  - all the TreeView/TreeModel tests in this document should be run 
 | |
|    with each of the different models testtreeview supports. The 
 | |
|    option menu at the top of testtreeview lets you swap in the 
 | |
|    various models. The option menu includes each of the 
 | |
|    models that comes with GTK, in various configurations, 
 | |
|    and also NULL (no model).
 | |
| 
 | |
|  - ensure that swapping in a new model for the tree view when there
 | |
|    was a preexisting one works OK 
 | |
| 
 | |
| TreeViewColumn testing:
 | |
|  
 | |
|  - clicking a column header pops up a property inspector for that 
 | |
|    column, use this to change column attributes for testing
 | |
|  
 | |
|  - should test columns with 0, 1, and N columns in the tree view
 | |
|  
 | |
|  - check that setting a column invisible works
 | |
|  
 | |
|  - check that setting a column unclickable works
 | |
| 
 | |
|  - check that setting the column width works 
 | |
| 
 | |
|  - check that width of -1 unsets column width
 | |
| 
 | |
|  - check that min/max widths can be set/unset and have the desired
 | |
|    effect
 | |
| 
 | |
|  - check that setting the column title works
 | |
| 
 | |
|  - check that the column with an image in it looks right, there should 
 | |
|    be such a column (once we support the custom widget feature)
 | |
| 
 | |
|  - check that justification works
 | |
| 
 | |
| TreeView testing:
 | |
| 
 | |
|  - check that expansion/collapse of tree nodes with the expanders
 | |
|    works
 | |
| 
 | |
|  - check that turning headers off works
 | |
| 
 | |
|  - check that scrolling works properly
 | |
| 
 | |
|  - check that autosize works (resize columns to a weird size, 
 | |
|    then click autosize to ensure they snap back to the original 
 | |
|    size)
 | |
| 
 | |
|  - check move_to
 | |
| 
 | |
|  - check expand_all, collapse_all
 | |
| 
 | |
| Key navigation:
 | |
|  - FIXME, all the keybindings and what they are supposed to do
 | |
| 
 | |
| TreeSelection testing:
 | |
| 
 | |
|  - check that single and multi mode both work; single should allow zero 
 | |
|    or 1 rows selected, multi should allow any number.
 | |
| 
 | |
|  - in multi, check that shift-select selects a contiguous region,
 | |
|    control-select selects a disjunct set of nodes
 | |
| 
 | |
|  - check that retrieving the selection works
 | |
| 
 | |
|  - check that foreach() works
 | |
| 
 | |
| CellRenderer testing:
 | |
| 
 | |
|  - these should be well-exercised by the multi-column test, be
 | |
|    sure everything looks correctly rendered
 | |
| 
 |