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