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