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