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