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