1. 09 Mar, 2001 1 commit
    • Jonathan Blandford's avatar
      Actually unref the nodes. Fixes bug #50058. · 8401ea1a
      Jonathan Blandford authored
      Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
      	unref the nodes.   Fixes bug #50058.
      
      	* gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
      	"::ref_iter" to "::ref_node".
      	(gtk_tree_model_unref_node): change "::unref_iter" to
      	"::unref_node". Fixes bug #50064.
      8401ea1a
  2. 08 Mar, 2001 2 commits
    • Jonathan Blandford's avatar
      add support for invisible cells. (gtk_tree_view_bin_expose): ditto · bd10a077
      Jonathan Blandford authored
      Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
      	support for invisible cells.
      	 (gtk_tree_view_bin_expose): ditto
      
      also, forgot to commit tests/testtreeview.c last commit
      bd10a077
    • Tim Janik's avatar
      added accumulator data argument to g_signal_newc() functions. · 06718ecf
      Tim Janik authored
      Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
      
              * *.c: added accumulator data argument to g_signal_newc()
              functions.
      
              * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model):
              * gtk/gtktreeview.c (gtk_tree_view_setup_model):
              * gtk/treestoretest.c (make_window):
              s/g_signal_connect/g_signal_connectc/.
      
              * gtk/gtktextbuffer.c: completed signal arg fixups,
              they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
      06718ecf
  3. 07 Mar, 2001 1 commit
    • Tim Janik's avatar
      marshaller fixes. · 35af5c4e
      Tim Janik authored
      Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
      
              * gtk/*.c: marshaller fixes.
      
              * gtk/gtkmarshal.list: extreme cleanup.
      
              * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
              param spec for now.
      
              * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
              where appliable.
      
              * gtk/gtktypeutils.[hc]: updates to GLib API changes.
              special cased autogenerated boxed types from gtktypebuiltins_ids.c
              which are not reference counted:
              GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
              PangoFontDescription, GtkTreeIter and GtkTreePath.
      
      Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
      
              * gtk/gtktreeselection.h:
              * gtk/gtktreemodel.c:
              * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
              file should be included directly, and gobject/gmarshal.h
              as well as gtk/gtkmarshal.h even can't be included directly.
      
              * Makefile.am: grr, install gtk-config-2.0.
      
              * gtk/testgtk.c:
              * gtk/simple.c:
              * gtk/gtkmenu.c:
              * gtk/gtkitemfactory.c: use g_object_connect() instead of
              passing "*signal*::*" args to gtk_widget_set().
      
              * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
      
              * gtk/*.c: removed trailer arg from property setters and getters.
              macro fixups.
      
      Thu Mar  1 04:01:57 2001  Tim Janik  <timj@gtk.org>
      
              * test-gdk-pixbuf.c: fixed includes.
      35af5c4e
  4. 06 Mar, 2001 1 commit
  5. 05 Mar, 2001 2 commits
    • Jonathan Blandford's avatar
      Apply patch from John Margaglione to add object properties. · d5e0710d
      Jonathan Blandford authored
      Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeview.c: Apply patch from John Margaglione to add
      	object properties.
      d5e0710d
    • Jonathan Blandford's avatar
      renamed "child_toggled" to "has_child_toggled". · 3b2ffda1
      Jonathan Blandford authored
      Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreemodel.c: renamed "child_toggled" to
      	"has_child_toggled".
      
      	* gtk/gtktreeview.c: Handle removing columns better.  Updated to
      	handle new signal name.
      
      	* gtk/gtktreestore.c: Updated to handle new signal name.
      	* gtk/gtklisttore.c: Updated to handle new signal name.
      	* gtk/gtktreemodelsort.c: Updated to handle new signal name.
      3b2ffda1
  6. 02 Mar, 2001 1 commit
    • Jonathan Blandford's avatar
      Move handling of buttons fully in gtktreeviewcolumn. This code is less · 193bed18
      Jonathan Blandford authored
      Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
      	Move handling of buttons fully in gtktreeviewcolumn.  This code is
      	less interrelated then it was, but it still requires the
      	GtkTreeView to map it.
      
      	* test/testtreecolumn.c: Now I can add a column to one view,
      	remove it, add it to the another view, remove it, then re-add it
      	to the first.  Nifty.
      193bed18
  7. 28 Feb, 2001 3 commits
    • Jonathan Blandford's avatar
      Sanitize GtkRowReference. · f7382221
      Jonathan Blandford authored
      Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
      	GtkRowReference.
      f7382221
    • Havoc Pennington's avatar
      Remove draw_focus and draw_default (gtk_widget_draw_focus): remove this · 56a2f2c6
      Havoc Pennington authored
      2001-02-28  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
      	draw_default
      	(gtk_widget_draw_focus): remove this function; we could instead
      	make it just gtk_widget_draw(), but in most cases I think the
      	result would be broken user code, so think it's better to have
      	that code not compile and get fixed
      	(gtk_widget_draw_default): ditto
      
      	* gtk/gtkwidget.c: Add default handlers for focus_in_event and
      	focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
      
      	* gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
      	widgets lose/get the default, instead of calling draw_default
      
      	* docs/Changes-2.0.txt: note about all this
      
      	Then fixed every widget in GTK, I won't list all the filenames.
      56a2f2c6
    • Jonathan Blandford's avatar
      Proxy out to _gtk_tree_row_reference_deleted. (inserted_callback): Proxy · c82dc58f
      Jonathan Blandford authored
      Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreemodel.c (deleted_callback): Proxy out to
      	_gtk_tree_row_reference_deleted.
      	(inserted_callback): Proxy out to
      	_gtk_tree_row_reference_inserted.
      	(_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
      	get around signal emission ordering problem.
      
      	* gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
      	fix to work with SINGLE
      	(_gtk_tree_selection_internal_select_node): Major sanitization on
      	selections.  SINGLE now seems to work.
      
      	* tests/Makefile.am: add testtreecolumn.c:
      
      	* tests/testtreecolumn.c: New test.  Mostly points out selection
      	bugs currently, but will test columns later.
      
      	* gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
      	selection bug.  I hate touching this code -- it's scary.
      c82dc58f
  8. 23 Feb, 2001 1 commit
    • Jonathan Blandford's avatar
      Only draw the column that is exposed. · 1efdc103
      Jonathan Blandford authored
      Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
      	column that is exposed.
      
      	(_gtk_tree_view_update_size): Changed name from set_size, and
      	changed function to do more work, and not force people calling it
      	to figure out the size.  Simplifies a lot of code elsewhere.
      1efdc103
  9. 21 Feb, 2001 2 commits
    • Jonathan Blandford's avatar
      removed signals. Moved to inherit from GObject instead of GtkObject. · ef084e87
      Jonathan Blandford authored
      Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreestore.c: removed signals.  Moved to inherit from
      	GObject instead of GtkObject.
      
      	* gtk/gtkliststore.c: ditto.
      
      	* gtk/gtktreemodelsort.c: ditto.
      
      	* gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
      	GtkTreeModelIface, instead of in each model.
      ef084e87
    • Jonathan Blandford's avatar
      Changed name to be set_cell_data_func to make it clear what the functino · 334a40e8
      Jonathan Blandford authored
      Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
      	Changed name to be set_cell_data_func to make it clear what
      	the functino does.  Close bug #51069.
      
      Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/testgtk.c (main): Remove turning on of profiling malloc,
      	have memory actually freed.  Keeps box running longer.
      334a40e8
  10. 17 Feb, 2001 2 commits
    • Tim Janik's avatar
      default initialize the generated ENTER_NOTIFY event with 0, otherwise not · ca26902c
      Tim Janik authored
      Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
              generated ENTER_NOTIFY event with 0, otherwise not explicitely
              setup fields contain garbage (e.g. subwindow, breaking
              gdk_drawable_ref() upon event copy).
              (gtk_menu_stop_navigating_submenu_cb): same here.
      
              * gtk/gtklist.c (gtk_list_vertical_timeout):
              * gtk/gtklist.c (gtk_list_horizontal_timeout):
              * gtk/gtkclist.c (vertical_timeout):
              * gtk/gtkclist.c (horizontal_timeout): change direct assignment
              default-zero-intialization for unions to memset(,0,), as unions are
              not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
              has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
      
              * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
              g_closure_sink() warning.
      
              * gtk/gtktreemodel.c (gtk_tree_model_get_valist):
              * gtk/gtktreestore.c (gtk_tree_store_set_valist):
              * gtk/gtkliststore.c (gtk_list_store_set_valist):
              fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
      ca26902c
    • Jonathan Blandford's avatar
      removed gtk_*_store_get, and moved to GtkTreeModel. · b10825d5
      Jonathan Blandford authored
      Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
      	gtk_*_store_get, and moved to GtkTreeModel.
      
      	* gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
      
      	* gtk/Makefile.am: remove gtktreemodelmapping.[ch]
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
      	set the func.
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
      	freeze/thaw notify between setting all the properties for a cell.
      
      	* gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
      b10825d5
  11. 13 Feb, 2001 1 commit
    • Havoc Pennington's avatar
      fix bug where it always set the foreground, even if we were only using a · 2097d764
      Havoc Pennington authored
      2001-02-12  Havoc Pennington  <hp@pobox.com>
      
      	* gdk/gdkpango.c (gdk_pango_get_gc): fix bug where
      	it always set the foreground, even if we were only using
      	a stipple.
      	(gdk_draw_layout_line_with_colors): new function, allow
      	override colors
      	(gdk_draw_layout_with_colors): new function, allow override
      	colors
      	(gdk_pango_layout_line_get_clip_region): function to get the clip
      	region for a logical text range
      	(gdk_pango_layout_get_clip_region): get the clip region for a
      	logical text range
      
      	* gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
      	(gdk_colormap_new): fix call to gdk_colormap_sync() so it has
      	the right number of arguments.
      
      	* gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
      	enhance the function to check that node data corresponds to a
      	view still belonging to the tree.
      
      	* gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the
      	GtkTreePath
      	(gtk_tree_view_inserted): ditto
      	(gtk_tree_view_child_toggled): ditto
      
      	* gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
      	simplify this code.
      
      	* gtk/gtkcellrenderertext.c (get_layout): fix leak of
      	a PangoAttrList
      
      	* demos/gtk-demo/main.c (load_file): Fix leak of a GString
      
      	* gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
      
      	* gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
      	size in the size request
      	(gtk_menu_bar_size_allocate): consider toggle size here
      
      	* gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
      	that displays a widget in the toggle slot
      
      	* gtk/testgtk.c: test GtkImageMenuItem
      
      	* gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
      
      	* gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
      	request and allocation
      
      	* gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
      
      	* gtk/gtkcheckmenuitem.c
      	(gtk_check_menu_item_toggle_size_request): ditto
      2097d764
  12. 08 Feb, 2001 3 commits
    • Jonathan Blandford's avatar
      moved back to a sane value! · 589b4726
      Jonathan Blandford authored
      Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
      	a sane value!
      589b4726
    • Havoc Pennington's avatar
      let's darken colors, not lighten them. · a87d8405
      Havoc Pennington authored
      2001-02-08  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
      	lighten them.
      a87d8405
    • Havoc Pennington's avatar
      remove validation idle · 4a3c8a36
      Havoc Pennington authored
      2001-02-08  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
      	validation idle
      
      	* demos/gtk-demo/main.c (create_tree): adjust to changes in text
      	cell renderer
      
      	* demos/pixbuf-demo.c (timeout): remove deprecated
      	gtk_widget_draw
      
      	* demos/testpixbuf-save.c (main): remove deprecated
      	gtk_drawing_area_size
      
      	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
      	buttons even if the model isn't setup. gtk_tree_view_check_dirty()
      	at the start of the allocation.
      	(gtk_tree_view_check_dirty): handle column->button == NULL, handle
      	unsetup or NULL model.
      
      	* gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the
      	even/odd/sorted cells in the tree view.
      
      	* gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
      	bugfixes
      
      	* gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
      	backgrounds with draw_flat_box using different detail for even/odd
      	rows.
      
      	* gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
      	row, so we can draw the alternating colors thing
      
      	* gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
      	property from a synonym property, notify for the synonym.
      	Also, nuke the background_gdk_set and foreground_gdk_set synonyms
      	(gtk_text_tag_get_property): Always return the font, even if
      	all its fields aren't set
      
      	* gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
      	store the attr list; it leaves us with no way to change attributes
      	in _render according to the render flags, and no way to implement
      	get_property. Instead store all the specific text attributes.
      	Separate whether an attribute is enabled from its value. Sync all
      	properties with GtkTextTag, make them all consistent, etc.
      
      	* gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
      	renderers can highlight the sort row/column
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
      	accessor functions to get values; this has the side effect of
      	showing up which accessor functions were missing. Added those.
      
      	* gtk/gtktreeviewcolumn.h: Replace set_justification with
      	set_alignment, to be consistent with GtkLabel, GtkMisc
      
      	* gtk/gtktreeviewcolumn.c: Added code to display sort indicator
      	arrow.
      
      	* gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
      
      	* gtk/gtktreesortable.h: updates in here
      4a3c8a36
  13. 31 Jan, 2001 1 commit
    • Havoc Pennington's avatar
      fix bug in here where prev pointer was set to the wrong thing · 5cd29932
      Havoc Pennington authored
      2001-01-30  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
      	here where prev pointer was set to the wrong thing
      
      	* gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
      	(gtk_tree_path_is_descendant): new function
      
      	* gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
      	cached length
      	(gtk_list_store_get_iter): don't modify iter if we can't get the
      	path.
      
      	* gtk/gtkliststore.h (struct _GtkListStore): cache the length
      
      	* gtk/gtktreednd.h: add virtual function row_drop_possible() to
      	GtkTreeDragDest
      
      	* gtk/gtktreestore.c (copy_node_data): fix varargs type error that
      	was causing segfault
      
      	* gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
      	pointer to NULL
      
      	* gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
      
      	* gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
      	on returning FALSE
      	(gtk_list_store_iter_children): ditto
      	(gtk_list_store_iter_nth_child): ditto
      	(gtk_list_store_iter_nth_child): ditto
      	(gtk_list_store_iter_parent): ditto
      
      	* gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
      	on iter->user_data != NULL instead of silently accepting it.
      	(gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
      	we are returning TRUE.
      	(gtk_tree_store_iter_children): ditto
      	(gtk_tree_store_iter_nth_child): ditto
      	(gtk_tree_store_iter_parent): ditto
      	(gtk_tree_store_insert): remove handling of parent->user_data ==
      	NULL, replace with parent == NULL
      
      	* gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
      	and a comment explaining things
      
      	* gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
      	interface support to GtkTreeStore.
      
      	* gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
      	FALSE if no prev, fix
      
      	* gtk/gtktreeview.c (set_source_row): use a row reference
      	(set_dest_row): use a row reference
      5cd29932
  14. 27 Jan, 2001 1 commit
    • Havoc Pennington's avatar
      add GtkTreeRowReference which holds a handle to a specific row (particular · d8d019a1
      Havoc Pennington authored
      2001-01-26  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
      	which holds a handle to a specific row (particular set of values
      	in the model, i.e. pointer-identity row).
      
      	* gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
      	use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
      	Still need to use it for the src/dest row saved on the drag context.
      d8d019a1
  15. 26 Jan, 2001 1 commit
    • Havoc Pennington's avatar
      adapt to handle PangoColor · ef4356b5
      Havoc Pennington authored
      2001-01-26  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
      
      	* gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
      	not offset by TREE_VIEW_HEADER_HEIGHT
      	(gtk_tree_view_tree_to_widget_coords): fix to not offset by
      	TREE_VIEW_HEADER_HEIGHT
      
      	* configure.in (included_loaders): for me, --with-included-loaders
      	generates the error "the specified loader yes does not exist",
      	i.e. the arg defaults to "yes", so change test for value ""
      	to test for value "yes", and include all loaders in that case.
      
      	* gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
      
      	* gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
      	handle TREE_VIEW_VERTICAL_SEPARATOR
      	(gtk_tree_view_bin_expose): fix to consider the row offset as
      	pointing halfway into vertical separator.
      	(gtk_tree_view_draw_node_focus_rect): ditto
      
      	* gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
      	--gtk-debug=updates, which causes gdk_window_set_debug_updates
      	(TRUE) to be called.
      
      	* gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
      	debug mode where the invalid region is colored in on invalidate,
      	so you can see the flicker and know whether your redraw code is
      	doing a good job.
      
      	* gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in
      	tree window coordinates (clip rect is in tree window coords)
      
      	* gtk/Makefile.am: add gtktreednd.[hc]
      
      	* gtk/gtkliststore.c: implement gtktreednd interfaces.
      
      	* gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
      	drag-and-drop data operations on a model (so we can set up tree
      	drag-and-drop automatically)
      
      	* gtk/testgtk.c: Add a window to change sensitivity in the
      	GtkLabel test; add a way to change the entry frame in GtkEntry
      	test
      
      	* gtk/gtkentry.c (gtk_entry_set_has_frame):
      	(gtk_entry_get_has_frame): new functions to remove the frame
      	around an entry
      	(gtk_entry_size_request): shrink requisition if no frame
      	(gtk_entry_draw_focus): don't draw frame if no frame
      
      	* gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
      	checks inside a cell renderer
      	(gtk_default_draw_option): ditto for options
      
      	* gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
      	children from the alignment, not the button
      	(gtk_tree_view_column_init): ref/sink the column, to emulate
      	GObject refcounting.
      
      	* gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
      
      	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
      	Use theme functions to draw the toggles
      
      	* gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
      
      	* gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
      	GdkPangoAttrEmbossed to use in rendering insensitive text
      
      	* gdk/gdkpango.c (gdk_draw_layout_line): render new properties
      
      	* gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
      	using new GDK features
      ef4356b5
  16. 21 Jan, 2001 1 commit
    • Jonathan Blandford's avatar
      Make fail when not realized. (gtk_tree_view_scroll_to_cell): Make work · 5f25ae38
      Jonathan Blandford authored
      Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
      	when not realized.
      	(gtk_tree_view_scroll_to_cell): Make work when not realized.
      	(gtk_tree_view_realize): add scroll_to support
      	(gtk_tree_view_finalize): add a finalize method.  Populate.
      	(gtk_tree_view_insert_column): ref and sink the column.
      	(gtk_tree_view_append_column): ref and sink the column.
      	(gtk_tree_view_queue_draw_node): New function to handle redrawing
      	individual nodes.  Should make the code much more efficient, if
      	actually used.
      
      gtk_tree_view_queue_draw_node isn't actually used yet, but it should start
      making Owen less grumpy.
      5f25ae38
  17. 19 Jan, 2001 1 commit
    • Havoc Pennington's avatar
      sync to tree changes · e248e4e7
      Havoc Pennington authored
      2001-01-19  Havoc Pennington  <hp@redhat.com>
      
      	* demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
      
      	* gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
      	function
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
      	implement
      
      	* gtk/gtktreeview.c (gtk_tree_view_move_to): rename
      	scroll_to_cell, matches TextView scroll functions better
      	(gtk_tree_view_tree_to_widget_coords): new function
      	(gtk_tree_view_widget_to_tree_coords): new function
      	(gtk_tree_view_get_visible_rect): new function
      	(gtk_tree_view_get_path_at_pos): accept negative coordinates
      	(gtk_tree_view_draw_node_focus_rect): new function moved from
      	draw_focus, also, use width of bin_window as width of the focus
      	rect
      	(gtk_tree_view_expand_row): fix bug where it didn't recognize
      	already-expanded rows
      	(gtk_tree_view_get_cell_rect): new function
      	(gtk_tree_view_get_path_at_pos): return the click position
      	relative to the passed-in cell
      	(gtk_tree_view_set_expander_column): new function
      
      	* configure.in: remove gtk-config-2.0 chmod
      
      	* gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
      	and properly handle drags with targets we don't understand
      	(gtk_text_view_drag_end): don't stop scrolling, the source isn't
      	scrolling anyway
      	(gtk_text_view_drag_drop): stop scrolling here though, and set the
      	mark invisible
      
      	* gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
      	function
      	(gtk_drag_dest_get_target_list): new function
      	(gtk_drag_dest_set_target_list): new function
      
      	* gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
      
      	* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
      	related to drag-and-drop
      e248e4e7
  18. 09 Jan, 2001 3 commits
    • Havoc Pennington's avatar
      don't draw if label->layout is NULL due to a pending resize · 85267e92
      Havoc Pennington authored
      2001-01-09  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
      	is NULL due to a pending resize
      
      	* gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
      	column width to values less than 1
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
      	width to be between min/max width, and still set the width
      	even if autosize is turned on, so the tree view can use this
      	function in order to autosize.
      	(gtk_tree_view_column_init): set initial width to 1 not 0
      
      	* gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
      	setter function to modify column width, so we get notification
      	(gtk_tree_view_insert_iter_height): ditto
      	(gtk_tree_view_calc_size): ditto
      	(gtk_tree_view_check_dirty): ditto
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
      	properties to change all the interesting attributes of the tree
      	view column.
      	(gtk_tree_view_column_set_header_clickable): rename set_clickable
      	(gtk_tree_view_column_get_clickable): add
      	(gtk_tree_view_column_set_cell_renderer): don't unset the current
      	attributes; assume a cell renderer with equivalent object
      	properties has been swapped in. Do g_object_notify().
      	(gtk_tree_view_column_set_visible): g_object_notify
      	(gtk_tree_view_column_get_sizing): rename from get_col_type
      	(gtk_tree_view_column_set_sizing): g_object_notify
      	(gtk_tree_view_column_set_width): add g_object_notify
      	(gtk_tree_view_column_set_min_width): ditto
      	(gtk_tree_view_column_set_max_width): ditto
      	(gtk_tree_view_column_set_title): ditto
      	(gtk_tree_view_column_set_clickable): ditto
      	(gtk_tree_view_column_set_widget): ditto
      	(gtk_tree_view_column_set_justification): ditto
      85267e92
    • Havoc Pennington's avatar
      handle case where there are no rows in the model · 637c61da
      Havoc Pennington authored
      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
      637c61da
    • Owen Taylor's avatar
      Doc fixups. · a801ea7b
      Owen Taylor authored
      Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
      	gdk/gdk-pixbuf.h: Doc fixups.
      
      	* gtk/gtkobject.h: Remove trailing , from enum
      a801ea7b
  19. 08 Jan, 2001 2 commits
    • Jonathan Blandford's avatar
      Skip realizing buttons that have already been realized. · 136232bc
      Jonathan Blandford authored
      Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
      	realizing buttons that have already been realized.
      136232bc
    • Jonathan Blandford's avatar
      Show menu items before adding to option menu. · 15b23123
      Jonathan Blandford authored
      Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* tests/testtreeview.c (main): Show menu items before adding to
      	option menu.
      
      	* gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
      	around if we kill them.
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
      	Return if we pass in a NULL model.
      15b23123
  20. 06 Jan, 2001 1 commit
    • Havoc Pennington's avatar
      hack on this a bit · 5c379067
      Havoc Pennington authored
      
      2001-01-05  Havoc Pennington  <hp@redhat.com>
      
      	* tests/testtreeview.c: hack on this a bit
      
      	* gtk/gtktextlayout.c (gtk_text_layout_class_init):
      	s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
      
      	* gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS):
      	was spelled incorrectly
      	(GTK_IS_TREE_MODEL_SIMPLE): ditto
      
      	* gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
      	from gtk_tree_view_set_headers_active
      
      	* gtk/gtktexttag.c:
      	(gtk_text_tag_get_property): handle PROP_DIRECTION
      	(gtk_text_tag_set_property): g_object_notify when we toggle the _set
      	properties, bug 40235
      
      	* gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
      	forward_to_line_end
      5c379067
  21. 04 Jan, 2001 3 commits
    • Havoc Pennington's avatar
      add this · ae89b1e1
      Havoc Pennington authored
      2001-01-04  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
      	this
      
      	* gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
      	user_data instead of tree_node
      
      	* gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
      	TREE_VIEW_COLUMN_SIZE
      
      	* gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
      	"size" field to "width" finishes bug 40061
      
      	* gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
      	for bitfields, bug 40268
      ae89b1e1
    • Havoc Pennington's avatar
      Rename some stuff: · c020b3b4
      Havoc Pennington authored
      2001-01-04  Havoc Pennington  <hp@redhat.com>
      
              Rename some stuff:
      
      	s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
      
      	s/GtkModelSimple/GtkTreeModelSimple/g;
      	s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
      	s/gtk_model_simple/gtk_tree_model_simple/g;
      	s/gtkmodelsimple/gtktreemodelsimple/g;
      
      	s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
      
      	s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
      	s/column_set_col_type/column_set_sizing/g;
      
      	s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
      	s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
      
      	s/GtkCellRendererType/GtkCellRendererState/g;
      
      	* gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
      	(gtk_cell_renderer_toggle_class_init): change "state" property to
      	"active", to match GtkToggleButton
      	(gtk_cell_renderer_toggle_get_active): new function, bug
      	40269
      	(gtk_cell_renderer_toggle_set_active): new function
      	(gtk_cell_renderer_toggle_set_property): route changes to toggle
      	state through gtk_cell_renderer_set_active
      c020b3b4
    • Havoc Pennington's avatar
      Adapt to uscore-ification of gtktextiterprivate · c7826b5f
      Havoc Pennington authored
      2001-01-03  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
      
      	* gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use
      	of private functions; remove inclusion of private headers.
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this
      	function, so we don't need private functions in gtktextdisplay.c
      
      	* gtk/gtktextiterprivate.h: underscore-ification
      
      	* gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
      	to instead say "only useful to implement widgets"
      
      	* gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
      	GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
      	GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
      	This function was completely broken
      
      	* gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
      
      	* gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
      
      	* gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
      
      	* gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
      
      	* gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
      
      	* gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
      
      	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
      	gtk_paint_layout
      
      	* gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
      	gtk_paint_layout
      
      	* gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
      	Progress on bug 40103. Add draw_layout to draw a PangoLayout.
      	(struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
      	which were not implemented.
      
      	* gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
      	insert_pixbuf signal. Rename delete_text to delete_range since it
      	also deletes pixbufs and child anchors. This almost closes bug
      	40245 (still need to deal with child anchors)
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
      	insert_pixbuf, change signal names as appropriate, change types of
      	signals taking marks/tags to have the specific type, not just
      	G_TYPE_OBJECT
      
      	* gtk/gtkmain.c (gtk_get_current_event_state): Add this function;
      	closes bug 40051
      
      	* gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
      	unnecessary remove_contents() call
      	(gtk_option_menu_class_init): add a "changed" signal, closes
      	bug 40039
      	(gtk_option_menu_update_contents): emit "changed" if the
      	active menu item changes
      
      	* gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
      	cast to GtkObject, reported by Jonas Borgstrom
      	(gdk_pixbuf_loader_finalize): don't close the loader on finalize;
      	we can't do stuff with side effects in finalize. Instead, spew a
      	warning if the loader isn't closed.
      
      	* gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
      	colormap in here, non-X ports probably need to sync to this change
      
      	* gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove
      	assertion that colormap != NULL, you can set the colormap to NULL
      	if you like.
      
      	* Makefile.am: remove gtk-config-2.0
      
      	* configure.in: Use pkg-config to locate GLib. Remove
      	separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
      	and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
      	Use pkg-config to locate Pango. Output correct Pango libs to
      	gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
      
      	* Makefile.am (pkgconfig_DATA): install only target-specific pc
      	files
      	(install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
      	X11 pc files
      
      	* gtk+-2.0.pc.in (Requires): require the GDK for the current target
      	unref from here
      c7826b5f
  22. 01 Jan, 2001 1 commit
    • Havoc Pennington's avatar
      Adapt to GtkTreeSelection changes · 66f87948
      Havoc Pennington authored
      2001-01-01  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
      
      	* gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
      	don't fill in tree_view->priv->selection, kind of an unexpected
      	side effect
      
      	* gtk/gtkcellrenderertext.c: Remove definition of _ and include
      	gtkintl.h
      
      	* gtk/gtkcellrenderer.c: Remove definition of _ and include
      	gtkintl.h
      	(gtk_cell_renderer_get_property): remove calls to g_value_init
      
      	* gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
      	gtkintl.h
      
      	* gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
      	and include gtkintl.h
      	(gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
      	property names
      
      	* gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
      	GtkTreeSelection
      	(_gtk_tree_selection_new_from_with_view): rename, return
      	GtkTreeSelection
      	(_gtk_tree_selection_set_tree_view): rename with uscore
      	(gtk_tree_selection_get_selected): fill in the "model" out param
      	first, so it gets filled in even if we return at the top of the
      	function
      	(gtk_tree_selection_real_select_all): add a comment and an else{}
      	to clarify this a bit
      	(gtk_tree_selection_real_unselect_all): add the same else{}
      
      	* gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
      	set_tree_view to have underscore prefixes, move them to the
      	private header, fix return type of new_with_tree_view
      	(struct _GtkTreeSelection): mark struct
      	fields private
      
      	* gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
      	GtkTreeModelFlags, not a guint
      	(gtk_tree_path_prev): return gboolean not gint
      	(gtk_tree_path_up): return gboolean not gint
      
      	* gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
      	return GtkTreeModelFlags, not a guint
      
      	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
      	that child model is non-null before unrefing it
      	(g_value_int_compare_func): make this a qsort compare func, not
      	a boolean predicate
      
      	* gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
      	(add -umn to the end), and mark it unimplemented
      	(gtk_tree_model_sort_resort): remove, this wasn't implemented, and
      	I don't see what it's for - doesn't the model always sort itself?
      	(gtk_tree_model_sort_set_compare): this had the wrong signature
      
      	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
      	Fix the docs to say that it destructively replaces existing
      	attributes (previously said that it added attributes).
      	(gtk_tree_view_column_set_visible): canonicalize bool before
      	equality testing. Also, check for realization before
      	hiding/showing the tree_column->window; if this window could exist
      	before realization, then it's busted and needs fixing, we can't
      	create GDK resources pre-realization. Also, remove
      	superfluous queue_resize(), since set_size() does that for us.
      	(gtk_tree_view_column_set_col_type): check realization before
      	using tree_column->window
      
      	* gtk/gtktreedatalist.c: fix filename in copyright notice
      66f87948
  23. 21 Dec, 2000 1 commit
    • Jonathan Blandford's avatar
      :get_property): remove g_value_init calls, as they are no longer needed. · dadf966b
      Jonathan Blandford authored
      2000-12-20  Jonathan Blandford  <jrb@redhat.com>
      
      	    * gtk/gtkcellrenderer*.c (::get_property): remove
                    g_value_init
      	      calls, as they are no longer needed.
      
      	      * gtk/gtktreemodelsort.c: Fix up the comparison code.
      
      	      * gtk/gtktreemodel.h: Start work on ::reordered signal.
      	      Need to
      	      figure out how to emit a signal on an interface.
      dadf966b
  24. 17 Dec, 2000 1 commit
    • Havoc Pennington's avatar
      Port to GObject, can go back in gdk-pixbuf after setting up a · fde4fecf
      Havoc Pennington authored
      2000-12-16  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c:
      Port to GObject, can go back in gdk-pixbuf after setting up
      a gdk-pixbuf-marshal.h header over there.
      
      * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
      (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
      args
      (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
      set
      (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
      here, do it when we create the buttons later
      (gtk_tree_view_realize_buttons): add some g_return_if_fail
      (gtk_tree_view_map): paranoia checks that column->button is shown
      and unmapped
      (gtk_tree_view_size_request): only request visible children.
      Move header size calculation in here, for cleanliness, and
      to maintain invariants for child widgets if we eventually
      let users set different children inside the buttons
      (gtk_tree_view_map_buttons): factor out code to map buttons,
      since it was being called several times
      (gtk_tree_view_size_allocate_buttons): move_resize the drag
      windows instead of just moving them; their height may change
      if we allow random widgets in there, or the theme changes.
      (gtk_tree_view_size_allocate): move button size allocation
      above emitting the scroll signals, to ensure a sane state when we
      hit user code
      (gtk_tree_view_button_release): remove queue_resize after
      tree_view_set_size(), set_size() will handle any resize queuing
      that's needed
      (gtk_tree_view_focus_in): just queue a draw, don't fool with
      draw_focus goo
      (gtk_tree_view_focus): use gtk_get_current_event() and
      gdk_event_get_state()
      (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
      (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
      semicolon
      (gtk_tree_view_create_button): show the button here
      (gtk_tree_view_button_clicked): actually emit the clicked signal
      on the column
      (_gtk_tree_view_set_size): return right away if the size is
      unchanged, as a cheesy optimization
      (gtk_tree_view_setup_model): rename set_model_realized to
      setup_model to match the flag that indicates whether we've
      called it
      (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
      exist, because set_scroll_adjustment does that and it shouldn't
      matter what order you call these in
      (gtk_tree_view_get_vadjustment): ditto
      (gtk_tree_view_set_headers_visible): canonicalize the bool,
      for paranoia
      (gtk_tree_view_set_headers_visible): call
      gtk_tree_view_map_buttons() instead of using cut-and-paste code
      (gtk_tree_view_append_column): clarify whether the return value
      is the count of columns before or after, and do the increment
      separately from the return statement so you can tell from the code.
      (gtk_tree_view_remove_column): ditto
      (gtk_tree_view_insert_column): ditto
      (gtk_tree_view_get_column): remove g_return_if_fail for columns
      outside the existing range, the docs say that outside-range
      columns are allowed, so we handle them as documented. (Presumably
      this allows a nice loop with column != NULL as test.)
      (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments
      mean (left/right/center etc.).
      (gtk_tree_view_collapse_all): only queue a draw if we're mapped
      (gtk_tree_view_expand_row): add docs
      (gtk_tree_view_collapse_row): add docs
      
      * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
      function to emit the clicked signal on a column
      
      * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
      state of an event
      (gdk_event_get_time): don't treat GDK_SCROLL
      as a button event, remove default case from switch so gcc
      will whine if we don't explicitly handle all event types
      
      * gtk/gtktreeselection.h: added some FIXME
      
      * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
      "columns" to "n_columns" and "column" to "columns" for clarity
      fde4fecf
  25. 11 Dec, 2000 1 commit
    • Owen Taylor's avatar
      Add a function to determine if a window is the focus widget within its · 0cdc00ec
      Owen Taylor authored
      Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
      	to determine if a window is the focus widget within
      	its toplevel.
      
      	* gtk/gtkcontainer.[ch]: Fix the return type of ::focus
      	to be boolean.
      
      	* gtk/gtkcontainer.c (gtk_container_real_focus): Move handling
      	of the case where the container CAN_FOCUS to here instead
      	of having it in each individual move-the-focus place.
      
      	* gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
      	focusing to be geometric in a much more obvious sense. Arrowing
      	around is still non-intuitive because it isn't perfect and
      	because entries, etc, grab the arrow keys, but it at least
      	usually will do what you expect now.
      
      	* gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
      	file.
      
      	* gtk/gtknotebook.c: Change tabs to be a single item in
      	the focus chain. Make movement of focus on tabs with arrow
      	keys wrap around.
      
      	* gtk/gtknotebook.c (gtk_notebook_find_child): Add
      	CHECK_FIND_CHILD macro to give informative error messages
      	instead of silent returns.
      
      	* gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT
      	flag since we handle GdkReturn on the tabs.
      
      	* gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
      	windows rather than sending expose events directly.
      
      	* gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure
      	definition for GtkNotebookPage into .c file, since it is private.
      
      	* gtk/testgtk.c (create_notebook): Add option for
      	testing borderless notebook.
      
      	* gtk/testgtk.c (page_switch): Removed egregious poking
      	around in GTK+ internals.
      
      	* docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
      
      	* gtk/gtkclist.[ch]: Remove key press handler, handle focusing
      	properly through gtk_clist_focus. Make the title headers a
      	single item in the tab-focus chain, and make left-right wrap
      	around.
      
      	* gtk/gtkwindow.c (gtk_window_focus): Add a custom
      	focus method so that wrapping around works properly.
      
      	* gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() -
      	that is handled for the widget now.
      0cdc00ec
  26. 04 Dec, 2000 1 commit
    • Havoc Pennington's avatar
      Remove "draw" virtual method and signal · 5995baab
      Havoc Pennington authored
      2000-12-02  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
      method and signal
      
      * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
      calls gdk_window_process_updates() to push the exposes through
      (gtk_widget_class_init): No more draw signal, no
      gtk_widget_real_draw()
      
      * gtk/gtkbin.c (gtk_bin_draw): remove
      
      * gtk/gtkbox.c (gtk_box_draw): remove
      
      * gtk/gtkbutton.c (gtk_button_draw): remove
      
      * gtk/gtkcalendar.c (gtk_calendar_draw): remove
      
      * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
      
      * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
      
      * gtk/gtkclist.c (gtk_clist_draw): remove
      
      * gtk/gtkentry.c (gtk_entry_draw): remove
      
      * gtk/gtkeventbox.c (gtk_event_box_draw): remove
      
      * gtk/gtkfixed.c (gtk_fixed_draw): remove
      
      * gtk/gtkframe.c (gtk_frame_draw): remove
      
      * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
      
      * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
      
      * gtk/gtklayout.c (gtk_layout_draw): remove
      
      * gtk/gtklist.c (gtk_list_draw): remove
      
      * gtk/gtklistitem.c (gtk_list_item_draw): remove
      
      * gtk/gtkmenu.c (gtk_menu_draw): remove
      
      * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
      
      * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
      
      * gtk/gtknotebook.c (gtk_notebook_draw): remove
      
      * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
      
      * gtk/gtkpacker.c (gtk_packer_draw): remove
      
      * gtk/gtkrange.c (gtk_range_draw): remove
      
      * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
      
      * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
      
      * gtk/gtktable.c (gtk_table_draw): remove
      
      * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
      
      * gtk/gtktext.c (gtk_text_draw): remove
      
      * gtk/gtktextview.c (gtk_text_view_draw): remove
      
      * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
      
      * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
      
      * gtk/gtktree.c (gtk_tree_draw): remove
      
      * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
      
      * gtk/gtktreeview.c (gtk_tree_view_draw): remove
      
      * gtk/gtkviewport.c (gtk_viewport_draw): remove
      
      * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
      
      * gtk/gtkvscale.c (gtk_vscale_draw): remove
      
      * gtk/gtkwindow.c (gtk_window_draw): remove
      5995baab
  27. 22 Nov, 2000 1 commit
    • 2's avatar
      It's amazing what reversing the order in an if statement will do. Doing so · c76c5f48
      2 authored
      2000-11-22    <jrb@redhat.com>
      
      	* gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
      	reversing the order in an if statement will do.  Doing so managed
      	to make the treemodelsort half work.  Other half will follow after
      	I get the insert function fully fixed.
      c76c5f48