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