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