]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
allow argument parsing in gtk without G_ENABLE_DEBUG being defined
[~andy/gtk] / ChangeLog.pre-2-6
1 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
2
3         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
4         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
5         --g-fatal-warnings), noticed by miguel.
6
7 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
8
9         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
10         getcwd().
11
12         * gdk/gdkprivate.h:
13         * gdk/gdkglobals.c:
14         * gdk/gdkwindow.c:
15         * gdk/gdk.c:
16         * gtk/gtkwindow.c: 
17         * gtk/gtkitemfactory.c: 
18         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
19
20         * gtk/gtkselection.c:
21         * gtk/gtkpreview.c:
22         * gtk/gtkobject.c: 
23         * gtk/gtkmain.c: 
24         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
25
26         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
27
28 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
29
30         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
31         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
32         in case of show_tabs == NULL
33
34 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
35
36         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
37         to --g-fatal-warnings again. this option now causes log levels of
38         WARNING and CRITICAL to abort().
39
40         * gdk/gdk.c: 
41         * gdk/gdkdnd.c: 
42         * gdk/gdkcc.c: 
43         * gdk/gdkfont.c: 
44         * gdk/gdkwindow.c:
45         * gdk/gdkvisual.c:
46         * gtk/gtkwidget.c:
47         * gtk/gtktypeutils.c:
48         * gtk/gtktree.c:
49         * gtk/gtkfontsel.c:
50         * gtk/gtkmain.c:
51         * gtk/gtkobject.c:
52         * gtk/gtkpreview.c:
53         * gtk/gtkselection.c:
54         * gtk/gtktext.c:
55         * gtk/gtktree.c:
56         * gtk/gtktreeitem.c:
57         did a global search&replace to substitute g_print() calls with
58         g_message(). libraries shouldn't use printf(), g_print() or
59         g_printerr() at all.
60         a bunch of the replacements should probably be wrapped into the
61         G{D|T}K_NOTE() macros, so they are special cased for debugging
62         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
63         things.
64
65         * gdk/gdkdnd.c: added copyright notice.
66
67 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
68
69         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
70         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
71         running a PII 233. It's synced with the 0.0.5 release of
72         GdkRgb.
73
74 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
75
76         * gtk/gtkclist.h:
77         (struct _GtkCListClass): new class methods:
78         (sort_list) (insert_row) (remove_row) (set_cell_contents)
79
80         * gtk/gtkclist.c :
81         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
82         removed and replaced by (set_cell_contents)
83         (set_cell_contents): function for class method set_cell_contents
84         (real_insert_row): function for class method insert_row
85         (real_remoce_row): function for class method remove_row
86         (real_sort_list): function for class method sort_list
87         (default_compare): fix to avoid problems with cell types != CELL_TEXT
88
89         * gtk/gtkctree.h :
90         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
91         (gtk_ctree_node_is_visible): new function to return visibility state
92         of a node
93         (gtk_ctree_show_stub): new function to set visibility of root stub
94
95         renamed functions :
96         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
97         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
98         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
99         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
100         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
101         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
102         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
103         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
104         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
105         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
106         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
107         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
108         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
109         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
110         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
111         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
112         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
113         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
114         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
115
116         * gtk/gtkctree.c :
117         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
118         removed and replaced by (set_cell_contents)
119         (set_cell_contents): function for class method set_cell_contents
120         (real_insert_row): function for class method insert_row
121         (real_remoce_row): function for class method remove_row
122         (real_sort_list): function for class method sort_list
123         (default_compare): removed. CTree now also compares two GtkCTreeRows
124         instead of two GtkCTreeNodes.
125         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
126         unlinking the node
127         (real_tree_expand) (real_tree_collapse): fix for refcounting of
128         node pixmaps
129         (set_node_info): call gtk_ctree_node_set_pixtext instead of
130         manipulating the row itself
131         
132         * gtk/testgtk.c: use renamed functions of GtkCTree.
133         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
134         at work.
135
136 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
137
138         * gtk/gtkmain.c: removed gtk_input_add_interp.
139
140         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
141         keyword.
142         (gtk_editable_get_event_time): fix default: case.
143
144         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
145
146         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
147
148         * gdk/gdkcolor.c:
149         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
150         of our functions.
151
152         * various minor compilation cleanups, such as bogus commas in
153         enums and similar things.
154
155 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
156
157         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
158         (thanx raph).
159
160 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
161
162         * NEWS: updated for 1.1.2
163         * gtk+.spec: version = 1.1.2
164
165 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
166
167         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
168         times. changed --gtk-with-module to --gtk-module at owen's request.
169
170 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
171
172         * gtk/gtkmain.c (gtk_init): feature a new commandline option
173         --gtk-with-module=<module> that allows additional loading and
174         initialization of modules (e.g. GLE).
175
176 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
177
178         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
179         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
180
181         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
182         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
183         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
184         different *-fatal-* arguments now. this needs to be revised and
185         compressed to a reasonable amount of arguments.
186
187 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
188
189         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
190         "--g-fatal-warnings" causes fatal warnings in GLib,
191         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
192         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
193
194         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
195         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
196
197         * gtk/testgtk.c: 
198         * gdk/gxid.c:
199         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
200         since automake doesn't support per target _CFLAGS yet.
201
202         * configure.in: require GLib 1.1.3.
203
204 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
205
206         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
207         to set a callback to test if a node in drag can be dropped onto
208         it's currrent location.
209         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
210         to change the pointer when a drag destination is not allowed.
211
212 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
213
214         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
215         speeds up the 565_d case by about 25% total. Thanks Ray!
216
217 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
218
219         * Changed GtkSignalFunc back to () from (void). (again!)
220
221         * Added file README.cvs-commits
222         
223 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
224
225         * docs/gtk_tut.sgml:
226           - Tidy up of the menufactory example from
227             Andy Kahn <kahn@zk3.dec.com>
228           - New section on Range Widgets from
229             David Huggins-Daines <bn711@freenet.carleton.ca>
230           - Started a new section on 'Advanced Event and Signal
231             Handling' - used an email from Owen.
232           - New appendix on Gdk Event Types
233           - Added the tictactoe full example code to the
234             'Code Examples' appendix
235
236 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
237
238         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
239           to calculate all the metrics at once of a string, including
240           things which weren't calculated before.
241
242         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
243           MenuItem type, that when put as the first thing in a
244           menu, makes the menu tearoff. Currently drawn as a
245           dashed line.
246
247         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
248           "hide_on_activate" to the MenuItem class structure to allow
249           check and radio buttons to be changed with <Space> without
250           hiding the menu.
251
252         * gtk/gtkitemfactory.c: 
253           - Create a AccelGroup for each MenuShell we create.
254           - If an '_' appears before a  character 'c' in the path,
255             then make 'c' an accelerator in the menu's accel group,
256             and if the menuitem is menubar <alt>C an accelerator 
257             in the itemfactory's accel group. Double '__' inserts
258             a literal '_'
259
260         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
261           which is a string. If an '_' appears in this string,
262           the corresponding position in the label is underlined.
263
264           Add gtk_label_parse_uline() convenience function which
265           takes a string with embedded underlines, sets the
266           pattern and label, and returns the accelerator keyval.
267
268         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
269           Instead, they create a GtkWindow and add themselves
270           to that. (When torn off, another new feature, they
271           create another GtkWindow to hold the torn off menu)
272
273           New function gtk_menu_set_tearoff_state()
274         
275         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
276           Added action signals  for keyboard navigation of menus.
277
278         * gtk/gtkmenushell.c: Key press handler which activates
279           bindings for navigation, and accelerators, for handling
280           underline accelerators. Exported functions to select 
281           and activate menu items in a menushell.
282
283         * gtk/testgtk.c: Added a new "Item Factory" test which
284           tests GtkItemFactory and the new keyboard navigation
285           of menus.
286
287 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
288
289         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
290         external functions have been called. also relookup nodes after
291         this function has been invoked.
292
293 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
294
295         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
296           beginning of Text when creating the Text widget.
297
298         * gtk/testgtk.c: Grab the focus on the text widget so
299           as to test out the above.
300
301 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
302
303         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
304           ::changed is a notification signal and should have no default
305           handler. A complete redraw of the Text widget does _not_ need to
306           be done on every text insertion.
307
308 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
309         (gtk-abilleira-072198-patch)
310
311         * gtk/gtkwindow.[ch]: 
312           Add gtk_window_set_modal() which sets a flag; when
313           set the window does a gtk_grab_add() when the window
314           is shown, and a gtk_grab_remove() when the window
315           is hidden. 
316
317         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
318           that case will run "Create Dir","Delete File" and "Rename File" 
319           dialogs as modal too.
320
321         * gtk/testgtk.c: Added a button with an example of creating modal 
322           dialog boxes. Including file selection and color selection standard
323           dialogs.
324         
325 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
326
327         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
328           Removed CAN_FOCUS by default from scrollbars, button
329           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
330           (Scrollbar definitely good change, toolbar bit more questionable)
331
332 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
333
334         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
335         Pettersen).
336
337 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
338
339         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
340           added all logical operations to gc->function.
341
342 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
343
344         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
345         gtk_widget_size_allocate instead of gtk_widget_queue_resize
346         if the visibility state of a scrollbar changes.
347
348 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
349
350         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
351
352 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
353
354         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
355         gtk_clist_merge and gtk_clist_mergesort. :)
356
357 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
358
359         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
360         `mergesort' -> `my_mergesort'.
361
362 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
363
364         * gtk/gtkenums.h: new enum GtkSortType.
365         
366         * gtk/gtkclist.h:
367         * gtk/gtkclist.c:
368         Added sorting capabilities to GtkCList. New APIs :
369         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
370         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
371         New internal functions : default_compare, merge, mergesort.
372
373         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
374         
375         (gtk_clist_insert): Modified to handle gtk_clist_append and the
376         auto sort flag. Changed the return value from void to gint to
377         return the row number where the element was actually inserted.
378
379         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
380         
381         * gtk/gtkctree.h:
382         * gtk/gtkctree.c:
383         Removed the auto_sort flag, replaced ctree->node_compare with
384         clist->compare all over the place, modified default_compare to
385         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
386         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
387
388         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
389         sorting. The lists can be sorted by a column by clicking the 
390         corresponding title button.
391         
392 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
393
394         * Released GTK+ 1.1.1
395
396 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
397
398         * gtk/gtkctree.h:
399         * gtk/gtkctree.c:
400         (gtk_ctree_find): changed to return a gboolean
401         (gtk_ctree_insert_gnode): new function for recursive insertion of a
402         GNode tree.
403         (gtk_ctree_real_select_recursive): fix for extended selection
404         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
405         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
406
407 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
408
409         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
410         GLib version 1.1.1 is now required at minimum.
411
412         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
413         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
414
415 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
416  
417         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
418           cursor before (possibly) deleting the cursor's text
419           property.
420  
421         * gtk/gtktext.c (correct_cache_delete): More attempts
422           to clean the line-start cache up after inserting
423           a property. Among other things, make sure to
424           fix up text->current_line, since it is used to 
425           refetch the changed lines.
426  
427 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
428
429         * gtk/gtktable.[ch]: Empty rows/columns of the table
430         should not have been marked as being able to shrink.
431         (Fixes problem with shrinking scrollbarless GIMP canvases)
432
433 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
434
435         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
436         function to find a row by its data pointer using a custom
437         comparison function.
438
439 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
440
441         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
442           this fixes a bug when the whole widget is made non-sesitive
443           the buttons weren't redrawn
444
445 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
446
447         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
448         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
449         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
450
451 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
452
453         * gdk/gdkwindow.c (gdk_window_reparent): Change 
454           window_private->parent pointer when reparenting.
455
456 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
457
458         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
459         with the standalone release.
460
461 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
462
463         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
464         (gtk_clist_button_release) (new_column_width): Few fixes for
465         column resize. Store resize column in clist->drag_pos.
466
467 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
468
469         * gtk/gtkctree.h 
470         * gtk/gtkctree.c 
471         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
472         to GtkCTreeNode *node.
473
474         * gtk/gtklist.h : added extended selection mode and auto scrolling.
475         (struct _GtkList): removed unneeded variables timer, button,
476         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
477         Added new variables undo_selection, undo_unselection, last_focus_child,
478         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
479         drag_selection, add_mode.
480  
481         New functions :
482         (gtk_list_extend_selection), (gtk_list_start_selection),
483         (gtk_list_end_selection), (gtk_list_select_all),
484         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
485         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
486         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
487         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
488         
489         * gtk/gtklist.c : 
490         (gtk_list_enter_notify): removed, because auto scrolling now works
491         with gtk_list_motion_notify
492  
493         New functions, needed for auto scrolling :
494         (gtk_list_motion_notify) (gtk_list_move_focus_child)
495  
496         New functions for extended selection support :
497         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
498         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
499         (gtk_list_focus_lost)
500         
501         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
502         function to support auto scrolling, and avoid out-of-sync errors in
503         case auf GTK_SELECTION_BROWSE
504         (gtk_list_focus): modified gtk_container_focus function to avoid out
505         off sync errors in case auf GTK_SELECTION_EXTENDED
506
507         * gtk/gtklistitem.h 
508         * gtk/gtklistitem.c :
509         New signal functions for key binding support :
510         (toggle_focus_row), (select_all), (list_item), (unselect_all)
511         (list_item), (undo_selection), (start_selection), (end_selection)
512         (extend_selection), (scroll_horizontal), (scroll_vertical),
513         (toggle_add_mode)
514         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
515         GDK_KEY_RELEASE_MASK
516         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
517  
518         * gtk/gtkcombo.c :
519         (gtk_combo_popup_button_press):  grab pointer for combo->list
520         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
521         (gtk_combo_list_key_press): take care of which child HAS_GRAB
522         (gtk_comb_init): don't connect combo->button with button_release_event
523
524 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
525
526         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
527
528 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
529
530         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
531         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
532         with horizontal and vertical autoscrolling.
533
534 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
535
536         * gtk/docs/man: new directory
537         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
538
539 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
540
541         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
542         bug
543
544 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
545
546         * docs/gtk_tut.sgml: GtkTree section from
547           David Huggins-Daines <bn711@freenet.carleton.ca>,
548           add a GtkText widget example
549         * examples/text/* example/tree/* : new examples for the
550           GtkTree and GtkText widgets
551         * docs/gtk_tut.sgml: added an appendix to hold complete code
552           examples that aren't in a full form elsewhere in the
553           tutorial (e.g. scribble)
554
555 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
556
557         * Released GTK+ 1.1.0
558
559 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
560
561         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
562         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
563
564 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
565
566         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
567         values are looked up.
568
569         * gtk/gtktypeutils.h:
570         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
571         gtk_type_enums_find_value to lookup enum values.
572
573         * gtk/gtkctree.h: 
574         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
575         GtkCTreeExpansionType. fixed signal creations to pass the enum
576         types not just the base type GTK_TYPE_ENUM.
577
578         * gtk/gtkclist.h: 
579         * gtk/gtkclist.c: fixed signal creations to pass the real enum
580         types not just the base type GTK_TYPE_ENUM.
581
582 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
583
584         * gtk/testgtk.c : 
585         Began cleanup, e.g. use gtk_widget_show_all instead of many 
586         gtk_widget_show's. Completely rewrote the button box sample
587         (only one window now). Removed "miscellaneous" button.
588
589 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
590
591         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
592         Fixed wrong allocation for GTK_BUTTONBOX_END.
593         (allocation->x  =>  allocation->y)
594
595 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
596
597         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
598         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
599         
600         * gtk/gtkctree.c (real_tree_select): added check to avoid double
601         selected rows
602         (gtk_ctree_button_press)
603         (gtk_ctree_button_release): fix for pointer grab
604
605 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
606
607         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
608         Fixed initialization problem - dirty memory could cause problems.
609         Also checked that bitmapped fonts can be scaled when showing the
610         available sizes.
611
612 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
613
614         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
615         (gtk_ctree_sort_recursive): test for node != NULL
616         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
617         (gtk_ctree_last) : added sanity checks
618         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
619
620 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
621
622         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
623
624 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
625
626         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
627
628 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
629
630         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
631         to check out binding priorities. someone should really write
632         gtkrc-mode for emacs.
633
634         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
635         * gtk/testgtk.c (main): and move it here ;). this test says something
636         on release of C-9. (this works only if the mouse pointer is on a
637         spinbutton and there is no focus widget).
638
639         * gtk/gtkrc.h:
640         * gtk/gtkrc.c:
641         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
642         gtk_rc_parse_priority to parse path priority types.
643         export rc tokens.
644         feature binding parsing.
645
646 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
647
648         * gtk/gtkbindings.h: 
649         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
650         feature binding parsing in rc files.
651         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
652         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
653         order the bindings with lowest priority first.
654
655 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
656
657         * gdk/gdkrgb.c: actually builds and runs properly on big
658         endian machines now, because we #include config.h. Also
659         fixed up a compile error in the WORDS_BIGENDIAN case in
660         gdk_rgb_convert_565_gray. I made the fix by looking at
661         patterns in the other code; Raph can you verify this?
662
663         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
664         warnings
665
666 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
667
668         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
669         (tree_toggle_expansion) (real_select/unselect_row)
670         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
671
672 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
673
674         * gtk/gtktext.c (new_text_property): We free things from
675         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
676
677         * Fix up line start cache when splitting a property
678         during an insert.
679
680 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
681
682         * gtk/gtkwidget.c: restauration => restoration
683
684 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
685
686         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
687         hasn't been created yet, don't do the lookup.
688
689 1998-07-20  Raph Levien  <raph@acm.org>
690
691         * gdk/gdkrgb.c: More cleanups in the config process.
692
693 1998-07-20  Raph Levien  <raph@acm.org>
694
695         * gdkrgb.c: Fixed minor config bug preventing big-endian
696         architectures from working.
697
698 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
699
700         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
701         activity indicator. It is settable now as a fraction of the
702         total width/height using gtk_progress_bar_set_activity_blocks.
703         Renamed gtk_progress_bar_set_number_of_blocks to
704         gtk_progress_bar_set_discrete_blocks.
705
706 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
707
708         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
709         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
710         tree to specified depth
711         (gtk_ctree_expand_to_depth): expand tree to specified depth
712         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
713
714 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
715
716         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
717         of GTK_CLIST_ADD_MOD
718         * gtk/testgtk.c (add1000_clist): changed pixmap
719
720 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
721
722         * gtk/gtkmain.h: 
723         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
724
725         * gtk/gtktypeutils.h:
726         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
727
728 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
729
730         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
731         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
732         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
733         CHILD_ARG_POSITION
734         (gtk_notebook_reorder_child): new funktion to change position of a
735         notebook page
736         (gtk_notebook_draw_arrow): draw left/right arrow with
737         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
738
739         * gtk/gtkstyle.c (gtk_default_draw_arrow):
740         added GTK_SHADOW_ETCHED_IN/OUT
741
742 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
743
744         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
745           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
746         Introduced generic GtkProgress widget. Derived GtkProgressBar from
747         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
748
749 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
750
751         * gtk/gtktypeutils.h
752         * gtk/gtkitemfactory.h: explicitly specify void in prototype
753
754 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
755
756         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
757         of list
758
759 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
760
761         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
762         sropped the approach of copying all signal specific data into a
763         GtkHandlerInfo structure. we rather keep the signal data on the stack
764         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
765         avoids multiple lookups of the signal pointer and works savely together
766         with destroy notifiers of handlers.
767
768         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
769         someone destroys the entry on the ::activate signal.
770
771 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
772
773         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
774         instead of ypad (typo).
775         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
776         border around the allocation).
777         (gtk_arrow_init): the static requisition needs to be setup in this
778         function rather than gtk_widget_new(), so arrow creation works without
779         the gtk_arrow_new() constructing.
780         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
781
782         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
783         implementation for GtkWidget::size_request, so size requisition for
784         simple statically sized widgets like GtkArrow works.
785
786 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
787
788         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
789         prepend -I@libdir@/glib/include anymore, since glib-config handles
790         it; --libs strips out redundant -L<path>'s properly (there was
791         code in there to do it before, but it didn't work)
792
793 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
794
795         * gtk/gtknotebook.h: 
796         * gtk/gtknotebook.c: signdness corrections all ove the place.
797         implementation of object arguments: GtkNotebook::enable_popup,
798         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
799         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
800         begun implementation of child args, we have GtkNotebook::tab_label, but
801         GtkNotebook::menu_label and GtkNotebook::position still lack the
802         implementation.
803         (gtk_notebook_remove_page):
804         (gtk_notebook_current_page): allow negative indices (-1) as alias for
805         the last page.
806
807         * gtk/gtkentry.h:
808         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
809         arguments GtkEntry::max_length and GtkEntry::visibility.
810         (gtk_entry_adjust_scroll): queue a redraw.
811
812         * gtk/gtkeditable.h:
813         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
814         object arguments GtkEditable::text_position and GtkEditable::editable.
815         new (action) signal GtkEditable::set_editable.
816         provide a default handler for GtkEditable::changed that queues a redraw.
817
818         * gtk/gtktext.h: 
819         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
820         set_editable.
821
822 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
823
824         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
825         case of drag_target == NULL
826         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
827         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
828         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
829         gtk_dir_selection_file_button): fix due to changes in clist's
830         select_row signal.
831
832 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
833
834         * gtk/gtkwidget.h:
835         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
836         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
837         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
838         to be gint16s rather than guint16s, since that's what the code expected
839         (for a long time actually).
840
841         * gtk/gtkviewport.c:
842         added support for object arguments: GtkViewport::shadow_type,
843         GtkViewport::vadjustment and GtkViewport::hadjustment.
844         (gtk_viewport_add): chain gtk_bin_add.
845
846         * gtk/gtkscrolledwindow.c: 
847         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
848         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
849
850         * gtk/gtkadjustment.h: 
851         * gtk/gtkadjustment.c: 
852         * gtk/gtkctree.h: 
853         * gtk/gtkclist.h: 
854         * gtk/gtkctree.c: 
855         * gtk/gtkclist.c:
856         * gtk/gtkscrolledwindow.h:
857         * gtk/gtkscrolledwindow.c:
858         * gtk/gtkviewport.h:
859         * gtk/gtkviewport.c:
860         GtkType and macro fixups.
861
862 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
863
864         * gtk/gtkctree.h :
865         * gtk/gtkctree.c :
866         Added focus handling, horizontal and vertical autoscrolling,
867         extended Selection Mode, key bindings
868         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
869         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
870         Removed gtk_ctree_clear.
871         
872         * gtk/gtkclist.h :
873         * gtk/gtkclist.c : 
874         Added focus handling, horizontal and vertical autoscrolling,
875         extended Selection Mode, key bindings
876
877 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
878
879         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
880         source tree. For more information on GdkRgb, please see:
881         http://www.levien.com/gdkrgb/
882
883         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
884         bothers me slightly that the feature is in gdk, and this file is
885         in gtk, but it's probably ok.
886
887         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
888
889         * gdk/gdkrgb.c:
890         * gdk/gdkrgb.h: Added this module.
891
892         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
893
894         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
895
896 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
897
898         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
899         to this function. it needs to relookup the signal multiple times.
900         this fixes spurious segfaults that could show up with signal intensive
901         code, when classes are created during a pending emission (which is
902         normal case).
903
904 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
905
906         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
907         child if it isn't a label.
908
909 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
910
911         * gtk/gtkdialog.h: 
912         * gtk/gtkseparator.h: 
913         * gtk/gtkhseparator.h: 
914         * gtk/gtkvseparator.h: macro and GtkType fixups.
915
916 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
917
918         * gtk/testgtk.c (create_cursors): display the current cursor name.
919
920         * gtk/gtktypeutils.h: 
921         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
922         the fundamental type definition. the GtkArg union now only covers
923         the required storage types for argument values. adapted the GTK_VALUE_*
924         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
925
926         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
927         code, fixed int/float collection. fixed a bug in the sanity checking
928         code for GtkObjects.
929
930         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
931         argument collection code.
932
933         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
934         macros when distinguishing the return type.
935
936 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
937
938         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
939           is not NULL before trying to g_list_remove the child. A patch
940           from Michael Lausch.
941
942 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
943
944         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
945         collection (always casted to doubles upon argument passing).
946
947 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
948
949         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
950         object_init_func for derived objects with the object's ->klass field
951         still pointing to the corresponding base class, otherwise overridden
952         class functions could get called with partly-initialized objects.
953         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
954
955 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
956
957         * gtk/gtkobject.h:
958         * gtk/gtkobject.c:
959         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
960
961         * gtk/gtkcontainer.h:
962         * gtk/gtkcontainer.c:
963         (gtk_container_child_arg_get_info): new function which wraps
964         gtk_arg_get_info().
965
966 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
967
968         * gtk/gtkcontainer.c:
969         (gtk_container_arg_get): 
970         (gtk_container_arg_set): 
971         * gtk/gtkobject.c:
972         (gtk_object_arg_set): 
973         (gtk_object_arg_get):
974         strictly check for the associated get/set arg functions. if an
975         arg is readable or writable, the associated class functions *must*
976         be provided.
977
978 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
979
980         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
981         padding into account if there is an accelerator.
982
983 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
984
985         * gtk/gtkcontainer.c:
986         (gtk_container_add_with_args): collect the arguments with
987         gtk_container_child_args_collect, not through gtk_object_args_collect.
988         (gtk_container_child_set): likewise.
989
990 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
991
992         * gtk/gtktypeutils.h: 
993         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
994         which is derived from GTK_TYPE_STRING.
995
996         * gtk/gtkbindings.c: reworked the argument type handling.
997
998 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
999
1000         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
1001           so that it seems to allow normal operation in those modes,
1002           although you will only see black  (GIMP toolbar now pops up,
1003           just don't create a new image and GIMP now works in 4 bit.)
1004
1005 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1006
1007         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
1008           array, which was too low (?)
1009
1010 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
1011
1012         * gtk/gtkcontainer.h: 
1013         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
1014         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
1015         we now export a new function gtk_container_child_args_collect().
1016         for consistency with the object arguments, a few functions got renamed:
1017         gtk_container_child_arg_get -> gtk_container_child_get,
1018         gtk_container_child_arg_set -> gtk_container_child_set,
1019         gtk_container_child_arg_getv -> gtk_container_child_getv,
1020         gtk_container_child_arg_setv -> gtk_container_child_setv,
1021         gtk_container_add_with_argv -> gtk_container_addv.
1022         note, gtk_container_add_with_args() remained, because its equivalent
1023         would be gtk_container_add(,, ...) which would break all existing code.
1024         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
1025         we expect the `arg_name' argument to be a const static string now.
1026         (gtk_container_get_child_arg_type): function removed.
1027
1028 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
1029
1030         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
1031         this is a static inline function that collects command line arguments
1032         from a va_list. this file can just be included in all places that
1033         need this functionality.
1034
1035         * gtk/gtkarg.h: 
1036         * gtk/gtkarg.c: new files which implement most of the argument
1037         handling stuff from gtkobject.c. also collected a few more
1038         gtk_arg_* utility functions from else places.
1039
1040         * gtk/gtkobject.h: 
1041         * gtk/gtkobject.c: moved most of the argument handling code into
1042         gtkarg.c. we now export gtk_object_args_collect() as a non-public
1043         method with a blind va_list pointer.
1044         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
1045         const static string now.
1046         (gtk_object_get_arg_type): function got removed.
1047
1048         * gtk/gtkwidget.c: 
1049         (gtk_widget_set): 
1050         (gtk_widget_new): adaptions for gtk_object_args_collect().
1051
1052         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
1053         fundamental type name so as to have a valid prefix, e.g. "bool"->
1054         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
1055         though that should probably be something like GtkNone since the
1056         type itself is called GTK_TYPE_NONE.
1057         even the internal type names need to avoid name clashes and must live
1058         in their own namespace, several code portions rely on that.
1059         we should relly have typedefs such as typedef gchar* GtkString; so the
1060         fundamental type names can be used for code dumpers just like with all
1061         the Gtk/Gdk types.
1062
1063 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
1064
1065         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
1066         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
1067         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
1068         (GTK_RELIEF_HALF).
1069         (gtk_button_paint): set the background for prelighted buttons with
1070         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
1071         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
1072         the shadow type (otherwise we get strange shadows for coloured buttons).
1073         (gtk_button_set_relief): queue a redraw after changing
1074         the relief.
1075         (gtk_button_class_init): 
1076         (gtk_button_set_arg): 
1077         (gtk_button_get_arg): added object argument "GtkButton::relief".
1078
1079         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
1080
1081 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
1082
1083         * gtk/gtkbutton.h:
1084         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
1085         GTK_BIN (button)->child to button->child to keep source compatibility.
1086
1087         * gtk/gtkoptionmenu.c:
1088         * gtk/gtkclist.c:
1089         * gtkcheckbutton.c: don't refer to button->child, but
1090         GTK_BIN (button)->child instead.
1091
1092 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
1093
1094         * docs/gtkfaq.sgml: update anon CVS info
1095
1096 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
1097
1098         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
1099         functions.
1100
1101         * gdk/gdkwindow.c:
1102         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
1103         to XFree() calls.
1104
1105 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1106
1107         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
1108         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
1109
1110 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
1111
1112         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
1113
1114 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
1115
1116         * gtk/gtkwidget.h:
1117         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
1118
1119         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
1120         error that prevented signal to entry addition for signals with
1121         parameters.
1122
1123 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
1124
1125         * ltconfig: fix for properly detecting shared lib support on
1126         SunPro cc (taken from libtool 1.2.a)
1127
1128 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
1129
1130         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
1131
1132 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
1133
1134         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
1135         rc set pattern is favoured, this is needed for overriding of style
1136         patterns with subsequently parsed rc files.
1137
1138 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
1139
1140         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
1141         error messages.
1142
1143 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
1144
1145         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
1146         modifier as well.
1147         (gtk_accelerator_name): add "<Release>" to the accelerator name if
1148         neccessary.
1149
1150         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
1151         account.
1152
1153         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
1154         default handler for key-release events, which checks for activation
1155         of GDK_RELEASE_MASK key bindings.
1156
1157         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
1158
1159 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
1160
1161         * gtk/gtkarrow.h: GtkType and macro fixups.
1162         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
1163         "GtkArrow::shadow_type".
1164
1165 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
1166
1167         * gtk/gtkalignment.h:
1168         * gtk/gtkbin.h: GtkType and macro fixups.
1169         
1170         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
1171         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
1172         GtkAlignment::xscale, GtkAlignment::yscale.
1173
1174 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
1175
1176         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
1177         fucntions from all parent types upon class initialization.
1178
1179         * gtk/gtkcontainer.c:
1180         (gtk_container_get_type): announce gtk_container_base_class_init to
1181         the type system.
1182         (gtk_container_base_class_init): new function to feature base class
1183         initialization.
1184         (gtk_container_get_child_arg): 
1185         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
1186         and set_child_arg methods of the class indicated through the argument
1187         name.
1188
1189         * gtk/gtkobject.c:
1190         (gtk_object_base_class_init): new function to feature base class
1191         initialization.
1192         (gtk_object_init_type): announce gtk_object_base_class_init to the type
1193         system.
1194         (gtk_object_class_init): setup the get_arg and set_arg pointers for
1195         GtkObjectClass.
1196         (gtk_object_setv): 
1197         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
1198         instead of bothering the type system with this.
1199
1200         * gtk/gtkaccellabel.c: 
1201         * gtk/gtkbutton.c: 
1202         * gtk/gtkradiobutton.c: 
1203         * gtk/gtktable.c:
1204         * gtk/gtktogglebutton.c: 
1205         * gtk/gtktipsquery.c: 
1206         * gtk/gtkbox.c: 
1207         * gtk/gtkpacker.c: 
1208         * gtk/gtkwidget.c: 
1209         * gtk/gtkwindow.c: 
1210         * gtk/gtkframe.c: 
1211         * gtk/gtkmisc.c:
1212         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
1213         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
1214         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
1215         arg functions to take a GtkObject argument.
1216
1217         gtk/gtkadjustment.c:
1218         gtk/gtkalignment.c:
1219         gtk/gtkarrow.c:
1220         gtk/gtkaspectframe.c:
1221         gtk/gtkbbox.c:
1222         gtk/gtkbin.c:
1223         gtk/gtkcheckbutton.c:
1224         gtk/gtkcheckmenuitem.c:
1225         gtk/gtkclist.c:
1226         gtk/gtkcolorsel.c:
1227         gtk/gtkcombo.c:
1228         gtk/gtkctree.c:
1229         gtk/gtkcurve.c:
1230         gtk/gtkdata.c:
1231         gtk/gtkdialog.c:
1232         gtk/gtkdrawingarea.c:
1233         gtk/gtkeditable.c:
1234         gtk/gtkentry.c:
1235         gtk/gtkeventbox.c:
1236         gtk/gtkfilesel.c:
1237         gtk/gtkfixed.c:
1238         gtk/gtkfontsel.c:
1239         gtk/gtkgamma.c:
1240         gtk/gtkhandlebox.c:
1241         gtk/gtkhbbox.c:
1242         gtk/gtkhbox.c:
1243         gtk/gtkhpaned.c:
1244         gtk/gtkhruler.c:
1245         gtk/gtkhscale.c:
1246         gtk/gtkhscrollbar.c:
1247         gtk/gtkhseparator.c:
1248         gtk/gtkimage.c:
1249         gtk/gtkinputdialog.c:
1250         gtk/gtkitem.c:
1251         gtk/gtkitemfactory.c:
1252         gtk/gtklist.c:
1253         gtk/gtklistitem.c:
1254         gtk/gtkmenu.c:
1255         gtk/gtkmenubar.c:
1256         gtk/gtkmenuitem.c:
1257         gtk/gtkmenushell.c:
1258         gtk/gtknotebook.c:
1259         gtk/gtkoptionmenu.c:
1260         gtk/gtkpaned.c:
1261         gtk/gtkpixmap.c:
1262         gtk/gtkpreview.c:
1263         gtk/gtkprogressbar.c:
1264         gtk/gtkradiomenuitem.c:
1265         gtk/gtkrange.c:
1266         gtk/gtkruler.c:
1267         gtk/gtkscale.c:
1268         gtk/gtkscrollbar.c:
1269         gtk/gtkscrolledwindow.c:
1270         gtk/gtkseparator.c:
1271         gtk/gtkspinbutton.c:
1272         gtk/gtkstatusbar.c:
1273         gtk/gtktext.c:
1274         gtk/gtktoolbar.c:
1275         gtk/gtktooltips.c:
1276         gtk/gtktree.c:
1277         gtk/gtktreeitem.c:
1278         gtk/gtkvbbox.c:
1279         gtk/gtkvbox.c:
1280         gtk/gtkviewport.c:
1281         gtk/gtkvpaned.c:
1282         gtk/gtkvruler.c:
1283         gtk/gtkvscale.c:
1284         gtk/gtkvscrollbar.c:
1285         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
1286         match the modified GtkTypeInfo structure.
1287
1288 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
1289
1290         * gtk/testgtk.c: use rand() instead of random() for portability
1291
1292 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
1293
1294         * configure.in
1295         * acconfig.h
1296         * gdk/gdk.c: use native Xlib XConvertCase if it's available
1297
1298 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
1299
1300         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
1301         XConvertCase() functionality from X11R6 on X11R5 systems.
1302
1303 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
1304
1305         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
1306         gdk_string_height, gdk_char_height to retrieve the exact
1307         height of a text.
1308
1309 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
1310
1311         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
1312           by Stefan Mars <mars@lysator.liu.se>
1313         * examples/clist/clist.c examples/clist/Makefile: example code
1314           for GtkCList widget from the Tutorial
1315
1316 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
1317
1318         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
1319         if the container is not visible, we might be a toplevel! this holds
1320         for all other base container implementations as well, that are
1321         candidates to derive toplevels from. in general the resizing code will
1322         care about visibility itself.
1323         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
1324         * gtk/gtkbox.c (gtk_box_remove): likewise.
1325
1326         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
1327         gtk_window_set_hints(), since we haven't calculated the new position
1328         yet.
1329
1330         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
1331         *mask are alway initialized in a sane way, regardless of the return
1332         value.
1333
1334 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
1335
1336         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
1337         to gtk_container_child_arg_setv, but takes a variable argument list.
1338         new function gtk_container_get_child_arg_type, which is needed by
1339         gtk_object_collect_args.
1340
1341         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
1342         take a function pointer to figure the argument type.
1343         adapted callers to pass gtk_object_get_arg_type.
1344         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
1345         gtk_object_get_arg_type..
1346
1347         * gtk/gtkpacker.h: 
1348         * gtk/gtkpacker.c:
1349         (gtk_packer_reorder_child): new function to change the packing order
1350         of a child.
1351         (gtk_packer_size_request): 
1352         (gtk_packer_size_allocate): take container->border_width into acount.
1353
1354         * gtk/gtkpacker.c: implemented widget arguments:
1355         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
1356         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
1357         implemented child arguments:
1358         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
1359         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
1360         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
1361         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
1362
1363         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
1364         not the alignment.
1365
1366         * gtk/gtkeventbox.h:
1367         * gtk/gtkeventbox.c: GtkType and macro fixups.
1368
1369         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
1370         sensitivity of an entry.
1371
1372         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
1373         for insensitive base and text.
1374
1375         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
1376         widget state dependent.
1377         (gtk_entry_style_set): likewise.
1378         (gtk_entry_state_changed): set background color on state changes.
1379         (gtk_entry_draw_text): for non selected text, use state dependent
1380         colors.
1381
1382         * gtk/gtktogglebutton.c: support for widget arguments
1383         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
1384
1385 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
1386
1387         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
1388         code for 1.0.x-like parameters. Changed internal interface of
1389         gtk_spin_button_real_spin. Several fixes to avoid emission of
1390         "value_changed" where possible.
1391
1392 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
1393
1394         * gtk-boxed.defs: s/GkWidget/GtkWidget/
1395
1396 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
1397
1398         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
1399         to select the resize_mode for the idle-labels container.
1400
1401         * gtk/gtkframe.h: 
1402         * gtk/gtkframe.c: GtkType and macro corrections.
1403
1404         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
1405         support widget argument "GtkRadioButton::group".
1406
1407 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
1408
1409         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
1410         unconditionally if resize_mode has changed.
1411
1412         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
1413         GTK_RESIZE_QUEUE on the scrolled window.
1414         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
1415
1416 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
1417
1418         * gtk/gtkcontainer.h:
1419         * gtk/gtkcontainer.c:
1420         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
1421         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
1422         (gtk_container_queue_resize): new function to queue a container for
1423         a *size* reallocation (doesn't affect its position, and thus its
1424         parent is left untouched usually).
1425         (gtk_container_get_resize_container): new function to retrive the next
1426         most resize container which is not itself queued for a resize.
1427         (gtk_container_idle_sizer): new function to carefully process the
1428         container_resize_queue since it can change during invokation of
1429         gtk_container_check_resize().
1430         (gtk_container_resize_children): total rework of this function to
1431         properly handle resize containers. makes a lot of assumptions whitch
1432         are stated in the comments.
1433
1434         * gtk/gtkcontainer.c:
1435         (gtk_container_real_check_resize): only requeue ourselves if we are not
1436         a resize container.
1437         (gtk_container_clear_resize_widgets): care for automatic deletion of our
1438         resize_widgets list on size_allocate through a handler connection.
1439
1440         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
1441         focus and default widget of a window, so to take the burden from
1442         gtk_widget_unparent.
1443
1444         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
1445         to be clever, but actually messed up the resize_children logic and
1446         caused unneccessary allocations on its whole branch. besides this,
1447         it messed up the display by not invoking a redraw after the allocation.
1448
1449         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
1450         that it is the child again that is queued for a resize.
1451         (gtk_table_attach): likewise.
1452         (gtk_table_remove): likewise.
1453
1454 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1455
1456         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
1457         gtk_entry_adjust_scroll.  Required if you change the cursor
1458         position and want to sync it up with your code (Midnight Commander
1459         gtk front end needs this).
1460
1461         * gtk/gtktable.c: Deal with tables that have size 0, 0.
1462
1463 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
1464
1465         * examples/README.1ST: new file to explain how the
1466           code examples should be extracted from the tutorial.
1467
1468 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
1469
1470         * gtk/gtkctree.c (draw_row): added new "line style"
1471         GTK_CTREE_LINES_TABBED 
1472         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
1473         search the glist pointer of an GtkCTreeRow
1474
1475 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
1476  
1477         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
1478         from, and clean up, the dependencies.  Generate to intermediate
1479         files to prevent problems with Ctrl-C.
1480
1481         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
1482
1483 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
1484
1485         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
1486         - Bug fix for precision problem causing occasional double emission 
1487           of "value_changed" signal (hopefully works now).
1488         - API change (should be binary compatible) : 
1489           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
1490           Modified cursor example appropriately.
1491           To spin by something other than step_/page_increment, use
1492           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
1493         - Made GTK_SHADOW_NONE the default. ;)
1494         - Fixed casting of GtkAdjustment* to GtkWidget* in
1495           gtk_spin_button_value_changed.
1496
1497 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
1498
1499         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
1500         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
1501         resize widget list before queuing the container for a new reize.
1502         (gtk_container_need_resize): changed return value to FALSE, since this
1503         used to indicate that no further resizes are needed.
1504         (gtk_container_set_arg): 
1505         (gtk_container_get_arg): 
1506         (gtk_container_class_init): implemented GtkContainer::resize_mode
1507         argument.
1508
1509         (gtk_container_resize_children): when we walk up the tree of a resize
1510         widget we need to stop if we are the current parent.
1511
1512         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
1513         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
1514         (gtk_widget_hide_all): retrive the toplevel widget from via
1515         gtk_widget_get_resize_container().
1516
1517 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
1518
1519         * gtk/gtklist.c (gtk_list_button_press): Only respond
1520           to selection with button 1. This allows context-sensitive
1521           menus to work correctly.
1522
1523 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
1524
1525         * gtk/gtkaccelgroup.c: 
1526         * gtk/gtkbindings.c: 
1527         * gtk/gtkcontainer.c:
1528         * gtk/gtkitemfactory.c:
1529         * gtk/gtkobject.c: 
1530         * gtk/gtksignal.c:
1531         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
1532         g_quark_from_static_string calls to save memory.
1533
1534         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
1535         function _after_ the new data has been setup.
1536         minor changes to object data functions to feature the GQuark type.
1537
1538 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
1539
1540         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
1541           from argv.
1542
1543 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
1544
1545         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
1546           to be more readable perl, to spit out stuff that looks
1547           more like readable C, and to pipe output through indent
1548           so output looks a lot like readable C. No functional
1549           changes.
1550
1551 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
1552
1553         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
1554           necessary when switching to a masked pixmap. (Based on a patch
1555           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
1556
1557 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
1558
1559         * gtk/gtkeditable.[ch]: Added action signals for keyboard
1560           bindings. (move_cursor, kill_word, etc, etc, etc). 
1561
1562           removed the time argument from
1563           gtk_editable_cut/copy/paste_clipboard (source but not
1564           binary incompatible...) Instead get time from
1565           gtk_get_current_event ().
1566         
1567         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
1568           signals.
1569
1570 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
1571
1572         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
1573
1574         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
1575              parent class to GtkNotebookClass when splitting the widget in
1576              two.  Also updated some comments.
1577
1578         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
1579                button without a font selected.
1580
1581              Fixed bug in set_font_name - I hadn't updated the code to
1582                search for the style in the font_style clist - it was
1583                still assuming the style row was equal to its index,
1584                but it isn't any more.
1585         
1586              Changed 'Reset' button on filter page to 'Clear Filter'.
1587              Deleted old code relating to the old 'Filter Fonts' toggle
1588              Updated some comments.
1589              Cleared 'Actual Fontname' if no font is set.
1590
1591         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
1592              destroying the GtkFontSelection instead of the
1593              GtkFontSelectionDialog.
1594
1595 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
1596
1597         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
1598           flag to make all warnings fatal errors.
1599
1600         * gtk/testthreads.c: moved <pthreads.h> include inside 
1601           #ifdef USE_PTHREADS
1602
1603 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
1604
1605         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
1606           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
1607
1608         - Added new function gtk_container_set_resize_mode() for
1609           fine-grained control of where resize-queueing is done.
1610
1611         - Removed GtkContainer::need_resize and GtkWindow::move_resize
1612         - Added GtkContainer::check_resize to replace need_resize.
1613
1614         - Added function gtk_container_check_resize() to trigger
1615           queued resizes, and gtk_container_resize_children() to
1616           Figure which children need to be size-allocated. (logic
1617           moved from gtkwindow.c)
1618
1619         - Reorganized code in gtkwindow.c
1620         
1621         - Set the resize-mode for viewports so that resizes within
1622           a viewport don't propagate out of it. 
1623         
1624 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1625
1626         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
1627
1628         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
1629         g_return_val_if_fail, because the function *does* return a value.
1630
1631 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
1632
1633         * gtk/gtkaccellabel.h:
1634         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
1635         request the size of the accelerator portion of an accel label.
1636         (gtk_accel_label_size_request): don't request for the accelerators size.
1637         (gtk_accel_label_expose_event): only draw the accelerator if we got
1638         enough extra space.
1639
1640         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
1641         width from children.
1642
1643         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
1644         object (after removal has been requested) check if there is still an
1645         accelerator remaining to avoid adding two accelerators on an object.
1646         this can happen for locked accelerators (or accelerator-frozen widgets).
1647         (gtk_menu_size_request): feature childrens accelerator width in size
1648         requests.
1649
1650         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
1651         gtk_widget_freeze_accelerators() for dynamically created menu items.
1652
1653         * gtk/gtksignal.h: 
1654         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
1655         which will return a handler_id > 0 if the specified function is pending
1656         for `signal_id'.
1657
1658         * gtk/gtkwidget.h:
1659         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
1660         a signal handler function to stop accelerator addition.
1661         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
1662         which will prevent (undo) any accelerators from being added to or
1663         removed from a widget.
1664
1665 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
1666
1667         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
1668         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
1669         acceleration, new API gtk_spin_button_set_snap_to_ticks.
1670
1671 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
1672
1673         * gdk/gdk.h:
1674         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
1675         the current GdkWindow the pointer is on if there is any.
1676         
1677         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
1678         and one column, so we don't construction logic at all. changed a few
1679         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
1680         unsigned int wraps.
1681
1682         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
1683         portion, added an additional check for parent != widget.
1684
1685         * more GtkType and macro fixups.
1686
1687 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1688
1689         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
1690         "clip" parameter, which is the clipping rectangle to use.  This
1691         eliminates the extremely annoying flicker when exposing parts of
1692         the handlebox.
1693
1694 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
1695
1696         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
1697         resizing
1698
1699 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
1700
1701         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
1702         != 0 on the argument.
1703
1704         * gtk/gtktable.h: 
1705         * gtk/gtktable.c: new function gtk_table_resize() which allowes
1706         shrinking and expanding of tables. implementation of widget arguments
1707         and child arguments. many signedness corrections.
1708
1709 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
1710
1711         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
1712         not only the child, otherwise we might end up taking away other
1713         childrens space after the resize.
1714
1715         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
1716         an unknown menu path from any source, that path must always be flagged
1717         as "modified", since we don't really know whether it has its default
1718         value or not.
1719
1720         * gtk/gtktree.c:
1721         * gtk/gtkpacker.c:
1722         * gtk/gtknotebook.c:
1723         * gtk/gtkmenushell.c:
1724         * gtk/gtklist.c:
1725         * gtk/gtkpaned.c:
1726         * gtk/gtkfixed.c: 
1727         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
1728
1729         * gtk/gtkbox.h: 
1730         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
1731         arguments. implemented child arguments.
1732
1733         * more GtkType and macro fixups.
1734
1735 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
1736
1737         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
1738
1739         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
1740         and gtk_clist_get_hadjustment.
1741
1742         * gtk/gtkcontainer.c:
1743         implementation of children arguments, new class member functions
1744         (child_type), (get_child_arg) and (set_child_arg) plus a new field
1745         n_child_args.
1746         (gtk_container_child_type): new function which returns the type of a
1747         child that the container expects for its next addition.
1748         (gtk_container_add_child_arg_type): new function to introduce a new
1749         child argument at class creation time.
1750         (gtk_container_query_child_args): new function to query all child
1751         arguments that are supported by a container class.
1752         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
1753         child argument.
1754         (gtk_container_child_arg_setv): new function to set a child argument for
1755         a certain container and child combination.
1756         (gtk_container_add_with_args):
1757         (gtk_container_add_with_argv): new functions to feature addition of a
1758         new child in combination with the setting of certain child arguments.
1759
1760         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
1761         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
1762         this should really be done through class cretion hooks some day.
1763
1764         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
1765         guint : 16.
1766
1767         * gtk/gtkpacker.h:
1768         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
1769         follow the gtk convention for lower case variable names (important
1770         for language wrappers and widget arguments), and made them guint : 16.
1771
1772         * examples/packer/pack.c: adaptions for the case converted GtkPacker
1773         fields.
1774
1775 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
1776
1777         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
1778         change the character pair for single line comments.
1779         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
1780         GtkItemFactoryClass.
1781         (gtk_item_factory_parse_rc_string): likewise.
1782
1783 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
1784
1785         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
1786         lists from the klass structure to a static structure
1787         in gtkfontsel.c; cleans up global the namespace.
1788
1789 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
1790
1791         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
1792         bug with /*< skip >*/ and remove warning.
1793         
1794 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
1795
1796         * gtk/Makefile.am: Made the gtkmarshal.* generation
1797         rules maintainer-only.
1798
1799 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
1800
1801         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
1802           gtk/Makefile.am gtk/makenums.pl 
1803
1804         Removed out the G_ENUM/FLAGS mechanism in favor
1805         of a perl script that parses the standard headers
1806         (with occasional /*< nick=foo >*/ style overrides)
1807         and extracts the enumerations.
1808
1809           gtk/maketypes.awk: Small improvments to the
1810           translation of names. (Avoid splitting gc into
1811           g_c_.)
1812         
1813 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
1814
1815         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
1816         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
1817         
1818 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
1819
1820         * gtk/gtkentry.c:
1821         - Restored gtk_entry_adjust_scroll to static 
1822         - Changed text positioning code so that we always
1823           display as large a portion of the text as possible.
1824
1825 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
1826
1827         * gtk/gtktext.c (gtk_text_finalize): Free internal
1828         structures of text widget. Also, unreference pixmaps
1829         when unrealizing.
1830         
1831 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
1832
1833         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
1834         3.3.1 bug workaround to number keys starting at 1.
1835
1836 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
1837
1838         * docs/gtk_tut.sgml: Fixed urls for complete example
1839         source for scribble+widget-writing examples.
1840
1841 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
1842
1843         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
1844         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
1845         specs of the form c #abcdef [ more keys ] properly.
1846
1847 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
1848
1849         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
1850         (gtk_spin_button_set_shadow_type):
1851         New API to set the shadow type of the arrow panel.
1852
1853 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
1854
1855         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
1856         code for drawing the child in two places at once. Unfortunately,
1857         not only does it not work anymore (because reparenting has
1858         been fixed), but it also triggers reparent/expose loops
1859         in some cases.
1860
1861         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
1862         an unecessary unrealize.
1863
1864 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
1865
1866         * gdk/gdkwindow.c (gdk_window_reparent): Update the
1867           old and new parents' child window lists properly.
1868
1869 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
1870
1871         * gtk/gtkpacker.h:
1872         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
1873         and GtkSideType, to be consistent with the rest of Gtk's enum
1874         definitions. wrapped the enum definitions with the G_ eunm wrappers.
1875         spelled out the GTK_ANCHOR_* enum values, since single letters don't
1876         work out corectly as nick-names (left the old values as aliases).
1877         some signdness corrections (border-width, spacing), could stand more.
1878
1879 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1880
1881         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
1882           Added gtkpacker
1883
1884         * examples/packer/pack.c, examples/packer/Makefile: Added
1885           gtkpacker example
1886
1887 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
1888
1889         * gtk/gtktext.c (remove_cache_line): Fixed broken
1890         list-removal code.
1891
1892         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
1893         Check bounds before deleting.
1894
1895 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
1896
1897         * autogen.sh: Support ACLOCAL_FLAGS
1898
1899 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
1900
1901         * gtk-config.in: Added missing quotes.
1902
1903 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
1904
1905         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
1906
1907 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
1908
1909         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
1910         G_COMPILED_WITH_DEBUGGING.
1911
1912         * configure.in (fd_set): Explain check better.
1913
1914         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
1915         the version from which gtk+'s libtool forked.  Needed for people
1916         who use post-1.2 alphas of libtool.
1917
1918 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
1919
1920         * glib/* Moved to glib module
1921
1922         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
1923           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
1924
1925           configuration changes for the above:
1926          
1927           - Use AM_PATH_GLIB by default to find glib; also accept
1928             a --with-glib option for using an uninstalled glib.
1929          
1930           - Put --enable-debug information into config.h so
1931             that we rebuild when it changes. (was in glibconfig.h)
1932
1933 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
1934
1935         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
1936
1937         * gtk/gtknotebook.h (struct _GtkNotebookClass):
1938         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
1939         added missing argument (according to Joseph Coleman's bug report)
1940
1941         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
1942         function to fix notebook focus handling
1943         
1944 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
1945
1946         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
1947           glib/gutils.c glib/testglib.c glib/gdataset.c
1948           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
1949           gtk/gtktext.c gtk/gtkbindings.c:
1950
1951          renamed g_const_pointer => gconstpointer
1952
1953 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
1954
1955         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
1956         invoked with (NULL, NULL); (this worked sometime ago).
1957
1958         * gtk/gtktypeutils.h: 
1959         * gtk/gtktypeutils.c: enum and flags type creation can now be done
1960         through gtk_type_register_enum() and gtk_type_register_flags(),
1961         which allow to specify the enum value arrays directly.
1962         the NULL terminated value arrays can be retrived through
1963         gtk_type_enum_get_values() and gtk_type_flags_get_values();
1964         (gtk_type_children_types): new function to query derived types.
1965
1966 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
1967
1968         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
1969         environment to genmarshal.pl.
1970         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
1971         rule), and removed it where not needed (in the dependencies).
1972
1973         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
1974
1975 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
1976
1977         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
1978         was just g_direct_hash.
1979
1980 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
1981
1982         * configure.in: x_libs=, not $x_libs=. Enough said.
1983           (Case only hit for --disable-xshm)
1984         
1985 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
1986
1987         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
1988           when testing for X libraries, don't replace them. Because
1989           the user might have specified the path to the X libraries
1990           themself before running configure.
1991
1992         * examples/**.c: Changed all gpointer * to gpointer
1993         
1994 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1995
1996         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
1997         fleur_cursor field.  Now the cursor is created/destroyed on demand
1998         by the routines that need it.
1999
2000         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
2001         (gtk_handle_box_motion): The fleur cursor is created and destroyed
2002         only when needed.
2003
2004 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
2005
2006         * gtk/gtktypeutils.h: 
2007         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
2008         gtk_enum_set_values to gtk_type_enum_get_values and
2009         gtk_type_enum_set_values respectively, since they are actually type
2010         system features.
2011
2012         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
2013         my last commit. ;)
2014
2015 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
2016
2017         * gtk/gtkselection.h: 
2018         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
2019         gtk_selection_data_free.
2020
2021         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
2022         for "selection_received", which was completely bogus.
2023         * other fixups to gtk_signal_new() calls all over the place.
2024
2025         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
2026         * gtk/gtktypebuiltins_vars.c: type variable implementations.
2027         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
2028         declarations.
2029         * gtk/gtktypebuiltins_evals.c: enum value arrays.
2030         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
2031         gtk.defs.
2032         * gtk/gtk.defs: generated file with scheme syntax for type definitions
2033         of gtk and gdk structures and enums.
2034         * gtk/gtktypeutils.h: 
2035         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
2036         macros anymore (this fixes binary incompatibility with new enum
2037         definitions).
2038
2039         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
2040         key bindings for this widget.
2041         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
2042         handler.
2043
2044         * gtk/gtkobject.h:
2045         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
2046         again. new functions gtk_object_class_user_signal_new () and
2047         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
2048         flag on the signal creation.
2049
2050 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
2051
2052         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
2053
2054 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
2055
2056         * gdk/gdkprivate.h: 
2057         * gdk/gdktypes.h: 
2058         * gtk/gtkprivate.h: 
2059         * gtk/gtkwidget.h: 
2060         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
2061
2062         * reworked enum value array generation code. gtk.defs is a generated
2063         file now.
2064
2065 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
2066
2067         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
2068         check menu items in the compatibility code (this required me to remove
2069         the "<check>" part from the menu item name, grrr).
2070
2071 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
2072
2073         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
2074         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
2075         
2076 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
2077
2078         * gtk/gtkitemfactory.h: 
2079         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
2080         additions to the dumping code to feature GtkPatternSpec.
2081         even found a bug to fix in the original code ;)
2082         
2083 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
2084
2085         * gtk/gtkitemfactory.c: support different types of callbacks, to
2086         maintain existing code.
2087
2088 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
2089
2090         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
2091
2092         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
2093         this should eventually be done by gentypeinfo.el somewhen.
2094         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
2095
2096         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
2097         enum values of an enum type.
2098
2099         * gtk/gtk.defs:
2100         * gtk/gtkcurve.h: 
2101         * gtk/gtkobject.h: 
2102         * gtk/gtkprivate.h: 
2103         * gtk/gtkwidget.h:
2104         * gtk/gtkenums.h: 
2105         brought enum/flags definitions in sync, added a few more enum
2106         definitions for bindings and pattern matching.
2107
2108         * some more macro and GtkType fixups in various places.
2109
2110         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
2111         as a key-release modifier for the binding system.
2112
2113 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
2114
2115         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
2116         was a stale list pointer that is already present in GtkMenuShell.
2117
2118         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
2119         GtkMenuShell::selection_done which is emitted after the menu shell
2120         poped down again and all possible menu items have been activated.
2121
2122 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
2123
2124         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
2125         before activation of the menuitem, so the menu is actually taken off the
2126         screen prior to any menu item activation.
2127
2128         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
2129         for NULL nodes.
2130
2131         * gtk/gtkwidget.h:
2132         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
2133         the emission of the "add-accelerator" signal on a widget. this is
2134         usefull to prevent accelerator installation on certain widgets.
2135
2136         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
2137         labels left justified, by setting their alignment. stop accelerator
2138         installation for the menu items, since we use dynamic menus.
2139
2140 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
2141
2142         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
2143         should *really* use GtkItemFactory. this is only for preserving source
2144         compatibility where possible, use of GtkMenuFactory is deprecated as of
2145         now.
2146
2147         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
2148         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
2149         missed this possibility when i added gtk_object_class_add_user_signal
2150         in late january.
2151
2152         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
2153
2154 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
2155
2156         * gtk/gtkaccelgroup.h: 
2157         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
2158
2159         * gtk/gtkaccellabel.h: 
2160         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
2161         display of the accelerators associated with a certain widget.
2162
2163         * gtk/gtkitemfactory.h: 
2164         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
2165         parsing and accelerator handling.
2166
2167         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
2168         positioning a menu.
2169         (gtk_menu_map): removed the allocation code.
2170         (gtk_menu_size_allocate): care for redrawing of children and resize
2171         our widget->window correctly.
2172         (gtk_menu_key_press): feature the new accelerator groups.
2173
2174         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
2175         submenu if neccessary.
2176
2177         * gtk/gtkmenuitem.c:
2178         * gtk/gtkcheckmenuitem.c:
2179         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
2180         function variants.
2181
2182         * gdk/gdk.c:
2183         (gdk_keyval_from_name): 
2184         (gdk_keyval_name): new functions for keyval<->key-name associations.
2185         (gdk_keyval_to_upper): 
2186         (gdk_keyval_to_lower): 
2187         (gdk_keyval_is_upper): 
2188         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
2189         regards to their cases.
2190
2191 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
2192
2193         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
2194         widget's class path.
2195         (gtk_widget_path): new function to calculate a widget's name path.
2196
2197         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
2198         pattern matching, features reversed pattern matches.
2199
2200 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
2201
2202         * examples/extract.sh, examples/extract.awk:
2203           New files to automagically extract code examples from the
2204           tutorial.
2205
2206 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
2207
2208         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
2209         * gtk/gtkcontainer.c (gtk_container_focus_move):
2210         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
2211
2212 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
2213
2214         * docs/gtk_tut.sgml: minor changes to support auto
2215           extraction of example code
2216
2217 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
2218
2219         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
2220           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
2221
2222 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
2223
2224         * docs/gtk_tut.sgml:
2225           - new section on Events
2226           - change all delete_event callbacks to include
2227             a GdkEvent parameter
2228           - clean up the formatting
2229
2230         * examples - helloworld.c, helloworld2.c, notebook.c,
2231           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
2232           rulers.c, table.c, wheelbarrow.c: change all delete_event
2233            callbacks to include a GdkEvent parameter.
2234
2235 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2236
2237         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
2238         field of crossing events.
2239         (struct _GdkEventCrossing): Added the following fields: time, x,
2240         y, x_root, y_root, mode, focus, state.
2241
2242         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
2243         crossing event structure.
2244
2245         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
2246         changes to the crossing event structure.
2247
2248 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
2249
2250         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
2251
2252 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
2253
2254         * docs/gtk_tut.sgml:
2255            - GtkTooltips, update to current API
2256            - change all 'gpointer *data' to 'gpointer data'
2257            - other minor changes
2258
2259 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
2260
2261         * configure.in (LDFLAGS): Bomb out with a moderately
2262           helpful message if detection of X libraries fails.
2263
2264 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
2265
2266   [ Combination of:
2267      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
2268      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
2269
2270         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
2271           gtk/gtksignal.c gtk/gtktext.c: 
2272
2273           Fixups for warnings from adding const to type of GHashFunc,
2274           GCompareFunc
2275         
2276         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
2277           ansi-warnings fixups.
2278
2279 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
2280
2281         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
2282         Locate child at (border_width,border_width), not
2283         (2*border_width,2*border_width). [ The border is _outside_
2284         widget->window ]
2285         
2286         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
2287           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
2288
2289 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
2290
2291         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
2292         used in gnome-libs
2293
2294 1998-05-22    <sopwith@redhat.com>
2295
2296         * gtk/gtkeventbox.c: Pass size_allocate on to the child
2297         regardless of whether it is visible or not. Also
2298         locate child at (border_width,border_width), not (0,0)
2299
2300 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
2301
2302         * gtk/gtkhandlebox.c: Added style_set handler.
2303
2304 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
2305  [ From: Chris Lahey  <clahey@umich.edu> ]
2306         
2307         * gtk/gtkeditable.c, gtk/gtkeditable.h,
2308           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
2309           and set_position functions to get and set the cursor position.
2310
2311         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
2312           signal status. Make GtkText do user-controlled insertion
2313           and deletion through the Editable widget so that these
2314           signals are properly emitted.
2315
2316         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
2317           display asterisks instead of empty space when visible = FALSE)
2318
2319 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
2320
2321         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
2322         signal.
2323
2324 1998-05-21    <sopwith@redhat.com>
2325
2326         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
2327         custom routine for loading images specified in gtkrc's.
2328
2329 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
2330
2331         * configure.in: Use pthread_attr_init() as a test function,
2332         since most of the rest of -lpthread is macros on DU4.
2333
2334 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
2335
2336         * gtk/gtkcombo.c: implemented completion in the entry.
2337
2338 1998-05-18    <sopwith@moebuis.labs.redhat.com>
2339
2340         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
2341
2342 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
2343
2344         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
2345         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
2346         to be of runtype GTK_RUN_LAST.
2347
2348         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
2349         "need-resize".
2350
2351         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
2352         "widget-selected".
2353
2354 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
2355
2356         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
2357         text retrived from GtkEntry. only intercept the Tab key if there
2358         was some text to complete.
2359
2360 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
2361
2362         Basic thread-awareness:
2363
2364         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
2365
2366         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
2367         gdk_threads_[init/enter/leave] for applications, plus
2368         gdk_threads_wake to wake the mainloop thread out of
2369         the select().
2370
2371         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
2372
2373 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
2374
2375         * gtk/testgtk.c (list_clear): Account for the fact
2376         that gtk_list_clear_items is not inclusive. (Clears
2377         [start, end))
2378
2379 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
2380
2381         * gdk/gdk.c: include gdkkeysyms.h always
2382         
2383
2384 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
2385
2386         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
2387         the visibility_notify_event method and changed method order.
2388
2389 1998-05-14    <sopwith@moebuis.labs.redhat.com>
2390
2391         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
2392
2393 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
2394
2395         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
2396         from Olli Helenius <ollhel@batman.jytol.fi>.
2397
2398         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
2399         freeing types.
2400         (gtk_type_set_chunk_alloc): new function to allow allocation of new
2401         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
2402         thorugh g_malloc).
2403
2404         * gtk/gtkobject.c (gtk_object_finalize): free an object through
2405         gtk_type_free().
2406
2407         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
2408         GtkButtons to 16.
2409         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
2410         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
2411
2412 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
2413
2414         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
2415           GPOINTER_TO_UINT fixes.
2416
2417         * gtk/gtksignal.c: Include <string.h> for memset.
2418
2419 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
2420         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
2421
2422         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
2423         Cleanups, comments and the ability to have rulers with 
2424         a reversed direction.
2425
2426 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
2427
2428         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
2429         that Sopwith missed when changing stat => lstat.
2430
2431 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
2432
2433         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
2434           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
2435         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
2436
2437         * gdk/gdk.c: Print sizeof() results
2438         as g_print("%ld", (glong)sizeof(foo)), to deal with
2439         sizeof() being long on Alpha's.
2440
2441         * gtk/testgtk.c: include <string.h> for strlen
2442
2443 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
2444         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
2445         
2446         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
2447         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
2448
2449         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
2450
2451 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
2452         (From: Christopher James Lahey <clahey@umich.edu>)
2453         
2454         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
2455           gtk/testgtk.c:
2456
2457         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
2458         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
2459         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
2460         the default relief for the toolbars buttons. Added an
2461         toggle for the toolbar test in testgtk.c.
2462
2463 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
2464
2465         * docs/gtk-config.1: Rewritten and hopefully improved.
2466
2467 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
2468
2469         * docs/Makefile.am
2470         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
2471
2472 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2473
2474         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
2475         GtkPreview's visual and colormap, otherwise things can BadMatch.
2476
2477         * gtk/testgtk.c (create_color_preview): 
2478         (create_gray_preview): Removed pushing/popping of visual/colormap
2479         now that GtkPreview does things correctly.
2480
2481         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
2482         (gtk_color_selection_draw_wheel): Pick the style from the correct
2483         place (the colorsel->wheel_area widget) so that the GCs will match
2484         with where we are going to paint to.
2485
2486         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
2487         of visual/colormap now that GtkColorSelection does things the
2488         right way.
2489
2490 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
2491
2492         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
2493         previously unused window->need_resize flag to mark if a window's
2494         descendents changed size while the window was not visible. In this
2495         case, when the window becomes visible, we reallocate everything,
2496         since we didn't keep track of what actually changed.
2497
2498         (Fixes bug where changing the popdown strings of a
2499         combo to something of the same length caused them to
2500         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
2501
2502 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
2503
2504         [security audit by Alan Cox]
2505
2506         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
2507         exceed maximum assumed size.
2508
2509         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
2510         not exceed maximum assumed size.
2511         (gtk_menu_factory_remove): likewise.
2512         (gtk_menu_factory_find_recurse): likewise.
2513
2514 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
2515
2516         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
2517         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
2518         redrawn if that is still neccessary. don't allow queueing of already
2519         destructed objects.
2520         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
2521         widgets which are in the queue can be destroyed safely, handle
2522         requeueing properly.
2523         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
2524         widgets which are in the queue can be destroyed/unrealized safely.
2525
2526 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
2527
2528         * gtkfaq.sgml: add question on multi-threading,
2529           minor URL cleanups.
2530
2531 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
2532
2533         * configure.in (cflags_set): preserve automake CFLAGS.
2534
2535         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
2536         and libgdk-1.1.la. this means we need to change certain portions of
2537         the Makefile.am on major/minor version bumps.
2538
2539         * ltmain.sh: the -release option is not required anymore.
2540         
2541         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
2542         of the first argument to be of type GtkObject. unconditionally compile
2543         this function. removed __GNUC__ dependancy of the gtk_object_ref and
2544         gtk_object_unref macro wrappers for this function.
2545
2546 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
2547
2548         * gtk/gtkobject.h:
2549         * gtk/gtkobject.c:
2550         (gtk_object_data_try_key):
2551         (gtk_object_data_force_id): these are now macros substituting the old
2552         functions. we just use the corresponding g_dataset_* functions for
2553         key->id associations. (this is to assure unique key<->id associations).
2554
2555 1998-05-10  Stefan Jeske  <stefan@gtk.org>
2556
2557         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
2558         to gboolean.
2559
2560         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
2561
2562 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
2563
2564         * configure.in (LIBS): Try to figure out if this
2565         is Digital Unix and we need -std1 to get the
2566         right prototypes.
2567
2568 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
2569
2570         * docs/gtk_tut_it.sgml: update of Italian tutorial
2571           translation from Daniele Canazza <dcanazz@tin.it>
2572
2573 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
2574
2575         * gtk/gtkfeatures.h.in: new file used as template for
2576         * gtk/gtkfeatures.h: new file to define macros indicating newly
2577         introduced features, such as GTK_HAVE_SIGNAL_INIT.
2578
2579         * gtk/gtksignal.c:
2580         (gtk_signal_emitv_by_name):
2581         (gtk_signal_emitv):
2582         new functions to emit signals with an already provided parameter set.
2583         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
2584         (gtk_signal_real_emit): prototype changes, so this functions always
2585         gets its parameters and signal structure as arguments.
2586         (gtk_signal_emit): provide the signal structure and parameter list for
2587         gtk_signal_real_emit.
2588         (gtk_signal_emit_by_name): likewise.
2589
2590 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
2591
2592         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
2593         signal connections through unsetting GTK_CONNECTED.
2594         (gtk_signal_handler_insert): reflect the presence of signal connections
2595         through setting GTK_CONNECTED.
2596         (gtk_signal_real_emit): only check for handler emissions if the object
2597         has the GTK_CONNECTED flag set.
2598         (gtk_signal_handler_pending): don't check for pending handlers if the
2599         GTK_CONNECTED flag is not set for this object.
2600
2601         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
2602         a GtkObject has signal handler connections.
2603
2604         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
2605         set for this object call gtk_signal_handlers_destroy().
2606         
2607         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
2608         multiple processing of macro args.
2609
2610         * gtk/gtktypeutils.c:
2611         * gtk/gtkobject.c:
2612         * gtk/gtkwidget.c:
2613         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
2614
2615 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
2616
2617         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
2618         draw-queue when we are done. 
2619
2620         (gtk_widget_queue_draw/_queu_resize): Always return
2621         FALSE and avoid having two idles at the same time.
2622         
2623 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
2624
2625         * gtk/gtktext.c: Various fixes to make sure cache
2626         lines are freed if line_start_cache doesn't point to the
2627         beginning of the cache.
2628
2629 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
2630
2631         * style_set improvements for GtkText and GtkEntry
2632
2633 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
2634
2635         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
2636         been initialized.
2637
2638 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
2639
2640         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
2641         data chunks through a global object data structure list. unlink
2642         object data before invoking its destroy function.
2643         (gtk_object_finalize): slight modification to allow usage of object
2644         data during object finalization.
2645
2646 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
2647
2648         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
2649         signal names, e.g. "signal-name" is now an alias for "signal_name".
2650         (gtk_signal_handler_new): allocate handlers through a global handler
2651         structure list, that's faster than memchunks.
2652         (gtk_emission_new): allocate emissions through a global emission
2653         structure list, that's faster than memchunks.
2654
2655 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
2656
2657         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
2658
2659         * ltmain.sh: added a new commandline flag -postfix similar to -release,
2660         but will immediately change the library name.
2661
2662         * gdk/Makefile.am:
2663         * gtk/Makefile.am: specify -postfix and -version-info
2664
2665         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
2666         GTK_BINARY_AGE. calculate LT_* variables for libtool.
2667
2668 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2669
2670         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
2671         background (fg_set -> bg_set confusion).
2672
2673 1998-05-06  Stefan Jeske  <stefan@gtk.org>
2674
2675         * gtk/testgtk.c (unselect_all): Removed code that caused an
2676         endless loop.
2677
2678 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
2679
2680         * gtk/gtksignal.c: reimplemented the signal storage system to use a
2681         linear array rather than a hash table.
2682         be carefull *not* to keep any GtkSignal pointers across invokations
2683         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
2684         general code cleanups, made all allocations through memchunks.
2685         (gtk_signal_lookup): we now do the lookup of signals through a key_id
2686         for the signal names to avoid multiple hashing of the signal name on
2687         lookups for the several hirarchy levels of an object.
2688
2689 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
2690
2691         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
2692         to speed things up and remove code duplication.
2693
2694         Reintegrated buffer overflow patches, and added
2695         some extra paranoia.
2696         
2697 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
2698
2699         * gdk/gdk.c (gdk_event_translate): A guint * was
2700         being passed where X expected a Keysym *, and
2701         keysyms are long's on Alpha Linux. This was causing
2702         segfaults in Xlib, apparently because of alignment.
2703         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
2704         
2705 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
2706
2707         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
2708         set GDK_EXPOSURE_MASK for DrawingAreas
2709
2710 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
2711
2712         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
2713         (superceded by RC file reparsing capabilities)
2714
2715         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
2716         events. (Shouldn't be sent to the InputOnly leader, which
2717         it is now by gdk_event_send_clientmessage_toall
2718
2719         * gtk/testgtk.c: Added extra button to rcfiles test
2720         to send out _GDK_READ_RCFILES events.
2721         
2722 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
2723
2724         * gtk/gtkselection.c (gtk_selection_clear): Fixed
2725         reversed conditionals that caused segfault on some
2726         platforms.
2727
2728 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
2729
2730         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
2731         cast to GTK_OBJECT for gtk_object_ref.
2732
2733 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
2734
2735         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
2736         checking for signal initialization in gtksignal.c.
2737
2738         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
2739         a long debugging period ;)
2740
2741 1998-05-05  Stefan Jeske  <stefan@gtk.org>
2742
2743         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
2744         New function to wrap XSetDashes; modified gtkctree.c to use it.
2745
2746 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2747
2748         * configure.in: Added $x_libs in the other_libraries field in the
2749         check for XShapeCombineMask.
2750
2751 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
2752
2753         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
2754         gtk_type_is_a().
2755         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
2756         linear array rather than a hash table. it actually speeded up testgtk
2757         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
2758         pointers across invokations of gtk_type_node_next_and_invalidate() and
2759         therefore gtk_type_unique()!
2760
2761         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
2762         inheritance of a class pointer.
2763         (GTK_OBJECT): modifications for speedups.
2764         (GTK_IS_OBJECT): likewise.
2765         (GTK_OBJECT_CLASS): likewise.
2766         (suggested by owen).
2767
2768         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
2769
2770         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
2771
2772         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
2773         since its derivation changed 4 month ago ;(. showed up with the unique
2774         type name checking code in gtk_type_unique().
2775
2776         * random guint->GtkType and macro fixups.
2777
2778 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
2779
2780         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
2781         Configure events that would result in a negative
2782         size.
2783
2784 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
2785
2786         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
2787         "glibconfig.h" and another about writing another IRC
2788         client.
2789
2790 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
2791
2792         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
2793         parameters to log are doubles. Digital Unix apparently
2794         is missing the argument in its prototype.
2795
2796 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
2797
2798         * gtk/gtklabel.c (gtk_label_state_changed): Don't
2799         force a clear until the widget is actually on
2800         screen.
2801
2802 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
2803
2804         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
2805         to make this consistent with the gtk-1-0 tree.
2806
2807 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
2808
2809         * configure.in acheader.h gdk/gdkwindow.c 
2810         Check for Shape extension both on the client and server
2811         side. (And, more importantly, check for the shape extension
2812         so we may include -lXext even when compiling with --disable-xshm)
2813
2814         Don't set override_redirect on all shaped windows. It isn't
2815         necessary.
2816
2817         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
2818         and foreign windows. Use this to check if we
2819         need to get the colormap from X.
2820
2821 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
2822
2823         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
2824         between the default and the button always in GTK_STATE_NORMAL.
2825
2826         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
2827         callback.
2828
2829 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
2830
2831         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
2832           Fix a buffer overflow on pixmaps that claim to have
2833           more than 31 characters per pixel.
2834
2835           (gdk_pixmap_read_string): Don't wrap around strings longer
2836           than half of address space ;-)
2837
2838         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
2839         that were used for printing integers.
2840
2841         * */* (almost):
2842
2843         Style: All 
2844           int foo () { ... }
2845         changed to
2846           int foo (void) { ... }
2847
2848         Even where there were proper prototypes elsewhere.
2849
2850         * gdk/gxid.c (handle_claim_device): Some extra checks.
2851         It isn't safe against being fed bad X id's, but at
2852         least it should be safe against deleting all your
2853         files.
2854
2855 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
2856
2857         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
2858         to set the adjustments value when there is no current emission.
2859         [ Removed by mutual agreement owt 5/3/1998 ]
2860
2861         * gtk/gtksignal.c: added new functions to retrive the number of
2862         existing emissions for a certain signal.
2863         (gtk_signal_n_emissions): new function.
2864         (gtk_signal_n_emissions_by_name): new function.
2865
2866 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
2867
2868         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
2869         set the current focus_child of a container, does proper referencing and
2870         adjusts the vadjustment/hadjustment associated with the focus widget.
2871
2872         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
2873         containers via gtk_container_set_focus_child.
2874
2875         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
2876         where appropriate.
2877
2878         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
2879         child since not every child removal goes through this function (this
2880         showed up after gtk_container_set_focus_child() started to reference the
2881         focus_child of a container).
2882
2883         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
2884         of a container from gtk_container_remove into this place.
2885
2886 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
2887
2888         * gtk/gtksignal.c: added new functions to operate on intermediate
2889         function pointers. implemented incremental blocking.
2890         (gtk_signal_disconnect_by_func): new function.
2891         (gtk_signal_handler_block_by_func): new function.
2892         (gtk_signal_handler_unblock_by_func): new function
2893
2894 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
2895
2896         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
2897         Always show the scrollbars when the policy is
2898         GTK_POLICY_ALWAYS...
2899
2900 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
2901
2902         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
2903         "value_changed" if we really passed a new value.
2904         (gtk_adjustment_changed): new function to emit the "changed" signal.
2905         (gtk_adjustment_set_value): new function to emit the "value_changed"
2906         signal.
2907
2908 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
2909
2910         * gtk/gtkcombo.c: Further changes to the way the window
2911         is popped up so that it will be compatible with 
2912         auto-scrolling in the future.
2913
2914 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
2915
2916         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
2917         the combo-list is empty since that will cause the combo to operate
2918         on a non existing GtkList window.
2919         (gtk_combo_get_pos): provide the combo list with a usfull default
2920         height if empty.
2921         (gtk_combo_popup_button_press): grab the focus.
2922         (gtk_combo_activate): grab the focus.
2923
2924 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
2925
2926         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
2927         function to reset the RC styles for a heirarchy
2928
2929         Clear the window background if necessary in
2930         gtk_window_style_set.
2931
2932         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
2933         rereads all previously read RC files.
2934
2935         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
2936         (Should it just be called gdk_get_toplevels?)
2937
2938         * gtk/testgtk.c: New test to reload RC files.
2939
2940 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
2941
2942         * gtk/gtkclist.h:
2943         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
2944         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
2945         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
2946         the GTK_ prefix (this solution involved less changes in the
2947         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
2948         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
2949         from lars & stefan to support the derivation of GtkCtree.
2950
2951         * gtkctree.h:
2952         * gtkctree.c:
2953         initial import of a tree widget derived from gtkclist, courtesy
2954         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
2955         it just damn rocks!
2956
2957 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
2958
2959         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
2960         for us.
2961         (gtk_list_insert_items):
2962         (gtk_list_remove_items_internal): 
2963         (gtk_list_clear_items): 
2964         remove a possible pointer grab, we might get thrown into a loop
2965         otherwise.
2966         (gtk_list_button_press): grab the pointer *before* selecting the child,
2967         because selection of items may cause the lists children to change,
2968         resulting in a grab release.
2969         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
2970         children.
2971         (gtk_list_shutdown): remove all children from the list.
2972         (gtk_real_list_unselect_child): 
2973         (gtk_real_list_select_child): *always* put our internal structures into
2974         sane state *before* signal emisions (i.e. list->selection updates prior
2975         to gtk_list_item_[de]select() calls).
2976
2977         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
2978         focused child walks out of the window.
2979         removed CAN_FOCUS for the combo arrow's button since it doesn't react
2980         to keyboard events ("clicked" connection is missing).
2981
2982 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
2983
2984         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
2985         getting colormap for FOREIGN windows to go along with
2986         Raster's fix for visuals.
2987
2988 Merges from gtk-1-0
2989 ===================
2990         
2991 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
2992
2993         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
2994         Check to catch the case when the viewport fits in either
2995         direction or both, instead of flip-flopping infinitely.
2996
2997         Only show/hide the scrollbars once at the end.
2998
2999 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
3000
3001         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
3002         Include the scrollbars in the foreach call.
3003         (gtk-fortier-980405-0.patch; 
3004          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
3005
3006         The notebook widget
3007         really should also include its tabs, but that might cause
3008         problems for programs if they
3009
3010 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
3011
3012         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
3013         resize if the size actually changed. 
3014         (gtk-johannes-980414-0.patch ;  
3015          johannes@nada.kth.se (Johannes Keukelaar) )
3016
3017 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
3018
3019         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3020           ltmain.sh ltconfig config.sub config.guess:
3021
3022         Reverted back to libtool-1.2 (plus minor patches) so as not to
3023         force the issue for everyone else.
3024
3025 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
3026
3027         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3028         Updated to libtool 1.2a.
3029
3030         * gtk/gtkclist.c: Draw the in-between lines with style->base
3031         instead of style->white.
3032         
3033 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
3034
3035         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
3036         Cache the colormap and children of a window locally
3037         instead of fetching them from the server when needed.
3038         Huge performance difference for creating/destroying
3039         windows.
3040
3041         * gtk/gtkstyle.c: Find the depth from the cached
3042         visual, instead of asking the server.
3043
3044         * gtk.m4: Distribute the new version which tries to
3045         figure out what went wrong and give helpful error
3046         messages.
3047
3048         * ltmain.sh ltconfig config.sub config.sh: 
3049         Updated to libtool 1.2a
3050
3051         * gtk/gtktext.c: Fixed a bug where the drawn level
3052         was being messed up when the text was scrolled
3053         during a deletion.
3054         
3055 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
3056
3057         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
3058         the filesystem under you (fix from Josh)
3059
3060 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
3061
3062         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
3063         if the viewport already exists before iterating over it, maybe we
3064         haven't been constructed yet.
3065
3066 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
3067
3068         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
3069         the GtkBin widget already has a child.
3070
3071         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
3072         check that child->parent == NULL;
3073
3074 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
3075
3076         * gtk/gtkselection.c (gtk_selection_clear): Only return
3077         FALSE when the clear event is been rejected, not when
3078         widget has already lost the selection. (Which should
3079         only happen when we are setting the selection to another
3080         widget ourself.)
3081         
3082 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
3083
3084         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
3085
3086         Removed the "check visibility after gtk_widget_unparent" bug 
3087         in hopefully the last three places.
3088
3089 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
3090
3091         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
3092         rc-files.
3093
3094 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
3095
3096         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
3097         for CAN_FOCUS widgets.
3098
3099         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
3100         adjustments for the table.
3101         (create_list): feature automatic adjustment of the scrolled window to
3102         always contain the focused child.
3103         (create_main_window): keep the focussed button always inside of the
3104         scrolled windoww.
3105
3106         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
3107         adjustments, to contain the allocation of the currently focused child.
3108         (gtk_container_set_focus_hadjustment): new functin to set the
3109         horizontal focus adjustment.
3110         (gtk_container_set_focus_vadjustment): new functin to set the vertical
3111         focus adjustment.
3112
3113         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
3114         clamp the currents adjustment page into a specific range.
3115
3116         * random GtkType fixups for gtk_*_get_type() functions.
3117
3118 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
3119
3120         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
3121         Account for the fact that gtk_tree_item_remove_subtree
3122         will be called recursively. 
3123
3124         Handle removing a collapsed subtree.
3125
3126         (From Andy Dustman <adustman@comstar.net>)
3127         
3128         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
3129         root tree when removing items from a non-previously
3130         mapped tree.
3131
3132         * gtk/testgtk.c: Added a remove_subtree button.
3133         
3134 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
3135
3136         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
3137         before object removing data. This change fixes a bug where 
3138         removing the last weak references would cause it to be 
3139         triggered.
3140
3141 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
3142
3143         * gdk/Makefile.am: Removed mostly useless dependency that
3144         was causing problems for SGI's make, when used with
3145         the 'make dist' form of GTK+. (Dependency caused dependencies
3146         to be redone when BUILT_SOURCES changed)
3147
3148 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
3149
3150         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
3151         like a menu.
3152         
3153         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
3154         to gtkitem.c so dragging can also work in lists.
3155
3156         * gtk/gtklist.[ch]: Track child enter events and use
3157         those to allow dragging the selection. 
3158
3159 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
3160
3161         * gtk/gtktext.c: Try enabling background pixmaps for editable text
3162         widgets.  There is a bit of flashing, but not too bad. If you
3163         don't want the flashing, you can always not set a background
3164         pixmap.
3165
3166 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
3167
3168         * gtk/gtktext.c: Fixed a bug where the drawn level
3169         was being messed up when the text was scrolled
3170         during a deletion.
3171         
3172 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3173
3174         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
3175         bug:  There is no need to set the ExposureMask in the XGrabPointer
3176         (this caused DnD programs to crash).
3177
3178 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
3179
3180         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
3181         field to be of type guint.
3182         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
3183         ref_count>0;
3184         (gtk_accelerator_table_install): keep a per object list of accelerator
3185         tables that refer to this object.
3186         (gtk_accelerator_table_remove): remove the accelerator table from the
3187         per object list.
3188         (gtk_accelerator_table_clean): warn if there are any object references
3189         left in an accelerator table upon destruction.
3190         (gtk_accelerator_tables_delete): new function to delete object
3191         references from the accelerator tables associated with this object.
3192
3193         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
3194         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
3195         of an accelerator can be prevented by gtk_signal_emit_stop().
3196         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
3197         so there are no stale pointers in accelerator tables left.
3198
3199 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3200
3201         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
3202         visible before we unparent it.
3203
3204 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
3205
3206         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
3207         running_timeouts list with the tmp_list link itself, not with a new
3208         GList structure pointing to our link. that would fill up memory and
3209         causes the GList.data fields of the running_timeouts list to point to
3210         GList structures and not GtkTimeoutFunction structures which is a
3211         *really* bad thing.
3212         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
3213         the above entry ;).
3214
3215 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
3216
3217         * gtk/gtkradiomenuitem.h: 
3218         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
3219         ala gtk_radio_button_set_group.
3220         (gtk_radio_menu_item_init): assure that we always have at least a group
3221         that points to self.
3222
3223         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
3224         added g_return_if_fail() statements.
3225         (gtk_radio_button_init): assure that we always have at least a group
3226         that points to self.
3227
3228 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
3229
3230         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
3231
3232 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
3233
3234         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
3235         (Damon Chaplin), which i got wrong when applying Damon's patch the last
3236         time.
3237
3238 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
3239
3240         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
3241         that when we are running with a non-installed colormap,
3242         in 8-bit pseudo-color, we actually are using the system
3243         visual. (Fixes *Bad Match* errors on Digital Unix machines
3244         with multiple 8-bit pseudo-color visuals)
3245
3246 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3247
3248         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
3249         by whoever thought that randomly changing ints to unsigned int
3250         without reviewing the code was a good idea.  It is, btw not
3251         mentioned in the ChangeLog as usual, but I know it was not Elliot
3252         the culprit this time. 
3253
3254 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3255
3256         * Released GTK+ 1.0.0