Thu Mar 1 19:50:56 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
Move handling of buttons fully in gtktreeviewcolumn. This code is
less interrelated then it was, but it still requires the
GtkTreeView to map it.
* test/testtreecolumn.c: Now I can add a column to one view,
remove it, add it to the another view, remove it, then re-add it
to the first. Nifty.
2001-02-28 Havoc Pennington <hp@redhat.com>
* gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
draw_default
(gtk_widget_draw_focus): remove this function; we could instead
make it just gtk_widget_draw(), but in most cases I think the
result would be broken user code, so think it's better to have
that code not compile and get fixed
(gtk_widget_draw_default): ditto
* gtk/gtkwidget.c: Add default handlers for focus_in_event and
focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
* gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
widgets lose/get the default, instead of calling draw_default
* docs/Changes-2.0.txt: note about all this
Then fixed every widget in GTK, I won't list all the filenames.
Tue Feb 27 19:32:53 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.c (deleted_callback): Proxy out to
_gtk_tree_row_reference_deleted.
(inserted_callback): Proxy out to
_gtk_tree_row_reference_inserted.
(_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
get around signal emission ordering problem.
* gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
fix to work with SINGLE
(_gtk_tree_selection_internal_select_node): Major sanitization on
selections. SINGLE now seems to work.
* tests/Makefile.am: add testtreecolumn.c:
* tests/testtreecolumn.c: New test. Mostly points out selection
bugs currently, but will test columns later.
* gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
selection bug. I hate touching this code -- it's scary.
2001-02-26 Havoc Pennington <hp@redhat.com>
* gtk/testgtk.c: test the window state stuff
* gtk/gtkwindow.c (gtk_window_present): new function, makes a
window come to the user's attention as if it were just created
(gtk_window_iconify): new function
(gtk_window_deiconify): new function
(gtk_window_stick): new function
(gtk_window_unstick): new function
(gtk_window_maximize): new function
(gtk_window_unmaximize): new function
* gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
* gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
* gdk/x11/gdkevents-x11.c: create window state events when
appropriate
(gdk_wmspec_supported): new function
* gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
iconification before showing the window
(gdk_window_deiconify): new function
(gdk_window_stick): new function
(gdk_window_unstick): new function
(gdk_window_maximize): new function
(gdk_window_unmaximize): new function
* gdk/gdkwindow.c: store the window state in the window;
change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
window->mapped.
(gdk_window_get_state): return the current window state
* gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
(gdk_event_get_state): handle GDK_WINDOW_STATE
(gdk_synthesize_window_state): function to create the window state
events
* gdk/gdkevents.h (struct _GdkEventWindowState): new type of
event, for changes to "window state" such as maximized, sticky,
etc.
* gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
focuses a window
* gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function,
finds out if we support a given WM spec hint
Fri Feb 23 17:50:13 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
column that is exposed.
(_gtk_tree_view_update_size): Changed name from set_size, and
changed function to do more work, and not force people calling it
to figure out the size. Simplifies a lot of code elsewhere.
2001-02-23 Tor Lillqvist <tml@iki.fi>
* README.win32: Update. Mention the gtk-1-3-win32-production
branch.
* gdk/win32/bdfcursor.c: New file. A program that generates
xcursors.h. Thanks to Stefan Ondrejicka.
* gdk/win32/xcursors.h: New file, contains the X cursor font in a
compact format.
* gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
* gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
function, uses xcursors.h.
(gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
cursor from inline data instead of using LoadCursor() to generate
it from a resource.
* gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
event, must check the Windows message for mouse button state, as
the GDK event state might not have been built if it is
undelivered. Remove one goto.
* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
SetCursor() if the current cursor as returned by GetCursor() is
the window's previous cursor. The ChildWindowFromPoint() test
apparently didn't work correctly.
* gdk/win32/rc/*.cur: Remove.
* gdk/win32/rc/gdk.rc.in: Remove cursors.
* gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
* gtk/makefile.{mingw,msc}.in: Updates.
Wed Feb 21 20:56:50 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.h: add functions for signal emission.
* gtk/gtktreestore.c: move to use above functions instead of
g_signal_emit.
* gtk/gtkliststore.c: ditto
Wed Feb 21 15:41:34 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.c: removed signals. Moved to inherit from
GObject instead of GtkObject.
* gtk/gtkliststore.c: ditto.
* gtk/gtktreemodelsort.c: ditto.
* gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
GtkTreeModelIface, instead of in each model.
2001-02-21 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
unbreak this function
* gtk/gtkentry.c: apply patch from Lee Mallabone to add object
properties
* gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
properties
* gtk/gtkcombo.c: apply patch from Lee Mallabone to add object
properties
* gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
mean unset the max length
Wed Feb 21 14:23:05 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
Changed name to be set_cell_data_func to make it clear what
the functino does. Close bug #51069.
Tue Feb 20 16:49:00 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/testgtk.c (main): Remove turning on of profiling malloc,
have memory actually freed. Keeps box running longer.
2001-02-21 Alexander Larsson <alexl@redhat.com>
* gtk/gtkseparatormenuitem.[ch]:
Added new menu separator item. The drawing and size handling
is still done in GtkMenuItem, but the API is a bit more sane.
* gtk/Makefile.am:
Add gtkseparatormenuitem.[ch].
* gtk/gtk.h:
Add gtkseparatormenuitem.h.
* gtk/gtkentry.c:
* gtk/gtkmenufactory.c:
* gtk/gtktextview.c:
Use the new API for menu separators.
* demos/gtk-demo/menus.c (create_menu):
Add some GtkSeparatorMenuItem demo code.
2001-02-20 Havoc Pennington <hp@redhat.com>
* gtk/gtkaspectframe.c: Convert to new property API, patch from
Lee Mallabone
* gtk/gtkarrow.c: Convert to new property API, patch from
Lee Mallabone
Tue Feb 20 12:16:12 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
function to create an icon set from a pixbuf.
2001-02-20 Alexander Larsson <alexl@redhat.com>
* gtk/gtkcellrenderertext.[ch]:
Add a "markup" property.
* gtk/treestoretest.c:
Use the markup property, remove some leftover stuff from
GtkTreeModelMapping.
2001-02-19 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
insert_child_anchor signal, bug #50245
* gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
from create_child_anchor, so the anchor is passed in
* gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
(_gtk_widget_segment_new): have the child anchor object passed in,
instead of creating it.
* gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
to gtk_text_buffer_get_modified
2001-02-19 Havoc Pennington <hp@redhat.com>
* gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
changed GLib without fixing GTK
* gtk/gtkrange.h: Rename all the stupid implementation detail
functions to have an underscore in front. Most of them should
probably just go away, but for starters don't export them.
Bug #50482
2001-02-19 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
2001-02-19 Havoc Pennington <hp@redhat.com>
* gdk/gdkcolor.h: test was backward, so deprecated functions were
excluded by default
* gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
clean up the old code a bit
* gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
inconsistent state
* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
draw inconsistent state
* gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
(create_menu): add inconsistent test
* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
new function
(gtk_check_menu_item_get_inconsistent): new function
(gtk_real_check_menu_item_draw_indicator): draw the inconsistent
state (using etched in for now)
* gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
draw inconsistent state
* gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
function, used when the user has selected a range of stuff in
different states
(gtk_toggle_button_get_inconsistent): accessor for that
(gtk_toggle_button_paint): draw inconsistent state (etched in?
don't know what else to do)
2001-02-16 Havoc Pennington <hp@redhat.com>
* gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
scroll steps.
* gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
steps, and add Ctrl-arrow shortcuts for paging visually as with
HScale, since Page Up and Page Down move logically.
* gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
* gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
steps
(gtk_range_scroll): handle the visual steps
* gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
scroll steps
* gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
steps, not the logical ones.
* gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
(scroll_vertical): handle up/down steps
2001-02-19 Alexander Larsson <alexl@redhat.com>
* gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
Copy data and free data with free().
* gdk-pixbuf/gdk-pixbuf.c:
* gdk-pixbuf/io-jpeg.c:
* gdk-pixbuf/io-png.c:
Use g_try_malloc/g_free instead malloc/free.
* gdk-pixbuf/test-gdk-pixbuf.c:
Must... initialize... gobject...
* gdk-pixbuf/pixops/timescale.c:
* gtk/gtkcalendar.c:
Use g_malloc instead of malloc.
2001-02-17 Havoc Pennington <hp@pobox.com>
* gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
shadowed variables that had broken size request in some cases,
leading to bogus tooltips (#50996)
2001-02-06 Jon K Hellan <hellan@acm.org>
Implement fast browsing of tooltips, bug #50619
* gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
and last_popdown
* gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
use_sticky_delay and last_popdown.
(gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
time of popdown.
(gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
is NULL.
(gtk_tooltips_recently_shown): New static function. Return true
if < sticky_delay has elapsed since last popdown.
(gtk_tooltips_event_handler): Display window after sticky_delay
(presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
since last popdown.
2001-02-17 Havoc Pennington <hp@pobox.com>
* gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
instead of (). #6394
* gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
G_CONST_RETURN, make it return by reference, #50473
Fri Feb 16 17:49:59 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
gtk_*_store_get, and moved to GtkTreeModel.
* gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
* gtk/Makefile.am: remove gtktreemodelmapping.[ch]
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
set the func.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
freeze/thaw notify between setting all the properties for a cell.
* gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2001-02-15 Havoc Pennington <hp@redhat.com>
* gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
the X coordinates so they're with respect to the line, rather than
with respect to the layout.
* gtk/gtkalignment.c: Convert to new property API, patch from Lee
Mallabone
* gtk/testgtk.c (create_range_controls): add vscale tests,
and inverted test
* gtk/gtkrange.c (gtk_range_set_inverted): new function to fix
#50806
* gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
* gtk/gtktextiter.h (gtk_text_iter_is_last): rename
gtk_text_iter_is_end
* gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
rename gtk_text_buffer_get_end_iter
* gtk/testgtk.c (create_labels): Add test for selectable
* gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
the selection stuff. This code is kind of broken since it doesn't
use the theme engine.
* gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region):
fix infinite loop and y offset problem
(gdk_draw_layout_line_with_colors): fix foreground color handling
* gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag
that makes the label selectable.
* gtk/gtklabel.c (gtk_label_style_set): recreate the label's
layout when the style is set, since fonts etc. could have changed.
2001-02-12 Havoc Pennington <hp@pobox.com>
* gdk/gdkpango.c (gdk_pango_get_gc): fix bug where
it always set the foreground, even if we were only using
a stipple.
(gdk_draw_layout_line_with_colors): new function, allow
override colors
(gdk_draw_layout_with_colors): new function, allow override
colors
(gdk_pango_layout_line_get_clip_region): function to get the clip
region for a logical text range
(gdk_pango_layout_get_clip_region): get the clip region for a
logical text range
* gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
(gdk_colormap_new): fix call to gdk_colormap_sync() so it has
the right number of arguments.
* gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
enhance the function to check that node data corresponds to a
view still belonging to the tree.
* gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the
GtkTreePath
(gtk_tree_view_inserted): ditto
(gtk_tree_view_child_toggled): ditto
* gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
simplify this code.
* gtk/gtkcellrenderertext.c (get_layout): fix leak of
a PangoAttrList
* demos/gtk-demo/main.c (load_file): Fix leak of a GString
* gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
* gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
size in the size request
(gtk_menu_bar_size_allocate): consider toggle size here
* gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
that displays a widget in the toggle slot
* gtk/testgtk.c: test GtkImageMenuItem
* gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
* gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
request and allocation
* gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
* gtk/gtkcheckmenuitem.c
(gtk_check_menu_item_toggle_size_request): ditto
Mon Feb 12 23:43:30 2001 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am (gdk_headers): Remove gdkcc.h
reference.
* configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
and refuse to initialize GTK+ if they fail.
Mon Feb 12 15:02:07 2001 Owen Taylor <otaylor@redhat.com>
* configure.in: Add check for gtk-doc version.
Thu Feb 8 17:18:26 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtklabel.c (gtk_label_size_request): Fix bug
where the xpad/ypad was only being used on one side!
2001-02-11 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
function, copied from X11 version.
* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
DestroyCursor failures. The reason for the problem (despite the
inconsistent messages from GetLastError()) was that
DestroyCursor() cannot be called while a cursor is set in a
window. Set the new cursor first and then destroy the old one.
Thanks to jpe@archaeopteryx.com.
* gdk/win32/gdkcc-win32.c: Removed.
* gdk/gdk.def
* gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
* gtk/gtk.def
* gtk/makefile.mingw.in: Updates.
2001-02-08 Havoc Pennington <hp@redhat.com>
* gtk/gtkbin.c (gtk_bin_add): better error message if you try to
add a widget to a bin that already has a child.
* gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
* docs/Changes-2.0.txt: note that GdkColorContext is gone.
* gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
* gdk/gdk.h: remove gdkcc.h
* gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
* gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
GdkPixbuf, since the previous implementation was GdkColorContext
dependent.
* gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2001-02-08 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
validation idle
* demos/gtk-demo/main.c (create_tree): adjust to changes in text
cell renderer
* demos/pixbuf-demo.c (timeout): remove deprecated
gtk_widget_draw
* demos/testpixbuf-save.c (main): remove deprecated
gtk_drawing_area_size
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
buttons even if the model isn't setup. gtk_tree_view_check_dirty()
at the start of the allocation.
(gtk_tree_view_check_dirty): handle column->button == NULL, handle
unsetup or NULL model.
* gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the
even/odd/sorted cells in the tree view.
* gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
bugfixes
* gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
backgrounds with draw_flat_box using different detail for even/odd
rows.
* gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
row, so we can draw the alternating colors thing
* gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
property from a synonym property, notify for the synonym.
Also, nuke the background_gdk_set and foreground_gdk_set synonyms
(gtk_text_tag_get_property): Always return the font, even if
all its fields aren't set
* gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
store the attr list; it leaves us with no way to change attributes
in _render according to the render flags, and no way to implement
get_property. Instead store all the specific text attributes.
Separate whether an attribute is enabled from its value. Sync all
properties with GtkTextTag, make them all consistent, etc.
* gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
renderers can highlight the sort row/column
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
accessor functions to get values; this has the side effect of
showing up which accessor functions were missing. Added those.
* gtk/gtktreeviewcolumn.h: Replace set_justification with
set_alignment, to be consistent with GtkLabel, GtkMisc
* gtk/gtktreeviewcolumn.c: Added code to display sort indicator
arrow.
* gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
* gtk/gtktreesortable.h: updates in here
2001-02-07 Sven Neumann <sven@convergence.de>
* gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to
pango dimensions after painting the background. We used to draw
gigantic flat boxes here.
Mon Feb 5 22:05:57 2001 Owen Taylor <otaylor@redhat.com>
* gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
error introduced with earlier commit) (pointed out by
Ollie Lho)
Sun Feb 4 07:55:17 2001 Tim Janik <timj@gtk.org>
* gtk/gtksignal.h: removed gtk_signal_init() compat define.
* gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
GTypeDebugFlags debug_flags and pass it on to g_type_init ();
deprecated this function.
* gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
argument.
Sun Feb 4 07:45:45 2001 Tim Janik <timj@gtk.org>
* gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
* gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
we finally need the gobject->gruntime rename.
* *.c: scratched calls to g_type_init(), there's simply no point in
doing that, use gtk_init().
2001-02-03 Havoc Pennington <hp@pobox.com>
* gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
Mikael Hermansson with patch from Mikael (if there was a toggle
start one after the first character in the range, this function
was broken). Bug #50380