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