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