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