]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
Remove unnecessary cast.
[~andy/gtk] / ChangeLog.pre-2-6
1 Wed Dec 16 23:32:05 1998  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtklabel.c (gtk_label_expose): Remove 
4         unnecessary cast.
5
6 Wed Dec 16 22:50:52 1998  Owen Taylor  <otaylor@redhat.com>
7
8         * gdk/gdk.c gdk/gdkim.c: Check for broken glibc 2.0 
9         mb functions, and avoid them.
10
11 Wed Dec 16 16:57:55 1998  Owen Taylor  <otaylor@redhat.com>
12
13         * gdk/gdkevents.c (gdk_events_queue): Don't
14         call XPending() if we have putback events.
15
16 Wed Dec 16 16:04:41 1998  Owen Taylor  <otaylor@redhat.com>
17
18         * gtk/gtklabel.c (gtk_label_expose): Do nothing
19         on empty string, quietly.
20
21 Wed Dec 16 15:36:19 1998  Owen Taylor  <otaylor@redhat.com>
22
23         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
24         Redraw the character under the cursor when removing
25         the cursor.
26
27 Wed Dec 16 13:06:17 1998  Owen Taylor  <otaylor@redhat.com>
28
29         * gdk/gdk.[ch] gtk/gtkmain.[ch] gtk/gtkprivate.h: Move main
30         thread lock back to GDK - we need it there for locking
31         when translating events. Rename things appropriately.
32
33 Wed Dec 16 11:44:21 1998  Owen Taylor  <otaylor@redhat.com>
34
35         * gtk/gtkrange.c (gtk_range_expose): Fix a x/y typo.
36
37 Wed Dec 16 10:20:27 CST 1998 Shawn T. Amundson <amundson@gtk.org>
38
39         * Released GTK+ 1.1.8
40
41         * ChangeLog:
42           INSTALL:
43           README:
44           gtk+.spec:
45           docs/gtk-config.1: version=1.1.8
46
47 1998-12-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
48
49         * gdk/gdkglobals.c: Define gdk_xim_ic only, if USE_XIM is defined.
50
51 Wed Dec 16 07:03:32 1998  Tim Janik  <timj@gtk.org>
52
53         * gtk/gtkwidget.h: 
54         * gtk/gtkwidget.c: s/USER_DRAW/APP_PAINTABLE/. provided
55         gtk_widget_set_app_paintable() which users can use to make
56         a widget paintable for the application. changed other files accordingly.
57
58 Wed Dec 16 05:26:32 1998  Tim Janik  <timj@gtk.org>
59
60         * configure.in: version bump to 1.1.8, binary age 0, interface age 0,
61         depend on GLib 1.1.8.
62
63         * gdk/gdkprivate.h:
64         * gdk/gdkglobals.c: removed last Gdk threads specific bits.
65
66         * gtk/gtkmain.c (gtk_init): s/g_thread_supported/g_thread_supported()/.
67
68         * gtk/gtkprivate.h: changed GTK_THREADS_ENTER and GTK_THREADS_LEAVE
69         to function macros GTK_THREADS_ENTER() and GTK_THREADS_LEAVE().
70         honour G_THREADS_ENABLED in the definition of GTK_THREADS_ENTER()
71         and GTK_THREADS_LEAVE(). changed callers accordingly.
72
73 Tue Dec 15 21:26:26 CST 1998 Shawn T. Amundson <amundson@gtk.org>
74
75         * autogen.sh: warn if glib.m4 or gettext.m4 are not found 
76           in aclocal's directory.
77
78 Tue Dec 15 21:36:14 1998  Owen Taylor  <otaylor@redhat.com>
79
80         * gtk/testgtk.c (create_layout): Create buttons,
81         not combos again.
82
83 1998-12-15  Joel Becker  <jlbec@ocala.cs.miami.edu>
84
85         * autogen.sh: reordered gettextize and aclocal, because
86         gettextize was messing up aclocal.m4.
87
88 Tue Dec 15 22:30:44 1998  Lars Hamann  <lars@gtk.org>
89
90         * gtk/gtkclist.h : 
91         removed clist flag : GTK_CLIST_DRAG_SELECTION
92         added flags : GTK_CLIST_REORDERABLE, GTK_CLIST_USE_DRAG_ICONS,
93         GTK_CLIST_DRAW_DRAG_LINE, GTK_CLIST_DRAW_DRAG_RECT
94         (GtkCListDragPos) : new enum for DND
95         (GtkButtonAction) : new enum of possible mouse button actions
96         (struct _GtkCList): added button_actions array.
97         Added drag_button and click_cell struct, to store cell and
98         mouse button of last button_press_event
99         
100         (struct _GtkCListClass): new class method draw_drag_highlight.
101         (gtk_clist_set_reorderable) (gtk_clist_set_use_drag_icons) :
102         new functions. Moved from gtkctree.h. Now clist is reorderable
103         as well.
104         (gtk_clist_set_button_actions) new function to customize mouse
105         button actions.
106
107         * gtk/gtkclist.c:
108         (gtk_clist_drag_begin)
109         (gtk_clist_drag_motion)
110         (gtk_clist_drag_leave)
111         (gtk_clist_drag_end)
112         (gtk_clist_drag_drop)
113         (gtk_clist_drag_data_get)
114         (gtk_clist_drag_data_received) : new dnd widget methods to
115         implement clists reorderability via DND
116
117         (remove_grab) : new function. remove mouse grab if necessary.
118         (draw_drag_highlight) : new method. Draw dnd highlight depending
119         on clist flags GTK_CLIST_DRAW_DRAG_LINE and GTK_CLIST_DRAW_DRAG_RECT
120
121         (gtk_clist_class_init): added object args "reorderable" and
122         "use_drag_icons"
123
124         (gtk_clist_button_press) (gtk_clist_button_release) :
125         use button_actions array to decide which action to perform.
126         (gtk_clist_motion) : start reorder operation if necessary.
127
128         * gtk/gtkctree.h :
129         (struct _GtkCTree): removed drag_icon, icon_widht, icon_height,
130         drag_row, drag_source, drag_target, reorderable, use_icons,
131         in_drag, drag_rect
132         (gtk_ctree_set_reorderable) :  deprecated function.
133         use gtk_clist_set_reorderable instead.
134         (gtk_ctree_set_use_drag_icons) : deprecated function.
135         use gtk_clist_set_use_drag_icons instead.
136
137         * gtk/gtkctree.c :
138         (gtk_ctree_class_init): removed object args "reorderable" and
139         and "use_drag_icons"
140
141         (draw_xor_line) (draw_xor_rect) (create_drag_icon) (check_cursor)
142         (tree_toggle_selection) (set_mouse_cursor) : removed
143         
144         (draw_drag_highlight) : new clist method. replacement for
145         draw_xor_line and draw_xor_rect functions
146         (check_drag) renamed check_cursor function
147
148         (gtk_ctree_drag_begin)
149         (gtk_ctree_drag_motion)
150         (gtk_ctree_drag_data_received) : new dnd methods to implement ctrees
151         reorderability via DND
152
153         (gtk_ctree_button_release)
154         (gtk_ctree_button_motion) : removed.
155
156         * gtk/testgtk.c:
157         (create_clist) : added new reorderable toggle button
158         
159 Tue Dec 15 19:50:41 1998  Owen Taylor  <otaylor@redhat.com>
160
161         * gtk/gtkctree.c gtk/gtkclist.c gtk/testgtk.c: Use 
162         base[NORMAL] instead of bg[PRELIGHT] so CLists now can be
163         used in detergent commercials.
164
165 Tue Dec 15 16:54:09 1998  Owen Taylor  <otaylor@redhat.com>
166
167         * gtk/gtklabel.h: Moved gtk_label_set() compatiblity
168         define from <gtkcompat.h> to <gtklabel.h> for
169         compatibility.
170
171 1998-12-15  Jeff Garzik  <jgarzik@pobox.com>
172
173         * configure.in, gdk/Makefile.am, gtk/Makefile.am:
174         Removed last remaining thread-related configure bits 
175         that have been moved into GLib.
176
177 1998-12-15  Elliot Lee  <sopwith@bogus.cuc.ml.org>
178
179         * gdk/gdkevents.c: Use G_IO_ERR|G_IO_HUP|G_IO_NVAL
180         as the mask for checking for GDK_INPUT_EXCEPTION events.
181
182 1998-12-15  Martin Baulig  <martin@home-of-linux.org>
183
184         * acinclude.m4: Make the gettext check for for libc5 systems.
185
186         * autogen.sh: Not running gettextize fails on a fresh CVS checkout
187         and we'll get a lot of bug reports tomorrow, so I add it back.
188
189         * acinclude.m4: Rename AM_GNU_GETTEXT_GTK to AM_GTK_GNU_GETTEXT and
190         AM_WITH_NLS_GTK to AM_GTK_WITH_NLS to avoid this ugly automake
191         warnings.
192
193 Tue Dec 15 16:06:15 1998  Owen Taylor  <otaylor@redhat.com>
194
195         * acinclude.m4: Provide a hacked version of the
196           gettext macros that never use the included gettext.
197          
198         * Makefile.am configure.in: Remove references
199           to intl/
200         
201         * autogen.sh: Don't run gettextize.
202
203 Tue Dec 15 14:30:35 1998  Owen Taylor  <otaylor@redhat.com>
204
205         * gdk/gdk.h gdk/gdkfonts.c: Added gdk_text_extents_wc()
206
207         * Patch from Jonathan Blanford <jrb@redhat.com> to add line wrapping
208           to label. (Based on patch from Jeff Dairiki
209           <dairiki@mac-ceope.apl.washington.edu> gtk-dairiki-971208-0)
210
211         - Adds new function gtk_label_set_line_wrap()
212         - implement GTK_JUSTIFY_FILL.
213         - rename gtk_label_set to gtk_label_set_text() add
214            gtk_label_set() to gtkcompat.h.
215
216         * Use an internal wc representation in the label, so
217           that we handle underlining and line breaks correctly
218           for multi-byte strings.
219
220 Tue Dec 15 13:32:28 1998  Owen Taylor  <otaylor@redhat.com>
221
222         * gtk/gtkwidget.h: Added GTK_USER_DRAW flag.
223
224         * gtk/gtkwindow.c: Honor GTK_USER_DRAW flag.
225
226         * gtk/gtkdrawwindow.c gtk/Makefile.am: Removed 
227         GtkDrawWindow, which GTK_USER_DRAW obsoletes.
228
229 Tue Dec 15 11:37:05 1998  Owen Taylor  <otaylor@redhat.com>
230
231         * gtk/gtkmain.c: Fixed up some warnings.
232
233 Tue Dec 15 10:32:01 1998  Owen Taylor  <otaylor@redhat.com>
234
235         * gtk/gtk{h,v,}paned.{c,h}: Add new functions 
236         gtk_paned_set_position(),
237         gtk_paned_pack1/2(). The latter take a
238         shrink and resize parameters, that allows setting
239         minimum sizes and getting 'relative' resizing.
240
241 Tue Dec 15 10:26:23 1998  Owen Taylor  <otaylor@redhat.com>
242
243         * gdk/gdkevents.c: Keep separate putback_events and 
244         queued_events queues so that we get both FIFO and 
245         preemptive behavior for gdk_event_put().
246
247 Tue Dec 15 09:22:44 1998  Owen Taylor  <otaylor@gtk.org>
248
249         * gtk/gtkrc.c (gtk_rc_init): Removed unused 
250         variable, fixed minor memory leak.
251
252         * gdk/gdk.c: Fixed another merge problem.
253
254 Tue Dec 15 08:53:38 1998  Owen Taylor  <otaylor@redhat.com>
255
256         * gdk/gdk.c (gdk_get_display): Remove gdk_signal,
257         which crept back in in last commit.
258
259 Tue Dec 15 01:38:53 1998  Owen Taylor  <otaylor@redhat.com>
260
261         * gtk/Makefile.am: Commented out testthreads from
262         the build process, since we won't have any idea
263         how to create a thread.
264
265         * configure.in (LIBS): use glib-config ... gthread
266         so we always build a thread-compatible library.
267
268         * gtk/gtkaccellabel.c gtk/gtkclist.c gtk/gtkcolorsel.c
269           gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkentry.c
270           gtk/gtklist.c gtk/gtkmenuitem.c gtk/gtknotebook.c
271           gtk/gtkrange.c gtk/gtkselection.c gtk/gtkspinbutton.c
272           gtk/gtktext.c gtk/gtktooltips.c gtk/gtkwidget.c:
273         
274         Add GTK_THREADS_ENTER/LEAVE pairs around timeouts
275         and idles to account for the fact that they are no
276         longer called within the GTK+ lock.
277
278         * gtk/gtkprivate.h: Added definitions for locking
279         the main GTK+ mutex.
280         
281         * gtk/gtkmain.c: Re-implement the main loop 
282         in terms of the GLib main loop.
283
284         * gdk/gdk.h gdk/gdkthreads.c gdk/Makefile.am: Removed threading 
285         functionality, as it seems better to subsume GDK within the 
286         GTK+ lock than vice-versa.
287
288         * gdk/gdkevents.c: New file, containing event handling bits 
289         from gdk.c.
290
291         * gdk/gdkevents.c: Implement event source for GDK
292         events.
293         
294         * configure.in gdk/gdkevents.c: Removed attempts to 
295         subtract base_id, which were already non-functional.
296
297 Mon Dec 14 23:05:20 PST 1998 Manish Singh <yosh@gimp.org>
298
299         * acconfig.h
300         * configure.in: removed IPC_RMID_DEFERRED_RELEASE check
301
302         * gdk/gdk.c: remove signal handlers, since we do an IPC_RMID
303         after XShmAttach, and nobody complained
304
305 Tue Dec 15 02:27:42 MET 1998 Sven Neumann <sven@gimp.org>
306
307         * po/de.po: Replaced the crappy german po-file with a valid one.
308
309 Mon Dec 14 16:10:05 1998  Owen Taylor  <otaylor@redhat.com>
310
311         * gtk/gtkrc.c (gtk_rc_init): Append locale-specific
312         suffixes to default rc file names, and look these
313         up in addition to the base filename, to facilitate
314         having the correct fontset per-locale.
315
316         move $(sysconfdir)/gtkrc to $(sysconfdir)/gtk/gtkrc
317
318         * gtk/gtkitemfactory.[ch] (gtk_item_factory_set_translate_func):
319         New function to set a function to translate menu paths.
320
321         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Free
322         results of g_strsplit().
323
324 1998-12-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
325
326         * configure.in (ALL_LINGUAS): Added 'pt'.
327
328         * po/pt.po: Added Portuguese translation.
329
330 Mon Dec 14 20:04:31 1998  Stefan Jeske  <stefan@gtk.org>
331
332         * gtk/gtkspinbutton.c: Only call gtk_spin_button_update if
333         the spinbutton is editable.
334
335 Mon Dec 14 12:24:13 1998  Owen Taylor  <otaylor@redhat.com>
336
337         * HACKING: Added gettext-10.35
338
339         * autogen.sh: Run gettextize.
340
341 Wed Dec  9 16:29:06 1998  Owen Taylor  <otaylor@redhat.com>
342
343         Applied gtk-egger-981010-[12] 
344         [ Daniel.Egger@t-online.de (Daniel Egger) ]
345
346         * gtk/gtkintl.h: New file - defines for localization.
347
348         * gtk/gtkfilesel.c gtk/gtkinputdialog.c: Mark strings
349         for internationalization.
350
351         * gtk/gtkmain.c: call bindtextdomain
352
353         * po/ - directory for translations. Initially includes
354         German translation.
355
356 Mon Dec 14 02:42:11 1998  Tim Janik  <timj@gtk.org>
357
358         * gtk/gtkwidget.c: made GtkWidget::grab_focus a RUN_LAST and
359         RUN_ACTION signal. moved stuff from gtk_widget_grab_focus() into
360         gtk_widget_real_grab_focus() so a signal is always emitted
361         if the focus is grabbed on a widget.
362
363 Mon Dec 14 02:13:01 1998  Tim Janik  <timj@gtk.org>
364
365         * gtk/gtkmenuitem.c: fixed submenu popup timeouts, we decide whether or
366         not to delay the submenu popup from a menu item deselection time stamp.
367         the code looks even more hackish than before, but in practice "feels"
368         very well.
369
370 1998-12-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
371
372         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added a "grab_focus"
373         signal for widgets.  When the signal is emitted, the widget will
374         grab the focus.  This is needed to let the user press an
375         accelerator key in a dialog box and have the corresponding widget
376         be focused.
377
378         * gtk/gtkwidget.c (gtk_widget_class_init): Create the "grab_focus"
379         signal.  The default handler is simply gtk_widget_grab_focus().
380
381 Sun Dec 13 22:15:48 GMT 1998  Tony Gale  <gale@gtk.org>
382
383         * docs/gtk_tut.sgml: Update the following sections to the
384           current API:
385             - Container Widgets
386             - CList Widget
387             - List Widget
388             - Tree Widget
389
390 Sat Dec 12 19:11:35 1998  Tim Janik  <timj@gtk.org>
391
392         * gtk/gtkmenuitem.c: made GtkMenuItem::activate a GTK_RUN_ACTION signal.
393
394         * gtk/gtkbutton.c: made GtkButton::clicked a GTK_RUN_ACTION signal.
395
396         * gtk/gtkfeatures.h.in: define GTK_HAVE_FEATURES_1_1_8.
397
398 Sat Dec 12 17:46:55 1998  Owen Taylor  <otaylor@gtk.org>
399
400         * gtk/gtklayout.c (gtk_layout_unrealize): Mark
401         child->window as destroyed so we don't destroy
402         it again.
403
404 Sat Dec 12 17:18:32 1998  Owen Taylor  <otaylor@redhat.com>
405
406         * gdk/gdkfont.c (gdk_text_extents): Corrections
407         to computation of extents of text from a font set.
408         (from Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
409          and Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>)
410         
411 Fri Dec 11 08:59:12 1998  Owen Taylor  <otaylor@redhat.com>
412
413         * gtk/gtklistitem.c (gtk_list_item_style_set):
414         * gtk/gtklist.c     (gtk_list_style_set):
415         Added "style_set" handlers.
416
417 Fri Dec 11 05:49:30 1998  Owen Taylor  <otaylor@redhat.com>
418
419         * gtk/gtkclist.c (gtk_clist_style_set): Add in a "style_set"
420         handler so that the background of the clist changes
421         with the theme.
422
423 Thu Dec 10 22:02:49 CST 1998 Shawn T. Amundson <amundson@gtk.org>
424
425         * Released GTK+ 1.1.7
426
427         * INSTALL:
428           NEWS:
429           README:
430           configure.in:
431           gtk+.spec:
432           gtk/gtkfeatures.h.in: 
433           docs/gtk-config.1: Version to 1.1.7
434
435 Thu Dec 10 20:48:19 PST 1998 Manish Singh <yosh@gimp.org>
436
437         * gtk/gtkclist.c: avoid void pointer math
438
439         * gtk/gtkhscale.c
440         * gtk/gtkhscrollbar.c
441         * gtk/gtkvscale.c
442         * gtk/gtkvscrollbar.c: removed trailing , from enums
443
444         * gtk/gtksignal.c: can't use enums as a bitfield type, use guint
445
446         * gtk/testgtk.c: removed C++ comment added by owenpoo
447
448 Thu Dec 10 21:48:34 1998  Owen Taylor  <otaylor@redhat.com>
449
450         * gtk/gtkdnd.[ch]: Added gtk_drag_source_unset()
451
452 Thu Dec 10 20:42:22 1998  Owen Taylor  <otaylor@redhat.com>
453
454         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Use 
455         gdk_window_get_origin() instead of gdk_window_get_position,
456         because get_position is unreliable for plugs. 
457
458         This is a bad hack, maybe we need GDK_WINDOW_PLUG?
459
460 Thu Dec 10 17:58:49 GMT 1998  Tony Gale  <gale@gtk.org>
461
462         * docs/gtk_tut.sgml:
463           - re-write the GtkProgressBar section to the 1.1 API.
464           - add an Appendix listing all the signals
465             (apologies to TimJ for taking so long in using his hard work
466              in automating the extraction - thanx Tim). 
467         * examples/*: bring them all upto the tutorial versions
468
469 Thu Dec 10 02:21:16 1998  Jeff Garzik  <jgarzik@pobox.com>
470
471         * gtk/testdnd.c: use g_snprintf, eliminate need for string.h
472         * gtk/testrgb.c: include string.h, for strlen
473
474 Wed Dec  9 17:39:26 1998  Owen Taylor  <otaylor@redhat.com>
475
476         * configure.in: Add a case for success in 
477         test for XUnregisterIMInstantiate, to prevent
478         screwing up $LIBS.
479
480 Wed Dec  9 13:06:31 1998  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
481  
482         * gdk/gdkim.c (gdk_ic_new,gdk_ic_{set,get}_attr): Fixed argument
483         list and return type for non-XIM fallback.
484  
485         * configure.in: Only build XIM-support if available.
486  
487 Wed Dec  9 12:23:30 1998  Owen Taylor  <otaylor@redhat.com>
488         
489         * gtk/testselection.c (main): Add in missing 'flags'
490         field to target list.
491
492         * gdk/gdkproperty.c (gdk_atom_intern): Actually
493         add the atoms to the local cache.
494
495 Wed Dec  9 04:57:31 PST 1998 Manish Singh <yosh@gimp.org>
496
497         * gdk/gdkprivate.h: put text after #endif in comment
498
499         * gdk/gdktypes.h: change whitespace in enum to shut up makeenums.pl
500
501         * gtk/testdnd.c: #include <string.h>
502
503 Mon Dec  7 10:27:09 1998  Owen Taylor  <otaylor@redhat.com>
504
505         * gtk/gtkwidget.c: Destroy widgets _after_ propagating unrealize
506         signals through the widget heirarchy. This is unpleasant, as it
507         causes more X traffic, but is necessary, because we have to clean
508         up our Input Contexts before destroying the X windows.
509         (from matsu-981109-0.patch)
510         
511 Mon Dec  7 10:18:18 1998  Owen Taylor  <otaylor@redhat.com>
512
513         Applied gtk-a-higuti-981202-0 : 
514         [ a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi) ]
515         
516         * gdk/gdk.h gdk/gdk.c
517                 (gdk_mbstowcs): New function. Nearly equals to mbstowcs, but
518                         implemented by a combination of Xlib functions, so
519                         it works even with X_LOCALE.
520                 (gdk_wcstombs): New function.
521                 (g_mbtowc): Removed. No longer needed.
522
523         * gdk/gdk.h gdk/gdkfont.c gdk/gdkdraw.c: 
524                 Added _wc() variants to gdk_text_width(), 
525                 gdk_char_width(), gdk_draw_text(),
526                 
527         * gdk/gdki18n.h
528                 (mblen, mbtowc, wctomb, mbstowcs, wcstombs,
529                  wcslen, wcscpy, wcsncpy):
530                         Removed. No longer needed.
531                 (iswalnum): Removed.
532                 (gdk_iswalnum): New macro.
533                 (gdk_iswspace): New macro.
534         * gdk/gdktype.h
535                 (GdkWChar): New typedef.
536         
537         * gtk/gtkentry.h, gtk/gtkentry.c
538                 There are many changes according to the change of the
539                 internal representation of text, from multibyte string
540                 to wide characters. 
541         * gtk/gtkprivate.h, gtk/gtkmain.c
542                 Removed the variable gtk_use_mb and related codes.
543         * gtk/gtkspinbutton.c
544                 Some changes according to the change of type of entry->text.
545         * gtk/gtktext.h, gtk/gtktext.c
546                 Changed the internal representation of text. We use GdkWchar
547                 if a fontset is supplied. If not, we use guchar to save
548                 memory.
549         
550 Tue Dec  1 15:20:39 1998  Owen Taylor  <otaylor@redhat.com>
551
552         * gdk/gdkwindow.c (gdk_window_new): When creating
553         a window with a specified non-system visual, use
554         a matching colormap.
555
556 Mon Nov 30 11:50:13 1998  Owen Taylor  <otaylor@redhat.com>
557
558         * gdk/gdk.c gdk/gdkim.c gdk/gdkprivate.h gdk/gdk.h
559           gdk/gdktypes.h gtk/gtkeditable.c gtk/gtkmain.c
560           gtk/gtkentry.c gtk/gtktext.c:
561
562          Applied matsu-981109-0
563          [ matsu@arch.comp.kyutech.ac.jp (Takashi Matsuda) ]
564         
565          - Change system of setting input method values 
566            from varargs to a structure, similar to GC's
567            or window attributes.
568
569          - Various fixes to event handling.
570
571          Also:
572
573          * gdk/gdkim.c: Split of input method stuff into
574            a separate source file.
575
576          * Remove GdkIM typedef, change everything from
577            GdkIC to GdkIC * to be consistent with the
578            rest of GTK.
579         
580 Wed Dec  9 00:41:41 1998  Owen Taylor  <otaylor@redhat.com>
581
582         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Allocate
583         correct amount of memory for strings.
584
585 Tue Dec  8 18:29:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>
586
587         * Released GTK+ 1.1.6
588
589         * NEWS: updated
590
591         * gtk/Makefile.am:
592           gtk/testgtk.c:
593           gtk/gtkrc.h:
594           gtk/gtkrc.c: Read in default files.
595
596 Wed Dec  9 00:49:12 1998  Tim Janik  <timj@gtk.org>
597
598         * gtk/gtktypeutils.h:
599         * gtk/gtktypeutils.c: added gtk_type_query() which returns a newly
600         allocated structure holding certain type specific informations.
601         fixed the big bunch of `discards const' warnings with the
602         initialization of enum/flags values.
603
604 Tue Dec  8 15:10:17 1998  Owen Taylor  <otaylor@redhat.com>
605
606         * gtk/gtkwindow.c (gtk_window_transient_parent_realized):
607         Fixed order of arguments to gdk_window_transient_for().
608
609 Tue Dec  8 18:02:57 GMT 1998  Tony Gale  <gale@gtk.org>
610
611         * examples/Makefile: simple top level Makefile that invokes all
612           the sub-directory Makefiles.
613
614 1998-12-08  Andrew T. Veliath  <andrewtv@usa.net>
615
616         * gtk/testgtk.c: Functions to test the toolbar space style.
617
618         * gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
619         GtkToolbarChild to hold allocation. Set default space style to
620         GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
621         fraction defaults.
622         (gtk_toolbar_paint_space_line): New function; paints the separator
623         line, using "toolbar" as the detail.
624         (gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
625         style is set to SPACE_LINE.
626         (gtk_toolbar_size_allocate): Store space allocations.
627         (gtk_toolbar_insert_element): If we are a space, allocate and
628         initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
629         (gtk_toolbar_set_space_style): New function.
630
631         * gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
632         and LINE. Add prototype for gtk_toolbar_set_space_style.
633
634 Mon Dec  7 16:03:55 1998  Owen Taylor  <otaylor@redhat.com>
635
636         * gtk/gtkthemes.h: Remove random unnecessary includes
637         of standard headers.
638
639 1998-12-07  Damon Chaplin  <DAChaplin@msn.com>
640
641         * gtk/gtkfontsel.c (gtk_font_selection_select_best_style): made sure
642         we only try to match styles which are currently shown.
643
644         (gtk_font_selection_init): set the notebook tabs homogeneous and set
645         the border, so we don't need to set the size explicitly (bad for i18n).
646         Used the clist auto-resize feature for the font and style lists on the
647         main page and all the filters. Used padding for the 'Reset Filter'
648         button instead of spaces around it (bad for i18n).
649
650         (gtk_font_selection_find_font): when searching for
651         a font, if we can't match both the family and foundry, we return any
652         font where just the family matches. (The foundry can even be '*'.)
653
654         (gtk_font_selection_show_available_styles): 
655         (gtk_font_selection_realize_list): don't set the style clist row
656         colours (for the charset rows) until the clist is realized, since we
657         use the clist style's insensitive colours.
658
659 Mon Dec  7 13:38:06 1998  Owen Taylor  <otaylor@redhat.com>
660
661         * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
662         _after_ doing XShmAttach. This should work everywhere,
663         and avoid the need for signal handlers or configure
664         checks.
665
666 Thu Dec  3 19:58:45 1998  Owen Taylor  <otaylor@redhat.com>
667
668         * gtk/gtkinputdialog.c: Use _add_with_viewport() for
669         scrolled window contents.
670
671 1998-12-07  Federico Mena Quintero  <federico@nuclecu.unam.mx>
672
673         * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
674         field in the structure.
675
676 Mon Dec  7 15:15:06 GMT 1998  Tony Gale <gale@gtk.org>
677
678         * docs/gtk_tut.sgml: Start mass update for GTK 1.1
679         * examples/extract.sh: Look for the best version of awk
680         * examples/extract.awk: Fix FD leak
681         * example/base: minimal example from Tutorial
682
683 Mon Dec  7 01:29:27 1998  Owen Taylor  <otaylor@gtk.org>
684
685         * gtk/gtkwindow.c: New functions
686         gtk_window_set_transient_for() - set up a "transient for" relationship.
687         gtk_window_set_default_size() - set the initial size of a window
688            distinct from its minimum size.
689         gtk_window_set_geometry_hints() - Allow the user to set
690            minimum, maximum sizes, aspect rations, and gridded geometry, 
691            possibly all with respect to a subwidget of the window.
692         These interfaces are still a wee bit experimental.
693
694         * gdk/gdk.c: Added gdk_window_set_transient_for(),
695         gdk_window_set_geometry_hints(), and gdk_window_set_role().
696
697         * gdk/gdktypes.h: Added new types for find-grained specification
698         of WM hints.
699
700         * gtk/testgtk.c: Various changes to tests to test the
701         above new functions.
702
703         * gtk/gtkfontsel.c: Squash a few 'const' warnings.
704         
705         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
706         call to gtk_style_set_background() to prevent egregious
707         flashing to black.
708
709 Mon Dec  7 03:52:01 1998  Tim Janik  <timj@gtk.org>
710
711         * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
712         signals, don't pass the data pointer twice, but swap it with the
713         object pointer (proposed on Nov 30 1998 on gtk-devel-list).
714
715 Mon Dec  7 03:08:39 1998  Tim Janik  <timj@gtk.org>
716
717         * gtk/gtktypeutils.h: 
718         * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
719         internal type info data to the user. if such functionality is required
720         we should provide wrapping accessors, ala gtk_signal_query(). also the
721         GtkTypeInfo structures are dynamically allocated memory portions, so
722         only the type system is really allowed to access that stuff.
723
724         * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
725         since it destroys the possibility to implement automatic marshaller
726         lookups some day, and it also disables third party code's ability to
727         connect to any signal.
728
729 Mon Dec  7 01:32:18 1998  Tim Janik  <timj@gtk.org>
730
731         * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
732         Tab key on the entry. the focus shouldn't get lost even if completion
733         is attempted from an empty entry, since an empty entry string does
734         indeed have a valid completion meaning (complete all).
735         (gtk_file_selection_init): cast the gchar array parameter in calls to
736         gtk_clist_new_with_titles() to quit compiler warnings.
737         (check_dir): the no_stat_dirs struct must not be const, since we do
738         indeed modify its contents.
739
740         * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
741         hook semantics.
742
743         * gtk/gtksignal.h:
744         * gtk/gtksignal.c:
745         changed emission allocation, so we don't use a doubly linked list
746         but link ourselfs (singly linked).
747         changed emission hooks, they get the emision parameters passed as
748         well now and are emitted during the actuall signal emission (after
749         the RUN_FIRST class method, but prior to RUN_FIRST handlers).
750         the existing restrictions do still apply to signal emission hooks,
751         i.e. an emission may not be stopped or restarted from an emission hook.
752         due to possibly huge perfomance impacts, frequent use of emision hooks
753         is also not recommended.
754         (gtk_signal_next_and_invalidate): added an
755         assertments which explicits what the code assumes anyways: a
756         maximum amount of 65535 signals.
757
758         * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
759         gtk_container_foreach_full() should be used instead.
760
761         * gtk/gtkmain.h:
762         deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
763         we provide _full variants.
764
765         * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
766         gtk_signal_connect_full() for long enough now.
767
768 1998-12-06  Marius Vollmer  <mvo@zagadka.ping.de>
769
770         * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
771         (gtk_signal_connect_by_type): Allow only no_marshal handlers to
772         connect to signals with a NULL marshaller.
773
774         * gtk/gtktypeutils.c (gtk_type_get_info): New.
775         gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
776
777 Sun Dec  6 14:27:35 1998  Stefan Jeske  <stefan@gtk.org>
778
779         * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
780         arrows if wrap == FALSE and interval borders are reached.
781
782 Sat Dec  5 21:07:09 1998  Owen Taylor  <otaylor@gtk.org>
783
784         * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
785         long-standing typo in aspect ratio computation code.
786         (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
787
788 Fri Dec  4 01:20:06 1998  Lars Hamann  <lars@gtk.org>
789
790         * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
791         valid row numbers only
792         (toggle_row): check if clist_row != NULL
793
794 Fri Dec  4 00:50:12 1998  Lars Hamann  <lars@gtk.org>
795
796         * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
797
798         * gtk/gtkclist.c 
799         (gtk_clist_set_column_visibility)
800         (gtk_clist_column_titles_active)
801         (gtk_clist_column_titles_active)
802         (gtk_clist_column_title_passive)
803         (gtk_clist_column_title_active): few additional tests whether
804         column->button != NULL
805
806 Thu Dec  3 16:49:18 1998  Owen Taylor  <otaylor@redhat.com>
807
808         * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
809         from 10 seconds, so it doesn't abort while users
810         have an ACTION_ASK menu up.
811
812         * gtk/gtkdnd.c: Hide the icon window between sending a a 
813         drop event to the destination and displaying the
814         snapback animation, so that it doesn't hang around
815         during ACTION_ASK.
816
817 Thu Dec  3 16:37:42 1998  Owen Taylor  <otaylor@redhat.com>
818
819         * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
820         for the foreground of cells for CLists in the insensitive
821         state, instead of GTK_STATE_PRELIGHT.
822
823 Thu Dec  3 06:20:59 1998  Tim Janik  <timj@gtk.org>
824
825         * gtk/gtkwindow.c: moved checks upon focus setting from
826         gtk_window_real_set_focus to gtk_window_set_focus, so we don't
827         emit the signal if unneccessary.
828
829         * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
830         containers when grabbing focus on a new widget. this is based on
831         a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
832
833         * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
834         flag, so we take the buttons into consideration upon the next focus
835         request.
836
837         * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
838         assertment.
839
840 Wed Dec  2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
841
842         * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
843           enhancement for true-color displays.
844
845         * INSTALL:
846           README:
847           configure.in:
848           gtk+.spec:
849           docs/gtk-config.1: up to version 1.1.6
850
851 Wed Dec  2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
852
853         * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
854         we release it this time
855
856 Wed Dec  2 01:39:02 1998  Tim Janik  <timj@gtk.org>
857
858         * gtk/gtknotebook.h: 
859         * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
860
861         * incremented version number to 1.1.6 and made Gtk
862         dependant on GLib 1.1.6.
863
864         * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
865         from guint16 to gint16, since sizes bigger than 32767 are not supported
866         anyways, and aritmethics with intermediate negative values are possible
867         now.
868
869 Tue Dec  1 00:00:04 1998  Tim Janik  <timj@gtk.org>
870
871         * gtk/gtkscrolledwindow.c:
872         implementation of GTK_POLICY_NEVER functionality, added rationales
873         on the policy and size requisition handling at the top.
874         (gtk_scrolled_window_size_request):
875         we assume a default minimum for our child's width and height
876         if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
877         specified the dimension explicitely.
878         (gtk_scrolled_window_size_allocate): 
879         do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
880
881         * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
882         size we require (including the child).
883
884         * gtk/gtkclist.c:
885         (gtk_clist_size_request): report the real size required.
886
887         * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
888
889         * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
890         need to be a static variable.
891
892 Mon Nov 30 22:41:25 1998  Tim Janik  <timj@gtk.org>
893
894         * gtk/gtkclist.h: 
895         * gtk/gtkclist.c: 
896         * gtk/gtkviewport.h:
897         * gtk/gtkviewport.c:
898         * gtk/gtktext.h:
899         * gtk/gtktext.c:
900         * gtk/gtklayout.h:
901         * gtk/gtklayout.c:
902         * gtk/gtkwidget.h:
903         * gtk/gtkwidget.c:
904         * gtk/gtkscrolledwindow.h:
905         * gtk/gtkscrolledwindow.c:
906         s/scroll_adjustements/scroll_adjustments/
907         s/scroll_adjustments/set_scroll_adjustments/g
908
909 Tue Dec  1 22:45:58 1998  Lars Hamann  <lars@gtk.org>
910
911         * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
912         row_move.
913         * gtk/gtkclist.c (gtk_clist_row_move): new public function.
914         emit a row_move signal
915         (real_row_move): move source_row to dest_row
916         (gtk_clist_swap_rows): use gtk_clist_row_move calls.
917         (gtk_clist_columns_autosize): resize all columns to their optimal
918         width
919         * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
920         entire sub-tree.
921         * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
922
923 Tue Dec  1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
924
925         * configure.in
926         * gdk/Makefile.am
927         * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
928         Separate vars for each, for granularity.
929
930 Tue Dec  1 02:19:54 1998  Tim Janik  <timj@gtk.org>
931
932         * gtk/gtkenums.h: fixed a stupid error of mine about the run type
933         values.
934
935 1998-11-30  Elliot Lee  <sopwith@cuc.ml.org>
936
937         * {gdk,gtk}/*.c: Make read-only data structures "static const" to
938         allow them to be shared, mainly including (but not limited to) the
939         GtkTypeInfo structures for each class.
940
941         * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
942
943 Mon Nov 30 12:17:10 1998  Jeff Garzik  <jgarzik@pobox.com>
944
945         * gtk/gtksignal.c:
946         Surround debug variable with #ifdef to silence gcc.
947
948         * gtk/gtknotebook.c (gtk_notebook_reorder_child):
949         Added initializer to quiet gcc warning.
950         Added assertion to check for null pointer deref.
951
952 Mon Nov 30 10:11:29 1998  Tim Janik  <timj@gtk.org>
953
954         * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
955         system specific includes.
956
957         * gtk/gtksignal.c: asured that stop and restart emissions are also
958         checked and processed for not connected objects. fixed up restart
959         emission administration. invoke emission hooks after emission, hooks
960         are not supposed to muck around with the current emission, and
961         may also not cause emission restarts. fixed up stop emission
962         administration.
963
964 Mon Nov 30 06:20:36 1998  Tim Janik  <timj@gtk.org>
965
966         * gtk/testgtk.c: added an event watcher for enter/leave based on
967         signal emission hooks.
968
969         * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
970         GTK_RUN_NO_HOOKS signal.
971
972         * gtk/gtksignal.h: 
973         * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
974         to a signal with gtk_signal_add_emission_hook or
975         gtk_signal_add_emission_hook_full, and can be removed again with
976         gtk_signal_remove_emission_hook.
977
978         * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
979         an appropriate mask for signal runtypes for a long time now.
980         added GTK_RUN_NO_HOOKS value, which is used to flag signals
981         that do not allow the running of signal hooks.
982
983 1998-11-26  Michael Krause  <m.krause@tu-harburg.de>
984
985         * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
986         argument a gint: switch_page signal delivers valid page numbers
987         again.
988
989 Sun Nov 29 06:12:01 1998  Tim Janik  <timj@gtk.org>
990
991         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment): 
992         set composite names.
993
994         * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
995         check, people must use gtk_type_init().
996         fixed up type allocation for foreign fundamentals.
997
998         * gtk/gtkwidget.h: 
999         * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
1000         for internal use by containers, that want to assign specific composite
1001         names to their composite children.
1002         added gtk_widget_get_composite_name() which will return a newly
1003         allocated string, containing the composite name of a widget. valid
1004         composite names can only be retrived from widgets that have a parent
1005         assigned and are flagged as GTK_COMPOSITE_CHILD.
1006
1007         * gtk/gtkcontainer.h:
1008         * gtk/gtkcontainer.c: added a new function
1009         gtk_container_child_default_composite_name() which will return a
1010         newly allocated string, holding the composite name of a containers
1011         child. a default implementation is provided which will compose the
1012         composite name out of the widgets type and its sequential children
1013         id. this implementation can be overidden through a new class function
1014         *(composite_name)().
1015
1016 Sat Nov 28 10:57:59 1998  Owen Taylor  <otaylor@redhat.com>
1017
1018         * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
1019         expose_event handler - we had two expose_event
1020         handlers!
1021
1022 Sat Nov 28 03:13:42 1998  Tim Janik  <timj@gtk.org>
1023
1024         * gtk/gtkscrolledwindow.h: 
1025         * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
1026         it inherits from GtkBin now.
1027
1028         * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
1029         visibility of child.
1030         (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
1031         added check so a child gets only drawn if it's visible.
1032
1033         * gtk/gtkwidget.h: 
1034         * gtk/gtkwidget.c: removed gtk_widget_draw_children().
1035
1036         * gtk/gtkstyle.h: 
1037         * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
1038
1039         * gtk/gtkwidget.h: 
1040         * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
1041         added internal function gtk_widget_reset_shapes() from gtkstyle.c.
1042
1043         * gtk/gtkrc.h:
1044         * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
1045         argument, changed callers.
1046
1047         * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
1048         it will issue a warning now.
1049
1050         * gtk/gtkcompat.h: new file to #define aliases for historic
1051         function names.
1052
1053         * changed 8 function names for consistency and provided aliases to keep
1054         source compatibility in gtkcompat.h:
1055         (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
1056         (gtk_container_set_border_width): renamed from gtk_container_border_width
1057         (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
1058         (gtk_packer_configure): renamed from gtk_packer_set_child_packing
1059         (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
1060         (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
1061         (gtk_scale_get_value_width): renamed from gtk_scale_value_width
1062         (gtk_window_set_position): renamed from gtk_window_position
1063
1064         * renamed a few recently added funtions for consistency:
1065         (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
1066         (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
1067         (gtk_progress_configure): renamed from gtk_progress_reconfigure.
1068
1069 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
1070
1071         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
1072         check for existing viewport first, and don't add one if there
1073         already is one
1074
1075 Sat Nov 28 00:06:49 1998  Tim Janik  <timj@gtk.org>
1076
1077         * gtk/gtkwidget.h: 
1078         * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
1079         gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
1080         and gtk_widget_unlock_accelerators.
1081
1082         * gtk/gtklayout.h:
1083         * gtk/gtklayout.c: implemented incremental freezing facility.
1084
1085         * gtk/gtktext.h: 
1086         * gtk/gtktext.c: implemented incremental freezing facility.
1087
1088         * gtk/gtkenums.h:
1089         * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
1090
1091         * gtk/gtkentry.h:
1092         * gtk/gtkentry.c:
1093         deprecated gtk_entry_adjust_scroll().
1094         
1095         * random GtkType, macro and indentation fixes.
1096
1097 Fri Nov 27 22:50:15 1998  Tim Janik  <timj@gtk.org>
1098
1099         * gtk/gtkclist.h: 
1100         * gtk/gtkclist.c: implemented incremental freezing facility, added
1101         a new class member (*refresh)() which takes over the thaw
1102         functionality. the clist FROZEN flag got removed on the way.
1103         * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
1104         and incremental freezing.
1105
1106         * gtk/gtkcalendar.c: implemented incremental freezing facility.
1107
1108 Fri Nov 27 11:41:27 1998  Raph Levien  <raph@gimp.org>
1109
1110         * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
1111         it still includes the core pointer in gdk_input_devices even
1112         if the XInput extension is not present in the X server.
1113
1114 Fri Nov 27 12:17:15 1998  Owen Taylor  <otaylor@redhat.com>
1115
1116         * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
1117         get the source widget of a drag.
1118
1119         * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
1120         to restrict certain targets to the same widget or to
1121         the same application.
1122
1123         * gtk/testdnd.c: Test gtk_drag_get_source_widget().
1124         
1125 Thu Nov 26 19:11:46 1998  Lars Hamann  <lars@gtk.org>
1126
1127         * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
1128         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
1129         instead of GTK_TYPE_POINTER in signal definitions.
1130         (patch from James Henstridge <james@daa.com.au>)
1131
1132 Thu Nov 26 18:48:44 1998  Lars Hamann  <lars@gtk.org>
1133
1134         * gtk/gtkclist.c (set_cell_contents)
1135         * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
1136         if auto.resize == TRUE
1137
1138         * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
1139         don't draw tab, if show_tabs == FALSE
1140         (bug reports from Alexis Mikhailov / Dave Cole)
1141         (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
1142         the focus rectangle, not the hole tab.
1143
1144 Thu Nov 26 03:18:08 1998  Tim Janik  <timj@gtk.org>
1145
1146         * gtk/gtkclist.h: 
1147         * gtk/gtkctree.h: 
1148         * gtk/gtkclist.c:
1149         * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
1150         Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
1151
1152         * gtk/maketypes.awk: changed underline substitution, so we get
1153         GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
1154         * gtk/makeenums.pl: likewise.
1155         * gtk/gtkctree.c: adapted type names accordingly.
1156
1157 Tue Nov 24 11:31:06 1998  Owen Taylor  <otaylor@redhat.com>
1158
1159         * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
1160
1161         * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
1162         some code duplication.
1163
1164         * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
1165         and child widgets when scrolling greater than 32k pixels.
1166
1167         * testgtk.c: Modified layout test to test scrolling over 
1168         long distances.
1169
1170         * gtk/gtkplug.c: Added a few blank lines.
1171
1172 Tue Nov 24 11:11:05 1998  Owen Taylor  <otaylor@redhat.com>
1173
1174         * gtk/gtklayout.[ch]: Fixed up copyright message.
1175
1176         * gdk/gdkrgb.c (DM): Make the dither matrix constant
1177         so it can be shared.
1178
1179         * gtk/gtkdnd.c: Make cursor bitmaps const.
1180
1181         * gdk/gdk.h gdk/gdkpixmap.c: Added const to 
1182         gdk_pixmap/bitmap_create_from_data.
1183
1184 Tue Nov 24 07:46:09 1998  Tim Janik  <timj@gtk.org>
1185
1186         * docs/Changes-1.2.txt: added a section on scrolled windows and
1187         scrollable widgets.
1188
1189 1998-11-24  Andrew T. Veliath  <andrewtv@usa.net>
1190
1191         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
1192         buttons when setting relief for button items.
1193         (gtk_toolbar_set_button_relief): Same.
1194
1195 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
1196
1197         * gdk/Makefile.am, gtk/Makefile.am:
1198         Removed DEFS "+=" mess that breaks recent automakes.
1199         INCLUDES is the correct way to add to CFLAGS from Makefile.am.
1200
1201         * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
1202         gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
1203         gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
1204         gtk/testthreads.c:
1205         Include "config.h" instead of "../config.h".
1206         Now that DEFS works again, automake will automatically pass us
1207         the location of config.h in -I.
1208
1209 Mon Nov 23 22:10:09 1998  Owen Taylor  <otaylor@redhat.com>
1210
1211         * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
1212         gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
1213
1214         Added layout widget for scrolling arbitrarily big areas.
1215         Added plug/socket widgets for interprocess embedding.
1216
1217         These widgets still, at some point, need to be
1218         made more pure in their use of GDK, as opposed
1219         to raw X.
1220
1221         * gtk/testgtk.c: Added test for layout widget.
1222         
1223 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
1224
1225         * gtk/gtkclist.c: (gtk_clist_swap_rows):  Bugfix from
1226         Brandon Long <blong@fiction.net> - do the right thing with first
1227         and last, which are the absolute values of row arguments row1
1228         and row2.
1229
1230 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
1231
1232         * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
1233         default adjustment (from 0 to 100) instead. I'm not sure if this
1234         is the correct level for the fix, but gtk_progress_bar_new()'s
1235         original default behavior is restored.
1236
1237 1998-11-23  Martin Baulig  <martin@home-of-linux.org>
1238
1239         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
1240         we can check for latest GTK features.
1241
1242 1998-11-23  Havoc Pennington  <hp@pobox.com>
1243
1244         * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
1245         (gtk_toolbar_insert_element): When setting relief, also affect
1246         toggle buttons.
1247
1248 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
1249
1250         * gtk/gtkobject.h: remove extraneous comma
1251
1252 Mon Nov 23 05:21:50 1998  Tim Janik  <timj@gtk.org>
1253
1254         * gtk/gtkcontainer.c:
1255         (gtk_container_add_with_args): 
1256         (gtk_container_addv): 
1257         (gtk_container_add): removed assertements for constructed containers
1258         again, since this essentially breaks the "child" arg.
1259
1260         * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
1261         reference count, we don't need to reference toplevels that already have
1262         destroy notifiers.
1263
1264         * gtk/gtkscrolledwindow.c: check for the composites existance in
1265         _forall since we might not be already constructed.
1266
1267 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1268
1269         * Released GTK+ 1.1.5
1270
1271         * configure.in: require GLib 1.1.5
1272
1273 Mon Nov 23 03:21:17 1998  Tim Janik  <timj@gtk.org>
1274
1275         * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
1276         2 * hadj.
1277         (gtk_text_finalize): only unref the current_font if we have
1278         been realized.
1279
1280 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1281
1282         * configure.in:
1283           INSTALL:
1284           NEWS:
1285           README:
1286           gtk+.spec:
1287           docs/gtk-config.1: Version incremented to 1.1.5
1288
1289 Sun Nov 22 16:21:28 1998  Tim Janik  <timj@gtk.org>
1290
1291         * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
1292         ::text_yalign, ::activity_mode.
1293
1294         * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
1295         ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
1296         ::activity_blocks.
1297         (gtk_progress_bar_new):
1298         (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
1299         (gtk_progress_bar_construct): deprecated.
1300
1301         * gtk/gtkvscrollbar.c:
1302         (gtk_vscrollbar_draw_step_back): 
1303         (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
1304         gtk_paint_arrow, to be consistent with hscrollbar.
1305
1306         * gtk/gtktext.c
1307         added construct args ::hadjustment, ::vadjustment.
1308         added args ::line_wrap, ::word_wrap.
1309         (gtk_text_class_init): added scroll_adjustments signal.
1310         (gtk_text_new): use gtk_widget_new.
1311         (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
1312         so we don't screw the reference counts and don't leave signals connected.
1313         (gtk_text_destroy): disconnect adjustments signals.
1314         (gtk_text_finalize): unref adjustments.
1315
1316         * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
1317         added args ::indent, ::spacing, ::show_stub, ::reorderable,
1318         ::use_drag_icons, ::line_style and ::expander_style.
1319         (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
1320         deprecated now.
1321
1322         * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
1323         * gtk/gtkclist.c:
1324         removed ::vadjustment and ::hadjustment args, introduced
1325         ::scroll_adjustments signal.
1326         added ::shadow_type, ::selection_mode and ::row_height args.
1327         added n_columns construct arg.
1328         (gtk_clist_construct): call gtk_object_constructed().
1329         (gtk_clist_set_row_height): if height is passed as 0,
1330         revert to automatic height calculation.
1331         (gtk_clist_destroy): before unrefing the adjustments, disconnect our
1332         signal handlers.
1333
1334 Fri Nov 21 22:34:58 1998  Tim Janik  <timj@gtk.org>
1335
1336         * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
1337         like gtk_object_new.
1338         (gtk_widget_destroy): assert that we only destroy constructed widgets.
1339
1340         * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
1341         to identify args that may only be used for construction.
1342         GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
1343         time.
1344         * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
1345         at the end if the object is not fully constructed.
1346         (gtk_object_newv): likewise.
1347         (gtk_object_destroy): assert that we only destroy constructed objects.
1348         (gtk_object_init): setup GTK_CONSTRUCTED from the
1349         objects real klass.
1350         (gtk_object_default_construct): new function to complete default
1351         construction of an object by applying missing construtor args with
1352         default values of 0, 0.0 or NULL.
1353         (gtk_object_constructed): new function to mark an object as being
1354         constructed (used from within constructors).
1355
1356         * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
1357         so it is immediatedly available for the caller.
1358
1359         * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
1360         the object initilizer (GtkObjectInitFunc takes a second arg now, the
1361         real klass), and asure that object initializers may temporarily alter
1362         the class pointer.
1363
1364 Fri Nov 20 08:00:30 1998  Tim Janik  <timj@gtk.org>
1365
1366         * gtk/testgtk.c: change all occourances of gtk_container_add (
1367         scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
1368         for widget!=(clist, ctree, text, viewport).
1369
1370         * gtk/gtkcombo.c:
1371         (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
1372         to add children to the scrolled window.
1373
1374         * gtk/gtkscrolledwindow.h:
1375         * gtk/gtkscrolledwindow.c:
1376         changed scrolled_window->viewport to scrolled_window->child, and use
1377         gtk_widget_scroll_adjustements() to set the scroll adjustments for the
1378         widget, we do not create an additional viewport anymore.
1379         added ::hadjustment and ::vadjustment constructor args.
1380         (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
1381         (gtk_scrolled_window_set_hadjustment):
1382         (gtk_scrolled_window_set_vadjustment): new functions that superceed
1383         gtk_scrolled_window_construct.
1384         (gtk_scrolled_window_construct): deprecated this function.
1385         
1386         * gtk/gtkhscrollbar.c:
1387         * gtk/gtkvscrollbar.c:
1388         * gtk/gtkhscale.c:
1389         * gtk/gtkvscale.c:
1390         support a constructor arg "::adjustment", and use gtk_widget_new() for
1391         the widget creation.
1392
1393         * gtk/gtkrange.c: added ::update_policy arg.
1394         (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
1395         a default adjustment so this function can be used for derived widgets
1396         that depend on the adjustment's existance.
1397         (gtk_range_destroy): disconnect the adjustment signal, so we don't
1398         get called after we got destroyed, we don't destroy the adjustment
1399         in here, because it might have been provided from another widget.
1400
1401         * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
1402         (gtk_viewport_destroy): same as gtk_range_destroy.
1403
1404         * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
1405
1406         * gtk/gtkwidget.h: 
1407         * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
1408         gboolean, indicating whether this widget supports activation.
1409         added gtk_widget_scroll_adjustements() to set the scrolling
1410         adjustments of a widget.
1411
1412 Wed Nov 19 01:22:42 1998  Tim Janik  <timj@gtk.org>
1413
1414         * gtk/gtkoptionmenu.c:
1415         (gtk_option_menu_remove_contents):
1416         (gtk_option_menu_update_contents): removed
1417         gtk_container_[un]block_resize() pairs.
1418
1419         * gtk/gtknotebook.h: 
1420         * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
1421         be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
1422         wrtie-only argument.
1423
1424         * *.c: made deprecated functions issue a message:
1425         gtk_clist_set_border, gtk_container_block_resize,
1426         gtk_container_unblock_resize, gtk_container_need_resize,
1427         gtk_object_class_add_user_signal, gtk_spin_button_construct,
1428         gtk_scrolled_window_construct.
1429         removed non-functional functions:
1430         gtk_container_disable_resize, gtk_container_enable_resize,
1431         gtk_clist_set_policy.
1432
1433 Wed Nov 18 22:54:36 1998  Tim Janik  <timj@gtk.org>
1434
1435         * gtk/gtkbox.c (gtk_box_init): 
1436         * gtk/gtkdrawingarea.c (gtk_drawing_area_init): 
1437         * gtk/gtkeventbox.c (gtk_event_box_init): 
1438         * gtk/gtkfixed.c (gtk_fixed_init): 
1439         * gtk/gtkframe.c (gtk_frame_init): 
1440         * gtk/gtkhandlebox.c (gtk_handle_box_init): 
1441         * gtk/gtkpacker.c (gtk_packer_init): 
1442         * gtk/gtkmisc.c (gtk_misc_init): 
1443         * gtk/gtkpreview.c (gtk_preview_init): 
1444         * gtk/gtkprogress.c (gtk_progress_init): 
1445         * gtk/gtkprogressbar.c (gtk_progress_bar_init): 
1446         * gtk/gtkseparator.c (gtk_separator_init): 
1447         * gtk/gtktable.c (gtk_table_init): 
1448         * gtk/gtkviewport.c (gtk_viewport_init): 
1449         * gtk/gtkalignment.c (gtk_alignment_init): 
1450         removed setting of the GTK_BASIC flag.
1451
1452         * gtk/gtkwidget.h:
1453         * gtk/gtkwidget.c:
1454         removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
1455
1456         * miscellaneous GtkType and macro fixups.
1457
1458 Sat Nov 21 18:53:13 1998  Owen Taylor  <otaylor@redhat.com>
1459
1460         * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin): 
1461         Fixed so it at least works with window managers other
1462         than Enlightenment, though it probably needs to be
1463         removed altogether.
1464
1465 1998-11-21  Andrew T. Veliath  <andrewtv@usa.net>
1466
1467         * gtk/gtkhandlebox.[ch]: Add shadow_type and
1468         gtk_handle_box_set_shadow_type function (plus a
1469         GtkHandleBox::shadow arg) to allow configuration of shadow in the
1470         bin window.
1471
1472 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1473
1474         * gtk/gtkcalendar.c: Fix for marking days from 
1475           Dan Reish <dreish@izzy.net>.
1476
1477 Thu Nov 19 00:15:27 1998  Lars Hamann  <lars@gtk.org>
1478
1479         * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
1480         in row_list. (from Samuel Solon <ssolon@usa.net>)
1481         
1482         * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
1483         (gtk_clist_get_column_widget): return column widget
1484
1485 Wed Nov 18 11:54:57 1998  Owen Taylor  <otaylor@redhat.com>
1486
1487         * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
1488         that are sent to a toplevel but are not within the
1489         toplevels bounds.
1490
1491         * gdk/gdkdnd.c gdk/gdk.h: Added support for a
1492         XdndProxy atom which proxies the drag to another window.
1493
1494 1998-11-17  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1495
1496         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
1497         that it is not needed.
1498
1499 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
1500         * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
1501           function to correctly determine gdk window position relative to
1502           its "root window" - contains check for an Enlightenment
1503           virtual root window.
1504         * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
1505           gdk_window_get_deskrelative_origin to get the origin of dragged
1506           handleboxes correctly. Now it works correctly with E.
1507           
1508 Tue Nov 17 1998  Tuomas Lukka <lukka@iki.fi>
1509
1510         * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
1511           getting types even though we were not using real type names,
1512           just the index.  This caused random crashes when more than 
1513           256 types were defined.
1514
1515 1998-11-17  Martin Baulig  <martin@home-of-linux.org>
1516
1517         * gtk/genmarshal.pl: Put output files in the current directory
1518         and not in the $(srcdir) since the VPATH is ignored for built
1519         sources.
1520
1521 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
1522
1523         * gtk/genmarshal.pl
1524         * gtk/Makefile.am: check for unchanged autogenerated files, so
1525         we don't rebuild everything just for adding a new function
1526
1527 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1528
1529         * gtk/gtkpixmap.h
1530           gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
1531           code thanks to GNOME stock by Eckehard Berns.  New function
1532           gtk_pixmap_set_build_insensitive to provide ability to turn 
1533           this off.
1534
1535 Tue Nov 17 00:06:29 1998  Lars Hamann  <lars@gtk.org>
1536
1537         * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
1538         new guints : tab_hborder, tab_vborder; marked tab_border deprecated
1539         (struct _GtkNotebookPage): new flags : expand, fill, pack
1540
1541         * gtk/gtknotebook.h/c
1542         (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
1543         tabs
1544         (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
1545         (gtk_notebook_set_tab_hborder): new function. set tab_hborder
1546         (gtk_notebook_set_tab_vborder): new function. set tab_vborder
1547         (gtk_notebook_query_tab_label): new function. get tab_label widget.
1548         (gtk_notebook_set_tab_label): new function. set tab_label widget.
1549         (gtk_notebook_set_tab_label_text): new function. set tab_label text.
1550         (gtk_notebook_query_menu_label): new function. get tab_label widget.
1551         (gtk_notebook_set_menu_label): new function. set tab_label widget.
1552         (gtk_notebook_set_menu_label_text): new function. set tab_label text.
1553         (gtk_notebook_set_tab_label_packing): new function. set tab_label
1554         fill, expand, fill_type
1555         (gtk_notebook_query_tab_label_packing): new function. get tab_label
1556         fill, expand, fill_type
1557
1558         (gtk_notebook_real_page_position): return logic page number
1559         (gtk_notebook_search_page) search next/prev logic page
1560         (gtk_notebook_update_labels): set logic page number.
1561         (gtk_notebook_page_compare): renamed gtk_notebook_find_page
1562         (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
1563         CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
1564         (gtk_notebook_button_press) (gtk_notebook_key_press)
1565         (gtk_notebook_focus) (gtk_notebook_pages_allocate)
1566         (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
1567         use gtk_notebook_search_page
1568         (gtk_notebook_page_allocate): fixed allocation bug
1569         (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
1570         (gtk_notebook_init): unset GTK_NO_WINDOW flag
1571         (gtk_notebook_size_request): check whether page->child is visible.
1572         changes due to tab h/vborder, homogeneous tabs
1573         (gtk_notebook_paint): don't draw invisible tabs
1574         (gtk_notebook_switch_page): calculate page_num if it's less than 0
1575         (gtk_notebook_append_*) (gtk_notebook_prepend_*)
1576         (gtk_notebook_insert_page): removed sanity checks
1577
1578         * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
1579
1580 Mon Nov 16 15:10:33 1998  Owen Taylor  <otaylor@redhat.com>
1581
1582         * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
1583         (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
1584
1585         * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was 
1586         broken. (GtkWidget's default unmap handler should work fine).
1587         Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
1588
1589 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
1590
1591         * gtk/gtkmenubar.[ch]: added shadow_type setting and
1592         gtk_menu_bar_set_shadow_type function to allow shadow
1593         configurability for menubars
1594
1595         * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
1596         guint
1597
1598 Mon Nov 16 00:17:53 1998  Tim Janik  <timj@gtk.org>
1599
1600         * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
1601         class creation and parent class' object initializer.
1602
1603 1998-11-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1604
1605         * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
1606         have assigned it to the window -- there is no point in keeping it around.
1607         (gtk_paned_unrealize): No need to destroy the cursor here.
1608
1609         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
1610         it is not needed.
1611
1612 Fri Nov 13 11:22:38 1998  Owen Taylor  <otaylor@redhat.com>
1613
1614         * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
1615         (gtk-blizzard-981005-0. 
1616          Christopher Blizzard <blizzard@applied-theory.com)
1617
1618         * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
1619         gdk_pixmap_foreign_new to gdkx.h.
1620
1621 Fri Nov 13 16:06:48 1998  Owen Taylor  <otaylor@redhat.com>
1622
1623         * gtk/Makefile.am: Added rules to generate an empty
1624         GTK+ theme called "Default" upon installation.
1625         
1626         * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
1627         of fonts and fontsets. 
1628         (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
1629
1630         * gtk/gtkmain.c: Change test to detect glibc's
1631         utf8 based mb* functions to be more specific.
1632
1633         * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation 
1634         cleanups.
1635
1636 Fri Nov 13 16:43:36 1998  Lars Hamann  <lars@gtk.org>
1637
1638         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
1639         show event_window
1640         (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
1641         event_window if draw_indicator is set
1642         (gtk_toggle_button_set_mode):
1643
1644 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
1645
1646         * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
1647         ensure proper type (SunPro cc complains)
1648
1649         * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
1650
1651         * gtk/gtktogglebutton.c: use our own draw method so we get proper
1652         redraws on active state
1653
1654 Thu Nov 12 00:26:13 1998  Lars Hamann  <lars@gtk.org>
1655
1656         * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
1657         defines.
1658
1659         * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
1660         GTP_POS_RIGHT
1661
1662 Wed Nov 11 19:54:58 1998  Lars Hamann  <lars@gtk.org>
1663
1664         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
1665         (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
1666         added ARG_WINDOW_PLACEMENT
1667
1668         * gtk/gtkclist.c (size_allocate_columns): resize column if column
1669         button > column width and auto_resize is set
1670         (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
1671         consider column button width of auto resized columns
1672         (gtk_clist_parent_set): removed 
1673
1674         * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
1675         (auto_resize_columns): auto_resize all columns
1676         (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
1677         (column_auto_resize): respect column button width of auto resized
1678         columns
1679
1680 1998-11-10  Martin Baulig  <baulig@merkur.uni-trier.de>
1681
1682         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
1683         we can check for latest GTK features.
1684
1685 Mon Nov  9 00:39:20 1998  Lars Hamann  <lars@gtk.org>
1686
1687         * gtk/gtkenums.h : new enum GtkCornerType 
1688         * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
1689         window_placement.
1690         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement): 
1691         new method to set window_placement.
1692         (gtk_scrolled_window_viewport_allocate)
1693         (gtk_scrolled_window_size_allocate): few changes due to
1694         window_placement.
1695         * gtk/testgtk.c (remove_selection): fixed while loop.
1696
1697 Sat Nov  7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
1698
1699         * gtk/gtkclist.c: check if column[i].button is valid before calling
1700         gtk_widget_intersect on it in gtk_clist_draw
1701
1702         * gtk/gtkdnd.c: removed unused variable empty_bits
1703
1704         * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
1705
1706         * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
1707         a boolean (thanks to Elrond for noticing this)
1708
1709 1998-11-07  Jay Cox  <jaycox@earthlink.net>
1710
1711         * gtk/gtkwindow.c: forward declaration for gtk_window_paint
1712         * gdk/gdkxid.c: declare xid_ht static
1713         * examples/*/Makefile: get the link ordering right.
1714
1715 Sat Nov  7 16:31:56 1998  Stefan Jeske  <stefan@gtk.org>
1716
1717         * gtk/gtkclist.c (gtk_clist_realize): Set background of
1718         title button window to GTK_STATE_NORMAL instead of
1719         GTK_STATE_SELECTED to avoid ugly flicker.
1720
1721 Fri Nov  6 23:29:40 1998  Lars Hamann  <lars@gtk.org>
1722
1723         * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
1724         if adjustments are NULL and list size has changed
1725         (gtk_clist_size_request): return real list requsition,
1726         if adjustments are NULL.
1727         (size_allocate_columns): use button->requisition.with, if column
1728         width is not set.
1729         (list_requisition_width): new function. return full list width.
1730         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
1731         auto create adjustments.
1732         (gtk_clist_motion) (move_vertical) (move_horizontal):
1733         check adjustment != NULL.
1734
1735 Thu Nov  5 12:06:16 1998  Owen Taylor  <otaylor@redhat.com>
1736
1737         * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
1738         a clear/redraw, not just a redraw, so the focus
1739         gets undrawn properly.
1740
1741         * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize): 
1742         Chain to gtk_widget_unrealize() instead of duplicating
1743         code.
1744
1745 Wed Nov  4 14:34:51 1998  Owen Taylor  <otaylor@redhat.com>
1746
1747         * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
1748         last vestiges of old DND.
1749
1750 Tue Nov  3 12:27:52 1998  Owen Taylor  <otaylor@redhat.com>
1751
1752         * gtk/gtkentry.c: Restored inner border to entries,
1753         erase cursors to background image.
1754
1755 Fri Oct 30 12:09:21 1998  Owen Taylor  <otaylor@redhat.com>
1756
1757         * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
1758         it was identical to paint_flat_box().
1759
1760         * gtk/gtkstyle.c: Coding style fixups.
1761
1762         * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
1763         test.
1764
1765         * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c: 
1766         Change 'side' for paint_[box/shadow]_gap and paint_extension
1767         to be GtkPositionType instead of a random int.
1768
1769         * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use 
1770         "frame" as detail - an aspectframe should draw identical
1771         to a frame.
1772
1773 Tue Oct 27 09:58:11 1998  Owen Taylor  <otaylor@redhat.com>
1774
1775         * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
1776         from combine_child_shapes().
1777
1778         * gdk/gdkwindow.c: Merge propagate_shapes() and
1779         propagate_combine_shapes() to remove code duplication.
1780
1781 Thu Nov  5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
1782
1783         * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
1784         gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
1785         So allocate some mem if it's not already done.
1786
1787         * clist scrollbar merges from HEAD
1788
1789 Tue Nov  3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
1790
1791         * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
1792
1793         * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
1794         of 0x80000000, so we stay within the bounds of a postive signed
1795         int (it broke some compilers)
1796
1797         * gtk/gtkmenushell.c
1798         * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
1799         when some of the menuitems are hidden
1800
1801         * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
1802         care of that
1803
1804         * gtk/gtkwidget.c: add a dummy continue after the line label
1805         next_rect, since some compilers don't like label: }
1806
1807 Sun Nov  1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
1808
1809         * Okay, so we need the X11R6 keysyms so programs don't have to
1810         worry about them. They don't conflict anyway. Reverted the #ifdef
1811         changes to gtk/*.c
1812
1813         * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
1814         special rule for them (X-derived-headers)
1815
1816 Sun Nov  1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
1817
1818         * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
1819         and gdkkeysyms.h into sed scripts, since the awk scripts weren't
1820         portable, and we really shouldn't be using awk anyway.
1821
1822         * makecursors.awk
1823         * makekeysyms.awk: bye bye
1824
1825         * gtk/gtkaccelgroup.c
1826         * gtk/gtkclist.c
1827         * gtk/gtknotebook.c
1828         * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
1829
1830 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
1831
1832         * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
1833         and gdkkeysyms.h. Remove those files from CVS.
1834
1835 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
1836
1837         * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
1838         of the USE_XIM #ifdef
1839
1840         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1841         even with --include-deps. Slightly different from timj's fix, to avoid
1842         circular dependency with gtkmarshal.c
1843
1844         * autogen.sh
1845         * gtk/gtkclist.[ch]
1846         * gtk/gtkctree.c
1847         * gtk/gtkfontsel.[ch]
1848         * gtk/gtklist.c
1849         * gtk/gtklistitem.c
1850         * gtk/gtkobject.[ch]
1851         * gtk/testgtk.c: merges from HEAD
1852
1853         * gtk/gtkmenubar.c
1854         * gtk/gtkradiomenuitem.c
1855         * gtk/gtktreeitem.c: cleanups
1856
1857 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
1858
1859         * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
1860
1861 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
1862
1863         * configure.in: AIX has libpthreads, to make sure you can have
1864         more than one thread. Also add -D_THREAD_SAFE, and reorder
1865         configure.in so CFLAGS doesn't get clobbered when we actually
1866         want to modify it
1867
1868         * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
1869         in gdk_image_get
1870
1871         * gtk/testdnd.c: removed unused variable "buf"
1872
1873 Mon Oct 26 16:46:15 1998  Owen Taylor  <otaylor@redhat.com>
1874
1875         * gtk/gtkcontainer.c (gtk_container_unregister_toplevel): 
1876         remove_link(), not remove()
1877
1878 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
1879
1880         * gdk/gdkrgb.c: use glib endian stuff
1881
1882         * configure.in: don't need to check for endianness anymore
1883
1884         * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
1885
1886 Wed Oct 21 17:44:27 1998  Owen Taylor  <otaylor@redhat.com>
1887
1888         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
1889         all toplevel widgets, not toplevel windows. (I.e.,
1890         plugs should be reset)
1891
1892         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
1893         _do_ need to notify the other toplevels - by the time
1894         the get the client messages, the RC file dates will
1895         have been updated.
1896
1897         * gtk/gtkcontainer.h: Added a function call to list
1898         every toplevel widget.
1899
1900         * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse): 
1901         Don't send client messages to _every_ window on display!
1902         
1903 Tue Oct 20 16:21:04 1998  Owen Taylor  <otaylor@redhat.com>
1904
1905         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags 
1906         when dragging across widgets, only in drags
1907         starting in widget.
1908
1909 Tue Oct 20 15:59:49 1998  Owen Taylor  <otaylor@redhat.com>
1910
1911         * gtk/gtkdnd.c (gtk_drag_source_info_destroy): 
1912         Emit "drag_end" signal at end of drag.
1913
1914 Tue Oct 20 13:07:54 1998  Owen Taylor  <otaylor@redhat.com>
1915
1916         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
1917         for "gtk-embedded" data currently set by 
1918         GtkSocket, and use that to forward client message
1919         on to embedded windows. Only reset our own toplevel -
1920         the others will handle themselves. (Now that
1921         GtkMenus live in GtkWindows)
1922
1923 Mon Oct 19 16:40:40 1998  Owen Taylor  <otaylor@redhat.com>
1924
1925         * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
1926         client window finding code so that it works with
1927         WM's other than fvwm.
1928  
1929 Sun Oct 18 22:48:27 1998  Owen Taylor  <otaylor@redhat.com>
1930
1931         * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
1932         the "GtkDrawWindow" class, which is a descendent
1933         of the Window class which leaves its background alone.
1934         Essentially, a toplevel drawing area, though it does
1935         allow adding a child.
1936
1937 Sat Oct 17 00:40:51 1998  Owen Taylor  <otaylor@redhat.com>
1938
1939         * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
1940         merging RC styles. Report new share/themes path for
1941         themes directory. Deref theme engines when appropriate.
1942
1943         * gtk/gtkclist.c: Set all backgrounds in _style_set().
1944         Make sure that pixel for xor_gc is never 0.
1945
1946         * gtk/gtkctree.c: Choose colors for plus/minus more
1947         carefully, in a hopefully style-independent fashion.
1948         (Still needs a bit more work)
1949
1950         * gtk/gtkwidget.c: Don't send expose events to widgets
1951         which are about to be resized and redrawn. (Needs a
1952         bit more thought.)
1953
1954         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
1955         drawing on tabs for newly allocated, un-sized
1956         pages - we'll get the size wrong.
1957
1958 Thu Oct  1 17:38:07 1998  Owen Taylor  <otaylor@redhat.com>
1959
1960         * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
1961         up stupidities in last commit.
1962
1963 Thu Oct  1 14:25:43 1998  Owen Taylor  <otaylor@redhat.com>
1964
1965         * gtk/gtkwidget.c: When handling queued resizes, account
1966         for handleboxes, where the widget heirarchy is different
1967         than the window heirarchy by just queueing a resize on
1968         the entire handlebox if the detached child is changed.
1969
1970         - Remove widgets from the redraw queue when reparenting,
1971         even if not unrealizing. We queue a resize/redraw in
1972         any case.
1973
1974 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
1975         * gtk/gtkstyle.c: added check to see if the widget has been shaped
1976         byt the app via gtk_widget_shape_combine_mask and if it has does
1977         not reset the shape on theme change.
1978         
1979 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
1980
1981         * gtk/gtkfilesel.c: Keep a list of directories in which we never
1982         want to stat the entries (like /afs), and assume everything in
1983         those directories is a subdirectory.
1984
1985         - When following a path, try to open components even when
1986         we don't find them in their parent's directory to
1987         support automounters.
1988
1989 Fri Sep 11 15:36:33 1998  Owen Taylor  <otaylor@redhat.com>
1990
1991         * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
1992         now at least compiles again.
1993
1994         * gdk/gdk.c (gdk_event_translate): Don't pass events
1995         on destroyed widgets to the gdk_input layer.
1996
1997 Thu Sep  3 19:45:34 1998  Owen Taylor  <otaylor@redhat.com>
1998
1999         * gtk/gtkthemes.c: Use g_module instead of dlopen()
2000
2001 Thu Sep  3 19:30:11 1998  Owen Taylor  <otaylor@redhat.com>
2002
2003         * gtk/gtktooltips.c (gtk_tooltips_expose): Check
2004         if we've changed widgets since the expose event
2005         was queued.
2006
2007 Mon Aug 31 15:33:13 1998  Owen Taylor  <otaylor@redhat.com>
2008
2009         * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
2010         to restore approximate bin compatibility with the
2011         non-themes branch. (This does break bin compat
2012         within the themes branch.)
2013
2014 Sun Aug 30 16:48:27 1998  Owen Taylor  <otaylor@gtk.org>
2015
2016         * gtk/gtklabel.c (gtk_label_set): Eliminate a 
2017         gdk_window_clear_area() that snuck in with the
2018         menu underlines merge.
2019
2020 Mon Aug 24 23:37:26 1998  Owen Taylor  <otaylor@redhat.com>
2021
2022         * gtk/gtktext.c: Fixed some remaining background drawing,
2023           merges from main branch, cleanups.
2024
2025 Mon Aug 24 10:55:51 1998  Owen Taylor  <otaylor@redhat.com>
2026
2027         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
2028           dereference NULL focus tab.
2029
2030         * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
2031           functions since we need to both show/hide and 
2032           queue a redraw. (There's some duplication of drawing here, 
2033           we probably should only be queuing a redraw on the
2034           "value" portion of the scale.)
2035
2036 Fri Aug 21 19:02:30 1998  Owen Taylor  <otaylor@redhat.com>
2037
2038         * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
2039           into the theme-drawing framework. We do this by making them,
2040           like check/radio-buttons, no-window widgets with subwindows. We
2041           then move the value by calling gtk_widget_queue_clear() and only
2042           redraw the value in our draw() / expose() handler.  A virtual
2043           function clear_background is added which queues a clear on the
2044           "background" portion of the widget.
2045
2046 Fri Aug 21 13:04:27 1998  Owen Taylor  <otaylor@redhat.com>
2047
2048         * gtk/gtktext.c (mark_bg_gc): Make background colors work
2049           again. (We can't always paint the background with a
2050           paint() function - only do that for selected text)
2051
2052 Mon Aug 17 20:31:01 1998  Owen Taylor  <otaylor@redhat.com>
2053
2054         * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
2055           gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
2056
2057         * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
2058           the themes can't be built as part of the same build since
2059           they depend on gdk_imlib.
2060
2061 Fri Aug 14 12:44:30 1998  Owen Taylor  <otaylor@redhat.com>
2062
2063         * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
2064           from gtkthemes.c.
2065                 
2066         * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
2067           gtk/
2068
2069           - Upgrade to libtool-1.2b + patch to add shared library dependencies
2070             for Linux. (Needs to be extended to other platforms where they
2071             are safe)
2072
2073          - Check for -ldl so this branch should build on all platforms, though
2074            themes will work on all platforms they could work on.
2075
2076          - Use -version and -release simultaneously: sonames stay as they are
2077            in the current scheme, but -lgtk-1.1 changes to -lgtk.
2078
2079          - Added in extra -l flags to library LDFLAGS so we get shared library
2080            dependencies against X libs and -ldl. (But not libgtk against 
2081            libgdk or libglib yet, since dependencies against uninstalled
2082            libraries aren't portable)
2083
2084 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
2085         * gtkrc.c - added api calls to find module and theme paths from gtk.
2086           nuked gtk_install_prefix global.
2087         
2088 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
2089         * fixed gtk_install_prefix global.
2090           
2091 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
2092         * added gtk_install_prefix global const variabel to find where gtk is
2093           installed.
2094           
2095 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
2096         * added ~/.gtk/lib/themes/engines/ to the default searchpath for
2097           gtk theme engines
2098         
2099 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
2100         * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
2101
2102 Mon Aug 10 23:03:55 1998  The Rasterman <raster@redhat.com>
2103         * Fixed minor problem in gtkhandlebox.c with drawing, and some
2104           notebook stuff. Also pixmap theme is now "clean" again.
2105           
2106 Mon Aug 10 23:03:55 1998  Owen Taylor  <otaylor@redhat.com>
2107         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up 
2108           queued area resizing once more.
2109
2110 Mon Aug 10 23:09:30 EDT 1998
2111         * Added a few drawing fixes for notebook and other widgets. finished
2112           pixmap theme up to the level that can be supported so far. (need to
2113           add path discovery 9ie where is the rc fiel from - add to pixmap 
2114           path so we can get theimages from there too). then we can package 
2115           themes. After that need to add to theme seartch path stuff in users 
2116           home dir.
2117           
2118 Thu Aug  6 16:49:25 1998  Owen Taylor  <otaylor@redhat.com>
2119
2120         * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
2121           drawing area, draw in an expose handler.
2122
2123         * gtk/gtknotebook.c (gtk_notebook_expose): Check for
2124           empty current page.
2125
2126 Wed Aug  5 16:13:15 1998  Owen Taylor  <otaylor@redhat.com>
2127
2128         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
2129           creation of GC's so that they will be set before
2130           they are used for map events (why are they used there?)
2131
2132         * gtk/gtkwidget.c: Fixed mistake that caused widgets to
2133           be queued in multiple times in the queue.
2134
2135 Wed Aug  5 14:23:52 1998  Owen Taylor  <otaylor@redhat.com>
2136
2137         * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
2138           clip rects (or do anything) for shadow_none.
2139
2140 Wed Aug  5 13:14:57 1998  Owen Taylor  <otaylor@redhat.com>
2141
2142         * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
2143           Yes, it was needed. draw() and expose() are _not_
2144           identical.
2145
2146 Sat Aug  1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
2147         * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
2148
2149 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
2150         * YES YES YES YES YES clist borders work again! YES! YES YES! gimme 
2151           more baby oooh yeah more more MORE YES YES.
2152
2153 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
2154         * hopefully fixed problem wiht togglebuttons acting like
2155           radiobuttons in gtktogglebutton.c
2156
2157 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
2158         * fixed another drawing buglet in the frame drawing code (actually
2159           in the clearing code but anyway in gtkstyle.c)
2160
2161 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
2162         * Fixed warning from colorsel widget...
2163
2164 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
2165         * Fixed defautl drawing code to no longer clobber the original style
2166           pixmap bgs as it did and added a helper funciton og gtkstyle.c to
2167           help with this.
2168
2169 Thu Jul 30 18:09:21 1998  Owen Taylor  <otaylor@redhat.com>
2170
2171         * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
2172
2173         * gtk/gtktooltips.c: Pass a widget (the window) to the
2174           drawing function instead of the GtkTooltips.
2175
2176 Thu Jul 30 17:27:10 1998  Owen Taylor  <otaylor@redhat.com>
2177
2178         * gdk/gdkwindow.c: Abstract out checking for shape
2179           extension into a function.
2180
2181         * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
2182           Remove extra callls to gtk_window_draw().
2183
2184 Thu Jul 30 11:18:43 1998  Owen Taylor  <otaylor@redhat.com>
2185
2186         * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
2187
2188         * themes/th_main.c: Moved messages around so they are
2189           printed before destroying strings.
2190
2191 Wed Jul 29 16:56:07 1998  Owen Taylor  <otaylor@redhat.com>
2192
2193         * gdk/gdk.c: Fairly simple implementation of expose compression.
2194           (No GraphicsExpose compression yet, always compress
2195           with the equivalent of XtCompressMultiple - no compression
2196           of Expose events across non-Expose events)
2197         
2198         * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
2199           Find rectangle bounding two rectangles.
2200
2201         * gtk/gtkstyle.c: Set clip rects for a few extra GC's
2202           in gdk_default_draw_shadow()
2203         
2204 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
2205         * Fixed drawing functions to handle switching themes on the fly 
2206           gracefully and look decent.
2207           
2208 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
2209         * Added all the theme drawing code to all widgets, fixed up minor
2210           nigglies in some widgets when it comes to themes, seem to be
2211           running into some funky behavior with clipping rects in GC's. Too
2212           many files to list here. (all files that now use gtk_paint_* are
2213           affected).
2214
2215 Tue Jul 28 22:49:16 1998  Owen Taylor  <otaylor@redhat.com>
2216
2217         * themes/th_main.c themes/th_draw.c gtk/testgtkrc: 
2218           Set up the demo theme so it is loaded from the RC file.
2219
2220         * themes/th_draw.c: Alleviate the hardcoded paths a wee
2221           bit. (use $HOME/themes/)
2222
2223         * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in 
2224           the RC file via dlopen()
2225
2226 Tue Jul 28 20:30:56 1998  Owen Taylor  <otaylor@redhat.com>
2227
2228         Internal handling of styles and RC styles pretty much
2229         completely reworked for Theme work.
2230
2231         * gtkthemes.[ch]: 
2232          - Added routines for virtualization of RcStyle and Style handling.
2233          - Temporary "sample" inline theme-engine. (Does nothing
2234            but print out a few messages.
2235         
2236         * gtkrc.[ch]
2237          - Made GtkRcStyle public, added flags to tell if particular
2238            colors have been set.
2239          - RC Styles are "transparent", and the final style for
2240            a widget is the composition of all matching styles
2241          - Added pointer to GtkThemeEngine, and gpointer engine_data
2242            to RC style and style.
2243          - Parse "engine" keyword, load the appropriate theme engine
2244            and call the engine's parser.
2245         
2246         *  gtkstyle.[ch]
2247          - Keep a GtkRcStyle * in styles created from Rc Styles.
2248          - Load up images from RC file at style attachment time.
2249          - Call ->engine->foo() at appropriate times.
2250          - Don't use a GCache. All incarnations for a style are
2251            just linked together in a list, depend on the RC style 
2252            code to find the existing copy.
2253
2254 Tue Jul 28 14:41:54 1998  Owen Taylor  <otaylor@redhat.com>
2255
2256         * gtk/gtkwidget.[ch]: Added the concept of queued redraws
2257           of partial areas. This can be done either relative
2258           to the existing windows (gtk_widget_queue_clear[_area]())
2259           or relative to the future allocation of the widget
2260           (gtk_widget_queue_draw[_area]). 
2261
2262           The initial implementation is pretty braindead, but
2263           can be improved.
2264
2265         * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
2266           in favor of gtk_widget_queue_clear().
2267         
2268         * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
2269           flags in favor of gtk_widget_queue_clear()
2270         
2271 Tue Aug  4 19:12:14 1998  Owen Taylor  <otaylor@redhat.com>
2272
2273         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
2274           handling of partially clipped areas.
2275
2276 Thu Nov  5 18:52:35 1998  Lars Hamann  <lars@gtk.org>
2277
2278         * gtk/gtkclist.h (struct _GtkCListClass)
2279         * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
2280
2281 Thu Nov  5 16:00:32 1998  Lars Hamann  <lars@gtk.org>
2282
2283         * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
2284         vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
2285
2286         * gtk/gtkclist.c (gtk_clist_class_init): added new args types
2287         "hadjustment" & "vadjustment"
2288          (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
2289         set/get_arg functions
2290         (gtk_clist_construct): don't create/adjust scrollbars.
2291         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
2292         to set h/vadjustments
2293         (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
2294         to query h/vadjustments
2295         (create_scrollbars): removed.
2296         (create_adjustments): replacement for create_scrollbars
2297         (gtk_clist_new): call gtk_clist_new_with_titles
2298         (gtk_clist_new_with_titles): don't warn on titles == NULL
2299         (move_horizontal): use CLAMP instead
2300         (gtk_clist_set_policy): deprecated method.
2301         use gtk_scrolled_window_set_policy instead.
2302         (vadjustment_value_changed): use clist->vadj.
2303         (adjust_scrollbars): renamed to adjust_adjustments
2304         (adjust_adjustments): former adjust_scrollbars
2305         (gtk_clist_destroy): unref adjustments
2306         (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
2307         (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
2308         (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
2309         (gtk_clist_thaw) (real_insert_row) (real_remove_row)
2310         (gtk_clist_set_row_height) (real_resize_column):
2311         call adjust_adjustments
2312         (gtk_clist_moveto): return if clist has no adjustments yet.
2313         (gtk_clist_parent_set): new GtkWidget::parent_set function.
2314         Autogenerate h/vadjustments if needed.  
2315         (move_horizontal) (move_vertical): some cleanups
2316
2317         * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
2318         call only gtk_viewport_set_h/vadjustment and let these functions
2319         do the work.
2320         (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
2321         generate a new adjustment if needed
2322
2323         * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
2324         use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
2325         
2326         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
2327         queue_resize if visibility of scrollbars changes
2328         (gtk_scrolled_window_remove): only call container_remove with
2329         scrolled_window->viewport automatically if viewport was autogenerated
2330         (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
2331         auto create a viewport only if widget does not take h/vadjustments.
2332         (gtk_scrolled_window_construct): don't generate a viewport
2333         automatically.
2334         (gtk_scrolled_window_forall): call callback with viewport in any case
2335         (gtk_scrolled_window_set_arg): call gtk_container_add in case of
2336         ARG_VIEWPORT
2337         (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
2338         (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
2339         viewport != NULL
2340
2341         * gtk/testgtk.c 
2342         (create_ctree) (export_ctree) (create_clist): use a scrolled_window
2343         in conjunction with clists/ctrees
2344
2345         * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
2346         in conjunction with clists
2347
2348         * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
2349         in conjunction with clists
2350
2351 Wed Nov  4 21:52:57 1998  Lars Hamann  <lars@gtk.org>
2352
2353         * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
2354         (gtk_ctree_remove_node): select focus_row if needed
2355         (cell_size_request): only get pixmap size if pixmap != NULL
2356
2357 Wed Nov  4 04:30:37 1998  Tim Janik  <timj@gtk.org>
2358
2359         * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
2360         GTK_IS_WIDGET (widget):
2361
2362 Wed Nov  4 02:02:07 1998  Lars Hamann  <lars@gtk.org>
2363
2364         * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
2365         focus_row after a remove_row call.
2366
2367 Sun Nov  1 21:00:06 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>
2368
2369         * gtk/gtkoptionmenu.c
2370         * gtk/gtkmenushell.c: make option menus work when some of the
2371         menuitems are hidden - previously, option menu would popup too
2372         high.
2373
2374 1998-10-31  Raja R Harinath  <harinath@cs.umn.edu>
2375
2376         * gtk/gtkfeatures.h.in: Remove `#pragma }'.
2377
2378         * gdk/gdki18n.h: Update to use new `glib' widechar defines.
2379
2380         * configure.in (CFLAGS): Don't use test -z "echo .. | grep".  Use
2381         case instead.
2382         (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
2383         (GDK_WLIBS): New variable.  Lists extra libraries needed to use
2384         widechar functions.
2385         * gtk-config.in (--libs): List $GDK_WLIBS, too.
2386
2387 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2388
2389         * Released GTK+ 1.1.3
2390         
2391         * INSTALL:
2392         * NEWS:
2393         * README:
2394         * gtk+.spec:
2395         * docs/gtk-config.1: updated for v1.1.3
2396
2397         * Makefile.am
2398         * sanity_check
2399         * docs/Makefile.am: Includes new 'make release' as well as
2400           'make sanity'.  Also handles html and text creation from html,
2401           and puts them into the distribution
2402
2403         * docs/Makefile.sgml: removed, similar functionality is now in 
2404           the Makefile.am file
2405
2406         * docs/.cvsignore: ignore html and text directories
2407         * docs/glib.texi: removed (now in glib dist)
2408
2409 Fri Oct 30 20:02:36 1998  Lars Hamann  <lars@gtk.org>
2410
2411         * gtk/gtklist.c (gtk_list_remove_items_internal): 
2412         free undo_un/selection, unselect list_item before disconnect
2413         signal functions
2414         (gtk_list_destroy): removed. gtk_list_shutdown clears the list
2415         already
2416         (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
2417         (gtk_list_signal_item_toggle)   (gtk_list_signal_scroll_horizontal)
2418         (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
2419         (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
2420         (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
2421         (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
2422         (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
2423         new functions. These functions are signal connected to inserted
2424         list_items, to handle key bindings and GtkItem::de/select/toggle
2425         signals.
2426
2427         * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
2428         gtk_object_class_add_signals call.
2429         (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
2430         (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
2431         (gtk_list_item_start_selection) (gtk_list_item_end_selection)
2432         (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
2433         (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
2434         removed. These functions are handled via connected
2435         gtk_list_signal_* functions now
2436
2437 Fri Oct 30 05:24:43 1998  Tim Janik  <timj@gtk.org>
2438
2439         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
2440         even with --include-deps:
2441         $(libgtk_la_SOURCES): $(BUILT_SOURCES)
2442
2443 Fri Oct 30 01:56:08 1998  Tim Janik  <timj@gtk.org>
2444
2445         * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
2446         gtk_object_data_set_destroy to fit the gtkobject.h API.
2447
2448         * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
2449         * gtk/gtkfontsel.h:
2450         * gtk/gtkfontsel.c:
2451         Added support for an extra 'base' filter which an application can
2452         set to restrict the fonts available to the user (e.g. a terminal
2453         program only wants the user to be able to select fixed-width fonts).
2454         The type of font (bitmap/scalable/scaled bitmap) is now
2455         also a part of the filter, so that an application can
2456         request that only scalable fonts are shown.
2457         There are new functions to set the base & user filters.
2458         I've also stopped the up/down key press signals getting
2459         to the clists since the font selection widget handles
2460         them itself. It acted a bit strangely before.
2461
2462 Sun Oct 25 20:27:02 1998  Tim Janik  <timj@gtk.org>
2463
2464         * gtk/gtkmain.c (gtk_init): support an environment variable
2465         GTK_MODULES= which takes a colon sperated list of module names
2466         automatically loaded at gtk_init() startup.
2467
2468 Sun Oct 25 08:04:33 1998  Tim Janik  <timj@gtk.org>
2469
2470         * gtk/gtkwidget.c: added more g_return_if_fail() statements.
2471
2472 Thu Oct 22 22:40:35 1998  Lars Hamann  <lars@gtk.org>
2473
2474         * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
2475         is sufficient
2476
2477 Thu Oct 22 16:22:55 1998  Lars Hamann  <lars@gtk.org>
2478
2479         * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
2480         columns
2481
2482 Thu Oct 22 02:29:53 1998  Tim Janik  <timj@gtk.org>
2483
2484         * gtk/gtkfilesel.h: GtkType and macro fixups
2485         * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
2486         for the file selection widget to try a completion on (set the
2487         initial filter).
2488
2489 Wed Oct 14 14:34:04 1998  Tim Janik  <timj@gtk.org>
2490
2491         * gtk/gtkmain.c: implement idle functions via GHook. this gives a
2492         slight speed improvement and lessens code duplication.
2493
2494 Tue Oct 20 14:53:28 1998  Owen Taylor  <otaylor@redhat.com>
2495
2496         * gtk/gtkdnd.c: Always send "drag_leave" to dests
2497         without GTK_DEST_DEFAULT_MOTION. 
2498
2499 Tue Oct 20 11:55:24 1998  Owen Taylor  <otaylor@redhat.com>
2500
2501         * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
2502         on destroyed windows so we clear the XID table properly.
2503         Finish up restructure of return value handling that
2504         was half-done before.
2505
2506 Tue Oct 20 12:57:10 1998  Owen Taylor  <otaylor@redhat.com>
2507
2508         * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
2509         the window tree more comprehensively, so that we find
2510         client windows hidden under non-toplevels.
2511
2512 Tue Oct 20 12:43:04 1998  Owen Taylor  <otaylor@redhat.com>
2513
2514         * gtk/gtkselection.c (gtk_selection_data_set): 
2515         Maintain the null-termintation guarantee, even when 
2516         data = NULL, length = 0. (Warn on data = NULL, 
2517         length > 0)
2518
2519 Mon Oct 19 16:41:44 1998  Owen Taylor  <otaylor@redhat.com>
2520
2521         * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
2522         into function prototype for drag_data_received. 
2523
2524 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
2525
2526         * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
2527
2528 Mon Oct 19 23:44:41 1998  Lars Hamann  <lars@gtk.org>
2529
2530         * gtk/gtkclist.c: rearranged some functions
2531         (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
2532         flag of column
2533         (gtk_clist_set_column_resizeable): if resizeable disable auto_resize 
2534         (gtk_clist_set_border): deprecated function, use
2535         gtk_clist_set_shadow_type instead.
2536         (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
2537         (adjust_scrollbars): some cleanups
2538         (select_row) (unselect_row): removed. replaced by equivalent
2539         gtk_signal_emit calls
2540         (add_style_data): removed, use gtk_clist_style_set instead
2541         (gtk_clist_style_set): fill in size data, after style was set. 
2542         (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
2543         (gtk_clist_set_cell_style): auto_resize columns if needed
2544         (column_auto_resize): resize column if needed for auto_resize 
2545         (real_clear): disable auto_resize while list destroy
2546         (resize_column): removed
2547
2548         * gtk/gtkctree.c : (gtk_ctree_remove_node)
2549         (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
2550         (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
2551         (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
2552         (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
2553         (real_tree_collapse) (real_tree_expand) (column_auto_resize):
2554         auto_resize columns if needed
2555         (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
2556         (real_clear): disable auto_resize while processing the tree
2557
2558         * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
2559         for one column
2560
2561 Mon Oct 19 08:31:36 1998  Owen Taylor  <otaylor@redhat.com>
2562
2563         * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
2564         typo - look for right atom on transfer failures.
2565
2566 Sun Oct 18 20:52:22 1998  Owen Taylor  <otaylor@gtk.org>
2567
2568         * gtk/gtkwidget.c gtkmarshal.list: Change signal 
2569         for drag_data_get to match the use that was being
2570         made of it everywhere else...
2571
2572 Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>
2573
2574         * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
2575         mechanism, that is used for the DND messages.
2576
2577           Removed all the old DND code.
2578
2579         * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
2580         get the visual of a given colormap.
2581         
2582         * gtk/gtkcolorsel.c: Conversion to new DND, drag 
2583         a color-swatch.
2584
2585         * gdk/gdk.h gdk/gdkdnd.c: The low-level
2586         X oriented portions of drag and drop protocols.
2587         Sending and receiving client messages, and navigating
2588         window trees.
2589
2590         * gdk/gdkimage.c: added a gdk_flush() when destroying
2591         SHM images to hopefully make it more likely that
2592         X will gracefully handle the segment being destroyed.
2593
2594         * gdk/gdkprivate.h gtk/gtkdebug.h: Add new 
2595         DND debugging flags.
2596
2597         * gtk/gtkeditable.[ch]: Updates for the selection handling
2598         changes.
2599         
2600         * gtk/gtkselection.[ch]: Added GtkTargetList, a 
2601         refcounted data structure for keeping track of lists
2602         of GdkAtom + information. Removed selection_handler_add
2603         in favor of a "drag_data_get" signal.
2604
2605         * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
2606         dependent) parts of the DND protocols, display of drag icons,
2607         drag-under highlighting, and the "default handlers".
2608
2609         * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
2610         windows that are used for reliable pointer grabs and
2611         selection handling in the DND code.
2612
2613         * gtk/testdnd.c: New test program for new DND. (Old
2614         DND tests in testgtk still need to be converted.)
2615
2616         * gtk/testselection.c: Use the new selection API.
2617         
2618         * docs/dnd_internals: Start at describing how
2619         all the new code works inside.
2620
2621         * docs/Changes-1.2.txt: New file describing source-incompatible
2622         changes in GTK+-1.2.
2623
2624 Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>
2625
2626         * gdk/gdkwindow.c (gdk_window_remove_filter): Free
2627         the right list node.
2628
2629         * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
2630         to the XID table so we can receive events on it.
2631
2632 Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>
2633
2634         * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
2635         to get the timestamp from a generic event.
2636
2637 Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>
2638
2639         * gtk/gtkwidget.c (gtk_widget_add_events): Added function
2640         that safely adds additional events to a widget's event 
2641         mask, even if the widget has previously been realized.
2642         (We can do this, but not remove events from the event
2643          mask).
2644
2645 Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>
2646
2647         * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
2648         for AnyPropertyType.
2649
2650 Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>
2651
2652         * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
2653         hashing.
2654
2655 Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>
2656
2657         * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
2658         isn't a timestamp.
2659
2660 Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>
2661
2662         * gdk/gdk.c (gdk_event_translate): Removed printing
2663         of unknown window lookup warnings. (Made it
2664         a GDK_NOTE) - they happen in many circumstances.
2665
2666 Tue Sep  8 12:38:43 1998  Owen Taylor  <otaylor@redhat.com>
2667
2668         * Call XFilterEvent() on events we get for unknown
2669         windows, since it may be the window Xlib uses to
2670         communicate with the IM. 
2671         (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
2672
2673 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
2674
2675         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2676         the adjustment.
2677
2678 Thu Aug 27 12:03:14 1998  Owen Taylor  <otaylor@redhat.com>
2679
2680         * gtk/gtksignal.c (gtk_signal_newv): Improve warning
2681         message for return_value + GTK_RUN_FIRST.
2682
2683 1998-10-18  Martin Baulig  <martin@home-of-linux.org>
2684
2685         * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
2686         line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
2687
2688 Fri Oct 16 15:59:02 1998  Lars Hamann  <lars@gtk.org>
2689
2690         * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
2691         styles of inserted row
2692         (change_style): change style of focus_row
2693
2694         * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
2695         (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
2696         to set/get row/cell styles.
2697         (gtk_clist_realize): attach row and cell style, allocate row colors.
2698         (gtk_clist_unrealize): detach row and cell styles.
2699         (get_cell_style): new function. get correct cell style.
2700         (draw_cell_pixmap): new function. 
2701         (draw_row): draw cells with row or cell styles.
2702         (row_new): set cell and row styles to NULL.
2703         (row_delete): detach & unref cell and row styles.
2704
2705         * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles): 
2706         new functions to attach/detach styles and allocate colors.
2707         (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
2708         styles of invisible nodes.
2709         (draw_cell_pixmap): new function. 
2710         (get_cell_style):  new function. get correct cell style.
2711         (gtk_ctree_draw_expander): new function. draw tree expander.
2712         (gtk_ctree_draw_lines): new function.draw tree lines.
2713         (draw_row): draw cells with row or cell styles.
2714         (row_new): set cell and row styles to NULL.
2715         (row_delete): detach & unref cell and row styles.
2716         (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style) 
2717         (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style): 
2718         Analogons of GtkCList functions 
2719         (gtk_ctree_set_spacing): new function. set spacing between
2720         tree expander and cell contents
2721         (gtk_ctree_set_expander_style): new function. set expander style
2722         of ctree.
2723         (ctree_is_hot_spot): few changes due to draw_row modifications.
2724
2725 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
2726
2727         * gtk/gtkcombo.c: try completion on MOD1-TAB.
2728         Handle case when the combo->list is empty.
2729
2730 Mon Oct 12 07:51:34 1998  Tim Janik  <timj@gtk.org>
2731
2732         * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
2733         handlers that have not yet been disconnected (finally managed to
2734         trigger the gtk_signal_handler_unref() paranoid warning).
2735
2736 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
2737
2738         * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
2739         width and height which is -1 and not -2.
2740
2741 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
2742
2743         * HACKING
2744         * autogen.sh: we need libtool 1.2b now
2745
2746 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
2747
2748         * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
2749         and bottom attach arguments as mandatory and readjust the table size
2750         and opposing edge accordingly if required. this way the order in which
2751         the arguments are set doesn't matter.
2752
2753 Thu Oct  8 15:53:59 1998  Owen Taylor  <otaylor@redhat.com>
2754
2755         * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
2756         message to print out parent class name correctly.
2757
2758 Thu Oct  8 07:07:10 1998  Tim Janik  <timj@gtk.org>
2759
2760         * gtk/gtkobject.h: 
2761         * gtk/gtkobject.c:
2762         removed functions gtk_object_set_data_destroy and
2763         gtk_object_set_data_destroy_by_id.
2764         added functions gtk_object_remove_no_notify and
2765         gtk_object_remove_no_notify_by_id which will remove a certain data
2766         portion without invokation of its destroy notifier, this should only
2767         be used in very controled circumstances.
2768
2769 Wed Oct  7 23:59:37 1998  Lars Hamann  <lars@gtk.org>
2770
2771         * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
2772         size_allocate_title_buttons call
2773         (gtk_clist_realize): changed initial column.window position
2774
2775 Wed Oct  7 20:27:28 1998  Lars Hamann  <lars@gtk.org>
2776
2777         * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
2778         xor_gc instead
2779         * gtk/gtkctree.c (create_xor_gc): removed
2780         (gtk_ctree_button_press): set correct line_attributes for
2781         clist->xor_gc on drag start
2782         (gtk_ctree_button_release): reset clist->xor_gc
2783
2784 Wed Oct  7 05:15:36 1998  Tim Janik  <timj@gtk.org>
2785
2786         * gtk/gtk*.h:
2787         * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
2788         which were in place to fixup emacs' cc-mode indentation.
2789         putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
2790         proper way to achive this and doesn't produce problems for
2791         stupid pragma-related compiler bugs. ;)
2792
2793 Wed Oct  7 00:59:46 1998  Lars Hamann  <lars@gtk.org>
2794
2795         * gtk/gtkclist.h: new signal GtkCList::resize_column.
2796         * gtk/gtkclist.c (draw_row): don't draw invisible columns
2797         (size_allocate_title_buttons) (size_allocate_columns):
2798         skip invisible columns
2799         (new_column_width): take min/max_width into account 
2800         (gtk_clist_button_release) (gtk_clist_motion):
2801         changes due to changed new_column_width function
2802         (LIST_WIDTH): changed define to inline function.
2803         (real_resize_column): class function for resize_column signal
2804         (gtk_clist_motion): fixed autoscrolling for column resizes
2805         (gtk_clist_set_column_visibility): don't hide last visible column,
2806         changed visible arg to gboolean
2807         (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
2808         new functions : set min/max width of a column
2809         (gtk_clist_set_column_resizeable): new function : enable/disable
2810         column resize operations by mouse
2811
2812         * gtk/gtkctree.c (draw_row): don't draw invisible columns
2813         (ctree_is_hot_spot): return FALSE if tree_column is invisible
2814         (draw_xor_line)  (draw_xor_rect): draw full rectangle/line if
2815         tree_column is invisible
2816         (gtk_ctree_find_all_by_row_data)
2817         (gtk_ctree_find_all_by_row_data_custom):  new function from
2818         Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
2819         GtkCTreeNodes with row->data == data.
2820
2821 Tue Oct  6 14:05:00 1998  Tim Janik  <timj@gtk.org>
2822
2823         * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
2824         memory (Martin Pool <mbp@wistful.humbug.org.au>).
2825
2826 Mon Oct  5 15:26:30 1998  Raph Levien  <raph@gimp.org>
2827
2828         * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
2829         should have been guint32. Thanks to Tristan Colgate for finding it.
2830
2831 Sun Oct  4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2832
2833         * gtk/gtkcalendar.h:
2834           gtk/gtkcalendar.c: More changes:
2835           - The day with focus is now seperated from the day selected
2836           - The day with focus has the xor's line around it
2837           - The selected day is now standard selected style
2838           - The week names and week numbers are now also drawn
2839             with selected style
2840           - Space now selects the day which has focus
2841
2842 Sun Oct  4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2843
2844         * gtk/gtkcalendar.h:
2845           gtk/gtkcalendar.c: Some significant changes, including:
2846           - No longer draw focus around entire widget, only around
2847             the day which has focus
2848           - Draw relief around entire widget like originally planned
2849           - Show header and day names by default 
2850           - Move data private to the widget out of GtkCalendar struct
2851             and only point to it with a gpointer
2852           - Remove some old unused variables from GtkCalendar struct
2853
2854 Sun Oct  4 17:45:43 BST 1998  Tony Gale  <gale@gtk.org>
2855
2856         * docs/gtk_tut.sgml: update I've had sat around:
2857           - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
2858           - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
2859           - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
2860
2861 1998-10-01  Martin Baulig  <martin@home-of-linux.org>
2862
2863         * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
2864         
2865         * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
2866         Makes it possible to individually show and hide columns.
2867         (size_allocate_columns): Adapted to keep track of hidden columns.
2868         (size_allocate_title_buttons): Likewise.
2869
2870 Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>
2871
2872         * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
2873         fundamental types, collect an argument of the type returned from
2874         gtk_type_get_varargs_type(). removed the first macro argument which
2875         was just the same as the fundamental type of the *arg passed to
2876         the macro.
2877         * gtk/gtkarg.c (gtk_args_collect): 
2878         * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
2879
2880         * gtk/gtktypeutils.h: 
2881         * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
2882         gtk_type_get_varargs_type() to set and query the varargs collect
2883         type used for a fundamental type, registered outside of Gtk.
2884
2885         * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
2886         GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
2887         GTK_TYPE_FLOAT.
2888
2889         * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
2890         GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
2891         to GTK_TYPE_FLOAT.
2892
2893 Sat Oct  3 01:25:24 1998  Lars Hamann  <lars@gtk.org>
2894
2895         * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
2896         (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand): 
2897         fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
2898
2899         (real_tree_expand) (real_tree_collapse):
2900         don't expand/collapse a leaf
2901
2902 Fri Oct  2 16:10:36 1998  Tim Janik  <timj@gtk.org>
2903
2904         * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
2905         segfault when looking up a non-existant value name (reported by
2906         Pablo <pcj+gtk@primenet.com>).
2907
2908 Thu Oct  1 10:40:20 1998  Tim Janik  <timj@gtk.org>
2909
2910         * gtk/gtkclist.h (gtk_clist_prepend):
2911         * gtk/gtkclist.c (gtk_clist_prepend): new function.
2912         (gtk_clist_insert): added g_return_val_if_fail()
2913         statements. accept a row parameter < 0 or > clist->rows to indicate
2914         append mode.
2915         (real_clear): first clean up all internal pointers and lists (e.g.
2916         clist->row_list or clist->rows), then delete the distinct rows. this
2917         is required because of destroy notifiers, we need to have all internal
2918         structures updated and be reentrant.
2919
2920         * gtk/gtkcalendar.h: 
2921         * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
2922         GtkCalendarClass signal methods.
2923         GtkType and macro fixups, put `void' into () prototypes, avoid C++
2924         style comments, indentation fixes, fixed some g_return_if_fail()
2925         statements.
2926         (gtk_calendar_paint_header):
2927         (gtk_calendar_paint_day_names): 
2928         (gtk_calendar_paint_week_numbers): 
2929         (gtk_calendar_paint_main): made these static functions.
2930         (gtk_calendar_select_month):
2931         (gtk_calendar_select_day):
2932         (gtk_calendar_mark_day):
2933         (gtk_calendar_unmark_day):
2934         (gtk_calendar_get_date): signedness corrections, use guints
2935         rather than gints.
2936         (gtk_calendar_size_request): removed unused variables.
2937
2938 Wed Sep 30 13:11:09 1998  Tim Janik  <timj@gtk.org>
2939
2940         * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
2941         widgets in the ->widgets_by_action list that have a callback
2942         defined (not only those with a callback_action!=0).
2943
2944 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2945
2946         * gtk/gtkcalendar.h:
2947           gtk/gtkcalendar.c:
2948           examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
2949
2950 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2951
2952         * gtk/gtkcalendar.h:
2953           gtk/gtkcalendar.c:
2954           examples/calendar: Added gtkcalendar widget and demo
2955
2956 Sat Sep 26 06:15:34 1998  Tim Janik  <timj@gtk.org>
2957
2958         * gtk/gtkclist.c (gtk_clist_sort): 
2959         (gtk_clist_clear): 
2960         (gtk_clist_unselect_all): 
2961         (gtk_clist_select_all): adde g_return_if_fail() statements.
2962
2963 Sat Sep 26 04:46:22 1998  Tim Janik  <timj@gtk.org>
2964
2965         * configure.in: set binary age and interface age to 0.
2966
2967         * gtk/gtkspinbutton.h: 
2968         * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
2969         gtk_spin_button_configure. gtk_spin_button_construct is still defined
2970         as an alias for gtk_spin_button_configure for source compatibility,
2971         but actuall use is deprecated.
2972         typeness corrections, i.e. gint->gboolean and gint->guint.
2973         added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
2974         GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
2975         GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
2976         GtkSpinButton::adjustment, GtkSpinButton::digits and
2977         GtkSpinButton::climb_rate.
2978         GtkType and macro fixups.
2979
2980 Sat Sep 25 23:33:55 1998  Tim Janik  <timj@gtk.org>
2981
2982         * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
2983         the *real* geometry position of a window, taken possible window
2984         manager offsets into account.
2985         this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
2986         olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
2987         it does fail though for amiwm which adds windows to a pseudo root
2988         window, and for icewm by a small offset because it defines the
2989         geometry position whithin its border.
2990
2991         * gtk/testgtk.c: added "saved position" test to figure how
2992         gdk_window_get_root_origin() interacts with window managers (repopup
2993         this window to figure ;).
2994
2995 Wed Sep 23 06:09:19 1998  Tim Janik  <timj@gtk.org>
2996
2997         * configure.in: update to Gtk+ version 1.1.3, binary age 1,
2998         interface age 1.
2999
3000         * gtk/gtkobject.c
3001         (gtk_object_ref): 
3002         (gtk_object_unref): check for ->ref_count to be greater than 0 (the
3003         existing code was buggy in letting ->ref_count==0 pass through and
3004         then failing the living_objs_ht assertion).
3005
3006         * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
3007         pixtext fields (Roman Pozlevich <roma@botik.ru>).
3008
3009 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3010
3011         * Released GTK+ 1.1.2
3012
3013 Mon Sep 21 01:12:44 1998  Jay Cox  (jaycox@earthlink.net)
3014
3015         * gtk/Makefile.am: use $(PERL) instead of perl
3016         * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
3017         also much faster to render.
3018
3019 Mon Sep 21 07:44:30 1998  Tim Janik  <timj@gtk.org>
3020
3021         * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
3022         the required memory block, rather than allocating it newly from
3023         scratch and doing a full-blown block copy on it.
3024
3025 Mon Sep 21 02:30:06 1998  Tim Janik  <timj@gtk.org>
3026
3027         * NEWS file update for upcoming release of Gtk+ version 1.1.2,
3028         binary age 0, interface age 0.
3029
3030         * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
3031
3032 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
3033
3034         * ltmain.sh: Patch to libtool-1.2b to make --disable-static
3035         work.
3036
3037 Sun Sep 20 09:52:39 1998  Owen Taylor  <otaylor@gtk.org>
3038
3039         * HACKING: indent other than GNU indent should be OK
3040           now.
3041
3042         * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
3043           instead of piping through indent. If indent wasn't
3044           found in ./configure don't bother indenting at 
3045           all.
3046
3047 Fri Sep 18 19:11:10 1998  Owen Taylor  <otaylor@redhat.com>
3048
3049         * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
3050
3051 Fri Sep 18 18:54:59 1998  Jay Cox  (jaycox@earthlink.net)
3052
3053         * gtk/Makefile.am: use $(AWK) instead of awk
3054
3055 1998-09-18  Raja R Harinath  <harinath@cs.umn.edu>
3056
3057         * gtk/Makefile.am (gdk_headers): 
3058         Remove references to $(top_srcdir). 
3059         (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
3060         * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
3061
3062 Fri Sep 18 19:58:24 1998  Tim Janik  <timj@gtk.org>
3063
3064         * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
3065         GData*object_data to cure compiler warnings.
3066
3067 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
3068
3069         * install-sh
3070         * missing
3071         * mkinstalldirs: updated to latest automake version
3072
3073 1998-09-17  Raja R Harinath  <harinath@cs.umn.edu>
3074
3075         * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
3076         (gtkinclude_HEADERS): ... here.
3077         (gtk.defs): Pass `g' flag to sed, to replace all occurances.
3078
3079 Thu Sep 17 10:49:51 1998  Raph Levien  <raph@gimp.org>
3080
3081         * HACKING: added GNU indent, as it is now required to successfully
3082         build gtk+. Should this be detected in autoconf, possibly?
3083
3084 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
3085
3086         * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
3087         change library versioning scheme to drop LT_RELEASE
3088         from the -l line, while keeping it in the soname.
3089
3090 Tue Sep 15 14:10:33 1998  Owen Taylor  <otaylor@redhat.com>
3091
3092         * configure.in Makefile.in: define a MAINT-like variable REBUILD
3093         which is set if Perl and awk are found, and autogenerated sources
3094         can be rebuilt. Remove the auto-generated sources from
3095         CVS. 
3096
3097         Add dependencies so that the autogenerated sources are 
3098         rebuilt if the files they depend on change. 
3099         (This unfortunately currently results in the entire
3100         gtk/ directory being rebuilt when any header changes.
3101         Moving all enums to gtkenums.h would fix this.)
3102
3103 Thu Sep 17 05:12:48 1998  Tim Janik  <timj@gtk.org>
3104
3105         * gtk/gtkobject.h: added gtk_object_set_data_destroy and
3106         gtk_object_set_data_destroy_by_id functions to set the destroy
3107         function pointer for an existing data portion.
3108
3109         * gtk/gtkobject.c: removed the GtkObjectData implementation and
3110         made all gtk_object_*data* functions use the GLib equivalents.
3111
3112 1998-09-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3113
3114         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
3115         is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
3116         (widget != NULL), otherwise radio button insertion will not work
3117         -- the widget argument is NULL for the first radio button in the
3118         group.
3119
3120 Tue Sep 15 13:09:24 1998  Owen Taylor  <otaylor@redhat.com>
3121
3122         * gdk/gdkimage.c (gdk_image_new): Reverted global changes
3123         of g_new to malloc(), added back in the one place where
3124         it actually mattered. #include <stdlib.h>.
3125
3126         * gdk/gdkrgb.c: g_malloc() to malloc() as above.
3127
3128 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
3129
3130         * gtk/gtkfilesel.c: Keep a list of directories in which we never
3131         want to stat the entries (like /afs), and assume everything in
3132         those directories is a subdirectory.
3133
3134         - When following a path, try to open components even when
3135         we don't find them in their parent's directory to
3136         support automounters.
3137
3138 Tue Sep 15 11:06:13 1998  Owen Taylor  <otaylor@redhat.com>
3139
3140         * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
3141         a new size from the WM if we asked for the same size
3142         before and our request was rejected.
3143
3144         * gtk/gtkwindow.c (gtk_window_configure_event): If
3145         in response to a request, we get a configure event
3146         with unchanged dimensions, send a synthetic expose
3147         since ForgetGravity won't expose our window.
3148
3149 Mon Sep 14 14:28:24 1998  Owen Taylor  <otaylor@redhat.com>
3150
3151         * gtk/gtktext.c (adjust_adj): Change the way we
3152         set the adjustments on resize so that it tries to
3153         keep the beginning of the text in approximately
3154         the same place. 
3155
3156         Removed assertion that the above change made invalid.
3157
3158 Thu Sep 10 22:19:35 1998  Owen Taylor  <otaylor@redhat.com>
3159
3160         * gtk/gtktext.c: - Save first_cut_pixels when switching
3161         sizes, so that if we switch to the _same_ size,
3162         we don't move lines around.
3163
3164         - Make sure that the text area always has a size of at
3165         least 1x1, then do all computations when realized.
3166
3167         - When fetching lines in recompute_geometry, make
3168         sure we fetch enough lines to cover the screen.
3169         
3170 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3171
3172         * gdk/gdkimage.c: changed g_new()s to malloc()s and 
3173           g_free()s to free()s to avoid mixing g_new()s with 
3174           free()s.  X itself uses free() on some of the 
3175           malloced memory.
3176
3177 Sat Sep 12 10:44:06 1998  Owen Taylor  <otaylor@redhat.com>
3178
3179         * gtkfilesel.c: Maintain a list of directories like
3180         /afs we know contain only directories, and avoid
3181         stat'ing files in those directories. (Because
3182         stat'ing all files in /afs is extremely expensive)
3183
3184         To support automounters, try to open directories,
3185         even if we couldn't find them when reading their
3186         parent directory.
3187
3188 Thu Sep  3 10:29:03 1998  Owen Taylor  <otaylor@redhat.com>
3189
3190         * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
3191         to allow the same gtk.m4 to work for 1.0.x and
3192         1.1.x.
3193
3194 Fri Sep 11 15:25:10 1998  Lars Hamann  <lars@gtk.org>
3195
3196         * gtk/gtkclist.c (gtk_clist_set_selectable): new function
3197         to set/unset the selectable flag of a single row.
3198         (gtk_clist_get_selectable): new function 
3199         to get the state of the selectable flag
3200
3201         * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
3202         (gtk_ctree_node_get_selectable): clist analogons
3203         
3204 Thu Sep 10 17:04:03 1998  Raph Levien  <raph@gimp.org>
3205
3206         * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
3207         pattern.
3208
3209         * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
3210         bugs in the 4bit gray cases.
3211
3212 Wed Sep  9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
3213
3214         * configure.in: added -posix check for NeXTStep
3215
3216         * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
3217         a unique buffer for each thread.
3218
3219         * docs/gtk-config.1: clarified copyright
3220
3221 Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>
3222
3223         * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
3224
3225         * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
3226
3227         * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
3228         ATEXIT.
3229         
3230         * ltconfig: use GLib's ltconfig which honours lcc.
3231
3232 Mon Sep  7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
3233
3234         * configure.in: comment the -std1 check and save LIBS properly
3235
3236 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
3237
3238         * gtk/testrgb.c: #include <stdlib.h>
3239
3240 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
3241
3242         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
3243         When the pointer is grabbed on an input window,
3244         either explicitely, or through press-grab, and
3245         then grabbed on a non-input window, ungrab the
3246         devices.
3247
3248 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
3249
3250         * gtk/gtktypeutils.h: don't include any gdk headers.
3251         added structure definitions for GtkTypeObject and GtkTypeClass,
3252         which cover the very basic fields of GtkObject and GtkObjectClass,
3253         which are actually used by the type system.
3254         
3255         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
3256         we only refer to our own structures. improved class inheritance
3257         sanity checking a bit.
3258
3259         * gtk/gtkobject.h: placed appropriate comments at the beginnings
3260         of the GtkObject and GtkObjectClass structures, which explain
3261         their relationship to GtkTypeObject and GtkTypeClass.
3262
3263         * gtk/gtktypeutils.h:
3264         * gtk/gtkobject.h:
3265         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
3266         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
3267         gtkobject.h to gtktypeutils.h.
3268
3269         * gtk/gtkobject.h:
3270         * gtk/gtkobject.c:
3271         removed gtk_object_check_cast() and gtk_object_check_class_cast()
3272         functions. to keep source compatibility, we can provide macro aliases
3273         for the corresponding gtk_type_* functions. but then again, people
3274         shouldn't have been using these functions anyways since they were part
3275         of Gtk's internal API.
3276
3277         * gtk/gtktypeutils.h:
3278         * gtk/gtktypeutils.c:
3279         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
3280         functions to check GtkTypeObject and GtkTypeClass types.
3281
3282 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
3283
3284         * gtk/gtkctree.h:
3285         * gtk/gtkctree.c: `const' fixups.
3286
3287         * gtk/gtkclist.h:
3288         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
3289
3290         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
3291         if it is passed as NULL.
3292
3293 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
3294
3295         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
3296         big-endian cases. Added a 4bpp packed gray mode (somewhat
3297         incorrectly hardwired to MSB), which should take care of
3298         Stric's hardware.
3299
3300 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
3301
3302         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
3303         GtkSIgnalQuery leak.
3304
3305 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
3306
3307         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
3308         GTK_MENU_DIR_CHILD: check for the existance of
3309         menu_shell->active_menu_item before accessing its child.
3310         GTK_MENU_DIR_PREV:
3311         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
3312         don't, make a default selection.
3313
3314 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
3315
3316         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
3317         the children with _forall for sensitivity changes and with
3318         _foreach on pure state changes. this fixes a lot of the
3319         old inclusions of internal widgets into _foreach calls.
3320
3321         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
3322         do the work. don't walk the subtrees of first level children.
3323
3324         * gtk/gtktreeitem.c: provide a _forall implementation,
3325         which walks the subtrees as well for include_internals.
3326
3327         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
3328         the submenus as well for include_internals.
3329
3330         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
3331         implemented gtk_scrolled_window_forall, which will iterate over
3332         the viewport and the scrollbars for gtk_container_forall or
3333         iterate over the viewports children for gtk_container_foreach.
3334
3335         * gtk/gtktoolbar.c: 
3336         * gtk/gtktable.c: 
3337         * gtk/gtkpaned.c:
3338         * gtk/gtkpacker.c:
3339         * gtk/gtkmenushell.c: 
3340         * gtk/gtklist.c: 
3341         * gtk/gtkfixed.c:
3342         * gtk/gtkclist.c:
3343         * gtk/gtkbox.c: 
3344         * gtk/gtkbin.c: 
3345         * gtk/gtknotebook.c:
3346         removed the old gtk_*_foreach functions and provided gtk_*_forall.
3347
3348         * gtk/gtknotebook.c:
3349         (gtk_notebook_real_switch_page): expose tabs.
3350         (gtk_notebook_page_num): new function to return the page number
3351         of a distinct child.
3352         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
3353         under some circumstances.
3354
3355         * gtk/gtktreeitem.c:
3356         (gtk_real_tree_item_select):
3357         (gtk_real_tree_item_deselect): major fixes.
3358         some general fixups wrt queue_redraw, and tree items not being
3359         NO_WINDOW widgets.
3360
3361         * gtk/gtklistitem.c:
3362         (gtk_real_list_item_select): 
3363         (gtk_real_list_item_deselect): 
3364         (gtk_real_list_item_toggle): 
3365         removed unneccessary queue_redraw calls.
3366
3367 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
3368
3369         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
3370         automatically popup the menu on space bar.
3371
3372 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
3373
3374         * gtk/gtkcontainer.h:
3375         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
3376         method), which acts similar to gtk_container_foreach(), but iterates
3377         over internal children. the GtkContainer::foreach signal vanished in
3378         favour of a new class method ->forall() that optionally includes
3379         internal widgets.
3380
3381         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
3382         but a _forall implementation, since all child widgets we have are
3383         internal ones.
3384         (column_button_create): set the parent window prior
3385         to gtk_widget_set_parent().
3386
3387         * gtk/gtkwidget.c:
3388         exchanged all calls to gtk_container_foreach() with
3389         gtk_container_forall().
3390
3391         * gtk/gtkwidget.h: 
3392         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
3393         the GtkWidget::composite_child argument. to have a widget created
3394         with the flag initially, two new functions got added to wrap a widgets
3395         creation:
3396         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
3397
3398 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
3399
3400         * gtk/gtktooltips.h:
3401         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
3402         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
3403         prior to the first tip being set.
3404         don't put an extra reference on the window, since it is a toplevel,
3405         it wont get destroyed from anywhere else.
3406
3407         * overall macro and GtkType fixups.
3408
3409 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3410
3411         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
3412         constructs by more forgiving ones.  (Does anyone else feel like
3413         the color selector need rewriting?).
3414
3415 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
3416
3417         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
3418         the adjustment.
3419
3420         * gtk/gtkmenu.c: Modified reference counting so
3421         that the reference count from the toplevel that
3422         the menu creates to the menu is invisible to the
3423         application.
3424
3425 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
3426
3427         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
3428         conversion selection logic, so Suns and other big-endian
3429         machines should get faster conv routines. This is also the
3430         point where 4bpp gray and 1bpp are checked in, although I
3431         wouldn't be surprised if 1bpp is a little buggy. This is
3432         synchronized with the 0.0.7 release of GdkRgb.
3433
3434         * gtk/Makefile.am: 
3435         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
3436         appropriate change to the Makefile.am
3437
3438 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
3439
3440         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
3441         which is good for images that scroll (makes the dither patterns
3442         align correctly)
3443
3444 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
3445
3446         * gdk/gdkcolor.c:
3447         (gdk_colormap_new) (gdk_colormap_get_system):
3448         quell some warnings with g_hash_table_new
3449
3450         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
3451         when we're done with it
3452
3453         * gtk/itemfactory.c:
3454         (gtk_item_factory_from_path):
3455         (gtk_item_factory_create_item): free some strings
3456
3457         * gtk/gtklabel.c:
3458         (gtk_label_finalize): free label->pattern when done
3459         (gtk_label_parse_uline): null terminate pattern string, delete
3460         some duplicated code
3461
3462         * gtk/testthreads.c: add #include <unistd.h> for sleep()
3463
3464 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
3465
3466         * gtk/gtktext.c (recompute_geometry): Make sure the
3467         mark we pass to line start is the beginning of a 
3468         real line, not a wrapped one.
3469
3470 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
3471
3472         * gtk/gtktext.c: Reference count the fonts used in
3473         the text widget.
3474
3475         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
3476         freeing functions to be more consistent, and more 
3477         convenient; leave the old names in for backwards compatibility.
3478
3479         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
3480         allocations in pseudo-color colormaps to greatly reduce
3481         calls to XAllocColor. Keep a per-colormap hashtable to
3482         speed up finding if there is an already-allocated matching
3483         color.
3484
3485         * gdk/gdkcolor.c: Don't just match read the system colormap
3486         when the colormap is created, but synchronize our copy
3487         with the system colormap periodically.
3488         
3489         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
3490         Change XIM constants names to match GDK conventions
3491
3492         * gtk/testinput.c: Allow the drawing area to get the focus.
3493
3494         * gtk/testgtk.c: Change around the Text test to demonstrates
3495         multiple fonts, use more colors.
3496
3497         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
3498         so they work after a widget is unrealized.
3499
3500         * gtk/gtktext.[ch]: Remove the requirement that the text
3501         widget be realized before adding text (!) Allocate colors
3502         ourself, instead of requiring the caller allocate them.
3503         Allow changing styles to work properly by keeping track
3504         of the values for a certain property are default or
3505         set explicitely.
3506
3507         * gtk/gtkmenu.h: Added some comments.
3508
3509         * gtk/gtkentry.c: Changes to match XIM constants.
3510
3511         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
3512         for adding keyed data to drawables. (Uses g_dataset
3513         internally)
3514
3515         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
3516         when creating an XPM - store them as user data for the GdkPixmap,
3517         so we don't leak colors when we create pixmaps from XPM's.
3518
3519         Allocate memory for color information in large blocks instead of 
3520         as many little pieces.
3521         
3522 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
3523
3524         * gdk/gdkrgb.c: removed some unused variables
3525
3526         * gtk/gtkclist.c
3527         * gtk/gtkmain.c: #if 0'd out some unused code
3528
3529         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
3530
3531 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
3532
3533         * gtk/gtkarg.h:
3534         * gtk/gtkarg.c:
3535         * gtk/gtkwidget.h: 
3536         * gtk/gtkwidget.c: 
3537         * gtk/gtkobject.h:
3538         * gtk/gtkobject.c:
3539         * gtk/gtkcontainer.h: 
3540         * gtk/gtkcontainer.c: 
3541         (gtk_object_new):
3542         (gtk_object_set):
3543         (gtk_widget_new):
3544         (gtk_widget_set): 
3545         (gtk_container_add_with_args):
3546         (gtk_container_child_set):
3547         begin the parameter elipsis (...) after the first argument name. this
3548         change is source compatible, since it was always required, even as NULL.
3549         (gtk_args_collect): 
3550         (gtk_object_args_collect): 
3551         (gtk_container_child_args_collect):
3552         changed prototypes to pass first_arg_name, also, pass va_list variable
3553         by value (portability concerns). callers changed.
3554
3555         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
3556         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
3557         can't pass va_list variables by reference for portability reasons.
3558
3559 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
3560
3561         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
3562         get_visual calls, so that it gets implicitly initialized.
3563
3564 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
3565         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
3566         such as GtkCTree function name changes
3567         
3568 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
3569
3570         * gtk/gtkmain.h:
3571         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
3572         binary version check, returning a static string for error descriptions,
3573         or NULL on success.
3574
3575 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
3576
3577         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
3578         computed our geometry yet, and if not, ignore the request.
3579
3580         * gtk/gtktext.c (correct_cache_insert): Fiddled around
3581         some more. All the bug-test codes seem to work at once
3582         now. (fingers crossed...)
3583
3584 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
3585
3586         * gdk/gdkrgb.c: silly visual fixes
3587
3588         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
3589         works
3590
3591 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3592
3593         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
3594         anything if the event's window is not the bin window.
3595         (gtk_handle_box_motion): Likewise.
3596
3597 1998-08-19  Raph Levien  <raph@gimp.org>
3598
3599         * gtk/testgtk.c (create_color_preview): pushed the colormap and
3600         visual so it would work better with GdkRgb.
3601
3602 1998-08-19  Raph Levien  <raph@gimp.org>
3603
3604         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
3605         4bpp static_color mode (for vga displays). Also fixed a '64' value
3606         in the dither matrix, which was causing one pixel out of 16k to be
3607         dithered wrong.
3608
3609         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
3610         most of the contents. This is an API change - any apps that relied
3611         on the internal structure of GtkPreview will need some change -
3612         most notably in the use of reserved colors. The Gimp needed
3613         changes in this regard.
3614
3615 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
3616
3617         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
3618         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
3619         --g-fatal-warnings), noticed by miguel.
3620
3621 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
3622
3623         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
3624         getcwd().
3625
3626         * gdk/gdkprivate.h:
3627         * gdk/gdkglobals.c:
3628         * gdk/gdkwindow.c:
3629         * gdk/gdk.c:
3630         * gtk/gtkwindow.c: 
3631         * gtk/gtkitemfactory.c: 
3632         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
3633
3634         * gtk/gtkselection.c:
3635         * gtk/gtkpreview.c:
3636         * gtk/gtkobject.c: 
3637         * gtk/gtkmain.c: 
3638         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
3639
3640         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
3641
3642 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
3643
3644         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
3645         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
3646         in case of show_tabs == NULL
3647
3648 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
3649
3650         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
3651         to --g-fatal-warnings again. this option now causes log levels of
3652         WARNING and CRITICAL to abort().
3653
3654         * gdk/gdk.c: 
3655         * gdk/gdkdnd.c: 
3656         * gdk/gdkcc.c: 
3657         * gdk/gdkfont.c: 
3658         * gdk/gdkwindow.c:
3659         * gdk/gdkvisual.c:
3660         * gtk/gtkwidget.c:
3661         * gtk/gtktypeutils.c:
3662         * gtk/gtktree.c:
3663         * gtk/gtkfontsel.c:
3664         * gtk/gtkmain.c:
3665         * gtk/gtkobject.c:
3666         * gtk/gtkpreview.c:
3667         * gtk/gtkselection.c:
3668         * gtk/gtktext.c:
3669         * gtk/gtktree.c:
3670         * gtk/gtktreeitem.c:
3671         did a global search&replace to substitute g_print() calls with
3672         g_message(). libraries shouldn't use printf(), g_print() or
3673         g_printerr() at all.
3674         a bunch of the replacements should probably be wrapped into the
3675         G{D|T}K_NOTE() macros, so they are special cased for debugging
3676         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
3677         things.
3678
3679         * gdk/gdkdnd.c: added copyright notice.
3680
3681 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
3682
3683         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
3684         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
3685         running a PII 233. It's synced with the 0.0.5 release of
3686         GdkRgb.
3687
3688 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
3689
3690         * gtk/gtkclist.h:
3691         (struct _GtkCListClass): new class methods:
3692         (sort_list) (insert_row) (remove_row) (set_cell_contents)
3693
3694         * gtk/gtkclist.c :
3695         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3696         removed and replaced by (set_cell_contents)
3697         (set_cell_contents): function for class method set_cell_contents
3698         (real_insert_row): function for class method insert_row
3699         (real_remoce_row): function for class method remove_row
3700         (real_sort_list): function for class method sort_list
3701         (default_compare): fix to avoid problems with cell types != CELL_TEXT
3702
3703         * gtk/gtkctree.h :
3704         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
3705         (gtk_ctree_node_is_visible): new function to return visibility state
3706         of a node
3707         (gtk_ctree_show_stub): new function to set visibility of root stub
3708
3709         renamed functions :
3710         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
3711         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
3712         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
3713         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
3714         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
3715         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
3716         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
3717         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
3718         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
3719         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
3720         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
3721         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
3722         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
3723         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
3724         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
3725         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
3726         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
3727         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
3728         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
3729
3730         * gtk/gtkctree.c :
3731         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3732         removed and replaced by (set_cell_contents)
3733         (set_cell_contents): function for class method set_cell_contents
3734         (real_insert_row): function for class method insert_row
3735         (real_remoce_row): function for class method remove_row
3736         (real_sort_list): function for class method sort_list
3737         (default_compare): removed. CTree now also compares two GtkCTreeRows
3738         instead of two GtkCTreeNodes.
3739         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
3740         unlinking the node
3741         (real_tree_expand) (real_tree_collapse): fix for refcounting of
3742         node pixmaps
3743         (set_node_info): call gtk_ctree_node_set_pixtext instead of
3744         manipulating the row itself
3745         
3746         * gtk/testgtk.c: use renamed functions of GtkCTree.
3747         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
3748         at work.
3749
3750 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
3751
3752         * gtk/gtkmain.c: removed gtk_input_add_interp.
3753
3754         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
3755         keyword.
3756         (gtk_editable_get_event_time): fix default: case.
3757
3758         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
3759
3760         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
3761
3762         * gdk/gdkcolor.c:
3763         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
3764         of our functions.
3765
3766         * various minor compilation cleanups, such as bogus commas in
3767         enums and similar things.
3768
3769 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
3770
3771         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
3772         (thanx raph).
3773
3774 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3775
3776         * NEWS: updated for 1.1.2
3777         * gtk+.spec: version = 1.1.2
3778
3779 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
3780
3781         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
3782         times. changed --gtk-with-module to --gtk-module at owen's request.
3783
3784 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
3785
3786         * gtk/gtkmain.c (gtk_init): feature a new commandline option
3787         --gtk-with-module=<module> that allows additional loading and
3788         initialization of modules (e.g. GLE).
3789
3790 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
3791
3792         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
3793         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
3794
3795         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
3796         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
3797         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
3798         different *-fatal-* arguments now. this needs to be revised and
3799         compressed to a reasonable amount of arguments.
3800
3801 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
3802
3803         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
3804         "--g-fatal-warnings" causes fatal warnings in GLib,
3805         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
3806         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
3807
3808         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
3809         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
3810
3811         * gtk/testgtk.c: 
3812         * gdk/gxid.c:
3813         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
3814         since automake doesn't support per target _CFLAGS yet.
3815
3816         * configure.in: require GLib 1.1.3.
3817
3818 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
3819
3820         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
3821         to set a callback to test if a node in drag can be dropped onto
3822         it's currrent location.
3823         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
3824         to change the pointer when a drag destination is not allowed.
3825
3826 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
3827
3828         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
3829         speeds up the 565_d case by about 25% total. Thanks Ray!
3830
3831 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
3832
3833         * Changed GtkSignalFunc back to () from (void). (again!)
3834
3835         * Added file README.cvs-commits
3836         
3837 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
3838
3839         * docs/gtk_tut.sgml:
3840           - Tidy up of the menufactory example from
3841             Andy Kahn <kahn@zk3.dec.com>
3842           - New section on Range Widgets from
3843             David Huggins-Daines <bn711@freenet.carleton.ca>
3844           - Started a new section on 'Advanced Event and Signal
3845             Handling' - used an email from Owen.
3846           - New appendix on Gdk Event Types
3847           - Added the tictactoe full example code to the
3848             'Code Examples' appendix
3849
3850 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
3851
3852         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
3853           to calculate all the metrics at once of a string, including
3854           things which weren't calculated before.
3855
3856         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
3857           MenuItem type, that when put as the first thing in a
3858           menu, makes the menu tearoff. Currently drawn as a
3859           dashed line.
3860
3861         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
3862           "hide_on_activate" to the MenuItem class structure to allow
3863           check and radio buttons to be changed with <Space> without
3864           hiding the menu.
3865
3866         * gtk/gtkitemfactory.c: 
3867           - Create a AccelGroup for each MenuShell we create.
3868           - If an '_' appears before a  character 'c' in the path,
3869             then make 'c' an accelerator in the menu's accel group,
3870             and if the menuitem is menubar <alt>C an accelerator 
3871             in the itemfactory's accel group. Double '__' inserts
3872             a literal '_'
3873
3874         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
3875           which is a string. If an '_' appears in this string,
3876           the corresponding position in the label is underlined.
3877
3878           Add gtk_label_parse_uline() convenience function which
3879           takes a string with embedded underlines, sets the
3880           pattern and label, and returns the accelerator keyval.
3881
3882         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
3883           Instead, they create a GtkWindow and add themselves
3884           to that. (When torn off, another new feature, they
3885           create another GtkWindow to hold the torn off menu)
3886
3887           New function gtk_menu_set_tearoff_state()
3888         
3889         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
3890           Added action signals  for keyboard navigation of menus.
3891
3892         * gtk/gtkmenushell.c: Key press handler which activates
3893           bindings for navigation, and accelerators, for handling
3894           underline accelerators. Exported functions to select 
3895           and activate menu items in a menushell.
3896
3897         * gtk/testgtk.c: Added a new "Item Factory" test which
3898           tests GtkItemFactory and the new keyboard navigation
3899           of menus.
3900
3901 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
3902
3903         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
3904         external functions have been called. also relookup nodes after
3905         this function has been invoked.
3906
3907 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
3908
3909         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
3910           beginning of Text when creating the Text widget.
3911
3912         * gtk/testgtk.c: Grab the focus on the text widget so
3913           as to test out the above.
3914
3915 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
3916
3917         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
3918           ::changed is a notification signal and should have no default
3919           handler. A complete redraw of the Text widget does _not_ need to
3920           be done on every text insertion.
3921
3922 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
3923         (gtk-abilleira-072198-patch)
3924
3925         * gtk/gtkwindow.[ch]: 
3926           Add gtk_window_set_modal() which sets a flag; when
3927           set the window does a gtk_grab_add() when the window
3928           is shown, and a gtk_grab_remove() when the window
3929           is hidden. 
3930
3931         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
3932           that case will run "Create Dir","Delete File" and "Rename File" 
3933           dialogs as modal too.
3934
3935         * gtk/testgtk.c: Added a button with an example of creating modal 
3936           dialog boxes. Including file selection and color selection standard
3937           dialogs.
3938         
3939 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
3940
3941         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
3942           Removed CAN_FOCUS by default from scrollbars, button
3943           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
3944           (Scrollbar definitely good change, toolbar bit more questionable)
3945
3946 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
3947
3948         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
3949         Pettersen).
3950
3951 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
3952
3953         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
3954           added all logical operations to gc->function.
3955
3956 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
3957
3958         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
3959         gtk_widget_size_allocate instead of gtk_widget_queue_resize
3960         if the visibility state of a scrollbar changes.
3961
3962 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
3963
3964         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
3965
3966 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
3967
3968         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
3969         gtk_clist_merge and gtk_clist_mergesort. :)
3970
3971 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
3972
3973         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
3974         `mergesort' -> `my_mergesort'.
3975
3976 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
3977
3978         * gtk/gtkenums.h: new enum GtkSortType.
3979         
3980         * gtk/gtkclist.h:
3981         * gtk/gtkclist.c:
3982         Added sorting capabilities to GtkCList. New APIs :
3983         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
3984         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
3985         New internal functions : default_compare, merge, mergesort.
3986
3987         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
3988         
3989         (gtk_clist_insert): Modified to handle gtk_clist_append and the
3990         auto sort flag. Changed the return value from void to gint to
3991         return the row number where the element was actually inserted.
3992
3993         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
3994         
3995         * gtk/gtkctree.h:
3996         * gtk/gtkctree.c:
3997         Removed the auto_sort flag, replaced ctree->node_compare with
3998         clist->compare all over the place, modified default_compare to
3999         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
4000         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
4001
4002         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
4003         sorting. The lists can be sorted by a column by clicking the 
4004         corresponding title button.
4005         
4006 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
4007
4008         * Released GTK+ 1.1.1
4009
4010 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
4011
4012         * gtk/gtkctree.h:
4013         * gtk/gtkctree.c:
4014         (gtk_ctree_find): changed to return a gboolean
4015         (gtk_ctree_insert_gnode): new function for recursive insertion of a
4016         GNode tree.
4017         (gtk_ctree_real_select_recursive): fix for extended selection
4018         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
4019         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
4020
4021 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
4022
4023         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
4024         GLib version 1.1.1 is now required at minimum.
4025
4026         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
4027         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
4028
4029 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
4030  
4031         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
4032           cursor before (possibly) deleting the cursor's text
4033           property.
4034  
4035         * gtk/gtktext.c (correct_cache_delete): More attempts
4036           to clean the line-start cache up after inserting
4037           a property. Among other things, make sure to
4038           fix up text->current_line, since it is used to 
4039           refetch the changed lines.
4040  
4041 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
4042
4043         * gtk/gtktable.[ch]: Empty rows/columns of the table
4044         should not have been marked as being able to shrink.
4045         (Fixes problem with shrinking scrollbarless GIMP canvases)
4046
4047 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4048
4049         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
4050         function to find a row by its data pointer using a custom
4051         comparison function.
4052
4053 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
4054
4055         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
4056           this fixes a bug when the whole widget is made non-sesitive
4057           the buttons weren't redrawn
4058
4059 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
4060
4061         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
4062         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
4063         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
4064
4065 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
4066
4067         * gdk/gdkwindow.c (gdk_window_reparent): Change 
4068           window_private->parent pointer when reparenting.
4069
4070 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
4071
4072         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
4073         with the standalone release.
4074
4075 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
4076
4077         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
4078         (gtk_clist_button_release) (new_column_width): Few fixes for
4079         column resize. Store resize column in clist->drag_pos.
4080
4081 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
4082
4083         * gtk/gtkctree.h 
4084         * gtk/gtkctree.c 
4085         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
4086         to GtkCTreeNode *node.
4087
4088         * gtk/gtklist.h : added extended selection mode and auto scrolling.
4089         (struct _GtkList): removed unneeded variables timer, button,
4090         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
4091         Added new variables undo_selection, undo_unselection, last_focus_child,
4092         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
4093         drag_selection, add_mode.
4094  
4095         New functions :
4096         (gtk_list_extend_selection), (gtk_list_start_selection),
4097         (gtk_list_end_selection), (gtk_list_select_all),
4098         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
4099         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
4100         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
4101         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
4102         
4103         * gtk/gtklist.c : 
4104         (gtk_list_enter_notify): removed, because auto scrolling now works
4105         with gtk_list_motion_notify
4106  
4107         New functions, needed for auto scrolling :
4108         (gtk_list_motion_notify) (gtk_list_move_focus_child)
4109  
4110         New functions for extended selection support :
4111         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
4112         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
4113         (gtk_list_focus_lost)
4114         
4115         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
4116         function to support auto scrolling, and avoid out-of-sync errors in
4117         case auf GTK_SELECTION_BROWSE
4118         (gtk_list_focus): modified gtk_container_focus function to avoid out
4119         off sync errors in case auf GTK_SELECTION_EXTENDED
4120
4121         * gtk/gtklistitem.h 
4122         * gtk/gtklistitem.c :
4123         New signal functions for key binding support :
4124         (toggle_focus_row), (select_all), (list_item), (unselect_all)
4125         (list_item), (undo_selection), (start_selection), (end_selection)
4126         (extend_selection), (scroll_horizontal), (scroll_vertical),
4127         (toggle_add_mode)
4128         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
4129         GDK_KEY_RELEASE_MASK
4130         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
4131  
4132         * gtk/gtkcombo.c :
4133         (gtk_combo_popup_button_press):  grab pointer for combo->list
4134         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
4135         (gtk_combo_list_key_press): take care of which child HAS_GRAB
4136         (gtk_comb_init): don't connect combo->button with button_release_event
4137
4138 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
4139
4140         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
4141
4142 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
4143
4144         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
4145         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
4146         with horizontal and vertical autoscrolling.
4147
4148 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4149
4150         * gtk/docs/man: new directory
4151         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
4152
4153 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
4154
4155         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
4156         bug
4157
4158 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
4159
4160         * docs/gtk_tut.sgml: GtkTree section from
4161           David Huggins-Daines <bn711@freenet.carleton.ca>,
4162           add a GtkText widget example
4163         * examples/text/* example/tree/* : new examples for the
4164           GtkTree and GtkText widgets
4165         * docs/gtk_tut.sgml: added an appendix to hold complete code
4166           examples that aren't in a full form elsewhere in the
4167           tutorial (e.g. scribble)
4168
4169 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4170
4171         * Released GTK+ 1.1.0
4172
4173 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
4174
4175         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
4176         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
4177
4178 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
4179
4180         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
4181         values are looked up.
4182
4183         * gtk/gtktypeutils.h:
4184         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
4185         gtk_type_enums_find_value to lookup enum values.
4186
4187         * gtk/gtkctree.h: 
4188         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
4189         GtkCTreeExpansionType. fixed signal creations to pass the enum
4190         types not just the base type GTK_TYPE_ENUM.
4191
4192         * gtk/gtkclist.h: 
4193         * gtk/gtkclist.c: fixed signal creations to pass the real enum
4194         types not just the base type GTK_TYPE_ENUM.
4195
4196 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
4197
4198         * gtk/testgtk.c : 
4199         Began cleanup, e.g. use gtk_widget_show_all instead of many 
4200         gtk_widget_show's. Completely rewrote the button box sample
4201         (only one window now). Removed "miscellaneous" button.
4202
4203 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
4204
4205         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
4206         Fixed wrong allocation for GTK_BUTTONBOX_END.
4207         (allocation->x  =>  allocation->y)
4208
4209 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
4210
4211         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
4212         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
4213         
4214         * gtk/gtkctree.c (real_tree_select): added check to avoid double
4215         selected rows
4216         (gtk_ctree_button_press)
4217         (gtk_ctree_button_release): fix for pointer grab
4218
4219 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
4220
4221         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
4222         Fixed initialization problem - dirty memory could cause problems.
4223         Also checked that bitmapped fonts can be scaled when showing the
4224         available sizes.
4225
4226 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
4227
4228         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
4229         (gtk_ctree_sort_recursive): test for node != NULL
4230         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
4231         (gtk_ctree_last) : added sanity checks
4232         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
4233
4234 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
4235
4236         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
4237
4238 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
4239
4240         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
4241
4242 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
4243
4244         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
4245         to check out binding priorities. someone should really write
4246         gtkrc-mode for emacs.
4247
4248         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
4249         * gtk/testgtk.c (main): and move it here ;). this test says something
4250         on release of C-9. (this works only if the mouse pointer is on a
4251         spinbutton and there is no focus widget).
4252
4253         * gtk/gtkrc.h:
4254         * gtk/gtkrc.c:
4255         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
4256         gtk_rc_parse_priority to parse path priority types.
4257         export rc tokens.
4258         feature binding parsing.
4259
4260 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
4261
4262         * gtk/gtkbindings.h: 
4263         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
4264         feature binding parsing in rc files.
4265         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
4266         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
4267         order the bindings with lowest priority first.
4268
4269 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
4270
4271         * gdk/gdkrgb.c: actually builds and runs properly on big
4272         endian machines now, because we #include config.h. Also
4273         fixed up a compile error in the WORDS_BIGENDIAN case in
4274         gdk_rgb_convert_565_gray. I made the fix by looking at
4275         patterns in the other code; Raph can you verify this?
4276
4277         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
4278         warnings
4279
4280 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
4281
4282         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
4283         (tree_toggle_expansion) (real_select/unselect_row)
4284         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
4285
4286 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
4287
4288         * gtk/gtktext.c (new_text_property): We free things from
4289         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
4290
4291         * Fix up line start cache when splitting a property
4292         during an insert.
4293
4294 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
4295
4296         * gtk/gtkwidget.c: restauration => restoration
4297
4298 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
4299
4300         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
4301         hasn't been created yet, don't do the lookup.
4302
4303 1998-07-20  Raph Levien  <raph@acm.org>
4304
4305         * gdk/gdkrgb.c: More cleanups in the config process.
4306
4307 1998-07-20  Raph Levien  <raph@acm.org>
4308
4309         * gdkrgb.c: Fixed minor config bug preventing big-endian
4310         architectures from working.
4311
4312 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
4313
4314         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
4315         activity indicator. It is settable now as a fraction of the
4316         total width/height using gtk_progress_bar_set_activity_blocks.
4317         Renamed gtk_progress_bar_set_number_of_blocks to
4318         gtk_progress_bar_set_discrete_blocks.
4319
4320 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
4321
4322         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
4323         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
4324         tree to specified depth
4325         (gtk_ctree_expand_to_depth): expand tree to specified depth
4326         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
4327
4328 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
4329
4330         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
4331         of GTK_CLIST_ADD_MOD
4332         * gtk/testgtk.c (add1000_clist): changed pixmap
4333
4334 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
4335
4336         * gtk/gtkmain.h: 
4337         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
4338
4339         * gtk/gtktypeutils.h:
4340         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
4341
4342 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
4343
4344         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
4345         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
4346         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
4347         CHILD_ARG_POSITION
4348         (gtk_notebook_reorder_child): new funktion to change position of a
4349         notebook page
4350         (gtk_notebook_draw_arrow): draw left/right arrow with
4351         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
4352
4353         * gtk/gtkstyle.c (gtk_default_draw_arrow):
4354         added GTK_SHADOW_ETCHED_IN/OUT
4355
4356 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
4357
4358         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
4359           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
4360         Introduced generic GtkProgress widget. Derived GtkProgressBar from
4361         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
4362
4363 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
4364
4365         * gtk/gtktypeutils.h
4366         * gtk/gtkitemfactory.h: explicitly specify void in prototype
4367
4368 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
4369
4370         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
4371         of list
4372
4373 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
4374
4375         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
4376         sropped the approach of copying all signal specific data into a
4377         GtkHandlerInfo structure. we rather keep the signal data on the stack
4378         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
4379         avoids multiple lookups of the signal pointer and works savely together
4380         with destroy notifiers of handlers.
4381
4382         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
4383         someone destroys the entry on the ::activate signal.
4384
4385 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
4386
4387         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
4388         instead of ypad (typo).
4389         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
4390         border around the allocation).
4391         (gtk_arrow_init): the static requisition needs to be setup in this
4392         function rather than gtk_widget_new(), so arrow creation works without
4393         the gtk_arrow_new() constructing.
4394         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
4395
4396         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
4397         implementation for GtkWidget::size_request, so size requisition for
4398         simple statically sized widgets like GtkArrow works.
4399
4400 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
4401
4402         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
4403         prepend -I@libdir@/glib/include anymore, since glib-config handles
4404         it; --libs strips out redundant -L<path>'s properly (there was
4405         code in there to do it before, but it didn't work)
4406
4407 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
4408
4409         * gtk/gtknotebook.h: 
4410         * gtk/gtknotebook.c: signdness corrections all ove the place.
4411         implementation of object arguments: GtkNotebook::enable_popup,
4412         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
4413         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
4414         begun implementation of child args, we have GtkNotebook::tab_label, but
4415         GtkNotebook::menu_label and GtkNotebook::position still lack the
4416         implementation.
4417         (gtk_notebook_remove_page):
4418         (gtk_notebook_current_page): allow negative indices (-1) as alias for
4419         the last page.
4420
4421         * gtk/gtkentry.h:
4422         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
4423         arguments GtkEntry::max_length and GtkEntry::visibility.
4424         (gtk_entry_adjust_scroll): queue a redraw.
4425
4426         * gtk/gtkeditable.h:
4427         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
4428         object arguments GtkEditable::text_position and GtkEditable::editable.
4429         new (action) signal GtkEditable::set_editable.
4430         provide a default handler for GtkEditable::changed that queues a redraw.
4431
4432         * gtk/gtktext.h: 
4433         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
4434         set_editable.
4435
4436 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
4437
4438         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
4439         case of drag_target == NULL
4440         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
4441         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
4442         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
4443         gtk_dir_selection_file_button): fix due to changes in clist's
4444         select_row signal.
4445
4446 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
4447
4448         * gtk/gtkwidget.h:
4449         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
4450         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
4451         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
4452         to be gint16s rather than guint16s, since that's what the code expected
4453         (for a long time actually).
4454
4455         * gtk/gtkviewport.c:
4456         added support for object arguments: GtkViewport::shadow_type,
4457         GtkViewport::vadjustment and GtkViewport::hadjustment.
4458         (gtk_viewport_add): chain gtk_bin_add.
4459
4460         * gtk/gtkscrolledwindow.c: 
4461         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
4462         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
4463
4464         * gtk/gtkadjustment.h: 
4465         * gtk/gtkadjustment.c: 
4466         * gtk/gtkctree.h: 
4467         * gtk/gtkclist.h: 
4468         * gtk/gtkctree.c: 
4469         * gtk/gtkclist.c:
4470         * gtk/gtkscrolledwindow.h:
4471         * gtk/gtkscrolledwindow.c:
4472         * gtk/gtkviewport.h:
4473         * gtk/gtkviewport.c:
4474         GtkType and macro fixups.
4475
4476 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
4477
4478         * gtk/gtkctree.h :
4479         * gtk/gtkctree.c :
4480         Added focus handling, horizontal and vertical autoscrolling,
4481         extended Selection Mode, key bindings
4482         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
4483         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
4484         Removed gtk_ctree_clear.
4485         
4486         * gtk/gtkclist.h :
4487         * gtk/gtkclist.c : 
4488         Added focus handling, horizontal and vertical autoscrolling,
4489         extended Selection Mode, key bindings
4490
4491 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
4492
4493         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
4494         source tree. For more information on GdkRgb, please see:
4495         http://www.levien.com/gdkrgb/
4496
4497         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
4498         bothers me slightly that the feature is in gdk, and this file is
4499         in gtk, but it's probably ok.
4500
4501         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
4502
4503         * gdk/gdkrgb.c:
4504         * gdk/gdkrgb.h: Added this module.
4505
4506         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
4507
4508         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
4509
4510 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
4511
4512         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
4513         to this function. it needs to relookup the signal multiple times.
4514         this fixes spurious segfaults that could show up with signal intensive
4515         code, when classes are created during a pending emission (which is
4516         normal case).
4517
4518 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
4519
4520         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
4521         child if it isn't a label.
4522
4523 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
4524
4525         * gtk/gtkdialog.h: 
4526         * gtk/gtkseparator.h: 
4527         * gtk/gtkhseparator.h: 
4528         * gtk/gtkvseparator.h: macro and GtkType fixups.
4529
4530 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
4531
4532         * gtk/testgtk.c (create_cursors): display the current cursor name.
4533
4534         * gtk/gtktypeutils.h: 
4535         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
4536         the fundamental type definition. the GtkArg union now only covers
4537         the required storage types for argument values. adapted the GTK_VALUE_*
4538         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
4539
4540         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
4541         code, fixed int/float collection. fixed a bug in the sanity checking
4542         code for GtkObjects.
4543
4544         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
4545         argument collection code.
4546
4547         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
4548         macros when distinguishing the return type.
4549
4550 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
4551
4552         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
4553           is not NULL before trying to g_list_remove the child. A patch
4554           from Michael Lausch.
4555
4556 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
4557
4558         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
4559         collection (always casted to doubles upon argument passing).
4560
4561 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
4562
4563         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
4564         object_init_func for derived objects with the object's ->klass field
4565         still pointing to the corresponding base class, otherwise overridden
4566         class functions could get called with partly-initialized objects.
4567         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
4568
4569 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
4570
4571         * gtk/gtkobject.h:
4572         * gtk/gtkobject.c:
4573         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
4574
4575         * gtk/gtkcontainer.h:
4576         * gtk/gtkcontainer.c:
4577         (gtk_container_child_arg_get_info): new function which wraps
4578         gtk_arg_get_info().
4579
4580 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
4581
4582         * gtk/gtkcontainer.c:
4583         (gtk_container_arg_get): 
4584         (gtk_container_arg_set): 
4585         * gtk/gtkobject.c:
4586         (gtk_object_arg_set): 
4587         (gtk_object_arg_get):
4588         strictly check for the associated get/set arg functions. if an
4589         arg is readable or writable, the associated class functions *must*
4590         be provided.
4591
4592 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
4593
4594         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
4595         padding into account if there is an accelerator.
4596
4597 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
4598
4599         * gtk/gtkcontainer.c:
4600         (gtk_container_add_with_args): collect the arguments with
4601         gtk_container_child_args_collect, not through gtk_object_args_collect.
4602         (gtk_container_child_set): likewise.
4603
4604 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
4605
4606         * gtk/gtktypeutils.h: 
4607         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
4608         which is derived from GTK_TYPE_STRING.
4609
4610         * gtk/gtkbindings.c: reworked the argument type handling.
4611
4612 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4613
4614         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
4615           so that it seems to allow normal operation in those modes,
4616           although you will only see black  (GIMP toolbar now pops up,
4617           just don't create a new image and GIMP now works in 4 bit.)
4618
4619 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4620
4621         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
4622           array, which was too low (?)
4623
4624 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
4625
4626         * gtk/gtkcontainer.h: 
4627         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
4628         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
4629         we now export a new function gtk_container_child_args_collect().
4630         for consistency with the object arguments, a few functions got renamed:
4631         gtk_container_child_arg_get -> gtk_container_child_get,
4632         gtk_container_child_arg_set -> gtk_container_child_set,
4633         gtk_container_child_arg_getv -> gtk_container_child_getv,
4634         gtk_container_child_arg_setv -> gtk_container_child_setv,
4635         gtk_container_add_with_argv -> gtk_container_addv.
4636         note, gtk_container_add_with_args() remained, because its equivalent
4637         would be gtk_container_add(,, ...) which would break all existing code.
4638         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
4639         we expect the `arg_name' argument to be a const static string now.
4640         (gtk_container_get_child_arg_type): function removed.
4641
4642 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
4643
4644         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
4645         this is a static inline function that collects command line arguments
4646         from a va_list. this file can just be included in all places that
4647         need this functionality.
4648
4649         * gtk/gtkarg.h: 
4650         * gtk/gtkarg.c: new files which implement most of the argument
4651         handling stuff from gtkobject.c. also collected a few more
4652         gtk_arg_* utility functions from else places.
4653
4654         * gtk/gtkobject.h: 
4655         * gtk/gtkobject.c: moved most of the argument handling code into
4656         gtkarg.c. we now export gtk_object_args_collect() as a non-public
4657         method with a blind va_list pointer.
4658         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
4659         const static string now.
4660         (gtk_object_get_arg_type): function got removed.
4661
4662         * gtk/gtkwidget.c: 
4663         (gtk_widget_set): 
4664         (gtk_widget_new): adaptions for gtk_object_args_collect().
4665
4666         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
4667         fundamental type name so as to have a valid prefix, e.g. "bool"->
4668         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
4669         though that should probably be something like GtkNone since the
4670         type itself is called GTK_TYPE_NONE.
4671         even the internal type names need to avoid name clashes and must live
4672         in their own namespace, several code portions rely on that.
4673         we should relly have typedefs such as typedef gchar* GtkString; so the
4674         fundamental type names can be used for code dumpers just like with all
4675         the Gtk/Gdk types.
4676
4677 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
4678
4679         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
4680         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
4681         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
4682         (GTK_RELIEF_HALF).
4683         (gtk_button_paint): set the background for prelighted buttons with
4684         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
4685         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
4686         the shadow type (otherwise we get strange shadows for coloured buttons).
4687         (gtk_button_set_relief): queue a redraw after changing
4688         the relief.
4689         (gtk_button_class_init): 
4690         (gtk_button_set_arg): 
4691         (gtk_button_get_arg): added object argument "GtkButton::relief".
4692
4693         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
4694
4695 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
4696
4697         * gtk/gtkbutton.h:
4698         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
4699         GTK_BIN (button)->child to button->child to keep source compatibility.
4700
4701         * gtk/gtkoptionmenu.c:
4702         * gtk/gtkclist.c:
4703         * gtkcheckbutton.c: don't refer to button->child, but
4704         GTK_BIN (button)->child instead.
4705
4706 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
4707
4708         * docs/gtkfaq.sgml: update anon CVS info
4709
4710 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
4711
4712         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
4713         functions.
4714
4715         * gdk/gdkwindow.c:
4716         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
4717         to XFree() calls.
4718
4719 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4720
4721         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
4722         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
4723
4724 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
4725
4726         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
4727
4728 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
4729
4730         * gtk/gtkwidget.h:
4731         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
4732
4733         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
4734         error that prevented signal to entry addition for signals with
4735         parameters.
4736
4737 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
4738
4739         * ltconfig: fix for properly detecting shared lib support on
4740         SunPro cc (taken from libtool 1.2.a)
4741
4742 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
4743
4744         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
4745
4746 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
4747
4748         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
4749         rc set pattern is favoured, this is needed for overriding of style
4750         patterns with subsequently parsed rc files.
4751
4752 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
4753
4754         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
4755         error messages.
4756
4757 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
4758
4759         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
4760         modifier as well.
4761         (gtk_accelerator_name): add "<Release>" to the accelerator name if
4762         neccessary.
4763
4764         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
4765         account.
4766
4767         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
4768         default handler for key-release events, which checks for activation
4769         of GDK_RELEASE_MASK key bindings.
4770
4771         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
4772
4773 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
4774
4775         * gtk/gtkarrow.h: GtkType and macro fixups.
4776         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
4777         "GtkArrow::shadow_type".
4778
4779 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
4780
4781         * gtk/gtkalignment.h:
4782         * gtk/gtkbin.h: GtkType and macro fixups.
4783         
4784         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
4785         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
4786         GtkAlignment::xscale, GtkAlignment::yscale.
4787
4788 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
4789
4790         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
4791         fucntions from all parent types upon class initialization.
4792
4793         * gtk/gtkcontainer.c:
4794         (gtk_container_get_type): announce gtk_container_base_class_init to
4795         the type system.
4796         (gtk_container_base_class_init): new function to feature base class
4797         initialization.
4798         (gtk_container_get_child_arg): 
4799         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
4800         and set_child_arg methods of the class indicated through the argument
4801         name.
4802
4803         * gtk/gtkobject.c:
4804         (gtk_object_base_class_init): new function to feature base class
4805         initialization.
4806         (gtk_object_init_type): announce gtk_object_base_class_init to the type
4807         system.
4808         (gtk_object_class_init): setup the get_arg and set_arg pointers for
4809         GtkObjectClass.
4810         (gtk_object_setv): 
4811         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
4812         instead of bothering the type system with this.
4813
4814         * gtk/gtkaccellabel.c: 
4815         * gtk/gtkbutton.c: 
4816         * gtk/gtkradiobutton.c: 
4817         * gtk/gtktable.c:
4818         * gtk/gtktogglebutton.c: 
4819         * gtk/gtktipsquery.c: 
4820         * gtk/gtkbox.c: 
4821         * gtk/gtkpacker.c: 
4822         * gtk/gtkwidget.c: 
4823         * gtk/gtkwindow.c: 
4824         * gtk/gtkframe.c: 
4825         * gtk/gtkmisc.c:
4826         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
4827         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
4828         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
4829         arg functions to take a GtkObject argument.
4830
4831         gtk/gtkadjustment.c:
4832         gtk/gtkalignment.c:
4833         gtk/gtkarrow.c:
4834         gtk/gtkaspectframe.c:
4835         gtk/gtkbbox.c:
4836         gtk/gtkbin.c:
4837         gtk/gtkcheckbutton.c:
4838         gtk/gtkcheckmenuitem.c:
4839         gtk/gtkclist.c:
4840         gtk/gtkcolorsel.c:
4841         gtk/gtkcombo.c:
4842         gtk/gtkctree.c:
4843         gtk/gtkcurve.c:
4844         gtk/gtkdata.c:
4845         gtk/gtkdialog.c:
4846         gtk/gtkdrawingarea.c:
4847         gtk/gtkeditable.c:
4848         gtk/gtkentry.c:
4849         gtk/gtkeventbox.c:
4850         gtk/gtkfilesel.c:
4851         gtk/gtkfixed.c:
4852         gtk/gtkfontsel.c:
4853         gtk/gtkgamma.c:
4854         gtk/gtkhandlebox.c:
4855         gtk/gtkhbbox.c:
4856         gtk/gtkhbox.c:
4857         gtk/gtkhpaned.c:
4858         gtk/gtkhruler.c:
4859         gtk/gtkhscale.c:
4860         gtk/gtkhscrollbar.c:
4861         gtk/gtkhseparator.c:
4862         gtk/gtkimage.c:
4863         gtk/gtkinputdialog.c:
4864         gtk/gtkitem.c:
4865         gtk/gtkitemfactory.c:
4866         gtk/gtklist.c:
4867         gtk/gtklistitem.c:
4868         gtk/gtkmenu.c:
4869         gtk/gtkmenubar.c:
4870         gtk/gtkmenuitem.c:
4871         gtk/gtkmenushell.c:
4872         gtk/gtknotebook.c:
4873         gtk/gtkoptionmenu.c:
4874         gtk/gtkpaned.c:
4875         gtk/gtkpixmap.c:
4876         gtk/gtkpreview.c:
4877         gtk/gtkprogressbar.c:
4878         gtk/gtkradiomenuitem.c:
4879         gtk/gtkrange.c:
4880         gtk/gtkruler.c:
4881         gtk/gtkscale.c:
4882         gtk/gtkscrollbar.c:
4883         gtk/gtkscrolledwindow.c:
4884         gtk/gtkseparator.c:
4885         gtk/gtkspinbutton.c:
4886         gtk/gtkstatusbar.c:
4887         gtk/gtktext.c:
4888         gtk/gtktoolbar.c:
4889         gtk/gtktooltips.c:
4890         gtk/gtktree.c:
4891         gtk/gtktreeitem.c:
4892         gtk/gtkvbbox.c:
4893         gtk/gtkvbox.c:
4894         gtk/gtkviewport.c:
4895         gtk/gtkvpaned.c:
4896         gtk/gtkvruler.c:
4897         gtk/gtkvscale.c:
4898         gtk/gtkvscrollbar.c:
4899         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
4900         match the modified GtkTypeInfo structure.
4901
4902 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
4903
4904         * gtk/testgtk.c: use rand() instead of random() for portability
4905
4906 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
4907
4908         * configure.in
4909         * acconfig.h
4910         * gdk/gdk.c: use native Xlib XConvertCase if it's available
4911
4912 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
4913
4914         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
4915         XConvertCase() functionality from X11R6 on X11R5 systems.
4916
4917 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
4918
4919         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
4920         gdk_string_height, gdk_char_height to retrieve the exact
4921         height of a text.
4922
4923 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
4924
4925         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
4926           by Stefan Mars <mars@lysator.liu.se>
4927         * examples/clist/clist.c examples/clist/Makefile: example code
4928           for GtkCList widget from the Tutorial
4929
4930 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
4931
4932         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
4933         if the container is not visible, we might be a toplevel! this holds
4934         for all other base container implementations as well, that are
4935         candidates to derive toplevels from. in general the resizing code will
4936         care about visibility itself.
4937         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
4938         * gtk/gtkbox.c (gtk_box_remove): likewise.
4939
4940         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
4941         gtk_window_set_hints(), since we haven't calculated the new position
4942         yet.
4943
4944         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
4945         *mask are alway initialized in a sane way, regardless of the return
4946         value.
4947
4948 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
4949
4950         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
4951         to gtk_container_child_arg_setv, but takes a variable argument list.
4952         new function gtk_container_get_child_arg_type, which is needed by
4953         gtk_object_collect_args.
4954
4955         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
4956         take a function pointer to figure the argument type.
4957         adapted callers to pass gtk_object_get_arg_type.
4958         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
4959         gtk_object_get_arg_type..
4960
4961         * gtk/gtkpacker.h: 
4962         * gtk/gtkpacker.c:
4963         (gtk_packer_reorder_child): new function to change the packing order
4964         of a child.
4965         (gtk_packer_size_request): 
4966         (gtk_packer_size_allocate): take container->border_width into acount.
4967
4968         * gtk/gtkpacker.c: implemented widget arguments:
4969         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
4970         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
4971         implemented child arguments:
4972         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
4973         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
4974         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
4975         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
4976
4977         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
4978         not the alignment.
4979
4980         * gtk/gtkeventbox.h:
4981         * gtk/gtkeventbox.c: GtkType and macro fixups.
4982
4983         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
4984         sensitivity of an entry.
4985
4986         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
4987         for insensitive base and text.
4988
4989         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
4990         widget state dependent.
4991         (gtk_entry_style_set): likewise.
4992         (gtk_entry_state_changed): set background color on state changes.
4993         (gtk_entry_draw_text): for non selected text, use state dependent
4994         colors.
4995
4996         * gtk/gtktogglebutton.c: support for widget arguments
4997         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
4998
4999 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
5000
5001         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
5002         code for 1.0.x-like parameters. Changed internal interface of
5003         gtk_spin_button_real_spin. Several fixes to avoid emission of
5004         "value_changed" where possible.
5005
5006 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
5007
5008         * gtk-boxed.defs: s/GkWidget/GtkWidget/
5009
5010 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
5011
5012         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
5013         to select the resize_mode for the idle-labels container.
5014
5015         * gtk/gtkframe.h: 
5016         * gtk/gtkframe.c: GtkType and macro corrections.
5017
5018         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
5019         support widget argument "GtkRadioButton::group".
5020
5021 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
5022
5023         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
5024         unconditionally if resize_mode has changed.
5025
5026         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
5027         GTK_RESIZE_QUEUE on the scrolled window.
5028         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
5029
5030 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
5031
5032         * gtk/gtkcontainer.h:
5033         * gtk/gtkcontainer.c:
5034         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
5035         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
5036         (gtk_container_queue_resize): new function to queue a container for
5037         a *size* reallocation (doesn't affect its position, and thus its
5038         parent is left untouched usually).
5039         (gtk_container_get_resize_container): new function to retrive the next
5040         most resize container which is not itself queued for a resize.
5041         (gtk_container_idle_sizer): new function to carefully process the
5042         container_resize_queue since it can change during invokation of
5043         gtk_container_check_resize().
5044         (gtk_container_resize_children): total rework of this function to
5045         properly handle resize containers. makes a lot of assumptions whitch
5046         are stated in the comments.
5047
5048         * gtk/gtkcontainer.c:
5049         (gtk_container_real_check_resize): only requeue ourselves if we are not
5050         a resize container.
5051         (gtk_container_clear_resize_widgets): care for automatic deletion of our
5052         resize_widgets list on size_allocate through a handler connection.
5053
5054         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
5055         focus and default widget of a window, so to take the burden from
5056         gtk_widget_unparent.
5057
5058         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
5059         to be clever, but actually messed up the resize_children logic and
5060         caused unneccessary allocations on its whole branch. besides this,
5061         it messed up the display by not invoking a redraw after the allocation.
5062
5063         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
5064         that it is the child again that is queued for a resize.
5065         (gtk_table_attach): likewise.
5066         (gtk_table_remove): likewise.
5067
5068 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
5069
5070         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
5071         gtk_entry_adjust_scroll.  Required if you change the cursor
5072         position and want to sync it up with your code (Midnight Commander
5073         gtk front end needs this).
5074
5075         * gtk/gtktable.c: Deal with tables that have size 0, 0.
5076
5077 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
5078
5079         * examples/README.1ST: new file to explain how the
5080           code examples should be extracted from the tutorial.
5081
5082 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
5083
5084         * gtk/gtkctree.c (draw_row): added new "line style"
5085         GTK_CTREE_LINES_TABBED 
5086         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
5087         search the glist pointer of an GtkCTreeRow
5088
5089 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
5090  
5091         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
5092         from, and clean up, the dependencies.  Generate to intermediate
5093         files to prevent problems with Ctrl-C.
5094
5095         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
5096
5097 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
5098
5099         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
5100         - Bug fix for precision problem causing occasional double emission 
5101           of "value_changed" signal (hopefully works now).
5102         - API change (should be binary compatible) : 
5103           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
5104           Modified cursor example appropriately.
5105           To spin by something other than step_/page_increment, use
5106           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
5107         - Made GTK_SHADOW_NONE the default. ;)
5108         - Fixed casting of GtkAdjustment* to GtkWidget* in
5109           gtk_spin_button_value_changed.
5110
5111 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
5112
5113         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
5114         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
5115         resize widget list before queuing the container for a new reize.
5116         (gtk_container_need_resize): changed return value to FALSE, since this
5117         used to indicate that no further resizes are needed.
5118         (gtk_container_set_arg): 
5119         (gtk_container_get_arg): 
5120         (gtk_container_class_init): implemented GtkContainer::resize_mode
5121         argument.
5122
5123         (gtk_container_resize_children): when we walk up the tree of a resize
5124         widget we need to stop if we are the current parent.
5125
5126         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
5127         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
5128         (gtk_widget_hide_all): retrive the toplevel widget from via
5129         gtk_widget_get_resize_container().
5130
5131 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
5132
5133         * gtk/gtklist.c (gtk_list_button_press): Only respond
5134           to selection with button 1. This allows context-sensitive
5135           menus to work correctly.
5136
5137 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
5138
5139         * gtk/gtkaccelgroup.c: 
5140         * gtk/gtkbindings.c: 
5141         * gtk/gtkcontainer.c:
5142         * gtk/gtkitemfactory.c:
5143         * gtk/gtkobject.c: 
5144         * gtk/gtksignal.c:
5145         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
5146         g_quark_from_static_string calls to save memory.
5147
5148         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
5149         function _after_ the new data has been setup.
5150         minor changes to object data functions to feature the GQuark type.
5151
5152 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
5153
5154         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
5155           from argv.
5156
5157 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
5158
5159         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
5160           to be more readable perl, to spit out stuff that looks
5161           more like readable C, and to pipe output through indent
5162           so output looks a lot like readable C. No functional
5163           changes.
5164
5165 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
5166
5167         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
5168           necessary when switching to a masked pixmap. (Based on a patch
5169           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
5170
5171 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
5172
5173         * gtk/gtkeditable.[ch]: Added action signals for keyboard
5174           bindings. (move_cursor, kill_word, etc, etc, etc). 
5175
5176           removed the time argument from
5177           gtk_editable_cut/copy/paste_clipboard (source but not
5178           binary incompatible...) Instead get time from
5179           gtk_get_current_event ().
5180         
5181         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
5182           signals.
5183
5184 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
5185
5186         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
5187
5188         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
5189              parent class to GtkNotebookClass when splitting the widget in
5190              two.  Also updated some comments.
5191
5192         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
5193                button without a font selected.
5194
5195              Fixed bug in set_font_name - I hadn't updated the code to
5196                search for the style in the font_style clist - it was
5197                still assuming the style row was equal to its index,
5198                but it isn't any more.
5199         
5200              Changed 'Reset' button on filter page to 'Clear Filter'.
5201              Deleted old code relating to the old 'Filter Fonts' toggle
5202              Updated some comments.
5203              Cleared 'Actual Fontname' if no font is set.
5204
5205         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
5206              destroying the GtkFontSelection instead of the
5207              GtkFontSelectionDialog.
5208
5209 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
5210
5211         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
5212           flag to make all warnings fatal errors.
5213
5214         * gtk/testthreads.c: moved <pthreads.h> include inside 
5215           #ifdef USE_PTHREADS
5216
5217 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
5218
5219         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
5220           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
5221
5222         - Added new function gtk_container_set_resize_mode() for
5223           fine-grained control of where resize-queueing is done.
5224
5225         - Removed GtkContainer::need_resize and GtkWindow::move_resize
5226         - Added GtkContainer::check_resize to replace need_resize.
5227
5228         - Added function gtk_container_check_resize() to trigger
5229           queued resizes, and gtk_container_resize_children() to
5230           Figure which children need to be size-allocated. (logic
5231           moved from gtkwindow.c)
5232
5233         - Reorganized code in gtkwindow.c
5234         
5235         - Set the resize-mode for viewports so that resizes within
5236           a viewport don't propagate out of it. 
5237         
5238 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5239
5240         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
5241
5242         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
5243         g_return_val_if_fail, because the function *does* return a value.
5244
5245 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
5246
5247         * gtk/gtkaccellabel.h:
5248         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
5249         request the size of the accelerator portion of an accel label.
5250         (gtk_accel_label_size_request): don't request for the accelerators size.
5251         (gtk_accel_label_expose_event): only draw the accelerator if we got
5252         enough extra space.
5253
5254         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
5255         width from children.
5256
5257         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
5258         object (after removal has been requested) check if there is still an
5259         accelerator remaining to avoid adding two accelerators on an object.
5260         this can happen for locked accelerators (or accelerator-frozen widgets).
5261         (gtk_menu_size_request): feature childrens accelerator width in size
5262         requests.
5263
5264         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
5265         gtk_widget_freeze_accelerators() for dynamically created menu items.
5266
5267         * gtk/gtksignal.h: 
5268         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
5269         which will return a handler_id > 0 if the specified function is pending
5270         for `signal_id'.
5271
5272         * gtk/gtkwidget.h:
5273         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
5274         a signal handler function to stop accelerator addition.
5275         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
5276         which will prevent (undo) any accelerators from being added to or
5277         removed from a widget.
5278
5279 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
5280
5281         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
5282         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
5283         acceleration, new API gtk_spin_button_set_snap_to_ticks.
5284
5285 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
5286
5287         * gdk/gdk.h:
5288         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
5289         the current GdkWindow the pointer is on if there is any.
5290         
5291         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
5292         and one column, so we don't construction logic at all. changed a few
5293         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
5294         unsigned int wraps.
5295
5296         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
5297         portion, added an additional check for parent != widget.
5298
5299         * more GtkType and macro fixups.
5300
5301 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5302
5303         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
5304         "clip" parameter, which is the clipping rectangle to use.  This
5305         eliminates the extremely annoying flicker when exposing parts of
5306         the handlebox.
5307
5308 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
5309
5310         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
5311         resizing
5312
5313 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
5314
5315         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
5316         != 0 on the argument.
5317
5318         * gtk/gtktable.h: 
5319         * gtk/gtktable.c: new function gtk_table_resize() which allowes
5320         shrinking and expanding of tables. implementation of widget arguments
5321         and child arguments. many signedness corrections.
5322
5323 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
5324
5325         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
5326         not only the child, otherwise we might end up taking away other
5327         childrens space after the resize.
5328
5329         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
5330         an unknown menu path from any source, that path must always be flagged
5331         as "modified", since we don't really know whether it has its default
5332         value or not.
5333
5334         * gtk/gtktree.c:
5335         * gtk/gtkpacker.c:
5336         * gtk/gtknotebook.c:
5337         * gtk/gtkmenushell.c:
5338         * gtk/gtklist.c:
5339         * gtk/gtkpaned.c:
5340         * gtk/gtkfixed.c: 
5341         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
5342
5343         * gtk/gtkbox.h: 
5344         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
5345         arguments. implemented child arguments.
5346
5347         * more GtkType and macro fixups.
5348
5349 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
5350
5351         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
5352
5353         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
5354         and gtk_clist_get_hadjustment.
5355
5356         * gtk/gtkcontainer.c:
5357         implementation of children arguments, new class member functions
5358         (child_type), (get_child_arg) and (set_child_arg) plus a new field
5359         n_child_args.
5360         (gtk_container_child_type): new function which returns the type of a
5361         child that the container expects for its next addition.
5362         (gtk_container_add_child_arg_type): new function to introduce a new
5363         child argument at class creation time.
5364         (gtk_container_query_child_args): new function to query all child
5365         arguments that are supported by a container class.
5366         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
5367         child argument.
5368         (gtk_container_child_arg_setv): new function to set a child argument for
5369         a certain container and child combination.
5370         (gtk_container_add_with_args):
5371         (gtk_container_add_with_argv): new functions to feature addition of a
5372         new child in combination with the setting of certain child arguments.
5373
5374         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
5375         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
5376         this should really be done through class cretion hooks some day.
5377
5378         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
5379         guint : 16.
5380
5381         * gtk/gtkpacker.h:
5382         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
5383         follow the gtk convention for lower case variable names (important
5384         for language wrappers and widget arguments), and made them guint : 16.
5385
5386         * examples/packer/pack.c: adaptions for the case converted GtkPacker
5387         fields.
5388
5389 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
5390
5391         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
5392         change the character pair for single line comments.
5393         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
5394         GtkItemFactoryClass.
5395         (gtk_item_factory_parse_rc_string): likewise.
5396
5397 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
5398
5399         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
5400         lists from the klass structure to a static structure
5401         in gtkfontsel.c; cleans up global the namespace.
5402
5403 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
5404
5405         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
5406         bug with /*< skip >*/ and remove warning.
5407         
5408 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
5409
5410         * gtk/Makefile.am: Made the gtkmarshal.* generation
5411         rules maintainer-only.
5412
5413 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
5414
5415         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
5416           gtk/Makefile.am gtk/makenums.pl 
5417
5418         Removed out the G_ENUM/FLAGS mechanism in favor
5419         of a perl script that parses the standard headers
5420         (with occasional /*< nick=foo >*/ style overrides)
5421         and extracts the enumerations.
5422
5423           gtk/maketypes.awk: Small improvments to the
5424           translation of names. (Avoid splitting gc into
5425           g_c_.)
5426         
5427 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
5428
5429         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
5430         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
5431         
5432 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
5433
5434         * gtk/gtkentry.c:
5435         - Restored gtk_entry_adjust_scroll to static 
5436         - Changed text positioning code so that we always
5437           display as large a portion of the text as possible.
5438
5439 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
5440
5441         * gtk/gtktext.c (gtk_text_finalize): Free internal
5442         structures of text widget. Also, unreference pixmaps
5443         when unrealizing.
5444         
5445 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
5446
5447         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
5448         3.3.1 bug workaround to number keys starting at 1.
5449
5450 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
5451
5452         * docs/gtk_tut.sgml: Fixed urls for complete example
5453         source for scribble+widget-writing examples.
5454
5455 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
5456
5457         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
5458         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
5459         specs of the form c #abcdef [ more keys ] properly.
5460
5461 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
5462
5463         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
5464         (gtk_spin_button_set_shadow_type):
5465         New API to set the shadow type of the arrow panel.
5466
5467 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
5468
5469         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
5470         code for drawing the child in two places at once. Unfortunately,
5471         not only does it not work anymore (because reparenting has
5472         been fixed), but it also triggers reparent/expose loops
5473         in some cases.
5474
5475         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
5476         an unecessary unrealize.
5477
5478 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
5479
5480         * gdk/gdkwindow.c (gdk_window_reparent): Update the
5481           old and new parents' child window lists properly.
5482
5483 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
5484
5485         * gtk/gtkpacker.h:
5486         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
5487         and GtkSideType, to be consistent with the rest of Gtk's enum
5488         definitions. wrapped the enum definitions with the G_ eunm wrappers.
5489         spelled out the GTK_ANCHOR_* enum values, since single letters don't
5490         work out corectly as nick-names (left the old values as aliases).
5491         some signdness corrections (border-width, spacing), could stand more.
5492
5493 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5494
5495         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
5496           Added gtkpacker
5497
5498         * examples/packer/pack.c, examples/packer/Makefile: Added
5499           gtkpacker example
5500
5501 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
5502
5503         * gtk/gtktext.c (remove_cache_line): Fixed broken
5504         list-removal code.
5505
5506         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
5507         Check bounds before deleting.
5508
5509 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
5510
5511         * autogen.sh: Support ACLOCAL_FLAGS
5512
5513 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
5514
5515         * gtk-config.in: Added missing quotes.
5516
5517 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
5518
5519         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
5520
5521 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
5522
5523         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
5524         G_COMPILED_WITH_DEBUGGING.
5525
5526         * configure.in (fd_set): Explain check better.
5527
5528         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
5529         the version from which gtk+'s libtool forked.  Needed for people
5530         who use post-1.2 alphas of libtool.
5531
5532 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
5533
5534         * glib/* Moved to glib module
5535
5536         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
5537           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
5538
5539           configuration changes for the above:
5540          
5541           - Use AM_PATH_GLIB by default to find glib; also accept
5542             a --with-glib option for using an uninstalled glib.
5543          
5544           - Put --enable-debug information into config.h so
5545             that we rebuild when it changes. (was in glibconfig.h)
5546
5547 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
5548
5549         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
5550
5551         * gtk/gtknotebook.h (struct _GtkNotebookClass):
5552         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
5553         added missing argument (according to Joseph Coleman's bug report)
5554
5555         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
5556         function to fix notebook focus handling
5557         
5558 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
5559
5560         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
5561           glib/gutils.c glib/testglib.c glib/gdataset.c
5562           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
5563           gtk/gtktext.c gtk/gtkbindings.c:
5564
5565          renamed g_const_pointer => gconstpointer
5566
5567 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
5568
5569         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
5570         invoked with (NULL, NULL); (this worked sometime ago).
5571
5572         * gtk/gtktypeutils.h: 
5573         * gtk/gtktypeutils.c: enum and flags type creation can now be done
5574         through gtk_type_register_enum() and gtk_type_register_flags(),
5575         which allow to specify the enum value arrays directly.
5576         the NULL terminated value arrays can be retrived through
5577         gtk_type_enum_get_values() and gtk_type_flags_get_values();
5578         (gtk_type_children_types): new function to query derived types.
5579
5580 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
5581
5582         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
5583         environment to genmarshal.pl.
5584         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
5585         rule), and removed it where not needed (in the dependencies).
5586
5587         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
5588
5589 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
5590
5591         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
5592         was just g_direct_hash.
5593
5594 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
5595
5596         * configure.in: x_libs=, not $x_libs=. Enough said.
5597           (Case only hit for --disable-xshm)
5598         
5599 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
5600
5601         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
5602           when testing for X libraries, don't replace them. Because
5603           the user might have specified the path to the X libraries
5604           themself before running configure.
5605
5606         * examples/**.c: Changed all gpointer * to gpointer
5607         
5608 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5609
5610         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
5611         fleur_cursor field.  Now the cursor is created/destroyed on demand
5612         by the routines that need it.
5613
5614         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
5615         (gtk_handle_box_motion): The fleur cursor is created and destroyed
5616         only when needed.
5617
5618 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
5619
5620         * gtk/gtktypeutils.h: 
5621         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
5622         gtk_enum_set_values to gtk_type_enum_get_values and
5623         gtk_type_enum_set_values respectively, since they are actually type
5624         system features.
5625
5626         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
5627         my last commit. ;)
5628
5629 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
5630
5631         * gtk/gtkselection.h: 
5632         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
5633         gtk_selection_data_free.
5634
5635         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
5636         for "selection_received", which was completely bogus.
5637         * other fixups to gtk_signal_new() calls all over the place.
5638
5639         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
5640         * gtk/gtktypebuiltins_vars.c: type variable implementations.
5641         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
5642         declarations.
5643         * gtk/gtktypebuiltins_evals.c: enum value arrays.
5644         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
5645         gtk.defs.
5646         * gtk/gtk.defs: generated file with scheme syntax for type definitions
5647         of gtk and gdk structures and enums.
5648         * gtk/gtktypeutils.h: 
5649         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
5650         macros anymore (this fixes binary incompatibility with new enum
5651         definitions).
5652
5653         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
5654         key bindings for this widget.
5655         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
5656         handler.
5657
5658         * gtk/gtkobject.h:
5659         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
5660         again. new functions gtk_object_class_user_signal_new () and
5661         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
5662         flag on the signal creation.
5663
5664 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
5665
5666         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
5667
5668 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
5669
5670         * gdk/gdkprivate.h: 
5671         * gdk/gdktypes.h: 
5672         * gtk/gtkprivate.h: 
5673         * gtk/gtkwidget.h: 
5674         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
5675
5676         * reworked enum value array generation code. gtk.defs is a generated
5677         file now.
5678
5679 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
5680
5681         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
5682         check menu items in the compatibility code (this required me to remove
5683         the "<check>" part from the menu item name, grrr).
5684
5685 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
5686
5687         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
5688         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
5689         
5690 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
5691
5692         * gtk/gtkitemfactory.h: 
5693         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
5694         additions to the dumping code to feature GtkPatternSpec.
5695         even found a bug to fix in the original code ;)
5696         
5697 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
5698
5699         * gtk/gtkitemfactory.c: support different types of callbacks, to
5700         maintain existing code.
5701
5702 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
5703
5704         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
5705
5706         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
5707         this should eventually be done by gentypeinfo.el somewhen.
5708         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
5709
5710         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
5711         enum values of an enum type.
5712
5713         * gtk/gtk.defs:
5714         * gtk/gtkcurve.h: 
5715         * gtk/gtkobject.h: 
5716         * gtk/gtkprivate.h: 
5717         * gtk/gtkwidget.h:
5718         * gtk/gtkenums.h: 
5719         brought enum/flags definitions in sync, added a few more enum
5720         definitions for bindings and pattern matching.
5721
5722         * some more macro and GtkType fixups in various places.
5723
5724         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
5725         as a key-release modifier for the binding system.
5726
5727 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
5728
5729         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
5730         was a stale list pointer that is already present in GtkMenuShell.
5731
5732         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
5733         GtkMenuShell::selection_done which is emitted after the menu shell
5734         poped down again and all possible menu items have been activated.
5735
5736 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
5737
5738         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
5739         before activation of the menuitem, so the menu is actually taken off the
5740         screen prior to any menu item activation.
5741
5742         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
5743         for NULL nodes.
5744
5745         * gtk/gtkwidget.h:
5746         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
5747         the emission of the "add-accelerator" signal on a widget. this is
5748         usefull to prevent accelerator installation on certain widgets.
5749
5750         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
5751         labels left justified, by setting their alignment. stop accelerator
5752         installation for the menu items, since we use dynamic menus.
5753
5754 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
5755
5756         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
5757         should *really* use GtkItemFactory. this is only for preserving source
5758         compatibility where possible, use of GtkMenuFactory is deprecated as of
5759         now.
5760
5761         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
5762         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
5763         missed this possibility when i added gtk_object_class_add_user_signal
5764         in late january.
5765
5766         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
5767
5768 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
5769
5770         * gtk/gtkaccelgroup.h: 
5771         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
5772
5773         * gtk/gtkaccellabel.h: 
5774         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
5775         display of the accelerators associated with a certain widget.
5776
5777         * gtk/gtkitemfactory.h: 
5778         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
5779         parsing and accelerator handling.
5780
5781         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
5782         positioning a menu.
5783         (gtk_menu_map): removed the allocation code.
5784         (gtk_menu_size_allocate): care for redrawing of children and resize
5785         our widget->window correctly.
5786         (gtk_menu_key_press): feature the new accelerator groups.
5787
5788         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
5789         submenu if neccessary.
5790
5791         * gtk/gtkmenuitem.c:
5792         * gtk/gtkcheckmenuitem.c:
5793         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
5794         function variants.
5795
5796         * gdk/gdk.c:
5797         (gdk_keyval_from_name): 
5798         (gdk_keyval_name): new functions for keyval<->key-name associations.
5799         (gdk_keyval_to_upper): 
5800         (gdk_keyval_to_lower): 
5801         (gdk_keyval_is_upper): 
5802         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
5803         regards to their cases.
5804
5805 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
5806
5807         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
5808         widget's class path.
5809         (gtk_widget_path): new function to calculate a widget's name path.
5810
5811         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
5812         pattern matching, features reversed pattern matches.
5813
5814 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
5815
5816         * examples/extract.sh, examples/extract.awk:
5817           New files to automagically extract code examples from the
5818           tutorial.
5819
5820 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
5821
5822         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
5823         * gtk/gtkcontainer.c (gtk_container_focus_move):
5824         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
5825
5826 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
5827
5828         * docs/gtk_tut.sgml: minor changes to support auto
5829           extraction of example code
5830
5831 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
5832
5833         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
5834           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
5835
5836 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
5837
5838         * docs/gtk_tut.sgml:
5839           - new section on Events
5840           - change all delete_event callbacks to include
5841             a GdkEvent parameter
5842           - clean up the formatting
5843
5844         * examples - helloworld.c, helloworld2.c, notebook.c,
5845           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
5846           rulers.c, table.c, wheelbarrow.c: change all delete_event
5847            callbacks to include a GdkEvent parameter.
5848
5849 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5850
5851         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
5852         field of crossing events.
5853         (struct _GdkEventCrossing): Added the following fields: time, x,
5854         y, x_root, y_root, mode, focus, state.
5855
5856         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
5857         crossing event structure.
5858
5859         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
5860         changes to the crossing event structure.
5861
5862 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
5863
5864         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
5865
5866 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
5867
5868         * docs/gtk_tut.sgml:
5869            - GtkTooltips, update to current API
5870            - change all 'gpointer *data' to 'gpointer data'
5871            - other minor changes
5872
5873 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
5874
5875         * configure.in (LDFLAGS): Bomb out with a moderately
5876           helpful message if detection of X libraries fails.
5877
5878 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
5879
5880   [ Combination of:
5881      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
5882      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
5883
5884         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
5885           gtk/gtksignal.c gtk/gtktext.c: 
5886
5887           Fixups for warnings from adding const to type of GHashFunc,
5888           GCompareFunc
5889         
5890         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
5891           ansi-warnings fixups.
5892
5893 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
5894
5895         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
5896         Locate child at (border_width,border_width), not
5897         (2*border_width,2*border_width). [ The border is _outside_
5898         widget->window ]
5899         
5900         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
5901           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
5902
5903 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
5904
5905         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
5906         used in gnome-libs
5907
5908 1998-05-22    <sopwith@redhat.com>
5909
5910         * gtk/gtkeventbox.c: Pass size_allocate on to the child
5911         regardless of whether it is visible or not. Also
5912         locate child at (border_width,border_width), not (0,0)
5913
5914 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
5915
5916         * gtk/gtkhandlebox.c: Added style_set handler.
5917
5918 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
5919  [ From: Chris Lahey  <clahey@umich.edu> ]
5920         
5921         * gtk/gtkeditable.c, gtk/gtkeditable.h,
5922           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
5923           and set_position functions to get and set the cursor position.
5924
5925         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
5926           signal status. Make GtkText do user-controlled insertion
5927           and deletion through the Editable widget so that these
5928           signals are properly emitted.
5929
5930         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
5931           display asterisks instead of empty space when visible = FALSE)
5932
5933 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
5934
5935         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
5936         signal.
5937
5938 1998-05-21    <sopwith@redhat.com>
5939
5940         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
5941         custom routine for loading images specified in gtkrc's.
5942
5943 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
5944
5945         * configure.in: Use pthread_attr_init() as a test function,
5946         since most of the rest of -lpthread is macros on DU4.
5947
5948 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
5949
5950         * gtk/gtkcombo.c: implemented completion in the entry.
5951
5952 1998-05-18    <sopwith@moebuis.labs.redhat.com>
5953
5954         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
5955
5956 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
5957
5958         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
5959         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
5960         to be of runtype GTK_RUN_LAST.
5961
5962         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
5963         "need-resize".
5964
5965         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
5966         "widget-selected".
5967
5968 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
5969
5970         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
5971         text retrived from GtkEntry. only intercept the Tab key if there
5972         was some text to complete.
5973
5974 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
5975
5976         Basic thread-awareness:
5977
5978         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
5979
5980         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
5981         gdk_threads_[init/enter/leave] for applications, plus
5982         gdk_threads_wake to wake the mainloop thread out of
5983         the select().
5984
5985         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
5986
5987 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
5988
5989         * gtk/testgtk.c (list_clear): Account for the fact
5990         that gtk_list_clear_items is not inclusive. (Clears
5991         [start, end))
5992
5993 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
5994
5995         * gdk/gdk.c: include gdkkeysyms.h always
5996         
5997
5998 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
5999
6000         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
6001         the visibility_notify_event method and changed method order.
6002
6003 1998-05-14    <sopwith@moebuis.labs.redhat.com>
6004
6005         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
6006
6007 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
6008
6009         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
6010         from Olli Helenius <ollhel@batman.jytol.fi>.
6011
6012         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
6013         freeing types.
6014         (gtk_type_set_chunk_alloc): new function to allow allocation of new
6015         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
6016         thorugh g_malloc).
6017
6018         * gtk/gtkobject.c (gtk_object_finalize): free an object through
6019         gtk_type_free().
6020
6021         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
6022         GtkButtons to 16.
6023         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
6024         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
6025
6026 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
6027
6028         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
6029           GPOINTER_TO_UINT fixes.
6030
6031         * gtk/gtksignal.c: Include <string.h> for memset.
6032
6033 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
6034         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
6035
6036         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
6037         Cleanups, comments and the ability to have rulers with 
6038         a reversed direction.
6039
6040 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
6041
6042         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
6043         that Sopwith missed when changing stat => lstat.
6044
6045 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
6046
6047         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
6048           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
6049         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
6050
6051         * gdk/gdk.c: Print sizeof() results
6052         as g_print("%ld", (glong)sizeof(foo)), to deal with
6053         sizeof() being long on Alpha's.
6054
6055         * gtk/testgtk.c: include <string.h> for strlen
6056
6057 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
6058         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
6059         
6060         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
6061         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
6062
6063         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
6064
6065 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
6066         (From: Christopher James Lahey <clahey@umich.edu>)
6067         
6068         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
6069           gtk/testgtk.c:
6070
6071         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
6072         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
6073         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
6074         the default relief for the toolbars buttons. Added an
6075         toggle for the toolbar test in testgtk.c.
6076
6077 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
6078
6079         * docs/gtk-config.1: Rewritten and hopefully improved.
6080
6081 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
6082
6083         * docs/Makefile.am
6084         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
6085
6086 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6087
6088         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
6089         GtkPreview's visual and colormap, otherwise things can BadMatch.
6090
6091         * gtk/testgtk.c (create_color_preview): 
6092         (create_gray_preview): Removed pushing/popping of visual/colormap
6093         now that GtkPreview does things correctly.
6094
6095         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
6096         (gtk_color_selection_draw_wheel): Pick the style from the correct
6097         place (the colorsel->wheel_area widget) so that the GCs will match
6098         with where we are going to paint to.
6099
6100         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
6101         of visual/colormap now that GtkColorSelection does things the
6102         right way.
6103
6104 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
6105
6106         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
6107         previously unused window->need_resize flag to mark if a window's
6108         descendents changed size while the window was not visible. In this
6109         case, when the window becomes visible, we reallocate everything,
6110         since we didn't keep track of what actually changed.
6111
6112         (Fixes bug where changing the popdown strings of a
6113         combo to something of the same length caused them to
6114         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
6115
6116 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
6117
6118         [security audit by Alan Cox]
6119
6120         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
6121         exceed maximum assumed size.
6122
6123         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
6124         not exceed maximum assumed size.
6125         (gtk_menu_factory_remove): likewise.
6126         (gtk_menu_factory_find_recurse): likewise.
6127
6128 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
6129
6130         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
6131         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
6132         redrawn if that is still neccessary. don't allow queueing of already
6133         destructed objects.
6134         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
6135         widgets which are in the queue can be destroyed safely, handle
6136         requeueing properly.
6137         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
6138         widgets which are in the queue can be destroyed/unrealized safely.
6139
6140 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
6141
6142         * gtkfaq.sgml: add question on multi-threading,
6143           minor URL cleanups.
6144
6145 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
6146
6147         * configure.in (cflags_set): preserve automake CFLAGS.
6148
6149         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
6150         and libgdk-1.1.la. this means we need to change certain portions of
6151         the Makefile.am on major/minor version bumps.
6152
6153         * ltmain.sh: the -release option is not required anymore.
6154         
6155         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
6156         of the first argument to be of type GtkObject. unconditionally compile
6157         this function. removed __GNUC__ dependancy of the gtk_object_ref and
6158         gtk_object_unref macro wrappers for this function.
6159
6160 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
6161
6162         * gtk/gtkobject.h:
6163         * gtk/gtkobject.c:
6164         (gtk_object_data_try_key):
6165         (gtk_object_data_force_id): these are now macros substituting the old
6166         functions. we just use the corresponding g_dataset_* functions for
6167         key->id associations. (this is to assure unique key<->id associations).
6168
6169 1998-05-10  Stefan Jeske  <stefan@gtk.org>
6170
6171         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
6172         to gboolean.
6173
6174         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
6175
6176 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
6177
6178         * configure.in (LIBS): Try to figure out if this
6179         is Digital Unix and we need -std1 to get the
6180         right prototypes.
6181
6182 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
6183
6184         * docs/gtk_tut_it.sgml: update of Italian tutorial
6185           translation from Daniele Canazza <dcanazz@tin.it>
6186
6187 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
6188
6189         * gtk/gtkfeatures.h.in: new file used as template for
6190         * gtk/gtkfeatures.h: new file to define macros indicating newly
6191         introduced features, such as GTK_HAVE_SIGNAL_INIT.
6192
6193         * gtk/gtksignal.c:
6194         (gtk_signal_emitv_by_name):
6195         (gtk_signal_emitv):
6196         new functions to emit signals with an already provided parameter set.
6197         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
6198         (gtk_signal_real_emit): prototype changes, so this functions always
6199         gets its parameters and signal structure as arguments.
6200         (gtk_signal_emit): provide the signal structure and parameter list for
6201         gtk_signal_real_emit.
6202         (gtk_signal_emit_by_name): likewise.
6203
6204 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
6205
6206         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
6207         signal connections through unsetting GTK_CONNECTED.
6208         (gtk_signal_handler_insert): reflect the presence of signal connections
6209         through setting GTK_CONNECTED.
6210         (gtk_signal_real_emit): only check for handler emissions if the object
6211         has the GTK_CONNECTED flag set.
6212         (gtk_signal_handler_pending): don't check for pending handlers if the
6213         GTK_CONNECTED flag is not set for this object.
6214
6215         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
6216         a GtkObject has signal handler connections.
6217
6218         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
6219         set for this object call gtk_signal_handlers_destroy().
6220         
6221         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
6222         multiple processing of macro args.
6223
6224         * gtk/gtktypeutils.c:
6225         * gtk/gtkobject.c:
6226         * gtk/gtkwidget.c:
6227         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
6228
6229 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
6230
6231         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
6232         draw-queue when we are done. 
6233
6234         (gtk_widget_queue_draw/_queu_resize): Always return
6235         FALSE and avoid having two idles at the same time.
6236         
6237 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
6238
6239         * gtk/gtktext.c: Various fixes to make sure cache
6240         lines are freed if line_start_cache doesn't point to the
6241         beginning of the cache.
6242
6243 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
6244
6245         * style_set improvements for GtkText and GtkEntry
6246
6247 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
6248
6249         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
6250         been initialized.
6251
6252 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
6253
6254         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
6255         data chunks through a global object data structure list. unlink
6256         object data before invoking its destroy function.
6257         (gtk_object_finalize): slight modification to allow usage of object
6258         data during object finalization.
6259
6260 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
6261
6262         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
6263         signal names, e.g. "signal-name" is now an alias for "signal_name".
6264         (gtk_signal_handler_new): allocate handlers through a global handler
6265         structure list, that's faster than memchunks.
6266         (gtk_emission_new): allocate emissions through a global emission
6267         structure list, that's faster than memchunks.
6268
6269 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
6270
6271         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
6272
6273         * ltmain.sh: added a new commandline flag -postfix similar to -release,
6274         but will immediately change the library name.
6275
6276         * gdk/Makefile.am:
6277         * gtk/Makefile.am: specify -postfix and -version-info
6278
6279         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
6280         GTK_BINARY_AGE. calculate LT_* variables for libtool.
6281
6282 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6283
6284         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
6285         background (fg_set -> bg_set confusion).
6286
6287 1998-05-06  Stefan Jeske  <stefan@gtk.org>
6288
6289         * gtk/testgtk.c (unselect_all): Removed code that caused an
6290         endless loop.
6291
6292 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
6293
6294         * gtk/gtksignal.c: reimplemented the signal storage system to use a
6295         linear array rather than a hash table.
6296         be carefull *not* to keep any GtkSignal pointers across invokations
6297         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
6298         general code cleanups, made all allocations through memchunks.
6299         (gtk_signal_lookup): we now do the lookup of signals through a key_id
6300         for the signal names to avoid multiple hashing of the signal name on
6301         lookups for the several hirarchy levels of an object.
6302
6303 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
6304
6305         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
6306         to speed things up and remove code duplication.
6307
6308         Reintegrated buffer overflow patches, and added
6309         some extra paranoia.
6310         
6311 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
6312
6313         * gdk/gdk.c (gdk_event_translate): A guint * was
6314         being passed where X expected a Keysym *, and
6315         keysyms are long's on Alpha Linux. This was causing
6316         segfaults in Xlib, apparently because of alignment.
6317         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
6318         
6319 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
6320
6321         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
6322         set GDK_EXPOSURE_MASK for DrawingAreas
6323
6324 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
6325
6326         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
6327         (superceded by RC file reparsing capabilities)
6328
6329         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
6330         events. (Shouldn't be sent to the InputOnly leader, which
6331         it is now by gdk_event_send_clientmessage_toall
6332
6333         * gtk/testgtk.c: Added extra button to rcfiles test
6334         to send out _GDK_READ_RCFILES events.
6335         
6336 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
6337
6338         * gtk/gtkselection.c (gtk_selection_clear): Fixed
6339         reversed conditionals that caused segfault on some
6340         platforms.
6341
6342 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
6343
6344         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
6345         cast to GTK_OBJECT for gtk_object_ref.
6346
6347 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
6348
6349         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
6350         checking for signal initialization in gtksignal.c.
6351
6352         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
6353         a long debugging period ;)
6354
6355 1998-05-05  Stefan Jeske  <stefan@gtk.org>
6356
6357         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
6358         New function to wrap XSetDashes; modified gtkctree.c to use it.
6359
6360 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6361
6362         * configure.in: Added $x_libs in the other_libraries field in the
6363         check for XShapeCombineMask.
6364
6365 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
6366
6367         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
6368         gtk_type_is_a().
6369         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
6370         linear array rather than a hash table. it actually speeded up testgtk
6371         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
6372         pointers across invokations of gtk_type_node_next_and_invalidate() and
6373         therefore gtk_type_unique()!
6374
6375         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
6376         inheritance of a class pointer.
6377         (GTK_OBJECT): modifications for speedups.
6378         (GTK_IS_OBJECT): likewise.
6379         (GTK_OBJECT_CLASS): likewise.
6380         (suggested by owen).
6381
6382         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
6383
6384         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
6385
6386         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
6387         since its derivation changed 4 month ago ;(. showed up with the unique
6388         type name checking code in gtk_type_unique().
6389
6390         * random guint->GtkType and macro fixups.
6391
6392 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
6393
6394         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
6395         Configure events that would result in a negative
6396         size.
6397
6398 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
6399
6400         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
6401         "glibconfig.h" and another about writing another IRC
6402         client.
6403
6404 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
6405
6406         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
6407         parameters to log are doubles. Digital Unix apparently
6408         is missing the argument in its prototype.
6409
6410 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
6411
6412         * gtk/gtklabel.c (gtk_label_state_changed): Don't
6413         force a clear until the widget is actually on
6414         screen.
6415
6416 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
6417
6418         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
6419         to make this consistent with the gtk-1-0 tree.
6420
6421 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
6422
6423         * configure.in acheader.h gdk/gdkwindow.c 
6424         Check for Shape extension both on the client and server
6425         side. (And, more importantly, check for the shape extension
6426         so we may include -lXext even when compiling with --disable-xshm)
6427
6428         Don't set override_redirect on all shaped windows. It isn't
6429         necessary.
6430
6431         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
6432         and foreign windows. Use this to check if we
6433         need to get the colormap from X.
6434
6435 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
6436
6437         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
6438         between the default and the button always in GTK_STATE_NORMAL.
6439
6440         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
6441         callback.
6442
6443 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
6444
6445         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
6446           Fix a buffer overflow on pixmaps that claim to have
6447           more than 31 characters per pixel.
6448
6449           (gdk_pixmap_read_string): Don't wrap around strings longer
6450           than half of address space ;-)
6451
6452         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
6453         that were used for printing integers.
6454
6455         * */* (almost):
6456
6457         Style: All 
6458           int foo () { ... }
6459         changed to
6460           int foo (void) { ... }
6461
6462         Even where there were proper prototypes elsewhere.
6463
6464         * gdk/gxid.c (handle_claim_device): Some extra checks.
6465         It isn't safe against being fed bad X id's, but at
6466         least it should be safe against deleting all your
6467         files.
6468
6469 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
6470
6471         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
6472         to set the adjustments value when there is no current emission.
6473         [ Removed by mutual agreement owt 5/3/1998 ]
6474
6475         * gtk/gtksignal.c: added new functions to retrive the number of
6476         existing emissions for a certain signal.
6477         (gtk_signal_n_emissions): new function.
6478         (gtk_signal_n_emissions_by_name): new function.
6479
6480 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
6481
6482         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
6483         set the current focus_child of a container, does proper referencing and
6484         adjusts the vadjustment/hadjustment associated with the focus widget.
6485
6486         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
6487         containers via gtk_container_set_focus_child.
6488
6489         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
6490         where appropriate.
6491
6492         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
6493         child since not every child removal goes through this function (this
6494         showed up after gtk_container_set_focus_child() started to reference the
6495         focus_child of a container).
6496
6497         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
6498         of a container from gtk_container_remove into this place.
6499
6500 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
6501
6502         * gtk/gtksignal.c: added new functions to operate on intermediate
6503         function pointers. implemented incremental blocking.
6504         (gtk_signal_disconnect_by_func): new function.
6505         (gtk_signal_handler_block_by_func): new function.
6506         (gtk_signal_handler_unblock_by_func): new function
6507
6508 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
6509
6510         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
6511         Always show the scrollbars when the policy is
6512         GTK_POLICY_ALWAYS...
6513
6514 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
6515
6516         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
6517         "value_changed" if we really passed a new value.
6518         (gtk_adjustment_changed): new function to emit the "changed" signal.
6519         (gtk_adjustment_set_value): new function to emit the "value_changed"
6520         signal.
6521
6522 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
6523
6524         * gtk/gtkcombo.c: Further changes to the way the window
6525         is popped up so that it will be compatible with 
6526         auto-scrolling in the future.
6527
6528 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
6529
6530         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
6531         the combo-list is empty since that will cause the combo to operate
6532         on a non existing GtkList window.
6533         (gtk_combo_get_pos): provide the combo list with a usfull default
6534         height if empty.
6535         (gtk_combo_popup_button_press): grab the focus.
6536         (gtk_combo_activate): grab the focus.
6537
6538 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
6539
6540         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
6541         function to reset the RC styles for a heirarchy
6542
6543         Clear the window background if necessary in
6544         gtk_window_style_set.
6545
6546         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
6547         rereads all previously read RC files.
6548
6549         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
6550         (Should it just be called gdk_get_toplevels?)
6551
6552         * gtk/testgtk.c: New test to reload RC files.
6553
6554 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
6555
6556         * gtk/gtkclist.h:
6557         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
6558         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
6559         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
6560         the GTK_ prefix (this solution involved less changes in the
6561         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
6562         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
6563         from lars & stefan to support the derivation of GtkCtree.
6564
6565         * gtkctree.h:
6566         * gtkctree.c:
6567         initial import of a tree widget derived from gtkclist, courtesy
6568         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
6569         it just damn rocks!
6570
6571 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
6572
6573         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
6574         for us.
6575         (gtk_list_insert_items):
6576         (gtk_list_remove_items_internal): 
6577         (gtk_list_clear_items): 
6578         remove a possible pointer grab, we might get thrown into a loop
6579         otherwise.
6580         (gtk_list_button_press): grab the pointer *before* selecting the child,
6581         because selection of items may cause the lists children to change,
6582         resulting in a grab release.
6583         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
6584         children.
6585         (gtk_list_shutdown): remove all children from the list.
6586         (gtk_real_list_unselect_child): 
6587         (gtk_real_list_select_child): *always* put our internal structures into
6588         sane state *before* signal emisions (i.e. list->selection updates prior
6589         to gtk_list_item_[de]select() calls).
6590
6591         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
6592         focused child walks out of the window.
6593         removed CAN_FOCUS for the combo arrow's button since it doesn't react
6594         to keyboard events ("clicked" connection is missing).
6595
6596 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
6597
6598         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
6599         getting colormap for FOREIGN windows to go along with
6600         Raster's fix for visuals.
6601
6602 Merges from gtk-1-0
6603 ===================
6604         
6605 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
6606
6607         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
6608         Check to catch the case when the viewport fits in either
6609         direction or both, instead of flip-flopping infinitely.
6610
6611         Only show/hide the scrollbars once at the end.
6612
6613 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
6614
6615         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
6616         Include the scrollbars in the foreach call.
6617         (gtk-fortier-980405-0.patch; 
6618          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
6619
6620         The notebook widget
6621         really should also include its tabs, but that might cause
6622         problems for programs if they
6623
6624 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
6625
6626         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
6627         resize if the size actually changed. 
6628         (gtk-johannes-980414-0.patch ;  
6629          johannes@nada.kth.se (Johannes Keukelaar) )
6630
6631 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
6632
6633         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6634           ltmain.sh ltconfig config.sub config.guess:
6635
6636         Reverted back to libtool-1.2 (plus minor patches) so as not to
6637         force the issue for everyone else.
6638
6639 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
6640
6641         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6642         Updated to libtool 1.2a.
6643
6644         * gtk/gtkclist.c: Draw the in-between lines with style->base
6645         instead of style->white.
6646         
6647 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
6648
6649         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
6650         Cache the colormap and children of a window locally
6651         instead of fetching them from the server when needed.
6652         Huge performance difference for creating/destroying
6653         windows.
6654
6655         * gtk/gtkstyle.c: Find the depth from the cached
6656         visual, instead of asking the server.
6657
6658         * gtk.m4: Distribute the new version which tries to
6659         figure out what went wrong and give helpful error
6660         messages.
6661
6662         * ltmain.sh ltconfig config.sub config.sh: 
6663         Updated to libtool 1.2a
6664
6665         * gtk/gtktext.c: Fixed a bug where the drawn level
6666         was being messed up when the text was scrolled
6667         during a deletion.
6668         
6669 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
6670
6671         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
6672         the filesystem under you (fix from Josh)
6673
6674 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
6675
6676         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
6677         if the viewport already exists before iterating over it, maybe we
6678         haven't been constructed yet.
6679
6680 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
6681
6682         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
6683         the GtkBin widget already has a child.
6684
6685         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
6686         check that child->parent == NULL;
6687
6688 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
6689
6690         * gtk/gtkselection.c (gtk_selection_clear): Only return
6691         FALSE when the clear event is been rejected, not when
6692         widget has already lost the selection. (Which should
6693         only happen when we are setting the selection to another
6694         widget ourself.)
6695         
6696 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
6697
6698         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
6699
6700         Removed the "check visibility after gtk_widget_unparent" bug 
6701         in hopefully the last three places.
6702
6703 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
6704
6705         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
6706         rc-files.
6707
6708 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
6709
6710         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
6711         for CAN_FOCUS widgets.
6712
6713         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
6714         adjustments for the table.
6715         (create_list): feature automatic adjustment of the scrolled window to
6716         always contain the focused child.
6717         (create_main_window): keep the focussed button always inside of the
6718         scrolled windoww.
6719
6720         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
6721         adjustments, to contain the allocation of the currently focused child.
6722         (gtk_container_set_focus_hadjustment): new functin to set the
6723         horizontal focus adjustment.
6724         (gtk_container_set_focus_vadjustment): new functin to set the vertical
6725         focus adjustment.
6726
6727         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
6728         clamp the currents adjustment page into a specific range.
6729
6730         * random GtkType fixups for gtk_*_get_type() functions.
6731
6732 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
6733
6734         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
6735         Account for the fact that gtk_tree_item_remove_subtree
6736         will be called recursively. 
6737
6738         Handle removing a collapsed subtree.
6739
6740         (From Andy Dustman <adustman@comstar.net>)
6741         
6742         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
6743         root tree when removing items from a non-previously
6744         mapped tree.
6745
6746         * gtk/testgtk.c: Added a remove_subtree button.
6747         
6748 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
6749
6750         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
6751         before object removing data. This change fixes a bug where 
6752         removing the last weak references would cause it to be 
6753         triggered.
6754
6755 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
6756
6757         * gdk/Makefile.am: Removed mostly useless dependency that
6758         was causing problems for SGI's make, when used with
6759         the 'make dist' form of GTK+. (Dependency caused dependencies
6760         to be redone when BUILT_SOURCES changed)
6761
6762 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
6763
6764         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
6765         like a menu.
6766         
6767         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
6768         to gtkitem.c so dragging can also work in lists.
6769
6770         * gtk/gtklist.[ch]: Track child enter events and use
6771         those to allow dragging the selection. 
6772
6773 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
6774
6775         * gtk/gtktext.c: Try enabling background pixmaps for editable text
6776         widgets.  There is a bit of flashing, but not too bad. If you
6777         don't want the flashing, you can always not set a background
6778         pixmap.
6779
6780 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
6781
6782         * gtk/gtktext.c: Fixed a bug where the drawn level
6783         was being messed up when the text was scrolled
6784         during a deletion.
6785         
6786 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
6787
6788         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
6789         bug:  There is no need to set the ExposureMask in the XGrabPointer
6790         (this caused DnD programs to crash).
6791
6792 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
6793
6794         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
6795         field to be of type guint.
6796         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
6797         ref_count>0;
6798         (gtk_accelerator_table_install): keep a per object list of accelerator
6799         tables that refer to this object.
6800         (gtk_accelerator_table_remove): remove the accelerator table from the
6801         per object list.
6802         (gtk_accelerator_table_clean): warn if there are any object references
6803         left in an accelerator table upon destruction.
6804         (gtk_accelerator_tables_delete): new function to delete object
6805         references from the accelerator tables associated with this object.
6806
6807         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
6808         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
6809         of an accelerator can be prevented by gtk_signal_emit_stop().
6810         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
6811         so there are no stale pointers in accelerator tables left.
6812
6813 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6814
6815         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
6816         visible before we unparent it.
6817
6818 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
6819
6820         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
6821         running_timeouts list with the tmp_list link itself, not with a new
6822         GList structure pointing to our link. that would fill up memory and
6823         causes the GList.data fields of the running_timeouts list to point to
6824         GList structures and not GtkTimeoutFunction structures which is a
6825         *really* bad thing.
6826         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
6827         the above entry ;).
6828
6829 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
6830
6831         * gtk/gtkradiomenuitem.h: 
6832         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
6833         ala gtk_radio_button_set_group.
6834         (gtk_radio_menu_item_init): assure that we always have at least a group
6835         that points to self.
6836
6837         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
6838         added g_return_if_fail() statements.
6839         (gtk_radio_button_init): assure that we always have at least a group
6840         that points to self.
6841
6842 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
6843
6844         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
6845
6846 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
6847
6848         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
6849         (Damon Chaplin), which i got wrong when applying Damon's patch the last
6850         time.
6851
6852 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
6853
6854         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
6855         that when we are running with a non-installed colormap,
6856         in 8-bit pseudo-color, we actually are using the system
6857         visual. (Fixes *Bad Match* errors on Digital Unix machines
6858         with multiple 8-bit pseudo-color visuals)
6859
6860 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
6861
6862         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
6863         by whoever thought that randomly changing ints to unsigned int
6864         without reviewing the code was a good idea.  It is, btw not
6865         mentioned in the ChangeLog as usual, but I know it was not Elliot
6866         the culprit this time. 
6867
6868 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
6869
6870         * Released GTK+ 1.0.0