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