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