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