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