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