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