Fri Sep 7 11:51:44 2001 Owen Taylor <otaylor@redhat.com>
Make gdkx.h the only installed header from gdk/x11.
All structures in gdk/x11 are opaque.
* gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
Don't install gdk{drawable,pixmap,window}-x11.h.
* gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c:
Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11,
GdkVisualClass into C files.
* gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
* gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
Add public functions to replace previously exported direct
structure access.
gdk_x11_colormap_get_{xdisplay,xcolormap}
gdk_x11_cursor_get_{xdisplay,xcursor},
gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual,
gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
gdk_x11_gc_get_{xdisplay,ximage}
* gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
Fix a number of variables and functions that were exported
"accidentally" from GDK.
* gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit,
gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
gdk_event_notify, gdk_queued_events, gdk_queued_tail,
gdk_event_new, gdk_events_queue, gdk_events_unqueue,
gdk_event_queue_find_first, gdk_event_queue_remove_link,
gdk_event_queue_append, gdk_event_button_generate,
gdk_debug_flags, gdk_default_filters, gdk_parent_root.
* gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c,
gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks,
gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
gdk_use_xshm, gdk_input_ignore_core.
* gdk/x11/xsettings-common.h (xsettings_list_insert): Add
#defines to namespace functions into the private _gdk_
namespace.
* gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
to replace gdk_parent_root exported variable. Adjust and
deprecate GDK_ROOT_PARENT().
* demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
GDK_ROOT_PARENT usage, remove includes of port-specific
headers.
* gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for
_gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core,
gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
* gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
docs/Changes-2.0.txt: Remove gdk_wm_protocols,
gdk_wm_delete_window functions, gdk_wm_take_focus,
use gdk_atom_intern() instead.
* gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h}
gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
gtk/gtkselection.c
Unexport gdk_selection_property, just use
gdk_atom_intern ("GDK_SELECTION").
* gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}:
Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type,
GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate,
GdkVisualprivate, gdk_x11_gc_flush.
Make a number of public exports of variables into functions
to increase encapsulation.
* gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h
gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer,
move to gdkinternals.h. Add gdk_device_get_core_pointer ().
* gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code,
gdk_error_warnings.
* gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
docs/Changes-2.0.txt:
s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
Add gdk_x11_get_default_xdisplay().
* gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c
win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c
gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class,
Don't export gdk_progclass, move --class command line
option and handling to common portion of GDK.
Miscellaneous fixes:
* gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
g_return_val_if_fail that should have been g_return_if_fail.
* gdk/gdkinternals.h gdk/gdkprivate.h: Move
gdk_synthesize_window_state() to the semi-public gdkprivate.h.
* gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
X11 dependency.
* gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO:
Remove unused gdk_key_repeat_disable/restore.
* linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c
x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
Remove unused gdk_null_window_warnings variable.
* gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
it can be retrieved from the repository; it is too far
from functional to be worth having people check out;
it would be easier to start from scratch, I suspect.
* gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
* gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c
gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c:
Fix some accidentally global variables and unused global variables.
* gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c
gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c:
Fix some accidentally global variables and unused global variables.
Add some space for future expansion to multihead.
* gdk/gdkdrawable.h: Add four reserved function pointers
for future expansion of GdkDrawableClass.
* gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
where we can put a GdkScreen * later.
Sun Sep 2 20:32:36 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
#59731
Sun Sep 2 17:38:42 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
time, #59727
* gtk/gtkbutton.c (gtk_button_update_state): Get depressed
correctly.
Sun Sep 2 23:19:07 2001 Kristian Rietveld <kristian@planet.nl>
* gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
fix for bug #59222.
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
gpointer search_data argument to function definition and
prototype, to match GtkTreeViewSearchEqualFunc typedef.
Fri Aug 31 20:01:23 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
* gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
Mon Aug 27 15:18:14 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
GTK selection types rather than GtkTreeSelectionMode.
* docs/Changes-2.0: Add comment about selection change.
Fri Aug 24 16:03:45 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
"use_align" to give people the option to just make a cell visible.
* gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
we were scrolling past the end of the tree.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
rename gtk_tree_view_column_pack_start_cell_renderer to
gtk_tree_view_column_pack_start. Same for pack_end, and clear.
Wed Aug 22 18:25:46 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c: Fix selection. I think it's all dandy now.
We check the current event for modifiers rather than try to trap
all presses.
Sun Aug 19 03:22:59 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkliststore.c: Fix up warnings, #58928.
* gtk/gtktreeselection.h: Change signal prototype, #58647
* gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
#59221.
* gtk/gtkstyle.c: Actually prelight arrow, #50981
Sat Aug 18 04:34:31 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
signals; is_expander/is_expanded.
* gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
pixbufs.
* gtk/gtktreeview.c: set above properties.
Fri Aug 17 17:30:34 2001 Tim Janik <timj@gtk.org>
* gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
string parameter.
* gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
GtkMenuShell::selection_done, now that we have it, instead of
::deactivate so we're not tearing the menu apart and notify
the user prematurely.
Thu Aug 16 05:22:01 2001 Tim Janik <timj@gtk.org>
* gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
window, clear window->need_default_position to avoid infinite loops.
some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
Wed Aug 15 12:36:55 2001 Tim Janik <timj@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
(gtk_tree_view_set_property): don't cast possible NULL objects.
(gtk_tree_view_destroy): reset the model to NULL.
* gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
parent_class handler.
2001-07-22 Anders Carlsson <andersca@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
expander_height and expander_width properties with a single
property, expander_size.
(gtk_tree_view_init): Set the tab_offset to expander_size
plus some padding.
(gtk_tree_view_unrealize): Remove the expand/collapse
timeout if it exists.
(coords_are_over_arrow): Fix a small bug.
(gtk_tree_view_motion_draw_column_motion_arrow): Use
expander_size.
(gtk_tree_view_draw_focus): Use "treeview" instead of
"add-mode" as detail when drawing the focus.
(gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
instead of "add-mode" as detail when drawing the focus.
(gtk_tree_view_deleted): If we have a node currently being
expanded or collapsed, remove the timeout and set the node
to NULL.
(gtk_tree_view_queue_draw_arrow): New function that just
redraws the arrow of a node.
(gtk_tree_view_draw_arrow): Use expander_size instead of
expander_width/expander_height, also pass a different
expander_style to gtk_paint_expander depending on the
state of the node being drawn.
(expand_collapse_timeout): New function for expanding
or collapsing a node depending on the previous state.
(gtk_tree_view_real_expand_row): Add timeout and set
correct state for node being expanded.
(gtk_tree_view_real_collapse_row): Add timeout and set
correct state for node being collapsed.
* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
information about the node currently being expanded or
collapsed, and also a timeout id.
* gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
with expander_style for draw_expander.
* gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
expander_style.
(create_expander_affine): New function for creating an
expander affine.
(apply_affine_on_point): New function for applying an
affine to a point.
(gtk_default_draw_expander): Modified to take expander_style
instead of is_open, and to draw the rectangle rotated differently
depending on the expander style.
(gtk_paint_expander): Replace is_open with expander_style.
* gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
* gtk/gtkenums.h: Add expander style enum.
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.
Wed Jul 18 18:23:05 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
gtktreeview.c: Fix idles and timeouts to be properly surrounded by
GDK_THREADS_ENTER()/LEAVE() pairs.
* gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
pairs. (Problem found by M. Meeks)
Mon Jul 9 12:50:51 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
gtk_tree_model_get_iter_root.
* gtk/gtkliststore.c: Add a bunch of g_return statements.
(gtk_list_store_iter_n_children): Fix up.
* gtk/gtktreestore.c: Add a bunch of g_return statements.
Sat Jun 30 17:13:51 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkliststore.c (gtk_list_store_newv): New function for
language bindings.
* gtk/gtkteststore.c (gtk_test_store_newv): New function for
language bindings.
Fri Jun 29 22:13:28 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
to just plain new, fixing the number of columns, and column types
at creation time.
* gtk/gtkliststore.c (gtk_list_store_new): ditto.
* gtk/gtkcellrenderertext.c
(gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
height to a specific font.
* gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
* tests/*c: change to work with new store models.
Fri Jun 8 18:52:10 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.[hc]: Patch Thomas Broyer from
<tbroyer@ltgt.net>. Expander arrows are now attached to a specific
column and follow it when draged, rather than a location in the
view. "expander_column" property and drawing functions changed
accordingly. Fixes bug #55942.
(gtk_tree_view_{set,get}_expander_column): Now works with a
GtkTreeViewColumn* instead of int.
Wed Jun 27 19:40:31 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeviewcolumn.c
(gtk_tree_view_column_pack_start_cell_renderer): New function to
reflect that you can (hypothetically) pack cell renderers into a
column.
(gtk_tree_view_column_pack_end_cell_renderer): ditto.
(gtk_tree_view_column_cell_is_visible): Move more functionality to
the column.
(gtk_tree_view_column_cell_can_focus): Move more functionality to
the column.
* gtk/gtktreeview.c: Move to use new column-packing code.
(gtk_tree_view_real_expand_row): remove totally braindead code.
(gtk_tree_view_real_collapse_row): ditto.
Tue Jun 26 12:59:28 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
stupid missing statement
* gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
private function for ATK. It notifies you of how many _visible_
children are deleted when a node is deleted. Should be used by
atk only.
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().
Fri Jun 22 14:06:08 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
noticed by Brian Cameron.
(gtk_tree_view_real_expand_row): Fix bug noticed by Brian
Cameron.
Wed Jun 20 19:19:15 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
(gtk_tree_view_move_cursor_page_up_down): implement.
Mon Jun 18 20:06:10 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
test if a node is expanded.
Mon Jun 18 19:41:38 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
where collapsing a selected row would result in the cursor/anchor
getting screwed up.
Fri Jun 15 18:53:48 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
gtk_tree_sortable_sort_column_id_set_func. It's much shorter now.
* gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
Now I can really reorder/sort all Store widgets. treesorttest
seems to just work now.
* gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
testtreesort worked through a big coincidence all this time.
* gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
code.
* tests/testtreecolumns.c: Big 'ol warning at the top letting
people know that this code should never ever ever be copied.
HA!
While everyone else was busy flaming eash other over configuration
engines, I secretly got sorting completely working with store widgets
and GtkTreeView. GtkTreeModelSort, here I come!!!!!
Thu Jun 14 19:21:27 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops. Forgot
this a couple months ago. Now GtkTreeStore sort of sorts. I'll
finish it off tonight, though it basically works now when it's a
list. Also, I have a sinking feeling neither GtkTreeStore or
GtkListStore actually resort when adding a new item. I'll look
into it.
Tue Jun 12 12:41:27 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
gtk_tree_model_get_flags by adding a second flag for atk.
* gtk/gtktreemodel.c: make cursor behavior interact better with
mouse presses.
Mon Jun 11 12:43:08 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_class_init): changed
expand_row/collapse_row to be 2 signals each -- test_expand_row
and row_expanded as well as test_collapse_row and row_collapsed.
Fri Jun 8 18:41:30 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
clean up cursor handling.
Pretty much nailed single selection motion, and multi-selection
focus minus the fact that the anchor isn't quite right.
2001-06-08 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
don't call g_list funcs on GSList
* gtk/gtkwidget.c (gtk_widget_child_focus): replaces
gtk_container_focus(), since some widgets have focusable locations
which are not other widgets. These widgets should not have to be
containers just to manage the focus. For example, GtkHSV is
currently a container for no good reason. Also, this cleans
up the "if (is_container && is_sensitive && is_drawable)
container_focus ()" mess in widget implementations.
* gtk/gtkcontainer.c (gtk_container_focus): deprecate this
function, and have it just call gtk_widget_child_focus().
* gtk/gtkhsv.c: derive from widget not container
Throughout: fix to reflect GtkContainer::focus change
Thu Jun 7 18:25:42 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeselection.c: Now it's a GObject instead of a
GtkObject. The GtkTreeSelection::selection_changed signal is now
the GtkTreeSelection::changed signal.
* gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
object.
* tests/gtktree*.c: Modified to deal with new GtkTreeSelection
object.
Wed Jun 6 21:59:16 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
buttons. Fixes#55460 reported by matthiasc@poet.de.
Wed Jun 6 21:18:54 2001 Jonathan Blandford <jrb@webwynk.net>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
expansion/collapsing so it only happens in one place.
(gtk_tree_view_real_expand_row): ditto.
Wed Jun 6 20:01:38 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c
(gtk_tree_view_real_expand_collapse_cursor_row): Handle key
bindings to expand and collapse rows.
(gtk_tree_view_real_select_cursor_parent): New key binding.
(gtk_tree_view_real_toggle_cursor_row): New key binding.
* gtk/gtkmarshal.list: new
marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)