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