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