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