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