]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
cause the built sources to be rebuild when possible, even with
[~andy/gtk] / ChangeLog.pre-2-6
1 Fri Oct 30 05:24:43 1998  Tim Janik  <timj@gtk.org>
2
3         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
4         even with --include-deps:
5         $(libgtk_la_SOURCES): $(BUILT_SOURCES)
6
7 Fri Oct 30 01:56:08 1998  Tim Janik  <timj@gtk.org>
8
9         * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
10         gtk_object_data_set_destroy to fit the gtkobject.h API.
11
12         * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
13         * gtk/gtkfontsel.h:
14         * gtk/gtkfontsel.c:
15         Added support for an extra 'base' filter which an application can
16         set to restrict the fonts available to the user (e.g. a terminal
17         program only wants the user to be able to select fixed-width fonts).
18         The type of font (bitmap/scalable/scaled bitmap) is now
19         also a part of the filter, so that an application can
20         request that only scalable fonts are shown.
21         There are new functions to set the base & user filters.
22         I've also stopped the up/down key press signals getting
23         to the clists since the font selection widget handles
24         them itself. It acted a bit strangely before.
25
26 Sun Oct 25 20:27:02 1998  Tim Janik  <timj@gtk.org>
27
28         * gtk/gtkmain.c (gtk_init): support an environment variable
29         GTK_MODULES= which takes a colon sperated list of module names
30         automatically loaded at gtk_init() startup.
31
32 Sun Oct 25 08:04:33 1998  Tim Janik  <timj@gtk.org>
33
34         * gtk/gtkwidget.c: added more g_return_if_fail() statements.
35
36 Thu Oct 22 22:40:35 1998  Lars Hamann  <lars@gtk.org>
37
38         * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
39         is sufficient
40
41 Thu Oct 22 16:22:55 1998  Lars Hamann  <lars@gtk.org>
42
43         * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
44         columns
45
46 Thu Oct 22 02:29:53 1998  Tim Janik  <timj@gtk.org>
47
48         * gtk/gtkfilesel.h: GtkType and macro fixups
49         * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
50         for the file selection widget to try a completion on (set the
51         initial filter).
52
53 Wed Oct 14 14:34:04 1998  Tim Janik  <timj@gtk.org>
54
55         * gtk/gtkmain.c: implement idle functions via GHook. this gives a
56         slight speed improvement and lessens code duplication.
57
58 Tue Oct 20 14:53:28 1998  Owen Taylor  <otaylor@redhat.com>
59
60         * gtk/gtkdnd.c: Always send "drag_leave" to dests
61         without GTK_DEST_DEFAULT_MOTION. 
62
63 Tue Oct 20 11:55:24 1998  Owen Taylor  <otaylor@redhat.com>
64
65         * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
66         on destroyed windows so we clear the XID table properly.
67         Finish up restructure of return value handling that
68         was half-done before.
69
70 Tue Oct 20 12:57:10 1998  Owen Taylor  <otaylor@redhat.com>
71
72         * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
73         the window tree more comprehensively, so that we find
74         client windows hidden under non-toplevels.
75
76 Tue Oct 20 12:43:04 1998  Owen Taylor  <otaylor@redhat.com>
77
78         * gtk/gtkselection.c (gtk_selection_data_set): 
79         Maintain the null-termintation guarantee, even when 
80         data = NULL, length = 0. (Warn on data = NULL, 
81         length > 0)
82
83 Mon Oct 19 16:41:44 1998  Owen Taylor  <otaylor@redhat.com>
84
85         * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
86         into function prototype for drag_data_received. 
87
88 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
89
90         * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
91
92 Mon Oct 19 23:44:41 1998  Lars Hamann  <lars@gtk.org>
93
94         * gtk/gtkclist.c: rearranged some functions
95         (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
96         flag of column
97         (gtk_clist_set_column_resizeable): if resizeable disable auto_resize 
98         (gtk_clist_set_border): deprecated function, use
99         gtk_clist_set_shadow_type instead.
100         (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
101         (adjust_scrollbars): some cleanups
102         (select_row) (unselect_row): removed. replaced by equivalent
103         gtk_signal_emit calls
104         (add_style_data): removed, use gtk_clist_style_set instead
105         (gtk_clist_style_set): fill in size data, after style was set. 
106         (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
107         (gtk_clist_set_cell_style): auto_resize columns if needed
108         (column_auto_resize): resize column if needed for auto_resize 
109         (real_clear): disable auto_resize while list destroy
110         (resize_column): removed
111
112         * gtk/gtkctree.c : (gtk_ctree_remove_node)
113         (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
114         (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
115         (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
116         (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
117         (real_tree_collapse) (real_tree_expand) (column_auto_resize):
118         auto_resize columns if needed
119         (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
120         (real_clear): disable auto_resize while processing the tree
121
122         * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
123         for one column
124
125 Mon Oct 19 08:31:36 1998  Owen Taylor  <otaylor@redhat.com>
126
127         * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
128         typo - look for right atom on transfer failures.
129
130 Sun Oct 18 20:52:22 1998  Owen Taylor  <otaylor@gtk.org>
131
132         * gtk/gtkwidget.c gtkmarshal.list: Change signal 
133         for drag_data_get to match the use that was being
134         made of it everywhere else...
135
136 Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>
137
138         * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
139         mechanism, that is used for the DND messages.
140
141           Removed all the old DND code.
142
143         * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
144         get the visual of a given colormap.
145         
146         * gtk/gtkcolorsel.c: Conversion to new DND, drag 
147         a color-swatch.
148
149         * gdk/gdk.h gdk/gdkdnd.c: The low-level
150         X oriented portions of drag and drop protocols.
151         Sending and receiving client messages, and navigating
152         window trees.
153
154         * gdk/gdkimage.c: added a gdk_flush() when destroying
155         SHM images to hopefully make it more likely that
156         X will gracefully handle the segment being destroyed.
157
158         * gdk/gdkprivate.h gtk/gtkdebug.h: Add new 
159         DND debugging flags.
160
161         * gtk/gtkeditable.[ch]: Updates for the selection handling
162         changes.
163         
164         * gtk/gtkselection.[ch]: Added GtkTargetList, a 
165         refcounted data structure for keeping track of lists
166         of GdkAtom + information. Removed selection_handler_add
167         in favor of a "drag_data_get" signal.
168
169         * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
170         dependent) parts of the DND protocols, display of drag icons,
171         drag-under highlighting, and the "default handlers".
172
173         * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
174         windows that are used for reliable pointer grabs and
175         selection handling in the DND code.
176
177         * gtk/testdnd.c: New test program for new DND. (Old
178         DND tests in testgtk still need to be converted.)
179
180         * gtk/testselection.c: Use the new selection API.
181         
182         * docs/dnd_internals: Start at describing how
183         all the new code works inside.
184
185         * docs/Changes-1.2.txt: New file describing source-incompatible
186         changes in GTK+-1.2.
187
188 Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>
189
190         * gdk/gdkwindow.c (gdk_window_remove_filter): Free
191         the right list node.
192
193         * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
194         to the XID table so we can receive events on it.
195
196 Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>
197
198         * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
199         to get the timestamp from a generic event.
200
201 Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>
202
203         * gtk/gtkwidget.c (gtk_widget_add_events): Added function
204         that safely adds additional events to a widget's event 
205         mask, even if the widget has previously been realized.
206         (We can do this, but not remove events from the event
207          mask).
208
209 Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>
210
211         * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
212         for AnyPropertyType.
213
214 Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>
215
216         * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
217         hashing.
218
219 Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>
220
221         * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
222         isn't a timestamp.
223
224 Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>
225
226         * gdk/gdk.c (gdk_event_translate): Removed printing
227         of unknown window lookup warnings. (Made it
228         a GDK_NOTE) - they happen in many circumstances.
229
230 Tue Sep  8 12:38:43 1998  Owen Taylor  <otaylor@redhat.com>
231
232         * Call XFilterEvent() on events we get for unknown
233         windows, since it may be the window Xlib uses to
234         communicate with the IM. 
235         (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
236
237 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
238
239         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
240         the adjustment.
241
242 Thu Aug 27 12:03:14 1998  Owen Taylor  <otaylor@redhat.com>
243
244         * gtk/gtksignal.c (gtk_signal_newv): Improve warning
245         message for return_value + GTK_RUN_FIRST.
246
247 1998-10-18  Martin Baulig  <martin@home-of-linux.org>
248
249         * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
250         line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
251
252 Fri Oct 16 15:59:02 1998  Lars Hamann  <lars@gtk.org>
253
254         * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
255         styles of inserted row
256         (change_style): change style of focus_row
257
258         * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
259         (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
260         to set/get row/cell styles.
261         (gtk_clist_realize): attach row and cell style, allocate row colors.
262         (gtk_clist_unrealize): detach row and cell styles.
263         (get_cell_style): new function. get correct cell style.
264         (draw_cell_pixmap): new function. 
265         (draw_row): draw cells with row or cell styles.
266         (row_new): set cell and row styles to NULL.
267         (row_delete): detach & unref cell and row styles.
268
269         * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles): 
270         new functions to attach/detach styles and allocate colors.
271         (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
272         styles of invisible nodes.
273         (draw_cell_pixmap): new function. 
274         (get_cell_style):  new function. get correct cell style.
275         (gtk_ctree_draw_expander): new function. draw tree expander.
276         (gtk_ctree_draw_lines): new function.draw tree lines.
277         (draw_row): draw cells with row or cell styles.
278         (row_new): set cell and row styles to NULL.
279         (row_delete): detach & unref cell and row styles.
280         (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style) 
281         (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style): 
282         Analogons of GtkCList functions 
283         (gtk_ctree_set_spacing): new function. set spacing between
284         tree expander and cell contents
285         (gtk_ctree_set_expander_style): new function. set expander style
286         of ctree.
287         (ctree_is_hot_spot): few changes due to draw_row modifications.
288
289 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
290
291         * gtk/gtkcombo.c: try completion on MOD1-TAB.
292         Handle case when the combo->list is empty.
293
294 Mon Oct 12 07:51:34 1998  Tim Janik  <timj@gtk.org>
295
296         * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
297         handlers that have not yet been disconnected (finally managed to
298         trigger the gtk_signal_handler_unref() paranoid warning).
299
300 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
301
302         * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
303         width and height which is -1 and not -2.
304
305 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
306
307         * HACKING
308         * autogen.sh: we need libtool 1.2b now
309
310 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
311
312         * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
313         and bottom attach arguments as mandatory and readjust the table size
314         and opposing edge accordingly if required. this way the order in which
315         the arguments are set doesn't matter.
316
317 Thu Oct  8 15:53:59 1998  Owen Taylor  <otaylor@redhat.com>
318
319         * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
320         message to print out parent class name correctly.
321
322 Thu Oct  8 07:07:10 1998  Tim Janik  <timj@gtk.org>
323
324         * gtk/gtkobject.h: 
325         * gtk/gtkobject.c:
326         removed functions gtk_object_set_data_destroy and
327         gtk_object_set_data_destroy_by_id.
328         added functions gtk_object_remove_no_notify and
329         gtk_object_remove_no_notify_by_id which will remove a certain data
330         portion without invokation of its destroy notifier, this should only
331         be used in very controled circumstances.
332
333 Wed Oct  7 23:59:37 1998  Lars Hamann  <lars@gtk.org>
334
335         * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
336         size_allocate_title_buttons call
337         (gtk_clist_realize): changed initial column.window position
338
339 Wed Oct  7 20:27:28 1998  Lars Hamann  <lars@gtk.org>
340
341         * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
342         xor_gc instead
343         * gtk/gtkctree.c (create_xor_gc): removed
344         (gtk_ctree_button_press): set correct line_attributes for
345         clist->xor_gc on drag start
346         (gtk_ctree_button_release): reset clist->xor_gc
347
348 Wed Oct  7 05:15:36 1998  Tim Janik  <timj@gtk.org>
349
350         * gtk/gtk*.h:
351         * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
352         which were in place to fixup emacs' cc-mode indentation.
353         putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
354         proper way to achive this and doesn't produce problems for
355         stupid pragma-related compiler bugs. ;)
356
357 Wed Oct  7 00:59:46 1998  Lars Hamann  <lars@gtk.org>
358
359         * gtk/gtkclist.h: new signal GtkCList::resize_column.
360         * gtk/gtkclist.c (draw_row): don't draw invisible columns
361         (size_allocate_title_buttons) (size_allocate_columns):
362         skip invisible columns
363         (new_column_width): take min/max_width into account 
364         (gtk_clist_button_release) (gtk_clist_motion):
365         changes due to changed new_column_width function
366         (LIST_WIDTH): changed define to inline function.
367         (real_resize_column): class function for resize_column signal
368         (gtk_clist_motion): fixed autoscrolling for column resizes
369         (gtk_clist_set_column_visibility): don't hide last visible column,
370         changed visible arg to gboolean
371         (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
372         new functions : set min/max width of a column
373         (gtk_clist_set_column_resizeable): new function : enable/disable
374         column resize operations by mouse
375
376         * gtk/gtkctree.c (draw_row): don't draw invisible columns
377         (ctree_is_hot_spot): return FALSE if tree_column is invisible
378         (draw_xor_line)  (draw_xor_rect): draw full rectangle/line if
379         tree_column is invisible
380         (gtk_ctree_find_all_by_row_data)
381         (gtk_ctree_find_all_by_row_data_custom):  new function from
382         Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
383         GtkCTreeNodes with row->data == data.
384
385 Tue Oct  6 14:05:00 1998  Tim Janik  <timj@gtk.org>
386
387         * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
388         memory (Martin Pool <mbp@wistful.humbug.org.au>).
389
390 Mon Oct  5 15:26:30 1998  Raph Levien  <raph@gimp.org>
391
392         * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
393         should have been guint32. Thanks to Tristan Colgate for finding it.
394
395 Sun Oct  4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
396
397         * gtk/gtkcalendar.h:
398           gtk/gtkcalendar.c: More changes:
399           - The day with focus is now seperated from the day selected
400           - The day with focus has the xor's line around it
401           - The selected day is now standard selected style
402           - The week names and week numbers are now also drawn
403             with selected style
404           - Space now selects the day which has focus
405
406 Sun Oct  4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
407
408         * gtk/gtkcalendar.h:
409           gtk/gtkcalendar.c: Some significant changes, including:
410           - No longer draw focus around entire widget, only around
411             the day which has focus
412           - Draw relief around entire widget like originally planned
413           - Show header and day names by default 
414           - Move data private to the widget out of GtkCalendar struct
415             and only point to it with a gpointer
416           - Remove some old unused variables from GtkCalendar struct
417
418 Sun Oct  4 17:45:43 BST 1998  Tony Gale  <gale@gtk.org>
419
420         * docs/gtk_tut.sgml: update I've had sat around:
421           - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
422           - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
423           - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
424
425 1998-10-01  Martin Baulig  <martin@home-of-linux.org>
426
427         * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
428         
429         * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
430         Makes it possible to individually show and hide columns.
431         (size_allocate_columns): Adapted to keep track of hidden columns.
432         (size_allocate_title_buttons): Likewise.
433
434 Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>
435
436         * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
437         fundamental types, collect an argument of the type returned from
438         gtk_type_get_varargs_type(). removed the first macro argument which
439         was just the same as the fundamental type of the *arg passed to
440         the macro.
441         * gtk/gtkarg.c (gtk_args_collect): 
442         * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
443
444         * gtk/gtktypeutils.h: 
445         * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
446         gtk_type_get_varargs_type() to set and query the varargs collect
447         type used for a fundamental type, registered outside of Gtk.
448
449         * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
450         GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
451         GTK_TYPE_FLOAT.
452
453         * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
454         GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
455         to GTK_TYPE_FLOAT.
456
457 Sat Oct  3 01:25:24 1998  Lars Hamann  <lars@gtk.org>
458
459         * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
460         (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand): 
461         fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
462
463         (real_tree_expand) (real_tree_collapse):
464         don't expand/collapse a leaf
465
466 Fri Oct  2 16:10:36 1998  Tim Janik  <timj@gtk.org>
467
468         * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
469         segfault when looking up a non-existant value name (reported by
470         Pablo <pcj+gtk@primenet.com>).
471
472 Thu Oct  1 10:40:20 1998  Tim Janik  <timj@gtk.org>
473
474         * gtk/gtkclist.h (gtk_clist_prepend):
475         * gtk/gtkclist.c (gtk_clist_prepend): new function.
476         (gtk_clist_insert): added g_return_val_if_fail()
477         statements. accept a row parameter < 0 or > clist->rows to indicate
478         append mode.
479         (real_clear): first clean up all internal pointers and lists (e.g.
480         clist->row_list or clist->rows), then delete the distinct rows. this
481         is required because of destroy notifiers, we need to have all internal
482         structures updated and be reentrant.
483
484         * gtk/gtkcalendar.h: 
485         * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
486         GtkCalendarClass signal methods.
487         GtkType and macro fixups, put `void' into () prototypes, avoid C++
488         style comments, indentation fixes, fixed some g_return_if_fail()
489         statements.
490         (gtk_calendar_paint_header):
491         (gtk_calendar_paint_day_names): 
492         (gtk_calendar_paint_week_numbers): 
493         (gtk_calendar_paint_main): made these static functions.
494         (gtk_calendar_select_month):
495         (gtk_calendar_select_day):
496         (gtk_calendar_mark_day):
497         (gtk_calendar_unmark_day):
498         (gtk_calendar_get_date): signedness corrections, use guints
499         rather than gints.
500         (gtk_calendar_size_request): removed unused variables.
501
502 Wed Sep 30 13:11:09 1998  Tim Janik  <timj@gtk.org>
503
504         * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
505         widgets in the ->widgets_by_action list that have a callback
506         defined (not only those with a callback_action!=0).
507
508 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
509
510         * gtk/gtkcalendar.h:
511           gtk/gtkcalendar.c:
512           examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
513
514 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
515
516         * gtk/gtkcalendar.h:
517           gtk/gtkcalendar.c:
518           examples/calendar: Added gtkcalendar widget and demo
519
520 Sat Sep 26 06:15:34 1998  Tim Janik  <timj@gtk.org>
521
522         * gtk/gtkclist.c (gtk_clist_sort): 
523         (gtk_clist_clear): 
524         (gtk_clist_unselect_all): 
525         (gtk_clist_select_all): adde g_return_if_fail() statements.
526
527 Sat Sep 26 04:46:22 1998  Tim Janik  <timj@gtk.org>
528
529         * configure.in: set binary age and interface age to 0.
530
531         * gtk/gtkspinbutton.h: 
532         * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
533         gtk_spin_button_configure. gtk_spin_button_construct is still defined
534         as an alias for gtk_spin_button_configure for source compatibility,
535         but actuall use is deprecated.
536         typeness corrections, i.e. gint->gboolean and gint->guint.
537         added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
538         GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
539         GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
540         GtkSpinButton::adjustment, GtkSpinButton::digits and
541         GtkSpinButton::climb_rate.
542         GtkType and macro fixups.
543
544 Sat Sep 25 23:33:55 1998  Tim Janik  <timj@gtk.org>
545
546         * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
547         the *real* geometry position of a window, taken possible window
548         manager offsets into account.
549         this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
550         olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
551         it does fail though for amiwm which adds windows to a pseudo root
552         window, and for icewm by a small offset because it defines the
553         geometry position whithin its border.
554
555         * gtk/testgtk.c: added "saved position" test to figure how
556         gdk_window_get_root_origin() interacts with window managers (repopup
557         this window to figure ;).
558
559 Wed Sep 23 06:09:19 1998  Tim Janik  <timj@gtk.org>
560
561         * configure.in: update to Gtk+ version 1.1.3, binary age 1,
562         interface age 1.
563
564         * gtk/gtkobject.c
565         (gtk_object_ref): 
566         (gtk_object_unref): check for ->ref_count to be greater than 0 (the
567         existing code was buggy in letting ->ref_count==0 pass through and
568         then failing the living_objs_ht assertion).
569
570         * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
571         pixtext fields (Roman Pozlevich <roma@botik.ru>).
572
573 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
574
575         * Released GTK+ 1.1.2
576
577 Mon Sep 21 01:12:44 1998  Jay Cox  (jaycox@earthlink.net)
578
579         * gtk/Makefile.am: use $(PERL) instead of perl
580         * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
581         also much faster to render.
582
583 Mon Sep 21 07:44:30 1998  Tim Janik  <timj@gtk.org>
584
585         * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
586         the required memory block, rather than allocating it newly from
587         scratch and doing a full-blown block copy on it.
588
589 Mon Sep 21 02:30:06 1998  Tim Janik  <timj@gtk.org>
590
591         * NEWS file update for upcoming release of Gtk+ version 1.1.2,
592         binary age 0, interface age 0.
593
594         * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
595
596 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
597
598         * ltmain.sh: Patch to libtool-1.2b to make --disable-static
599         work.
600
601 Sun Sep 20 09:52:39 1998  Owen Taylor  <otaylor@gtk.org>
602
603         * HACKING: indent other than GNU indent should be OK
604           now.
605
606         * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
607           instead of piping through indent. If indent wasn't
608           found in ./configure don't bother indenting at 
609           all.
610
611 Fri Sep 18 19:11:10 1998  Owen Taylor  <otaylor@redhat.com>
612
613         * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
614
615 Fri Sep 18 18:54:59 1998  Jay Cox  (jaycox@earthlink.net)
616
617         * gtk/Makefile.am: use $(AWK) instead of awk
618
619 1998-09-18  Raja R Harinath  <harinath@cs.umn.edu>
620
621         * gtk/Makefile.am (gdk_headers): 
622         Remove references to $(top_srcdir). 
623         (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
624         * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
625
626 Fri Sep 18 19:58:24 1998  Tim Janik  <timj@gtk.org>
627
628         * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
629         GData*object_data to cure compiler warnings.
630
631 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
632
633         * install-sh
634         * missing
635         * mkinstalldirs: updated to latest automake version
636
637 1998-09-17  Raja R Harinath  <harinath@cs.umn.edu>
638
639         * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
640         (gtkinclude_HEADERS): ... here.
641         (gtk.defs): Pass `g' flag to sed, to replace all occurances.
642
643 Thu Sep 17 10:49:51 1998  Raph Levien  <raph@gimp.org>
644
645         * HACKING: added GNU indent, as it is now required to successfully
646         build gtk+. Should this be detected in autoconf, possibly?
647
648 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
649
650         * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
651         change library versioning scheme to drop LT_RELEASE
652         from the -l line, while keeping it in the soname.
653
654 Tue Sep 15 14:10:33 1998  Owen Taylor  <otaylor@redhat.com>
655
656         * configure.in Makefile.in: define a MAINT-like variable REBUILD
657         which is set if Perl and awk are found, and autogenerated sources
658         can be rebuilt. Remove the auto-generated sources from
659         CVS. 
660
661         Add dependencies so that the autogenerated sources are 
662         rebuilt if the files they depend on change. 
663         (This unfortunately currently results in the entire
664         gtk/ directory being rebuilt when any header changes.
665         Moving all enums to gtkenums.h would fix this.)
666
667 Thu Sep 17 05:12:48 1998  Tim Janik  <timj@gtk.org>
668
669         * gtk/gtkobject.h: added gtk_object_set_data_destroy and
670         gtk_object_set_data_destroy_by_id functions to set the destroy
671         function pointer for an existing data portion.
672
673         * gtk/gtkobject.c: removed the GtkObjectData implementation and
674         made all gtk_object_*data* functions use the GLib equivalents.
675
676 1998-09-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
677
678         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
679         is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
680         (widget != NULL), otherwise radio button insertion will not work
681         -- the widget argument is NULL for the first radio button in the
682         group.
683
684 Tue Sep 15 13:09:24 1998  Owen Taylor  <otaylor@redhat.com>
685
686         * gdk/gdkimage.c (gdk_image_new): Reverted global changes
687         of g_new to malloc(), added back in the one place where
688         it actually mattered. #include <stdlib.h>.
689
690         * gdk/gdkrgb.c: g_malloc() to malloc() as above.
691
692 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
693
694         * gtk/gtkfilesel.c: Keep a list of directories in which we never
695         want to stat the entries (like /afs), and assume everything in
696         those directories is a subdirectory.
697
698         - When following a path, try to open components even when
699         we don't find them in their parent's directory to
700         support automounters.
701
702 Tue Sep 15 11:06:13 1998  Owen Taylor  <otaylor@redhat.com>
703
704         * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
705         a new size from the WM if we asked for the same size
706         before and our request was rejected.
707
708         * gtk/gtkwindow.c (gtk_window_configure_event): If
709         in response to a request, we get a configure event
710         with unchanged dimensions, send a synthetic expose
711         since ForgetGravity won't expose our window.
712
713 Mon Sep 14 14:28:24 1998  Owen Taylor  <otaylor@redhat.com>
714
715         * gtk/gtktext.c (adjust_adj): Change the way we
716         set the adjustments on resize so that it tries to
717         keep the beginning of the text in approximately
718         the same place. 
719
720         Removed assertion that the above change made invalid.
721
722 Thu Sep 10 22:19:35 1998  Owen Taylor  <otaylor@redhat.com>
723
724         * gtk/gtktext.c: - Save first_cut_pixels when switching
725         sizes, so that if we switch to the _same_ size,
726         we don't move lines around.
727
728         - Make sure that the text area always has a size of at
729         least 1x1, then do all computations when realized.
730
731         - When fetching lines in recompute_geometry, make
732         sure we fetch enough lines to cover the screen.
733         
734 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
735
736         * gdk/gdkimage.c: changed g_new()s to malloc()s and 
737           g_free()s to free()s to avoid mixing g_new()s with 
738           free()s.  X itself uses free() on some of the 
739           malloced memory.
740
741 Sat Sep 12 10:44:06 1998  Owen Taylor  <otaylor@redhat.com>
742
743         * gtkfilesel.c: Maintain a list of directories like
744         /afs we know contain only directories, and avoid
745         stat'ing files in those directories. (Because
746         stat'ing all files in /afs is extremely expensive)
747
748         To support automounters, try to open directories,
749         even if we couldn't find them when reading their
750         parent directory.
751
752 Thu Sep  3 10:29:03 1998  Owen Taylor  <otaylor@redhat.com>
753
754         * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
755         to allow the same gtk.m4 to work for 1.0.x and
756         1.1.x.
757
758 Fri Sep 11 15:25:10 1998  Lars Hamann  <lars@gtk.org>
759
760         * gtk/gtkclist.c (gtk_clist_set_selectable): new function
761         to set/unset the selectable flag of a single row.
762         (gtk_clist_get_selectable): new function 
763         to get the state of the selectable flag
764
765         * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
766         (gtk_ctree_node_get_selectable): clist analogons
767         
768 Thu Sep 10 17:04:03 1998  Raph Levien  <raph@gimp.org>
769
770         * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
771         pattern.
772
773         * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
774         bugs in the 4bit gray cases.
775
776 Wed Sep  9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
777
778         * configure.in: added -posix check for NeXTStep
779
780         * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
781         a unique buffer for each thread.
782
783         * docs/gtk-config.1: clarified copyright
784
785 Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>
786
787         * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
788
789         * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
790
791         * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
792         ATEXIT.
793         
794         * ltconfig: use GLib's ltconfig which honours lcc.
795
796 Mon Sep  7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
797
798         * configure.in: comment the -std1 check and save LIBS properly
799
800 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
801
802         * gtk/testrgb.c: #include <stdlib.h>
803
804 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
805
806         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
807         When the pointer is grabbed on an input window,
808         either explicitely, or through press-grab, and
809         then grabbed on a non-input window, ungrab the
810         devices.
811
812 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
813
814         * gtk/gtktypeutils.h: don't include any gdk headers.
815         added structure definitions for GtkTypeObject and GtkTypeClass,
816         which cover the very basic fields of GtkObject and GtkObjectClass,
817         which are actually used by the type system.
818         
819         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
820         we only refer to our own structures. improved class inheritance
821         sanity checking a bit.
822
823         * gtk/gtkobject.h: placed appropriate comments at the beginnings
824         of the GtkObject and GtkObjectClass structures, which explain
825         their relationship to GtkTypeObject and GtkTypeClass.
826
827         * gtk/gtktypeutils.h:
828         * gtk/gtkobject.h:
829         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
830         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
831         gtkobject.h to gtktypeutils.h.
832
833         * gtk/gtkobject.h:
834         * gtk/gtkobject.c:
835         removed gtk_object_check_cast() and gtk_object_check_class_cast()
836         functions. to keep source compatibility, we can provide macro aliases
837         for the corresponding gtk_type_* functions. but then again, people
838         shouldn't have been using these functions anyways since they were part
839         of Gtk's internal API.
840
841         * gtk/gtktypeutils.h:
842         * gtk/gtktypeutils.c:
843         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
844         functions to check GtkTypeObject and GtkTypeClass types.
845
846 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
847
848         * gtk/gtkctree.h:
849         * gtk/gtkctree.c: `const' fixups.
850
851         * gtk/gtkclist.h:
852         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
853
854         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
855         if it is passed as NULL.
856
857 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
858
859         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
860         big-endian cases. Added a 4bpp packed gray mode (somewhat
861         incorrectly hardwired to MSB), which should take care of
862         Stric's hardware.
863
864 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
865
866         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
867         GtkSIgnalQuery leak.
868
869 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
870
871         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
872         GTK_MENU_DIR_CHILD: check for the existance of
873         menu_shell->active_menu_item before accessing its child.
874         GTK_MENU_DIR_PREV:
875         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
876         don't, make a default selection.
877
878 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
879
880         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
881         the children with _forall for sensitivity changes and with
882         _foreach on pure state changes. this fixes a lot of the
883         old inclusions of internal widgets into _foreach calls.
884
885         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
886         do the work. don't walk the subtrees of first level children.
887
888         * gtk/gtktreeitem.c: provide a _forall implementation,
889         which walks the subtrees as well for include_internals.
890
891         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
892         the submenus as well for include_internals.
893
894         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
895         implemented gtk_scrolled_window_forall, which will iterate over
896         the viewport and the scrollbars for gtk_container_forall or
897         iterate over the viewports children for gtk_container_foreach.
898
899         * gtk/gtktoolbar.c: 
900         * gtk/gtktable.c: 
901         * gtk/gtkpaned.c:
902         * gtk/gtkpacker.c:
903         * gtk/gtkmenushell.c: 
904         * gtk/gtklist.c: 
905         * gtk/gtkfixed.c:
906         * gtk/gtkclist.c:
907         * gtk/gtkbox.c: 
908         * gtk/gtkbin.c: 
909         * gtk/gtknotebook.c:
910         removed the old gtk_*_foreach functions and provided gtk_*_forall.
911
912         * gtk/gtknotebook.c:
913         (gtk_notebook_real_switch_page): expose tabs.
914         (gtk_notebook_page_num): new function to return the page number
915         of a distinct child.
916         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
917         under some circumstances.
918
919         * gtk/gtktreeitem.c:
920         (gtk_real_tree_item_select):
921         (gtk_real_tree_item_deselect): major fixes.
922         some general fixups wrt queue_redraw, and tree items not being
923         NO_WINDOW widgets.
924
925         * gtk/gtklistitem.c:
926         (gtk_real_list_item_select): 
927         (gtk_real_list_item_deselect): 
928         (gtk_real_list_item_toggle): 
929         removed unneccessary queue_redraw calls.
930
931 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
932
933         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
934         automatically popup the menu on space bar.
935
936 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
937
938         * gtk/gtkcontainer.h:
939         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
940         method), which acts similar to gtk_container_foreach(), but iterates
941         over internal children. the GtkContainer::foreach signal vanished in
942         favour of a new class method ->forall() that optionally includes
943         internal widgets.
944
945         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
946         but a _forall implementation, since all child widgets we have are
947         internal ones.
948         (column_button_create): set the parent window prior
949         to gtk_widget_set_parent().
950
951         * gtk/gtkwidget.c:
952         exchanged all calls to gtk_container_foreach() with
953         gtk_container_forall().
954
955         * gtk/gtkwidget.h: 
956         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
957         the GtkWidget::composite_child argument. to have a widget created
958         with the flag initially, two new functions got added to wrap a widgets
959         creation:
960         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
961
962 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
963
964         * gtk/gtktooltips.h:
965         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
966         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
967         prior to the first tip being set.
968         don't put an extra reference on the window, since it is a toplevel,
969         it wont get destroyed from anywhere else.
970
971         * overall macro and GtkType fixups.
972
973 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
974
975         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
976         constructs by more forgiving ones.  (Does anyone else feel like
977         the color selector need rewriting?).
978
979 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
980
981         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
982         the adjustment.
983
984         * gtk/gtkmenu.c: Modified reference counting so
985         that the reference count from the toplevel that
986         the menu creates to the menu is invisible to the
987         application.
988
989 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
990
991         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
992         conversion selection logic, so Suns and other big-endian
993         machines should get faster conv routines. This is also the
994         point where 4bpp gray and 1bpp are checked in, although I
995         wouldn't be surprised if 1bpp is a little buggy. This is
996         synchronized with the 0.0.7 release of GdkRgb.
997
998         * gtk/Makefile.am: 
999         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
1000         appropriate change to the Makefile.am
1001
1002 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
1003
1004         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
1005         which is good for images that scroll (makes the dither patterns
1006         align correctly)
1007
1008 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
1009
1010         * gdk/gdkcolor.c:
1011         (gdk_colormap_new) (gdk_colormap_get_system):
1012         quell some warnings with g_hash_table_new
1013
1014         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
1015         when we're done with it
1016
1017         * gtk/itemfactory.c:
1018         (gtk_item_factory_from_path):
1019         (gtk_item_factory_create_item): free some strings
1020
1021         * gtk/gtklabel.c:
1022         (gtk_label_finalize): free label->pattern when done
1023         (gtk_label_parse_uline): null terminate pattern string, delete
1024         some duplicated code
1025
1026         * gtk/testthreads.c: add #include <unistd.h> for sleep()
1027
1028 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
1029
1030         * gtk/gtktext.c (recompute_geometry): Make sure the
1031         mark we pass to line start is the beginning of a 
1032         real line, not a wrapped one.
1033
1034 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
1035
1036         * gtk/gtktext.c: Reference count the fonts used in
1037         the text widget.
1038
1039         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
1040         freeing functions to be more consistent, and more 
1041         convenient; leave the old names in for backwards compatibility.
1042
1043         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
1044         allocations in pseudo-color colormaps to greatly reduce
1045         calls to XAllocColor. Keep a per-colormap hashtable to
1046         speed up finding if there is an already-allocated matching
1047         color.
1048
1049         * gdk/gdkcolor.c: Don't just match read the system colormap
1050         when the colormap is created, but synchronize our copy
1051         with the system colormap periodically.
1052         
1053         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
1054         Change XIM constants names to match GDK conventions
1055
1056         * gtk/testinput.c: Allow the drawing area to get the focus.
1057
1058         * gtk/testgtk.c: Change around the Text test to demonstrates
1059         multiple fonts, use more colors.
1060
1061         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
1062         so they work after a widget is unrealized.
1063
1064         * gtk/gtktext.[ch]: Remove the requirement that the text
1065         widget be realized before adding text (!) Allocate colors
1066         ourself, instead of requiring the caller allocate them.
1067         Allow changing styles to work properly by keeping track
1068         of the values for a certain property are default or
1069         set explicitely.
1070
1071         * gtk/gtkmenu.h: Added some comments.
1072
1073         * gtk/gtkentry.c: Changes to match XIM constants.
1074
1075         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
1076         for adding keyed data to drawables. (Uses g_dataset
1077         internally)
1078
1079         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
1080         when creating an XPM - store them as user data for the GdkPixmap,
1081         so we don't leak colors when we create pixmaps from XPM's.
1082
1083         Allocate memory for color information in large blocks instead of 
1084         as many little pieces.
1085         
1086 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
1087
1088         * gdk/gdkrgb.c: removed some unused variables
1089
1090         * gtk/gtkclist.c
1091         * gtk/gtkmain.c: #if 0'd out some unused code
1092
1093         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
1094
1095 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
1096
1097         * gtk/gtkarg.h:
1098         * gtk/gtkarg.c:
1099         * gtk/gtkwidget.h: 
1100         * gtk/gtkwidget.c: 
1101         * gtk/gtkobject.h:
1102         * gtk/gtkobject.c:
1103         * gtk/gtkcontainer.h: 
1104         * gtk/gtkcontainer.c: 
1105         (gtk_object_new):
1106         (gtk_object_set):
1107         (gtk_widget_new):
1108         (gtk_widget_set): 
1109         (gtk_container_add_with_args):
1110         (gtk_container_child_set):
1111         begin the parameter elipsis (...) after the first argument name. this
1112         change is source compatible, since it was always required, even as NULL.
1113         (gtk_args_collect): 
1114         (gtk_object_args_collect): 
1115         (gtk_container_child_args_collect):
1116         changed prototypes to pass first_arg_name, also, pass va_list variable
1117         by value (portability concerns). callers changed.
1118
1119         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
1120         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
1121         can't pass va_list variables by reference for portability reasons.
1122
1123 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
1124
1125         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
1126         get_visual calls, so that it gets implicitly initialized.
1127
1128 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
1129         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
1130         such as GtkCTree function name changes
1131         
1132 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
1133
1134         * gtk/gtkmain.h:
1135         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
1136         binary version check, returning a static string for error descriptions,
1137         or NULL on success.
1138
1139 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
1140
1141         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
1142         computed our geometry yet, and if not, ignore the request.
1143
1144         * gtk/gtktext.c (correct_cache_insert): Fiddled around
1145         some more. All the bug-test codes seem to work at once
1146         now. (fingers crossed...)
1147
1148 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
1149
1150         * gdk/gdkrgb.c: silly visual fixes
1151
1152         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
1153         works
1154
1155 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1156
1157         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
1158         anything if the event's window is not the bin window.
1159         (gtk_handle_box_motion): Likewise.
1160
1161 1998-08-19  Raph Levien  <raph@gimp.org>
1162
1163         * gtk/testgtk.c (create_color_preview): pushed the colormap and
1164         visual so it would work better with GdkRgb.
1165
1166 1998-08-19  Raph Levien  <raph@gimp.org>
1167
1168         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
1169         4bpp static_color mode (for vga displays). Also fixed a '64' value
1170         in the dither matrix, which was causing one pixel out of 16k to be
1171         dithered wrong.
1172
1173         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
1174         most of the contents. This is an API change - any apps that relied
1175         on the internal structure of GtkPreview will need some change -
1176         most notably in the use of reserved colors. The Gimp needed
1177         changes in this regard.
1178
1179 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
1180
1181         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
1182         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
1183         --g-fatal-warnings), noticed by miguel.
1184
1185 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
1186
1187         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
1188         getcwd().
1189
1190         * gdk/gdkprivate.h:
1191         * gdk/gdkglobals.c:
1192         * gdk/gdkwindow.c:
1193         * gdk/gdk.c:
1194         * gtk/gtkwindow.c: 
1195         * gtk/gtkitemfactory.c: 
1196         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
1197
1198         * gtk/gtkselection.c:
1199         * gtk/gtkpreview.c:
1200         * gtk/gtkobject.c: 
1201         * gtk/gtkmain.c: 
1202         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
1203
1204         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
1205
1206 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
1207
1208         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
1209         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
1210         in case of show_tabs == NULL
1211
1212 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
1213
1214         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
1215         to --g-fatal-warnings again. this option now causes log levels of
1216         WARNING and CRITICAL to abort().
1217
1218         * gdk/gdk.c: 
1219         * gdk/gdkdnd.c: 
1220         * gdk/gdkcc.c: 
1221         * gdk/gdkfont.c: 
1222         * gdk/gdkwindow.c:
1223         * gdk/gdkvisual.c:
1224         * gtk/gtkwidget.c:
1225         * gtk/gtktypeutils.c:
1226         * gtk/gtktree.c:
1227         * gtk/gtkfontsel.c:
1228         * gtk/gtkmain.c:
1229         * gtk/gtkobject.c:
1230         * gtk/gtkpreview.c:
1231         * gtk/gtkselection.c:
1232         * gtk/gtktext.c:
1233         * gtk/gtktree.c:
1234         * gtk/gtktreeitem.c:
1235         did a global search&replace to substitute g_print() calls with
1236         g_message(). libraries shouldn't use printf(), g_print() or
1237         g_printerr() at all.
1238         a bunch of the replacements should probably be wrapped into the
1239         G{D|T}K_NOTE() macros, so they are special cased for debugging
1240         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
1241         things.
1242
1243         * gdk/gdkdnd.c: added copyright notice.
1244
1245 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
1246
1247         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
1248         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
1249         running a PII 233. It's synced with the 0.0.5 release of
1250         GdkRgb.
1251
1252 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
1253
1254         * gtk/gtkclist.h:
1255         (struct _GtkCListClass): new class methods:
1256         (sort_list) (insert_row) (remove_row) (set_cell_contents)
1257
1258         * gtk/gtkclist.c :
1259         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
1260         removed and replaced by (set_cell_contents)
1261         (set_cell_contents): function for class method set_cell_contents
1262         (real_insert_row): function for class method insert_row
1263         (real_remoce_row): function for class method remove_row
1264         (real_sort_list): function for class method sort_list
1265         (default_compare): fix to avoid problems with cell types != CELL_TEXT
1266
1267         * gtk/gtkctree.h :
1268         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
1269         (gtk_ctree_node_is_visible): new function to return visibility state
1270         of a node
1271         (gtk_ctree_show_stub): new function to set visibility of root stub
1272
1273         renamed functions :
1274         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
1275         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
1276         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
1277         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
1278         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
1279         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
1280         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
1281         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
1282         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
1283         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
1284         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
1285         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
1286         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
1287         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
1288         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
1289         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
1290         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
1291         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
1292         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
1293
1294         * gtk/gtkctree.c :
1295         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
1296         removed and replaced by (set_cell_contents)
1297         (set_cell_contents): function for class method set_cell_contents
1298         (real_insert_row): function for class method insert_row
1299         (real_remoce_row): function for class method remove_row
1300         (real_sort_list): function for class method sort_list
1301         (default_compare): removed. CTree now also compares two GtkCTreeRows
1302         instead of two GtkCTreeNodes.
1303         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
1304         unlinking the node
1305         (real_tree_expand) (real_tree_collapse): fix for refcounting of
1306         node pixmaps
1307         (set_node_info): call gtk_ctree_node_set_pixtext instead of
1308         manipulating the row itself
1309         
1310         * gtk/testgtk.c: use renamed functions of GtkCTree.
1311         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
1312         at work.
1313
1314 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
1315
1316         * gtk/gtkmain.c: removed gtk_input_add_interp.
1317
1318         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
1319         keyword.
1320         (gtk_editable_get_event_time): fix default: case.
1321
1322         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
1323
1324         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
1325
1326         * gdk/gdkcolor.c:
1327         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
1328         of our functions.
1329
1330         * various minor compilation cleanups, such as bogus commas in
1331         enums and similar things.
1332
1333 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
1334
1335         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
1336         (thanx raph).
1337
1338 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1339
1340         * NEWS: updated for 1.1.2
1341         * gtk+.spec: version = 1.1.2
1342
1343 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
1344
1345         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
1346         times. changed --gtk-with-module to --gtk-module at owen's request.
1347
1348 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
1349
1350         * gtk/gtkmain.c (gtk_init): feature a new commandline option
1351         --gtk-with-module=<module> that allows additional loading and
1352         initialization of modules (e.g. GLE).
1353
1354 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
1355
1356         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
1357         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
1358
1359         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
1360         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
1361         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
1362         different *-fatal-* arguments now. this needs to be revised and
1363         compressed to a reasonable amount of arguments.
1364
1365 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
1366
1367         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
1368         "--g-fatal-warnings" causes fatal warnings in GLib,
1369         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
1370         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
1371
1372         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
1373         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
1374
1375         * gtk/testgtk.c: 
1376         * gdk/gxid.c:
1377         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
1378         since automake doesn't support per target _CFLAGS yet.
1379
1380         * configure.in: require GLib 1.1.3.
1381
1382 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
1383
1384         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
1385         to set a callback to test if a node in drag can be dropped onto
1386         it's currrent location.
1387         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
1388         to change the pointer when a drag destination is not allowed.
1389
1390 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
1391
1392         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
1393         speeds up the 565_d case by about 25% total. Thanks Ray!
1394
1395 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
1396
1397         * Changed GtkSignalFunc back to () from (void). (again!)
1398
1399         * Added file README.cvs-commits
1400         
1401 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
1402
1403         * docs/gtk_tut.sgml:
1404           - Tidy up of the menufactory example from
1405             Andy Kahn <kahn@zk3.dec.com>
1406           - New section on Range Widgets from
1407             David Huggins-Daines <bn711@freenet.carleton.ca>
1408           - Started a new section on 'Advanced Event and Signal
1409             Handling' - used an email from Owen.
1410           - New appendix on Gdk Event Types
1411           - Added the tictactoe full example code to the
1412             'Code Examples' appendix
1413
1414 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
1415
1416         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
1417           to calculate all the metrics at once of a string, including
1418           things which weren't calculated before.
1419
1420         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
1421           MenuItem type, that when put as the first thing in a
1422           menu, makes the menu tearoff. Currently drawn as a
1423           dashed line.
1424
1425         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
1426           "hide_on_activate" to the MenuItem class structure to allow
1427           check and radio buttons to be changed with <Space> without
1428           hiding the menu.
1429
1430         * gtk/gtkitemfactory.c: 
1431           - Create a AccelGroup for each MenuShell we create.
1432           - If an '_' appears before a  character 'c' in the path,
1433             then make 'c' an accelerator in the menu's accel group,
1434             and if the menuitem is menubar <alt>C an accelerator 
1435             in the itemfactory's accel group. Double '__' inserts
1436             a literal '_'
1437
1438         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
1439           which is a string. If an '_' appears in this string,
1440           the corresponding position in the label is underlined.
1441
1442           Add gtk_label_parse_uline() convenience function which
1443           takes a string with embedded underlines, sets the
1444           pattern and label, and returns the accelerator keyval.
1445
1446         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
1447           Instead, they create a GtkWindow and add themselves
1448           to that. (When torn off, another new feature, they
1449           create another GtkWindow to hold the torn off menu)
1450
1451           New function gtk_menu_set_tearoff_state()
1452         
1453         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
1454           Added action signals  for keyboard navigation of menus.
1455
1456         * gtk/gtkmenushell.c: Key press handler which activates
1457           bindings for navigation, and accelerators, for handling
1458           underline accelerators. Exported functions to select 
1459           and activate menu items in a menushell.
1460
1461         * gtk/testgtk.c: Added a new "Item Factory" test which
1462           tests GtkItemFactory and the new keyboard navigation
1463           of menus.
1464
1465 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
1466
1467         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
1468         external functions have been called. also relookup nodes after
1469         this function has been invoked.
1470
1471 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
1472
1473         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
1474           beginning of Text when creating the Text widget.
1475
1476         * gtk/testgtk.c: Grab the focus on the text widget so
1477           as to test out the above.
1478
1479 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
1480
1481         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
1482           ::changed is a notification signal and should have no default
1483           handler. A complete redraw of the Text widget does _not_ need to
1484           be done on every text insertion.
1485
1486 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
1487         (gtk-abilleira-072198-patch)
1488
1489         * gtk/gtkwindow.[ch]: 
1490           Add gtk_window_set_modal() which sets a flag; when
1491           set the window does a gtk_grab_add() when the window
1492           is shown, and a gtk_grab_remove() when the window
1493           is hidden. 
1494
1495         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
1496           that case will run "Create Dir","Delete File" and "Rename File" 
1497           dialogs as modal too.
1498
1499         * gtk/testgtk.c: Added a button with an example of creating modal 
1500           dialog boxes. Including file selection and color selection standard
1501           dialogs.
1502         
1503 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
1504
1505         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
1506           Removed CAN_FOCUS by default from scrollbars, button
1507           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
1508           (Scrollbar definitely good change, toolbar bit more questionable)
1509
1510 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
1511
1512         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
1513         Pettersen).
1514
1515 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
1516
1517         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
1518           added all logical operations to gc->function.
1519
1520 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
1521
1522         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
1523         gtk_widget_size_allocate instead of gtk_widget_queue_resize
1524         if the visibility state of a scrollbar changes.
1525
1526 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
1527
1528         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
1529
1530 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
1531
1532         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
1533         gtk_clist_merge and gtk_clist_mergesort. :)
1534
1535 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
1536
1537         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
1538         `mergesort' -> `my_mergesort'.
1539
1540 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
1541
1542         * gtk/gtkenums.h: new enum GtkSortType.
1543         
1544         * gtk/gtkclist.h:
1545         * gtk/gtkclist.c:
1546         Added sorting capabilities to GtkCList. New APIs :
1547         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
1548         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
1549         New internal functions : default_compare, merge, mergesort.
1550
1551         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
1552         
1553         (gtk_clist_insert): Modified to handle gtk_clist_append and the
1554         auto sort flag. Changed the return value from void to gint to
1555         return the row number where the element was actually inserted.
1556
1557         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
1558         
1559         * gtk/gtkctree.h:
1560         * gtk/gtkctree.c:
1561         Removed the auto_sort flag, replaced ctree->node_compare with
1562         clist->compare all over the place, modified default_compare to
1563         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
1564         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
1565
1566         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
1567         sorting. The lists can be sorted by a column by clicking the 
1568         corresponding title button.
1569         
1570 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
1571
1572         * Released GTK+ 1.1.1
1573
1574 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
1575
1576         * gtk/gtkctree.h:
1577         * gtk/gtkctree.c:
1578         (gtk_ctree_find): changed to return a gboolean
1579         (gtk_ctree_insert_gnode): new function for recursive insertion of a
1580         GNode tree.
1581         (gtk_ctree_real_select_recursive): fix for extended selection
1582         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
1583         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
1584
1585 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
1586
1587         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
1588         GLib version 1.1.1 is now required at minimum.
1589
1590         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
1591         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
1592
1593 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
1594  
1595         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
1596           cursor before (possibly) deleting the cursor's text
1597           property.
1598  
1599         * gtk/gtktext.c (correct_cache_delete): More attempts
1600           to clean the line-start cache up after inserting
1601           a property. Among other things, make sure to
1602           fix up text->current_line, since it is used to 
1603           refetch the changed lines.
1604  
1605 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
1606
1607         * gtk/gtktable.[ch]: Empty rows/columns of the table
1608         should not have been marked as being able to shrink.
1609         (Fixes problem with shrinking scrollbarless GIMP canvases)
1610
1611 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1612
1613         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
1614         function to find a row by its data pointer using a custom
1615         comparison function.
1616
1617 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
1618
1619         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
1620           this fixes a bug when the whole widget is made non-sesitive
1621           the buttons weren't redrawn
1622
1623 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
1624
1625         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
1626         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
1627         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
1628
1629 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
1630
1631         * gdk/gdkwindow.c (gdk_window_reparent): Change 
1632           window_private->parent pointer when reparenting.
1633
1634 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
1635
1636         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
1637         with the standalone release.
1638
1639 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
1640
1641         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
1642         (gtk_clist_button_release) (new_column_width): Few fixes for
1643         column resize. Store resize column in clist->drag_pos.
1644
1645 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
1646
1647         * gtk/gtkctree.h 
1648         * gtk/gtkctree.c 
1649         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
1650         to GtkCTreeNode *node.
1651
1652         * gtk/gtklist.h : added extended selection mode and auto scrolling.
1653         (struct _GtkList): removed unneeded variables timer, button,
1654         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
1655         Added new variables undo_selection, undo_unselection, last_focus_child,
1656         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
1657         drag_selection, add_mode.
1658  
1659         New functions :
1660         (gtk_list_extend_selection), (gtk_list_start_selection),
1661         (gtk_list_end_selection), (gtk_list_select_all),
1662         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
1663         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
1664         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
1665         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
1666         
1667         * gtk/gtklist.c : 
1668         (gtk_list_enter_notify): removed, because auto scrolling now works
1669         with gtk_list_motion_notify
1670  
1671         New functions, needed for auto scrolling :
1672         (gtk_list_motion_notify) (gtk_list_move_focus_child)
1673  
1674         New functions for extended selection support :
1675         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
1676         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
1677         (gtk_list_focus_lost)
1678         
1679         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
1680         function to support auto scrolling, and avoid out-of-sync errors in
1681         case auf GTK_SELECTION_BROWSE
1682         (gtk_list_focus): modified gtk_container_focus function to avoid out
1683         off sync errors in case auf GTK_SELECTION_EXTENDED
1684
1685         * gtk/gtklistitem.h 
1686         * gtk/gtklistitem.c :
1687         New signal functions for key binding support :
1688         (toggle_focus_row), (select_all), (list_item), (unselect_all)
1689         (list_item), (undo_selection), (start_selection), (end_selection)
1690         (extend_selection), (scroll_horizontal), (scroll_vertical),
1691         (toggle_add_mode)
1692         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
1693         GDK_KEY_RELEASE_MASK
1694         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
1695  
1696         * gtk/gtkcombo.c :
1697         (gtk_combo_popup_button_press):  grab pointer for combo->list
1698         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
1699         (gtk_combo_list_key_press): take care of which child HAS_GRAB
1700         (gtk_comb_init): don't connect combo->button with button_release_event
1701
1702 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
1703
1704         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
1705
1706 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
1707
1708         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
1709         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
1710         with horizontal and vertical autoscrolling.
1711
1712 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1713
1714         * gtk/docs/man: new directory
1715         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
1716
1717 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
1718
1719         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
1720         bug
1721
1722 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
1723
1724         * docs/gtk_tut.sgml: GtkTree section from
1725           David Huggins-Daines <bn711@freenet.carleton.ca>,
1726           add a GtkText widget example
1727         * examples/text/* example/tree/* : new examples for the
1728           GtkTree and GtkText widgets
1729         * docs/gtk_tut.sgml: added an appendix to hold complete code
1730           examples that aren't in a full form elsewhere in the
1731           tutorial (e.g. scribble)
1732
1733 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1734
1735         * Released GTK+ 1.1.0
1736
1737 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
1738
1739         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
1740         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
1741
1742 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
1743
1744         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
1745         values are looked up.
1746
1747         * gtk/gtktypeutils.h:
1748         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
1749         gtk_type_enums_find_value to lookup enum values.
1750
1751         * gtk/gtkctree.h: 
1752         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
1753         GtkCTreeExpansionType. fixed signal creations to pass the enum
1754         types not just the base type GTK_TYPE_ENUM.
1755
1756         * gtk/gtkclist.h: 
1757         * gtk/gtkclist.c: fixed signal creations to pass the real enum
1758         types not just the base type GTK_TYPE_ENUM.
1759
1760 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
1761
1762         * gtk/testgtk.c : 
1763         Began cleanup, e.g. use gtk_widget_show_all instead of many 
1764         gtk_widget_show's. Completely rewrote the button box sample
1765         (only one window now). Removed "miscellaneous" button.
1766
1767 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
1768
1769         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
1770         Fixed wrong allocation for GTK_BUTTONBOX_END.
1771         (allocation->x  =>  allocation->y)
1772
1773 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
1774
1775         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
1776         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
1777         
1778         * gtk/gtkctree.c (real_tree_select): added check to avoid double
1779         selected rows
1780         (gtk_ctree_button_press)
1781         (gtk_ctree_button_release): fix for pointer grab
1782
1783 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
1784
1785         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
1786         Fixed initialization problem - dirty memory could cause problems.
1787         Also checked that bitmapped fonts can be scaled when showing the
1788         available sizes.
1789
1790 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
1791
1792         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
1793         (gtk_ctree_sort_recursive): test for node != NULL
1794         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
1795         (gtk_ctree_last) : added sanity checks
1796         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
1797
1798 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
1799
1800         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
1801
1802 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
1803
1804         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
1805
1806 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
1807
1808         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
1809         to check out binding priorities. someone should really write
1810         gtkrc-mode for emacs.
1811
1812         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
1813         * gtk/testgtk.c (main): and move it here ;). this test says something
1814         on release of C-9. (this works only if the mouse pointer is on a
1815         spinbutton and there is no focus widget).
1816
1817         * gtk/gtkrc.h:
1818         * gtk/gtkrc.c:
1819         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
1820         gtk_rc_parse_priority to parse path priority types.
1821         export rc tokens.
1822         feature binding parsing.
1823
1824 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
1825
1826         * gtk/gtkbindings.h: 
1827         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
1828         feature binding parsing in rc files.
1829         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
1830         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
1831         order the bindings with lowest priority first.
1832
1833 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
1834
1835         * gdk/gdkrgb.c: actually builds and runs properly on big
1836         endian machines now, because we #include config.h. Also
1837         fixed up a compile error in the WORDS_BIGENDIAN case in
1838         gdk_rgb_convert_565_gray. I made the fix by looking at
1839         patterns in the other code; Raph can you verify this?
1840
1841         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
1842         warnings
1843
1844 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
1845
1846         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
1847         (tree_toggle_expansion) (real_select/unselect_row)
1848         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
1849
1850 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
1851
1852         * gtk/gtktext.c (new_text_property): We free things from
1853         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
1854
1855         * Fix up line start cache when splitting a property
1856         during an insert.
1857
1858 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
1859
1860         * gtk/gtkwidget.c: restauration => restoration
1861
1862 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
1863
1864         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
1865         hasn't been created yet, don't do the lookup.
1866
1867 1998-07-20  Raph Levien  <raph@acm.org>
1868
1869         * gdk/gdkrgb.c: More cleanups in the config process.
1870
1871 1998-07-20  Raph Levien  <raph@acm.org>
1872
1873         * gdkrgb.c: Fixed minor config bug preventing big-endian
1874         architectures from working.
1875
1876 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
1877
1878         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
1879         activity indicator. It is settable now as a fraction of the
1880         total width/height using gtk_progress_bar_set_activity_blocks.
1881         Renamed gtk_progress_bar_set_number_of_blocks to
1882         gtk_progress_bar_set_discrete_blocks.
1883
1884 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
1885
1886         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
1887         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
1888         tree to specified depth
1889         (gtk_ctree_expand_to_depth): expand tree to specified depth
1890         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
1891
1892 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
1893
1894         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
1895         of GTK_CLIST_ADD_MOD
1896         * gtk/testgtk.c (add1000_clist): changed pixmap
1897
1898 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
1899
1900         * gtk/gtkmain.h: 
1901         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
1902
1903         * gtk/gtktypeutils.h:
1904         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
1905
1906 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
1907
1908         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
1909         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
1910         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
1911         CHILD_ARG_POSITION
1912         (gtk_notebook_reorder_child): new funktion to change position of a
1913         notebook page
1914         (gtk_notebook_draw_arrow): draw left/right arrow with
1915         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
1916
1917         * gtk/gtkstyle.c (gtk_default_draw_arrow):
1918         added GTK_SHADOW_ETCHED_IN/OUT
1919
1920 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
1921
1922         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
1923           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
1924         Introduced generic GtkProgress widget. Derived GtkProgressBar from
1925         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
1926
1927 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
1928
1929         * gtk/gtktypeutils.h
1930         * gtk/gtkitemfactory.h: explicitly specify void in prototype
1931
1932 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
1933
1934         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
1935         of list
1936
1937 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
1938
1939         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
1940         sropped the approach of copying all signal specific data into a
1941         GtkHandlerInfo structure. we rather keep the signal data on the stack
1942         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
1943         avoids multiple lookups of the signal pointer and works savely together
1944         with destroy notifiers of handlers.
1945
1946         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
1947         someone destroys the entry on the ::activate signal.
1948
1949 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
1950
1951         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
1952         instead of ypad (typo).
1953         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
1954         border around the allocation).
1955         (gtk_arrow_init): the static requisition needs to be setup in this
1956         function rather than gtk_widget_new(), so arrow creation works without
1957         the gtk_arrow_new() constructing.
1958         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
1959
1960         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
1961         implementation for GtkWidget::size_request, so size requisition for
1962         simple statically sized widgets like GtkArrow works.
1963
1964 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
1965
1966         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
1967         prepend -I@libdir@/glib/include anymore, since glib-config handles
1968         it; --libs strips out redundant -L<path>'s properly (there was
1969         code in there to do it before, but it didn't work)
1970
1971 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
1972
1973         * gtk/gtknotebook.h: 
1974         * gtk/gtknotebook.c: signdness corrections all ove the place.
1975         implementation of object arguments: GtkNotebook::enable_popup,
1976         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
1977         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
1978         begun implementation of child args, we have GtkNotebook::tab_label, but
1979         GtkNotebook::menu_label and GtkNotebook::position still lack the
1980         implementation.
1981         (gtk_notebook_remove_page):
1982         (gtk_notebook_current_page): allow negative indices (-1) as alias for
1983         the last page.
1984
1985         * gtk/gtkentry.h:
1986         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
1987         arguments GtkEntry::max_length and GtkEntry::visibility.
1988         (gtk_entry_adjust_scroll): queue a redraw.
1989
1990         * gtk/gtkeditable.h:
1991         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
1992         object arguments GtkEditable::text_position and GtkEditable::editable.
1993         new (action) signal GtkEditable::set_editable.
1994         provide a default handler for GtkEditable::changed that queues a redraw.
1995
1996         * gtk/gtktext.h: 
1997         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
1998         set_editable.
1999
2000 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
2001
2002         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
2003         case of drag_target == NULL
2004         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
2005         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
2006         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
2007         gtk_dir_selection_file_button): fix due to changes in clist's
2008         select_row signal.
2009
2010 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
2011
2012         * gtk/gtkwidget.h:
2013         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
2014         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
2015         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
2016         to be gint16s rather than guint16s, since that's what the code expected
2017         (for a long time actually).
2018
2019         * gtk/gtkviewport.c:
2020         added support for object arguments: GtkViewport::shadow_type,
2021         GtkViewport::vadjustment and GtkViewport::hadjustment.
2022         (gtk_viewport_add): chain gtk_bin_add.
2023
2024         * gtk/gtkscrolledwindow.c: 
2025         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
2026         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
2027
2028         * gtk/gtkadjustment.h: 
2029         * gtk/gtkadjustment.c: 
2030         * gtk/gtkctree.h: 
2031         * gtk/gtkclist.h: 
2032         * gtk/gtkctree.c: 
2033         * gtk/gtkclist.c:
2034         * gtk/gtkscrolledwindow.h:
2035         * gtk/gtkscrolledwindow.c:
2036         * gtk/gtkviewport.h:
2037         * gtk/gtkviewport.c:
2038         GtkType and macro fixups.
2039
2040 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
2041
2042         * gtk/gtkctree.h :
2043         * gtk/gtkctree.c :
2044         Added focus handling, horizontal and vertical autoscrolling,
2045         extended Selection Mode, key bindings
2046         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
2047         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
2048         Removed gtk_ctree_clear.
2049         
2050         * gtk/gtkclist.h :
2051         * gtk/gtkclist.c : 
2052         Added focus handling, horizontal and vertical autoscrolling,
2053         extended Selection Mode, key bindings
2054
2055 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
2056
2057         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
2058         source tree. For more information on GdkRgb, please see:
2059         http://www.levien.com/gdkrgb/
2060
2061         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
2062         bothers me slightly that the feature is in gdk, and this file is
2063         in gtk, but it's probably ok.
2064
2065         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
2066
2067         * gdk/gdkrgb.c:
2068         * gdk/gdkrgb.h: Added this module.
2069
2070         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
2071
2072         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
2073
2074 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
2075
2076         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
2077         to this function. it needs to relookup the signal multiple times.
2078         this fixes spurious segfaults that could show up with signal intensive
2079         code, when classes are created during a pending emission (which is
2080         normal case).
2081
2082 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
2083
2084         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
2085         child if it isn't a label.
2086
2087 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
2088
2089         * gtk/gtkdialog.h: 
2090         * gtk/gtkseparator.h: 
2091         * gtk/gtkhseparator.h: 
2092         * gtk/gtkvseparator.h: macro and GtkType fixups.
2093
2094 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
2095
2096         * gtk/testgtk.c (create_cursors): display the current cursor name.
2097
2098         * gtk/gtktypeutils.h: 
2099         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
2100         the fundamental type definition. the GtkArg union now only covers
2101         the required storage types for argument values. adapted the GTK_VALUE_*
2102         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
2103
2104         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
2105         code, fixed int/float collection. fixed a bug in the sanity checking
2106         code for GtkObjects.
2107
2108         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
2109         argument collection code.
2110
2111         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
2112         macros when distinguishing the return type.
2113
2114 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
2115
2116         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
2117           is not NULL before trying to g_list_remove the child. A patch
2118           from Michael Lausch.
2119
2120 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
2121
2122         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
2123         collection (always casted to doubles upon argument passing).
2124
2125 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
2126
2127         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
2128         object_init_func for derived objects with the object's ->klass field
2129         still pointing to the corresponding base class, otherwise overridden
2130         class functions could get called with partly-initialized objects.
2131         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
2132
2133 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
2134
2135         * gtk/gtkobject.h:
2136         * gtk/gtkobject.c:
2137         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
2138
2139         * gtk/gtkcontainer.h:
2140         * gtk/gtkcontainer.c:
2141         (gtk_container_child_arg_get_info): new function which wraps
2142         gtk_arg_get_info().
2143
2144 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
2145
2146         * gtk/gtkcontainer.c:
2147         (gtk_container_arg_get): 
2148         (gtk_container_arg_set): 
2149         * gtk/gtkobject.c:
2150         (gtk_object_arg_set): 
2151         (gtk_object_arg_get):
2152         strictly check for the associated get/set arg functions. if an
2153         arg is readable or writable, the associated class functions *must*
2154         be provided.
2155
2156 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
2157
2158         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
2159         padding into account if there is an accelerator.
2160
2161 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
2162
2163         * gtk/gtkcontainer.c:
2164         (gtk_container_add_with_args): collect the arguments with
2165         gtk_container_child_args_collect, not through gtk_object_args_collect.
2166         (gtk_container_child_set): likewise.
2167
2168 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
2169
2170         * gtk/gtktypeutils.h: 
2171         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
2172         which is derived from GTK_TYPE_STRING.
2173
2174         * gtk/gtkbindings.c: reworked the argument type handling.
2175
2176 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2177
2178         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
2179           so that it seems to allow normal operation in those modes,
2180           although you will only see black  (GIMP toolbar now pops up,
2181           just don't create a new image and GIMP now works in 4 bit.)
2182
2183 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2184
2185         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
2186           array, which was too low (?)
2187
2188 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
2189
2190         * gtk/gtkcontainer.h: 
2191         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
2192         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
2193         we now export a new function gtk_container_child_args_collect().
2194         for consistency with the object arguments, a few functions got renamed:
2195         gtk_container_child_arg_get -> gtk_container_child_get,
2196         gtk_container_child_arg_set -> gtk_container_child_set,
2197         gtk_container_child_arg_getv -> gtk_container_child_getv,
2198         gtk_container_child_arg_setv -> gtk_container_child_setv,
2199         gtk_container_add_with_argv -> gtk_container_addv.
2200         note, gtk_container_add_with_args() remained, because its equivalent
2201         would be gtk_container_add(,, ...) which would break all existing code.
2202         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
2203         we expect the `arg_name' argument to be a const static string now.
2204         (gtk_container_get_child_arg_type): function removed.
2205
2206 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
2207
2208         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
2209         this is a static inline function that collects command line arguments
2210         from a va_list. this file can just be included in all places that
2211         need this functionality.
2212
2213         * gtk/gtkarg.h: 
2214         * gtk/gtkarg.c: new files which implement most of the argument
2215         handling stuff from gtkobject.c. also collected a few more
2216         gtk_arg_* utility functions from else places.
2217
2218         * gtk/gtkobject.h: 
2219         * gtk/gtkobject.c: moved most of the argument handling code into
2220         gtkarg.c. we now export gtk_object_args_collect() as a non-public
2221         method with a blind va_list pointer.
2222         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
2223         const static string now.
2224         (gtk_object_get_arg_type): function got removed.
2225
2226         * gtk/gtkwidget.c: 
2227         (gtk_widget_set): 
2228         (gtk_widget_new): adaptions for gtk_object_args_collect().
2229
2230         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
2231         fundamental type name so as to have a valid prefix, e.g. "bool"->
2232         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
2233         though that should probably be something like GtkNone since the
2234         type itself is called GTK_TYPE_NONE.
2235         even the internal type names need to avoid name clashes and must live
2236         in their own namespace, several code portions rely on that.
2237         we should relly have typedefs such as typedef gchar* GtkString; so the
2238         fundamental type names can be used for code dumpers just like with all
2239         the Gtk/Gdk types.
2240
2241 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
2242
2243         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
2244         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
2245         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
2246         (GTK_RELIEF_HALF).
2247         (gtk_button_paint): set the background for prelighted buttons with
2248         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
2249         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
2250         the shadow type (otherwise we get strange shadows for coloured buttons).
2251         (gtk_button_set_relief): queue a redraw after changing
2252         the relief.
2253         (gtk_button_class_init): 
2254         (gtk_button_set_arg): 
2255         (gtk_button_get_arg): added object argument "GtkButton::relief".
2256
2257         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
2258
2259 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
2260
2261         * gtk/gtkbutton.h:
2262         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
2263         GTK_BIN (button)->child to button->child to keep source compatibility.
2264
2265         * gtk/gtkoptionmenu.c:
2266         * gtk/gtkclist.c:
2267         * gtkcheckbutton.c: don't refer to button->child, but
2268         GTK_BIN (button)->child instead.
2269
2270 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
2271
2272         * docs/gtkfaq.sgml: update anon CVS info
2273
2274 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
2275
2276         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
2277         functions.
2278
2279         * gdk/gdkwindow.c:
2280         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
2281         to XFree() calls.
2282
2283 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2284
2285         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
2286         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
2287
2288 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
2289
2290         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
2291
2292 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
2293
2294         * gtk/gtkwidget.h:
2295         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
2296
2297         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
2298         error that prevented signal to entry addition for signals with
2299         parameters.
2300
2301 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
2302
2303         * ltconfig: fix for properly detecting shared lib support on
2304         SunPro cc (taken from libtool 1.2.a)
2305
2306 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
2307
2308         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
2309
2310 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
2311
2312         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
2313         rc set pattern is favoured, this is needed for overriding of style
2314         patterns with subsequently parsed rc files.
2315
2316 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
2317
2318         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
2319         error messages.
2320
2321 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
2322
2323         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
2324         modifier as well.
2325         (gtk_accelerator_name): add "<Release>" to the accelerator name if
2326         neccessary.
2327
2328         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
2329         account.
2330
2331         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
2332         default handler for key-release events, which checks for activation
2333         of GDK_RELEASE_MASK key bindings.
2334
2335         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
2336
2337 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
2338
2339         * gtk/gtkarrow.h: GtkType and macro fixups.
2340         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
2341         "GtkArrow::shadow_type".
2342
2343 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
2344
2345         * gtk/gtkalignment.h:
2346         * gtk/gtkbin.h: GtkType and macro fixups.
2347         
2348         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
2349         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
2350         GtkAlignment::xscale, GtkAlignment::yscale.
2351
2352 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
2353
2354         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
2355         fucntions from all parent types upon class initialization.
2356
2357         * gtk/gtkcontainer.c:
2358         (gtk_container_get_type): announce gtk_container_base_class_init to
2359         the type system.
2360         (gtk_container_base_class_init): new function to feature base class
2361         initialization.
2362         (gtk_container_get_child_arg): 
2363         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
2364         and set_child_arg methods of the class indicated through the argument
2365         name.
2366
2367         * gtk/gtkobject.c:
2368         (gtk_object_base_class_init): new function to feature base class
2369         initialization.
2370         (gtk_object_init_type): announce gtk_object_base_class_init to the type
2371         system.
2372         (gtk_object_class_init): setup the get_arg and set_arg pointers for
2373         GtkObjectClass.
2374         (gtk_object_setv): 
2375         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
2376         instead of bothering the type system with this.
2377
2378         * gtk/gtkaccellabel.c: 
2379         * gtk/gtkbutton.c: 
2380         * gtk/gtkradiobutton.c: 
2381         * gtk/gtktable.c:
2382         * gtk/gtktogglebutton.c: 
2383         * gtk/gtktipsquery.c: 
2384         * gtk/gtkbox.c: 
2385         * gtk/gtkpacker.c: 
2386         * gtk/gtkwidget.c: 
2387         * gtk/gtkwindow.c: 
2388         * gtk/gtkframe.c: 
2389         * gtk/gtkmisc.c:
2390         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
2391         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
2392         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
2393         arg functions to take a GtkObject argument.
2394
2395         gtk/gtkadjustment.c:
2396         gtk/gtkalignment.c:
2397         gtk/gtkarrow.c:
2398         gtk/gtkaspectframe.c:
2399         gtk/gtkbbox.c:
2400         gtk/gtkbin.c:
2401         gtk/gtkcheckbutton.c:
2402         gtk/gtkcheckmenuitem.c:
2403         gtk/gtkclist.c:
2404         gtk/gtkcolorsel.c:
2405         gtk/gtkcombo.c:
2406         gtk/gtkctree.c:
2407         gtk/gtkcurve.c:
2408         gtk/gtkdata.c:
2409         gtk/gtkdialog.c:
2410         gtk/gtkdrawingarea.c:
2411         gtk/gtkeditable.c:
2412         gtk/gtkentry.c:
2413         gtk/gtkeventbox.c:
2414         gtk/gtkfilesel.c:
2415         gtk/gtkfixed.c:
2416         gtk/gtkfontsel.c:
2417         gtk/gtkgamma.c:
2418         gtk/gtkhandlebox.c:
2419         gtk/gtkhbbox.c:
2420         gtk/gtkhbox.c:
2421         gtk/gtkhpaned.c:
2422         gtk/gtkhruler.c:
2423         gtk/gtkhscale.c:
2424         gtk/gtkhscrollbar.c:
2425         gtk/gtkhseparator.c:
2426         gtk/gtkimage.c:
2427         gtk/gtkinputdialog.c:
2428         gtk/gtkitem.c:
2429         gtk/gtkitemfactory.c:
2430         gtk/gtklist.c:
2431         gtk/gtklistitem.c:
2432         gtk/gtkmenu.c:
2433         gtk/gtkmenubar.c:
2434         gtk/gtkmenuitem.c:
2435         gtk/gtkmenushell.c:
2436         gtk/gtknotebook.c:
2437         gtk/gtkoptionmenu.c:
2438         gtk/gtkpaned.c:
2439         gtk/gtkpixmap.c:
2440         gtk/gtkpreview.c:
2441         gtk/gtkprogressbar.c:
2442         gtk/gtkradiomenuitem.c:
2443         gtk/gtkrange.c:
2444         gtk/gtkruler.c:
2445         gtk/gtkscale.c:
2446         gtk/gtkscrollbar.c:
2447         gtk/gtkscrolledwindow.c:
2448         gtk/gtkseparator.c:
2449         gtk/gtkspinbutton.c:
2450         gtk/gtkstatusbar.c:
2451         gtk/gtktext.c:
2452         gtk/gtktoolbar.c:
2453         gtk/gtktooltips.c:
2454         gtk/gtktree.c:
2455         gtk/gtktreeitem.c:
2456         gtk/gtkvbbox.c:
2457         gtk/gtkvbox.c:
2458         gtk/gtkviewport.c:
2459         gtk/gtkvpaned.c:
2460         gtk/gtkvruler.c:
2461         gtk/gtkvscale.c:
2462         gtk/gtkvscrollbar.c:
2463         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
2464         match the modified GtkTypeInfo structure.
2465
2466 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
2467
2468         * gtk/testgtk.c: use rand() instead of random() for portability
2469
2470 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
2471
2472         * configure.in
2473         * acconfig.h
2474         * gdk/gdk.c: use native Xlib XConvertCase if it's available
2475
2476 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
2477
2478         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
2479         XConvertCase() functionality from X11R6 on X11R5 systems.
2480
2481 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
2482
2483         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
2484         gdk_string_height, gdk_char_height to retrieve the exact
2485         height of a text.
2486
2487 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
2488
2489         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
2490           by Stefan Mars <mars@lysator.liu.se>
2491         * examples/clist/clist.c examples/clist/Makefile: example code
2492           for GtkCList widget from the Tutorial
2493
2494 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
2495
2496         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
2497         if the container is not visible, we might be a toplevel! this holds
2498         for all other base container implementations as well, that are
2499         candidates to derive toplevels from. in general the resizing code will
2500         care about visibility itself.
2501         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
2502         * gtk/gtkbox.c (gtk_box_remove): likewise.
2503
2504         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
2505         gtk_window_set_hints(), since we haven't calculated the new position
2506         yet.
2507
2508         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
2509         *mask are alway initialized in a sane way, regardless of the return
2510         value.
2511
2512 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
2513
2514         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
2515         to gtk_container_child_arg_setv, but takes a variable argument list.
2516         new function gtk_container_get_child_arg_type, which is needed by
2517         gtk_object_collect_args.
2518
2519         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
2520         take a function pointer to figure the argument type.
2521         adapted callers to pass gtk_object_get_arg_type.
2522         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
2523         gtk_object_get_arg_type..
2524
2525         * gtk/gtkpacker.h: 
2526         * gtk/gtkpacker.c:
2527         (gtk_packer_reorder_child): new function to change the packing order
2528         of a child.
2529         (gtk_packer_size_request): 
2530         (gtk_packer_size_allocate): take container->border_width into acount.
2531
2532         * gtk/gtkpacker.c: implemented widget arguments:
2533         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
2534         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
2535         implemented child arguments:
2536         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
2537         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
2538         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
2539         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
2540
2541         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
2542         not the alignment.
2543
2544         * gtk/gtkeventbox.h:
2545         * gtk/gtkeventbox.c: GtkType and macro fixups.
2546
2547         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
2548         sensitivity of an entry.
2549
2550         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
2551         for insensitive base and text.
2552
2553         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
2554         widget state dependent.
2555         (gtk_entry_style_set): likewise.
2556         (gtk_entry_state_changed): set background color on state changes.
2557         (gtk_entry_draw_text): for non selected text, use state dependent
2558         colors.
2559
2560         * gtk/gtktogglebutton.c: support for widget arguments
2561         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
2562
2563 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
2564
2565         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
2566         code for 1.0.x-like parameters. Changed internal interface of
2567         gtk_spin_button_real_spin. Several fixes to avoid emission of
2568         "value_changed" where possible.
2569
2570 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
2571
2572         * gtk-boxed.defs: s/GkWidget/GtkWidget/
2573
2574 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
2575
2576         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
2577         to select the resize_mode for the idle-labels container.
2578
2579         * gtk/gtkframe.h: 
2580         * gtk/gtkframe.c: GtkType and macro corrections.
2581
2582         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
2583         support widget argument "GtkRadioButton::group".
2584
2585 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
2586
2587         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
2588         unconditionally if resize_mode has changed.
2589
2590         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
2591         GTK_RESIZE_QUEUE on the scrolled window.
2592         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
2593
2594 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
2595
2596         * gtk/gtkcontainer.h:
2597         * gtk/gtkcontainer.c:
2598         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
2599         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
2600         (gtk_container_queue_resize): new function to queue a container for
2601         a *size* reallocation (doesn't affect its position, and thus its
2602         parent is left untouched usually).
2603         (gtk_container_get_resize_container): new function to retrive the next
2604         most resize container which is not itself queued for a resize.
2605         (gtk_container_idle_sizer): new function to carefully process the
2606         container_resize_queue since it can change during invokation of
2607         gtk_container_check_resize().
2608         (gtk_container_resize_children): total rework of this function to
2609         properly handle resize containers. makes a lot of assumptions whitch
2610         are stated in the comments.
2611
2612         * gtk/gtkcontainer.c:
2613         (gtk_container_real_check_resize): only requeue ourselves if we are not
2614         a resize container.
2615         (gtk_container_clear_resize_widgets): care for automatic deletion of our
2616         resize_widgets list on size_allocate through a handler connection.
2617
2618         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
2619         focus and default widget of a window, so to take the burden from
2620         gtk_widget_unparent.
2621
2622         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
2623         to be clever, but actually messed up the resize_children logic and
2624         caused unneccessary allocations on its whole branch. besides this,
2625         it messed up the display by not invoking a redraw after the allocation.
2626
2627         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
2628         that it is the child again that is queued for a resize.
2629         (gtk_table_attach): likewise.
2630         (gtk_table_remove): likewise.
2631
2632 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
2633
2634         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
2635         gtk_entry_adjust_scroll.  Required if you change the cursor
2636         position and want to sync it up with your code (Midnight Commander
2637         gtk front end needs this).
2638
2639         * gtk/gtktable.c: Deal with tables that have size 0, 0.
2640
2641 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
2642
2643         * examples/README.1ST: new file to explain how the
2644           code examples should be extracted from the tutorial.
2645
2646 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
2647
2648         * gtk/gtkctree.c (draw_row): added new "line style"
2649         GTK_CTREE_LINES_TABBED 
2650         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
2651         search the glist pointer of an GtkCTreeRow
2652
2653 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
2654  
2655         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
2656         from, and clean up, the dependencies.  Generate to intermediate
2657         files to prevent problems with Ctrl-C.
2658
2659         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
2660
2661 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
2662
2663         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
2664         - Bug fix for precision problem causing occasional double emission 
2665           of "value_changed" signal (hopefully works now).
2666         - API change (should be binary compatible) : 
2667           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
2668           Modified cursor example appropriately.
2669           To spin by something other than step_/page_increment, use
2670           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
2671         - Made GTK_SHADOW_NONE the default. ;)
2672         - Fixed casting of GtkAdjustment* to GtkWidget* in
2673           gtk_spin_button_value_changed.
2674
2675 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
2676
2677         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
2678         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
2679         resize widget list before queuing the container for a new reize.
2680         (gtk_container_need_resize): changed return value to FALSE, since this
2681         used to indicate that no further resizes are needed.
2682         (gtk_container_set_arg): 
2683         (gtk_container_get_arg): 
2684         (gtk_container_class_init): implemented GtkContainer::resize_mode
2685         argument.
2686
2687         (gtk_container_resize_children): when we walk up the tree of a resize
2688         widget we need to stop if we are the current parent.
2689
2690         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
2691         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
2692         (gtk_widget_hide_all): retrive the toplevel widget from via
2693         gtk_widget_get_resize_container().
2694
2695 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
2696
2697         * gtk/gtklist.c (gtk_list_button_press): Only respond
2698           to selection with button 1. This allows context-sensitive
2699           menus to work correctly.
2700
2701 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
2702
2703         * gtk/gtkaccelgroup.c: 
2704         * gtk/gtkbindings.c: 
2705         * gtk/gtkcontainer.c:
2706         * gtk/gtkitemfactory.c:
2707         * gtk/gtkobject.c: 
2708         * gtk/gtksignal.c:
2709         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
2710         g_quark_from_static_string calls to save memory.
2711
2712         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
2713         function _after_ the new data has been setup.
2714         minor changes to object data functions to feature the GQuark type.
2715
2716 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
2717
2718         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
2719           from argv.
2720
2721 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
2722
2723         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
2724           to be more readable perl, to spit out stuff that looks
2725           more like readable C, and to pipe output through indent
2726           so output looks a lot like readable C. No functional
2727           changes.
2728
2729 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
2730
2731         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
2732           necessary when switching to a masked pixmap. (Based on a patch
2733           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
2734
2735 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
2736
2737         * gtk/gtkeditable.[ch]: Added action signals for keyboard
2738           bindings. (move_cursor, kill_word, etc, etc, etc). 
2739
2740           removed the time argument from
2741           gtk_editable_cut/copy/paste_clipboard (source but not
2742           binary incompatible...) Instead get time from
2743           gtk_get_current_event ().
2744         
2745         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
2746           signals.
2747
2748 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
2749
2750         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
2751
2752         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
2753              parent class to GtkNotebookClass when splitting the widget in
2754              two.  Also updated some comments.
2755
2756         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
2757                button without a font selected.
2758
2759              Fixed bug in set_font_name - I hadn't updated the code to
2760                search for the style in the font_style clist - it was
2761                still assuming the style row was equal to its index,
2762                but it isn't any more.
2763         
2764              Changed 'Reset' button on filter page to 'Clear Filter'.
2765              Deleted old code relating to the old 'Filter Fonts' toggle
2766              Updated some comments.
2767              Cleared 'Actual Fontname' if no font is set.
2768
2769         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
2770              destroying the GtkFontSelection instead of the
2771              GtkFontSelectionDialog.
2772
2773 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
2774
2775         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
2776           flag to make all warnings fatal errors.
2777
2778         * gtk/testthreads.c: moved <pthreads.h> include inside 
2779           #ifdef USE_PTHREADS
2780
2781 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
2782
2783         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
2784           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
2785
2786         - Added new function gtk_container_set_resize_mode() for
2787           fine-grained control of where resize-queueing is done.
2788
2789         - Removed GtkContainer::need_resize and GtkWindow::move_resize
2790         - Added GtkContainer::check_resize to replace need_resize.
2791
2792         - Added function gtk_container_check_resize() to trigger
2793           queued resizes, and gtk_container_resize_children() to
2794           Figure which children need to be size-allocated. (logic
2795           moved from gtkwindow.c)
2796
2797         - Reorganized code in gtkwindow.c
2798         
2799         - Set the resize-mode for viewports so that resizes within
2800           a viewport don't propagate out of it. 
2801         
2802 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2803
2804         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
2805
2806         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
2807         g_return_val_if_fail, because the function *does* return a value.
2808
2809 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
2810
2811         * gtk/gtkaccellabel.h:
2812         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
2813         request the size of the accelerator portion of an accel label.
2814         (gtk_accel_label_size_request): don't request for the accelerators size.
2815         (gtk_accel_label_expose_event): only draw the accelerator if we got
2816         enough extra space.
2817
2818         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
2819         width from children.
2820
2821         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
2822         object (after removal has been requested) check if there is still an
2823         accelerator remaining to avoid adding two accelerators on an object.
2824         this can happen for locked accelerators (or accelerator-frozen widgets).
2825         (gtk_menu_size_request): feature childrens accelerator width in size
2826         requests.
2827
2828         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
2829         gtk_widget_freeze_accelerators() for dynamically created menu items.
2830
2831         * gtk/gtksignal.h: 
2832         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
2833         which will return a handler_id > 0 if the specified function is pending
2834         for `signal_id'.
2835
2836         * gtk/gtkwidget.h:
2837         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
2838         a signal handler function to stop accelerator addition.
2839         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
2840         which will prevent (undo) any accelerators from being added to or
2841         removed from a widget.
2842
2843 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
2844
2845         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
2846         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
2847         acceleration, new API gtk_spin_button_set_snap_to_ticks.
2848
2849 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
2850
2851         * gdk/gdk.h:
2852         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
2853         the current GdkWindow the pointer is on if there is any.
2854         
2855         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
2856         and one column, so we don't construction logic at all. changed a few
2857         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
2858         unsigned int wraps.
2859
2860         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
2861         portion, added an additional check for parent != widget.
2862
2863         * more GtkType and macro fixups.
2864
2865 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2866
2867         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
2868         "clip" parameter, which is the clipping rectangle to use.  This
2869         eliminates the extremely annoying flicker when exposing parts of
2870         the handlebox.
2871
2872 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
2873
2874         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
2875         resizing
2876
2877 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
2878
2879         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
2880         != 0 on the argument.
2881
2882         * gtk/gtktable.h: 
2883         * gtk/gtktable.c: new function gtk_table_resize() which allowes
2884         shrinking and expanding of tables. implementation of widget arguments
2885         and child arguments. many signedness corrections.
2886
2887 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
2888
2889         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
2890         not only the child, otherwise we might end up taking away other
2891         childrens space after the resize.
2892
2893         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
2894         an unknown menu path from any source, that path must always be flagged
2895         as "modified", since we don't really know whether it has its default
2896         value or not.
2897
2898         * gtk/gtktree.c:
2899         * gtk/gtkpacker.c:
2900         * gtk/gtknotebook.c:
2901         * gtk/gtkmenushell.c:
2902         * gtk/gtklist.c:
2903         * gtk/gtkpaned.c:
2904         * gtk/gtkfixed.c: 
2905         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
2906
2907         * gtk/gtkbox.h: 
2908         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
2909         arguments. implemented child arguments.
2910
2911         * more GtkType and macro fixups.
2912
2913 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
2914
2915         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
2916
2917         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
2918         and gtk_clist_get_hadjustment.
2919
2920         * gtk/gtkcontainer.c:
2921         implementation of children arguments, new class member functions
2922         (child_type), (get_child_arg) and (set_child_arg) plus a new field
2923         n_child_args.
2924         (gtk_container_child_type): new function which returns the type of a
2925         child that the container expects for its next addition.
2926         (gtk_container_add_child_arg_type): new function to introduce a new
2927         child argument at class creation time.
2928         (gtk_container_query_child_args): new function to query all child
2929         arguments that are supported by a container class.
2930         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
2931         child argument.
2932         (gtk_container_child_arg_setv): new function to set a child argument for
2933         a certain container and child combination.
2934         (gtk_container_add_with_args):
2935         (gtk_container_add_with_argv): new functions to feature addition of a
2936         new child in combination with the setting of certain child arguments.
2937
2938         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
2939         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
2940         this should really be done through class cretion hooks some day.
2941
2942         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
2943         guint : 16.
2944
2945         * gtk/gtkpacker.h:
2946         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
2947         follow the gtk convention for lower case variable names (important
2948         for language wrappers and widget arguments), and made them guint : 16.
2949
2950         * examples/packer/pack.c: adaptions for the case converted GtkPacker
2951         fields.
2952
2953 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
2954
2955         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
2956         change the character pair for single line comments.
2957         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
2958         GtkItemFactoryClass.
2959         (gtk_item_factory_parse_rc_string): likewise.
2960
2961 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
2962
2963         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
2964         lists from the klass structure to a static structure
2965         in gtkfontsel.c; cleans up global the namespace.
2966
2967 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
2968
2969         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
2970         bug with /*< skip >*/ and remove warning.
2971         
2972 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
2973
2974         * gtk/Makefile.am: Made the gtkmarshal.* generation
2975         rules maintainer-only.
2976
2977 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
2978
2979         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
2980           gtk/Makefile.am gtk/makenums.pl 
2981
2982         Removed out the G_ENUM/FLAGS mechanism in favor
2983         of a perl script that parses the standard headers
2984         (with occasional /*< nick=foo >*/ style overrides)
2985         and extracts the enumerations.
2986
2987           gtk/maketypes.awk: Small improvments to the
2988           translation of names. (Avoid splitting gc into
2989           g_c_.)
2990         
2991 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
2992
2993         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
2994         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
2995         
2996 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
2997
2998         * gtk/gtkentry.c:
2999         - Restored gtk_entry_adjust_scroll to static 
3000         - Changed text positioning code so that we always
3001           display as large a portion of the text as possible.
3002
3003 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
3004
3005         * gtk/gtktext.c (gtk_text_finalize): Free internal
3006         structures of text widget. Also, unreference pixmaps
3007         when unrealizing.
3008         
3009 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
3010
3011         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
3012         3.3.1 bug workaround to number keys starting at 1.
3013
3014 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
3015
3016         * docs/gtk_tut.sgml: Fixed urls for complete example
3017         source for scribble+widget-writing examples.
3018
3019 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
3020
3021         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
3022         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
3023         specs of the form c #abcdef [ more keys ] properly.
3024
3025 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
3026
3027         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
3028         (gtk_spin_button_set_shadow_type):
3029         New API to set the shadow type of the arrow panel.
3030
3031 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
3032
3033         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
3034         code for drawing the child in two places at once. Unfortunately,
3035         not only does it not work anymore (because reparenting has
3036         been fixed), but it also triggers reparent/expose loops
3037         in some cases.
3038
3039         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
3040         an unecessary unrealize.
3041
3042 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
3043
3044         * gdk/gdkwindow.c (gdk_window_reparent): Update the
3045           old and new parents' child window lists properly.
3046
3047 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
3048
3049         * gtk/gtkpacker.h:
3050         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
3051         and GtkSideType, to be consistent with the rest of Gtk's enum
3052         definitions. wrapped the enum definitions with the G_ eunm wrappers.
3053         spelled out the GTK_ANCHOR_* enum values, since single letters don't
3054         work out corectly as nick-names (left the old values as aliases).
3055         some signdness corrections (border-width, spacing), could stand more.
3056
3057 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3058
3059         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
3060           Added gtkpacker
3061
3062         * examples/packer/pack.c, examples/packer/Makefile: Added
3063           gtkpacker example
3064
3065 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
3066
3067         * gtk/gtktext.c (remove_cache_line): Fixed broken
3068         list-removal code.
3069
3070         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
3071         Check bounds before deleting.
3072
3073 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
3074
3075         * autogen.sh: Support ACLOCAL_FLAGS
3076
3077 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
3078
3079         * gtk-config.in: Added missing quotes.
3080
3081 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
3082
3083         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
3084
3085 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
3086
3087         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
3088         G_COMPILED_WITH_DEBUGGING.
3089
3090         * configure.in (fd_set): Explain check better.
3091
3092         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
3093         the version from which gtk+'s libtool forked.  Needed for people
3094         who use post-1.2 alphas of libtool.
3095
3096 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
3097
3098         * glib/* Moved to glib module
3099
3100         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
3101           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
3102
3103           configuration changes for the above:
3104          
3105           - Use AM_PATH_GLIB by default to find glib; also accept
3106             a --with-glib option for using an uninstalled glib.
3107          
3108           - Put --enable-debug information into config.h so
3109             that we rebuild when it changes. (was in glibconfig.h)
3110
3111 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
3112
3113         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
3114
3115         * gtk/gtknotebook.h (struct _GtkNotebookClass):
3116         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
3117         added missing argument (according to Joseph Coleman's bug report)
3118
3119         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
3120         function to fix notebook focus handling
3121         
3122 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
3123
3124         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
3125           glib/gutils.c glib/testglib.c glib/gdataset.c
3126           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
3127           gtk/gtktext.c gtk/gtkbindings.c:
3128
3129          renamed g_const_pointer => gconstpointer
3130
3131 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
3132
3133         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
3134         invoked with (NULL, NULL); (this worked sometime ago).
3135
3136         * gtk/gtktypeutils.h: 
3137         * gtk/gtktypeutils.c: enum and flags type creation can now be done
3138         through gtk_type_register_enum() and gtk_type_register_flags(),
3139         which allow to specify the enum value arrays directly.
3140         the NULL terminated value arrays can be retrived through
3141         gtk_type_enum_get_values() and gtk_type_flags_get_values();
3142         (gtk_type_children_types): new function to query derived types.
3143
3144 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
3145
3146         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
3147         environment to genmarshal.pl.
3148         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
3149         rule), and removed it where not needed (in the dependencies).
3150
3151         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
3152
3153 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
3154
3155         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
3156         was just g_direct_hash.
3157
3158 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
3159
3160         * configure.in: x_libs=, not $x_libs=. Enough said.
3161           (Case only hit for --disable-xshm)
3162         
3163 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
3164
3165         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
3166           when testing for X libraries, don't replace them. Because
3167           the user might have specified the path to the X libraries
3168           themself before running configure.
3169
3170         * examples/**.c: Changed all gpointer * to gpointer
3171         
3172 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3173
3174         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
3175         fleur_cursor field.  Now the cursor is created/destroyed on demand
3176         by the routines that need it.
3177
3178         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
3179         (gtk_handle_box_motion): The fleur cursor is created and destroyed
3180         only when needed.
3181
3182 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
3183
3184         * gtk/gtktypeutils.h: 
3185         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
3186         gtk_enum_set_values to gtk_type_enum_get_values and
3187         gtk_type_enum_set_values respectively, since they are actually type
3188         system features.
3189
3190         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
3191         my last commit. ;)
3192
3193 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
3194
3195         * gtk/gtkselection.h: 
3196         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
3197         gtk_selection_data_free.
3198
3199         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
3200         for "selection_received", which was completely bogus.
3201         * other fixups to gtk_signal_new() calls all over the place.
3202
3203         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
3204         * gtk/gtktypebuiltins_vars.c: type variable implementations.
3205         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
3206         declarations.
3207         * gtk/gtktypebuiltins_evals.c: enum value arrays.
3208         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
3209         gtk.defs.
3210         * gtk/gtk.defs: generated file with scheme syntax for type definitions
3211         of gtk and gdk structures and enums.
3212         * gtk/gtktypeutils.h: 
3213         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
3214         macros anymore (this fixes binary incompatibility with new enum
3215         definitions).
3216
3217         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
3218         key bindings for this widget.
3219         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
3220         handler.
3221
3222         * gtk/gtkobject.h:
3223         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
3224         again. new functions gtk_object_class_user_signal_new () and
3225         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
3226         flag on the signal creation.
3227
3228 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
3229
3230         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
3231
3232 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
3233
3234         * gdk/gdkprivate.h: 
3235         * gdk/gdktypes.h: 
3236         * gtk/gtkprivate.h: 
3237         * gtk/gtkwidget.h: 
3238         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
3239
3240         * reworked enum value array generation code. gtk.defs is a generated
3241         file now.
3242
3243 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
3244
3245         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
3246         check menu items in the compatibility code (this required me to remove
3247         the "<check>" part from the menu item name, grrr).
3248
3249 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
3250
3251         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
3252         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
3253         
3254 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
3255
3256         * gtk/gtkitemfactory.h: 
3257         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
3258         additions to the dumping code to feature GtkPatternSpec.
3259         even found a bug to fix in the original code ;)
3260         
3261 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
3262
3263         * gtk/gtkitemfactory.c: support different types of callbacks, to
3264         maintain existing code.
3265
3266 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
3267
3268         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
3269
3270         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
3271         this should eventually be done by gentypeinfo.el somewhen.
3272         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
3273
3274         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
3275         enum values of an enum type.
3276
3277         * gtk/gtk.defs:
3278         * gtk/gtkcurve.h: 
3279         * gtk/gtkobject.h: 
3280         * gtk/gtkprivate.h: 
3281         * gtk/gtkwidget.h:
3282         * gtk/gtkenums.h: 
3283         brought enum/flags definitions in sync, added a few more enum
3284         definitions for bindings and pattern matching.
3285
3286         * some more macro and GtkType fixups in various places.
3287
3288         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
3289         as a key-release modifier for the binding system.
3290
3291 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
3292
3293         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
3294         was a stale list pointer that is already present in GtkMenuShell.
3295
3296         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
3297         GtkMenuShell::selection_done which is emitted after the menu shell
3298         poped down again and all possible menu items have been activated.
3299
3300 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
3301
3302         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
3303         before activation of the menuitem, so the menu is actually taken off the
3304         screen prior to any menu item activation.
3305
3306         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
3307         for NULL nodes.
3308
3309         * gtk/gtkwidget.h:
3310         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
3311         the emission of the "add-accelerator" signal on a widget. this is
3312         usefull to prevent accelerator installation on certain widgets.
3313
3314         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
3315         labels left justified, by setting their alignment. stop accelerator
3316         installation for the menu items, since we use dynamic menus.
3317
3318 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
3319
3320         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
3321         should *really* use GtkItemFactory. this is only for preserving source
3322         compatibility where possible, use of GtkMenuFactory is deprecated as of
3323         now.
3324
3325         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
3326         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
3327         missed this possibility when i added gtk_object_class_add_user_signal
3328         in late january.
3329
3330         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
3331
3332 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
3333
3334         * gtk/gtkaccelgroup.h: 
3335         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
3336
3337         * gtk/gtkaccellabel.h: 
3338         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
3339         display of the accelerators associated with a certain widget.
3340
3341         * gtk/gtkitemfactory.h: 
3342         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
3343         parsing and accelerator handling.
3344
3345         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
3346         positioning a menu.
3347         (gtk_menu_map): removed the allocation code.
3348         (gtk_menu_size_allocate): care for redrawing of children and resize
3349         our widget->window correctly.
3350         (gtk_menu_key_press): feature the new accelerator groups.
3351
3352         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
3353         submenu if neccessary.
3354
3355         * gtk/gtkmenuitem.c:
3356         * gtk/gtkcheckmenuitem.c:
3357         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
3358         function variants.
3359
3360         * gdk/gdk.c:
3361         (gdk_keyval_from_name): 
3362         (gdk_keyval_name): new functions for keyval<->key-name associations.
3363         (gdk_keyval_to_upper): 
3364         (gdk_keyval_to_lower): 
3365         (gdk_keyval_is_upper): 
3366         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
3367         regards to their cases.
3368
3369 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
3370
3371         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
3372         widget's class path.
3373         (gtk_widget_path): new function to calculate a widget's name path.
3374
3375         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
3376         pattern matching, features reversed pattern matches.
3377
3378 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
3379
3380         * examples/extract.sh, examples/extract.awk:
3381           New files to automagically extract code examples from the
3382           tutorial.
3383
3384 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
3385
3386         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
3387         * gtk/gtkcontainer.c (gtk_container_focus_move):
3388         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
3389
3390 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
3391
3392         * docs/gtk_tut.sgml: minor changes to support auto
3393           extraction of example code
3394
3395 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
3396
3397         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
3398           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
3399
3400 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
3401
3402         * docs/gtk_tut.sgml:
3403           - new section on Events
3404           - change all delete_event callbacks to include
3405             a GdkEvent parameter
3406           - clean up the formatting
3407
3408         * examples - helloworld.c, helloworld2.c, notebook.c,
3409           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
3410           rulers.c, table.c, wheelbarrow.c: change all delete_event
3411            callbacks to include a GdkEvent parameter.
3412
3413 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3414
3415         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
3416         field of crossing events.
3417         (struct _GdkEventCrossing): Added the following fields: time, x,
3418         y, x_root, y_root, mode, focus, state.
3419
3420         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
3421         crossing event structure.
3422
3423         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
3424         changes to the crossing event structure.
3425
3426 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
3427
3428         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
3429
3430 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
3431
3432         * docs/gtk_tut.sgml:
3433            - GtkTooltips, update to current API
3434            - change all 'gpointer *data' to 'gpointer data'
3435            - other minor changes
3436
3437 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
3438
3439         * configure.in (LDFLAGS): Bomb out with a moderately
3440           helpful message if detection of X libraries fails.
3441
3442 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
3443
3444   [ Combination of:
3445      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
3446      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
3447
3448         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
3449           gtk/gtksignal.c gtk/gtktext.c: 
3450
3451           Fixups for warnings from adding const to type of GHashFunc,
3452           GCompareFunc
3453         
3454         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
3455           ansi-warnings fixups.
3456
3457 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
3458
3459         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
3460         Locate child at (border_width,border_width), not
3461         (2*border_width,2*border_width). [ The border is _outside_
3462         widget->window ]
3463         
3464         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
3465           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
3466
3467 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3468
3469         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
3470         used in gnome-libs
3471
3472 1998-05-22    <sopwith@redhat.com>
3473
3474         * gtk/gtkeventbox.c: Pass size_allocate on to the child
3475         regardless of whether it is visible or not. Also
3476         locate child at (border_width,border_width), not (0,0)
3477
3478 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
3479
3480         * gtk/gtkhandlebox.c: Added style_set handler.
3481
3482 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
3483  [ From: Chris Lahey  <clahey@umich.edu> ]
3484         
3485         * gtk/gtkeditable.c, gtk/gtkeditable.h,
3486           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
3487           and set_position functions to get and set the cursor position.
3488
3489         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
3490           signal status. Make GtkText do user-controlled insertion
3491           and deletion through the Editable widget so that these
3492           signals are properly emitted.
3493
3494         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
3495           display asterisks instead of empty space when visible = FALSE)
3496
3497 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
3498
3499         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
3500         signal.
3501
3502 1998-05-21    <sopwith@redhat.com>
3503
3504         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
3505         custom routine for loading images specified in gtkrc's.
3506
3507 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
3508
3509         * configure.in: Use pthread_attr_init() as a test function,
3510         since most of the rest of -lpthread is macros on DU4.
3511
3512 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
3513
3514         * gtk/gtkcombo.c: implemented completion in the entry.
3515
3516 1998-05-18    <sopwith@moebuis.labs.redhat.com>
3517
3518         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
3519
3520 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
3521
3522         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
3523         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
3524         to be of runtype GTK_RUN_LAST.
3525
3526         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
3527         "need-resize".
3528
3529         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
3530         "widget-selected".
3531
3532 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
3533
3534         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
3535         text retrived from GtkEntry. only intercept the Tab key if there
3536         was some text to complete.
3537
3538 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
3539
3540         Basic thread-awareness:
3541
3542         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
3543
3544         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
3545         gdk_threads_[init/enter/leave] for applications, plus
3546         gdk_threads_wake to wake the mainloop thread out of
3547         the select().
3548
3549         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
3550
3551 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
3552
3553         * gtk/testgtk.c (list_clear): Account for the fact
3554         that gtk_list_clear_items is not inclusive. (Clears
3555         [start, end))
3556
3557 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
3558
3559         * gdk/gdk.c: include gdkkeysyms.h always
3560         
3561
3562 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
3563
3564         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
3565         the visibility_notify_event method and changed method order.
3566
3567 1998-05-14    <sopwith@moebuis.labs.redhat.com>
3568
3569         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
3570
3571 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
3572
3573         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
3574         from Olli Helenius <ollhel@batman.jytol.fi>.
3575
3576         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
3577         freeing types.
3578         (gtk_type_set_chunk_alloc): new function to allow allocation of new
3579         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
3580         thorugh g_malloc).
3581
3582         * gtk/gtkobject.c (gtk_object_finalize): free an object through
3583         gtk_type_free().
3584
3585         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
3586         GtkButtons to 16.
3587         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
3588         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
3589
3590 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
3591
3592         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
3593           GPOINTER_TO_UINT fixes.
3594
3595         * gtk/gtksignal.c: Include <string.h> for memset.
3596
3597 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
3598         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
3599
3600         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
3601         Cleanups, comments and the ability to have rulers with 
3602         a reversed direction.
3603
3604 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
3605
3606         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
3607         that Sopwith missed when changing stat => lstat.
3608
3609 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
3610
3611         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
3612           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
3613         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
3614
3615         * gdk/gdk.c: Print sizeof() results
3616         as g_print("%ld", (glong)sizeof(foo)), to deal with
3617         sizeof() being long on Alpha's.
3618
3619         * gtk/testgtk.c: include <string.h> for strlen
3620
3621 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
3622         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
3623         
3624         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
3625         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
3626
3627         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
3628
3629 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
3630         (From: Christopher James Lahey <clahey@umich.edu>)
3631         
3632         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
3633           gtk/testgtk.c:
3634
3635         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
3636         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
3637         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
3638         the default relief for the toolbars buttons. Added an
3639         toggle for the toolbar test in testgtk.c.
3640
3641 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
3642
3643         * docs/gtk-config.1: Rewritten and hopefully improved.
3644
3645 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
3646
3647         * docs/Makefile.am
3648         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
3649
3650 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3651
3652         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
3653         GtkPreview's visual and colormap, otherwise things can BadMatch.
3654
3655         * gtk/testgtk.c (create_color_preview): 
3656         (create_gray_preview): Removed pushing/popping of visual/colormap
3657         now that GtkPreview does things correctly.
3658
3659         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
3660         (gtk_color_selection_draw_wheel): Pick the style from the correct
3661         place (the colorsel->wheel_area widget) so that the GCs will match
3662         with where we are going to paint to.
3663
3664         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
3665         of visual/colormap now that GtkColorSelection does things the
3666         right way.
3667
3668 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
3669
3670         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
3671         previously unused window->need_resize flag to mark if a window's
3672         descendents changed size while the window was not visible. In this
3673         case, when the window becomes visible, we reallocate everything,
3674         since we didn't keep track of what actually changed.
3675
3676         (Fixes bug where changing the popdown strings of a
3677         combo to something of the same length caused them to
3678         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
3679
3680 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
3681
3682         [security audit by Alan Cox]
3683
3684         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
3685         exceed maximum assumed size.
3686
3687         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
3688         not exceed maximum assumed size.
3689         (gtk_menu_factory_remove): likewise.
3690         (gtk_menu_factory_find_recurse): likewise.
3691
3692 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
3693
3694         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
3695         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
3696         redrawn if that is still neccessary. don't allow queueing of already
3697         destructed objects.
3698         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
3699         widgets which are in the queue can be destroyed safely, handle
3700         requeueing properly.
3701         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
3702         widgets which are in the queue can be destroyed/unrealized safely.
3703
3704 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
3705
3706         * gtkfaq.sgml: add question on multi-threading,
3707           minor URL cleanups.
3708
3709 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
3710
3711         * configure.in (cflags_set): preserve automake CFLAGS.
3712
3713         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
3714         and libgdk-1.1.la. this means we need to change certain portions of
3715         the Makefile.am on major/minor version bumps.
3716
3717         * ltmain.sh: the -release option is not required anymore.
3718         
3719         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
3720         of the first argument to be of type GtkObject. unconditionally compile
3721         this function. removed __GNUC__ dependancy of the gtk_object_ref and
3722         gtk_object_unref macro wrappers for this function.
3723
3724 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
3725
3726         * gtk/gtkobject.h:
3727         * gtk/gtkobject.c:
3728         (gtk_object_data_try_key):
3729         (gtk_object_data_force_id): these are now macros substituting the old
3730         functions. we just use the corresponding g_dataset_* functions for
3731         key->id associations. (this is to assure unique key<->id associations).
3732
3733 1998-05-10  Stefan Jeske  <stefan@gtk.org>
3734
3735         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
3736         to gboolean.
3737
3738         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
3739
3740 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
3741
3742         * configure.in (LIBS): Try to figure out if this
3743         is Digital Unix and we need -std1 to get the
3744         right prototypes.
3745
3746 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
3747
3748         * docs/gtk_tut_it.sgml: update of Italian tutorial
3749           translation from Daniele Canazza <dcanazz@tin.it>
3750
3751 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
3752
3753         * gtk/gtkfeatures.h.in: new file used as template for
3754         * gtk/gtkfeatures.h: new file to define macros indicating newly
3755         introduced features, such as GTK_HAVE_SIGNAL_INIT.
3756
3757         * gtk/gtksignal.c:
3758         (gtk_signal_emitv_by_name):
3759         (gtk_signal_emitv):
3760         new functions to emit signals with an already provided parameter set.
3761         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
3762         (gtk_signal_real_emit): prototype changes, so this functions always
3763         gets its parameters and signal structure as arguments.
3764         (gtk_signal_emit): provide the signal structure and parameter list for
3765         gtk_signal_real_emit.
3766         (gtk_signal_emit_by_name): likewise.
3767
3768 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
3769
3770         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
3771         signal connections through unsetting GTK_CONNECTED.
3772         (gtk_signal_handler_insert): reflect the presence of signal connections
3773         through setting GTK_CONNECTED.
3774         (gtk_signal_real_emit): only check for handler emissions if the object
3775         has the GTK_CONNECTED flag set.
3776         (gtk_signal_handler_pending): don't check for pending handlers if the
3777         GTK_CONNECTED flag is not set for this object.
3778
3779         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
3780         a GtkObject has signal handler connections.
3781
3782         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
3783         set for this object call gtk_signal_handlers_destroy().
3784         
3785         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
3786         multiple processing of macro args.
3787
3788         * gtk/gtktypeutils.c:
3789         * gtk/gtkobject.c:
3790         * gtk/gtkwidget.c:
3791         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
3792
3793 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
3794
3795         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
3796         draw-queue when we are done. 
3797
3798         (gtk_widget_queue_draw/_queu_resize): Always return
3799         FALSE and avoid having two idles at the same time.
3800         
3801 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
3802
3803         * gtk/gtktext.c: Various fixes to make sure cache
3804         lines are freed if line_start_cache doesn't point to the
3805         beginning of the cache.
3806
3807 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
3808
3809         * style_set improvements for GtkText and GtkEntry
3810
3811 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
3812
3813         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
3814         been initialized.
3815
3816 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
3817
3818         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
3819         data chunks through a global object data structure list. unlink
3820         object data before invoking its destroy function.
3821         (gtk_object_finalize): slight modification to allow usage of object
3822         data during object finalization.
3823
3824 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
3825
3826         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
3827         signal names, e.g. "signal-name" is now an alias for "signal_name".
3828         (gtk_signal_handler_new): allocate handlers through a global handler
3829         structure list, that's faster than memchunks.
3830         (gtk_emission_new): allocate emissions through a global emission
3831         structure list, that's faster than memchunks.
3832
3833 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
3834
3835         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
3836
3837         * ltmain.sh: added a new commandline flag -postfix similar to -release,
3838         but will immediately change the library name.
3839
3840         * gdk/Makefile.am:
3841         * gtk/Makefile.am: specify -postfix and -version-info
3842
3843         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
3844         GTK_BINARY_AGE. calculate LT_* variables for libtool.
3845
3846 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3847
3848         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
3849         background (fg_set -> bg_set confusion).
3850
3851 1998-05-06  Stefan Jeske  <stefan@gtk.org>
3852
3853         * gtk/testgtk.c (unselect_all): Removed code that caused an
3854         endless loop.
3855
3856 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
3857
3858         * gtk/gtksignal.c: reimplemented the signal storage system to use a
3859         linear array rather than a hash table.
3860         be carefull *not* to keep any GtkSignal pointers across invokations
3861         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
3862         general code cleanups, made all allocations through memchunks.
3863         (gtk_signal_lookup): we now do the lookup of signals through a key_id
3864         for the signal names to avoid multiple hashing of the signal name on
3865         lookups for the several hirarchy levels of an object.
3866
3867 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
3868
3869         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
3870         to speed things up and remove code duplication.
3871
3872         Reintegrated buffer overflow patches, and added
3873         some extra paranoia.
3874         
3875 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
3876
3877         * gdk/gdk.c (gdk_event_translate): A guint * was
3878         being passed where X expected a Keysym *, and
3879         keysyms are long's on Alpha Linux. This was causing
3880         segfaults in Xlib, apparently because of alignment.
3881         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
3882         
3883 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
3884
3885         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
3886         set GDK_EXPOSURE_MASK for DrawingAreas
3887
3888 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
3889
3890         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
3891         (superceded by RC file reparsing capabilities)
3892
3893         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
3894         events. (Shouldn't be sent to the InputOnly leader, which
3895         it is now by gdk_event_send_clientmessage_toall
3896
3897         * gtk/testgtk.c: Added extra button to rcfiles test
3898         to send out _GDK_READ_RCFILES events.
3899         
3900 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
3901
3902         * gtk/gtkselection.c (gtk_selection_clear): Fixed
3903         reversed conditionals that caused segfault on some
3904         platforms.
3905
3906 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
3907
3908         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
3909         cast to GTK_OBJECT for gtk_object_ref.
3910
3911 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
3912
3913         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
3914         checking for signal initialization in gtksignal.c.
3915
3916         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
3917         a long debugging period ;)
3918
3919 1998-05-05  Stefan Jeske  <stefan@gtk.org>
3920
3921         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
3922         New function to wrap XSetDashes; modified gtkctree.c to use it.
3923
3924 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3925
3926         * configure.in: Added $x_libs in the other_libraries field in the
3927         check for XShapeCombineMask.
3928
3929 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
3930
3931         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
3932         gtk_type_is_a().
3933         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
3934         linear array rather than a hash table. it actually speeded up testgtk
3935         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
3936         pointers across invokations of gtk_type_node_next_and_invalidate() and
3937         therefore gtk_type_unique()!
3938
3939         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
3940         inheritance of a class pointer.
3941         (GTK_OBJECT): modifications for speedups.
3942         (GTK_IS_OBJECT): likewise.
3943         (GTK_OBJECT_CLASS): likewise.
3944         (suggested by owen).
3945
3946         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
3947
3948         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
3949
3950         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
3951         since its derivation changed 4 month ago ;(. showed up with the unique
3952         type name checking code in gtk_type_unique().
3953
3954         * random guint->GtkType and macro fixups.
3955
3956 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
3957
3958         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
3959         Configure events that would result in a negative
3960         size.
3961
3962 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
3963
3964         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
3965         "glibconfig.h" and another about writing another IRC
3966         client.
3967
3968 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
3969
3970         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
3971         parameters to log are doubles. Digital Unix apparently
3972         is missing the argument in its prototype.
3973
3974 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
3975
3976         * gtk/gtklabel.c (gtk_label_state_changed): Don't
3977         force a clear until the widget is actually on
3978         screen.
3979
3980 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
3981
3982         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
3983         to make this consistent with the gtk-1-0 tree.
3984
3985 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
3986
3987         * configure.in acheader.h gdk/gdkwindow.c 
3988         Check for Shape extension both on the client and server
3989         side. (And, more importantly, check for the shape extension
3990         so we may include -lXext even when compiling with --disable-xshm)
3991
3992         Don't set override_redirect on all shaped windows. It isn't
3993         necessary.
3994
3995         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
3996         and foreign windows. Use this to check if we
3997         need to get the colormap from X.
3998
3999 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
4000
4001         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
4002         between the default and the button always in GTK_STATE_NORMAL.
4003
4004         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
4005         callback.
4006
4007 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
4008
4009         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
4010           Fix a buffer overflow on pixmaps that claim to have
4011           more than 31 characters per pixel.
4012
4013           (gdk_pixmap_read_string): Don't wrap around strings longer
4014           than half of address space ;-)
4015
4016         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
4017         that were used for printing integers.
4018
4019         * */* (almost):
4020
4021         Style: All 
4022           int foo () { ... }
4023         changed to
4024           int foo (void) { ... }
4025
4026         Even where there were proper prototypes elsewhere.
4027
4028         * gdk/gxid.c (handle_claim_device): Some extra checks.
4029         It isn't safe against being fed bad X id's, but at
4030         least it should be safe against deleting all your
4031         files.
4032
4033 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
4034
4035         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
4036         to set the adjustments value when there is no current emission.
4037         [ Removed by mutual agreement owt 5/3/1998 ]
4038
4039         * gtk/gtksignal.c: added new functions to retrive the number of
4040         existing emissions for a certain signal.
4041         (gtk_signal_n_emissions): new function.
4042         (gtk_signal_n_emissions_by_name): new function.
4043
4044 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
4045
4046         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
4047         set the current focus_child of a container, does proper referencing and
4048         adjusts the vadjustment/hadjustment associated with the focus widget.
4049
4050         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
4051         containers via gtk_container_set_focus_child.
4052
4053         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
4054         where appropriate.
4055
4056         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
4057         child since not every child removal goes through this function (this
4058         showed up after gtk_container_set_focus_child() started to reference the
4059         focus_child of a container).
4060
4061         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
4062         of a container from gtk_container_remove into this place.
4063
4064 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
4065
4066         * gtk/gtksignal.c: added new functions to operate on intermediate
4067         function pointers. implemented incremental blocking.
4068         (gtk_signal_disconnect_by_func): new function.
4069         (gtk_signal_handler_block_by_func): new function.
4070         (gtk_signal_handler_unblock_by_func): new function
4071
4072 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
4073
4074         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
4075         Always show the scrollbars when the policy is
4076         GTK_POLICY_ALWAYS...
4077
4078 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
4079
4080         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
4081         "value_changed" if we really passed a new value.
4082         (gtk_adjustment_changed): new function to emit the "changed" signal.
4083         (gtk_adjustment_set_value): new function to emit the "value_changed"
4084         signal.
4085
4086 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
4087
4088         * gtk/gtkcombo.c: Further changes to the way the window
4089         is popped up so that it will be compatible with 
4090         auto-scrolling in the future.
4091
4092 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
4093
4094         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
4095         the combo-list is empty since that will cause the combo to operate
4096         on a non existing GtkList window.
4097         (gtk_combo_get_pos): provide the combo list with a usfull default
4098         height if empty.
4099         (gtk_combo_popup_button_press): grab the focus.
4100         (gtk_combo_activate): grab the focus.
4101
4102 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
4103
4104         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
4105         function to reset the RC styles for a heirarchy
4106
4107         Clear the window background if necessary in
4108         gtk_window_style_set.
4109
4110         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
4111         rereads all previously read RC files.
4112
4113         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
4114         (Should it just be called gdk_get_toplevels?)
4115
4116         * gtk/testgtk.c: New test to reload RC files.
4117
4118 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
4119
4120         * gtk/gtkclist.h:
4121         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
4122         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
4123         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
4124         the GTK_ prefix (this solution involved less changes in the
4125         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
4126         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
4127         from lars & stefan to support the derivation of GtkCtree.
4128
4129         * gtkctree.h:
4130         * gtkctree.c:
4131         initial import of a tree widget derived from gtkclist, courtesy
4132         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
4133         it just damn rocks!
4134
4135 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
4136
4137         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
4138         for us.
4139         (gtk_list_insert_items):
4140         (gtk_list_remove_items_internal): 
4141         (gtk_list_clear_items): 
4142         remove a possible pointer grab, we might get thrown into a loop
4143         otherwise.
4144         (gtk_list_button_press): grab the pointer *before* selecting the child,
4145         because selection of items may cause the lists children to change,
4146         resulting in a grab release.
4147         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
4148         children.
4149         (gtk_list_shutdown): remove all children from the list.
4150         (gtk_real_list_unselect_child): 
4151         (gtk_real_list_select_child): *always* put our internal structures into
4152         sane state *before* signal emisions (i.e. list->selection updates prior
4153         to gtk_list_item_[de]select() calls).
4154
4155         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
4156         focused child walks out of the window.
4157         removed CAN_FOCUS for the combo arrow's button since it doesn't react
4158         to keyboard events ("clicked" connection is missing).
4159
4160 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
4161
4162         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
4163         getting colormap for FOREIGN windows to go along with
4164         Raster's fix for visuals.
4165
4166 Merges from gtk-1-0
4167 ===================
4168         
4169 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
4170
4171         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
4172         Check to catch the case when the viewport fits in either
4173         direction or both, instead of flip-flopping infinitely.
4174
4175         Only show/hide the scrollbars once at the end.
4176
4177 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
4178
4179         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
4180         Include the scrollbars in the foreach call.
4181         (gtk-fortier-980405-0.patch; 
4182          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
4183
4184         The notebook widget
4185         really should also include its tabs, but that might cause
4186         problems for programs if they
4187
4188 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
4189
4190         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
4191         resize if the size actually changed. 
4192         (gtk-johannes-980414-0.patch ;  
4193          johannes@nada.kth.se (Johannes Keukelaar) )
4194
4195 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
4196
4197         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
4198           ltmain.sh ltconfig config.sub config.guess:
4199
4200         Reverted back to libtool-1.2 (plus minor patches) so as not to
4201         force the issue for everyone else.
4202
4203 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
4204
4205         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
4206         Updated to libtool 1.2a.
4207
4208         * gtk/gtkclist.c: Draw the in-between lines with style->base
4209         instead of style->white.
4210         
4211 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
4212
4213         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
4214         Cache the colormap and children of a window locally
4215         instead of fetching them from the server when needed.
4216         Huge performance difference for creating/destroying
4217         windows.
4218
4219         * gtk/gtkstyle.c: Find the depth from the cached
4220         visual, instead of asking the server.
4221
4222         * gtk.m4: Distribute the new version which tries to
4223         figure out what went wrong and give helpful error
4224         messages.
4225
4226         * ltmain.sh ltconfig config.sub config.sh: 
4227         Updated to libtool 1.2a
4228
4229         * gtk/gtktext.c: Fixed a bug where the drawn level
4230         was being messed up when the text was scrolled
4231         during a deletion.
4232         
4233 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
4234
4235         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
4236         the filesystem under you (fix from Josh)
4237
4238 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
4239
4240         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
4241         if the viewport already exists before iterating over it, maybe we
4242         haven't been constructed yet.
4243
4244 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
4245
4246         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
4247         the GtkBin widget already has a child.
4248
4249         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
4250         check that child->parent == NULL;
4251
4252 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
4253
4254         * gtk/gtkselection.c (gtk_selection_clear): Only return
4255         FALSE when the clear event is been rejected, not when
4256         widget has already lost the selection. (Which should
4257         only happen when we are setting the selection to another
4258         widget ourself.)
4259         
4260 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
4261
4262         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
4263
4264         Removed the "check visibility after gtk_widget_unparent" bug 
4265         in hopefully the last three places.
4266
4267 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
4268
4269         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
4270         rc-files.
4271
4272 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
4273
4274         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
4275         for CAN_FOCUS widgets.
4276
4277         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
4278         adjustments for the table.
4279         (create_list): feature automatic adjustment of the scrolled window to
4280         always contain the focused child.
4281         (create_main_window): keep the focussed button always inside of the
4282         scrolled windoww.
4283
4284         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
4285         adjustments, to contain the allocation of the currently focused child.
4286         (gtk_container_set_focus_hadjustment): new functin to set the
4287         horizontal focus adjustment.
4288         (gtk_container_set_focus_vadjustment): new functin to set the vertical
4289         focus adjustment.
4290
4291         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
4292         clamp the currents adjustment page into a specific range.
4293
4294         * random GtkType fixups for gtk_*_get_type() functions.
4295
4296 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
4297
4298         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
4299         Account for the fact that gtk_tree_item_remove_subtree
4300         will be called recursively. 
4301
4302         Handle removing a collapsed subtree.
4303
4304         (From Andy Dustman <adustman@comstar.net>)
4305         
4306         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
4307         root tree when removing items from a non-previously
4308         mapped tree.
4309
4310         * gtk/testgtk.c: Added a remove_subtree button.
4311         
4312 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
4313
4314         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
4315         before object removing data. This change fixes a bug where 
4316         removing the last weak references would cause it to be 
4317         triggered.
4318
4319 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
4320
4321         * gdk/Makefile.am: Removed mostly useless dependency that
4322         was causing problems for SGI's make, when used with
4323         the 'make dist' form of GTK+. (Dependency caused dependencies
4324         to be redone when BUILT_SOURCES changed)
4325
4326 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
4327
4328         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
4329         like a menu.
4330         
4331         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
4332         to gtkitem.c so dragging can also work in lists.
4333
4334         * gtk/gtklist.[ch]: Track child enter events and use
4335         those to allow dragging the selection. 
4336
4337 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
4338
4339         * gtk/gtktext.c: Try enabling background pixmaps for editable text
4340         widgets.  There is a bit of flashing, but not too bad. If you
4341         don't want the flashing, you can always not set a background
4342         pixmap.
4343
4344 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
4345
4346         * gtk/gtktext.c: Fixed a bug where the drawn level
4347         was being messed up when the text was scrolled
4348         during a deletion.
4349         
4350 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
4351
4352         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
4353         bug:  There is no need to set the ExposureMask in the XGrabPointer
4354         (this caused DnD programs to crash).
4355
4356 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
4357
4358         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
4359         field to be of type guint.
4360         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
4361         ref_count>0;
4362         (gtk_accelerator_table_install): keep a per object list of accelerator
4363         tables that refer to this object.
4364         (gtk_accelerator_table_remove): remove the accelerator table from the
4365         per object list.
4366         (gtk_accelerator_table_clean): warn if there are any object references
4367         left in an accelerator table upon destruction.
4368         (gtk_accelerator_tables_delete): new function to delete object
4369         references from the accelerator tables associated with this object.
4370
4371         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
4372         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
4373         of an accelerator can be prevented by gtk_signal_emit_stop().
4374         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
4375         so there are no stale pointers in accelerator tables left.
4376
4377 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4378
4379         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
4380         visible before we unparent it.
4381
4382 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
4383
4384         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
4385         running_timeouts list with the tmp_list link itself, not with a new
4386         GList structure pointing to our link. that would fill up memory and
4387         causes the GList.data fields of the running_timeouts list to point to
4388         GList structures and not GtkTimeoutFunction structures which is a
4389         *really* bad thing.
4390         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
4391         the above entry ;).
4392
4393 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
4394
4395         * gtk/gtkradiomenuitem.h: 
4396         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
4397         ala gtk_radio_button_set_group.
4398         (gtk_radio_menu_item_init): assure that we always have at least a group
4399         that points to self.
4400
4401         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
4402         added g_return_if_fail() statements.
4403         (gtk_radio_button_init): assure that we always have at least a group
4404         that points to self.
4405
4406 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
4407
4408         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
4409
4410 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
4411
4412         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
4413         (Damon Chaplin), which i got wrong when applying Damon's patch the last
4414         time.
4415
4416 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
4417
4418         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
4419         that when we are running with a non-installed colormap,
4420         in 8-bit pseudo-color, we actually are using the system
4421         visual. (Fixes *Bad Match* errors on Digital Unix machines
4422         with multiple 8-bit pseudo-color visuals)
4423
4424 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
4425
4426         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
4427         by whoever thought that randomly changing ints to unsigned int
4428         without reviewing the code was a good idea.  It is, btw not
4429         mentioned in the ChangeLog as usual, but I know it was not Elliot
4430         the culprit this time. 
4431
4432 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
4433
4434         * Released GTK+ 1.0.0