1. 14 May, 2003 1 commit
  2. 04 Oct, 2002 1 commit
    • Manish Singh's avatar
      Deprecation cleanup · 2ffa58f1
      Manish Singh authored
      Fri Oct  4 16:48:27 2002  Manish Singh  <yosh@gimp.org>
      
              * gtkaspectframe.[ch] gtkbin.[ch] gtkframe.[ch] gtkhruler.[ch]
              gtkruler.[ch] gtkvruler.[ch]: Deprecation cleanup
      2ffa58f1
  3. 10 Aug, 2002 1 commit
    • Soren Sandmann's avatar
      Minor documentation fixes · 77eee887
      Soren Sandmann authored
      2002-08-10  Soren Sandmann  <sandmann@daimi.au.dk>
      
      	* docs/reference/gtk/tree_widget.sgml,
      	docs/reference/gtk/tmpl/gtkdialog.sgml,
      	docs/reference/gtk/tmpl/gtkentry.sgml,
      	docs/reference/gtk/tmpl/gtkfilesel.sgml,
      	docs/reference/gtk/tmpl/gtkfontsel.sgml,
      	docs/reference/gtk/tmpl/gtkfontseldlg.sgml,
      	docs/reference/gtk/tmpl/gtktreemodel.sgml,
      	docs/reference/gtk/tmpl/gtkwidget.sgml, gdk/x11/gdkdisplay-x11.c,
      	gtk/gtkbbox.c, gtk/gtkbox.c, gtk/gtkbutton.c, gtk/gtkcellrenderer.c,
      	gtk/gtkcellrendererpixbuf.c, gtk/gtkcellrenderertext.c,
      	gtk/gtkcheckmenuitem.c, gtk/gtkcontainer.c, gtk/gtkcurve.c,
      	gtk/gtkdialog.h, gtk/gtkentry.c, gtk/gtkfilesel.c, gtk/gtkfontsel.c,
      	gtk/gtkframe.c, gtk/gtkhandlebox.c, gtk/gtkiconfactory.c,
      	gtk/gtkimage.c, gtk/gtkinvisible.c, gtk/gtkitemfactory.c,
      	gtk/gtklabel.c, gtk/gtklayout.c, gtk/gtkmenu.c, gtk/gtkprogress.c,
      	gtk/gtkprogressbar.c, gtk/gtkscrolledwindow.c, gtk/gtksizegroup.c,
      	gtk/gtktable.c, gtk/gtktextiter.c, gtk/gtktexttag.c,
      	gtk/gtktexttag.h, gtk/gtktextview.c, gtk/gtktogglebutton.c,
      	gtk/gtktoolbar.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c,
      	gtk/gtktreestore.c, gtk/gtktreeview.c, gtk/gtktreeviewcolumn.c,
      	gtk/gtkviewport.c, gtk/gtkwidget.c, gtk/gtkwidget.h,
      	gtk/gtkwindow.c:
      
      	Minor documentation fixes
      
      	(#89254, patch from Brett Nash;
      	 #85809, patch from daten@dnetc.org;
      	 #76391, patch from Ross Burton;
      	 #74559, Manuel Clos;
      	 #73569, #72005, Alexey A. Malyshev;
      	 #70061, patch from Dennis Bj"orklund;
      	 #64566, #63388, #58328, #57499, #81007, #77349, Vitaly Tishkov;
      	 #78932, Vitaly Tishkov, patch from Ross Burton;
      	 #73306)
      77eee887
  4. 28 Jan, 2002 1 commit
  5. 19 Nov, 2001 1 commit
    • Owen Taylor's avatar
      label_xalign and label_yalign need to be float properties to correspond to · 99157628
      Owen Taylor authored
      Mon Nov 19 12:28:02 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkframe.c (gtk_frame_class_init): label_xalign
      	and label_yalign need to be float properties to
      	correspond to GTK+-1.2, to gtk_frame_set_label_align,
      	and to the types of the xalign and yalign properties of GtkMisc.
      	(#63484, Vitaly Tishkov)
      
      Mon Nov 19 12:24:30 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtksocket.h (struct _GtkSocketClass): Fix return
      	of plug_added vfunc. (#64408, Jeff Franks)
      99157628
  6. 04 Nov, 2001 1 commit
    • Owen Taylor's avatar
      Add a function gdk_window_invalidate_maybe_recurse() for use in "shallow · 21457ced
      Owen Taylor authored
      Sun Nov  4 16:02:08 2001  Owen Taylor  <otaylor@redhat.com>
      
              * gdk/gdkwindow.[ch]: Add a function gdk_window_invalidate_maybe_recurse()
              for use in "shallow invalidation" of a widget. (Windows belonging
              to the widget, but not to the widget's children)
      
              * gtk/gtkprivate.h gtk/gtkwidget.c gtk/gtksizegroup.c: Add private
              flags GTK_ALLOC_NEEDED, GTK_REQUEST_NEEDED.  These flags are set
              up on ancestors up to the resize container on queue_resize. Size
              requests only actually take place if GTK_REQUEST_NEEDED, size
              allocations only take place if GTK_ALLOC_NEEDED or the size
              changed.
      
              * gtk/gtkcontainer.c gtk/gtkwidget.c: Remove
              container->resize_widgets and the RESIZE_NEEDED flag since the
              above flags are sufficient to figure out what needs to be
              resized/reallocated. Remove code manipulating
              container->resize_widget.
      
              * gtk/gtkwidget.[ch]: Add gtk_widget_set_redraw_on_alloc(); this
              allows widgets to turn off being automatically invalidated is when
              they are resized.
      
              * gtk/gtkwidget.[ch] (gtk_widget_size_allocate): Invalidation when
              a widget is resized or moved is "shallow" as described above -
              only the windows that need to be invalidated are invalidated.
      
              * gtk/gtkbox.c gtk/gtktable.c gtk/gtkalignment.c docs/Changes-2.0.txt:
              Make these widget's init functions call
              gtk_widget_set_redraw_on_allocate(widget,FALSE).
      
              * gtk/gtkwindow.c (gtk_window_configure_event): Call
              _gtk_container_queue_resize(), since we don't want
              redrawing. (Probably could be done for other
              calls to gtk_widget_queue_resize() in gtkwindow.c,
              but this is the most important one.)
      
              * gtk/gtkwindow.c (gtk_window_move_resize): Don't call
              gtk_widget_queue_draw() - size_allocate() handles
              that as appropriate.
      
              * gtk/gtkframe.c (gtk_frame_size_allocate): Invalidate instead
              of queue_clear() to avoid invalidating children.
      21457ced
  7. 10 Sep, 2001 1 commit
    • Tim Janik's avatar
      slight fix for g_object_set() not usable for nesting anymore. · 91aa2d92
      Tim Janik authored
      Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
      
              * tests/testgtk.c (create_idle_test): slight fix for
              g_object_set() not usable for nesting anymore.
      
              * gtk/gtkhandlebox.c (gtk_handle_box_class_init):
              * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
              properties, supply ::shadow_type properties instead as most
              other widgets do.
      91aa2d92
  8. 19 Jul, 2001 1 commit
    • Owen Taylor's avatar
      Enforce the widget/child realization/mapping invariants. · aa49527f
      Owen Taylor authored
      Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
      	the widget/child realization/mapping invariants.
      
      	* gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions
      	gtk_widget_[get/set]_child_visible() to control
      	whether visible children of a mapped window are
      	mapped.
      
      	* docs/widget_system.txt: Updated for changes in
      	container contract, and addition of GTK_CHILD_VISIBLE.
      
      	* gtk/gtkcontainer.c: Add generic map()/unmap()
      	functions that work for almost all containers.
      
      	* gtk/gtknotebook.c gtk/gtkpacker.c: Use
      	gtk_widget_set_child_visible() where necessary.
      
      	* gtk/*.c: Remove excess map(), unmap(), and
      	realization/mapping invariant enforcing code
      	from many containers.
      aa49527f
  9. 18 Jul, 2001 1 commit
    • Owen Taylor's avatar
      Patch from Matthias Clasen to remove remove all instances of · 4e2b60ac
      Owen Taylor authored
      Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/*.c: Patch from Matthias Clasen to remove remove
      	all instances of g_return_if_fail (foo != NULL); that are
      	immediately before a g_return_if_fail (GTK_IS_FOO (foo));
      	since the second check catches the NULL anyways.
      4e2b60ac
  10. 24 Jun, 2001 1 commit
    • Owen Taylor's avatar
      Fix stupid error introduced last night that was making things decidedly · cc223eef
      Owen Taylor authored
      Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
      	introduced last night that was making things decidedly not work.
      
      	* gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
      	so that we have getter/setter pairing everywhere it makes
      	sense. (#55767)
      
      	* gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
      	Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
      	deprecated compat macro. (#55516)
      
      	* gtk/gtklabel.[ch]: Add functions
      	gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
      	gtk_label_set_label(), which mirror the property API for GtkLabel.
      	Make gtk_label_get_attributes() only reflect the attributes
      	set by gtk_label_set_attributes.
      
      	* gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
      	from gtk_notebook_set_page().
      cc223eef
  11. 23 Mar, 2001 1 commit
    • Havoc Pennington's avatar
      Apply property patch from Lee Mallabone · dc0cd67d
      Havoc Pennington authored
      2001-03-23  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
      
      	* gtk/gtkbox.c: Apply property patch from Lee Mallabone
      
      	* gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
      	and deprecated gtk_check_menu_item_set_show_toggle().
      
      	* gtk/gtkbutton.c: Apply property patch from Lee Mallabone
      
      	* gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
      
      	* gtk/gtkframe.c: Apply property patch from Lee Mallabone
      dc0cd67d
  12. 09 Mar, 2001 1 commit
    • Alexander Larsson's avatar
      Document expose event->region change and that gtk_widget_event doesn't · e7d4a7f9
      Alexander Larsson authored
      2001-03-09  Alexander Larsson  <alexl@redhat.com>
      
      	* docs/Changes-2.0.txt:
      	Document expose event->region change and that gtk_widget_event
      	doesn't allow passing expose events.
      
      	* gdk/gdkevents.h:
      	Add region to expose event.
      
      	* gdk/gdkevents.c:
      	Handle event->region in gdk_event_copy() and gdk_event_free().
      
      	* gdk/gdkwindow.c (gdk_window_process_updates_internal):
      	Generate expose_event->region when creating expose events.
      
      	* gdk/x11/gdkevents-x11.c:
      	Generate expose events with regions when translating X events.
      
      	* gtk/gtkcontainer.[ch]:
      	Default expose handler that propagates expose events to NO_WINDOW
      	children. New function gtk_container_propagate_expose()
      
      	* gtk/gtkwidget.[ch]:
      	Moved gtk_widget_event implementation to gtk_widget_event_internal.
      	gtk_widget_event calls gtk_widget_event_internal but doesn't allow
      	expose events. New function gtk_widget_send_expose() to send expose
      	events. New function gtk_widget_region_intersect() to calculate
      	window/region intersections.
      
      	* gtk/gtkmain.c (gtk_main_do_event):
      	Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
      	Use gtk_widget_send_expose() to send expose events.
      
      	* gtk/gtkbin.c:
      	* gtk/gtkbox.c:
      	* gtk/gtkfixed.c:
      	* gtk/gtkimagemenuitem.c:
      	* gtk/gtklist.c:
      	* gtk/gtkpacker.c:
      	* gtk/gtktable.c:
      	* gtk/gtktree.c:
      	Remove expose handler, using the default container implementation
      	instead.
      
      	* gtk/gtkbutton.c:
      	* gtk/gtkcheckbutton.c:
      	* gtk/gtkeventbox.c:
      	* gtk/gtkfixed.c:
      	* gtk/gtkhandlebox.c:
      	* gtk/gtklayout.c:
      	* gtk/gtklistitem.c:
      	* gtk/gtkmenu.c:
      	* gtk/gtkmenubar.c:
      	* gtk/gtkmenuitem.c:
      	* gtk/gtknotebook.c:
      	* gtk/gtkoptionmenu.c:
      	* gtk/gtkpaned.c:
      	* gtk/gtkscrolledwindow.c:
      	* gtk/gtktogglebutton.c:
      	* gtk/gtktoolbar.c:
      	* gtk/gtktreeitem.c:
      	* gtk/gtkviewport.c:
      	Chain expose handler to parent class handler. Use
      	gtk_container_propagate_expose() to propagate exposes.
      
      	* gtk/gtkclist.c (check_exposures):
      	* gtk/gtktext.c (process_exposes):
      	Use gtk_widget_send_expose instead of gtk_widget_event.
      e7d4a7f9
  13. 02 Feb, 2001 1 commit
    • Owen Taylor's avatar
      Get rid of a bunch of g_strdup_printf("%s%s") in favor of g_strconcat(). · a1a252ce
      Owen Taylor authored
      Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
      	a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
      
      	* gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
      	since some people set $(libdir) separately. (#1290, David Kaelbling)
      
      Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
      	defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
      	MAXPATHLEN, but the code here depends on a fixed value.)
      	(#4524)
      
      Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
      	where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
      
      Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkctree.c (real_tree_move): If the node being moved isn't
      	viewable there is no way that moving the node will cause the
      	focus row to become not viewable, so omit check on the visibility
      	of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
      
      Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
      	selection before inserting new text.
      
      Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
      	Make the sensitivity of the reparented child track that of
      	the original parent menu item. (#34218, David Hodson)
      
      	* gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
      	the case where the current item is destroyed properly.
      
      	* gtk/gtkoptionmenu.c: Some additional code cleanups and fix
      	some edge cases with child-less menuitems.
      
      Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
      	key pop down window. (#12074, Jon K Hellan)
      
      Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
      	toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan)
      	The solution here isn't perfect - you get an extraneous
      	emission of "toggle", which could conceivably confuse an app,
      	but better than the current situation. LXR search seems to
      	indicate that no apps in GNOME CVS connect to "toggle".
      
      Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
              gtk_public_h_sources to directly here to avoid warning when
              building srcdir != builddir. (#9656)
      
      Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkrange.c: Patch from Kipp Hickman to make the event
      	handlers in gtkrange.c return the proper values (TRUE == handled)
      	(#10316).
      
      	This is just the tip of the iceberg, but gtkrange.c is the
      	most common place where the propagation is problematical,
      	and also a place where it is almost certainly safe to change
      	this in the stable branch.
      
      	(You don't want right click popups on a range control or anything...)
      
      Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktext.c (clear_focus_area): We need to clear the focus
      	area on focus out, even if a background pixmap isn't set.
      	(#13941)
      
      Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
      	to deal with setting the shape properly when scrolling arrows are
      	turned on, but not visible because there is sufficient space.
      	(#13432)
      
      Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
      	items with submenus, destroy the item along with the submenu.
      	(#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...'
      	properly.
      
      	* gtk/testgtk.c (menu_items): Add a dummy branch that we delete
      	later.
      
      Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
      	the focus widget sometimes wasn't drawn with the default if there
      	was no default widget.
      
      	* gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
      	unreference pixmaps.
      
      	* gtk/gtkstyle.c (gtk_style_realize): Reference colormap
      	for some extra safety.
      
      Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
      	the text of a cell to the old pointer value better, by
      	copying the new text before freeing the old text. Some code
      	cleanup. (#8079, Karl Nelson)
      
      Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
      	gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
      
      Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkmenu.c (gtk_menu_remove): When removing an
      	item from a menu, check to see if it matches
      	menu->old_active_menu_item, and if so, unref and clear
      	old_active_menu_item (Patch from Pavel Cisler)
      
      	* gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset
      	menu_shell->active_menu_item, if it is the child being
      	removed. (Patch based on that of Gene Ragan, #50337)
      a1a252ce
  14. 20 Dec, 2000 1 commit
    • Owen Taylor's avatar
      Check for FreeType using freetype-config, since we can't rely on Xft to · c7755bc9
      Owen Taylor authored
      Tue Dec 19 23:47:27 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* configure.in gdk/x11/Makefile.am: Check for FreeType
      	using freetype-config, since we can't rely on Xft
      	to pull in the libraries for us, or rely on it being
      	in the default include path first.
      
      	* gtk/gtkframe.c: Fix some problems where the gap wasn't
      	being drawn in the right place, especially for right-aligned
      	frame labels.
      
      Thu Dec 14 21:02:59 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkfontsel.c (gtk_font_selection_select_font): Update
      	the font_name entry as needed.
      c7755bc9
  15. 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
  16. 26 Jul, 2000 1 commit
  17. 03 Jul, 2000 1 commit
    • Owen Taylor's avatar
      Use g_get_charset() instead of g_get_codeset(). · 50b1a5a9
      Owen Taylor authored
      Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
      	Use g_get_charset() instead of g_get_codeset().
      
      	* gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h:
      	Comment out some strdup'ing functions to keep timj
      	happy until we finish fighting this out.
      50b1a5a9
  18. 26 Jun, 2000 1 commit
    • Owen Taylor's avatar
      Put 1.3.1 in warning message, not 1.3.0. · c5c75ece
      Owen Taylor authored
      Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
      
              * configure.in: Put 1.3.1 in warning message, not 1.3.0.
      
              (Fixes problem with drawing childless frames. Pointed out
      	by and a first patch from Anders)
      
      	* gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
      	compute a child_allocation, even if we don't have a child.
      
      	* gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
      	Always chain to the parent's impl, even if we don't have a child.
      c5c75ece
  19. 20 Jun, 2000 1 commit
    • Havoc Pennington's avatar
      Make this compile without framebuffer enabled · df4fc367
      Havoc Pennington authored
      2000-06-20  Havoc Pennington  <hp@redhat.com>
      
      * modules/linux-fb/Makefile.am: Make this compile
      without framebuffer enabled
      
      * gdk/linux-fb/Makefile.am: Add conditional to not build
      framebuffer unless specified in configure
      
      * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
      the size of the target instead of source if -1 was passed for
      width/height
      
      * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
      width/height confusion.
      
      2000-06-19  Havoc Pennington  <hp@redhat.com>
      
      * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
      GDK_DRAWABLE_XID. In the future, we probably want to make it
      faster with G_DISABLE_CHECKS turned on.
      
      2000-06-14  Havoc Pennington  <hp@redhat.com>
      
              * gdk/Makefile.am: add gdkpixmap.c
      
      	* gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
      	s/gdk_image_init/_gdk_windowing_image_init
      
      	* gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
      	ref/unref
      
      	* gdk/gdkcolor.h: make GdkColormap a GObject subclass
      
      	* gdk/gdkcompat.h: remove GdkWindowType compat, since
      	GdkWindowType is now non-deprecated;
      	change gdk_window_get_type() compat to be
      	gdk_window_get_window_type().
      
      	* gdk/gdkdnd.h: make GdkDragContext a GObject.
      
      	* gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
      	virtual GObject. Make all functions call into the vtable.
      	Move gdk_image_put() guts in here. Remove GdkDrawableType
      	and gdk_drawable_get_type(), these are now GdkWindow-specific.
      	draw_image, get_depth, get_size, set_colormap, get_colormap,
      	get_visual added to the vtable.
      
      	* gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual
      	GObject. Virtualize everything.
      	(gdk_gc_new_with_values): remove check for destroyed window,
      	because now GdkWindow::create_gc will check this.
      	(gdk_gc_set_values): New function to set GC values, this
      	was already implemented but wasn't in the header
      
      	* gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
      
      	* gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
      	_gdk_window_draw_image(), remove _gdk_windowing_window_class,
      	remove _gdk_window_class; add _gdk_window_impl_get_type() and
      	_gdk_pixmap_impl_get_type(). Rename gdk_window_init to
      	_gdk_windowing_window_init, rename gdk_image_init to
      	_gdk_windowing_image_init.
      
      	* gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
      	(gdk_draw_layout): Remove check for destroyed window,
      	because all the drawable methods already check it.
      
      	* gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
      	Add gdkpixmap.c which contains implementation of GdkDrawable
      	virtual table (by chaining to a platform-specific implementation
      	object).
      
      	* gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP,
      	GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
      	GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
      	GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
      	GdkColormapPrivate.
      
      	* gdk/gdktypes.h: #include <glib-object.h>
      
      	* gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
      	Move most functionality to platform-specific implementation
      	object. GdkWindow itself now handles the backing store, then
      	chains to the platform-specific implementation.
      	(gdk_window_get_window_type): return GdkWindowType of the window.
      	(gdk_window_peek_children): New routine, returns the children of
      	a GdkWindow
      	(gdk_window_get_children): Was in X11-specific code and did
      	XQueryTree. Changed to simply return a copy of window->children;
      	so it can go in cross-platform code.
      
      	* gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
      
      	* gdk/x11/gdkcolor-x11.c: implement X-specific parts of
      	GdkColormap; just changed to use the new private data instead
      	of casting to GdkColormapPrivate.
      
      	* gdk/x11/gdkcursor-x11.c: added a couple typechecks to
      	gdk_cursor_new().
      
      	* gdk/x11/gdkdnd-x11.c: Change the way we access private fields
      	(private data member in the GObject).
      	(xdnd_manager_source_filter): Function had broken
      	error handling, fix it (use gdk_error_trap_push).
      
      	* gdk/x11/gdkdrawable-x11.c: This file now implements
      	a base class for GdkWindowImplX11/GdkPixmapImplX11. This
      	base class is purely for the convenience of the X port,
      	and not part of the interface to cross-platform GDK.
      
      	* gdk/x11/gdkevents-x11.c: Reflect various renamings.
      
      	* gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
      	specific to X, and returned by the create_gc virtual method
      	of GdkDrawableImplX11.
      	(gdk_x11_gc_set_dashes): Change this to take an array of gint8
      	rather than gchar, this was also changed in the GdkGC vtable.
      	(gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
      	mask is 0, return immediately, instead of checking every flag.
      	This is faster, and keeps us from segfaulting if values is NULL
      	and the mask contains some nonzero flags.
      
      	* gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
      	GdkWindow.
      
      	* gdk/x11/gdkglobals-x11.c: change type of grab window, since
      	GdkWindowPrivate is gone.
      
      	* gdk/x11/gdkim-x11.c: rename things that got renamed.
      
      	* gdk/x11/gdkimage-x11.c: implement in terms of GObject, and
      	remove the image_put stuff that got transferred to GdkDrawable.
      
      	* gdk/x11/gdkinput.c: renamings
      
      	* gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
      
      	* gdk/x11/gdkpixmap-x11.c: GObject conversion
      
      	* gdk/x11/gdkprivate-x11.h: indentation fixes
      
      	* gdk/x11/gdkproperty-x11.c: renamings
      
      	* gdk/x11/gdkselection-x11.c: renamings
      
      	* gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now
      	implements the platform-specific "impl" object.
      	Moved gdk_window_get_children to gdk/gdkwindow.c
      
      	* gdk/x11/gdkx.h: Remove all the private structs and private datas
      	that no longer exist. Add declaration of GdkGCX11 object here.
      	Fix all the macros to still work.
      
      	* gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
      	GdkDragContext from the boxed types since they are now GObjects.
      
      	* gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
      	moved xthickness/ythickness into the instance. GtkStyleClass
      	functions are now in the standard vtable for GtkStyle, so you have
      	to create a GObject subclass to write a theme engine.
      	(gtk_style_copy): fixed a leaked PangoFontDescription
      	(gtk_style_init): renamed gtk_style_realize, so gtk_style_init
      	can be the standard GObject function.
      
      	* Throughout GTK:
      	s/style->klass->[xy]thickness/style->[xy]thickness
      	s/pango_layout_unref/g_object_unref/
      
      	* gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
      
      	* gtk/gtksocket.c: Use gdk_window_get_user_data() instead of
      	accessing GDK internals.
      
      	* gtk/gtkwidget.c: Use gdk_window_peek_children() instead of
      	accessing GDK internals.
      df4fc367
  20. 02 Jun, 2000 1 commit
    • Havoc Pennington's avatar
      Remove all references to offscreen flag which was no longer used. · 9ae724bf
      Havoc Pennington authored
      Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c: Remove all references to
      	offscreen flag which was no longer used.
      
      	* gtk/gtkprivate.h (enum): Remove unused flags and compress.
      
      	* gtk/gtkframe.c (gtk_frame_set_label_widget): Check
      	for non-null label_widget->parent.
      
      	* gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
      	which no longer was used.
      
      	* gdk/gdkpango.c (gdk_pango_context_get_info): make static.
      
      	* gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
      	for null arguments.
      
      	* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
      	check for destroyed windows.
      
      Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimmulticontext.c: Add a finalize method and unref
      	the slave context there.
      
      	* gtk/gtkinvisible.[ch]: Make reference counting behavior
      	identical to GtkWindow.
      
      Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* Makefile.am gdk/gdkpango.c: Copy the layout render function from
      	pangox to here, so we can write them independent of rendering
      	system, using GDK primitives.
      
      	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
      	gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
      	since we have a rendering-system independent implementation in
      	terms of draw_glyphs().
      
      	* gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
      	function to render a single line.
      
      	* gdk/x11/gdkpango.c: Move the guts of this file mostly
      	into ../gdkpango.c, which simplifies things, since we
      	don't have to deal with raw X gc's.
      
      Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
      	get the logical attributes for a given GtkTextLine.
      
      Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
      	g_locale_get_codeset() to g_get_codeset() change.
      
      Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testcalendar.c (calendar_font_selection_ok): Use font
      	descriptions.
      
      	* gtk/gtkentry.c (gtk_entry_draw_text): Center text within
      	the entry.
      
      	* gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
      	redoing (vastly simplifying) for Pango. Still needs quite
      	a bit of work. (Size selection is currently poor. List of
      	predefined sizes is not a good idea, since all of these
      	sizes won't necessarily be distinct.)
      
      Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
      	CODESET results for LANG=C.
      
      Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
      	which takes a stringized pango font description;
      	ignore the older 'font' and 'fontset' declarations.
      
      	* gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
      	field with a GdkFont derived via gdk_font_from_description(),
      	for compatibility. (Should we just remove it entirely?
      	Probably too much compatibility breakage, but people
      	should be migrating to the new Pango stuff as quickly
      	as possible.)
      
      Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
      
      Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkcalender.c: Roughly pango-ized. Really needs
      	redoing; there are some bugs in size allocation right
      	now, the semi-existant distinction between header / day
      	fonts was removed, but, with Pango, could actually
      	be made functional in a nice way.
      
      	* gtk/testcalender: Move calender from examples into this
      	directory as a test program. (We really need to restrcture
      	testgtk into a whole directory full of tests for every
      	widget or functionality group, separated into multiple .c
      	files.)
      
      Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testgtk.c (file_exists): Fix stupid typo that
      	was keeping RC file from being loaded.
      
      	* gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
      	RC file font code.
      
      Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
      	Add function to load a GdkFont from a PangoFontDescription.
      
      Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
      	to have any widget for the label, use a GtkLabel widget
      	to display the text. (Based partially on a patch from
      	Anders Carlson.)
      
      	(Quite a bit of code reorganization - strip 90% of the
      	guts out of gtkaspectframe and add a single virtual
      	func to GtkFrameClass - compute_child_allocation.)
      
      Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
      	(Removed clist->row_center_offset field because caching
      	it wasn't saving time or code, added private function
      	_gtk_clist_create_cell_layout()).
      
      Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkaccellabel.c: Pangoized.
      
      	* gtk/[hv]ruler.c: Pangoized
      
      Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkfilesel.c (gtk_file_selection_init):
      	Use gtk_clist_set_column_auto_resize() to remove need
      	need for manual column width computations.
      
      Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel,
      	ensuring Pango correctness, and considerably simplifying the
      	code.
      
      	* gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
      
      	* gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
      	getting of numbers of lines.
      
      	* gtk/gtklabel.c (gtk_label_size_request): Set the requisition
      	to the actual requested width of the lable, not to the wrap
      	width we set.
      
      	* gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
      
      	* gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
      	  gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
      
      	* gtk/gtktextview.c: Fix structure inheritance.
      
      	* gtk/gtkprogressbar.c: Pangoize.
      
      Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
      	in a function.
      
      	* gtk/gtktextlayout.c (find_display_line_above): Fixed
      	bug with computing line tops.
      
      	* gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
      
      Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
      	and y_offset coordinates to do what we need now. (The offset between
      	buffer and layout coordinates has been reintroduced, but is a
      	bit different than before.)
      
      	* gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
      	handle the adjustments ourselves, and scroll as necessary using
      	the new gdk_window_scroll().
      
      	The advantage of this is that when we are incrementally revalidating,
      	we are essentially rearranging things around the visible portion
      	of the screen. With the old setup, the visible portion of the
      	screen was moved around in the layout, so scrolling and redrawing
      	to track that caused jumping of the display. Since we now
      	control the scrolling ourselves, we can suppress this and
      	only redraw when things actually change.
      
      Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
      	the region not just redisplay it after-all, since we store the
      	cursors in the LineDisplay. (Ugly interactions here between
      	GtkLayout and GtkTextBTree here.)
      
      	* gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
      
      Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
      	Added function to scroll contents of a window while keeping the
      	window constant. Works by XCopyArea or guffaw-scrolling depending
      	on the details of how the window is set up. (guffaw-scrolling
      	still needs to be filled in.)
      
      Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
      	move the debugging that was tied to a global variable
      	to that.
      
      	* gtk/gtkmarshal.list: Add NONE:INT,INT,INT
      
      	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
      	validated flag, in line data instead of setting height/width to
      	-1. This allows us to perform operations with partially invalid
      	buffer (using the old size for invalid lines) and thus to do
      	incremental vaidation. Keep height/width aggregates up to date
      	when deleting text and rebalancing the tree.
      
      	* gtk/gtktextbtree.[ch]: Add functions validate a line
      	(gtk_text_btree_validate_line), and to validate up
      	to a number of pixels (gtk_text_btree_validate).
      
      	* gtk/gtktextlayout.[ch]: Add an ::invalidated signal
      	that indicates that something is changed and a revalidation
      	pass is needed. Change ::need_repaint to ::changed, and
      	make it take old and new yranges instead of a rectangle.
      
      	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
      	the line_data_destroy() function from
      	gtk_text_btree_add_view() to a virtual function in
      	GtkTextLayout
      
      	* gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
      	since we are handling partial repaints in a different fashion
      	now.
      
      	* gtk/gtktextbtree.[ch]: Only repaint the changed portion
      	of the selection instead of queueing a repaint on the
      	entire widget.
      
      	* gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
      	get_selection_bounds() down to btree, make the function
      	in buffer a wrapper around the btree function.
      
      	* gtk/gtktextlayout.[ch]: Add functions to check if the
      	layout is valid and to recompute either a range of pixels
      	aroudn a line or a certain total number of pixels.
      
      	* gtk/gtktextlayout.[ch]: Cache a single line display;
      	now that we only redraw the needed portions, the hit rate
      	for this cache is quite high.
      
      	* gtk/gtktextview.[ch]: Keep track of the first paragraph
      	on the screen so that when re-laying-out the buffer, we can
      	keep the same place. This requires connecting to ::value_changed
      	on the adjustments
      
      	* gtk/gtktextview.[ch]: Add idle functions to revalidate
      	the buffer after we receive an ::invalidated signal.
      
      Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
      	to max of allocation and layout size, not just to the
      	layout size.
      
      	* gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size):
      	Invalidate window so it gets redrawn properly.
      
      	* gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
      	to mean the entire window.
      
      	* gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
      	into public header.
      
      Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
      	to get the name of a mark.
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
      	to find the paragraph from a y position.
      
      Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
      	nodes have width/height >= 0, not > 0.
      
      Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
      	Add a size_only flag, so when we only need the size, we don't create
      	useless appearance attributes.
      
      	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
      	duplicate setting of font description.
      
      	* gtk/gtkscale.c: Use PANGO_SCALE instead of 1000
      
      Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
      	EXTRA_DIST. It does not work well when the file that
      	everything depends on is not in the tarball.
      
      Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testgtk.c: Some hacks and fixes so that it basically
      	works when not sitting in the GTK+ build tree.
      
      2000-05-03  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
      	Properly determine the ordering of the tag root and the current
      	line within the tree. Previous algorithm only worked if the tag
      	root's immediate parent was the common root of both the current
      	line and the tag root.
      
      Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (set_para_values): Fix some bugs in
      	alignment.
      
      	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
      	the widget text directional dynamically.
      
      	* gtk/gtktextview.[ch]: Added functions to get and set default
      	wrap mode.
      
      Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
      	in cursor location computation.
      
      Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
      	vadjusment values properly when layout gets smaller.
      
      	* gtk/gtktextview.c (need_repaint_handler): Areas being
      	passed in are far completely inaccurate, and sometimes
      	too small, so, for now, just queue a redraw on the
      	whole visible region.
      
      2000-04-25  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c (summary_destroy): new function to
      	destroy tag summary nodes
      	(gtk_text_line_next_could_contain_tag): this function was
      	totally broken if the line passed in wasn't below the tag
      	root. Fix it.
      	(gtk_text_btree_first_could_contain_tag): In the tag == NULL
      	"wildcard" case, we have to do a linear scan. Blah.
      	(gtk_text_btree_last_could_contain_tag): In tag == NULL case,
      	we have to do the linear scan
      	(tag_removed_cb): When a tag is removed from the tag table,
      	remove the GtkTextTagInfo node from the btree.
      	(gtk_text_btree_spew): Implement the spew function, for
      	our debugging pleasure.
      
      Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
      	a problem with referring to the wrong buffer.
      
      	* gtk/gtkentry.c: Fix focus-in/focus-out confusion.
      
      	* gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
      	font description to gtk_style_new() - otherwise things
      	don't work without a .gtkrc file.
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
      	tags table if we create it ourself, too.
      
      	* gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
      	it was conflicting with XKB modifiers.
      
      	* gtk/gtktextview.[ch]: Add simple support for
      	GtkIMContext.
      
      Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
      	with deletion from last commit.
      
      Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
      	in the context from the current locale.
      
      	* gtk/gtkentry.c (gtk_entry_size_request): Use language from the
      	context, not hardcoded value.
      
      	* gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
      	not logical.
      
      Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
      	attributes - that doesn't handle partial-glyph selection
      	properly. Instead use new pango_layout_line_get_x_ranges()
      	functionality to draw the selection.
      
      	* gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
      	now properly handles out-of-range coordinates.
      
      	* gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
      
      	* gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
      	public.
      
      	* gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
      	for paragraphs opposite to the base direction of the widget.
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
      
      	* gtk/gtktextlayout.c: Don't split segments on marks, since that
      	causes Arabic words to reshape as you cursor through.
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
      	cursor position when moving vertically with the arrow keys and
      	scrolling with page-up/page-down. (Arrow keys save only the X,
      	scrolling saves both X and Y.)
      
      	This means you can line-up / line-down or page-up / page-down
      	without losing your place, and also that moving vertically
      	with the cursor keys keeps the same X position, not the same
      	character count:
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
      	arrow keys move by display lines, not paragraphs.
      
      Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklayout.c: Make sure that the bin window is at least
      	as big as the allocation. (Should we also make sure that the
      	bin window is big enough to completely cover widget->window?)
      
      	* gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
      	function to get the onscreen rectangle.
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
      	for offsets in window coordinates.
      
      Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
      	confusion.
      
      	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
      	from the widget direction.
      
      	* gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg):
      	Add a "direction" attribute.
      
      	* gtk/gtktextview.c: global s/tkxt/text_view/.
      
      	* gtk/testtext.c: Added long block of text in Arabic, to test out
      	the direction attributes. (Some problems with the shaping system
      	for arabic become obvious - like the fact the cursor splits words
      	into unjoined pieces.)
      
      Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
      
      	* gtk/gtktextlayout.c: Fix up alignment.
      
      	* gtk/testtext.c: Add some tests for centering, wrapping.
      
      Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
      	Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
      	If we wrote GTK+-specific layout-render function this could just replace
      	the draw_layout() operation in the vtable.
      
      	* gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to
      	pango_layout_get_cursor_pos() and use that function.
      
      	* gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
      	is a non-static symbol.
      
      	* gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
      	with gtk_text_btree_find_line_by_y()
      
      	* gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
      	renderer that handles GtkTextAppearance attributes.
      
      	* gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h:
      
      	  - Move the values in the style that don't affect geometry into a
      	    GtkTextAppearance structure.
      	  - Change underline to take a PangoUnderline and "font" a string
      	    representation of a font description
      	  - Add a "font_desc" attribute which takes a FontDescription structure.
      
      	* gtk/gtktextlayout.[ch]:
      
      	  - Get rid of the display-line list per each line. Instead, we
      	    generate, on demand, a GtkTextLineDisplay structure which]
      	    contains a PangoLayout * and other necesary information
      	    (offsets, cursor locations) for displaying a paragraph.
      	  - Get rid of the code to wrap lines, create display chunks,
      	    etc. Instead, we just go through a paragraph and convert
      	    it into the necessary inputs to a PangoLayout.
      	  - Implement a new attribute type, GtkTextAttrAppearance. This
      	    holds a GtkTextAppearance, and is used to pass colors,
      	    stipple, etc, through from the layout to the display without
      	    having to use lots and lots of individual attributes.
      	  - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
      	    in terms of PangoLayout functions.
      
      	* gtk/gtktextview.c:
      
      	  - Handle passing the necessary PangoContext to the layout
      	  - Some fixups in painting to deal with the automatic backing store
      	    and offsetting of GTK+-1.4
      	  - Add a style_set handler so that the default style reacts
      	    properly to theme changes.
      
      	* gtk/gtktext?*.[ch]: Random code-style fixes.
      
      	* gtk/testtext.c: Substitute in languages that Pango handles now for Thai
      
      Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
      	in original form preparatory to Pango-ization and gdkimcontext-ization.
      
      Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
      	so that we can derive from gtkimcontext in language bindings properly.
      
      Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
      	Add a compose table including (almost) all the compose combinations
      	from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
      	data in the XIM implementation.
      
      	* gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
      	Moved functions to convert keyvalues from and to unicode here from
      	the win32 port and made them public.
      
      Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
      
      Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontext.[ch]: Base class for new input context system
      
      	* gtk/gtkimmulticontext.[ch]: Proxy input context that allows
      	the real input context implementation to be loaded from modules
      	and switched on the fly.
      
      	* gtk/gtkcontextsimple.[ch]: Simple implementation of an input
      	context that just does direct keysymbol => unicode translation.
      
      	* gtk/gtkentry.[ch]: Start switching editing over to using
      	GtkInputContext. (No handling of preedit yet.)
      
      Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
      	many substitutions. (klass should not be subsituted.)
      
      Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* configure.in: Add checks for Pango
      
      	* configure.in docs/Makefile.am: Add test for sgml2html
      	and allow 'make dist' without building html, but print out
      	warnings in that case. (For making snapshots)
      
      	* gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
      	Add Pango libraries and C flags
      
      	* gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
      	Add function (gdk_draw_layout) to draw a pango layout.
      
      	* gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
      	for getting Pango contexts for GDK.
      
      	* gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
      
      	* gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
      	editing.
      
      	* gtk/gtkentry.c: Hack in simple Hebrew input with direct
      	keysym => unicode translations. More languages can be added
      	here, but real input-method support is needed.
      
      	* docs/Changes-1.4.txt: Added note about entry behavior.
      
      	* gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
      	to set the reading direction for a widget and the global direction.
      	Add test which allows toggling the global direction. Two private
      	flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
      
      	* gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
      	  gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c
      
      	* gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
      
      	* gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
      	underlining now handled by Pango.
      
      	* gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
      	to RCStyle and Style. (Having both this and the old font name and GdkFont
      	is temporary.)
      
      	* gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added
      	convenience functions for creating contexts and layouts for widgets.
      
      	* gtk/testgtk.c: Enhance label tests with multilingual labels.
      9ae724bf
  21. 12 May, 2000 1 commit
    • Tim Janik's avatar
      documented necessary changes for 1.4 transition. · 9595c551
      Tim Janik authored
      Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
      
      	* docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
      
      	* gtk/gtktext.c: made the adjustments no-construct args, simply
      	provide default adjustments.
      	(gtk_text_destroy): release adjustments.
      
      	* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
      	adjustment argument non-construct.
      
      	* gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
      	instead of in finalize.
      	(gtk_progress_get_text_from_value):
      	(gtk_progress_get_current_text):
      	(gtk_progress_set_value):
      	(gtk_progress_get_percentage_from_value):
      	(gtk_progress_get_current_percentage):
      	(gtk_progress_set_percentage):
      	(gtk_progress_configure): ensure an adjustment is present.
      
      Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtkcolorsel.[hc]:
      	* gtk/gtkcolorseldialog.[hc]:
      	* gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
      	their parent implementation, use bit fields for boolean values, don't
      	create unused widgets, usage of glib types, braces go on their own
      	lines, function argument alignment, #include directives etc. etc. etc..
      
      	* gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
      
      Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
      
      	* gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
      	of NULL.
      
      	* gtk/gtkcombo.c (gtk_combo_item_destroy): don#t keep references
      	to freed data.
      	(gtk_combo_destroy): don't keep a pointer to a destroyed window.
      
      	* gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
      	to NULL when the toplevel is getting destroyed.
      	(gtk_menu_set_tearoff_state): same here for the tearoff_window.
      	(gtk_menu_destroy):
      	(gtk_menu_init): store the information of whether we have to
      	readd the initial child ref_count during destruction in a new
      	GtkMenu field needs_destruction_ref_count.
      
      	* gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
      	here, those reading: learn from my mistake! ;)
      	in order for set_?adjustment to support a default adjustemnt if
      	invoked with an adjustment pointer of NULL, the code read (pseudo):
      	if (v->adjustment) unref (v->adjustment);
      	if (!adjustment) adjustment = adjustment_new ();
      	if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
      	now imagine the first unref to actually free the old adjustment and
      	adjustment_new() creating a new adjustment from the very same memory
      	portion. here, the latter comparision will unintendedly fail, and
      	all hell breaks loose.
      	(gtk_viewport_set_hadjustment):
      	(gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
      	after unreferencing it.
      
      	* gtk/gtkcontainer.[hc]: removed toplevel registration
      	functions: gtk_container_register_toplevel(),
      	gtk_container_unregister_toplevel() and
      	gtk_container_get_toplevels() which had wrong semantics
      	anyways: it didn't reference and copy the list.
      
      	* gtk/gtkwindow.c: we take over the container toplevel registration
      	bussiness now. windows are registered across multiple destructions,
      	untill they are finalized. the initial implicit reference count
      	users are holding on windows is removed with the first destruction
      	though.
      	(gtk_window_init): ref & sink and set has_user_ref_count, got
      	rid of gtk_container_register_toplevel() call. add window to
      	toplevel_list.
      	(gtk_window_destroy): unref the window if has_user_ref_count
      	is still set, got rid of call to
      	gtk_container_unregister_toplevel().
      	(gtk_window_finalize): remove window from toplevel list.
      	(gtk_window_list_toplevels): new function to return a newly
      	created list with referenced toplevels.
      	(gtk_window_read_rcfiles): use gtk_window_list_toplevels().
      
      	* gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
      	adjustment a non-construct arg.
      	* gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
      	* gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
      	* gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
      
      	* gtk/gtkrange.c: added some realized checks.
      	(gtk_range_destroy): get rid of the h/v adjustments in the
      	destroy handler instead of finalize. remove timer.
      	(gtk_range_get_adjustment): demand create adjustment.
      
      	* gtk/gtkviewport.c: made h/v adjustment non-construct args.
      	we simply create them on demand now and get rid of them in
      	the destroy handler.
      	(gtk_viewport_destroy): get rid of the h/v adjustments in the
      	destroy handler instead of finalize.
      	(gtk_viewport_get_hadjustment):
      	(gtk_viewport_get_vadjustment):
      	(gtk_viewport_size_allocate): demand create h/v adjustment
      	if required.
      
      	* gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
      	gtk_widget_real_destroy () functionality.
      	(gtk_widget_real_destroy): reinitialize with a new style, instead
      	of setting widget->style to NULL.
      
      Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtkcalendar.c:
      	* gtk/gtkbutton.c: ported _get_type() implementation over to
      	GType, either to preserve memchunks allocation facilities,
      	or because Gtk+ 1.0 GtkTypeInfo was still being used.
      
      	* gtk/gtkobject.[hc]: derive from GObject. ported various functions
      	over. prepare for ::destroy to be emitted multiple times.
      	removed reference tracer magic. chain into GObjectClass.shutdown()
      	to emit ::destroy signal.
      
      	* gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
      	fundamental.
      
      	* gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
      	cludge.
      
      	* gtk/gtksocket.c:
      	* gtk/gtkplug.c:
      	* gtk/gtklayout.c:
      	* gtk/gtklabel.c:
      	* gtk/gtkargcollector.c:
      	* gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
      	not being a fundamental anymore, and to work with the new
      	type system (nuked fundamental type varargs clutter).
      
      	* gtk/*.c: install finalize handlers in the GObjectClass
      	part of the class structure.
      	changed direct GTK_OBJECT()->klass accesses to
      	GTK_*_GET_CLASS().
      	changed direct object_class->type accesses to GTK_CLASS_TYPE().
      
      	* gtktypeutils.[hc]: use the reserved fundamental ids provided by
      	GType. made most of the GTK_*() type macros and Gtk* typedefs
      	simple wrappers around macros and types provided by GType.
      	most notably, a significant portion of the old API vanished:
      	GTK_TYPE_MAKE(),
      	GTK_TYPE_SEQNO(),
      	GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
      	GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
      	GTK_TYPE_ARGS,
      	GTK_TYPE_CALLBACK,
      	GTK_TYPE_C_CALLBACK,
      	GTK_TYPE_FOREIGN,
      	GtkTypeQuery,
      	gtk_type_query(),
      	gtk_type_set_varargs_type(),
      	gtk_type_get_varargs_type(),
      	gtk_type_check_object_cast(),
      	gtk_type_check_class_cast(),
      	gtk_type_describe_tree(),
      	gtk_type_describe_heritage(),
      	gtk_type_free(),
      	gtk_type_children_types(),
      	gtk_type_set_chunk_alloc(),
      	gtk_type_register_enum(),
      	gtk_type_register_flags(),
      	gtk_type_parent_class().
      	replacements, where available are described in ../docs/Changes-1.4.txt.
      	implemented compatibility functions for the remaining API.
      
      	* configure.in: depend on glib 1.3.1, use gobject module.
      9595c551
  22. 24 Feb, 1999 1 commit
  23. 10 Feb, 1999 1 commit
    • Owen Taylor's avatar
      Fixed some bugs with set_default_size. · d1bda8d5
      Owen Taylor authored
      Sun Feb  7 19:49:21 1999  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwindow.c (gtk_window_move_resize): Fixed some
      	  bugs with set_default_size.
      
      Sat Feb  6 13:23:51 1999  Owen Taylor  <otaylor@redhat.com>
      
      	* docs/Changes-1.2.txt: Added information about
      	 the change to gtk_widget_size_request().
      
      	* gtk/gtkentry.c: Call gtk_widget_get_child_requisition
      	 explicitely since we differentiate between the usize
      	 set by the user and what we got. (Ugh)
      
      	* gtk/gtkwidget.[ch] (gtk_widget_get_child_requisition):
      	 New function to return the effective size of a widget
      	 as it looks to its parent.
      
      	* gtk/gtkwidget.c (gtk_widget_size_request): Leave
      	 widget->requisition set to exactly what the widget
      	 asked for, and then make a copy of that into
      	 the requisition argument. Allow a NULL requisition
      	 argument, and, if G_ENABLE_DEBUG, warn if
      	 requisition == &widget->requisition.
      
      	* gtkalignment.c gtkaspectframe.c gtkbutton.c gtkclist.c
      	  gtkcontainer.c gtkentry.c gtkeventbox.c gtkfixed.c
      	  gtkframe.c gtkhandlebox.c gtkhbox.c gtkhpaned.c
      	  gtklayout.c gtklist.c gtklistitem.c gtkmenu.c
      	  gtkmenubar.c gtkmenuitem.c gtknotebook.c
      	  gtkoptionmenu.c gtkpacker.c gtkscrolledwindow.c
      	  gtktable.c gtktoolbar.c gtktree.c gtktreeitem.c
      	  gtkvbox.c gtkviewport.c gtkvpaned.c gtkwindow.c
      
      	 Avoid calling gtk_widget_size_request with
      	 requisition == widget->requisition; use
      	 gtk_widget_get_child_requisition to get the
      	 size of children.
      d1bda8d5
  24. 14 Jan, 1999 1 commit
    • Owen Taylor's avatar
      gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkhandlebox.c gtk/gtkframe.c · 467e0fcb
      Owen Taylor authored
      Wed Jan 13 22:34:29 1999  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkhandlebox.c
      	gtk/gtkframe.c gtk/gtk[hv]box.c gtk[hv]paned.c gtk/gtklist.c
      	gtkmenu.c gtkmenuitem.c gtkmenubar.c gtknotebook.c
      	gtk/gtkscrolledwindow.c gtk/gtktable.c gtk/gtktree.c
      	gtk/gtktreeeitem.c gtk/gtkviewport.c
      
      	Fix up comparisons of signed and unsigned ints to avoid
      	assigning negative widths/heigths.
      467e0fcb
  25. 30 Nov, 1998 1 commit
    • Elliot Lee's avatar
      I submitted this patch twice to gtk-devel-list, and received no comments, · 060978e0
      Elliot Lee authored
      
      
      I submitted this patch twice to gtk-devel-list, and received no comments, so
      am committing it.  Although not exhaustively tested, I have been using this
      gtk+ for a week w/o problems, and I did read the code to ensure that nothing
      ever writes to these data structures. If by chance people encounter SEGV's in
      gtk+ code that is setting values in global data structures, this patch could
      be a possible culprit.
      
      1998-11-30  Elliot Lee  <sopwith@cuc.ml.org>
      
      	* {gdk,gtk}/*.c: Make read-only data structures "static const" to
      	allow them to be shared, mainly including (but not limited to) the
      	GtkTypeInfo structures for each class.
      
      	* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
      060978e0
  26. 23 Nov, 1998 1 commit
    • Tim Janik's avatar
      added args ::show_text, ::text_xalign, ::text_yalign, ::activity_mode. · 98e22a43
      Tim Janik authored
      Sun Nov 22 16:21:28 1998  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
       	::text_yalign, ::activity_mode.
      
      	* gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
       	::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
       	::activity_blocks.
      	(gtk_progress_bar_new):
      	(gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
      	(gtk_progress_bar_construct): deprecated.
      
      	* gtk/gtkvscrollbar.c:
      	(gtk_vscrollbar_draw_step_back):
      	(gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
       	gtk_paint_arrow, to be consistent with hscrollbar.
      
      	* gtk/gtktext.c
      	added construct args ::hadjustment, ::vadjustment.
      	added args ::line_wrap, ::word_wrap.
      	(gtk_text_class_init): added scroll_adjustments signal.
      	(gtk_text_new): use gtk_widget_new.
      	(gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
      	so we don't screw the reference counts and don't leave signals connected.
       	(gtk_text_destroy): disconnect adjustments signals.
       	(gtk_text_finalize): unref adjustments.
      
      	* gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
      	added args ::indent, ::spacing, ::show_stub, ::reorderable,
       	::use_drag_icons, ::line_style and ::expander_style.
      	(gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
      	deprecated now.
      
      	* gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
      	* gtk/gtkclist.c:
       	removed ::vadjustment and ::hadjustment args, introduced
       	::scroll_adjustments signal.
      	added ::shadow_type, ::selection_mode and ::row_height args.
      	added n_columns construct arg.
      	(gtk_clist_construct): call gtk_object_constructed().
       	(gtk_clist_set_row_height): if height is passed as 0,
      	revert to automatic height calculation.
      	(gtk_clist_destroy): before unrefing the adjustments, disconnect our
      	signal handlers.
      
      Fri Nov 21 22:34:58 1998  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
      	like gtk_object_new.
      	(gtk_widget_destroy): assert that we only destroy constructed widgets.
      
      	* gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
      	to identify args that may only be used for construction.
      	GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
      	time.
      	* gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
      	at the end if the object is not fully constructed.
      	(gtk_object_newv): likewise.
      	(gtk_object_destroy): assert that we only destroy constructed objects.
       	(gtk_object_init): setup GTK_CONSTRUCTED from the
      	objects real klass.
      	(gtk_object_default_construct): new function to complete default
      	construction of an object by applying missing construtor args with
      	default values of 0, 0.0 or NULL.
      	(gtk_object_constructed): new function to mark an object as being
      	constructed (used from within constructors).
      
      	* gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
      	so it is immediatedly available for the caller.
      
      	* gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
      	the object initilizer (GtkObjectInitFunc takes a second arg now, the
       	real klass), and asure that object initializers may temporarily alter
      	the class pointer.
      
      Fri Nov 20 08:00:30 1998  Tim Janik  <timj@gtk.org>
      
      	* gtk/testgtk.c: change all occourances of gtk_container_add (
      	scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
      	for widget!=(clist, ctree, text, viewport).
      
      	* gtk/gtkcombo.c:
       	(gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
      	to add children to the scrolled window.
      
      	* gtk/gtkscrolledwindow.h:
      	* gtk/gtkscrolledwindow.c:
      	changed scrolled_window->viewport to scrolled_window->child, and use
      	gtk_widget_scroll_adjustements() to set the scroll adjustments for the
      	widget, we do not create an additional viewport anymore.
      	added ::hadjustment and ::vadjustment constructor args.
       	(gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
      	(gtk_scrolled_window_set_hadjustment):
      	(gtk_scrolled_window_set_vadjustment): new functions that superceed
      	gtk_scrolled_window_construct.
      	(gtk_scrolled_window_construct): deprecated this function.
      
      	* gtk/gtkhscrollbar.c:
      	* gtk/gtkvscrollbar.c:
      	* gtk/gtkhscale.c:
      	* gtk/gtkvscale.c:
      	support a constructor arg "::adjustment", and use gtk_widget_new() for
      	the widget creation.
      
      	* gtk/gtkrange.c: added ::update_policy arg.
       	(gtk_range_set_adjustment): if adjustment is passed in as NULL, create
       	a default adjustment so this function can be used for derived widgets
       	that depend on the adjustment's existance.
      	(gtk_range_destroy): disconnect the adjustment signal, so we don't
      	get called after we got destroyed, we don't destroy the adjustment
      	in here, because it might have been provided from another widget.
      
      	* gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
      	(gtk_viewport_destroy): same as gtk_range_destroy.
      
      	* gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
      
      	* gtk/gtkwidget.h:
      	* gtk/gtkwidget.c: changed gtk_widget_activate() to return a
      	gboolean, indicating whether this widget supports activation.
      	added gtk_widget_scroll_adjustements() to set the scrolling
      	adjustments of a widget.
      
      Wed Nov 19 01:22:42 1998  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtkoptionmenu.c:
       	(gtk_option_menu_remove_contents):
      	(gtk_option_menu_update_contents): removed
       	gtk_container_[un]block_resize() pairs.
      
      	* gtk/gtknotebook.h:
      	* gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
      	be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
      	wrtie-only argument.
      
      	* *.c: made deprecated functions issue a message:
      	gtk_clist_set_border, gtk_container_block_resize,
       	gtk_container_unblock_resize, gtk_container_need_resize,
       	gtk_object_class_add_user_signal, gtk_spin_button_construct,
      	gtk_scrolled_window_construct.
      	removed non-functional functions:
      	gtk_container_disable_resize, gtk_container_enable_resize,
      	gtk_clist_set_policy.
      
      Wed Nov 18 22:54:36 1998  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtkbox.c (gtk_box_init):
      	* gtk/gtkdrawingarea.c (gtk_drawing_area_init):
      	* gtk/gtkeventbox.c (gtk_event_box_init):
      	* gtk/gtkfixed.c (gtk_fixed_init):
      	* gtk/gtkframe.c (gtk_frame_init):
      	* gtk/gtkhandlebox.c (gtk_handle_box_init):
      	* gtk/gtkpacker.c (gtk_packer_init):
      	* gtk/gtkmisc.c (gtk_misc_init):
      	* gtk/gtkpreview.c (gtk_preview_init):
      	* gtk/gtkprogress.c (gtk_progress_init):
      	* gtk/gtkprogressbar.c (gtk_progress_bar_init):
      	* gtk/gtkseparator.c (gtk_separator_init):
      	* gtk/gtktable.c (gtk_table_init):
      	* gtk/gtkviewport.c (gtk_viewport_init):
      	* gtk/gtkalignment.c (gtk_alignment_init):
      	removed setting of the GTK_BASIC flag.
      
      	* gtk/gtkwidget.h:
      	* gtk/gtkwidget.c:
      	removed GTK_BASIC, GTK_WIDGET_BASIC and	gtk_widget_basic.
      
      	* miscellaneous GtkType and macro fixups.
      98e22a43
  27. 06 Nov, 1998 1 commit
  28. 03 Oct, 1998 1 commit
    • Tim Janik's avatar
      for unknown foreign fundamental types, collect an argument of the type · c62ab96b
      Tim Janik authored
      Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
              fundamental types, collect an argument of the type returned from
              gtk_type_get_varargs_type(). removed the first macro argument which
              was just the same as the fundamental type of the *arg passed to
              the macro.
              * gtk/gtkarg.c (gtk_args_collect):
              * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
      
              * gtk/gtktypeutils.h:
              * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
              gtk_type_get_varargs_type() to set and query the varargs collect
              type used for a fundamental type, registered outside of Gtk.
      
              * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
              GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
              GTK_TYPE_FLOAT.
      
              * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
              GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
              to GTK_TYPE_FLOAT.
      c62ab96b
  29. 04 Jul, 1998 1 commit
  30. 28 Jun, 1998 1 commit
    • Tim Janik's avatar
      call the base class init fucntions from all parent types upon class · e63d08e4
      Tim Janik authored
      Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
      	fucntions from all parent types upon class initialization.
      
      	* gtk/gtkcontainer.c:
       	(gtk_container_get_type): announce gtk_container_base_class_init to
       	the type system.
      	(gtk_container_base_class_init): new function to feature base class
      	initialization.
      	(gtk_container_get_child_arg):
      	(gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
      	and set_child_arg methods of the class indicated through the argument
      	name.
      
      	* gtk/gtkobject.c:
      	(gtk_object_base_class_init): new function to feature base class
       	initialization.
      	(gtk_object_init_type): announce gtk_object_base_class_init to the type
      	system.
      	(gtk_object_class_init): setup the get_arg and set_arg pointers for
      	GtkObjectClass.
      	(gtk_object_setv):
       	(gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
       	instead of bothering the type system with this.
      
      	* gtk/gtkaccellabel.c:
      	* gtk/gtkbutton.c:
      	* gtk/gtkradiobutton.c:
      	* gtk/gtktable.c:
      	* gtk/gtktogglebutton.c:
      	* gtk/gtktipsquery.c:
      	* gtk/gtkbox.c:
      	* gtk/gtkpacker.c:
      	* gtk/gtkwidget.c:
      	* gtk/gtkwindow.c:
      	* gtk/gtkframe.c:
      	* gtk/gtkmisc.c:
      	* gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
      	corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
      	functions wrt GtkTypeInfo initialization. changed a lot of the set/get
      	arg functions to take a GtkObject argument.
      
      	gtk/gtkadjustment.c:
      	gtk/gtkalignment.c:
      	gtk/gtkarrow.c:
      	gtk/gtkaspectframe.c:
      	gtk/gtkbbox.c:
      	gtk/gtkbin.c:
      	gtk/gtkcheckbutton.c:
      	gtk/gtkcheckmenuitem.c:
      	gtk/gtkclist.c:
      	gtk/gtkcolorsel.c:
      	gtk/gtkcombo.c:
      	gtk/gtkctree.c:
      	gtk/gtkcurve.c:
      	gtk/gtkdata.c:
      	gtk/gtkdialog.c:
      	gtk/gtkdrawingarea.c:
      	gtk/gtkeditable.c:
      	gtk/gtkentry.c:
      	gtk/gtkeventbox.c:
      	gtk/gtkfilesel.c:
      	gtk/gtkfixed.c:
      	gtk/gtkfontsel.c:
      	gtk/gtkgamma.c:
      	gtk/gtkhandlebox.c:
      	gtk/gtkhbbox.c:
      	gtk/gtkhbox.c:
      	gtk/gtkhpaned.c:
      	gtk/gtkhruler.c:
      	gtk/gtkhscale.c:
      	gtk/gtkhscrollbar.c:
      	gtk/gtkhseparator.c:
      	gtk/gtkimage.c:
      	gtk/gtkinputdialog.c:
      	gtk/gtkitem.c:
      	gtk/gtkitemfactory.c:
      	gtk/gtklist.c:
      	gtk/gtklistitem.c:
      	gtk/gtkmenu.c:
      	gtk/gtkmenubar.c:
      	gtk/gtkmenuitem.c:
      	gtk/gtkmenushell.c:
      	gtk/gtknotebook.c:
      	gtk/gtkoptionmenu.c:
      	gtk/gtkpaned.c:
      	gtk/gtkpixmap.c:
      	gtk/gtkpreview.c:
      	gtk/gtkprogressbar.c:
      	gtk/gtkradiomenuitem.c:
      	gtk/gtkrange.c:
      	gtk/gtkruler.c:
      	gtk/gtkscale.c:
      	gtk/gtkscrollbar.c:
      	gtk/gtkscrolledwindow.c:
      	gtk/gtkseparator.c:
      	gtk/gtkspinbutton.c:
      	gtk/gtkstatusbar.c:
      	gtk/gtktext.c:
      	gtk/gtktoolbar.c:
      	gtk/gtktooltips.c:
      	gtk/gtktree.c:
      	gtk/gtktreeitem.c:
      	gtk/gtkvbbox.c:
      	gtk/gtkvbox.c:
      	gtk/gtkviewport.c:
      	gtk/gtkvpaned.c:
      	gtk/gtkvruler.c:
      	gtk/gtkvscale.c:
      	gtk/gtkvscrollbar.c:
      	gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
      	match the modified GtkTypeInfo structure.
      e63d08e4
  31. 24 Jun, 1998 1 commit
    • Tim Janik's avatar
      added a frame with radio buttons to select the resize_mode for the · dbce6083
      Tim Janik authored
      Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
              to select the resize_mode for the idle-labels container.
      
              * gtk/gtkframe.h:
              * gtk/gtkframe.c: GtkType and macro corrections.
      
              * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
              support radio grouping.
      
      Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
              unconditionally if resize_mode has changed.
      
              * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
              GTK_RESIZE_QUEUE on the scrolled window.
              (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
      
      Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.h:
              * gtk/gtkcontainer.c:
              (GTK_IS_RESIZE_CONTAINER): new macro to find out if
              a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
              (gtk_container_queue_resize): new function to queue a container for
              a *size* reallocation (doesn't affect its position, and thus its
              parent is left untouched usually).
              (gtk_container_get_resize_container): new function to retrive the next
              most resize container which is not itself queued for a resize.
              (gtk_container_idle_sizer): new function to carefully process the
              container_resize_queue since it can change during invokation of
              gtk_container_check_resize().
              (gtk_container_resize_children): total rework of this function to
              properly handle resize containers. makes a lot of assumptions whitch
              are stated in the comments.
      
              * gtk/gtkcontainer.c:
              (gtk_container_real_check_resize): only requeue ourselves if we are not
              a resize container.
              (gtk_container_clear_resize_widgets): care for automatic deletion of our
              resize_widgets list on size_allocate through a handler connection.
      
              * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
              focus and default widget of a window, so to take the burden from
              gtk_widget_unparent.
      
              * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
              to be clever, but actually messed up the resize_children logic and
              caused unneccessary allocations on its whole branch. besides this,
              it messed up the display by not invoking a redraw after the allocation.
      
              * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
              that it is the child again that is queued for a resize.
              (gtk_table_attach): likewise.
              (gtk_table_remove): likewise.
      dbce6083
  32. 16 Jun, 1998 1 commit
  33. 09 Jun, 1998 1 commit
    • Tim Janik's avatar
      new functions gtk_selection_data_copy and gtk_selection_data_free. · a21d063e
      Tim Janik authored
      Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkselection.h:
              * gtk/gtkselection.c: new functions gtk_selection_data_copy and
              gtk_selection_data_free.
      
              * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
              for "selection_received", which was completely bogus.
              * other fixups to gtk_signal_new() calls all over the place.
      
              * gtk/gtktypebuiltins.h: types as variables (formerly macros).
              * gtk/gtktypebuiltins_vars.c: type variable implementations.
              * gtk/gtktypebuiltins_ids.c: array entries for builtin type
              declarations.
              * gtk/gtktypebuiltins_evals.c: enum value arrays.
              * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
              gtk.defs.
              * gtk/gtk.defs: generated file with scheme syntax for type definitions
              of gtk and gdk structures and enums.
              * gtk/gtktypeutils.h:
              * gtk/gtktypeutils.c: reworked type ids, so they are variables not
              macros anymore (this fixes binary incompatibility with new enum
              definitions).
      
              * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
              key bindings for this widget.
              * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
              handler.
      
              * gtk/gtkobject.h:
              * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
              again. new functions gtk_object_class_user_signal_new () and
              gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
              flag on the signal creation.
      Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
      a21d063e
  34. 03 May, 1998 1 commit
    • Owen Taylor's avatar
      configure.in acheader.h gdk/gdkwindow.c Check for Shape extension both on · 4851efe2
      Owen Taylor authored
      Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* configure.in acheader.h gdk/gdkwindow.c
      	Check for Shape extension both on the client and server
      	side. (And, more importantly, check for the shape extension
      	so we may include -lXext even when compiling with --disable-xshm)
      
      	Don't set override_redirect on all shaped windows. It isn't
      	necessary.
      
      	* gdk/gdkwindow.c: Set ->colormap to NULL for root
      	and foreign windows. Use this to check if we
      	need to get the colormap from X.
      
      Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkbutton.c (gtk_button_paint): Draw the areas
      	between the default and the button always in GTK_STATE_NORMAL.
      
      	* gtk/gtkrange.c (gtk_range_style_set): Added a style_set
      	callback.
      
      Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
      	  Fix a buffer overflow on pixmaps that claim to have
      	  more than 31 characters per pixel.
      
      	  (gdk_pixmap_read_string): Don't wrap around strings longer
       	  than half of address space ;-)
      
      	* gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
      	that were used for printing integers.
      
      	* */* (almost):
      
      	Style: All
      	  int foo () { ... }
      	changed to
      	  int foo (void) { ... }
      
      ^^^^^^^ This is why some many files changed
      
      	Even where there were proper prototypes elsewhere.
      
      	* gdk/gxid.c (handle_claim_device): Some extra checks.
      	It isn't safe against being fed bad X id's, but at
      	least it should be safe against deleting all your
      	files.
      4851efe2
  35. 13 Apr, 1998 1 commit
  36. 07 Apr, 1998 1 commit
    • Owen Taylor's avatar
      Removed, because that's what a NULL comparison function means. And it · 1c77b5f9
      Owen Taylor authored
      Tue Apr  7 19:36:48 1998  Owen Taylor  <owt1@cornell.edu>
      
      	* gutils.c (g_direct_compare): Removed, because that's what
      	a NULL comparison function means. And it wasn't 64 bit safe.
      
      Tue Apr  7 19:14:03 1998  Owen Taylor  <owt1@cornell.edu>
      
      	* gdk/gdkpixmap.c: Added maximum field widths to prevent
      	possible '%s' scanf overflows. Replaced scanf("%c")
      	with getc(), Don't interpret /*/ as a full comment. Use
      	g_realloc/g_new.
      
      	* gtk/gtkwidget.h gtk/gtkprivate.h: Changed all flag
      	tests to check for ((GTK_WIDGET_FLAGS(widget) & FLAG) != 0)
      	instead of (GTK_WIDGET_FLAGS(widget) & FLAG)
      
      	* gtk/gtkfilesel.c: Use getwd() instead of getcwd() on
      	SunOS, because getcwd() hangs up in a wait4().
      	(Found by David Monniaux <monniaux@clipper.ens.fr>)
      
      	- Check device/inode/mtime not just inode/mtime, when
      	caching scanned directories.
      	(From: scottk@ig.utexas.edu (Scott Kempf))
      
      	* gdk/gdkpixmap.c: Check for 0 width/height when
      	creating pixmaps.
      
      	* gtk/*.c: Global substitution of recently introduced
      	"MAX (0," for allocations to "MAX (1,", since
      	creating a backing pixmap with a zero width or height
      	fails.
      
      	* gdk/gdkwindow.c (gdk_window_new): Don't set all the
      	WM properties for child windows. Don't set the base
      	size, since the value we set will be taken as a minimum
      	size.
      1c77b5f9
  37. 27 Feb, 1998 1 commit
    • Tim Janik's avatar
      we make an active server grab now, this way we can change the cursor · 693fa02b
      Tim Janik authored
      Fri Feb 27 15:31:55 1998  Tim Janik  <timj@gimp.org>
      
              * gtk/gtktipsquery.c: we make an active server grab now, this way we
              can change the cursor globally and don't need to tweak event masks
              of other windows.
      
              * gtk/gtkframe.c (gtk_frame_style_set): recompute label size.
      
              * gtk/gtkwidget.h:
              * gtk/gtkwidget.c:
              New signal GtkWidget::style_set to be emitted when a widget's style
              changed. New flag GTK_RC_STYLE to indicate whether an rc lookup has
              been perfomed for the widget.
              (gtk_widget_ensure_style): New function.
              (gtk_widget_set_rc_style): New function.
      
              * docs/styles.txt: new file.
      693fa02b
  38. 19 Feb, 1998 1 commit
    • Tim Janik's avatar
      present the argument access masks on their announcement. · 0ef453b8
      Tim Janik authored
      Thu Feb 19 06:56:52 1998  Tim Janik  <timj@gimp.org>
      
              * gtkbox.c:
              * gtkbutton.c:
              * gtkcontainer.c:
              * gtkframe.c:
              * gtklabel.c:
              * gtkobject.c:
              * gtkwidget.c:
              * gtkwindow.c:
              present the argument access masks on their announcement.
      
              * gtk/gtkobject.h:
              * gtk/gtkobject.c:
              (gtk_object_add_arg_type): take an additional argument describing
              the access mask of the new arg. this can be of GTK_ARG_READABLE,
              GTK_ARG_WRITABLE or GTK_ARG_READWRITE (the latter is an alias for
              the two previous ones).
              (gtk_object_query_args): provide an access_mask array if desired.
      
              * gtk/gtkwidget.c (gtk_widget_real_realize):
              realized the assumtion that widget is a NO_WINDOW widget
              in actuall code.
      
              * gtkwindow.c:
              slight changes to gtk_window_configure_event that will make
              the resizing behaviour a little less odd.
              sigh, for some (buggy) reason, there are still container resizes
              triggered by manual resizing to very small window sizes.
              the cointainer resizes will cause gtk_real_window_move_resize to
              be invoked, which makes the app look like it wants to fight the users
              resizing action. ;(
      0ef453b8
  39. 30 Jan, 1998 1 commit
  40. 21 Jan, 1998 1 commit