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