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