]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
When we find a match, stop searching. (Because we assume pspec != NULL in
[~andy/gtk] / ChangeLog.pre-2-6
1 Thu Feb 11 18:43:12 1999  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtkbindings.c (gtk_binding_set_add_path): When
4           we find a match, stop searching. (Because we
5           assume pspec != NULL in the search).
6
7 Wed Feb 10 01:18:22 1999  Owen Taylor  <otaylor@redhat.com>
8
9         * gtk/gtkhandlebox.c (gtk_handle_box_draw_ghost): Fix
10           up painting of "ghosts".
11
12         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
13           Add double-click reattachment.
14
15         * gtk/gtkhandlebox.c: Grab on widget->window,
16           not on handlebox->bin_window. This means we don't 
17           have to worry about ungrabbing while reparenting.
18
19           Don't make a GTK+ grab - that wasn't necessary.
20
21         * gtk/gtkhandlebox.c: Only compute the root -> desk
22           offset once, when starting the drag, instead
23           of continuously. This should solve the *Bad Window*
24           errors that were occurring because of race conditions
25           with the WM.
26           
27         * gtk/gtkhandlebox.c: Completely reworked the 
28           the logic of reattachment. We introduce the 
29           concept of the "snap edge", which is an edge
30           that needs to be aligned for reattachmed.
31           We set a reasonable default from 
32           handlebox->handle_position, but an application
33           might want to change this in some circumstances.
34
35         * gtk/gtkhandlebox.[ch]: Add settors:
36             gtk_handle_box_set_handle_position  ();
37             gtk_handle_box_set_snap_edge        ();
38
39 Mon Feb 15 11:13:01 1999  Owen Taylor  <otaylor@redhat.com>
40
41         * gtk/gtkwindow.c (gtk_window_set_focus): 
42           gtk/gtkwidget.c (gtk_widget_real_grab_focus):
43
44         If the focus widget is the same, but does not currently
45         have the focus, call gtk_window_set_focus(). This is needed
46         so that click focusing with GtkPlug works correctly.
47
48 Mon Feb 15 07:45:28 1999  Tim Janik  <timj@gtk.org>
49
50         * configure.in (--enable-debug): default to yes for development trees.
51
52 Fri Feb 12 00:08:01 1999  Lars Hamann  <lars@gtk.org>
53
54         * gtk/gtklist.c (gtk_list_remove_items_internal): don't autoselect
55         focus_row in case of GTK_SELECTION_EXTENDED
56
57         * gtk/testgtk.c : few changes in list example.
58
59         * gtk/gtklistitem.c (gtk_list_item_class_init): 
60         * gtk/gtkctree.c (gtk_ctree_class_init): 
61         * gtk/gtkclist.c (gtk_clist_class_init): 
62         fixed indentation, removed unused key bindings
63         
64 Wed Feb 10 01:02:46 1999  Lars Hamann  <lars@gtk.org>
65
66         * gtk/gtkclist.c (real_remove_row): 
67         * gtk/gtkctree.c (gtk_ctree_remove_node): don't autoselect focus_row
68         in case of GTK_SELECTION_EXTENDED
69
70         * gtk/testgtk.c : few changes in clist/ctree examples.
71
72 Wed Feb 10 15:49:16 1999  Tim Janik  <timj@gtk.org>
73
74         * gtk/gtkwindow.c (gtk_window_class_init):
75         * gtk/gtkctree.c (gtk_ctree_class_init): applied patch from Paolo
76         Molaro to fix GTK_TYPE_POINTER args of ::tree_collapse and
77         ::set_focus signals.
78
79         * docs/gtk_tut.sgml: s/menufactory/itemfactory, minor fixups
80         to the item factory example.
81
82 Wed Feb 10 11:05:53 1999  Owen Taylor  <otaylor@redhat.com>
83
84         * gtk/gtkdnd.c: Reverted coding style "fixups"
85
86 Wed Feb 10 10:43:50 1999  Owen Taylor  <otaylor@redhat.com>
87
88         * gdk/gdkwindow.c (gdk_window_set_icon, gdk_window_set_group):
89          Supplement the existing WMNormalHints, don't 
90          overwrite them.
91
92 Wed Feb 10 08:35:36 1999  Tim Janik  <timj@gtk.org>
93
94         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): asure that
95         ->value_buf always points to an allocated area.
96         (gtk_color_selection_drag_end): new function hooked up to drag_end to
97         destroy the drag_window.
98
99         * gtk/gtkdnd.c: some coding style fixups.
100
101 Wed Feb 10 06:47:17 1999  Tim Janik  <timj@gtk.org>
102
103         * gdk/gdkwindow.c: various indentation fixes.
104
105         * gdk/gdkevents.c: coding style fixups.
106         NULL initialize event_func, event_notify and event_chunk.
107         (expose_predicate): made this function static.
108         (gdk_event_handler_set): perform destroy notification even if no
109         event_func is set.
110
111         * gdk/gdkrectangle.c (gdk_rectangle_union): added g_return_if_fail
112         statements.
113
114 Sun Feb  7 19:49:21 1999  Owen Taylor  <otaylor@redhat.com>
115
116         * gtk/gtkwindow.c (gtk_window_move_resize): Fixed some
117           bugs with set_default_size.
118
119 Sat Feb  6 13:23:51 1999  Owen Taylor  <otaylor@redhat.com>
120
121         * docs/Changes-1.2.txt: Added information about
122          the change to gtk_widget_size_request().
123
124         * gtk/gtkentry.c: Call gtk_widget_get_child_requisition
125          explicitely since we differentiate between the usize
126          set by the user and what we got. (Ugh)
127
128         * gtk/gtkwidget.[ch] (gtk_widget_get_child_requisition):
129          New function to return the effective size of a widget
130          as it looks to its parent.
131
132         * gtk/gtkwidget.c (gtk_widget_size_request): Leave
133          widget->requisition set to exactly what the widget
134          asked for, and then make a copy of that into
135          the requisition argument. Allow a NULL requisition
136          argument, and, if G_ENABLE_DEBUG, warn if
137          requisition == &widget->requisition.
138
139         * gtkalignment.c gtkaspectframe.c gtkbutton.c gtkclist.c
140           gtkcontainer.c gtkentry.c gtkeventbox.c gtkfixed.c
141           gtkframe.c gtkhandlebox.c gtkhbox.c gtkhpaned.c 
142           gtklayout.c gtklist.c gtklistitem.c gtkmenu.c
143           gtkmenubar.c gtkmenuitem.c gtknotebook.c
144           gtkoptionmenu.c gtkpacker.c gtkscrolledwindow.c
145           gtktable.c gtktoolbar.c gtktree.c gtktreeitem.c
146           gtkvbox.c gtkviewport.c gtkvpaned.c gtkwindow.c
147
148          Avoid calling gtk_widget_size_request with
149          requisition == widget->requisition; use 
150          gtk_widget_get_child_requisition to get the
151          size of children.
152
153 Tue Feb  9 19:49:46 1999  Owen Taylor  <otaylor@redhat.com>
154
155         * configure.in (LDFLAGS): Removed extraneous line
156           that crept in in previous commit.
157
158 Tue Feb  9 19:39:32 1999  Owen Taylor  <otaylor@redhat.com>
159
160         * gtk/gtkentry.[ch] gtk/gtkeditable.h: Moved
161           entry->visible into editable class. (Leave it
162           behind deprecated for compatibility)
163          
164         * gtk/gtkeditable.c: If not editable->visible,
165           return *'s for clipboard and selection.
166
167 Tue Feb  9 19:11:43 1999  Owen Taylor  <otaylor@redhat.com>
168
169         * gtk/gtkstyle.c (gtk_style_new): If we can't find
170           helvetica, fall back to "fixed". If we can't
171           find "fixed", exit cleanly.
172
173 Tue Feb  9 16:03:44 1999  Owen Taylor  <otaylor@redhat.com>
174
175         * acconfig.h configure.in: Rename 
176           XIM_INST_IS_MISSING_OR_STRANGE to USE_X11R6_XIM
177
178         * Conditionalize destroy callbacks with USE_X11R6_XIM.
179
180 Tue Feb  9 15:35:13 1999  Owen Taylor  <otaylor@redhat.com>
181
182         * gtk/gtklabel.c (gtk_label_style_set): Added
183           a style_set() function so that word lengths get
184           recomputed on style change.
185
186 Mon Feb  8 21:00:20 1999  Lars Hamann  <lars@gtk.org>
187
188         * gtk/gtkclist.c (CLIST_OPTIMUM_SIZE): changed to 64
189         (gtk_clist_draw_focus) (hadjustment_value_changed) (draw_row):
190         few fixes to respect GTK_CAN_FOCUS flag.
191
192         * gtk/gtkctree.c (draw_row): 
193         respect GTK_CAN_FOCUS flag.
194
195 Mon Feb  8 19:22:27 GMT 1999 Tony Gale  <gale@gtk.org>
196
197         * example/colorsel/*: missing from the CVS for some reason
198
199 Mon Feb  8 13:08:51 GMT 1999 Tony Gale  <gale@gtk.org>
200
201         * examples/Makefile: add SpinButton example
202
203 Mon Feb  8 12:50:06 GMT 1999 Tony Gale  <gale@gtk.org>
204
205         * docs/gtk_tut.sgml:
206           - Heavily edited GtkCombo section initially from
207             Christopher T. Lansdown <lansdoct@screech.cs.alfred.edu>.
208
209           - Cleanups and some glib stuff from
210             David Wheeler <wheeler@ida.org>
211
212         * Makefile.am: update to include the latest Tutorial examples.
213
214 Sat Feb  6 11:20:16 1999  Owen Taylor  <otaylor@redhat.com>
215
216         * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the
217         entire draw_data_list back to the free list, not
218         just the last element.
219
220 Sat Feb  6 00:21:14 1999  Lars Hamann  <lars@gtk.org>
221
222         * gtk/gtkctree.c (draw_row): 
223         * gtk/gtkclist.c (draw_row) (new_column_width) (scroll_horizontal)
224         (title_focus): search last visible column instead of
225         using clist->columns.
226
227 Fri Feb  5 13:23:50 1999  Owen Taylor  <otaylor@redhat.com>
228
229         * gdk/gdkwindow.c (gdk_window_move_resize): Adjust
230         saved positions of children when resizing a 
231         guffaw_gravity = TRUE window.
232
233         * gtk/gtkdnd.c (gtk_drag_highlight): Rework the
234          highlighting so that it is done in callbacks for
235          draw and expose. This should solve problems with
236          multiple highlights for the same GdkWindow.
237
238         * gtk/gtkdnd.c (gtk_drag_highlight): Fix bug where
239         the highlight was being drawn with an incorrect
240         width/height for !NO_WINDOW widgets.
241
242 Tue Feb  2 11:06:02 1999  Owen Taylor  <otaylor@redhat.com>
243
244         * gtk/gtkrange.c (gtk_range_style_set): Fixes
245          to account for the changed structure of the windows
246          of range widgets.
247
248 1999-02-05  Owen Taylor  <otaylor@gtk.org>
249
250         * gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): 
251         Don't assume any more that the gtkwidget.c code
252         will queue a redraw on us during a size_allocate -
253         queue clear/draws as appropriate for our groove.
254
255 1999-02-04  Christopher Blizzard  <blizzard@redhat.com>
256
257         * gtk+.spec (Packager): Change my email address.
258
259 Thu Feb  4 05:42:34 CST 1999 Shawn T. Amundson <amundson@gtk.org>
260
261         * INSTALL
262           NEWS
263           README
264           configure.in
265           gtk+.spec
266           docs/gtk-config.1: version=1.1.15
267
268         * Makefile.am: example files where incorrect for
269           menu directory.
270
271         * Released GTK+ 1.1.15
272
273 Wed Feb  3 17:29:57 PST 1999 Manish Singh <yosh@gimp.org>
274
275         * gtk/gtkclist.h: spelling fix in comment from
276         joey@kuolema.Infodrom.North.DE (Martin Schulze)
277
278 Tue Feb  2 12:39:42 1999  Owen Taylor  <otaylor@redhat.com>
279
280         * gtk/gtkdnd.c: Make sure we set the icon window position 
281          before it is shown to prevent annoying flicking to 0,0.
282          Make it consistent that info->cur_x/y do not include
283          info->hot_x/y displacement.
284
285 Tue Feb  2 08:59:16 GMT 1999 Tony Gale  <gale@gtk.org>
286
287         * docs/gtk_tut.sgml: new sections on Layout and
288           SpinButton [nice widget]
289
290         * examples/spinbutton/*: example code
291
292 Mon Feb  1 19:25:54 1999  Owen Taylor  <otaylor@redhat.com>
293
294         * docs/gtk-config.txt (testinput_SOURCES): Put
295         in some information about 'gtk-config --libs gthread'.
296
297         * docs/Changes-1.2.txt: Updated section on threads.
298
299 Tue Feb  2 00:28:44 1999  Lars Hamann  <lars@gtk.org>
300
301         * gtk/gtkctree.c (gtk_ctree_insert_node): in case of
302         GTK_SELECTION_BROWSE select first inserted row.
303         (resync_selection): select rows in correct order.
304
305         * gtk/gtkclist.c (real_insert_row): in case of GTK_SELECTION_BROWSE
306         select first inserted row.
307         (resync_selection): select rows in correct order.
308
309         * gtk/gtklist.c (gtk_list_end_selection): select rows in correct order.
310
311 Mon Feb  1 16:47:55 1999  Owen Taylor  <otaylor@redhat.com>
312
313         * gtk.m4: Pass gthread on to gtk-config.
314
315         * configure.in gtk-config.in: Support gthread flag to 
316           add thread cflags/libraries into the output of 
317           gtk-config.
318
319 Mon Feb  1 15:14:56 1999  Owen Taylor  <otaylor@redhat.com>
320
321         * gtk/gtkoptionmenu.c (gtk_option_menu_size_allocate): 
322          Fixed problem with uints resulting in huge child
323          allocations.
324
325 Mon Feb  1 14:54:28 1999  Owen Taylor  <otaylor@redhat.com>
326
327         * gtk/gtklabel.c (gtk_label_expose): Cast uints
328          to ints in geometry calculations. This should
329          prevent FP exceptions on FreeBSD when quantities
330          become negative. [ Actually, this is probably
331          a workaround with a gcc bug with handling of
332          bitfields, according to Ben Jackson <ben@ben.com> ]
333
334 Mon Feb  1 13:35:14 GMT 1999 Tony Gale  <gale@gtk.org>
335
336         * examples/Makefile: update to new examples
337
338         * examples/menu/itemfactory.c: I must have forgotten to
339           'cvs add' this file
340
341 Mon Feb  1 09:16:03 GMT 1999 Tony Gale  <gale@gtk.org>
342
343         * docs/gtk_tut.sgml:
344           - Complete documentation of Label widget API
345           - New sections for the following:
346                 * Arrows
347                 * Alignment
348                 * Button Boxes
349                 * Viewports
350
351         * examples/arrow/*, examples/buttonbox/*, examples/label/*
352           - New code examples
353
354 Fri Jan 29 09:44:37 GMT 1999 Tony Gale  <gale@gtk.org>
355
356         * examples/fixed/*, examples/frame/*
357           - Examples from the Tutorial
358
359 Fri Jan 29 09:18:41 GMT 1999 Tony Gale  <gale@gtk.org>
360
361         * docs/gtk_tut.sgml:
362           - New sections on the Fixed and Frame containers
363           - Rearrange the Containers section so the easier ones
364             are first
365           - Move the List widget section to an appendix
366
367 Thu Jan 28 12:14:12 GMT 1999 Tony Gale  <gale@gtk.org>
368
369         * docs/package_tutorial.sh: script to convert and
370           package up the tutorial - stick it here so I don't lose
371           it when I accidentally delete it again.
372  
373 Thu Jan 28 10:16:28 GMT 1999 Tony Gale  <gale@gtk.org>
374
375         * docs/gtk_tut.sgml:
376           - Replace all uses of deprecated functions.
377           - Replace menufactory example with itemfactory example
378             from Nick Scott <mendigo@geocities.com>
379           - Minor bug fixes in the examples.
380
381 1999-01-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
382
383         * gdk/gdkim.c:
384         s/XIM_INSTANTIATE_IS_MISSING_OR_STRANGE/XIM_INST_IS_MISSING_OR_STRANGE/
385
386 Thu Jan 28 01:57:06 CST 1999 Shawn T. Amundson <amundson@gtk.org>
387
388         * INSTALL
389           NEWS
390           README
391           configure.in
392           gtk+.spec
393           docs/gtk-config.1: version=1.1.14
394
395         * Released GTK+ 1.1.14
396
397 Thu Jan 28 01:34:29 1999  Owen Taylor  <otaylor@redhat.com>
398
399         * gtkfontsel.c gtkcolorsel.c: When translating
400         N_() strings, use _(), not gettext(), since we
401         really need to call dgettext().
402
403 Wed Jan 27 20:51:25 PST 1999 Manish Singh <yosh@gimp.org>
404
405         * acinclude.m4: Xsed isn't valid here, don't use it
406
407         * ltmain.sh
408         * ltconfig: better file magic regexp for Linux libs
409
410 Wed Jan 27 23:05:55 1999  Owen Taylor  <otaylor@redhat.com>
411
412         * gtk/gtklayout.[ch] (gtk_layout_realize): Move 
413         gravity_works back to a static global variable,
414         since it is a global constant, and this way we
415         keep structure sizes uniform.
416
417 Wed Jan 27 22:59:07 1999  Owen Taylor  <otaylor@redhat.com>
418
419         * gtk/Makefile.am (static_SOURCES): Move gtkintl.h
420         from $source_headers to $static_sources since
421         it should not be installed.
422
423 Wed Jan 27 22:51:23 1999  Owen Taylor  <otaylor@redhat.com>
424
425         * gdk/gdkevents.c (expose_predicate): Allow exposure
426          compression across GravityNotify events to improve
427          the appearance of a GTK+ window unshading.
428
429 Wed Jan 27 21:56:07 1999  Owen Taylor  <otaylor@redhat.com>
430
431         [ patch from Takashi Matsuda <matsu@arch.comp.kyutech.ac.jp> ]
432         
433         * acconfig.h configure.in gdk/gdkim.c: Add configure 
434         flag for disabling XRegisterIMInstantiateCallback(), default
435         it to off for Solaris. Always try to open the
436         input method immediately, and only if that fails,
437         register than instantiate callback.
438
439         * gtk/gtkentry.c: Some tweaks to make sure that we
440         only get and set the IC attributes when appropriate.
441         
442 Wed Jan 27 20:08:54 1999  Owen Taylor  <otaylor@redhat.com>
443
444         * gtk/gtkfilesel.c (open_user_dir): Patch from
445         Sebastian Wilhelmi  <wilhelmi@ira.uka.de> to
446         use g_get_home_dir() instead of calling getpwuid() 
447         ourselves.
448
449 Wed Jan 27 20:06:06 1999  Owen Taylor  <otaylor@redhat.com>
450
451         * gtk/gtklayout.c (gtk_layout_adjustment_changed):
452         Removed some g_print()'s
453
454 Wed Jan 27 18:57:57 1999  Owen Taylor  <otaylor@redhat.com>
455
456         * gdk/gdk.h gdk/gdkdnd.c: Change signatures for 
457         gdk_drag_begin() and gdk_drag_motion() so that the set 
458         of possible actions is passed on each motion, not just at
459         the beginning of the drag. We do this so that
460         we can restrict the set of possible drag events
461         when the user presses a modifier key during a 
462         drag.
463
464         * gdk/gdkdnd.c: Send a motif Operation-changed
465         message when the set of possible actions change,
466         as well as when the suggested action change.
467
468         * gdk/gdkdnd.c: Change the XdndActionList whenever
469         the set of actions change.
470
471         * gdk/gdkdnd.c: Add a filter to catch changes to
472         the XdndActionList property for the source widget.
473
474         * gtk/gtkdnd.c: Change the set of possible actions
475         when the user presses Control, Shift, or Control-Shift,
476         to only include the corresponding action.
477         
478         * gtk/gtkdnd.c (gtk_drag_button_release_cb):
479         Disconnect button signals before we possibly
480         free info structure.
481
482 Wed Jan 27 18:40:50 1999  Owen Taylor  <otaylor@redhat.com>
483
484         * gtk/gtkmain.c (gtk_main_do_event): Hack scrollwheel
485         support into the eventloop, by treating button 4-5
486         presses on scrolled windows and scrollbars specially. 
487         Put it here to keep the ugliness small and confined.
488         (We need to intercept the normal propagation in any case
489         to have this work reliably right now, since some
490         subwidgets will trap the button presses)
491         
492         * gtk/gtkviewport.c (gtk_viewport_realize): Select for 
493         BUTTON_PRESS to support the above hack.
494         
495 Tue Jan 26 14:02:50 1999  Owen Taylor  <otaylor@redhat.com>
496
497         * gdk/gdkwindow.c (gdk_window_show/hide): Remove TimJ's
498         checks for already being mapped or hidden. See
499         the ICCCM's section on state changes for why this
500         is a bad idea.
501
502 Wed Jan 27 17:05:40 1999  Owen Taylor  <otaylor@redhat.com>
503
504         * Separate out GLIB_LIBS and GLIB_DEPLIBS. This
505         may fix the --with-glib option. GLIB_LIBS are
506         the libs to link example programs against, while
507         GLIB_DEPLIBS are dependency libraries.
508
509 Wed Jan 20 11:19:00 1999  Owen Taylor  <otaylor@redhat.com>
510
511         * gtk/gtklabel.c: Use floor() instead of truncating
512         to integer values so we get translation invariance.
513
514         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
515         and lower values for adjustments in size_allocate().
516
517         * gdk/gdkwindow.c gdk/gdk.h gdk/gdkprivate.h: New
518         function gdk_window_set_static_gravities() to set
519         up a window for guffaw scrolling.
520         
521         * gdk/gdkwindow.c (gdk_window_internal_destroy): Set flags
522         indicating destroyed state before cleanup.
523
524         * gtk/gtkprivate.h gtk/gtkwidget.c: Add a new
525         private flag IS_OFFSCREEN. If set, this indicates
526         to GTK+ that the widget is not to be considered
527         viewable regardless of its map state. Queued draws
528         on offscreen widgets are suppressed.
529
530         Added new function static gtk_widget_is_offscreen() to
531         check this flag on a widget and its ancestors.
532
533         * gtk/gtklayout.[ch]: Major revisions.
534
535         - Use gdk_window_set_static_gravities to set static gravity 
536         on all child windows, and thus avoid having to create a window
537         for NO_WINDOW children.
538
539         - Adjust allocations of children as we scroll them
540         so queued draws work correctly.
541
542         - Don't allocate our children directly in a put()
543         or move(); just queue a resize() like every other
544         widget.
545
546         * gtk/testgtk.c: Make the arrows on the scrollbars
547         work, create a larger and more demanding test.
548         
549 Wed Jan 27 09:19:07 1999  Tim Janik  <timj@gtk.org>
550
551         * gdk/gdkcolor.c (gdk_colormap_unref): assert ref_count>0.
552
553 Mon Jan 25 20:05:22 1999  Owen Taylor  <otaylor@redhat.com>
554
555         * gtk/gtkwidget.c (gtk_widget_set_{visual,colormap}): 
556         New functions to set the colormap or visual
557         of an existing widget. These functions should not
558         be called on a widget that has previosly been
559         realized.
560
561         * gtk/gtkcolorsel.c (gtk_color_selection_dialog_init):
562         Set the visual and colormap on the toplevel dialog,
563         then push them for the child widgets. As opposed
564         to push/pop in _new(), this way, things will work
565         properly with gtk_widget_new().
566         
567 Mon Jan 25 19:41:56 1999  Owen Taylor  <otaylor@redhat.com>
568
569         * gtk/gtknotebook.c (gtk_notebook_page_allocate): Queue
570         a redraw on the tab area when a tab changes size.
571         (Includes improvements from Lars Hamann)
572
573 Mon Jan 25 19:00:13 1999  Owen Taylor  <otaylor@redhat.com>
574
575         * gtk/gtkcolorsel.c (gtk_color_selection_value_events): 
576          Back out the last solution to updating problem. And
577          try a different one that is less dependent on
578          the state of the widget. Just redraw the value_marker
579          when it gets mapped. Somebody needs to analyze
580          this widget more carefully and figure out when
581          it should be setting the contents of the previews
582          with more care.
583
584 Mon Jan 25 17:48:03 1999  Owen Taylor  <otaylor@redhat.com>
585
586         * gtk/gtkcolorsel.c: Removed some GTK_WIDGET_DRAWABLE()
587         tests - we need to update the value bar's contents
588         even when the widget is unmapped.
589
590 Mon Jan 25 15:47:46 1999  Owen Taylor  <otaylor@redhat.com>
591
592         * acinclude.m4 (ac_result): Don't define ENABLE_NLS
593          unless we have a working NLS. (This should keep
594          libintl.h from being included when it doesn't
595          exist).
596
597 Mon Jan 25 11:05:10 1999  George Lebl  <jirka@5z.com>
598
599         * gtk/gtkbutton.c: set RECEIVES_DEFAULT on init, and a
600           button press on the widget doesn't grab default anymore
601
602         * gtk/gtkcheckbutton.c,gtk/gtkoptionmenu.c,gtk/gtkradiobutton.c:
603           unset RECEIVES_DEFAULT on init
604
605         * gtk/gtkwidget.[ch]: add a RECEIVES_DEFAULT flag to widget
606           flags
607
608         * gtk/gtkwindow.c,gtk/gtkplug.c: on pressing <enter>, activate
609           the focused widget if it is a RECEIVES_DEFAULT widget,
610           no matter what the current default_widget is
611
612         * gtk/gtkwindow.c: on focus change, migrate the HAS_DEFAULT
613           flag to CAN_DEFAULT widgets if they RECEIVE_DEFAULT as well
614           or migrate it back to the default_widget if the focus widget
615           doesn't "RECEIVE_DEFAULT"
616
617 Sun Jan 24 18:09:24 1999  Owen Taylor  <otaylor@redhat.com>
618
619         * gdk/gdkdnd.c (motif_read_initiator_info): Byteswap
620         the MotifInitiatorInfo structure _before_ using it.
621
622 Sun Jan 24 12:17:39 1999  Owen Taylor  <otaylor@redhat.com>
623
624         * gdk/gdkcolor.c (gdk_colormap_real_destroy): Fix 
625          reversed assertion. 
626          (Pointed out by Austin Donnelly <austin@greenend.org.uk>)
627
628         * gtk/gtkruler.c (gtk_ruler_expose): Remove unecessary
629          and harmful call to gtk_paint_box(). We are going
630          to paint onto the backing store later anyways.
631
632 Sat Jan 23 11:15:39 1999  Owen Taylor  <otaylor@gtk.org>
633
634         * gdk/gdkdnd.c (gdk_window_register_dnd): X expects
635          longs, not uint32 for XChangeProperty, when 
636          format == 32.
637
638         * gdk/gdkdnd.c (motif_read_initiator_info): Byte-swap
639          the MotifInitiatorInfo structure if necessary.
640
641         * gdk/gdkdnd.c: When extracting and constructing
642          Motif DND messages, don't use data.s[], data.l[]
643          since on 64bit architectures, these won't necessarily
644          be in the same place with data.b[]. 
645
646         * gtk/testdnd.c (target_drag_drop): Return TRUE for
647          drag_drop within the drop zone.
648  
649         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Only send
650          a XmTRANSFER_FAILURE if no drop site is found, not
651          on every drop!
652
653 Fri Jan 22 19:22:39 1999  Owen Taylor  <otaylor@redhat.com>
654
655         * gtk/gtkeditable.c: Add flags field to 
656          GtkTargetEntry table.
657         
658         * gdk/gdkwindow.c (gdk_window_is_viewable): Treat foreign
659          windows as always viewable, since we can't track their
660          map-state reliably without speed problems. (Fixes
661          problem where updating didn't occur properly within
662          GtkPlug)
663
664 Sat Jan 23 13:41:00 1999  Jeff Garzik  <jgarzik@pobox.com>
665
666         * gtk/gtkctree.c
667         (tree_delete): Don't search selection list twice.
668         (real_select_row): Remove extra ';', add default for clarity.
669
670 Sat Jan 23 01:44:43 1999  Lars Hamann  <lars@gtk.org>
671
672         * gtk/gtkspinbutton.c (gtk_spin_button_get_value_as_int)
673         (gtk_spin_button_get_value_as_float): removed extra
674         gtk_spin_button_update calls again.
675         * gtk/gtkclist.c (gtk_clist_unmap): unblock dnd signal handler if
676         neccessary
677         * gtk/gtknotebook.c (gtk_notebook_button_press): grab_focus before
678         switch_page
679         (gtk_notebook_set_shape): don't use cur_page if it's NULL.
680
681 Fri Jan 22 12:20:54 1999  Jeff Garzik  <jgarzik@pobox.com>
682
683         * gtk/gtktooltips.c:
684         Fix recent change to match existing coding style.
685
686 Fri Jan 22 07:33:44 1999  Tim Janik  <timj@gtk.org>
687
688         * gtk/gtkvscale.c (gtk_vscale_pos_trough): take value_spacing into
689         account for GTK_POS_LEFT.
690
691         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): use
692         gtk_toggle_button_set_active () to set the new state.
693         (gtk_radio_button_new): only _set_group if group != NULL.
694         (gtk_radio_button_clicked): reference the widget.
695         (gtk_radio_button_init): make radio buttons active upon
696         startup.
697
698 Thu Jan 21 17:13:12 1999  Jeff Garzik  <jgarzik@pobox.com>
699
700         * gtk/gtkselection.c:
701         (gtk_selection_property_notify): Check args for NULL.
702         (gtk_selection_default_handler):
703         Replace manual list count with call to g_list_length.
704         Remove signedness of temp var 'count' to agree with usage.
705         Slight spacing adjustment for readability.
706
707         * gtk/gtkbox.c, gtk/gtklayout.c, gtk/gtkselection.c:
708         Init a few ptrs to NULL, to quiet warnings.
709
710 Thu Jan 21 16:03:02 1999  Owen Taylor  <otaylor@redhat.com>
711
712         * gtk/gtkbutton.c (gtk_button_expose): Code cleanup.
713
714         * gtk/gtktreeitem.c: Add a paint routine, fix up bugs
715         in drawing where if the expose area was contained
716         completely in the right side of the tree the background
717         wasn't redraw, etc.
718
719         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fix a bug
720         in clipping draw regions while propagating them
721         upwards.
722
723 Thu Jan 21 12:20:51 1999  Owen Taylor  <otaylor@redhat.com>
724
725         * gtk/gtkcolorsel.c (gtk_color_selection_dialog_new): 
726         Pushing and popping the visual/cmap in the init() 
727         function does no good, because the window itself needs
728         to be create with that visual/cmap.
729
730         So do it in the new() function instead. 
731
732         This will require people doing gtk_widget_new() to do 
733         the push/pop themselves, but I don't see any way around
734         it other than digging in and tweaking the window
735         widget's colormap and visual ourselves, which
736         is highly non-kosher, but would be safe...
737
738 Thu Jan 21 16:04:35 1999  Timur Bakeyev <mc@bat.ru>
739
740         * gtk/gtkrc.c (gtk_rc_init): It was reported by Owen Taylor 
741         <otaylor@redhat.com>, that LC_ALL produce unparsable garbage
742         on some glibc'ed systems and HP/UX. So, falling to LC_CTYPE.
743
744 Thu Jan 21 02:11:44 1999  Owen Taylor  <otaylor@redhat.com>
745
746         * Set and read the XdndActionList property defined
747         in the Xdnd spec. We do this always, not just for
748         XdndActionAsk like the spec says, but if we don't
749         find it, we fall back to actions = suggested_action,
750         which is compatible with the language of the spec.
751
752 Thu Jan 21 01:15:28 1999  Jeff Garzik  <jgarzik@pobox.com>
753
754         * gdk/gdkdnd.c (gdk_drag_context_unref):
755         Move not-null assertion before pointer de-ref.
756
757         * gdk/gdkevents.c (gdk_event_queue_find_first):
758         Fix infinite loop bug.  Someone should look at this further to
759         make sure the events_pending tests are correct.
760
761 Thu Jan 21 00:44:47 1999  Owen Taylor  <otaylor@redhat.com>
762
763         * gtk/gtkdnd.c (gtk_drag_dest_drop): Default handling
764         for drops should be keyed on GTK_DRAG_DEFAULT_DROP
765         not GTK_DRAG_DEFAULT_MOTION.
766
767 Wed Jan 20 21:52:51 1999  Jeff Garzik  <jgarzik@pobox.com>
768
769         * gtk/gtkclist.c (real_remove_row):
770         Don't search entire row list twice for element being removed.
771
772         * gtk/gtkmenushell.c (gtk_menu_shell_insert):
773         Replaced hand-coded implementation of g_list_insert with
774         call to g_list_insert.
775
776         * gtk/gtktooltips.c
777           (gtk_tooltips_destroy_data, gtk_tooltips_layout_text):
778         tooltipsdata->row test not-null test now properly encompasses
779         both g_list_* calls.
780
781 Thu Jan 21 02:47:36 1999  Lars Hamann  <lars@gtk.org>
782
783         * gtk/gtknotebook.c (gtk_notebook_focus): few cleanups.
784         (gtk_notebook_key_press): call select page function for
785         GDK_DOWN key in case of tab_pos == TOP. Changed other
786         positions accordingly.
787
788 Wed Jan 20 19:57:14 1999  Owen Taylor  <otaylor@redhat.com>
789
790         * gtk/gtkdnd.c (gtk_drag_begin): Start off with the
791         cursor for "no drop" since if we'll get a status
792         if we are over a drag window, but none if we aren't
793         over one. 
794
795 1999-01-20  Jeff Garzik  <jgarzik@pobox.com>
796
797         * gtk/gtkcombo.c (gtk_combo_entry_key_press):
798         Free 'nprefix', closing a memory leak.
799         Spaced out the code a bit to make it more readable.
800
801         * gtk/gtkhbox.[ch] (gtk_hbox_new),
802           gtk/gtkvbox.[ch] (gtk_vbox_new):
803         Change 'homogenous' arg from gint to gboolean.
804
805         * gtk/gtktogglebutton.[ch]:
806         New function gtk_toggle_button_get_active().
807
808 1999-01-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
809
810         * gtk/gtkdnd.c (gtk_drag_get_event_action): Allow button 2 to act
811         as GDK_ACTION_ASK.  Also, allow MOD1 to specify GDK_ACTION_ASK
812         only if that action is enabled in the actions argument.
813
814 1999-01-20  Raja R Harinath  <harinath@cs.umn.edu>
815
816         * configure.in (gtklocaledir): New variable.  Define to
817         $prefix/$DATADIRNAME/locale.  This will point to the directory
818         where po/Makefile actually installs the message translation
819         tables. 
820         * gtk/Makefile.am (INCLUDES): Define GTK_LOCALEDIR to
821         $(gtklocaledir) rather than $prefix/share/locale.
822
823 Wed Jan 20 21:07:45 1999  Timur Bakeyev <mc@bat.ru>
824
825         * gtk/gtkrc.c (gtk_rc_init): There are some systems, that lacks of
826         LC_MESSAGES in locale.h. As a last resort for such systems, set locale
827         according to LC_ALL.
828
829 Wed Jan 20 13:06:51 1999  Owen Taylor  <otaylor@redhat.com>
830
831         * gtk/gtktext.[ch] (clear_[focus_]area): Instead of drawing
832         a background pixmap in with gdk_draw_pixmap(), set
833         it as a tile pixmap for a GC. This should speed
834         up things considerably and also will hide a bug
835         where text->first_onscreen_ver_pixel is being
836         corrupted, causing the bg pixmap drawing code to generate
837         graphics exposes.
838
839 Tue Jan 19 22:15:10 1999  Lars Hamann  <lars@gtk.org>
840
841         * gtk/gtklist.c
842         (gtk_list_button_press):  only call grab_add if pointer_grab succeeds.
843         (gtk_list_unmap): remove pointer/widget grabs if needed.
844         (gtk_list_signal_focus_lost): removed.
845         (gtk_list_focus) (gtk_list_set_focus_child): set last_focus_child.
846         (gtk_list_remove_items_internal) (gtk_list_clear_items): unset
847         undo_focus_child if neccessary. In case of SELECTION_BROWSE/EXTENDED
848         select a new item if selection is empty.
849
850 Tue Jan 19 00:21:15 1999  Tim Janik  <timj@gtk.org>
851
852         * gtk/gtkcompat.h: add compatibility define for
853         gtk_ctree_set_reorderable.
854
855 Tue Jan 19 00:02:10 1999  Lars Hamann  <lars@gtk.org>
856
857         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
858         add a sanity check [from Todd Dukes <todddukes@netscape.net>]
859         
860 Mon Jan 18 22:54:11 1999  Lars Hamann  <lars@gtk.org>
861
862         * gtk/gtkclist.c (gtk_clist_button_press): only call grab_add
863         if pointer_grab succeeds.
864         (gtk_clist_unmap): remove pointer/widget grabs if needed.
865
866 Mon Jan 18 15:46:14 1999  Owen Taylor  <otaylor@redhat.com>
867
868         * gtk/gtklabel.c (gtk_label_init): Initialize
869         label->label_wc. (We allocate labels from
870         a memchunk)
871
872 Mon Jan 18 18:53:08 1999  Tim Janik  <timj@gtk.org>
873
874         * gtk/gtkscale.c (gtk_scale_set_digits): CLAMP digits into a
875         meaningfull range (we need to stay below a certain limit anyways
876         to avoid string buffer overflows).
877
878         * gtk/gtkvscale.c (gtk_vscale_pos_background): fixed up background
879         area calculations for GTK_POS_RIGHT and GTK_POS_BOTTOM.
880         * gtk/gtkhscale.c (gtk_hscale_pos_background): likewise.
881         (gtk_hscale_draw_value): safety CLAMP the value's x position for
882         GTK_POS_TOP and GTK_POS_BOTTOM, so we don't paint strings outside of
883         our allocation.
884
885         * gtk/gtkscale.c: implemented GtkScale::digits, GtkScale::draw_value
886         and GtkScale::value_pos arguments.
887
888 Mon Jan 18 14:26:17 1999  Owen Taylor  <otaylor@redhat.com>
889
890         * docs/Changes-1.2.txt: Some editing, a little more
891         detail.
892
893 Mon Jan 18 13:25:14 1999  Owen Taylor  <otaylor@redhat.com>
894
895         * gtk/gtkmenu.[ch]: Added gtk_menu_set_title() to
896         set the title of a menu in the torn-off state.
897
898         * gtk/gtkthemes.c (gtk_theme_engine_get): When loading
899         of theme engine fails, just warn and do without -
900         don't error out.
901
902         * gtk/gtkmain.c (gtk_check_version): s/to/too/.
903
904 Mon Jan 18 01:21:03 1999  Lars Hamann  <lars@gtk.org>
905
906         * gtk/gtkctree.c (draw_row): fixed auto resize bug.
907
908 Sun Jan 17 17:35:28 CST 1999 Shawn T. Amundson <amundson@gtk.org>
909
910         * Released GTK+ 1.1.13
911
912         * README:
913           INSTALL:
914           docs/gtk-config.1: ver=1.1.13
915
916 Mon Jan 18 00:22:54 1999  Lars Hamann  <lars@gtk.org>
917
918         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release):
919         block drag source signal handler during column resizes.
920         (gtk_clist_set_column_visibility): resize clist if needed.
921         (gtk_clist_map): raise resize windows to make resize
922         cursor visible again.
923
924 Sun Jan 17 22:47:15 1999  Tim Janik  <timj@gtk.org>
925
926         * gtk/gtkwidget.[hc]: 
927         * gtk/gtkspinbutton.[hc]: 
928         * gtk/gtkscrolledwindow.[hc]:
929         * gtk/gtkprogressbar.[hc]:
930         * gtk/gtkpreview.[hc]: 
931         * gtk/gtkobject.[hc]:
932         * gtk/gtkentry.[hc]: 
933         * gtk/gtkctree.[hc]:
934         * gtk/gtkcontainer.[hc]:
935         * gtk/gtkclist.[hc]:
936         removed deprecated functions: gtk_clist_set_border,
937         gtk_container_block_resize, gtk_container_unblock_resize,
938         gtk_container_need_resize, gtk_ctree_set_reorderable,
939         gtk_ctree_show_stub, gtk_ctree_set_use_drag_icons,
940         gtk_entry_adjust_scroll, gtk_object_class_add_user_signal,
941         gtk_preview_put_row, gtk_progress_bar_construct,
942         gtk_scrolled_window_construct, gtk_spin_button_construct,
943         gtk_widget_freeze_accelerators, gtk_widget_thaw_accelerators.
944
945         * gtk/gtkcheckmenuitem.c: removed binary variant of
946         gtk_check_menu_item_set_state, this is still defined in gtkcompat.h
947         though.
948
949         * docs/Changes-1.2.txt:
950         removed section about gtk_idle_remove_by_data vs.
951         gtk_timeout_remove_by_data, we actually don't even provide a
952         gtk_timeout_remove_by_data() function.
953         added a table with removed functions and their replacements.
954         
955         * NEWS: updates for 1.1.13.
956
957 Sun Jan 17 17:56:33 1999  Owen Taylor  <otaylor@redhat.com>
958
959         Patch from Felix Bellaby <felix@pooh.u-net.com>
960
961         * gdk/gdk.c: Use XmbSetWMProperties to set
962         the class/command on the loader window so that the
963         client machine is also set in the same place.
964         (For X11R5 sesssion management compatibility)
965
966         * gdk/gdk.c: (gdk_set_sm_client_id) Implementation
967         of function to set the session manager client ID.
968
969         * gdk/gdkwindow.c (gdk_window_new): Set 
970         WM_CLIENT_LEADER propertiy on all windows pointing
971         back to GDK's leader window.
972
973 Sun Jan 17 12:01:57 1999  Owen Taylor  <otaylor@gtk.org>
974
975         * gtk/gtkrc.c (gtk_rc_style_init): Allow a bg_pixmap
976         of "<none>", as there was no way to set the background
977         on all widget but some widgets. This is important
978         because Text widgets with background images are
979         slow and possibly ugly.
980
981 1999-01-17  Nat Friedman  <nat@nat.org>
982
983         * gtk/gtkscrolledwindow.c (DEFAULT_SCROLLBAR_SPACING): New macro.
984         Changed the spacing from 5 to 3.
985
986         * gtk/gtkmenubar.c (BORDER_SPACING): Changed the extra spacing on
987         the menubar from 2 to 0.
988
989 Sun Jan 17 11:51:17 1999  Owen Taylor  <otaylor@gtk.org>
990
991         * gtk/gtktext.c (gtk_text_move_cursor): Fix typo
992         [ gtk-mailund-990116-0: Thomas Mailund Jensen <mailund@daimi.au.dk> ]
993
994 Sun Jan 17 11:15:05 1999 Christopher Blizzard  <blizzard@appliedtheory.com>
995
996         * gtk+.spec: Update to version 1.1.13, change packager address.
997
998 Sun Jan 17 14:52:29 1999  Tim Janik  <timj@gtk.org>
999
1000         * gtk/gtkcompat.h:
1001         * gtk/gtkcheckmenuitem.[hc]:
1002         deprecated gtk_check_menu_item_set_state, people should use
1003         gtk_check_menu_item_set_active instead.
1004         
1005         * gtk/testgtk.c:
1006          s/gtk_check_menu_item_set_state/gtk_check_menu_item_set_active/.
1007
1008 Sun Jan 17 05:19:14 1999  Tim Janik  <timj@gtk.org>
1009
1010         * configure.in: incremented version number to 1.1.13, bin age 0,
1011         interface age 0.
1012
1013         * gtk/gtkmain.c (gtk_idle_remove_by_data): use g_idle_remove_by_data to
1014         remove idles, so `data' cannot conflict with other sources.
1015
1016         * gtk/gtkcompat.h: define gtk_style_apply_default_pixmap here.
1017
1018         * gtk/gtkstyle.[hc]: removed gtk_style_apply_default_pixmap.
1019         (struct _GtkStyle): reordered GtkStyleClass*klass; member.
1020
1021 Sat Jan 16 19:42:48 1999  George Lebl  <jirka@5z.com>
1022
1023         * gtk/gtktooltips.c: for NO_WINDOW widgets, add their allocation.y
1024           to the position of the tooltip. This fixes tooltip positioning
1025           problems with some widgets such as a checkbox.
1026
1027 Sat Jan 16 14:01:53 1999  Stuart Parmenter <pavlov@gtk.org>
1028
1029         * gtk/gtklayout.c (gtk_layout_put): check for child widget being NULL
1030
1031 Sat Jan 16 05:02:22 1999  Lars Hamann  <lars@gtk.org>
1032
1033         * gtk/gtkclist.c (gtk_clist_button_press): fixed double click bug.
1034
1035 Fri Jan 15 19:16:42 1999  Tim Janik  <timj@gtk.org>
1036
1037         * gtk/Makefile.am: define GTK_DISABLE_COMPAT_H for compilation of gtk
1038         code.
1039
1040         * gtk/gtkrc.c (gtk_rc_style_unref): added an assertment.
1041
1042         * gtk/gtkcompat.h:
1043         * gtk/gtklabel.h: 
1044         don't provide compatibility defines if GTK_DISABLE_COMPAT_H is defined.
1045
1046         * gtk/gtkstyle.h:
1047         * gtk/gtkstyle.c: coding style, indentation and alignment fixups.
1048         (gtk_draw_string): 
1049         (gtk_paint_string): 
1050         (gtk_draw_polygon):
1051         (gtk_style_set_background): fixed assertments.
1052         (gtk_default_draw_ramp): 
1053         (gtk_default_draw_cross): 
1054         (gtk_default_draw_oval): issue warnings since these functions aren't
1055         yet implemented.
1056
1057         * gdk/gdkwindow.c:
1058         (gdk_window_hide): only unmap window if already mapped.
1059         (gdk_window_show): only map window if !mapped.
1060         (gdk_window_internal_destroy): destroyed windows can't be mapped.
1061
1062         * gtk/gtkwidget.c (gtk_widget_event): don't ignore expose events just
1063         because a resize is queued on a widget, we rely on the expose events
1064         now.
1065
1066 Fri Jan 15 10:22:21 1999  Owen Taylor  <otaylor@redhat.com>
1067
1068         * gtk/gtkwidget.c (gtk_widget_class_init): 
1069         nparams for selection_get should be 3, not 2.
1070         [ From Damon Chaplin <damon@karuna.freeserve.co.uk> ]
1071
1072         * gtk/gtkeventbox.c (gtk_event_box_paint): Add a paint
1073         routine so queued redraws work inside event boxes.
1074
1075 Thu Jan 14 17:47:37 1999  Owen Taylor  <otaylor@redhat.com>
1076
1077         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Only
1078          redraw character under cursor when not displaying 
1079         highlighted selection.
1080
1081         * gdk/gdkrgb.c (gdk_rgb_init): Add in a cast to
1082         gpointer to make IRIX cc happy.
1083
1084 Thu Jan 14 12:29:50 1999  Owen Taylor  <otaylor@redhat.com>
1085
1086         * gtk/gtkcheckbutton.c (gtk_check_button_draw): Restructure
1087         the drawing code to remove a bit of duplication - 
1088         and to remove a call to gtk_widget_draw_focus()
1089         that queues a redraw when an expose occurs.
1090
1091         * gtk/gtklabel.c (gtk_label_expose): Fix up handling
1092           of ypadding.
1093
1094         * gtk/gtknotebook.c (gtk_notebook_draw): If we redraw
1095           the whole widget, also redraw the corresponding
1096           areas of the child widget. (have_visible_child 
1097           still has some problems)
1098
1099         * gdk/gdkpixmap.c: Change some g_new's to g_new0 so
1100           that fields unused for pixmaps get initialzized
1101           sanely.
1102
1103         * gdk/gdk.h gdk/gdkwindow.c gdk/gdkprivate.h: Add new calls
1104           gdk_window_is_visible() and gdk_window_is_viewable()
1105           and a mapped flag to the window private structure.
1106         
1107         * gtk/gtkbin.c gtk/gtkclist.c gtk/gtkfixed.c gtk/gtkitem.c
1108           gtk/gtklayout.c gtk/gtklist.c gtk/gtkmenushell.c
1109           gtk/gtknotebook.c gtk/gtkpaned.c gtk/gtktree.c
1110           gtk/gtktreeitem.c gtk/gtkviewport.c: 
1111         Map windows after mapping children.
1112         
1113         * gtk/gtkwidget.c (gtk_widget_clip_rect): Handle 
1114         rectangles completely clipped away correctly.
1115
1116         * gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
1117         call gtk_widget_draw if width or height is 0.
1118
1119         * gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
1120         rely on GTK_REDRAW_PENDING after we've cleared
1121         it. (This was causing draw-combining to not
1122         happen at all).
1123
1124         * gtk/gtkbin.c gtk/gtkscale.c: Remove uneccessary calls
1125         to gtk_widget_queue_draw() when mapping.
1126
1127 Thu Jan 14 11:29:53 1999  Owen Taylor  <otaylor@redhat.com>
1128
1129         * gtk/gtkdnd.c (gtk_drag_get_event_action): Make
1130         MOD1-drag also do action ask.
1131
1132         * gtk/gtkdnd.c (gtk_drag_button_release_cb): Send the
1133         button-release event we simulate to get grabs released,
1134         with a window of GDK_ROOT_PARENT instead of the actual 
1135         widget. This is a bad hack in some sense, but seems
1136         to work nicely. (It's sort of like what you would
1137         if you grabbed on button press, then the user 
1138         released outside of the widget.)
1139
1140 Thu Jan 14 20:29:16 1999  Owen Taylor  <otaylor@redhat.com>
1141
1142         * gtk/gtkstyle.[ch] (gtk_style_apply_default_background): 
1143         Change copy_area => !set_bg. Use tile instead of 
1144         gdk_window_copy_area when drawing without !set_bg.
1145         
1146         This does mess up timj's neat check-button example,
1147         but is consistent with how we interpret background
1148         pixmaps everywhere else in the default scheme.
1149
1150         Restructure code for clarity.
1151
1152 Thu Jan 14 19:19:51 1999  Owen Taylor  <otaylor@redhat.com>
1153
1154         * gdk/gdkevents.c: Do all event processing in
1155         dispatch() instead of prepare() and check().
1156
1157 Wed Jan 13 22:34:29 1999  Owen Taylor  <otaylor@redhat.com>
1158
1159         * gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkhandlebox.c
1160         gtk/gtkframe.c gtk/gtk[hv]box.c gtk[hv]paned.c gtk/gtklist.c
1161         gtkmenu.c gtkmenuitem.c gtkmenubar.c gtknotebook.c
1162         gtk/gtkscrolledwindow.c gtk/gtktable.c gtk/gtktree.c
1163         gtk/gtktreeeitem.c gtk/gtkviewport.c
1164         
1165         Fix up comparisons of signed and unsigned ints to avoid 
1166         assigning negative widths/heigths.
1167
1168 Wed Jan 13 21:18:41 1999  Owen Taylor  <otaylor@redhat.com>
1169
1170         * acinclude.m4 (ac_result): Unset CATOBJEXT so
1171         that the macros and Makefiles correctly handle
1172         disabling NLS when no gettext is found.
1173
1174 Wed Jan 13 20:14:32 1999  Tim Janik  <timj@gtk.org>
1175
1176         * gtk/gtkarg.c (gtk_arg_copy): in comparisions with GTK_TYPE_STRING, use
1177         the fundamental type to catch GTK_TYPE_IDENTIFIER as well.
1178
1179         * gtk/gtkmenushell.c:
1180         (gtk_real_menu_shell_activate_current):
1181         (gtk_menu_shell_button_release): asure that we only activate sensitive
1182         menu items, reported by Dave Cole <dave@dccs.com.au>.
1183
1184 Wed Jan 13 13:28:00 1999  Tim Janik  <timj@gtk.org>
1185
1186         * gtk/gtkwidget.c: eliminate queue_clears or queue_draws where we know
1187         that expose events will be generated.
1188         (gtk_widget_map): only queue_draw for NO_WINDOW widgets.
1189         (gtk_widget_unmap): only queue_clear_child for NO_WINDOW widgets.
1190         (gtk_widget_size_allocate): we don't need a queue_clear on changing
1191         allocations of !NO_WINDOW widgets, we do still need a full redraw for
1192         them though.
1193
1194         * gtk/gtklabel.c (gtk_label_set_text): check whether the new string
1195         actually differs from the original.
1196
1197 Tue Jan 12 22:50:44 PST 1999 Manish Singh <yosh@gimp.org>
1198
1199         * acinclude.m4
1200         * ltconfig
1201         * ltmain.sh: upgrade to libtool 1.2d (with fixes for irix6 and osf)
1202
1203 Tue Jan 12 18:30:51 1999  Owen Taylor  <otaylor@redhat.com>
1204
1205         * gtk/testdnd.c (label_drag_data_received): Add 
1206         a drag_data_received handler for the label.
1207
1208 Tue Jan 12 15:01:50 1999  Owen Taylor  <otaylor@redhat.com>
1209
1210         * gdk/gdkevents.c: Removed the putback_events queue, 
1211         since it was causing problems with event ordering -
1212         just keep a single queue. If we need it, we can
1213         add priorities to events.
1214
1215         * gdk/gdkevents.c: Annotate events with flags - we allocate
1216         a GdkEventPrivate structure in gdk_event_new() and use these
1217         flags to mark an event being translated as "pending" -
1218         I.e., not yet ready to be dequeued. So we can put
1219         the event on the queue and get the order of the
1220         events right. (This solves the double-click problems)
1221         
1222         * gdk/gdk.h gdk/gdkevents.h: Add gdk_event_peek() to get a copy
1223         of the next event on the event queue.
1224         
1225         * gtk/gtkmain.c (gtk_main_do_event): Use gdk_event_peek()
1226         to check the next event without causing event queue
1227         reordering.
1228
1229 Tue Jan 12 15:41:20 1999  Owen Taylor  <otaylor@redhat.com>
1230
1231         * gtk/gtklabel.c (gtk_label_expose): Minor fix
1232         to handling of misc->[x/y]pad
1233
1234 Tue Jan 12 14:31:43 1999  Owen Taylor  <otaylor@redhat.com>
1235
1236         * gtk/gtkstyle.[ch] (gtk_style_apply_default_pixmap): 
1237         Add back as wrapper function to restore source/binary 
1238         compatibility. grrrr.
1239
1240 Tue Jan 12 13:47:07 1999  Tim Janik  <timj@gtk.org>
1241
1242         * reworked the redrawing heuristics somewhat, this fixed a bunch of
1243         existing redrawing problems and majorly reduces overall redrawing needs
1244         during normal operation. basically we now only queue redraws when
1245         neccessary and much rely on the draw_area coalescing code in gtkwidget.c
1246         to optimize the queued portions. widgets will now upon reallocation only
1247         get redrawed if their allocation has changed. upon hide/show only the
1248         area allocated by the child will be queued for the parent, this has the
1249         side effect that parents which change their appearance in dependance on
1250         the numer of visible children have to keep track of their children's
1251         visiblity and eventually fully redraw themselves. this is a minor
1252         constrain with great benefits in terms of redraw reduction, and only got
1253         triggered by the notebook widget.
1254
1255         * gtk/gtkwidget.c:
1256         (gtk_widget_queue_clear): don't bother if width and height == 0.
1257         (gtk_widget_queue_clear_child): new static function to queue a redraw of
1258         the area obscured by a child on a parent.
1259         (gtk_widget_queue_resize): queue_clear the widget if it is drawable.
1260         (gtk_widget_show): queue resize on the widget before showing.
1261         (gtk_widget_hide): queue resize on the widget after hiding.
1262         (gtk_widget_map): queue_draw the widget after mapping.
1263         (gtk_widget_unmap): queue_clear_child the widget.
1264         (gtk_widget_size_allocate): queue_clear_child and queue_draw if the
1265         widget's allocation changed.
1266         (gtk_widget_unparent): queue_clear_child so the parent redraws obscured
1267         portions.
1268         (gtk_widget_real_show):
1269         (gtk_widget_real_hide):
1270         (gtk_widget_real_map):
1271         (gtk_widget_real_unmap):
1272         (gtk_widget_real_size_allocate): don't bother with redraw queueing,
1273         descendants that override these functions don't do either and we handle
1274         all redrawing/resizing related stuff before or after the signal emission
1275         now.
1276
1277         * gtk/gtkcontainer.c:
1278         (gtk_container_resize_children): don't bother about redrawing anymore
1279         since gtk_widget_size_allocate handles that for us now.
1280
1281         * gtk/gtknotebook.h:
1282         * gtk/gtknotebook.c:
1283         added a flag have_visible_child to indicate whether we need to draw
1284         non child related portions at all, e.g. shadows etc.
1285         (gtk_notebook_draw): if have_visible_child changed, do a full paint
1286         instead of updating a small area only.
1287
1288 Mon Jan 11 20:44:35 1999  Tim Janik  <timj@gtk.org>
1289
1290         * gtk/gtkstyle.c: changed gtk_style_apply_default_pixmap to
1291         gtk_style_apply_default_background which takes an extra argument
1292         copy_area to determine NO_WINDOW widget pixmap copying.
1293         changed callers accordingly.
1294
1295         * gtk/gtktogglebutton.c:
1296         (gtk_toggle_size_allocate): 
1297         (gtk_toggle_button_expose): 
1298         (gtk_toggle_button_paint): avoid messing with our parent's window if
1299         toggle_button->draw_indicator == TRUE and we are a NO_WINDOW widget.
1300
1301         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): draw
1302         the draw_indicator with GTK_STATE_ACTIVE if the toggle button is active.
1303
1304         * gtk/check-n.xpm:
1305         * gtk/check-y.xpm:
1306         * gtk/testgtkrc: set pixmaps for ACTIVE and NORMAL check button
1307         bg_pixmaps.
1308
1309 Mon Jan 11 23:52:58 1999  Lars Hamann  <lars@gtk.org>
1310
1311         * gtk/gtklist.c (gtk_list_signal_drag_begin)
1312         (gtk_list_drag_begin): end drag selections if necessary.
1313
1314         * gtk/gtkspinbutton.c/h (gtk_spin_button_update): made function
1315         public. Manually force synchronization of spin button text and
1316         adjustment value.
1317
1318 Mon Jan 11 15:23:32 1999  Tim Janik  <timj@gtk.org>
1319
1320         * gtk/gtktogglebutton.c: eliminated some queue_draws when invoking
1321         gtk_widget_set_state, since that cares about redrawing already.
1322         some code cleanups.
1323
1324         * gtk/gtktogglebutton.[hc]:
1325         * gtk/gtkfontsel.c:
1326         * gtkgamma.c:
1327         s/gtk_toggle_button_set_state/gtk_toggle_button_set_active/ since
1328         set_state is already taken by gtkwidget.h.
1329
1330         * gtk/gtkcompat.h: #define gtk_toggle_button_set_state
1331         gtk_toggle_button_set_active.
1332         
1333         * gtk/gtkstyle.c: some indentation cleanups.
1334
1335 Mon Jan 11 15:12:33 1999  Tim Janik  <timj@gtk.org>
1336
1337         * gtk/gtktogglebutton.c (gtk_toggle_button_set_mode): take previous
1338         visibility state into account when unrealizing.
1339
1340 Mon Jan 11 10:45:28 1999  Owen Taylor  <otaylor@redhat.com>
1341
1342         * gtk/gtkdnd.c: Only remove handlers for motion/button_release
1343         at drop, remove "selection_get" handler later.
1344
1345 Mon Jan 11 13:31:49 1999  Tim Janik  <timj@gtk.org>
1346
1347         * gtk/gtktypeutils.[hc]: removed Paolo Molaro's type creation hooks
1348         again, since they 1) don't care about infinite recursion (likely
1349         to achive), 2) we are in feature freeze for 1.2. this definitely
1350         deserves a sane implementation in 1.3 though (but without a hook
1351         return value, without seq_id hackery and with recursion checks).
1352
1353 Mon Jan 11 13:18:37 1999  Tim Janik  <timj@gtk.org>
1354
1355         * gtk/gtkwindow.c:
1356         (gtk_window_key_release_event): 
1357         (gtk_window_key_press_event): only pass key events to the focus widget
1358         if it is sensitive.
1359
1360         * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): don't popup the
1361         submenu if it isn't sensitive.
1362         (gtk_menu_item_paint): state_type doesn't need to be reset to
1363         GTK_STATE_INSENSITIVE if the widget is insensitive anyways.
1364
1365         * gtk/gtkcontainer.c (gtk_container_real_focus): 
1366         * gtk/gtklist.c (gtk_list_focus): 
1367         * gtk/gtkmenushell.c (gtk_menu_shell_move_selected): 
1368         * gtk/gtknotebook.c (gtk_notebook_focus): 
1369         s/GTK_WIDGET_SENSITIVE/GTK_WIDGET_IS_SENSITIVE/ since a widgets
1370         sensitivity is determined through the parent as well,
1371         GTK_WIDGET_SENSITIVE is only of interest inside gtkwidget.c, everywhere
1372         else GTK_WIDGET_IS_SENSITIVE (widget) needs to be used to check for
1373         sensitivity.
1374
1375         * gtk/gtkaccelgroup.c (gtk_accel_group_activate): don't activate
1376         object if it is an insensitive widget.
1377
1378 Mon, 11 Jan 1999 08:09:08 +0100 Paolo Molaro <lupus@debian.org>
1379
1380         * gtk/gtktypeutils.[ch]: add gtk_type_{add,remove}_creation_hook().
1381         You can have a notification when a type is created.
1382
1383 1999-01-11  Tim Janik  <timj@gtk.org>
1384
1385         * gtk/gtkmain.c (gtk_propagate_event): added an assertement.
1386
1387 Sun Jan 10 14:45:37 1999  Owen Taylor  <otaylor@gtk.org>
1388
1389         * gtk/gtktext.c (text_properties_equal): Fixed
1390         cut and paste bug when comparing text property
1391         bg colors.
1392         [ Matt Aubury <Matt.Aubury@comlab.ox.ac.uk> ]
1393
1394 1999-01-10  Tim Janik  <timj@gtk.org>
1395
1396         * gtk/gtksignal.c (gtk_signal_lookup): if the lookup failed, try
1397         to initialize the object class and reattempt the lookup, reported
1398         by Paolo Molaro <lupus@lettere.unipd.it>.
1399
1400 Sat Jan  9 17:36:20 1999  Owen Taylor  <otaylor@redhat.com>
1401
1402         * configure.in (ALL_LINGUAS): Added cs to ALL_LINGUAS.
1403
1404 Sat Jan  9 17:27:49 1999  Owen Taylor  <otaylor@redhat.com>
1405
1406         * gtk/gtkfilesel.c (gtk_file_selection_populate):
1407         Mark another string for internationalization.
1408         [ Stanislav Brabec <utx@k332.feld.cvut.cz> ]
1409
1410 Sat Jan  9 14:02:08 1999  Owen Taylor  <otaylor@redhat.com>
1411
1412         * gtk/gtktooltips.c (gtk_tooltips_force_window): Set
1413         name "gtk-tooltips" on tip window so that a style
1414         can be set for tooltips.
1415
1416 Fri Jan  8 19:00:17 1999  Owen Taylor  <otaylor@redhat.com>
1417
1418         * gdk/gdkdnd.c (gdk_window_cache_filter): Fixed
1419         some list-manipulation breakage.
1420
1421         * gdk/gdkdnd.c (gdk_window_cache_destroy): Free 
1422         window cache structure.
1423
1424         * gtk/gtkdnd.c (gtk_drag_set_icon_pixmap): Set an
1425         event mask on the drag window so clicking on it
1426         doesn't pop up root menus, etc.
1427
1428         * gtk/gtkdnd.c (gtk_drag_button_release_cb): Remove
1429         signal handlers at button release.
1430
1431 Fri Jan  8 00:42:00 1999  Lars Hamann  <lars@gtk.org>
1432
1433         * gtk/gtkspinbutton.c (gtk_spin_button_get_value_as_int)
1434         (gtk_spin_button_get_value_as_float): call gtk_spin_button_update
1435         before returning a value
1436
1437         * gtk/gtkclist.c (gtk_clist_motion): don't allow 'drag selections'
1438         if clist is a drag source.
1439         (gtk_clist_drag_begin): remove pointer grabs, end ongoing selections.
1440
1441         * gtk/gtkctree.c (remove_grab): copy of clist function.
1442         (gtk_ctree_drag_begin): let clists drag_begin method set the
1443         source info struct.
1444
1445 Thu Jan  7 19:10:21 1999  Owen Taylor  <otaylor@redhat.com>
1446
1447         * gtk/gtkviewport.c (gtk_viewport_style_set): Fixes
1448         to drawing the background of the bin window 
1449         so that clearing and redrawing of child
1450         widgets work properly.
1451
1452         * gtk/gtkwidget.c (gtk_widget_idle_draw): Juggle around
1453         data so that if somebody triggers more redraw queuing
1454         from a expose_event handler, it doesn't confuse the
1455         heck out of GTK+. (But is highly liable to cause 
1456         an infinite loop...)
1457
1458 Thu Jan  7 12:31:41 1999  Owen Taylor  <otaylor@redhat.com>
1459
1460         * gtk/gtkselection.c (gtk_target_list_unref): Fix some
1461         more memory leaks.
1462
1463 Wed Jan  6 23:14:19 1999  Lars Hamann  <lars@gtk.org>
1464
1465         * gtk/gtkctree.c (gtk_ctree_drag_motion): fix for dnd bug reported
1466         by Bertrand Guiheneuf. Don't return FALSE if source widget != dest.
1467         widget.
1468
1469 Wed Jan 06 10:04:12 1999  Tristan Tarrant  <ttarrant@etnoteam.it>
1470
1471         * configure.in,po/it.po: added Italian translations
1472
1473 Tue Jan 05 21:18:00 1999  George Lebl  <jirka@5z.com>
1474
1475         * gtk/gtkmenu.c,gtk/gtkmenuitem.c,gtk/gtkeditable.c: free the
1476           event that was returned to us by gtk_get_current_event
1477
1478 Tue Jan  5 19:01:18 1999  Owen Taylor  <otaylor@redhat.com>
1479
1480         * gtk/gtkcolorsel.c (gtk_color_selection_dialog_init): Push
1481         GdkRGB's visual and colormap around the color selection
1482         dialog so that the window and the previews have the
1483         same colormap. If an app adds things to the colorsel
1484         dialog, it will have to take care of them itself.
1485
1486 Tue Jan  5 15:03:47 1999  Owen Taylor  <otaylor@redhat.com>
1487
1488         * gtk/gtkmain.c (gtk_propagate_event): Make 
1489         gtk_propagate_event() non-static, we need it in gtkdnd.c 
1490         so that the button-release we synthesize gets propagated
1491         correctly.
1492
1493         * gtk/gtkdnd.c: Use gtk_propagate_event() so
1494         release gets to a GtkList. But we can't really
1495         get this right without access to the windows
1496         event masks and doing X-style propagation ourselves.
1497
1498 Tue Jan  5 12:40:57 1999  Owen Taylor  <otaylor@redhat.com>
1499
1500         * gtk/gtkpreview.c: Add a size_allocate() routine 
1501         and set the size of the preview window equal
1502         to the area we are going to draw on, instead 
1503         of the entire allocation. Do this to avoid having 
1504         to set a parent-relative background.
1505         
1506 Tue Jan  5 11:51:32 1999  Owen Taylor  <otaylor@redhat.com>
1507
1508         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
1509         When redrawing the under-cursor character, don't
1510         redraw the terminating NULL.
1511         [ From: dov@imagic.weizmann.ac.il (Dov Grobgeld) ]
1512
1513 Tue Jan  5 11:31:55 1999  Owen Taylor  <otaylor@redhat.com>
1514          
1515         * gtk/gtkselection.c (gtk_target_list_unref): Free
1516         memory allocated for target lists.
1517
1518         * gtk/gtkdnd.c (gtk_drag_drop_finished): Release
1519         selections before destroying info structure.
1520
1521         * gdk/gdkdnd.c gdktypes.h (gdk_drag_get_protocol): Add
1522         new value GDK_DRAG_PROTO_NONE, use it for non-drag
1523         targets, to quiet Purify.
1524
1525         * gdk/gdkdnd.c (gdk_window_register_dnd): Set size
1526         of property properly.
1527
1528 Mon Jan  4 03:45:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
1529
1530         * Released GTK+ 1.1.12
1531
1532         * INSTALL:
1533           NEWS:
1534           README:
1535           configure.in:
1536           gtk+.spec:
1537           docs/gtk-config.1:
1538           gtk/gtkfeatures.h.in: version=1.1.12
1539
1540 1999-01-04  Sung-Hyun Nam  <namsh@lgic.co.kr>
1541
1542         * configure.in (ALL_LINGUAS): Added 'ko'.
1543
1544 Sun Jan  3 17:41:22 1999  Lars Hamann  <lars@gtk.org>
1545
1546         * gtk/gtkctree.c (real_tree_expand): fixed auto_resize bug
1547
1548 Sat Jan  2 03:54:30 1999  Tim Janik  <timj@gtk.org>
1549
1550         * gdk/gdk.h (GDK_PRIORITY_EVENTS): make this G_PRIORITY_DEFAULT.
1551
1552         * gdk/gdkevents.c (gdk_events_init): add the source and the poll fd with
1553         a priority of GDK_PRIORITY_EVENTS.
1554
1555 1999-01-02  Jeff Garzik  <jgarzik@pobox.com>
1556
1557         * configure.in, config.h.in, gdk/gdkimage.c:
1558         Removed features.h test.
1559
1560         * gdk/gdkdnd.c:
1561         Guard public functions against NULL pointer derefs.
1562
1563 Fri Jan  1 18:41:09 PST 1999 Manish Singh <yosh@gimp.org>
1564
1565         * gdk/gdk.c
1566         * gdk/gdkinputnone.h
1567         * gtk/gtkruler.c: casts to get rid of const warnings
1568
1569         * gtk/Makefile.am: fix gtktypebuiltins.h dependencies, and do a
1570         cmp so people don't whine about rebuilds
1571
1572         * gtk/gtknotebook.c: use g_snprintf on translated strings, so we
1573         don't get buffer overflows
1574
1575         * gtk/gtkrc.c: use g_strdup_printf instead of g_malloc/sprintf
1576         Plug some memleaks.
1577
1578 1999-01-01  Jeff Garzik  <jgarzik@pobox.com>
1579
1580         * configure.in, config.h.in:
1581         Check for features.h.
1582
1583         * gdk/gdkevents.c (gdk_event_put, gdk_events_queue):
1584         Fixed bug in linked list append logic by replacing hand-coded
1585         logic with a call to g_list_append.  Bug found by tml.
1586
1587         * gdk/gdkimage.c:
1588         'gcc -ansi -pedantic' on GNU/Linux spews warnings and errors
1589         in sys/ipc.h, including one specific admonishment to use
1590         _SVID_SOURCE or _XOPEN_SOURCE.  Manually defined the latter, and
1591         included features.h if present to obtain the necessary
1592         side-effects.
1593
1594         * gtk/gtkclist.c, gtk/gtkeditable.c:
1595         Eliminates comma-after-final-element warnings.
1596
1597         * gtk/gtkfontsel.c (gtk_font_selection_init):
1598         Fixed bug where an intl string was declared as _("x") in
1599         local var initializer.
1600
1601 1998-12-31  Jeff Garzik  <jgarzik@pobox.com>
1602
1603         * gtk/gtklabel.c (gtk_label_split_text_wrapped):
1604         word->space is now initialized correctly.
1605         Reported by Chi-Deok Hwang <cdhwang@sr.hei.co.kr>.
1606
1607 1998-12-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1608
1609         * gtk/gtkmain.c (gtk_main_do_event): Fix memory leak.
1610         gdk_event_put would make a copy of next_event, and next_event was
1611         not being freed.
1612
1613 Wed Dec 30 18:39:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1614
1615         * Released GTK+ 1.1.11
1616
1617         * INSTALL:
1618           NEWS:
1619           README:
1620           configure.in:
1621           gtk+.spec:
1622           docs/gtk-config.1:
1623           gtk/gtkfeatures.h.in: version=1.1.11
1624         
1625 1998-12-29  Owen Taylor  <otaylor@srv-19-29.roc.ny.frontiernet.net>
1626
1627         * gdk/gdkim.c (gdk_wcstombs): Fixed off-by-one
1628         error when computing length.
1629
1630 Thu Dec 24 14:35:48 1998  Jeff Garzik  <jgarzik@pobox.com>
1631
1632         * gdk/gdkevents.c, gdk/gdkim.c, gdk/gdkrgb.c, gdk/gdkwindow.c,
1633           gtk/gtkprogressbar.c:
1634         Pull in string.h for various mem*() and str*() functions,
1635         in an autoconf-friendly way.
1636
1637 Thu Dec 24 12:40:45 1998  Jeff Garzik  <jgarzik@pobox.com>
1638
1639         * gdk/gdkfont.c: removed unused var
1640         * gdk/gdkim.c: 64-bit cast
1641         * gtk/gtkaccelgroup.c: point to const data
1642         * gtk/gtkdnd.[ch]: (gtk_drag_dest_set, gtk_drag_source_set):
1643           Made const-correct.
1644         * gtk/gtkfontsel.c: kill uninitialized var warning
1645         * gtk/gtkselection.[ch]: (gtk_target_list_new,
1646           gtk_target_list_add_table, gtk_selection_add_targets):
1647           Made const-correct.
1648         * gtk/testgtk.c: 64-bit cast
1649
1650 Thu Dec 24 03:16:52 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1651
1652         * INSTALL:
1653           NEWS:
1654           README:
1655           configure.in:
1656           gtk+.spec:
1657           docs/gtk-config.1:
1658           gtk/gtkfeatures.h.in: version=1.1.10
1659
1660 Wed Dec 23 20:31:40 1998  Owen Taylor  <otaylor@redhat.com>
1661
1662         * gtk/gtklabel.c: Fix problem where empty labels were 
1663         getting a requisition height of zero, and trailing 
1664         newlines were being ignored.
1665
1666 Wed Dec 23 13:58:14 1998  Owen Taylor  <otaylor@redhat.com>
1667
1668         * gtk/gtklabel.c (gtk_label_parse_uline):
1669         label->label should be the mb text _after_ removing
1670         the underlines, not before.
1671
1672         * gtk/gtkmenu.c: Reverted Elliot's tearoff-menu-item
1673         title hack. If it deserves being done, it deserves
1674         being done right.
1675         
1676 1998-12-23  Elliot Lee  <sopwith@redhat.com>
1677
1678         * gtk/gtkmenu.c: Allow programmer to gtk_object_set_data(obj,
1679         "GtkTearoffMenuItem_window_title", ..) on a GtkMenuItem and have
1680         it be recognized. If we're getting the title out of the GtkLabel,
1681         then remove all underscores.
1682
1683 Tue Dec 22 17:01:43 1998  Owen Taylor  <otaylor@redhat.com>
1684
1685         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): 
1686         Request XmTRANFER_FAILURE on Motif drops not within
1687         a drop zone. I don't know why this is necessary,
1688         but it is.
1689
1690         * gdk/gdkdnd.c (gdk_drop_reply): Fixed error where
1691         Motif flag field in response was getting wrong
1692         values.
1693
1694 Tue Dec 22 15:55:39 1998  Owen Taylor  <otaylor@redhat.com>
1695
1696         * gtk/gtkoptionmenu.c (gtk_option_menu_button_press): 
1697         Return TRUE for button press events we handle.
1698         (Allows option menus in radio buttons to work...)
1699
1700 Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
1701
1702         * gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
1703         when we've already found a widget, skip all checks
1704         for subsequent children.
1705
1706         * gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
1707         !MAPPED, not !VISIBLE, since a widget (like a notebook
1708         page), can be VISIBLE, but !REALIZED or !MAPPED.
1709
1710         * gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
1711         not foreach().
1712
1713 Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
1714
1715         * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
1716
1717 Sun Dec 20 04:48:59 1998  Tim Janik  <timj@gtk.org>
1718
1719         * gdk/gdk.h (GDK_PRIORITY_EVENTS): export the priority at which
1720         events are processed.
1721
1722         * gtk/gtk[main|signal|container].[ch]: removed deprecated _interp
1723         variants: gtk_container_foreach_interp, gtk_idle_add_interp,
1724         gtk_timeout_add_interp, gtk_signal_connect_interp.
1725
1726 Sat Dec 19 18:45:30 PST 1998 Shawn T. Amundson <amundson@gtk.org>
1727
1728         * configure.in: added sv to ALL_LIGNUAS
1729
1730 Sat Dec 19 22:49:40 1998  Tim Janik  <timj@gtk.org>
1731
1732         * gtk/gtktypeutils.c (gtk_type_query): eek, fixed an embarrasing bug
1733         that caused this function to always return NULL (noticed by marius
1734         vollmer).
1735
1736 Sat Dec 19 17:28:30 1998  Owen Taylor  <otaylor@redhat.com>
1737
1738         * configure.in: Don't add the gthread libs to 
1739         GLIB_LIBS either, or -lgthread -lpthread will get 
1740         pulled into all applications because of shlib deps.
1741
1742         * gtk/gtkmain.h gtk/gtkwidget.c gtk/gtk gdk/gdk: 
1743         Use GLIB's priority #define. Revise scale of 
1744         priorities.
1745
1746 Sat Dec 19 03:44:29 PST 1998 Manish Singh <yosh@gimp.org>
1747
1748         * gtk/gtkmain.c: always run a g_main_iteration, even if
1749         there are no active main loops. This fixes the gimp splash
1750         screen.
1751
1752 Sat Dec 19 05:37:51 1998  Tim Janik  <timj@gtk.org>
1753
1754         * gtk/gtklabel.c (gtk_label_expose): removed return_if_fail
1755         (label->words != NULL) since that's a valid case when the label
1756         is empty, or just default constructed.
1757         fixed indentation prototype arguments and braces in some places.
1758         also, pointer comparisions and initializations are done with NULL
1759         not 0, there's a reason GLib defines NULL.
1760
1761         * gdk/gdkevents.c (gdk_events_pending): return (queued_events ||
1762         putback_events) so this again returns whether events are pending,
1763         not whether other sources like idles are pending.
1764
1765         * gtk/gtkmain.c (gtk_main_iteration_do): 
1766         (gtk_main_iteration): return whether the loop is done, not whether
1767         something got dispatch to restore the original behaviour (yosh: this
1768         fixes code like in GleSelector).
1769
1770 Fri Dec 18 19:20:45 PST 1998 Manish Singh <yosh@gimp.org>
1771
1772         * gtkbutton.[ch]
1773         * gtktogglebutton.c: s/(enter|leave)_button/$1/g, since pthreads.h
1774         no longer conflicts
1775         
1776 Sat Dec 19 01:56:13 1998  Lars Hamann  <lars@gtk.org>
1777
1778         * gtk/gtkclist.c (gtk_clist_button_press): fixed GDK_2BUTTON_PRESS
1779         bug.
1780
1781 Fri Dec 18 15:30:43 PST 1998 Manish Singh <yosh@gimp.org>
1782
1783         * configure.in: add ja to ALL_LINGUAS
1784
1785 Fri Dec 18 15:19:54 1998  Owen Taylor  <otaylor@redhat.com>
1786
1787         * gtk/gtksocket.c (gtk_socket_filter_func): Marked
1788         plug window as destroyed before destroying the 
1789         window.
1790
1791 Fri Dec 18 14:17:14 1998  Owen Taylor  <otaylor@redhat.com>
1792
1793         * gtk/gtkmenu.c (gtk_menu_popup): Set the usize on the
1794         tearoff window so when we reparent the window out,
1795         the window doesn't shrink down.
1796
1797 1998-12-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1798
1799         * configure.in: do not export the glib flags for thread support to
1800         gtk-config.
1801
1802 Fri Dec 18 01:32:59 1998  Tim Janik  <timj@gtk.org>
1803
1804         * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
1805         get the original behaviour back, i.e. the event queue needs to be flushed
1806         after a main loop has been quitted.
1807         (gtk_main): add/remove the current main loop to/from the main loop
1808         before/after init/quit functions have been exected to preserve the
1809         original gtk_main_quit() behaviour.
1810
1811 Thu Dec 17 23:48:29 1998  Tim Janik  <timj@gtk.org>
1812
1813         * gdk/gdkevents.c (gdk_events_init): changed argument order in call
1814         to g_main_add_poll() to match recent glib changes.
1815
1816 Thu Dec 17 20:33:28 1998  Owen Taylor  <otaylor@redhat.com>
1817
1818         * gtk-config.in: Add @INTLLIBS@. 
1819         gtk-scier-981116-0.patch  Sean Cier <scier@PostHorizon.com>) ]
1820
1821         * gtk/gtkcolorsel.c gtk/gtkfilesel.c gtk/gtkfontsel.c
1822           gtk/gtkgamma.c gtk/gtkinputdialog.c 
1823           gtk/gtknotebook.c gtk/gtkrc.c gtk/gtkthemes.c
1824           gtk/gtktipsquery.c: 
1825         
1826         Applied parts of gtk-egger-981215-1 [ Daniel Egger
1827         <Daniel.Egger@t-online.de> ] marking additional strings for
1828         internationalization.
1829         
1830         * po/nl.po: Added Dutch translation from 
1831         Paul Siegmann <pauls@euronet.nl>.
1832         
1833 Thu Dec 17 18:25:52 1998  Owen Taylor  <otaylor@redhat.com>
1834
1835         * gtk/gtkdnd.c (gtk_drag_drop_finished): Remove the
1836         info tag from the context so if the source unexpectedly
1837         responds in the future, we do nothing properly.
1838
1839 Thu Dec 17 18:24:41 1998  Owen Taylor  <otaylor@redhat.com>
1840
1841         * gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): Handle
1842         the case where one side of the the pane is empty.
1843
1844         * gtk/gtkfilesel.c (gtk_file_selection_init): Set
1845         dir_title before using it. (Pointed out by
1846         Lavoie Philippe <lavoie@zeus.genie.uottawa.ca>)
1847         
1848 Thu Dec 17 10:53:20 1998  Owen Taylor  <otaylor@redhat.com>
1849
1850         * gtk/gtklabel.c (gtk_label_set_text): Free 
1851         previous label->label_wc.
1852
1853         * gtk/testgtkrc: Leave font, not fontset commented
1854         in by default.
1855
1856 1998-12-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1857
1858         * gdk/gdkim.c: Define gdk_use_mb outside USE_XIM guard. Removed
1859         unnecessary USE_XIM guard inside another. Made gdk_use_mb
1860         static. Compile gdk_set_locale also if not USE_XIM.     
1861
1862 Thu Dec 17 00:26:01 1998 Shawn T. Amundson <amundson@gtk.org>
1863
1864         * Released GTK+ 1.1.9
1865
1866         * INSTALL:
1867           NEWS:
1868           README:
1869           configure.in:
1870           gtk+.spec:
1871           gtk/gtkfeatures.h.in:
1872           docs/gtk-config.1: version=1.1.9
1873
1874 Wed Dec 16 21:20:00 PST 1998 Manish Singh <yosh@gimp.org>
1875
1876         * autogen.sh: rm -rf intl breaks --disable-nls, put it back
1877
1878         * gtkbutton.[ch]
1879         * gtktogglebutton.c: s/(enter|leave)/$1_button/g.
1880         Digital: 1 GTK+: 0 (for now)
1881
1882 Wed Dec 16 22:38:22 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1883
1884         * gdk/gdkevents.c: updated call to g_main_add_poll
1885           instead of g_main_poll_add
1886
1887 Wed Dec 16 23:32:05 1998  Owen Taylor  <otaylor@redhat.com>
1888
1889         * gtk/gtklabel.c (gtk_label_expose): Remove 
1890         unnecessary cast.
1891
1892 Wed Dec 16 22:50:52 1998  Owen Taylor  <otaylor@redhat.com>
1893
1894         * gdk/gdk.c gdk/gdkim.c: Check for broken glibc 2.0 
1895         mb functions, and avoid them.
1896
1897 Wed Dec 16 16:57:55 1998  Owen Taylor  <otaylor@redhat.com>
1898
1899         * gdk/gdkevents.c (gdk_events_queue): Don't
1900         call XPending() if we have putback events.
1901
1902 Wed Dec 16 16:04:41 1998  Owen Taylor  <otaylor@redhat.com>
1903
1904         * gtk/gtklabel.c (gtk_label_expose): Do nothing
1905         on empty string, quietly.
1906
1907 Wed Dec 16 15:36:19 1998  Owen Taylor  <otaylor@redhat.com>
1908
1909         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
1910         Redraw the character under the cursor when removing
1911         the cursor.
1912
1913 Wed Dec 16 13:06:17 1998  Owen Taylor  <otaylor@redhat.com>
1914
1915         * gdk/gdk.[ch] gtk/gtkmain.[ch] gtk/gtkprivate.h: Move main
1916         thread lock back to GDK - we need it there for locking
1917         when translating events. Rename things appropriately.
1918
1919 Wed Dec 16 11:44:21 1998  Owen Taylor  <otaylor@redhat.com>
1920
1921         * gtk/gtkrange.c (gtk_range_expose): Fix a x/y typo.
1922
1923 Wed Dec 16 10:20:27 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1924
1925         * Released GTK+ 1.1.8
1926
1927         * ChangeLog:
1928           INSTALL:
1929           README:
1930           gtk+.spec:
1931           docs/gtk-config.1: version=1.1.8
1932
1933 1998-12-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1934
1935         * gdk/gdkglobals.c: Define gdk_xim_ic only, if USE_XIM is defined.
1936
1937 Wed Dec 16 07:03:32 1998  Tim Janik  <timj@gtk.org>
1938
1939         * gtk/gtkwidget.h: 
1940         * gtk/gtkwidget.c: s/USER_DRAW/APP_PAINTABLE/. provided
1941         gtk_widget_set_app_paintable() which users can use to make
1942         a widget paintable for the application. changed other files accordingly.
1943
1944 Wed Dec 16 05:26:32 1998  Tim Janik  <timj@gtk.org>
1945
1946         * configure.in: version bump to 1.1.8, binary age 0, interface age 0,
1947         depend on GLib 1.1.8.
1948
1949         * gdk/gdkprivate.h:
1950         * gdk/gdkglobals.c: removed last Gdk threads specific bits.
1951
1952         * gtk/gtkmain.c (gtk_init): s/g_thread_supported/g_thread_supported()/.
1953
1954         * gtk/gtkprivate.h: changed GTK_THREADS_ENTER and GTK_THREADS_LEAVE
1955         to function macros GTK_THREADS_ENTER() and GTK_THREADS_LEAVE().
1956         honour G_THREADS_ENABLED in the definition of GTK_THREADS_ENTER()
1957         and GTK_THREADS_LEAVE(). changed callers accordingly.
1958
1959 Tue Dec 15 21:26:26 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1960
1961         * autogen.sh: warn if glib.m4 or gettext.m4 are not found 
1962           in aclocal's directory.
1963
1964 Tue Dec 15 21:36:14 1998  Owen Taylor  <otaylor@redhat.com>
1965
1966         * gtk/testgtk.c (create_layout): Create buttons,
1967         not combos again.
1968
1969 1998-12-15  Joel Becker  <jlbec@ocala.cs.miami.edu>
1970
1971         * autogen.sh: reordered gettextize and aclocal, because
1972         gettextize was messing up aclocal.m4.
1973
1974 Tue Dec 15 22:30:44 1998  Lars Hamann  <lars@gtk.org>
1975
1976         * gtk/gtkclist.h : 
1977         removed clist flag : GTK_CLIST_DRAG_SELECTION
1978         added flags : GTK_CLIST_REORDERABLE, GTK_CLIST_USE_DRAG_ICONS,
1979         GTK_CLIST_DRAW_DRAG_LINE, GTK_CLIST_DRAW_DRAG_RECT
1980         (GtkCListDragPos) : new enum for DND
1981         (GtkButtonAction) : new enum of possible mouse button actions
1982         (struct _GtkCList): added button_actions array.
1983         Added drag_button and click_cell struct, to store cell and
1984         mouse button of last button_press_event
1985         
1986         (struct _GtkCListClass): new class method draw_drag_highlight.
1987         (gtk_clist_set_reorderable) (gtk_clist_set_use_drag_icons) :
1988         new functions. Moved from gtkctree.h. Now clist is reorderable
1989         as well.
1990         (gtk_clist_set_button_actions) new function to customize mouse
1991         button actions.
1992
1993         * gtk/gtkclist.c:
1994         (gtk_clist_drag_begin)
1995         (gtk_clist_drag_motion)
1996         (gtk_clist_drag_leave)
1997         (gtk_clist_drag_end)
1998         (gtk_clist_drag_drop)
1999         (gtk_clist_drag_data_get)
2000         (gtk_clist_drag_data_received) : new dnd widget methods to
2001         implement clists reorderability via DND
2002
2003         (remove_grab) : new function. remove mouse grab if necessary.
2004         (draw_drag_highlight) : new method. Draw dnd highlight depending
2005         on clist flags GTK_CLIST_DRAW_DRAG_LINE and GTK_CLIST_DRAW_DRAG_RECT
2006
2007         (gtk_clist_class_init): added object args "reorderable" and
2008         "use_drag_icons"
2009
2010         (gtk_clist_button_press) (gtk_clist_button_release) :
2011         use button_actions array to decide which action to perform.
2012         (gtk_clist_motion) : start reorder operation if necessary.
2013
2014         * gtk/gtkctree.h :
2015         (struct _GtkCTree): removed drag_icon, icon_widht, icon_height,
2016         drag_row, drag_source, drag_target, reorderable, use_icons,
2017         in_drag, drag_rect
2018         (gtk_ctree_set_reorderable) :  deprecated function.
2019         use gtk_clist_set_reorderable instead.
2020         (gtk_ctree_set_use_drag_icons) : deprecated function.
2021         use gtk_clist_set_use_drag_icons instead.
2022
2023         * gtk/gtkctree.c :
2024         (gtk_ctree_class_init): removed object args "reorderable" and
2025         and "use_drag_icons"
2026
2027         (draw_xor_line) (draw_xor_rect) (create_drag_icon) (check_cursor)
2028         (tree_toggle_selection) (set_mouse_cursor) : removed
2029         
2030         (draw_drag_highlight) : new clist method. replacement for
2031         draw_xor_line and draw_xor_rect functions
2032         (check_drag) renamed check_cursor function
2033
2034         (gtk_ctree_drag_begin)
2035         (gtk_ctree_drag_motion)
2036         (gtk_ctree_drag_data_received) : new dnd methods to implement ctrees
2037         reorderability via DND
2038
2039         (gtk_ctree_button_release)
2040         (gtk_ctree_button_motion) : removed.
2041
2042         * gtk/testgtk.c:
2043         (create_clist) : added new reorderable toggle button
2044         
2045 Tue Dec 15 19:50:41 1998  Owen Taylor  <otaylor@redhat.com>
2046
2047         * gtk/gtkctree.c gtk/gtkclist.c gtk/testgtk.c: Use 
2048         base[NORMAL] instead of bg[PRELIGHT] so CLists now can be
2049         used in detergent commercials.
2050
2051 Tue Dec 15 16:54:09 1998  Owen Taylor  <otaylor@redhat.com>
2052
2053         * gtk/gtklabel.h: Moved gtk_label_set() compatiblity
2054         define from <gtkcompat.h> to <gtklabel.h> for
2055         compatibility.
2056
2057 1998-12-15  Jeff Garzik  <jgarzik@pobox.com>
2058
2059         * configure.in, gdk/Makefile.am, gtk/Makefile.am:
2060         Removed last remaining thread-related configure bits 
2061         that have been moved into GLib.
2062
2063 1998-12-15  Elliot Lee  <sopwith@bogus.cuc.ml.org>
2064
2065         * gdk/gdkevents.c: Use G_IO_ERR|G_IO_HUP|G_IO_NVAL
2066         as the mask for checking for GDK_INPUT_EXCEPTION events.
2067
2068 1998-12-15  Martin Baulig  <martin@home-of-linux.org>
2069
2070         * acinclude.m4: Make the gettext check for for libc5 systems.
2071
2072         * autogen.sh: Not running gettextize fails on a fresh CVS checkout
2073         and we'll get a lot of bug reports tomorrow, so I add it back.
2074
2075         * acinclude.m4: Rename AM_GNU_GETTEXT_GTK to AM_GTK_GNU_GETTEXT and
2076         AM_WITH_NLS_GTK to AM_GTK_WITH_NLS to avoid this ugly automake
2077         warnings.
2078
2079 Tue Dec 15 16:06:15 1998  Owen Taylor  <otaylor@redhat.com>
2080
2081         * acinclude.m4: Provide a hacked version of the
2082           gettext macros that never use the included gettext.
2083          
2084         * Makefile.am configure.in: Remove references
2085           to intl/
2086         
2087         * autogen.sh: Don't run gettextize.
2088
2089 Tue Dec 15 14:30:35 1998  Owen Taylor  <otaylor@redhat.com>
2090
2091         * gdk/gdk.h gdk/gdkfonts.c: Added gdk_text_extents_wc()
2092
2093         * Patch from Jonathan Blanford <jrb@redhat.com> to add line wrapping
2094           to label. (Based on patch from Jeff Dairiki
2095           <dairiki@mac-ceope.apl.washington.edu> gtk-dairiki-971208-0)
2096
2097         - Adds new function gtk_label_set_line_wrap()
2098         - implement GTK_JUSTIFY_FILL.
2099         - rename gtk_label_set to gtk_label_set_text() add
2100            gtk_label_set() to gtkcompat.h.
2101
2102         * Use an internal wc representation in the label, so
2103           that we handle underlining and line breaks correctly
2104           for multi-byte strings.
2105
2106 Tue Dec 15 13:32:28 1998  Owen Taylor  <otaylor@redhat.com>
2107
2108         * gtk/gtkwidget.h: Added GTK_USER_DRAW flag.
2109
2110         * gtk/gtkwindow.c: Honor GTK_USER_DRAW flag.
2111
2112         * gtk/gtkdrawwindow.c gtk/Makefile.am: Removed 
2113         GtkDrawWindow, which GTK_USER_DRAW obsoletes.
2114
2115 Tue Dec 15 11:37:05 1998  Owen Taylor  <otaylor@redhat.com>
2116
2117         * gtk/gtkmain.c: Fixed up some warnings.
2118
2119 Tue Dec 15 10:32:01 1998  Owen Taylor  <otaylor@redhat.com>
2120
2121         * gtk/gtk{h,v,}paned.{c,h}: Add new functions 
2122         gtk_paned_set_position(),
2123         gtk_paned_pack1/2(). The latter take a
2124         shrink and resize parameters, that allows setting
2125         minimum sizes and getting 'relative' resizing.
2126
2127 Tue Dec 15 10:26:23 1998  Owen Taylor  <otaylor@redhat.com>
2128
2129         * gdk/gdkevents.c: Keep separate putback_events and 
2130         queued_events queues so that we get both FIFO and 
2131         preemptive behavior for gdk_event_put().
2132
2133 Tue Dec 15 09:22:44 1998  Owen Taylor  <otaylor@gtk.org>
2134
2135         * gtk/gtkrc.c (gtk_rc_init): Removed unused 
2136         variable, fixed minor memory leak.
2137
2138         * gdk/gdk.c: Fixed another merge problem.
2139
2140 Tue Dec 15 08:53:38 1998  Owen Taylor  <otaylor@redhat.com>
2141
2142         * gdk/gdk.c (gdk_get_display): Remove gdk_signal,
2143         which crept back in in last commit.
2144
2145 Tue Dec 15 01:38:53 1998  Owen Taylor  <otaylor@redhat.com>
2146
2147         * gtk/Makefile.am: Commented out testthreads from
2148         the build process, since we won't have any idea
2149         how to create a thread.
2150
2151         * configure.in (LIBS): use glib-config ... gthread
2152         so we always build a thread-compatible library.
2153
2154         * gtk/gtkaccellabel.c gtk/gtkclist.c gtk/gtkcolorsel.c
2155           gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkentry.c
2156           gtk/gtklist.c gtk/gtkmenuitem.c gtk/gtknotebook.c
2157           gtk/gtkrange.c gtk/gtkselection.c gtk/gtkspinbutton.c
2158           gtk/gtktext.c gtk/gtktooltips.c gtk/gtkwidget.c:
2159         
2160         Add GTK_THREADS_ENTER/LEAVE pairs around timeouts
2161         and idles to account for the fact that they are no
2162         longer called within the GTK+ lock.
2163
2164         * gtk/gtkprivate.h: Added definitions for locking
2165         the main GTK+ mutex.
2166         
2167         * gtk/gtkmain.c: Re-implement the main loop 
2168         in terms of the GLib main loop.
2169
2170         * gdk/gdk.h gdk/gdkthreads.c gdk/Makefile.am: Removed threading 
2171         functionality, as it seems better to subsume GDK within the 
2172         GTK+ lock than vice-versa.
2173
2174         * gdk/gdkevents.c: New file, containing event handling bits 
2175         from gdk.c.
2176
2177         * gdk/gdkevents.c: Implement event source for GDK
2178         events.
2179         
2180         * configure.in gdk/gdkevents.c: Removed attempts to 
2181         subtract base_id, which were already non-functional.
2182
2183 Mon Dec 14 23:05:20 PST 1998 Manish Singh <yosh@gimp.org>
2184
2185         * acconfig.h
2186         * configure.in: removed IPC_RMID_DEFERRED_RELEASE check
2187
2188         * gdk/gdk.c: remove signal handlers, since we do an IPC_RMID
2189         after XShmAttach, and nobody complained
2190
2191 Tue Dec 15 02:27:42 MET 1998 Sven Neumann <sven@gimp.org>
2192
2193         * po/de.po: Replaced the crappy german po-file with a valid one.
2194
2195 Mon Dec 14 16:10:05 1998  Owen Taylor  <otaylor@redhat.com>
2196
2197         * gtk/gtkrc.c (gtk_rc_init): Append locale-specific
2198         suffixes to default rc file names, and look these
2199         up in addition to the base filename, to facilitate
2200         having the correct fontset per-locale.
2201
2202         move $(sysconfdir)/gtkrc to $(sysconfdir)/gtk/gtkrc
2203
2204         * gtk/gtkitemfactory.[ch] (gtk_item_factory_set_translate_func):
2205         New function to set a function to translate menu paths.
2206
2207         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Free
2208         results of g_strsplit().
2209
2210 1998-12-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
2211
2212         * configure.in (ALL_LINGUAS): Added 'pt'.
2213
2214         * po/pt.po: Added Portuguese translation.
2215
2216 Mon Dec 14 20:04:31 1998  Stefan Jeske  <stefan@gtk.org>
2217
2218         * gtk/gtkspinbutton.c: Only call gtk_spin_button_update if
2219         the spinbutton is editable.
2220
2221 Mon Dec 14 12:24:13 1998  Owen Taylor  <otaylor@redhat.com>
2222
2223         * HACKING: Added gettext-10.35
2224
2225         * autogen.sh: Run gettextize.
2226
2227 Wed Dec  9 16:29:06 1998  Owen Taylor  <otaylor@redhat.com>
2228
2229         Applied gtk-egger-981010-[12] 
2230         [ Daniel.Egger@t-online.de (Daniel Egger) ]
2231
2232         * gtk/gtkintl.h: New file - defines for localization.
2233
2234         * gtk/gtkfilesel.c gtk/gtkinputdialog.c: Mark strings
2235         for internationalization.
2236
2237         * gtk/gtkmain.c: call bindtextdomain
2238
2239         * po/ - directory for translations. Initially includes
2240         German translation.
2241
2242 Mon Dec 14 02:42:11 1998  Tim Janik  <timj@gtk.org>
2243
2244         * gtk/gtkwidget.c: made GtkWidget::grab_focus a RUN_LAST and
2245         RUN_ACTION signal. moved stuff from gtk_widget_grab_focus() into
2246         gtk_widget_real_grab_focus() so a signal is always emitted
2247         if the focus is grabbed on a widget.
2248
2249 Mon Dec 14 02:13:01 1998  Tim Janik  <timj@gtk.org>
2250
2251         * gtk/gtkmenuitem.c: fixed submenu popup timeouts, we decide whether or
2252         not to delay the submenu popup from a menu item deselection time stamp.
2253         the code looks even more hackish than before, but in practice "feels"
2254         very well.
2255
2256 1998-12-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2257
2258         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added a "grab_focus"
2259         signal for widgets.  When the signal is emitted, the widget will
2260         grab the focus.  This is needed to let the user press an
2261         accelerator key in a dialog box and have the corresponding widget
2262         be focused.
2263
2264         * gtk/gtkwidget.c (gtk_widget_class_init): Create the "grab_focus"
2265         signal.  The default handler is simply gtk_widget_grab_focus().
2266
2267 Sun Dec 13 22:15:48 GMT 1998  Tony Gale  <gale@gtk.org>
2268
2269         * docs/gtk_tut.sgml: Update the following sections to the
2270           current API:
2271             - Container Widgets
2272             - CList Widget
2273             - List Widget
2274             - Tree Widget
2275
2276 Sat Dec 12 19:11:35 1998  Tim Janik  <timj@gtk.org>
2277
2278         * gtk/gtkmenuitem.c: made GtkMenuItem::activate a GTK_RUN_ACTION signal.
2279
2280         * gtk/gtkbutton.c: made GtkButton::clicked a GTK_RUN_ACTION signal.
2281
2282         * gtk/gtkfeatures.h.in: define GTK_HAVE_FEATURES_1_1_8.
2283
2284 Sat Dec 12 17:46:55 1998  Owen Taylor  <otaylor@gtk.org>
2285
2286         * gtk/gtklayout.c (gtk_layout_unrealize): Mark
2287         child->window as destroyed so we don't destroy
2288         it again.
2289
2290 Sat Dec 12 17:18:32 1998  Owen Taylor  <otaylor@redhat.com>
2291
2292         * gdk/gdkfont.c (gdk_text_extents): Corrections
2293         to computation of extents of text from a font set.
2294         (from Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
2295          and Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>)
2296         
2297 Fri Dec 11 08:59:12 1998  Owen Taylor  <otaylor@redhat.com>
2298
2299         * gtk/gtklistitem.c (gtk_list_item_style_set):
2300         * gtk/gtklist.c     (gtk_list_style_set):
2301         Added "style_set" handlers.
2302
2303 Fri Dec 11 05:49:30 1998  Owen Taylor  <otaylor@redhat.com>
2304
2305         * gtk/gtkclist.c (gtk_clist_style_set): Add in a "style_set"
2306         handler so that the background of the clist changes
2307         with the theme.
2308
2309 Thu Dec 10 22:02:49 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2310
2311         * Released GTK+ 1.1.7
2312
2313         * INSTALL:
2314           NEWS:
2315           README:
2316           configure.in:
2317           gtk+.spec:
2318           gtk/gtkfeatures.h.in: 
2319           docs/gtk-config.1: Version to 1.1.7
2320
2321 Thu Dec 10 20:48:19 PST 1998 Manish Singh <yosh@gimp.org>
2322
2323         * gtk/gtkclist.c: avoid void pointer math
2324
2325         * gtk/gtkhscale.c
2326         * gtk/gtkhscrollbar.c
2327         * gtk/gtkvscale.c
2328         * gtk/gtkvscrollbar.c: removed trailing , from enums
2329
2330         * gtk/gtksignal.c: can't use enums as a bitfield type, use guint
2331
2332         * gtk/testgtk.c: removed C++ comment added by owenpoo
2333
2334 Thu Dec 10 21:48:34 1998  Owen Taylor  <otaylor@redhat.com>
2335
2336         * gtk/gtkdnd.[ch]: Added gtk_drag_source_unset()
2337
2338 Thu Dec 10 20:42:22 1998  Owen Taylor  <otaylor@redhat.com>
2339
2340         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Use 
2341         gdk_window_get_origin() instead of gdk_window_get_position,
2342         because get_position is unreliable for plugs. 
2343
2344         This is a bad hack, maybe we need GDK_WINDOW_PLUG?
2345
2346 Thu Dec 10 17:58:49 GMT 1998  Tony Gale  <gale@gtk.org>
2347
2348         * docs/gtk_tut.sgml:
2349           - re-write the GtkProgressBar section to the 1.1 API.
2350           - add an Appendix listing all the signals
2351             (apologies to TimJ for taking so long in using his hard work
2352              in automating the extraction - thanx Tim). 
2353         * examples/*: bring them all upto the tutorial versions
2354
2355 Thu Dec 10 02:21:16 1998  Jeff Garzik  <jgarzik@pobox.com>
2356
2357         * gtk/testdnd.c: use g_snprintf, eliminate need for string.h
2358         * gtk/testrgb.c: include string.h, for strlen
2359
2360 Wed Dec  9 17:39:26 1998  Owen Taylor  <otaylor@redhat.com>
2361
2362         * configure.in: Add a case for success in 
2363         test for XUnregisterIMInstantiate, to prevent
2364         screwing up $LIBS.
2365
2366 Wed Dec  9 13:06:31 1998  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2367  
2368         * gdk/gdkim.c (gdk_ic_new,gdk_ic_{set,get}_attr): Fixed argument
2369         list and return type for non-XIM fallback.
2370  
2371         * configure.in: Only build XIM-support if available.
2372  
2373 Wed Dec  9 12:23:30 1998  Owen Taylor  <otaylor@redhat.com>
2374         
2375         * gtk/testselection.c (main): Add in missing 'flags'
2376         field to target list.
2377
2378         * gdk/gdkproperty.c (gdk_atom_intern): Actually
2379         add the atoms to the local cache.
2380
2381 Wed Dec  9 04:57:31 PST 1998 Manish Singh <yosh@gimp.org>
2382
2383         * gdk/gdkprivate.h: put text after #endif in comment
2384
2385         * gdk/gdktypes.h: change whitespace in enum to shut up makeenums.pl
2386
2387         * gtk/testdnd.c: #include <string.h>
2388
2389 Mon Dec  7 10:27:09 1998  Owen Taylor  <otaylor@redhat.com>
2390
2391         * gtk/gtkwidget.c: Destroy widgets _after_ propagating unrealize
2392         signals through the widget heirarchy. This is unpleasant, as it
2393         causes more X traffic, but is necessary, because we have to clean
2394         up our Input Contexts before destroying the X windows.
2395         (from matsu-981109-0.patch)
2396         
2397 Mon Dec  7 10:18:18 1998  Owen Taylor  <otaylor@redhat.com>
2398
2399         Applied gtk-a-higuti-981202-0 : 
2400         [ a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi) ]
2401         
2402         * gdk/gdk.h gdk/gdk.c
2403                 (gdk_mbstowcs): New function. Nearly equals to mbstowcs, but
2404                         implemented by a combination of Xlib functions, so
2405                         it works even with X_LOCALE.
2406                 (gdk_wcstombs): New function.
2407                 (g_mbtowc): Removed. No longer needed.
2408
2409         * gdk/gdk.h gdk/gdkfont.c gdk/gdkdraw.c: 
2410                 Added _wc() variants to gdk_text_width(), 
2411                 gdk_char_width(), gdk_draw_text(),
2412                 
2413         * gdk/gdki18n.h
2414                 (mblen, mbtowc, wctomb, mbstowcs, wcstombs,
2415                  wcslen, wcscpy, wcsncpy):
2416                         Removed. No longer needed.
2417                 (iswalnum): Removed.
2418                 (gdk_iswalnum): New macro.
2419                 (gdk_iswspace): New macro.
2420         * gdk/gdktype.h
2421                 (GdkWChar): New typedef.
2422         
2423         * gtk/gtkentry.h, gtk/gtkentry.c
2424                 There are many changes according to the change of the
2425                 internal representation of text, from multibyte string
2426                 to wide characters. 
2427         * gtk/gtkprivate.h, gtk/gtkmain.c
2428                 Removed the variable gtk_use_mb and related codes.
2429         * gtk/gtkspinbutton.c
2430                 Some changes according to the change of type of entry->text.
2431         * gtk/gtktext.h, gtk/gtktext.c
2432                 Changed the internal representation of text. We use GdkWchar
2433                 if a fontset is supplied. If not, we use guchar to save
2434                 memory.
2435         
2436 Tue Dec  1 15:20:39 1998  Owen Taylor  <otaylor@redhat.com>
2437
2438         * gdk/gdkwindow.c (gdk_window_new): When creating
2439         a window with a specified non-system visual, use
2440         a matching colormap.
2441
2442 Mon Nov 30 11:50:13 1998  Owen Taylor  <otaylor@redhat.com>
2443
2444         * gdk/gdk.c gdk/gdkim.c gdk/gdkprivate.h gdk/gdk.h
2445           gdk/gdktypes.h gtk/gtkeditable.c gtk/gtkmain.c
2446           gtk/gtkentry.c gtk/gtktext.c:
2447
2448          Applied matsu-981109-0
2449          [ matsu@arch.comp.kyutech.ac.jp (Takashi Matsuda) ]
2450         
2451          - Change system of setting input method values 
2452            from varargs to a structure, similar to GC's
2453            or window attributes.
2454
2455          - Various fixes to event handling.
2456
2457          Also:
2458
2459          * gdk/gdkim.c: Split of input method stuff into
2460            a separate source file.
2461
2462          * Remove GdkIM typedef, change everything from
2463            GdkIC to GdkIC * to be consistent with the
2464            rest of GTK.
2465         
2466 Wed Dec  9 00:41:41 1998  Owen Taylor  <otaylor@redhat.com>
2467
2468         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Allocate
2469         correct amount of memory for strings.
2470
2471 Tue Dec  8 18:29:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2472
2473         * Released GTK+ 1.1.6
2474
2475         * NEWS: updated
2476
2477         * gtk/Makefile.am:
2478           gtk/testgtk.c:
2479           gtk/gtkrc.h:
2480           gtk/gtkrc.c: Read in default files.
2481
2482 Wed Dec  9 00:49:12 1998  Tim Janik  <timj@gtk.org>
2483
2484         * gtk/gtktypeutils.h:
2485         * gtk/gtktypeutils.c: added gtk_type_query() which returns a newly
2486         allocated structure holding certain type specific informations.
2487         fixed the big bunch of `discards const' warnings with the
2488         initialization of enum/flags values.
2489
2490 Tue Dec  8 15:10:17 1998  Owen Taylor  <otaylor@redhat.com>
2491
2492         * gtk/gtkwindow.c (gtk_window_transient_parent_realized):
2493         Fixed order of arguments to gdk_window_transient_for().
2494
2495 Tue Dec  8 18:02:57 GMT 1998  Tony Gale  <gale@gtk.org>
2496
2497         * examples/Makefile: simple top level Makefile that invokes all
2498           the sub-directory Makefiles.
2499
2500 1998-12-08  Andrew T. Veliath  <andrewtv@usa.net>
2501
2502         * gtk/testgtk.c: Functions to test the toolbar space style.
2503
2504         * gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
2505         GtkToolbarChild to hold allocation. Set default space style to
2506         GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
2507         fraction defaults.
2508         (gtk_toolbar_paint_space_line): New function; paints the separator
2509         line, using "toolbar" as the detail.
2510         (gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
2511         style is set to SPACE_LINE.
2512         (gtk_toolbar_size_allocate): Store space allocations.
2513         (gtk_toolbar_insert_element): If we are a space, allocate and
2514         initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
2515         (gtk_toolbar_set_space_style): New function.
2516
2517         * gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
2518         and LINE. Add prototype for gtk_toolbar_set_space_style.
2519
2520 Mon Dec  7 16:03:55 1998  Owen Taylor  <otaylor@redhat.com>
2521
2522         * gtk/gtkthemes.h: Remove random unnecessary includes
2523         of standard headers.
2524
2525 1998-12-07  Damon Chaplin  <DAChaplin@msn.com>
2526
2527         * gtk/gtkfontsel.c (gtk_font_selection_select_best_style): made sure
2528         we only try to match styles which are currently shown.
2529
2530         (gtk_font_selection_init): set the notebook tabs homogeneous and set
2531         the border, so we don't need to set the size explicitly (bad for i18n).
2532         Used the clist auto-resize feature for the font and style lists on the
2533         main page and all the filters. Used padding for the 'Reset Filter'
2534         button instead of spaces around it (bad for i18n).
2535
2536         (gtk_font_selection_find_font): when searching for
2537         a font, if we can't match both the family and foundry, we return any
2538         font where just the family matches. (The foundry can even be '*'.)
2539
2540         (gtk_font_selection_show_available_styles): 
2541         (gtk_font_selection_realize_list): don't set the style clist row
2542         colours (for the charset rows) until the clist is realized, since we
2543         use the clist style's insensitive colours.
2544
2545 Mon Dec  7 13:38:06 1998  Owen Taylor  <otaylor@redhat.com>
2546
2547         * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
2548         _after_ doing XShmAttach. This should work everywhere,
2549         and avoid the need for signal handlers or configure
2550         checks.
2551
2552 Thu Dec  3 19:58:45 1998  Owen Taylor  <otaylor@redhat.com>
2553
2554         * gtk/gtkinputdialog.c: Use _add_with_viewport() for
2555         scrolled window contents.
2556
2557 1998-12-07  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2558
2559         * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
2560         field in the structure.
2561
2562 Mon Dec  7 15:15:06 GMT 1998  Tony Gale <gale@gtk.org>
2563
2564         * docs/gtk_tut.sgml: Start mass update for GTK 1.1
2565         * examples/extract.sh: Look for the best version of awk
2566         * examples/extract.awk: Fix FD leak
2567         * example/base: minimal example from Tutorial
2568
2569 Mon Dec  7 01:29:27 1998  Owen Taylor  <otaylor@gtk.org>
2570
2571         * gtk/gtkwindow.c: New functions
2572         gtk_window_set_transient_for() - set up a "transient for" relationship.
2573         gtk_window_set_default_size() - set the initial size of a window
2574            distinct from its minimum size.
2575         gtk_window_set_geometry_hints() - Allow the user to set
2576            minimum, maximum sizes, aspect rations, and gridded geometry, 
2577            possibly all with respect to a subwidget of the window.
2578         These interfaces are still a wee bit experimental.
2579
2580         * gdk/gdk.c: Added gdk_window_set_transient_for(),
2581         gdk_window_set_geometry_hints(), and gdk_window_set_role().
2582
2583         * gdk/gdktypes.h: Added new types for find-grained specification
2584         of WM hints.
2585
2586         * gtk/testgtk.c: Various changes to tests to test the
2587         above new functions.
2588
2589         * gtk/gtkfontsel.c: Squash a few 'const' warnings.
2590         
2591         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
2592         call to gtk_style_set_background() to prevent egregious
2593         flashing to black.
2594
2595 Mon Dec  7 03:52:01 1998  Tim Janik  <timj@gtk.org>
2596
2597         * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
2598         signals, don't pass the data pointer twice, but swap it with the
2599         object pointer (proposed on Nov 30 1998 on gtk-devel-list).
2600
2601 Mon Dec  7 03:08:39 1998  Tim Janik  <timj@gtk.org>
2602
2603         * gtk/gtktypeutils.h: 
2604         * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
2605         internal type info data to the user. if such functionality is required
2606         we should provide wrapping accessors, ala gtk_signal_query(). also the
2607         GtkTypeInfo structures are dynamically allocated memory portions, so
2608         only the type system is really allowed to access that stuff.
2609
2610         * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
2611         since it destroys the possibility to implement automatic marshaller
2612         lookups some day, and it also disables third party code's ability to
2613         connect to any signal.
2614
2615 Mon Dec  7 01:32:18 1998  Tim Janik  <timj@gtk.org>
2616
2617         * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
2618         Tab key on the entry. the focus shouldn't get lost even if completion
2619         is attempted from an empty entry, since an empty entry string does
2620         indeed have a valid completion meaning (complete all).
2621         (gtk_file_selection_init): cast the gchar array parameter in calls to
2622         gtk_clist_new_with_titles() to quit compiler warnings.
2623         (check_dir): the no_stat_dirs struct must not be const, since we do
2624         indeed modify its contents.
2625
2626         * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
2627         hook semantics.
2628
2629         * gtk/gtksignal.h:
2630         * gtk/gtksignal.c:
2631         changed emission allocation, so we don't use a doubly linked list
2632         but link ourselfs (singly linked).
2633         changed emission hooks, they get the emision parameters passed as
2634         well now and are emitted during the actuall signal emission (after
2635         the RUN_FIRST class method, but prior to RUN_FIRST handlers).
2636         the existing restrictions do still apply to signal emission hooks,
2637         i.e. an emission may not be stopped or restarted from an emission hook.
2638         due to possibly huge perfomance impacts, frequent use of emision hooks
2639         is also not recommended.
2640         (gtk_signal_next_and_invalidate): added an
2641         assertments which explicits what the code assumes anyways: a
2642         maximum amount of 65535 signals.
2643
2644         * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
2645         gtk_container_foreach_full() should be used instead.
2646
2647         * gtk/gtkmain.h:
2648         deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
2649         we provide _full variants.
2650
2651         * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
2652         gtk_signal_connect_full() for long enough now.
2653
2654 1998-12-06  Marius Vollmer  <mvo@zagadka.ping.de>
2655
2656         * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
2657         (gtk_signal_connect_by_type): Allow only no_marshal handlers to
2658         connect to signals with a NULL marshaller.
2659
2660         * gtk/gtktypeutils.c (gtk_type_get_info): New.
2661         gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
2662
2663 Sun Dec  6 14:27:35 1998  Stefan Jeske  <stefan@gtk.org>
2664
2665         * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
2666         arrows if wrap == FALSE and interval borders are reached.
2667
2668 Sat Dec  5 21:07:09 1998  Owen Taylor  <otaylor@gtk.org>
2669
2670         * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
2671         long-standing typo in aspect ratio computation code.
2672         (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
2673
2674 Fri Dec  4 01:20:06 1998  Lars Hamann  <lars@gtk.org>
2675
2676         * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
2677         valid row numbers only
2678         (toggle_row): check if clist_row != NULL
2679
2680 Fri Dec  4 00:50:12 1998  Lars Hamann  <lars@gtk.org>
2681
2682         * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
2683
2684         * gtk/gtkclist.c 
2685         (gtk_clist_set_column_visibility)
2686         (gtk_clist_column_titles_active)
2687         (gtk_clist_column_titles_active)
2688         (gtk_clist_column_title_passive)
2689         (gtk_clist_column_title_active): few additional tests whether
2690         column->button != NULL
2691
2692 Thu Dec  3 16:49:18 1998  Owen Taylor  <otaylor@redhat.com>
2693
2694         * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
2695         from 10 seconds, so it doesn't abort while users
2696         have an ACTION_ASK menu up.
2697
2698         * gtk/gtkdnd.c: Hide the icon window between sending a a 
2699         drop event to the destination and displaying the
2700         snapback animation, so that it doesn't hang around
2701         during ACTION_ASK.
2702
2703 Thu Dec  3 16:37:42 1998  Owen Taylor  <otaylor@redhat.com>
2704
2705         * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
2706         for the foreground of cells for CLists in the insensitive
2707         state, instead of GTK_STATE_PRELIGHT.
2708
2709 Thu Dec  3 06:20:59 1998  Tim Janik  <timj@gtk.org>
2710
2711         * gtk/gtkwindow.c: moved checks upon focus setting from
2712         gtk_window_real_set_focus to gtk_window_set_focus, so we don't
2713         emit the signal if unneccessary.
2714
2715         * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
2716         containers when grabbing focus on a new widget. this is based on
2717         a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
2718
2719         * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
2720         flag, so we take the buttons into consideration upon the next focus
2721         request.
2722
2723         * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
2724         assertment.
2725
2726 Wed Dec  2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2727
2728         * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
2729           enhancement for true-color displays.
2730
2731         * INSTALL:
2732           README:
2733           configure.in:
2734           gtk+.spec:
2735           docs/gtk-config.1: up to version 1.1.6
2736
2737 Wed Dec  2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
2738
2739         * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
2740         we release it this time
2741
2742 Wed Dec  2 01:39:02 1998  Tim Janik  <timj@gtk.org>
2743
2744         * gtk/gtknotebook.h: 
2745         * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
2746
2747         * incremented version number to 1.1.6 and made Gtk
2748         dependant on GLib 1.1.6.
2749
2750         * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
2751         from guint16 to gint16, since sizes bigger than 32767 are not supported
2752         anyways, and aritmethics with intermediate negative values are possible
2753         now.
2754
2755 Tue Dec  1 00:00:04 1998  Tim Janik  <timj@gtk.org>
2756
2757         * gtk/gtkscrolledwindow.c:
2758         implementation of GTK_POLICY_NEVER functionality, added rationales
2759         on the policy and size requisition handling at the top.
2760         (gtk_scrolled_window_size_request):
2761         we assume a default minimum for our child's width and height
2762         if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
2763         specified the dimension explicitely.
2764         (gtk_scrolled_window_size_allocate): 
2765         do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
2766
2767         * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
2768         size we require (including the child).
2769
2770         * gtk/gtkclist.c:
2771         (gtk_clist_size_request): report the real size required.
2772
2773         * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
2774
2775         * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
2776         need to be a static variable.
2777
2778 Mon Nov 30 22:41:25 1998  Tim Janik  <timj@gtk.org>
2779
2780         * gtk/gtkclist.h: 
2781         * gtk/gtkclist.c: 
2782         * gtk/gtkviewport.h:
2783         * gtk/gtkviewport.c:
2784         * gtk/gtktext.h:
2785         * gtk/gtktext.c:
2786         * gtk/gtklayout.h:
2787         * gtk/gtklayout.c:
2788         * gtk/gtkwidget.h:
2789         * gtk/gtkwidget.c:
2790         * gtk/gtkscrolledwindow.h:
2791         * gtk/gtkscrolledwindow.c:
2792         s/scroll_adjustements/scroll_adjustments/
2793         s/scroll_adjustments/set_scroll_adjustments/g
2794
2795 Tue Dec  1 22:45:58 1998  Lars Hamann  <lars@gtk.org>
2796
2797         * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
2798         row_move.
2799         * gtk/gtkclist.c (gtk_clist_row_move): new public function.
2800         emit a row_move signal
2801         (real_row_move): move source_row to dest_row
2802         (gtk_clist_swap_rows): use gtk_clist_row_move calls.
2803         (gtk_clist_columns_autosize): resize all columns to their optimal
2804         width
2805         * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
2806         entire sub-tree.
2807         * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
2808
2809 Tue Dec  1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
2810
2811         * configure.in
2812         * gdk/Makefile.am
2813         * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
2814         Separate vars for each, for granularity.
2815
2816 Tue Dec  1 02:19:54 1998  Tim Janik  <timj@gtk.org>
2817
2818         * gtk/gtkenums.h: fixed a stupid error of mine about the run type
2819         values.
2820
2821 1998-11-30  Elliot Lee  <sopwith@cuc.ml.org>
2822
2823         * {gdk,gtk}/*.c: Make read-only data structures "static const" to
2824         allow them to be shared, mainly including (but not limited to) the
2825         GtkTypeInfo structures for each class.
2826
2827         * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
2828
2829 Mon Nov 30 12:17:10 1998  Jeff Garzik  <jgarzik@pobox.com>
2830
2831         * gtk/gtksignal.c:
2832         Surround debug variable with #ifdef to silence gcc.
2833
2834         * gtk/gtknotebook.c (gtk_notebook_reorder_child):
2835         Added initializer to quiet gcc warning.
2836         Added assertion to check for null pointer deref.
2837
2838 Mon Nov 30 10:11:29 1998  Tim Janik  <timj@gtk.org>
2839
2840         * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
2841         system specific includes.
2842
2843         * gtk/gtksignal.c: asured that stop and restart emissions are also
2844         checked and processed for not connected objects. fixed up restart
2845         emission administration. invoke emission hooks after emission, hooks
2846         are not supposed to muck around with the current emission, and
2847         may also not cause emission restarts. fixed up stop emission
2848         administration.
2849
2850 Mon Nov 30 06:20:36 1998  Tim Janik  <timj@gtk.org>
2851
2852         * gtk/testgtk.c: added an event watcher for enter/leave based on
2853         signal emission hooks.
2854
2855         * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
2856         GTK_RUN_NO_HOOKS signal.
2857
2858         * gtk/gtksignal.h: 
2859         * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
2860         to a signal with gtk_signal_add_emission_hook or
2861         gtk_signal_add_emission_hook_full, and can be removed again with
2862         gtk_signal_remove_emission_hook.
2863
2864         * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
2865         an appropriate mask for signal runtypes for a long time now.
2866         added GTK_RUN_NO_HOOKS value, which is used to flag signals
2867         that do not allow the running of signal hooks.
2868
2869 1998-11-26  Michael Krause  <m.krause@tu-harburg.de>
2870
2871         * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
2872         argument a gint: switch_page signal delivers valid page numbers
2873         again.
2874
2875 Sun Nov 29 06:12:01 1998  Tim Janik  <timj@gtk.org>
2876
2877         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment): 
2878         set composite names.
2879
2880         * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
2881         check, people must use gtk_type_init().
2882         fixed up type allocation for foreign fundamentals.
2883
2884         * gtk/gtkwidget.h: 
2885         * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
2886         for internal use by containers, that want to assign specific composite
2887         names to their composite children.
2888         added gtk_widget_get_composite_name() which will return a newly
2889         allocated string, containing the composite name of a widget. valid
2890         composite names can only be retrived from widgets that have a parent
2891         assigned and are flagged as GTK_COMPOSITE_CHILD.
2892
2893         * gtk/gtkcontainer.h:
2894         * gtk/gtkcontainer.c: added a new function
2895         gtk_container_child_default_composite_name() which will return a
2896         newly allocated string, holding the composite name of a containers
2897         child. a default implementation is provided which will compose the
2898         composite name out of the widgets type and its sequential children
2899         id. this implementation can be overidden through a new class function
2900         *(composite_name)().
2901
2902 Sat Nov 28 10:57:59 1998  Owen Taylor  <otaylor@redhat.com>
2903
2904         * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
2905         expose_event handler - we had two expose_event
2906         handlers!
2907
2908 Sat Nov 28 03:13:42 1998  Tim Janik  <timj@gtk.org>
2909
2910         * gtk/gtkscrolledwindow.h: 
2911         * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
2912         it inherits from GtkBin now.
2913
2914         * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
2915         visibility of child.
2916         (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
2917         added check so a child gets only drawn if it's visible.
2918
2919         * gtk/gtkwidget.h: 
2920         * gtk/gtkwidget.c: removed gtk_widget_draw_children().
2921
2922         * gtk/gtkstyle.h: 
2923         * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
2924
2925         * gtk/gtkwidget.h: 
2926         * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
2927         added internal function gtk_widget_reset_shapes() from gtkstyle.c.
2928
2929         * gtk/gtkrc.h:
2930         * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
2931         argument, changed callers.
2932
2933         * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
2934         it will issue a warning now.
2935
2936         * gtk/gtkcompat.h: new file to #define aliases for historic
2937         function names.
2938
2939         * changed 8 function names for consistency and provided aliases to keep
2940         source compatibility in gtkcompat.h:
2941         (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
2942         (gtk_container_set_border_width): renamed from gtk_container_border_width
2943         (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
2944         (gtk_packer_configure): renamed from gtk_packer_set_child_packing
2945         (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
2946         (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
2947         (gtk_scale_get_value_width): renamed from gtk_scale_value_width
2948         (gtk_window_set_position): renamed from gtk_window_position
2949
2950         * renamed a few recently added funtions for consistency:
2951         (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
2952         (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
2953         (gtk_progress_configure): renamed from gtk_progress_reconfigure.
2954
2955 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
2956
2957         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
2958         check for existing viewport first, and don't add one if there
2959         already is one
2960
2961 Sat Nov 28 00:06:49 1998  Tim Janik  <timj@gtk.org>
2962
2963         * gtk/gtkwidget.h: 
2964         * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
2965         gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
2966         and gtk_widget_unlock_accelerators.
2967
2968         * gtk/gtklayout.h:
2969         * gtk/gtklayout.c: implemented incremental freezing facility.
2970
2971         * gtk/gtktext.h: 
2972         * gtk/gtktext.c: implemented incremental freezing facility.
2973
2974         * gtk/gtkenums.h:
2975         * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
2976
2977         * gtk/gtkentry.h:
2978         * gtk/gtkentry.c:
2979         deprecated gtk_entry_adjust_scroll().
2980         
2981         * random GtkType, macro and indentation fixes.
2982
2983 Fri Nov 27 22:50:15 1998  Tim Janik  <timj@gtk.org>
2984
2985         * gtk/gtkclist.h: 
2986         * gtk/gtkclist.c: implemented incremental freezing facility, added
2987         a new class member (*refresh)() which takes over the thaw
2988         functionality. the clist FROZEN flag got removed on the way.
2989         * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
2990         and incremental freezing.
2991
2992         * gtk/gtkcalendar.c: implemented incremental freezing facility.
2993
2994 Fri Nov 27 11:41:27 1998  Raph Levien  <raph@gimp.org>
2995
2996         * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
2997         it still includes the core pointer in gdk_input_devices even
2998         if the XInput extension is not present in the X server.
2999
3000 Fri Nov 27 12:17:15 1998  Owen Taylor  <otaylor@redhat.com>
3001
3002         * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
3003         get the source widget of a drag.
3004
3005         * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
3006         to restrict certain targets to the same widget or to
3007         the same application.
3008
3009         * gtk/testdnd.c: Test gtk_drag_get_source_widget().
3010         
3011 Thu Nov 26 19:11:46 1998  Lars Hamann  <lars@gtk.org>
3012
3013         * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
3014         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
3015         instead of GTK_TYPE_POINTER in signal definitions.
3016         (patch from James Henstridge <james@daa.com.au>)
3017
3018 Thu Nov 26 18:48:44 1998  Lars Hamann  <lars@gtk.org>
3019
3020         * gtk/gtkclist.c (set_cell_contents)
3021         * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
3022         if auto.resize == TRUE
3023
3024         * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
3025         don't draw tab, if show_tabs == FALSE
3026         (bug reports from Alexis Mikhailov / Dave Cole)
3027         (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
3028         the focus rectangle, not the hole tab.
3029
3030 Thu Nov 26 03:18:08 1998  Tim Janik  <timj@gtk.org>
3031
3032         * gtk/gtkclist.h: 
3033         * gtk/gtkctree.h: 
3034         * gtk/gtkclist.c:
3035         * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
3036         Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
3037
3038         * gtk/maketypes.awk: changed underline substitution, so we get
3039         GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
3040         * gtk/makeenums.pl: likewise.
3041         * gtk/gtkctree.c: adapted type names accordingly.
3042
3043 Tue Nov 24 11:31:06 1998  Owen Taylor  <otaylor@redhat.com>
3044
3045         * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
3046
3047         * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
3048         some code duplication.
3049
3050         * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
3051         and child widgets when scrolling greater than 32k pixels.
3052
3053         * testgtk.c: Modified layout test to test scrolling over 
3054         long distances.
3055
3056         * gtk/gtkplug.c: Added a few blank lines.
3057
3058 Tue Nov 24 11:11:05 1998  Owen Taylor  <otaylor@redhat.com>
3059
3060         * gtk/gtklayout.[ch]: Fixed up copyright message.
3061
3062         * gdk/gdkrgb.c (DM): Make the dither matrix constant
3063         so it can be shared.
3064
3065         * gtk/gtkdnd.c: Make cursor bitmaps const.
3066
3067         * gdk/gdk.h gdk/gdkpixmap.c: Added const to 
3068         gdk_pixmap/bitmap_create_from_data.
3069
3070 Tue Nov 24 07:46:09 1998  Tim Janik  <timj@gtk.org>
3071
3072         * docs/Changes-1.2.txt: added a section on scrolled windows and
3073         scrollable widgets.
3074
3075 1998-11-24  Andrew T. Veliath  <andrewtv@usa.net>
3076
3077         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
3078         buttons when setting relief for button items.
3079         (gtk_toolbar_set_button_relief): Same.
3080
3081 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
3082
3083         * gdk/Makefile.am, gtk/Makefile.am:
3084         Removed DEFS "+=" mess that breaks recent automakes.
3085         INCLUDES is the correct way to add to CFLAGS from Makefile.am.
3086
3087         * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
3088         gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
3089         gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
3090         gtk/testthreads.c:
3091         Include "config.h" instead of "../config.h".
3092         Now that DEFS works again, automake will automatically pass us
3093         the location of config.h in -I.
3094
3095 Mon Nov 23 22:10:09 1998  Owen Taylor  <otaylor@redhat.com>
3096
3097         * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
3098         gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
3099
3100         Added layout widget for scrolling arbitrarily big areas.
3101         Added plug/socket widgets for interprocess embedding.
3102
3103         These widgets still, at some point, need to be
3104         made more pure in their use of GDK, as opposed
3105         to raw X.
3106
3107         * gtk/testgtk.c: Added test for layout widget.
3108         
3109 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
3110
3111         * gtk/gtkclist.c: (gtk_clist_swap_rows):  Bugfix from
3112         Brandon Long <blong@fiction.net> - do the right thing with first
3113         and last, which are the absolute values of row arguments row1
3114         and row2.
3115
3116 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
3117
3118         * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
3119         default adjustment (from 0 to 100) instead. I'm not sure if this
3120         is the correct level for the fix, but gtk_progress_bar_new()'s
3121         original default behavior is restored.
3122
3123 1998-11-23  Martin Baulig  <martin@home-of-linux.org>
3124
3125         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
3126         we can check for latest GTK features.
3127
3128 1998-11-23  Havoc Pennington  <hp@pobox.com>
3129
3130         * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
3131         (gtk_toolbar_insert_element): When setting relief, also affect
3132         toggle buttons.
3133
3134 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
3135
3136         * gtk/gtkobject.h: remove extraneous comma
3137
3138 Mon Nov 23 05:21:50 1998  Tim Janik  <timj@gtk.org>
3139
3140         * gtk/gtkcontainer.c:
3141         (gtk_container_add_with_args): 
3142         (gtk_container_addv): 
3143         (gtk_container_add): removed assertements for constructed containers
3144         again, since this essentially breaks the "child" arg.
3145
3146         * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
3147         reference count, we don't need to reference toplevels that already have
3148         destroy notifiers.
3149
3150         * gtk/gtkscrolledwindow.c: check for the composites existance in
3151         _forall since we might not be already constructed.
3152
3153 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3154
3155         * Released GTK+ 1.1.5
3156
3157         * configure.in: require GLib 1.1.5
3158
3159 Mon Nov 23 03:21:17 1998  Tim Janik  <timj@gtk.org>
3160
3161         * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
3162         2 * hadj.
3163         (gtk_text_finalize): only unref the current_font if we have
3164         been realized.
3165
3166 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3167
3168         * configure.in:
3169           INSTALL:
3170           NEWS:
3171           README:
3172           gtk+.spec:
3173           docs/gtk-config.1: Version incremented to 1.1.5
3174
3175 Sun Nov 22 16:21:28 1998  Tim Janik  <timj@gtk.org>
3176
3177         * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
3178         ::text_yalign, ::activity_mode.
3179
3180         * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
3181         ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
3182         ::activity_blocks.
3183         (gtk_progress_bar_new):
3184         (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
3185         (gtk_progress_bar_construct): deprecated.
3186
3187         * gtk/gtkvscrollbar.c:
3188         (gtk_vscrollbar_draw_step_back): 
3189         (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
3190         gtk_paint_arrow, to be consistent with hscrollbar.
3191
3192         * gtk/gtktext.c
3193         added construct args ::hadjustment, ::vadjustment.
3194         added args ::line_wrap, ::word_wrap.
3195         (gtk_text_class_init): added scroll_adjustments signal.
3196         (gtk_text_new): use gtk_widget_new.
3197         (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
3198         so we don't screw the reference counts and don't leave signals connected.
3199         (gtk_text_destroy): disconnect adjustments signals.
3200         (gtk_text_finalize): unref adjustments.
3201
3202         * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
3203         added args ::indent, ::spacing, ::show_stub, ::reorderable,
3204         ::use_drag_icons, ::line_style and ::expander_style.
3205         (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
3206         deprecated now.
3207
3208         * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
3209         * gtk/gtkclist.c:
3210         removed ::vadjustment and ::hadjustment args, introduced
3211         ::scroll_adjustments signal.
3212         added ::shadow_type, ::selection_mode and ::row_height args.
3213         added n_columns construct arg.
3214         (gtk_clist_construct): call gtk_object_constructed().
3215         (gtk_clist_set_row_height): if height is passed as 0,
3216         revert to automatic height calculation.
3217         (gtk_clist_destroy): before unrefing the adjustments, disconnect our
3218         signal handlers.
3219
3220 Fri Nov 21 22:34:58 1998  Tim Janik  <timj@gtk.org>
3221
3222         * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
3223         like gtk_object_new.
3224         (gtk_widget_destroy): assert that we only destroy constructed widgets.
3225
3226         * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
3227         to identify args that may only be used for construction.
3228         GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
3229         time.
3230         * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
3231         at the end if the object is not fully constructed.
3232         (gtk_object_newv): likewise.
3233         (gtk_object_destroy): assert that we only destroy constructed objects.
3234         (gtk_object_init): setup GTK_CONSTRUCTED from the
3235         objects real klass.
3236         (gtk_object_default_construct): new function to complete default
3237         construction of an object by applying missing construtor args with
3238         default values of 0, 0.0 or NULL.
3239         (gtk_object_constructed): new function to mark an object as being
3240         constructed (used from within constructors).
3241
3242         * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
3243         so it is immediatedly available for the caller.
3244
3245         * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
3246         the object initilizer (GtkObjectInitFunc takes a second arg now, the
3247         real klass), and asure that object initializers may temporarily alter
3248         the class pointer.
3249
3250 Fri Nov 20 08:00:30 1998  Tim Janik  <timj@gtk.org>
3251
3252         * gtk/testgtk.c: change all occourances of gtk_container_add (
3253         scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
3254         for widget!=(clist, ctree, text, viewport).
3255
3256         * gtk/gtkcombo.c:
3257         (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
3258         to add children to the scrolled window.
3259
3260         * gtk/gtkscrolledwindow.h:
3261         * gtk/gtkscrolledwindow.c:
3262         changed scrolled_window->viewport to scrolled_window->child, and use
3263         gtk_widget_scroll_adjustements() to set the scroll adjustments for the
3264         widget, we do not create an additional viewport anymore.
3265         added ::hadjustment and ::vadjustment constructor args.
3266         (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
3267         (gtk_scrolled_window_set_hadjustment):
3268         (gtk_scrolled_window_set_vadjustment): new functions that superceed
3269         gtk_scrolled_window_construct.
3270         (gtk_scrolled_window_construct): deprecated this function.
3271         
3272         * gtk/gtkhscrollbar.c:
3273         * gtk/gtkvscrollbar.c:
3274         * gtk/gtkhscale.c:
3275         * gtk/gtkvscale.c:
3276         support a constructor arg "::adjustment", and use gtk_widget_new() for
3277         the widget creation.
3278
3279         * gtk/gtkrange.c: added ::update_policy arg.
3280         (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
3281         a default adjustment so this function can be used for derived widgets
3282         that depend on the adjustment's existance.
3283         (gtk_range_destroy): disconnect the adjustment signal, so we don't
3284         get called after we got destroyed, we don't destroy the adjustment
3285         in here, because it might have been provided from another widget.
3286
3287         * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
3288         (gtk_viewport_destroy): same as gtk_range_destroy.
3289
3290         * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
3291
3292         * gtk/gtkwidget.h: 
3293         * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
3294         gboolean, indicating whether this widget supports activation.
3295         added gtk_widget_scroll_adjustements() to set the scrolling
3296         adjustments of a widget.
3297
3298 Wed Nov 19 01:22:42 1998  Tim Janik  <timj@gtk.org>
3299
3300         * gtk/gtkoptionmenu.c:
3301         (gtk_option_menu_remove_contents):
3302         (gtk_option_menu_update_contents): removed
3303         gtk_container_[un]block_resize() pairs.
3304
3305         * gtk/gtknotebook.h: 
3306         * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
3307         be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
3308         wrtie-only argument.
3309
3310         * *.c: made deprecated functions issue a message:
3311         gtk_clist_set_border, gtk_container_block_resize,
3312         gtk_container_unblock_resize, gtk_container_need_resize,
3313         gtk_object_class_add_user_signal, gtk_spin_button_construct,
3314         gtk_scrolled_window_construct.
3315         removed non-functional functions:
3316         gtk_container_disable_resize, gtk_container_enable_resize,
3317         gtk_clist_set_policy.
3318
3319 Wed Nov 18 22:54:36 1998  Tim Janik  <timj@gtk.org>
3320
3321         * gtk/gtkbox.c (gtk_box_init): 
3322         * gtk/gtkdrawingarea.c (gtk_drawing_area_init): 
3323         * gtk/gtkeventbox.c (gtk_event_box_init): 
3324         * gtk/gtkfixed.c (gtk_fixed_init): 
3325         * gtk/gtkframe.c (gtk_frame_init): 
3326         * gtk/gtkhandlebox.c (gtk_handle_box_init): 
3327         * gtk/gtkpacker.c (gtk_packer_init): 
3328         * gtk/gtkmisc.c (gtk_misc_init): 
3329         * gtk/gtkpreview.c (gtk_preview_init): 
3330         * gtk/gtkprogress.c (gtk_progress_init): 
3331         * gtk/gtkprogressbar.c (gtk_progress_bar_init): 
3332         * gtk/gtkseparator.c (gtk_separator_init): 
3333         * gtk/gtktable.c (gtk_table_init): 
3334         * gtk/gtkviewport.c (gtk_viewport_init): 
3335         * gtk/gtkalignment.c (gtk_alignment_init): 
3336         removed setting of the GTK_BASIC flag.
3337
3338         * gtk/gtkwidget.h:
3339         * gtk/gtkwidget.c:
3340         removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
3341
3342         * miscellaneous GtkType and macro fixups.
3343
3344 Sat Nov 21 18:53:13 1998  Owen Taylor  <otaylor@redhat.com>
3345
3346         * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin): 
3347         Fixed so it at least works with window managers other
3348         than Enlightenment, though it probably needs to be
3349         removed altogether.
3350
3351 1998-11-21  Andrew T. Veliath  <andrewtv@usa.net>
3352
3353         * gtk/gtkhandlebox.[ch]: Add shadow_type and
3354         gtk_handle_box_set_shadow_type function (plus a
3355         GtkHandleBox::shadow arg) to allow configuration of shadow in the
3356         bin window.
3357
3358 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3359
3360         * gtk/gtkcalendar.c: Fix for marking days from 
3361           Dan Reish <dreish@izzy.net>.
3362
3363 Thu Nov 19 00:15:27 1998  Lars Hamann  <lars@gtk.org>
3364
3365         * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
3366         in row_list. (from Samuel Solon <ssolon@usa.net>)
3367         
3368         * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
3369         (gtk_clist_get_column_widget): return column widget
3370
3371 Wed Nov 18 11:54:57 1998  Owen Taylor  <otaylor@redhat.com>
3372
3373         * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
3374         that are sent to a toplevel but are not within the
3375         toplevels bounds.
3376
3377         * gdk/gdkdnd.c gdk/gdk.h: Added support for a
3378         XdndProxy atom which proxies the drag to another window.
3379
3380 1998-11-17  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3381
3382         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
3383         that it is not needed.
3384
3385 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
3386         * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
3387           function to correctly determine gdk window position relative to
3388           its "root window" - contains check for an Enlightenment
3389           virtual root window.
3390         * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
3391           gdk_window_get_deskrelative_origin to get the origin of dragged
3392           handleboxes correctly. Now it works correctly with E.
3393           
3394 Tue Nov 17 1998  Tuomas Lukka <lukka@iki.fi>
3395
3396         * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
3397           getting types even though we were not using real type names,
3398           just the index.  This caused random crashes when more than 
3399           256 types were defined.
3400
3401 1998-11-17  Martin Baulig  <martin@home-of-linux.org>
3402
3403         * gtk/genmarshal.pl: Put output files in the current directory
3404         and not in the $(srcdir) since the VPATH is ignored for built
3405         sources.
3406
3407 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
3408
3409         * gtk/genmarshal.pl
3410         * gtk/Makefile.am: check for unchanged autogenerated files, so
3411         we don't rebuild everything just for adding a new function
3412
3413 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3414
3415         * gtk/gtkpixmap.h
3416           gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
3417           code thanks to GNOME stock by Eckehard Berns.  New function
3418           gtk_pixmap_set_build_insensitive to provide ability to turn 
3419           this off.
3420
3421 Tue Nov 17 00:06:29 1998  Lars Hamann  <lars@gtk.org>
3422
3423         * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
3424         new guints : tab_hborder, tab_vborder; marked tab_border deprecated
3425         (struct _GtkNotebookPage): new flags : expand, fill, pack
3426
3427         * gtk/gtknotebook.h/c
3428         (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
3429         tabs
3430         (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
3431         (gtk_notebook_set_tab_hborder): new function. set tab_hborder
3432         (gtk_notebook_set_tab_vborder): new function. set tab_vborder
3433         (gtk_notebook_query_tab_label): new function. get tab_label widget.
3434         (gtk_notebook_set_tab_label): new function. set tab_label widget.
3435         (gtk_notebook_set_tab_label_text): new function. set tab_label text.
3436         (gtk_notebook_query_menu_label): new function. get tab_label widget.
3437         (gtk_notebook_set_menu_label): new function. set tab_label widget.
3438         (gtk_notebook_set_menu_label_text): new function. set tab_label text.
3439         (gtk_notebook_set_tab_label_packing): new function. set tab_label
3440         fill, expand, fill_type
3441         (gtk_notebook_query_tab_label_packing): new function. get tab_label
3442         fill, expand, fill_type
3443
3444         (gtk_notebook_real_page_position): return logic page number
3445         (gtk_notebook_search_page) search next/prev logic page
3446         (gtk_notebook_update_labels): set logic page number.
3447         (gtk_notebook_page_compare): renamed gtk_notebook_find_page
3448         (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
3449         CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
3450         (gtk_notebook_button_press) (gtk_notebook_key_press)
3451         (gtk_notebook_focus) (gtk_notebook_pages_allocate)
3452         (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
3453         use gtk_notebook_search_page
3454         (gtk_notebook_page_allocate): fixed allocation bug
3455         (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
3456         (gtk_notebook_init): unset GTK_NO_WINDOW flag
3457         (gtk_notebook_size_request): check whether page->child is visible.
3458         changes due to tab h/vborder, homogeneous tabs
3459         (gtk_notebook_paint): don't draw invisible tabs
3460         (gtk_notebook_switch_page): calculate page_num if it's less than 0
3461         (gtk_notebook_append_*) (gtk_notebook_prepend_*)
3462         (gtk_notebook_insert_page): removed sanity checks
3463
3464         * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
3465
3466 Mon Nov 16 15:10:33 1998  Owen Taylor  <otaylor@redhat.com>
3467
3468         * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
3469         (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
3470
3471         * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was 
3472         broken. (GtkWidget's default unmap handler should work fine).
3473         Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
3474
3475 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
3476
3477         * gtk/gtkmenubar.[ch]: added shadow_type setting and
3478         gtk_menu_bar_set_shadow_type function to allow shadow
3479         configurability for menubars
3480
3481         * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
3482         guint
3483
3484 Mon Nov 16 00:17:53 1998  Tim Janik  <timj@gtk.org>
3485
3486         * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
3487         class creation and parent class' object initializer.
3488
3489 1998-11-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3490
3491         * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
3492         have assigned it to the window -- there is no point in keeping it around.
3493         (gtk_paned_unrealize): No need to destroy the cursor here.
3494
3495         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
3496         it is not needed.
3497
3498 Fri Nov 13 11:22:38 1998  Owen Taylor  <otaylor@redhat.com>
3499
3500         * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
3501         (gtk-blizzard-981005-0. 
3502          Christopher Blizzard <blizzard@applied-theory.com)
3503
3504         * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
3505         gdk_pixmap_foreign_new to gdkx.h.
3506
3507 Fri Nov 13 16:06:48 1998  Owen Taylor  <otaylor@redhat.com>
3508
3509         * gtk/Makefile.am: Added rules to generate an empty
3510         GTK+ theme called "Default" upon installation.
3511         
3512         * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
3513         of fonts and fontsets. 
3514         (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
3515
3516         * gtk/gtkmain.c: Change test to detect glibc's
3517         utf8 based mb* functions to be more specific.
3518
3519         * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation 
3520         cleanups.
3521
3522 Fri Nov 13 16:43:36 1998  Lars Hamann  <lars@gtk.org>
3523
3524         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
3525         show event_window
3526         (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
3527         event_window if draw_indicator is set
3528         (gtk_toggle_button_set_mode):
3529
3530 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
3531
3532         * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
3533         ensure proper type (SunPro cc complains)
3534
3535         * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
3536
3537         * gtk/gtktogglebutton.c: use our own draw method so we get proper
3538         redraws on active state
3539
3540 Thu Nov 12 00:26:13 1998  Lars Hamann  <lars@gtk.org>
3541
3542         * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
3543         defines.
3544
3545         * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
3546         GTP_POS_RIGHT
3547
3548 Wed Nov 11 19:54:58 1998  Lars Hamann  <lars@gtk.org>
3549
3550         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
3551         (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
3552         added ARG_WINDOW_PLACEMENT
3553
3554         * gtk/gtkclist.c (size_allocate_columns): resize column if column
3555         button > column width and auto_resize is set
3556         (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
3557         consider column button width of auto resized columns
3558         (gtk_clist_parent_set): removed 
3559
3560         * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
3561         (auto_resize_columns): auto_resize all columns
3562         (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
3563         (column_auto_resize): respect column button width of auto resized
3564         columns
3565
3566 1998-11-10  Martin Baulig  <baulig@merkur.uni-trier.de>
3567
3568         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
3569         we can check for latest GTK features.
3570
3571 Mon Nov  9 00:39:20 1998  Lars Hamann  <lars@gtk.org>
3572
3573         * gtk/gtkenums.h : new enum GtkCornerType 
3574         * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
3575         window_placement.
3576         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement): 
3577         new method to set window_placement.
3578         (gtk_scrolled_window_viewport_allocate)
3579         (gtk_scrolled_window_size_allocate): few changes due to
3580         window_placement.
3581         * gtk/testgtk.c (remove_selection): fixed while loop.
3582
3583 Sat Nov  7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
3584
3585         * gtk/gtkclist.c: check if column[i].button is valid before calling
3586         gtk_widget_intersect on it in gtk_clist_draw
3587
3588         * gtk/gtkdnd.c: removed unused variable empty_bits
3589
3590         * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
3591
3592         * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
3593         a boolean (thanks to Elrond for noticing this)
3594
3595 1998-11-07  Jay Cox  <jaycox@earthlink.net>
3596
3597         * gtk/gtkwindow.c: forward declaration for gtk_window_paint
3598         * gdk/gdkxid.c: declare xid_ht static
3599         * examples/*/Makefile: get the link ordering right.
3600
3601 Sat Nov  7 16:31:56 1998  Stefan Jeske  <stefan@gtk.org>
3602
3603         * gtk/gtkclist.c (gtk_clist_realize): Set background of
3604         title button window to GTK_STATE_NORMAL instead of
3605         GTK_STATE_SELECTED to avoid ugly flicker.
3606
3607 Fri Nov  6 23:29:40 1998  Lars Hamann  <lars@gtk.org>
3608
3609         * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
3610         if adjustments are NULL and list size has changed
3611         (gtk_clist_size_request): return real list requsition,
3612         if adjustments are NULL.
3613         (size_allocate_columns): use button->requisition.with, if column
3614         width is not set.
3615         (list_requisition_width): new function. return full list width.
3616         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
3617         auto create adjustments.
3618         (gtk_clist_motion) (move_vertical) (move_horizontal):
3619         check adjustment != NULL.
3620
3621 Thu Nov  5 12:06:16 1998  Owen Taylor  <otaylor@redhat.com>
3622
3623         * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
3624         a clear/redraw, not just a redraw, so the focus
3625         gets undrawn properly.
3626
3627         * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize): 
3628         Chain to gtk_widget_unrealize() instead of duplicating
3629         code.
3630
3631 Wed Nov  4 14:34:51 1998  Owen Taylor  <otaylor@redhat.com>
3632
3633         * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
3634         last vestiges of old DND.
3635
3636 Tue Nov  3 12:27:52 1998  Owen Taylor  <otaylor@redhat.com>
3637
3638         * gtk/gtkentry.c: Restored inner border to entries,
3639         erase cursors to background image.
3640
3641 Fri Oct 30 12:09:21 1998  Owen Taylor  <otaylor@redhat.com>
3642
3643         * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
3644         it was identical to paint_flat_box().
3645
3646         * gtk/gtkstyle.c: Coding style fixups.
3647
3648         * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
3649         test.
3650
3651         * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c: 
3652         Change 'side' for paint_[box/shadow]_gap and paint_extension
3653         to be GtkPositionType instead of a random int.
3654
3655         * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use 
3656         "frame" as detail - an aspectframe should draw identical
3657         to a frame.
3658
3659 Tue Oct 27 09:58:11 1998  Owen Taylor  <otaylor@redhat.com>
3660
3661         * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
3662         from combine_child_shapes().
3663
3664         * gdk/gdkwindow.c: Merge propagate_shapes() and
3665         propagate_combine_shapes() to remove code duplication.
3666
3667 Thu Nov  5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
3668
3669         * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
3670         gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
3671         So allocate some mem if it's not already done.
3672
3673         * clist scrollbar merges from HEAD
3674
3675 Tue Nov  3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
3676
3677         * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
3678
3679         * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
3680         of 0x80000000, so we stay within the bounds of a postive signed
3681         int (it broke some compilers)
3682
3683         * gtk/gtkmenushell.c
3684         * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
3685         when some of the menuitems are hidden
3686
3687         * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
3688         care of that
3689
3690         * gtk/gtkwidget.c: add a dummy continue after the line label
3691         next_rect, since some compilers don't like label: }
3692
3693 Sun Nov  1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
3694
3695         * Okay, so we need the X11R6 keysyms so programs don't have to
3696         worry about them. They don't conflict anyway. Reverted the #ifdef
3697         changes to gtk/*.c
3698
3699         * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
3700         special rule for them (X-derived-headers)
3701
3702 Sun Nov  1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
3703
3704         * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
3705         and gdkkeysyms.h into sed scripts, since the awk scripts weren't
3706         portable, and we really shouldn't be using awk anyway.
3707
3708         * makecursors.awk
3709         * makekeysyms.awk: bye bye
3710
3711         * gtk/gtkaccelgroup.c
3712         * gtk/gtkclist.c
3713         * gtk/gtknotebook.c
3714         * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
3715
3716 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
3717
3718         * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
3719         and gdkkeysyms.h. Remove those files from CVS.
3720
3721 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
3722
3723         * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
3724         of the USE_XIM #ifdef
3725
3726         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
3727         even with --include-deps. Slightly different from timj's fix, to avoid
3728         circular dependency with gtkmarshal.c
3729
3730         * autogen.sh
3731         * gtk/gtkclist.[ch]
3732         * gtk/gtkctree.c
3733         * gtk/gtkfontsel.[ch]
3734         * gtk/gtklist.c
3735         * gtk/gtklistitem.c
3736         * gtk/gtkobject.[ch]
3737         * gtk/testgtk.c: merges from HEAD
3738
3739         * gtk/gtkmenubar.c
3740         * gtk/gtkradiomenuitem.c
3741         * gtk/gtktreeitem.c: cleanups
3742
3743 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
3744
3745         * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
3746
3747 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
3748
3749         * configure.in: AIX has libpthreads, to make sure you can have
3750         more than one thread. Also add -D_THREAD_SAFE, and reorder
3751         configure.in so CFLAGS doesn't get clobbered when we actually
3752         want to modify it
3753
3754         * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
3755         in gdk_image_get
3756
3757         * gtk/testdnd.c: removed unused variable "buf"
3758
3759 Mon Oct 26 16:46:15 1998  Owen Taylor  <otaylor@redhat.com>
3760
3761         * gtk/gtkcontainer.c (gtk_container_unregister_toplevel): 
3762         remove_link(), not remove()
3763
3764 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
3765
3766         * gdk/gdkrgb.c: use glib endian stuff
3767
3768         * configure.in: don't need to check for endianness anymore
3769
3770         * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
3771
3772 Wed Oct 21 17:44:27 1998  Owen Taylor  <otaylor@redhat.com>
3773
3774         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
3775         all toplevel widgets, not toplevel windows. (I.e.,
3776         plugs should be reset)
3777
3778         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
3779         _do_ need to notify the other toplevels - by the time
3780         the get the client messages, the RC file dates will
3781         have been updated.
3782
3783         * gtk/gtkcontainer.h: Added a function call to list
3784         every toplevel widget.
3785
3786         * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse): 
3787         Don't send client messages to _every_ window on display!
3788         
3789 Tue Oct 20 16:21:04 1998  Owen Taylor  <otaylor@redhat.com>
3790
3791         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags 
3792         when dragging across widgets, only in drags
3793         starting in widget.
3794
3795 Tue Oct 20 15:59:49 1998  Owen Taylor  <otaylor@redhat.com>
3796
3797         * gtk/gtkdnd.c (gtk_drag_source_info_destroy): 
3798         Emit "drag_end" signal at end of drag.
3799
3800 Tue Oct 20 13:07:54 1998  Owen Taylor  <otaylor@redhat.com>
3801
3802         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
3803         for "gtk-embedded" data currently set by 
3804         GtkSocket, and use that to forward client message
3805         on to embedded windows. Only reset our own toplevel -
3806         the others will handle themselves. (Now that
3807         GtkMenus live in GtkWindows)
3808
3809 Mon Oct 19 16:40:40 1998  Owen Taylor  <otaylor@redhat.com>
3810
3811         * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
3812         client window finding code so that it works with
3813         WM's other than fvwm.
3814  
3815 Sun Oct 18 22:48:27 1998  Owen Taylor  <otaylor@redhat.com>
3816
3817         * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
3818         the "GtkDrawWindow" class, which is a descendent
3819         of the Window class which leaves its background alone.
3820         Essentially, a toplevel drawing area, though it does
3821         allow adding a child.
3822
3823 Sat Oct 17 00:40:51 1998  Owen Taylor  <otaylor@redhat.com>
3824
3825         * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
3826         merging RC styles. Report new share/themes path for
3827         themes directory. Deref theme engines when appropriate.
3828
3829         * gtk/gtkclist.c: Set all backgrounds in _style_set().
3830         Make sure that pixel for xor_gc is never 0.
3831
3832         * gtk/gtkctree.c: Choose colors for plus/minus more
3833         carefully, in a hopefully style-independent fashion.
3834         (Still needs a bit more work)
3835
3836         * gtk/gtkwidget.c: Don't send expose events to widgets
3837         which are about to be resized and redrawn. (Needs a
3838         bit more thought.)
3839
3840         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
3841         drawing on tabs for newly allocated, un-sized
3842         pages - we'll get the size wrong.
3843
3844 Thu Oct  1 17:38:07 1998  Owen Taylor  <otaylor@redhat.com>
3845
3846         * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
3847         up stupidities in last commit.
3848
3849 Thu Oct  1 14:25:43 1998  Owen Taylor  <otaylor@redhat.com>
3850
3851         * gtk/gtkwidget.c: When handling queued resizes, account
3852         for handleboxes, where the widget heirarchy is different
3853         than the window heirarchy by just queueing a resize on
3854         the entire handlebox if the detached child is changed.
3855
3856         - Remove widgets from the redraw queue when reparenting,
3857         even if not unrealizing. We queue a resize/redraw in
3858         any case.
3859
3860 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
3861         * gtk/gtkstyle.c: added check to see if the widget has been shaped
3862         byt the app via gtk_widget_shape_combine_mask and if it has does
3863         not reset the shape on theme change.
3864         
3865 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
3866
3867         * gtk/gtkfilesel.c: Keep a list of directories in which we never
3868         want to stat the entries (like /afs), and assume everything in
3869         those directories is a subdirectory.
3870
3871         - When following a path, try to open components even when
3872         we don't find them in their parent's directory to
3873         support automounters.
3874
3875 Fri Sep 11 15:36:33 1998  Owen Taylor  <otaylor@redhat.com>
3876
3877         * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
3878         now at least compiles again.
3879
3880         * gdk/gdk.c (gdk_event_translate): Don't pass events
3881         on destroyed widgets to the gdk_input layer.
3882
3883 Thu Sep  3 19:45:34 1998  Owen Taylor  <otaylor@redhat.com>
3884
3885         * gtk/gtkthemes.c: Use g_module instead of dlopen()
3886
3887 Thu Sep  3 19:30:11 1998  Owen Taylor  <otaylor@redhat.com>
3888
3889         * gtk/gtktooltips.c (gtk_tooltips_expose): Check
3890         if we've changed widgets since the expose event
3891         was queued.
3892
3893 Mon Aug 31 15:33:13 1998  Owen Taylor  <otaylor@redhat.com>
3894
3895         * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
3896         to restore approximate bin compatibility with the
3897         non-themes branch. (This does break bin compat
3898         within the themes branch.)
3899
3900 Sun Aug 30 16:48:27 1998  Owen Taylor  <otaylor@gtk.org>
3901
3902         * gtk/gtklabel.c (gtk_label_set): Eliminate a 
3903         gdk_window_clear_area() that snuck in with the
3904         menu underlines merge.
3905
3906 Mon Aug 24 23:37:26 1998  Owen Taylor  <otaylor@redhat.com>
3907
3908         * gtk/gtktext.c: Fixed some remaining background drawing,
3909           merges from main branch, cleanups.
3910
3911 Mon Aug 24 10:55:51 1998  Owen Taylor  <otaylor@redhat.com>
3912
3913         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
3914           dereference NULL focus tab.
3915
3916         * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
3917           functions since we need to both show/hide and 
3918           queue a redraw. (There's some duplication of drawing here, 
3919           we probably should only be queuing a redraw on the
3920           "value" portion of the scale.)
3921
3922 Fri Aug 21 19:02:30 1998  Owen Taylor  <otaylor@redhat.com>
3923
3924         * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
3925           into the theme-drawing framework. We do this by making them,
3926           like check/radio-buttons, no-window widgets with subwindows. We
3927           then move the value by calling gtk_widget_queue_clear() and only
3928           redraw the value in our draw() / expose() handler.  A virtual
3929           function clear_background is added which queues a clear on the
3930           "background" portion of the widget.
3931
3932 Fri Aug 21 13:04:27 1998  Owen Taylor  <otaylor@redhat.com>
3933
3934         * gtk/gtktext.c (mark_bg_gc): Make background colors work
3935           again. (We can't always paint the background with a
3936           paint() function - only do that for selected text)
3937
3938 Mon Aug 17 20:31:01 1998  Owen Taylor  <otaylor@redhat.com>
3939
3940         * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
3941           gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
3942
3943         * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
3944           the themes can't be built as part of the same build since
3945           they depend on gdk_imlib.
3946
3947 Fri Aug 14 12:44:30 1998  Owen Taylor  <otaylor@redhat.com>
3948
3949         * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
3950           from gtkthemes.c.
3951                 
3952         * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
3953           gtk/
3954
3955           - Upgrade to libtool-1.2b + patch to add shared library dependencies
3956             for Linux. (Needs to be extended to other platforms where they
3957             are safe)
3958
3959          - Check for -ldl so this branch should build on all platforms, though
3960            themes will work on all platforms they could work on.
3961
3962          - Use -version and -release simultaneously: sonames stay as they are
3963            in the current scheme, but -lgtk-1.1 changes to -lgtk.
3964
3965          - Added in extra -l flags to library LDFLAGS so we get shared library
3966            dependencies against X libs and -ldl. (But not libgtk against 
3967            libgdk or libglib yet, since dependencies against uninstalled
3968            libraries aren't portable)
3969
3970 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
3971         * gtkrc.c - added api calls to find module and theme paths from gtk.
3972           nuked gtk_install_prefix global.
3973         
3974 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
3975         * fixed gtk_install_prefix global.
3976           
3977 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
3978         * added gtk_install_prefix global const variabel to find where gtk is
3979           installed.
3980           
3981 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
3982         * added ~/.gtk/lib/themes/engines/ to the default searchpath for
3983           gtk theme engines
3984         
3985 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
3986         * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
3987
3988 Mon Aug 10 23:03:55 1998  The Rasterman <raster@redhat.com>
3989         * Fixed minor problem in gtkhandlebox.c with drawing, and some
3990           notebook stuff. Also pixmap theme is now "clean" again.
3991           
3992 Mon Aug 10 23:03:55 1998  Owen Taylor  <otaylor@redhat.com>
3993         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up 
3994           queued area resizing once more.
3995
3996 Mon Aug 10 23:09:30 EDT 1998
3997         * Added a few drawing fixes for notebook and other widgets. finished
3998           pixmap theme up to the level that can be supported so far. (need to
3999           add path discovery 9ie where is the rc fiel from - add to pixmap 
4000           path so we can get theimages from there too). then we can package 
4001           themes. After that need to add to theme seartch path stuff in users 
4002           home dir.
4003           
4004 Thu Aug  6 16:49:25 1998  Owen Taylor  <otaylor@redhat.com>
4005
4006         * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
4007           drawing area, draw in an expose handler.
4008
4009         * gtk/gtknotebook.c (gtk_notebook_expose): Check for
4010           empty current page.
4011
4012 Wed Aug  5 16:13:15 1998  Owen Taylor  <otaylor@redhat.com>
4013
4014         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
4015           creation of GC's so that they will be set before
4016           they are used for map events (why are they used there?)
4017
4018         * gtk/gtkwidget.c: Fixed mistake that caused widgets to
4019           be queued in multiple times in the queue.
4020
4021 Wed Aug  5 14:23:52 1998  Owen Taylor  <otaylor@redhat.com>
4022
4023         * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
4024           clip rects (or do anything) for shadow_none.
4025
4026 Wed Aug  5 13:14:57 1998  Owen Taylor  <otaylor@redhat.com>
4027
4028         * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
4029           Yes, it was needed. draw() and expose() are _not_
4030           identical.
4031
4032 Sat Aug  1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
4033         * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
4034
4035 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
4036         * YES YES YES YES YES clist borders work again! YES! YES YES! gimme 
4037           more baby oooh yeah more more MORE YES YES.
4038
4039 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
4040         * hopefully fixed problem wiht togglebuttons acting like
4041           radiobuttons in gtktogglebutton.c
4042
4043 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
4044         * fixed another drawing buglet in the frame drawing code (actually
4045           in the clearing code but anyway in gtkstyle.c)
4046
4047 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
4048         * Fixed warning from colorsel widget...
4049
4050 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
4051         * Fixed defautl drawing code to no longer clobber the original style
4052           pixmap bgs as it did and added a helper funciton og gtkstyle.c to
4053           help with this.
4054
4055 Thu Jul 30 18:09:21 1998  Owen Taylor  <otaylor@redhat.com>
4056
4057         * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
4058
4059         * gtk/gtktooltips.c: Pass a widget (the window) to the
4060           drawing function instead of the GtkTooltips.
4061
4062 Thu Jul 30 17:27:10 1998  Owen Taylor  <otaylor@redhat.com>
4063
4064         * gdk/gdkwindow.c: Abstract out checking for shape
4065           extension into a function.
4066
4067         * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
4068           Remove extra callls to gtk_window_draw().
4069
4070 Thu Jul 30 11:18:43 1998  Owen Taylor  <otaylor@redhat.com>
4071
4072         * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
4073
4074         * themes/th_main.c: Moved messages around so they are
4075           printed before destroying strings.
4076
4077 Wed Jul 29 16:56:07 1998  Owen Taylor  <otaylor@redhat.com>
4078
4079         * gdk/gdk.c: Fairly simple implementation of expose compression.
4080           (No GraphicsExpose compression yet, always compress
4081           with the equivalent of XtCompressMultiple - no compression
4082           of Expose events across non-Expose events)
4083         
4084         * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
4085           Find rectangle bounding two rectangles.
4086
4087         * gtk/gtkstyle.c: Set clip rects for a few extra GC's
4088           in gdk_default_draw_shadow()
4089         
4090 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
4091         * Fixed drawing functions to handle switching themes on the fly 
4092           gracefully and look decent.
4093           
4094 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
4095         * Added all the theme drawing code to all widgets, fixed up minor
4096           nigglies in some widgets when it comes to themes, seem to be
4097           running into some funky behavior with clipping rects in GC's. Too
4098           many files to list here. (all files that now use gtk_paint_* are
4099           affected).
4100
4101 Tue Jul 28 22:49:16 1998  Owen Taylor  <otaylor@redhat.com>
4102
4103         * themes/th_main.c themes/th_draw.c gtk/testgtkrc: 
4104           Set up the demo theme so it is loaded from the RC file.
4105
4106         * themes/th_draw.c: Alleviate the hardcoded paths a wee
4107           bit. (use $HOME/themes/)
4108
4109         * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in 
4110           the RC file via dlopen()
4111
4112 Tue Jul 28 20:30:56 1998  Owen Taylor  <otaylor@redhat.com>
4113
4114         Internal handling of styles and RC styles pretty much
4115         completely reworked for Theme work.
4116
4117         * gtkthemes.[ch]: 
4118          - Added routines for virtualization of RcStyle and Style handling.
4119          - Temporary "sample" inline theme-engine. (Does nothing
4120            but print out a few messages.
4121         
4122         * gtkrc.[ch]
4123          - Made GtkRcStyle public, added flags to tell if particular
4124            colors have been set.
4125          - RC Styles are "transparent", and the final style for
4126            a widget is the composition of all matching styles
4127          - Added pointer to GtkThemeEngine, and gpointer engine_data
4128            to RC style and style.
4129          - Parse "engine" keyword, load the appropriate theme engine
4130            and call the engine's parser.
4131         
4132         *  gtkstyle.[ch]
4133          - Keep a GtkRcStyle * in styles created from Rc Styles.
4134          - Load up images from RC file at style attachment time.
4135          - Call ->engine->foo() at appropriate times.
4136          - Don't use a GCache. All incarnations for a style are
4137            just linked together in a list, depend on the RC style 
4138            code to find the existing copy.
4139
4140 Tue Jul 28 14:41:54 1998  Owen Taylor  <otaylor@redhat.com>
4141
4142         * gtk/gtkwidget.[ch]: Added the concept of queued redraws
4143           of partial areas. This can be done either relative
4144           to the existing windows (gtk_widget_queue_clear[_area]())
4145           or relative to the future allocation of the widget
4146           (gtk_widget_queue_draw[_area]). 
4147
4148           The initial implementation is pretty braindead, but
4149           can be improved.
4150
4151         * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
4152           in favor of gtk_widget_queue_clear().
4153         
4154         * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
4155           flags in favor of gtk_widget_queue_clear()
4156         
4157 Tue Aug  4 19:12:14 1998  Owen Taylor  <otaylor@redhat.com>
4158
4159         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
4160           handling of partially clipped areas.
4161
4162 Thu Nov  5 18:52:35 1998  Lars Hamann  <lars@gtk.org>
4163
4164         * gtk/gtkclist.h (struct _GtkCListClass)
4165         * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
4166
4167 Thu Nov  5 16:00:32 1998  Lars Hamann  <lars@gtk.org>
4168
4169         * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
4170         vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
4171
4172         * gtk/gtkclist.c (gtk_clist_class_init): added new args types
4173         "hadjustment" & "vadjustment"
4174          (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
4175         set/get_arg functions
4176         (gtk_clist_construct): don't create/adjust scrollbars.
4177         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
4178         to set h/vadjustments
4179         (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
4180         to query h/vadjustments
4181         (create_scrollbars): removed.
4182         (create_adjustments): replacement for create_scrollbars
4183         (gtk_clist_new): call gtk_clist_new_with_titles
4184         (gtk_clist_new_with_titles): don't warn on titles == NULL
4185         (move_horizontal): use CLAMP instead
4186         (gtk_clist_set_policy): deprecated method.
4187         use gtk_scrolled_window_set_policy instead.
4188         (vadjustment_value_changed): use clist->vadj.
4189         (adjust_scrollbars): renamed to adjust_adjustments
4190         (adjust_adjustments): former adjust_scrollbars
4191         (gtk_clist_destroy): unref adjustments
4192         (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
4193         (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
4194         (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
4195         (gtk_clist_thaw) (real_insert_row) (real_remove_row)
4196         (gtk_clist_set_row_height) (real_resize_column):
4197         call adjust_adjustments
4198         (gtk_clist_moveto): return if clist has no adjustments yet.
4199         (gtk_clist_parent_set): new GtkWidget::parent_set function.
4200         Autogenerate h/vadjustments if needed.  
4201         (move_horizontal) (move_vertical): some cleanups
4202
4203         * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
4204         call only gtk_viewport_set_h/vadjustment and let these functions
4205         do the work.
4206         (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
4207         generate a new adjustment if needed
4208
4209         * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
4210         use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
4211         
4212         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
4213         queue_resize if visibility of scrollbars changes
4214         (gtk_scrolled_window_remove): only call container_remove with
4215         scrolled_window->viewport automatically if viewport was autogenerated
4216         (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
4217         auto create a viewport only if widget does not take h/vadjustments.
4218         (gtk_scrolled_window_construct): don't generate a viewport
4219         automatically.
4220         (gtk_scrolled_window_forall): call callback with viewport in any case
4221         (gtk_scrolled_window_set_arg): call gtk_container_add in case of
4222         ARG_VIEWPORT
4223         (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
4224         (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
4225         viewport != NULL
4226
4227         * gtk/testgtk.c 
4228         (create_ctree) (export_ctree) (create_clist): use a scrolled_window
4229         in conjunction with clists/ctrees
4230
4231         * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
4232         in conjunction with clists
4233
4234         * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
4235         in conjunction with clists
4236
4237 Wed Nov  4 21:52:57 1998  Lars Hamann  <lars@gtk.org>
4238
4239         * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
4240         (gtk_ctree_remove_node): select focus_row if needed
4241         (cell_size_request): only get pixmap size if pixmap != NULL
4242
4243 Wed Nov  4 04:30:37 1998  Tim Janik  <timj@gtk.org>
4244
4245         * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
4246         GTK_IS_WIDGET (widget):
4247
4248 Wed Nov  4 02:02:07 1998  Lars Hamann  <lars@gtk.org>
4249
4250         * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
4251         focus_row after a remove_row call.
4252
4253 Sun Nov  1 21:00:06 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>
4254
4255         * gtk/gtkoptionmenu.c
4256         * gtk/gtkmenushell.c: make option menus work when some of the
4257         menuitems are hidden - previously, option menu would popup too
4258         high.
4259
4260 1998-10-31  Raja R Harinath  <harinath@cs.umn.edu>
4261
4262         * gtk/gtkfeatures.h.in: Remove `#pragma }'.
4263
4264         * gdk/gdki18n.h: Update to use new `glib' widechar defines.
4265
4266         * configure.in (CFLAGS): Don't use test -z "echo .. | grep".  Use
4267         case instead.
4268         (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
4269         (GDK_WLIBS): New variable.  Lists extra libraries needed to use
4270         widechar functions.
4271         * gtk-config.in (--libs): List $GDK_WLIBS, too.
4272
4273 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
4274
4275         * Released GTK+ 1.1.3
4276         
4277         * INSTALL:
4278         * NEWS:
4279         * README:
4280         * gtk+.spec:
4281         * docs/gtk-config.1: updated for v1.1.3
4282
4283         * Makefile.am
4284         * sanity_check
4285         * docs/Makefile.am: Includes new 'make release' as well as
4286           'make sanity'.  Also handles html and text creation from html,
4287           and puts them into the distribution
4288
4289         * docs/Makefile.sgml: removed, similar functionality is now in 
4290           the Makefile.am file
4291
4292         * docs/.cvsignore: ignore html and text directories
4293         * docs/glib.texi: removed (now in glib dist)
4294
4295 Fri Oct 30 20:02:36 1998  Lars Hamann  <lars@gtk.org>
4296
4297         * gtk/gtklist.c (gtk_list_remove_items_internal): 
4298         free undo_un/selection, unselect list_item before disconnect
4299         signal functions
4300         (gtk_list_destroy): removed. gtk_list_shutdown clears the list
4301         already
4302         (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
4303         (gtk_list_signal_item_toggle)   (gtk_list_signal_scroll_horizontal)
4304         (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
4305         (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
4306         (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
4307         (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
4308         (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
4309         new functions. These functions are signal connected to inserted
4310         list_items, to handle key bindings and GtkItem::de/select/toggle
4311         signals.
4312
4313         * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
4314         gtk_object_class_add_signals call.
4315         (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
4316         (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
4317         (gtk_list_item_start_selection) (gtk_list_item_end_selection)
4318         (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
4319         (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
4320         removed. These functions are handled via connected
4321         gtk_list_signal_* functions now
4322
4323 Fri Oct 30 05:24:43 1998  Tim Janik  <timj@gtk.org>
4324
4325         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
4326         even with --include-deps:
4327         $(libgtk_la_SOURCES): $(BUILT_SOURCES)
4328
4329 Fri Oct 30 01:56:08 1998  Tim Janik  <timj@gtk.org>
4330
4331         * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
4332         gtk_object_data_set_destroy to fit the gtkobject.h API.
4333
4334         * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
4335         * gtk/gtkfontsel.h:
4336         * gtk/gtkfontsel.c:
4337         Added support for an extra 'base' filter which an application can
4338         set to restrict the fonts available to the user (e.g. a terminal
4339         program only wants the user to be able to select fixed-width fonts).
4340         The type of font (bitmap/scalable/scaled bitmap) is now
4341         also a part of the filter, so that an application can
4342         request that only scalable fonts are shown.
4343         There are new functions to set the base & user filters.
4344         I've also stopped the up/down key press signals getting
4345         to the clists since the font selection widget handles
4346         them itself. It acted a bit strangely before.
4347
4348 Sun Oct 25 20:27:02 1998  Tim Janik  <timj@gtk.org>
4349
4350         * gtk/gtkmain.c (gtk_init): support an environment variable
4351         GTK_MODULES= which takes a colon sperated list of module names
4352         automatically loaded at gtk_init() startup.
4353
4354 Sun Oct 25 08:04:33 1998  Tim Janik  <timj@gtk.org>
4355
4356         * gtk/gtkwidget.c: added more g_return_if_fail() statements.
4357
4358 Thu Oct 22 22:40:35 1998  Lars Hamann  <lars@gtk.org>
4359
4360         * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
4361         is sufficient
4362
4363 Thu Oct 22 16:22:55 1998  Lars Hamann  <lars@gtk.org>
4364
4365         * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
4366         columns
4367
4368 Thu Oct 22 02:29:53 1998  Tim Janik  <timj@gtk.org>
4369
4370         * gtk/gtkfilesel.h: GtkType and macro fixups
4371         * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
4372         for the file selection widget to try a completion on (set the
4373         initial filter).
4374
4375 Wed Oct 14 14:34:04 1998  Tim Janik  <timj@gtk.org>
4376
4377         * gtk/gtkmain.c: implement idle functions via GHook. this gives a
4378         slight speed improvement and lessens code duplication.
4379
4380 Tue Oct 20 14:53:28 1998  Owen Taylor  <otaylor@redhat.com>
4381
4382         * gtk/gtkdnd.c: Always send "drag_leave" to dests
4383         without GTK_DEST_DEFAULT_MOTION. 
4384
4385 Tue Oct 20 11:55:24 1998  Owen Taylor  <otaylor@redhat.com>
4386
4387         * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
4388         on destroyed windows so we clear the XID table properly.
4389         Finish up restructure of return value handling that
4390         was half-done before.
4391
4392 Tue Oct 20 12:57:10 1998  Owen Taylor  <otaylor@redhat.com>
4393
4394         * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
4395         the window tree more comprehensively, so that we find
4396         client windows hidden under non-toplevels.
4397
4398 Tue Oct 20 12:43:04 1998  Owen Taylor  <otaylor@redhat.com>
4399
4400         * gtk/gtkselection.c (gtk_selection_data_set): 
4401         Maintain the null-termintation guarantee, even when 
4402         data = NULL, length = 0. (Warn on data = NULL, 
4403         length > 0)
4404
4405 Mon Oct 19 16:41:44 1998  Owen Taylor  <otaylor@redhat.com>
4406
4407         * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
4408         into function prototype for drag_data_received. 
4409
4410 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
4411
4412         * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
4413
4414 Mon Oct 19 23:44:41 1998  Lars Hamann  <lars@gtk.org>
4415
4416         * gtk/gtkclist.c: rearranged some functions
4417         (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
4418         flag of column
4419         (gtk_clist_set_column_resizeable): if resizeable disable auto_resize 
4420         (gtk_clist_set_border): deprecated function, use
4421         gtk_clist_set_shadow_type instead.
4422         (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
4423         (adjust_scrollbars): some cleanups
4424         (select_row) (unselect_row): removed. replaced by equivalent
4425         gtk_signal_emit calls
4426         (add_style_data): removed, use gtk_clist_style_set instead
4427         (gtk_clist_style_set): fill in size data, after style was set. 
4428         (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
4429         (gtk_clist_set_cell_style): auto_resize columns if needed
4430         (column_auto_resize): resize column if needed for auto_resize 
4431         (real_clear): disable auto_resize while list destroy
4432         (resize_column): removed
4433
4434         * gtk/gtkctree.c : (gtk_ctree_remove_node)
4435         (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
4436         (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
4437         (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
4438         (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
4439         (real_tree_collapse) (real_tree_expand) (column_auto_resize):
4440         auto_resize columns if needed
4441         (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
4442         (real_clear): disable auto_resize while processing the tree
4443
4444         * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
4445         for one column
4446
4447 Mon Oct 19 08:31:36 1998  Owen Taylor  <otaylor@redhat.com>
4448
4449         * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
4450         typo - look for right atom on transfer failures.
4451
4452 Sun Oct 18 20:52:22 1998  Owen Taylor  <otaylor@gtk.org>
4453
4454         * gtk/gtkwidget.c gtkmarshal.list: Change signal 
4455         for drag_data_get to match the use that was being
4456         made of it everywhere else...
4457
4458 Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>
4459
4460         * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
4461         mechanism, that is used for the DND messages.
4462
4463           Removed all the old DND code.
4464
4465         * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
4466         get the visual of a given colormap.
4467         
4468         * gtk/gtkcolorsel.c: Conversion to new DND, drag 
4469         a color-swatch.
4470
4471         * gdk/gdk.h gdk/gdkdnd.c: The low-level
4472         X oriented portions of drag and drop protocols.
4473         Sending and receiving client messages, and navigating
4474         window trees.
4475
4476         * gdk/gdkimage.c: added a gdk_flush() when destroying
4477         SHM images to hopefully make it more likely that
4478         X will gracefully handle the segment being destroyed.
4479
4480         * gdk/gdkprivate.h gtk/gtkdebug.h: Add new 
4481         DND debugging flags.
4482
4483         * gtk/gtkeditable.[ch]: Updates for the selection handling
4484         changes.
4485         
4486         * gtk/gtkselection.[ch]: Added GtkTargetList, a 
4487         refcounted data structure for keeping track of lists
4488         of GdkAtom + information. Removed selection_handler_add
4489         in favor of a "drag_data_get" signal.
4490
4491         * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
4492         dependent) parts of the DND protocols, display of drag icons,
4493         drag-under highlighting, and the "default handlers".
4494
4495         * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
4496         windows that are used for reliable pointer grabs and
4497         selection handling in the DND code.
4498
4499         * gtk/testdnd.c: New test program for new DND. (Old
4500         DND tests in testgtk still need to be converted.)
4501
4502         * gtk/testselection.c: Use the new selection API.
4503         
4504         * docs/dnd_internals: Start at describing how
4505         all the new code works inside.
4506
4507         * docs/Changes-1.2.txt: New file describing source-incompatible
4508         changes in GTK+-1.2.
4509
4510 Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>
4511
4512         * gdk/gdkwindow.c (gdk_window_remove_filter): Free
4513         the right list node.
4514
4515         * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
4516         to the XID table so we can receive events on it.
4517
4518 Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>
4519
4520         * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
4521         to get the timestamp from a generic event.
4522
4523 Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>
4524
4525         * gtk/gtkwidget.c (gtk_widget_add_events): Added function
4526         that safely adds additional events to a widget's event 
4527         mask, even if the widget has previously been realized.
4528         (We can do this, but not remove events from the event
4529          mask).
4530
4531 Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>
4532
4533         * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
4534         for AnyPropertyType.
4535
4536 Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>
4537
4538         * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
4539         hashing.
4540
4541 Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>
4542
4543         * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
4544         isn't a timestamp.
4545
4546 Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>
4547
4548         * gdk/gdk.c (gdk_event_translate): Removed printing
4549         of unknown window lookup warnings. (Made it
4550         a GDK_NOTE) - they happen in many circumstances.
4551
4552 Tue Sep  8 12:38:43 1998  Owen Taylor  <otaylor@redhat.com>
4553
4554         * Call XFilterEvent() on events we get for unknown
4555         windows, since it may be the window Xlib uses to
4556         communicate with the IM. 
4557         (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
4558
4559 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
4560
4561         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
4562         the adjustment.
4563
4564 Thu Aug 27 12:03:14 1998  Owen Taylor  <otaylor@redhat.com>
4565
4566         * gtk/gtksignal.c (gtk_signal_newv): Improve warning
4567         message for return_value + GTK_RUN_FIRST.
4568
4569 1998-10-18  Martin Baulig  <martin@home-of-linux.org>
4570
4571         * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
4572         line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
4573
4574 Fri Oct 16 15:59:02 1998  Lars Hamann  <lars@gtk.org>
4575
4576         * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
4577         styles of inserted row
4578         (change_style): change style of focus_row
4579
4580         * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
4581         (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
4582         to set/get row/cell styles.
4583         (gtk_clist_realize): attach row and cell style, allocate row colors.
4584         (gtk_clist_unrealize): detach row and cell styles.
4585         (get_cell_style): new function. get correct cell style.
4586         (draw_cell_pixmap): new function. 
4587         (draw_row): draw cells with row or cell styles.
4588         (row_new): set cell and row styles to NULL.
4589         (row_delete): detach & unref cell and row styles.
4590
4591         * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles): 
4592         new functions to attach/detach styles and allocate colors.
4593         (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
4594         styles of invisible nodes.
4595         (draw_cell_pixmap): new function. 
4596         (get_cell_style):  new function. get correct cell style.
4597         (gtk_ctree_draw_expander): new function. draw tree expander.
4598         (gtk_ctree_draw_lines): new function.draw tree lines.
4599         (draw_row): draw cells with row or cell styles.
4600         (row_new): set cell and row styles to NULL.
4601         (row_delete): detach & unref cell and row styles.
4602         (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style) 
4603         (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style): 
4604         Analogons of GtkCList functions 
4605         (gtk_ctree_set_spacing): new function. set spacing between
4606         tree expander and cell contents
4607         (gtk_ctree_set_expander_style): new function. set expander style
4608         of ctree.
4609         (ctree_is_hot_spot): few changes due to draw_row modifications.
4610
4611 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
4612
4613         * gtk/gtkcombo.c: try completion on MOD1-TAB.
4614         Handle case when the combo->list is empty.
4615
4616 Mon Oct 12 07:51:34 1998  Tim Janik  <timj@gtk.org>
4617
4618         * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
4619         handlers that have not yet been disconnected (finally managed to
4620         trigger the gtk_signal_handler_unref() paranoid warning).
4621
4622 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
4623
4624         * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
4625         width and height which is -1 and not -2.
4626
4627 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
4628
4629         * HACKING
4630         * autogen.sh: we need libtool 1.2b now
4631
4632 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
4633
4634         * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
4635         and bottom attach arguments as mandatory and readjust the table size
4636         and opposing edge accordingly if required. this way the order in which
4637         the arguments are set doesn't matter.
4638
4639 Thu Oct  8 15:53:59 1998  Owen Taylor  <otaylor@redhat.com>
4640
4641         * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
4642         message to print out parent class name correctly.
4643
4644 Thu Oct  8 07:07:10 1998  Tim Janik  <timj@gtk.org>
4645
4646         * gtk/gtkobject.h: 
4647         * gtk/gtkobject.c:
4648         removed functions gtk_object_set_data_destroy and
4649         gtk_object_set_data_destroy_by_id.
4650         added functions gtk_object_remove_no_notify and
4651         gtk_object_remove_no_notify_by_id which will remove a certain data
4652         portion without invokation of its destroy notifier, this should only
4653         be used in very controled circumstances.
4654
4655 Wed Oct  7 23:59:37 1998  Lars Hamann  <lars@gtk.org>
4656
4657         * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
4658         size_allocate_title_buttons call
4659         (gtk_clist_realize): changed initial column.window position
4660
4661 Wed Oct  7 20:27:28 1998  Lars Hamann  <lars@gtk.org>
4662
4663         * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
4664         xor_gc instead
4665         * gtk/gtkctree.c (create_xor_gc): removed
4666         (gtk_ctree_button_press): set correct line_attributes for
4667         clist->xor_gc on drag start
4668         (gtk_ctree_button_release): reset clist->xor_gc
4669
4670 Wed Oct  7 05:15:36 1998  Tim Janik  <timj@gtk.org>
4671
4672         * gtk/gtk*.h:
4673         * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
4674         which were in place to fixup emacs' cc-mode indentation.
4675         putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
4676         proper way to achive this and doesn't produce problems for
4677         stupid pragma-related compiler bugs. ;)
4678
4679 Wed Oct  7 00:59:46 1998  Lars Hamann  <lars@gtk.org>
4680
4681         * gtk/gtkclist.h: new signal GtkCList::resize_column.
4682         * gtk/gtkclist.c (draw_row): don't draw invisible columns
4683         (size_allocate_title_buttons) (size_allocate_columns):
4684         skip invisible columns
4685         (new_column_width): take min/max_width into account 
4686         (gtk_clist_button_release) (gtk_clist_motion):
4687         changes due to changed new_column_width function
4688         (LIST_WIDTH): changed define to inline function.
4689         (real_resize_column): class function for resize_column signal
4690         (gtk_clist_motion): fixed autoscrolling for column resizes
4691         (gtk_clist_set_column_visibility): don't hide last visible column,
4692         changed visible arg to gboolean
4693         (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
4694         new functions : set min/max width of a column
4695         (gtk_clist_set_column_resizeable): new function : enable/disable
4696         column resize operations by mouse
4697
4698         * gtk/gtkctree.c (draw_row): don't draw invisible columns
4699         (ctree_is_hot_spot): return FALSE if tree_column is invisible
4700         (draw_xor_line)  (draw_xor_rect): draw full rectangle/line if
4701         tree_column is invisible
4702         (gtk_ctree_find_all_by_row_data)
4703         (gtk_ctree_find_all_by_row_data_custom):  new function from
4704         Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
4705         GtkCTreeNodes with row->data == data.
4706
4707 Tue Oct  6 14:05:00 1998  Tim Janik  <timj@gtk.org>
4708
4709         * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
4710         memory (Martin Pool <mbp@wistful.humbug.org.au>).
4711
4712 Mon Oct  5 15:26:30 1998  Raph Levien  <raph@gimp.org>
4713
4714         * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
4715         should have been guint32. Thanks to Tristan Colgate for finding it.
4716
4717 Sun Oct  4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4718
4719         * gtk/gtkcalendar.h:
4720           gtk/gtkcalendar.c: More changes:
4721           - The day with focus is now seperated from the day selected
4722           - The day with focus has the xor's line around it
4723           - The selected day is now standard selected style
4724           - The week names and week numbers are now also drawn
4725             with selected style
4726           - Space now selects the day which has focus
4727
4728 Sun Oct  4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4729
4730         * gtk/gtkcalendar.h:
4731           gtk/gtkcalendar.c: Some significant changes, including:
4732           - No longer draw focus around entire widget, only around
4733             the day which has focus
4734           - Draw relief around entire widget like originally planned
4735           - Show header and day names by default 
4736           - Move data private to the widget out of GtkCalendar struct
4737             and only point to it with a gpointer
4738           - Remove some old unused variables from GtkCalendar struct
4739
4740 Sun Oct  4 17:45:43 BST 1998  Tony Gale  <gale@gtk.org>
4741
4742         * docs/gtk_tut.sgml: update I've had sat around:
4743           - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
4744           - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
4745           - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
4746
4747 1998-10-01  Martin Baulig  <martin@home-of-linux.org>
4748
4749         * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
4750         
4751         * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
4752         Makes it possible to individually show and hide columns.
4753         (size_allocate_columns): Adapted to keep track of hidden columns.
4754         (size_allocate_title_buttons): Likewise.
4755
4756 Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>
4757
4758         * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
4759         fundamental types, collect an argument of the type returned from
4760         gtk_type_get_varargs_type(). removed the first macro argument which
4761         was just the same as the fundamental type of the *arg passed to
4762         the macro.
4763         * gtk/gtkarg.c (gtk_args_collect): 
4764         * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
4765
4766         * gtk/gtktypeutils.h: 
4767         * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
4768         gtk_type_get_varargs_type() to set and query the varargs collect
4769         type used for a fundamental type, registered outside of Gtk.
4770
4771         * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
4772         GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
4773         GTK_TYPE_FLOAT.
4774
4775         * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
4776         GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
4777         to GTK_TYPE_FLOAT.
4778
4779 Sat Oct  3 01:25:24 1998  Lars Hamann  <lars@gtk.org>
4780
4781         * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
4782         (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand): 
4783         fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
4784
4785         (real_tree_expand) (real_tree_collapse):
4786         don't expand/collapse a leaf
4787
4788 Fri Oct  2 16:10:36 1998  Tim Janik  <timj@gtk.org>
4789
4790         * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
4791         segfault when looking up a non-existant value name (reported by
4792         Pablo <pcj+gtk@primenet.com>).
4793
4794 Thu Oct  1 10:40:20 1998  Tim Janik  <timj@gtk.org>
4795
4796         * gtk/gtkclist.h (gtk_clist_prepend):
4797         * gtk/gtkclist.c (gtk_clist_prepend): new function.
4798         (gtk_clist_insert): added g_return_val_if_fail()
4799         statements. accept a row parameter < 0 or > clist->rows to indicate
4800         append mode.
4801         (real_clear): first clean up all internal pointers and lists (e.g.
4802         clist->row_list or clist->rows), then delete the distinct rows. this
4803         is required because of destroy notifiers, we need to have all internal
4804         structures updated and be reentrant.
4805
4806         * gtk/gtkcalendar.h: 
4807         * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
4808         GtkCalendarClass signal methods.
4809         GtkType and macro fixups, put `void' into () prototypes, avoid C++
4810         style comments, indentation fixes, fixed some g_return_if_fail()
4811         statements.
4812         (gtk_calendar_paint_header):
4813         (gtk_calendar_paint_day_names): 
4814         (gtk_calendar_paint_week_numbers): 
4815         (gtk_calendar_paint_main): made these static functions.
4816         (gtk_calendar_select_month):
4817         (gtk_calendar_select_day):
4818         (gtk_calendar_mark_day):
4819         (gtk_calendar_unmark_day):
4820         (gtk_calendar_get_date): signedness corrections, use guints
4821         rather than gints.
4822         (gtk_calendar_size_request): removed unused variables.
4823
4824 Wed Sep 30 13:11:09 1998  Tim Janik  <timj@gtk.org>
4825
4826         * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
4827         widgets in the ->widgets_by_action list that have a callback
4828         defined (not only those with a callback_action!=0).
4829
4830 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4831
4832         * gtk/gtkcalendar.h:
4833           gtk/gtkcalendar.c:
4834           examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
4835
4836 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4837
4838         * gtk/gtkcalendar.h:
4839           gtk/gtkcalendar.c:
4840           examples/calendar: Added gtkcalendar widget and demo
4841
4842 Sat Sep 26 06:15:34 1998  Tim Janik  <timj@gtk.org>
4843
4844         * gtk/gtkclist.c (gtk_clist_sort): 
4845         (gtk_clist_clear): 
4846         (gtk_clist_unselect_all): 
4847         (gtk_clist_select_all): adde g_return_if_fail() statements.
4848
4849 Sat Sep 26 04:46:22 1998  Tim Janik  <timj@gtk.org>
4850
4851         * configure.in: set binary age and interface age to 0.
4852
4853         * gtk/gtkspinbutton.h: 
4854         * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
4855         gtk_spin_button_configure. gtk_spin_button_construct is still defined
4856         as an alias for gtk_spin_button_configure for source compatibility,
4857         but actuall use is deprecated.
4858         typeness corrections, i.e. gint->gboolean and gint->guint.
4859         added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
4860         GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
4861         GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
4862         GtkSpinButton::adjustment, GtkSpinButton::digits and
4863         GtkSpinButton::climb_rate.
4864         GtkType and macro fixups.
4865
4866 Sat Sep 25 23:33:55 1998  Tim Janik  <timj@gtk.org>
4867
4868         * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
4869         the *real* geometry position of a window, taken possible window
4870         manager offsets into account.
4871         this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
4872         olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
4873         it does fail though for amiwm which adds windows to a pseudo root
4874         window, and for icewm by a small offset because it defines the
4875         geometry position whithin its border.
4876
4877         * gtk/testgtk.c: added "saved position" test to figure how
4878         gdk_window_get_root_origin() interacts with window managers (repopup
4879         this window to figure ;).
4880
4881 Wed Sep 23 06:09:19 1998  Tim Janik  <timj@gtk.org>
4882
4883         * configure.in: update to Gtk+ version 1.1.3, binary age 1,
4884         interface age 1.
4885
4886         * gtk/gtkobject.c
4887         (gtk_object_ref): 
4888         (gtk_object_unref): check for ->ref_count to be greater than 0 (the
4889         existing code was buggy in letting ->ref_count==0 pass through and
4890         then failing the living_objs_ht assertion).
4891
4892         * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
4893         pixtext fields (Roman Pozlevich <roma@botik.ru>).
4894
4895 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4896
4897         * Released GTK+ 1.1.2
4898
4899 Mon Sep 21 01:12:44 1998  Jay Cox  (jaycox@earthlink.net)
4900
4901         * gtk/Makefile.am: use $(PERL) instead of perl
4902         * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
4903         also much faster to render.
4904
4905 Mon Sep 21 07:44:30 1998  Tim Janik  <timj@gtk.org>
4906
4907         * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
4908         the required memory block, rather than allocating it newly from
4909         scratch and doing a full-blown block copy on it.
4910
4911 Mon Sep 21 02:30:06 1998  Tim Janik  <timj@gtk.org>
4912
4913         * NEWS file update for upcoming release of Gtk+ version 1.1.2,
4914         binary age 0, interface age 0.
4915
4916         * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
4917
4918 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
4919
4920         * ltmain.sh: Patch to libtool-1.2b to make --disable-static
4921         work.
4922
4923 Sun Sep 20 09:52:39 1998  Owen Taylor  <otaylor@gtk.org>
4924
4925         * HACKING: indent other than GNU indent should be OK
4926           now.
4927
4928         * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
4929           instead of piping through indent. If indent wasn't
4930           found in ./configure don't bother indenting at 
4931           all.
4932
4933 Fri Sep 18 19:11:10 1998  Owen Taylor  <otaylor@redhat.com>
4934
4935         * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
4936
4937 Fri Sep 18 18:54:59 1998  Jay Cox  (jaycox@earthlink.net)
4938
4939         * gtk/Makefile.am: use $(AWK) instead of awk
4940
4941 1998-09-18  Raja R Harinath  <harinath@cs.umn.edu>
4942
4943         * gtk/Makefile.am (gdk_headers): 
4944         Remove references to $(top_srcdir). 
4945         (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
4946         * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
4947
4948 Fri Sep 18 19:58:24 1998  Tim Janik  <timj@gtk.org>
4949
4950         * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
4951         GData*object_data to cure compiler warnings.
4952
4953 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
4954
4955         * install-sh
4956         * missing
4957         * mkinstalldirs: updated to latest automake version
4958
4959 1998-09-17  Raja R Harinath  <harinath@cs.umn.edu>
4960
4961         * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
4962         (gtkinclude_HEADERS): ... here.
4963         (gtk.defs): Pass `g' flag to sed, to replace all occurances.
4964
4965 Thu Sep 17 10:49:51 1998  Raph Levien  <raph@gimp.org>
4966
4967         * HACKING: added GNU indent, as it is now required to successfully
4968         build gtk+. Should this be detected in autoconf, possibly?
4969
4970 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
4971
4972         * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
4973         change library versioning scheme to drop LT_RELEASE
4974         from the -l line, while keeping it in the soname.
4975
4976 Tue Sep 15 14:10:33 1998  Owen Taylor  <otaylor@redhat.com>
4977
4978         * configure.in Makefile.in: define a MAINT-like variable REBUILD
4979         which is set if Perl and awk are found, and autogenerated sources
4980         can be rebuilt. Remove the auto-generated sources from
4981         CVS. 
4982
4983         Add dependencies so that the autogenerated sources are 
4984         rebuilt if the files they depend on change. 
4985         (This unfortunately currently results in the entire
4986         gtk/ directory being rebuilt when any header changes.
4987         Moving all enums to gtkenums.h would fix this.)
4988
4989 Thu Sep 17 05:12:48 1998  Tim Janik  <timj@gtk.org>
4990
4991         * gtk/gtkobject.h: added gtk_object_set_data_destroy and
4992         gtk_object_set_data_destroy_by_id functions to set the destroy
4993         function pointer for an existing data portion.
4994
4995         * gtk/gtkobject.c: removed the GtkObjectData implementation and
4996         made all gtk_object_*data* functions use the GLib equivalents.
4997
4998 1998-09-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4999
5000         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
5001         is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
5002         (widget != NULL), otherwise radio button insertion will not work
5003         -- the widget argument is NULL for the first radio button in the
5004         group.
5005
5006 Tue Sep 15 13:09:24 1998  Owen Taylor  <otaylor@redhat.com>
5007
5008         * gdk/gdkimage.c (gdk_image_new): Reverted global changes
5009         of g_new to malloc(), added back in the one place where
5010         it actually mattered. #include <stdlib.h>.
5011
5012         * gdk/gdkrgb.c: g_malloc() to malloc() as above.
5013
5014 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
5015
5016         * gtk/gtkfilesel.c: Keep a list of directories in which we never
5017         want to stat the entries (like /afs), and assume everything in
5018         those directories is a subdirectory.
5019
5020         - When following a path, try to open components even when
5021         we don't find them in their parent's directory to
5022         support automounters.
5023
5024 Tue Sep 15 11:06:13 1998  Owen Taylor  <otaylor@redhat.com>
5025
5026         * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
5027         a new size from the WM if we asked for the same size
5028         before and our request was rejected.
5029
5030         * gtk/gtkwindow.c (gtk_window_configure_event): If
5031         in response to a request, we get a configure event
5032         with unchanged dimensions, send a synthetic expose
5033         since ForgetGravity won't expose our window.
5034
5035 Mon Sep 14 14:28:24 1998  Owen Taylor  <otaylor@redhat.com>
5036
5037         * gtk/gtktext.c (adjust_adj): Change the way we
5038         set the adjustments on resize so that it tries to
5039         keep the beginning of the text in approximately
5040         the same place. 
5041
5042         Removed assertion that the above change made invalid.
5043
5044 Thu Sep 10 22:19:35 1998  Owen Taylor  <otaylor@redhat.com>
5045
5046         * gtk/gtktext.c: - Save first_cut_pixels when switching
5047         sizes, so that if we switch to the _same_ size,
5048         we don't move lines around.
5049
5050         - Make sure that the text area always has a size of at
5051         least 1x1, then do all computations when realized.
5052
5053         - When fetching lines in recompute_geometry, make
5054         sure we fetch enough lines to cover the screen.
5055         
5056 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5057
5058         * gdk/gdkimage.c: changed g_new()s to malloc()s and 
5059           g_free()s to free()s to avoid mixing g_new()s with 
5060           free()s.  X itself uses free() on some of the 
5061           malloced memory.
5062
5063 Sat Sep 12 10:44:06 1998  Owen Taylor  <otaylor@redhat.com>
5064
5065         * gtkfilesel.c: Maintain a list of directories like
5066         /afs we know contain only directories, and avoid
5067         stat'ing files in those directories. (Because
5068         stat'ing all files in /afs is extremely expensive)
5069
5070         To support automounters, try to open directories,
5071         even if we couldn't find them when reading their
5072         parent directory.
5073
5074 Thu Sep  3 10:29:03 1998  Owen Taylor  <otaylor@redhat.com>
5075
5076         * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
5077         to allow the same gtk.m4 to work for 1.0.x and
5078         1.1.x.
5079
5080 Fri Sep 11 15:25:10 1998  Lars Hamann  <lars@gtk.org>
5081
5082         * gtk/gtkclist.c (gtk_clist_set_selectable): new function
5083         to set/unset the selectable flag of a single row.
5084         (gtk_clist_get_selectable): new function 
5085         to get the state of the selectable flag
5086
5087         * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
5088         (gtk_ctree_node_get_selectable): clist analogons
5089         
5090 Thu Sep 10 17:04:03 1998  Raph Levien  <raph@gimp.org>
5091
5092         * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
5093         pattern.
5094
5095         * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
5096         bugs in the 4bit gray cases.
5097
5098 Wed Sep  9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
5099
5100         * configure.in: added -posix check for NeXTStep
5101
5102         * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
5103         a unique buffer for each thread.
5104
5105         * docs/gtk-config.1: clarified copyright
5106
5107 Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>
5108
5109         * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
5110
5111         * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
5112
5113         * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
5114         ATEXIT.
5115         
5116         * ltconfig: use GLib's ltconfig which honours lcc.
5117
5118 Mon Sep  7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
5119
5120         * configure.in: comment the -std1 check and save LIBS properly
5121
5122 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
5123
5124         * gtk/testrgb.c: #include <stdlib.h>
5125
5126 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
5127
5128         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
5129         When the pointer is grabbed on an input window,
5130         either explicitely, or through press-grab, and
5131         then grabbed on a non-input window, ungrab the
5132         devices.
5133
5134 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
5135
5136         * gtk/gtktypeutils.h: don't include any gdk headers.
5137         added structure definitions for GtkTypeObject and GtkTypeClass,
5138         which cover the very basic fields of GtkObject and GtkObjectClass,
5139         which are actually used by the type system.
5140         
5141         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
5142         we only refer to our own structures. improved class inheritance
5143         sanity checking a bit.
5144
5145         * gtk/gtkobject.h: placed appropriate comments at the beginnings
5146         of the GtkObject and GtkObjectClass structures, which explain
5147         their relationship to GtkTypeObject and GtkTypeClass.
5148
5149         * gtk/gtktypeutils.h:
5150         * gtk/gtkobject.h:
5151         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
5152         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
5153         gtkobject.h to gtktypeutils.h.
5154
5155         * gtk/gtkobject.h:
5156         * gtk/gtkobject.c:
5157         removed gtk_object_check_cast() and gtk_object_check_class_cast()
5158         functions. to keep source compatibility, we can provide macro aliases
5159         for the corresponding gtk_type_* functions. but then again, people
5160         shouldn't have been using these functions anyways since they were part
5161         of Gtk's internal API.
5162
5163         * gtk/gtktypeutils.h:
5164         * gtk/gtktypeutils.c:
5165         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
5166         functions to check GtkTypeObject and GtkTypeClass types.
5167
5168 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
5169
5170         * gtk/gtkctree.h:
5171         * gtk/gtkctree.c: `const' fixups.
5172
5173         * gtk/gtkclist.h:
5174         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
5175
5176         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
5177         if it is passed as NULL.
5178
5179 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
5180
5181         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
5182         big-endian cases. Added a 4bpp packed gray mode (somewhat
5183         incorrectly hardwired to MSB), which should take care of
5184         Stric's hardware.
5185
5186 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
5187
5188         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
5189         GtkSIgnalQuery leak.
5190
5191 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
5192
5193         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
5194         GTK_MENU_DIR_CHILD: check for the existance of
5195         menu_shell->active_menu_item before accessing its child.
5196         GTK_MENU_DIR_PREV:
5197         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
5198         don't, make a default selection.
5199
5200 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
5201
5202         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
5203         the children with _forall for sensitivity changes and with
5204         _foreach on pure state changes. this fixes a lot of the
5205         old inclusions of internal widgets into _foreach calls.
5206
5207         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
5208         do the work. don't walk the subtrees of first level children.
5209
5210         * gtk/gtktreeitem.c: provide a _forall implementation,
5211         which walks the subtrees as well for include_internals.
5212
5213         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
5214         the submenus as well for include_internals.
5215
5216         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
5217         implemented gtk_scrolled_window_forall, which will iterate over
5218         the viewport and the scrollbars for gtk_container_forall or
5219         iterate over the viewports children for gtk_container_foreach.
5220
5221         * gtk/gtktoolbar.c: 
5222         * gtk/gtktable.c: 
5223         * gtk/gtkpaned.c:
5224         * gtk/gtkpacker.c:
5225         * gtk/gtkmenushell.c: 
5226         * gtk/gtklist.c: 
5227         * gtk/gtkfixed.c:
5228         * gtk/gtkclist.c:
5229         * gtk/gtkbox.c: 
5230         * gtk/gtkbin.c: 
5231         * gtk/gtknotebook.c:
5232         removed the old gtk_*_foreach functions and provided gtk_*_forall.
5233
5234         * gtk/gtknotebook.c:
5235         (gtk_notebook_real_switch_page): expose tabs.
5236         (gtk_notebook_page_num): new function to return the page number
5237         of a distinct child.
5238         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
5239         under some circumstances.
5240
5241         * gtk/gtktreeitem.c:
5242         (gtk_real_tree_item_select):
5243         (gtk_real_tree_item_deselect): major fixes.
5244         some general fixups wrt queue_redraw, and tree items not being
5245         NO_WINDOW widgets.
5246
5247         * gtk/gtklistitem.c:
5248         (gtk_real_list_item_select): 
5249         (gtk_real_list_item_deselect): 
5250         (gtk_real_list_item_toggle): 
5251         removed unneccessary queue_redraw calls.
5252
5253 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
5254
5255         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
5256         automatically popup the menu on space bar.
5257
5258 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
5259
5260         * gtk/gtkcontainer.h:
5261         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
5262         method), which acts similar to gtk_container_foreach(), but iterates
5263         over internal children. the GtkContainer::foreach signal vanished in
5264         favour of a new class method ->forall() that optionally includes
5265         internal widgets.
5266
5267         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
5268         but a _forall implementation, since all child widgets we have are
5269         internal ones.
5270         (column_button_create): set the parent window prior
5271         to gtk_widget_set_parent().
5272
5273         * gtk/gtkwidget.c:
5274         exchanged all calls to gtk_container_foreach() with
5275         gtk_container_forall().
5276
5277         * gtk/gtkwidget.h: 
5278         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
5279         the GtkWidget::composite_child argument. to have a widget created
5280         with the flag initially, two new functions got added to wrap a widgets
5281         creation:
5282         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
5283
5284 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
5285
5286         * gtk/gtktooltips.h:
5287         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
5288         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
5289         prior to the first tip being set.
5290         don't put an extra reference on the window, since it is a toplevel,
5291         it wont get destroyed from anywhere else.
5292
5293         * overall macro and GtkType fixups.
5294
5295 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5296
5297         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
5298         constructs by more forgiving ones.  (Does anyone else feel like
5299         the color selector need rewriting?).
5300
5301 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
5302
5303         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
5304         the adjustment.
5305
5306         * gtk/gtkmenu.c: Modified reference counting so
5307         that the reference count from the toplevel that
5308         the menu creates to the menu is invisible to the
5309         application.
5310
5311 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
5312
5313         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
5314         conversion selection logic, so Suns and other big-endian
5315         machines should get faster conv routines. This is also the
5316         point where 4bpp gray and 1bpp are checked in, although I
5317         wouldn't be surprised if 1bpp is a little buggy. This is
5318         synchronized with the 0.0.7 release of GdkRgb.
5319
5320         * gtk/Makefile.am: 
5321         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
5322         appropriate change to the Makefile.am
5323
5324 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
5325
5326         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
5327         which is good for images that scroll (makes the dither patterns
5328         align correctly)
5329
5330 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
5331
5332         * gdk/gdkcolor.c:
5333         (gdk_colormap_new) (gdk_colormap_get_system):
5334         quell some warnings with g_hash_table_new
5335
5336         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
5337         when we're done with it
5338
5339         * gtk/itemfactory.c:
5340         (gtk_item_factory_from_path):
5341         (gtk_item_factory_create_item): free some strings
5342
5343         * gtk/gtklabel.c:
5344         (gtk_label_finalize): free label->pattern when done
5345         (gtk_label_parse_uline): null terminate pattern string, delete
5346         some duplicated code
5347
5348         * gtk/testthreads.c: add #include <unistd.h> for sleep()
5349
5350 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
5351
5352         * gtk/gtktext.c (recompute_geometry): Make sure the
5353         mark we pass to line start is the beginning of a 
5354         real line, not a wrapped one.
5355
5356 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
5357
5358         * gtk/gtktext.c: Reference count the fonts used in
5359         the text widget.
5360
5361         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
5362         freeing functions to be more consistent, and more 
5363         convenient; leave the old names in for backwards compatibility.
5364
5365         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
5366         allocations in pseudo-color colormaps to greatly reduce
5367         calls to XAllocColor. Keep a per-colormap hashtable to
5368         speed up finding if there is an already-allocated matching
5369         color.
5370
5371         * gdk/gdkcolor.c: Don't just match read the system colormap
5372         when the colormap is created, but synchronize our copy
5373         with the system colormap periodically.
5374         
5375         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
5376         Change XIM constants names to match GDK conventions
5377
5378         * gtk/testinput.c: Allow the drawing area to get the focus.
5379
5380         * gtk/testgtk.c: Change around the Text test to demonstrates
5381         multiple fonts, use more colors.
5382
5383         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
5384         so they work after a widget is unrealized.
5385
5386         * gtk/gtktext.[ch]: Remove the requirement that the text
5387         widget be realized before adding text (!) Allocate colors
5388         ourself, instead of requiring the caller allocate them.
5389         Allow changing styles to work properly by keeping track
5390         of the values for a certain property are default or
5391         set explicitely.
5392
5393         * gtk/gtkmenu.h: Added some comments.
5394
5395         * gtk/gtkentry.c: Changes to match XIM constants.
5396
5397         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
5398         for adding keyed data to drawables. (Uses g_dataset
5399         internally)
5400
5401         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
5402         when creating an XPM - store them as user data for the GdkPixmap,
5403         so we don't leak colors when we create pixmaps from XPM's.
5404
5405         Allocate memory for color information in large blocks instead of 
5406         as many little pieces.
5407         
5408 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
5409
5410         * gdk/gdkrgb.c: removed some unused variables
5411
5412         * gtk/gtkclist.c
5413         * gtk/gtkmain.c: #if 0'd out some unused code
5414
5415         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
5416
5417 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
5418
5419         * gtk/gtkarg.h:
5420         * gtk/gtkarg.c:
5421         * gtk/gtkwidget.h: 
5422         * gtk/gtkwidget.c: 
5423         * gtk/gtkobject.h:
5424         * gtk/gtkobject.c:
5425         * gtk/gtkcontainer.h: 
5426         * gtk/gtkcontainer.c: 
5427         (gtk_object_new):
5428         (gtk_object_set):
5429         (gtk_widget_new):
5430         (gtk_widget_set): 
5431         (gtk_container_add_with_args):
5432         (gtk_container_child_set):
5433         begin the parameter elipsis (...) after the first argument name. this
5434         change is source compatible, since it was always required, even as NULL.
5435         (gtk_args_collect): 
5436         (gtk_object_args_collect): 
5437         (gtk_container_child_args_collect):
5438         changed prototypes to pass first_arg_name, also, pass va_list variable
5439         by value (portability concerns). callers changed.
5440
5441         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
5442         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
5443         can't pass va_list variables by reference for portability reasons.
5444
5445 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
5446
5447         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
5448         get_visual calls, so that it gets implicitly initialized.
5449
5450 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
5451         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
5452         such as GtkCTree function name changes
5453         
5454 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
5455
5456         * gtk/gtkmain.h:
5457         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
5458         binary version check, returning a static string for error descriptions,
5459         or NULL on success.
5460
5461 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
5462
5463         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
5464         computed our geometry yet, and if not, ignore the request.
5465
5466         * gtk/gtktext.c (correct_cache_insert): Fiddled around
5467         some more. All the bug-test codes seem to work at once
5468         now. (fingers crossed...)
5469
5470 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
5471
5472         * gdk/gdkrgb.c: silly visual fixes
5473
5474         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
5475         works
5476
5477 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5478
5479         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
5480         anything if the event's window is not the bin window.
5481         (gtk_handle_box_motion): Likewise.
5482
5483 1998-08-19  Raph Levien  <raph@gimp.org>
5484
5485         * gtk/testgtk.c (create_color_preview): pushed the colormap and
5486         visual so it would work better with GdkRgb.
5487
5488 1998-08-19  Raph Levien  <raph@gimp.org>
5489
5490         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
5491         4bpp static_color mode (for vga displays). Also fixed a '64' value
5492         in the dither matrix, which was causing one pixel out of 16k to be
5493         dithered wrong.
5494
5495         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
5496         most of the contents. This is an API change - any apps that relied
5497         on the internal structure of GtkPreview will need some change -
5498         most notably in the use of reserved colors. The Gimp needed
5499         changes in this regard.
5500
5501 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
5502
5503         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
5504         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
5505         --g-fatal-warnings), noticed by miguel.
5506
5507 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
5508
5509         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
5510         getcwd().
5511
5512         * gdk/gdkprivate.h:
5513         * gdk/gdkglobals.c:
5514         * gdk/gdkwindow.c:
5515         * gdk/gdk.c:
5516         * gtk/gtkwindow.c: 
5517         * gtk/gtkitemfactory.c: 
5518         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
5519
5520         * gtk/gtkselection.c:
5521         * gtk/gtkpreview.c:
5522         * gtk/gtkobject.c: 
5523         * gtk/gtkmain.c: 
5524         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
5525
5526         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
5527
5528 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
5529
5530         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
5531         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
5532         in case of show_tabs == NULL
5533
5534 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
5535
5536         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
5537         to --g-fatal-warnings again. this option now causes log levels of
5538         WARNING and CRITICAL to abort().
5539
5540         * gdk/gdk.c: 
5541         * gdk/gdkdnd.c: 
5542         * gdk/gdkcc.c: 
5543         * gdk/gdkfont.c: 
5544         * gdk/gdkwindow.c:
5545         * gdk/gdkvisual.c:
5546         * gtk/gtkwidget.c:
5547         * gtk/gtktypeutils.c:
5548         * gtk/gtktree.c:
5549         * gtk/gtkfontsel.c:
5550         * gtk/gtkmain.c:
5551         * gtk/gtkobject.c:
5552         * gtk/gtkpreview.c:
5553         * gtk/gtkselection.c:
5554         * gtk/gtktext.c:
5555         * gtk/gtktree.c:
5556         * gtk/gtktreeitem.c:
5557         did a global search&replace to substitute g_print() calls with
5558         g_message(). libraries shouldn't use printf(), g_print() or
5559         g_printerr() at all.
5560         a bunch of the replacements should probably be wrapped into the
5561         G{D|T}K_NOTE() macros, so they are special cased for debugging
5562         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
5563         things.
5564
5565         * gdk/gdkdnd.c: added copyright notice.
5566
5567 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
5568
5569         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
5570         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
5571         running a PII 233. It's synced with the 0.0.5 release of
5572         GdkRgb.
5573
5574 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
5575
5576         * gtk/gtkclist.h:
5577         (struct _GtkCListClass): new class methods:
5578         (sort_list) (insert_row) (remove_row) (set_cell_contents)
5579
5580         * gtk/gtkclist.c :
5581         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
5582         removed and replaced by (set_cell_contents)
5583         (set_cell_contents): function for class method set_cell_contents
5584         (real_insert_row): function for class method insert_row
5585         (real_remoce_row): function for class method remove_row
5586         (real_sort_list): function for class method sort_list
5587         (default_compare): fix to avoid problems with cell types != CELL_TEXT
5588
5589         * gtk/gtkctree.h :
5590         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
5591         (gtk_ctree_node_is_visible): new function to return visibility state
5592         of a node
5593         (gtk_ctree_show_stub): new function to set visibility of root stub
5594
5595         renamed functions :
5596         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
5597         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
5598         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
5599         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
5600         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
5601         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
5602         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
5603         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
5604         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
5605         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
5606         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
5607         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
5608         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
5609         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
5610         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
5611         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
5612         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
5613         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
5614         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
5615
5616         * gtk/gtkctree.c :
5617         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
5618         removed and replaced by (set_cell_contents)
5619         (set_cell_contents): function for class method set_cell_contents
5620         (real_insert_row): function for class method insert_row
5621         (real_remoce_row): function for class method remove_row
5622         (real_sort_list): function for class method sort_list
5623         (default_compare): removed. CTree now also compares two GtkCTreeRows
5624         instead of two GtkCTreeNodes.
5625         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
5626         unlinking the node
5627         (real_tree_expand) (real_tree_collapse): fix for refcounting of
5628         node pixmaps
5629         (set_node_info): call gtk_ctree_node_set_pixtext instead of
5630         manipulating the row itself
5631         
5632         * gtk/testgtk.c: use renamed functions of GtkCTree.
5633         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
5634         at work.
5635
5636 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
5637
5638         * gtk/gtkmain.c: removed gtk_input_add_interp.
5639
5640         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
5641         keyword.
5642         (gtk_editable_get_event_time): fix default: case.
5643
5644         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
5645
5646         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
5647
5648         * gdk/gdkcolor.c:
5649         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
5650         of our functions.
5651
5652         * various minor compilation cleanups, such as bogus commas in
5653         enums and similar things.
5654
5655 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
5656
5657         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
5658         (thanx raph).
5659
5660 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5661
5662         * NEWS: updated for 1.1.2
5663         * gtk+.spec: version = 1.1.2
5664
5665 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
5666
5667         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
5668         times. changed --gtk-with-module to --gtk-module at owen's request.
5669
5670 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
5671
5672         * gtk/gtkmain.c (gtk_init): feature a new commandline option
5673         --gtk-with-module=<module> that allows additional loading and
5674         initialization of modules (e.g. GLE).
5675
5676 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
5677
5678         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
5679         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
5680
5681         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
5682         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
5683         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
5684         different *-fatal-* arguments now. this needs to be revised and
5685         compressed to a reasonable amount of arguments.
5686
5687 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
5688
5689         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
5690         "--g-fatal-warnings" causes fatal warnings in GLib,
5691         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
5692         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
5693
5694         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
5695         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
5696
5697         * gtk/testgtk.c: 
5698         * gdk/gxid.c:
5699         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
5700         since automake doesn't support per target _CFLAGS yet.
5701
5702         * configure.in: require GLib 1.1.3.
5703
5704 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
5705
5706         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
5707         to set a callback to test if a node in drag can be dropped onto
5708         it's currrent location.
5709         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
5710         to change the pointer when a drag destination is not allowed.
5711
5712 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
5713
5714         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
5715         speeds up the 565_d case by about 25% total. Thanks Ray!
5716
5717 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
5718
5719         * Changed GtkSignalFunc back to () from (void). (again!)
5720
5721         * Added file README.cvs-commits
5722         
5723 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
5724
5725         * docs/gtk_tut.sgml:
5726           - Tidy up of the menufactory example from
5727             Andy Kahn <kahn@zk3.dec.com>
5728           - New section on Range Widgets from
5729             David Huggins-Daines <bn711@freenet.carleton.ca>
5730           - Started a new section on 'Advanced Event and Signal
5731             Handling' - used an email from Owen.
5732           - New appendix on Gdk Event Types
5733           - Added the tictactoe full example code to the
5734             'Code Examples' appendix
5735
5736 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
5737
5738         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
5739           to calculate all the metrics at once of a string, including
5740           things which weren't calculated before.
5741
5742         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
5743           MenuItem type, that when put as the first thing in a
5744           menu, makes the menu tearoff. Currently drawn as a
5745           dashed line.
5746
5747         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
5748           "hide_on_activate" to the MenuItem class structure to allow
5749           check and radio buttons to be changed with <Space> without
5750           hiding the menu.
5751
5752         * gtk/gtkitemfactory.c: 
5753           - Create a AccelGroup for each MenuShell we create.
5754           - If an '_' appears before a  character 'c' in the path,
5755             then make 'c' an accelerator in the menu's accel group,
5756             and if the menuitem is menubar <alt>C an accelerator 
5757             in the itemfactory's accel group. Double '__' inserts
5758             a literal '_'
5759
5760         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
5761           which is a string. If an '_' appears in this string,
5762           the corresponding position in the label is underlined.
5763
5764           Add gtk_label_parse_uline() convenience function which
5765           takes a string with embedded underlines, sets the
5766           pattern and label, and returns the accelerator keyval.
5767
5768         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
5769           Instead, they create a GtkWindow and add themselves
5770           to that. (When torn off, another new feature, they
5771           create another GtkWindow to hold the torn off menu)
5772
5773           New function gtk_menu_set_tearoff_state()
5774         
5775         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
5776           Added action signals  for keyboard navigation of menus.
5777
5778         * gtk/gtkmenushell.c: Key press handler which activates
5779           bindings for navigation, and accelerators, for handling
5780           underline accelerators. Exported functions to select 
5781           and activate menu items in a menushell.
5782
5783         * gtk/testgtk.c: Added a new "Item Factory" test which
5784           tests GtkItemFactory and the new keyboard navigation
5785           of menus.
5786
5787 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
5788
5789         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
5790         external functions have been called. also relookup nodes after
5791         this function has been invoked.
5792
5793 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
5794
5795         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
5796           beginning of Text when creating the Text widget.
5797
5798         * gtk/testgtk.c: Grab the focus on the text widget so
5799           as to test out the above.
5800
5801 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
5802
5803         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
5804           ::changed is a notification signal and should have no default
5805           handler. A complete redraw of the Text widget does _not_ need to
5806           be done on every text insertion.
5807
5808 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
5809         (gtk-abilleira-072198-patch)
5810
5811         * gtk/gtkwindow.[ch]: 
5812           Add gtk_window_set_modal() which sets a flag; when
5813           set the window does a gtk_grab_add() when the window
5814           is shown, and a gtk_grab_remove() when the window
5815           is hidden. 
5816
5817         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
5818           that case will run "Create Dir","Delete File" and "Rename File" 
5819           dialogs as modal too.
5820
5821         * gtk/testgtk.c: Added a button with an example of creating modal 
5822           dialog boxes. Including file selection and color selection standard
5823           dialogs.
5824         
5825 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
5826
5827         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
5828           Removed CAN_FOCUS by default from scrollbars, button
5829           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
5830           (Scrollbar definitely good change, toolbar bit more questionable)
5831
5832 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
5833
5834         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
5835         Pettersen).
5836
5837 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
5838
5839         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
5840           added all logical operations to gc->function.
5841
5842 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
5843
5844         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
5845         gtk_widget_size_allocate instead of gtk_widget_queue_resize
5846         if the visibility state of a scrollbar changes.
5847
5848 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
5849
5850         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
5851
5852 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
5853
5854         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
5855         gtk_clist_merge and gtk_clist_mergesort. :)
5856
5857 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
5858
5859         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
5860         `mergesort' -> `my_mergesort'.
5861
5862 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
5863
5864         * gtk/gtkenums.h: new enum GtkSortType.
5865         
5866         * gtk/gtkclist.h:
5867         * gtk/gtkclist.c:
5868         Added sorting capabilities to GtkCList. New APIs :
5869         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
5870         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
5871         New internal functions : default_compare, merge, mergesort.
5872
5873         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
5874         
5875         (gtk_clist_insert): Modified to handle gtk_clist_append and the
5876         auto sort flag. Changed the return value from void to gint to
5877         return the row number where the element was actually inserted.
5878
5879         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
5880         
5881         * gtk/gtkctree.h:
5882         * gtk/gtkctree.c:
5883         Removed the auto_sort flag, replaced ctree->node_compare with
5884         clist->compare all over the place, modified default_compare to
5885         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
5886         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
5887
5888         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
5889         sorting. The lists can be sorted by a column by clicking the 
5890         corresponding title button.
5891         
5892 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5893
5894         * Released GTK+ 1.1.1
5895
5896 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
5897
5898         * gtk/gtkctree.h:
5899         * gtk/gtkctree.c:
5900         (gtk_ctree_find): changed to return a gboolean
5901         (gtk_ctree_insert_gnode): new function for recursive insertion of a
5902         GNode tree.
5903         (gtk_ctree_real_select_recursive): fix for extended selection
5904         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
5905         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
5906
5907 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
5908
5909         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
5910         GLib version 1.1.1 is now required at minimum.
5911
5912         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
5913         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
5914
5915 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
5916  
5917         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
5918           cursor before (possibly) deleting the cursor's text
5919           property.
5920  
5921         * gtk/gtktext.c (correct_cache_delete): More attempts
5922           to clean the line-start cache up after inserting
5923           a property. Among other things, make sure to
5924           fix up text->current_line, since it is used to 
5925           refetch the changed lines.
5926  
5927 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
5928
5929         * gtk/gtktable.[ch]: Empty rows/columns of the table
5930         should not have been marked as being able to shrink.
5931         (Fixes problem with shrinking scrollbarless GIMP canvases)
5932
5933 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5934
5935         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
5936         function to find a row by its data pointer using a custom
5937         comparison function.
5938
5939 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
5940
5941         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
5942           this fixes a bug when the whole widget is made non-sesitive
5943           the buttons weren't redrawn
5944
5945 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
5946
5947         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
5948         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
5949         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
5950
5951 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
5952
5953         * gdk/gdkwindow.c (gdk_window_reparent): Change 
5954           window_private->parent pointer when reparenting.
5955
5956 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
5957
5958         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
5959         with the standalone release.
5960
5961 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
5962
5963         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
5964         (gtk_clist_button_release) (new_column_width): Few fixes for
5965         column resize. Store resize column in clist->drag_pos.
5966
5967 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
5968
5969         * gtk/gtkctree.h 
5970         * gtk/gtkctree.c 
5971         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
5972         to GtkCTreeNode *node.
5973
5974         * gtk/gtklist.h : added extended selection mode and auto scrolling.
5975         (struct _GtkList): removed unneeded variables timer, button,
5976         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
5977         Added new variables undo_selection, undo_unselection, last_focus_child,
5978         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
5979         drag_selection, add_mode.
5980  
5981         New functions :
5982         (gtk_list_extend_selection), (gtk_list_start_selection),
5983         (gtk_list_end_selection), (gtk_list_select_all),
5984         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
5985         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
5986         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
5987         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
5988         
5989         * gtk/gtklist.c : 
5990         (gtk_list_enter_notify): removed, because auto scrolling now works
5991         with gtk_list_motion_notify
5992  
5993         New functions, needed for auto scrolling :
5994         (gtk_list_motion_notify) (gtk_list_move_focus_child)
5995  
5996         New functions for extended selection support :
5997         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
5998         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
5999         (gtk_list_focus_lost)
6000         
6001         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
6002         function to support auto scrolling, and avoid out-of-sync errors in
6003         case auf GTK_SELECTION_BROWSE
6004         (gtk_list_focus): modified gtk_container_focus function to avoid out
6005         off sync errors in case auf GTK_SELECTION_EXTENDED
6006
6007         * gtk/gtklistitem.h 
6008         * gtk/gtklistitem.c :
6009         New signal functions for key binding support :
6010         (toggle_focus_row), (select_all), (list_item), (unselect_all)
6011         (list_item), (undo_selection), (start_selection), (end_selection)
6012         (extend_selection), (scroll_horizontal), (scroll_vertical),
6013         (toggle_add_mode)
6014         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
6015         GDK_KEY_RELEASE_MASK
6016         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
6017  
6018         * gtk/gtkcombo.c :
6019         (gtk_combo_popup_button_press):  grab pointer for combo->list
6020         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
6021         (gtk_combo_list_key_press): take care of which child HAS_GRAB
6022         (gtk_comb_init): don't connect combo->button with button_release_event
6023
6024 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
6025
6026         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
6027
6028 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
6029
6030         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
6031         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
6032         with horizontal and vertical autoscrolling.
6033
6034 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6035
6036         * gtk/docs/man: new directory
6037         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
6038
6039 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
6040
6041         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
6042         bug
6043
6044 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
6045
6046         * docs/gtk_tut.sgml: GtkTree section from
6047           David Huggins-Daines <bn711@freenet.carleton.ca>,
6048           add a GtkText widget example
6049         * examples/text/* example/tree/* : new examples for the
6050           GtkTree and GtkText widgets
6051         * docs/gtk_tut.sgml: added an appendix to hold complete code
6052           examples that aren't in a full form elsewhere in the
6053           tutorial (e.g. scribble)
6054
6055 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6056
6057         * Released GTK+ 1.1.0
6058
6059 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
6060
6061         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
6062         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
6063
6064 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
6065
6066         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
6067         values are looked up.
6068
6069         * gtk/gtktypeutils.h:
6070         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
6071         gtk_type_enums_find_value to lookup enum values.
6072
6073         * gtk/gtkctree.h: 
6074         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
6075         GtkCTreeExpansionType. fixed signal creations to pass the enum
6076         types not just the base type GTK_TYPE_ENUM.
6077
6078         * gtk/gtkclist.h: 
6079         * gtk/gtkclist.c: fixed signal creations to pass the real enum
6080         types not just the base type GTK_TYPE_ENUM.
6081
6082 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
6083
6084         * gtk/testgtk.c : 
6085         Began cleanup, e.g. use gtk_widget_show_all instead of many 
6086         gtk_widget_show's. Completely rewrote the button box sample
6087         (only one window now). Removed "miscellaneous" button.
6088
6089 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
6090
6091         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
6092         Fixed wrong allocation for GTK_BUTTONBOX_END.
6093         (allocation->x  =>  allocation->y)
6094
6095 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
6096
6097         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
6098         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
6099         
6100         * gtk/gtkctree.c (real_tree_select): added check to avoid double
6101         selected rows
6102         (gtk_ctree_button_press)
6103         (gtk_ctree_button_release): fix for pointer grab
6104
6105 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
6106
6107         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
6108         Fixed initialization problem - dirty memory could cause problems.
6109         Also checked that bitmapped fonts can be scaled when showing the
6110         available sizes.
6111
6112 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
6113
6114         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
6115         (gtk_ctree_sort_recursive): test for node != NULL
6116         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
6117         (gtk_ctree_last) : added sanity checks
6118         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
6119
6120 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
6121
6122         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
6123
6124 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
6125
6126         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
6127
6128 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
6129
6130         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
6131         to check out binding priorities. someone should really write
6132         gtkrc-mode for emacs.
6133
6134         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
6135         * gtk/testgtk.c (main): and move it here ;). this test says something
6136         on release of C-9. (this works only if the mouse pointer is on a
6137         spinbutton and there is no focus widget).
6138
6139         * gtk/gtkrc.h:
6140         * gtk/gtkrc.c:
6141         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
6142         gtk_rc_parse_priority to parse path priority types.
6143         export rc tokens.
6144         feature binding parsing.
6145
6146 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
6147
6148         * gtk/gtkbindings.h: 
6149         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
6150         feature binding parsing in rc files.
6151         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
6152         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
6153         order the bindings with lowest priority first.
6154
6155 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
6156
6157         * gdk/gdkrgb.c: actually builds and runs properly on big
6158         endian machines now, because we #include config.h. Also
6159         fixed up a compile error in the WORDS_BIGENDIAN case in
6160         gdk_rgb_convert_565_gray. I made the fix by looking at
6161         patterns in the other code; Raph can you verify this?
6162
6163         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
6164         warnings
6165
6166 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
6167
6168         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
6169         (tree_toggle_expansion) (real_select/unselect_row)
6170         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
6171
6172 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
6173
6174         * gtk/gtktext.c (new_text_property): We free things from
6175         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
6176
6177         * Fix up line start cache when splitting a property
6178         during an insert.
6179
6180 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
6181
6182         * gtk/gtkwidget.c: restauration => restoration
6183
6184 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
6185
6186         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
6187         hasn't been created yet, don't do the lookup.
6188
6189 1998-07-20  Raph Levien  <raph@acm.org>
6190
6191         * gdk/gdkrgb.c: More cleanups in the config process.
6192
6193 1998-07-20  Raph Levien  <raph@acm.org>
6194
6195         * gdkrgb.c: Fixed minor config bug preventing big-endian
6196         architectures from working.
6197
6198 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
6199
6200         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
6201         activity indicator. It is settable now as a fraction of the
6202         total width/height using gtk_progress_bar_set_activity_blocks.
6203         Renamed gtk_progress_bar_set_number_of_blocks to
6204         gtk_progress_bar_set_discrete_blocks.
6205
6206 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
6207
6208         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
6209         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
6210         tree to specified depth
6211         (gtk_ctree_expand_to_depth): expand tree to specified depth
6212         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
6213
6214 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
6215
6216         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
6217         of GTK_CLIST_ADD_MOD
6218         * gtk/testgtk.c (add1000_clist): changed pixmap
6219
6220 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
6221
6222         * gtk/gtkmain.h: 
6223         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
6224
6225         * gtk/gtktypeutils.h:
6226         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
6227
6228 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
6229
6230         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
6231         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
6232         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
6233         CHILD_ARG_POSITION
6234         (gtk_notebook_reorder_child): new funktion to change position of a
6235         notebook page
6236         (gtk_notebook_draw_arrow): draw left/right arrow with
6237         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
6238
6239         * gtk/gtkstyle.c (gtk_default_draw_arrow):
6240         added GTK_SHADOW_ETCHED_IN/OUT
6241
6242 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
6243
6244         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
6245           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
6246         Introduced generic GtkProgress widget. Derived GtkProgressBar from
6247         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
6248
6249 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
6250
6251         * gtk/gtktypeutils.h
6252         * gtk/gtkitemfactory.h: explicitly specify void in prototype
6253
6254 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
6255
6256         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
6257         of list
6258
6259 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
6260
6261         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
6262         sropped the approach of copying all signal specific data into a
6263         GtkHandlerInfo structure. we rather keep the signal data on the stack
6264         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
6265         avoids multiple lookups of the signal pointer and works savely together
6266         with destroy notifiers of handlers.
6267
6268         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
6269         someone destroys the entry on the ::activate signal.
6270
6271 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
6272
6273         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
6274         instead of ypad (typo).
6275         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
6276         border around the allocation).
6277         (gtk_arrow_init): the static requisition needs to be setup in this
6278         function rather than gtk_widget_new(), so arrow creation works without
6279         the gtk_arrow_new() constructing.
6280         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
6281
6282         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
6283         implementation for GtkWidget::size_request, so size requisition for
6284         simple statically sized widgets like GtkArrow works.
6285
6286 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
6287
6288         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
6289         prepend -I@libdir@/glib/include anymore, since glib-config handles
6290         it; --libs strips out redundant -L<path>'s properly (there was
6291         code in there to do it before, but it didn't work)
6292
6293 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
6294
6295         * gtk/gtknotebook.h: 
6296         * gtk/gtknotebook.c: signdness corrections all ove the place.
6297         implementation of object arguments: GtkNotebook::enable_popup,
6298         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
6299         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
6300         begun implementation of child args, we have GtkNotebook::tab_label, but
6301         GtkNotebook::menu_label and GtkNotebook::position still lack the
6302         implementation.
6303         (gtk_notebook_remove_page):
6304         (gtk_notebook_current_page): allow negative indices (-1) as alias for
6305         the last page.
6306
6307         * gtk/gtkentry.h:
6308         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
6309         arguments GtkEntry::max_length and GtkEntry::visibility.
6310         (gtk_entry_adjust_scroll): queue a redraw.
6311
6312         * gtk/gtkeditable.h:
6313         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
6314         object arguments GtkEditable::text_position and GtkEditable::editable.
6315         new (action) signal GtkEditable::set_editable.
6316         provide a default handler for GtkEditable::changed that queues a redraw.
6317
6318         * gtk/gtktext.h: 
6319         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
6320         set_editable.
6321
6322 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
6323
6324         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
6325         case of drag_target == NULL
6326         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
6327         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
6328         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
6329         gtk_dir_selection_file_button): fix due to changes in clist's
6330         select_row signal.
6331
6332 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
6333
6334         * gtk/gtkwidget.h:
6335         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
6336         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
6337         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
6338         to be gint16s rather than guint16s, since that's what the code expected
6339         (for a long time actually).
6340
6341         * gtk/gtkviewport.c:
6342         added support for object arguments: GtkViewport::shadow_type,
6343         GtkViewport::vadjustment and GtkViewport::hadjustment.
6344         (gtk_viewport_add): chain gtk_bin_add.
6345
6346         * gtk/gtkscrolledwindow.c: 
6347         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
6348         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
6349
6350         * gtk/gtkadjustment.h: 
6351         * gtk/gtkadjustment.c: 
6352         * gtk/gtkctree.h: 
6353         * gtk/gtkclist.h: 
6354         * gtk/gtkctree.c: 
6355         * gtk/gtkclist.c:
6356         * gtk/gtkscrolledwindow.h:
6357         * gtk/gtkscrolledwindow.c:
6358         * gtk/gtkviewport.h:
6359         * gtk/gtkviewport.c:
6360         GtkType and macro fixups.
6361
6362 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
6363
6364         * gtk/gtkctree.h :
6365         * gtk/gtkctree.c :
6366         Added focus handling, horizontal and vertical autoscrolling,
6367         extended Selection Mode, key bindings
6368         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
6369         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
6370         Removed gtk_ctree_clear.
6371         
6372         * gtk/gtkclist.h :
6373         * gtk/gtkclist.c : 
6374         Added focus handling, horizontal and vertical autoscrolling,
6375         extended Selection Mode, key bindings
6376
6377 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
6378
6379         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
6380         source tree. For more information on GdkRgb, please see:
6381         http://www.levien.com/gdkrgb/
6382
6383         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
6384         bothers me slightly that the feature is in gdk, and this file is
6385         in gtk, but it's probably ok.
6386
6387         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
6388
6389         * gdk/gdkrgb.c:
6390         * gdk/gdkrgb.h: Added this module.
6391
6392         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
6393
6394         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
6395
6396 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
6397
6398         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
6399         to this function. it needs to relookup the signal multiple times.
6400         this fixes spurious segfaults that could show up with signal intensive
6401         code, when classes are created during a pending emission (which is
6402         normal case).
6403
6404 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
6405
6406         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
6407         child if it isn't a label.
6408
6409 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
6410
6411         * gtk/gtkdialog.h: 
6412         * gtk/gtkseparator.h: 
6413         * gtk/gtkhseparator.h: 
6414         * gtk/gtkvseparator.h: macro and GtkType fixups.
6415
6416 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
6417
6418         * gtk/testgtk.c (create_cursors): display the current cursor name.
6419
6420         * gtk/gtktypeutils.h: 
6421         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
6422         the fundamental type definition. the GtkArg union now only covers
6423         the required storage types for argument values. adapted the GTK_VALUE_*
6424         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
6425
6426         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
6427         code, fixed int/float collection. fixed a bug in the sanity checking
6428         code for GtkObjects.
6429
6430         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
6431         argument collection code.
6432
6433         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
6434         macros when distinguishing the return type.
6435
6436 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
6437
6438         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
6439           is not NULL before trying to g_list_remove the child. A patch
6440           from Michael Lausch.
6441
6442 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
6443
6444         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
6445         collection (always casted to doubles upon argument passing).
6446
6447 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
6448
6449         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
6450         object_init_func for derived objects with the object's ->klass field
6451         still pointing to the corresponding base class, otherwise overridden
6452         class functions could get called with partly-initialized objects.
6453         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
6454
6455 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
6456
6457         * gtk/gtkobject.h:
6458         * gtk/gtkobject.c:
6459         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
6460
6461         * gtk/gtkcontainer.h:
6462         * gtk/gtkcontainer.c:
6463         (gtk_container_child_arg_get_info): new function which wraps
6464         gtk_arg_get_info().
6465
6466 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
6467
6468         * gtk/gtkcontainer.c:
6469         (gtk_container_arg_get): 
6470         (gtk_container_arg_set): 
6471         * gtk/gtkobject.c:
6472         (gtk_object_arg_set): 
6473         (gtk_object_arg_get):
6474         strictly check for the associated get/set arg functions. if an
6475         arg is readable or writable, the associated class functions *must*
6476         be provided.
6477
6478 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
6479
6480         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
6481         padding into account if there is an accelerator.
6482
6483 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
6484
6485         * gtk/gtkcontainer.c:
6486         (gtk_container_add_with_args): collect the arguments with
6487         gtk_container_child_args_collect, not through gtk_object_args_collect.
6488         (gtk_container_child_set): likewise.
6489
6490 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
6491
6492         * gtk/gtktypeutils.h: 
6493         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
6494         which is derived from GTK_TYPE_STRING.
6495
6496         * gtk/gtkbindings.c: reworked the argument type handling.
6497
6498 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6499
6500         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
6501           so that it seems to allow normal operation in those modes,
6502           although you will only see black  (GIMP toolbar now pops up,
6503           just don't create a new image and GIMP now works in 4 bit.)
6504
6505 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6506
6507         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
6508           array, which was too low (?)
6509
6510 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
6511
6512         * gtk/gtkcontainer.h: 
6513         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
6514         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
6515         we now export a new function gtk_container_child_args_collect().
6516         for consistency with the object arguments, a few functions got renamed:
6517         gtk_container_child_arg_get -> gtk_container_child_get,
6518         gtk_container_child_arg_set -> gtk_container_child_set,
6519         gtk_container_child_arg_getv -> gtk_container_child_getv,
6520         gtk_container_child_arg_setv -> gtk_container_child_setv,
6521         gtk_container_add_with_argv -> gtk_container_addv.
6522         note, gtk_container_add_with_args() remained, because its equivalent
6523         would be gtk_container_add(,, ...) which would break all existing code.
6524         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
6525         we expect the `arg_name' argument to be a const static string now.
6526         (gtk_container_get_child_arg_type): function removed.
6527
6528 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
6529
6530         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
6531         this is a static inline function that collects command line arguments
6532         from a va_list. this file can just be included in all places that
6533         need this functionality.
6534
6535         * gtk/gtkarg.h: 
6536         * gtk/gtkarg.c: new files which implement most of the argument
6537         handling stuff from gtkobject.c. also collected a few more
6538         gtk_arg_* utility functions from else places.
6539
6540         * gtk/gtkobject.h: 
6541         * gtk/gtkobject.c: moved most of the argument handling code into
6542         gtkarg.c. we now export gtk_object_args_collect() as a non-public
6543         method with a blind va_list pointer.
6544         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
6545         const static string now.
6546         (gtk_object_get_arg_type): function got removed.
6547
6548         * gtk/gtkwidget.c: 
6549         (gtk_widget_set): 
6550         (gtk_widget_new): adaptions for gtk_object_args_collect().
6551
6552         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
6553         fundamental type name so as to have a valid prefix, e.g. "bool"->
6554         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
6555         though that should probably be something like GtkNone since the
6556         type itself is called GTK_TYPE_NONE.
6557         even the internal type names need to avoid name clashes and must live
6558         in their own namespace, several code portions rely on that.
6559         we should relly have typedefs such as typedef gchar* GtkString; so the
6560         fundamental type names can be used for code dumpers just like with all
6561         the Gtk/Gdk types.
6562
6563 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
6564
6565         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
6566         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
6567         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
6568         (GTK_RELIEF_HALF).
6569         (gtk_button_paint): set the background for prelighted buttons with
6570         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
6571         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
6572         the shadow type (otherwise we get strange shadows for coloured buttons).
6573         (gtk_button_set_relief): queue a redraw after changing
6574         the relief.
6575         (gtk_button_class_init): 
6576         (gtk_button_set_arg): 
6577         (gtk_button_get_arg): added object argument "GtkButton::relief".
6578
6579         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
6580
6581 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
6582
6583         * gtk/gtkbutton.h:
6584         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
6585         GTK_BIN (button)->child to button->child to keep source compatibility.
6586
6587         * gtk/gtkoptionmenu.c:
6588         * gtk/gtkclist.c:
6589         * gtkcheckbutton.c: don't refer to button->child, but
6590         GTK_BIN (button)->child instead.
6591
6592 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
6593
6594         * docs/gtkfaq.sgml: update anon CVS info
6595
6596 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
6597
6598         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
6599         functions.
6600
6601         * gdk/gdkwindow.c:
6602         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
6603         to XFree() calls.
6604
6605 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6606
6607         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
6608         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
6609
6610 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
6611
6612         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
6613
6614 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
6615
6616         * gtk/gtkwidget.h:
6617         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
6618
6619         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
6620         error that prevented signal to entry addition for signals with
6621         parameters.
6622
6623 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
6624
6625         * ltconfig: fix for properly detecting shared lib support on
6626         SunPro cc (taken from libtool 1.2.a)
6627
6628 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
6629
6630         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
6631
6632 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
6633
6634         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
6635         rc set pattern is favoured, this is needed for overriding of style
6636         patterns with subsequently parsed rc files.
6637
6638 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
6639
6640         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
6641         error messages.
6642
6643 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
6644
6645         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
6646         modifier as well.
6647         (gtk_accelerator_name): add "<Release>" to the accelerator name if
6648         neccessary.
6649
6650         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
6651         account.
6652
6653         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
6654         default handler for key-release events, which checks for activation
6655         of GDK_RELEASE_MASK key bindings.
6656
6657         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
6658
6659 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
6660
6661         * gtk/gtkarrow.h: GtkType and macro fixups.
6662         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
6663         "GtkArrow::shadow_type".
6664
6665 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
6666
6667         * gtk/gtkalignment.h:
6668         * gtk/gtkbin.h: GtkType and macro fixups.
6669         
6670         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
6671         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
6672         GtkAlignment::xscale, GtkAlignment::yscale.
6673
6674 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
6675
6676         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
6677         fucntions from all parent types upon class initialization.
6678
6679         * gtk/gtkcontainer.c:
6680         (gtk_container_get_type): announce gtk_container_base_class_init to
6681         the type system.
6682         (gtk_container_base_class_init): new function to feature base class
6683         initialization.
6684         (gtk_container_get_child_arg): 
6685         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
6686         and set_child_arg methods of the class indicated through the argument
6687         name.
6688
6689         * gtk/gtkobject.c:
6690         (gtk_object_base_class_init): new function to feature base class
6691         initialization.
6692         (gtk_object_init_type): announce gtk_object_base_class_init to the type
6693         system.
6694         (gtk_object_class_init): setup the get_arg and set_arg pointers for
6695         GtkObjectClass.
6696         (gtk_object_setv): 
6697         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
6698         instead of bothering the type system with this.
6699
6700         * gtk/gtkaccellabel.c: 
6701         * gtk/gtkbutton.c: 
6702         * gtk/gtkradiobutton.c: 
6703         * gtk/gtktable.c:
6704         * gtk/gtktogglebutton.c: 
6705         * gtk/gtktipsquery.c: 
6706         * gtk/gtkbox.c: 
6707         * gtk/gtkpacker.c: 
6708         * gtk/gtkwidget.c: 
6709         * gtk/gtkwindow.c: 
6710         * gtk/gtkframe.c: 
6711         * gtk/gtkmisc.c:
6712         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
6713         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
6714         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
6715         arg functions to take a GtkObject argument.
6716
6717         gtk/gtkadjustment.c:
6718         gtk/gtkalignment.c:
6719         gtk/gtkarrow.c:
6720         gtk/gtkaspectframe.c:
6721         gtk/gtkbbox.c:
6722         gtk/gtkbin.c:
6723         gtk/gtkcheckbutton.c:
6724         gtk/gtkcheckmenuitem.c:
6725         gtk/gtkclist.c:
6726         gtk/gtkcolorsel.c:
6727         gtk/gtkcombo.c:
6728         gtk/gtkctree.c:
6729         gtk/gtkcurve.c:
6730         gtk/gtkdata.c:
6731         gtk/gtkdialog.c:
6732         gtk/gtkdrawingarea.c:
6733         gtk/gtkeditable.c:
6734         gtk/gtkentry.c:
6735         gtk/gtkeventbox.c:
6736         gtk/gtkfilesel.c:
6737         gtk/gtkfixed.c:
6738         gtk/gtkfontsel.c:
6739         gtk/gtkgamma.c:
6740         gtk/gtkhandlebox.c:
6741         gtk/gtkhbbox.c:
6742         gtk/gtkhbox.c:
6743         gtk/gtkhpaned.c:
6744         gtk/gtkhruler.c:
6745         gtk/gtkhscale.c:
6746         gtk/gtkhscrollbar.c:
6747         gtk/gtkhseparator.c:
6748         gtk/gtkimage.c:
6749         gtk/gtkinputdialog.c:
6750         gtk/gtkitem.c:
6751         gtk/gtkitemfactory.c:
6752         gtk/gtklist.c:
6753         gtk/gtklistitem.c:
6754         gtk/gtkmenu.c:
6755         gtk/gtkmenubar.c:
6756         gtk/gtkmenuitem.c:
6757         gtk/gtkmenushell.c:
6758         gtk/gtknotebook.c:
6759         gtk/gtkoptionmenu.c:
6760         gtk/gtkpaned.c:
6761         gtk/gtkpixmap.c:
6762         gtk/gtkpreview.c:
6763         gtk/gtkprogressbar.c:
6764         gtk/gtkradiomenuitem.c:
6765         gtk/gtkrange.c:
6766         gtk/gtkruler.c:
6767         gtk/gtkscale.c:
6768         gtk/gtkscrollbar.c:
6769         gtk/gtkscrolledwindow.c:
6770         gtk/gtkseparator.c:
6771         gtk/gtkspinbutton.c:
6772         gtk/gtkstatusbar.c:
6773         gtk/gtktext.c:
6774         gtk/gtktoolbar.c:
6775         gtk/gtktooltips.c:
6776         gtk/gtktree.c:
6777         gtk/gtktreeitem.c:
6778         gtk/gtkvbbox.c:
6779         gtk/gtkvbox.c:
6780         gtk/gtkviewport.c:
6781         gtk/gtkvpaned.c:
6782         gtk/gtkvruler.c:
6783         gtk/gtkvscale.c:
6784         gtk/gtkvscrollbar.c:
6785         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
6786         match the modified GtkTypeInfo structure.
6787
6788 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
6789
6790         * gtk/testgtk.c: use rand() instead of random() for portability
6791
6792 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
6793
6794         * configure.in
6795         * acconfig.h
6796         * gdk/gdk.c: use native Xlib XConvertCase if it's available
6797
6798 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
6799
6800         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
6801         XConvertCase() functionality from X11R6 on X11R5 systems.
6802
6803 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
6804
6805         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
6806         gdk_string_height, gdk_char_height to retrieve the exact
6807         height of a text.
6808
6809 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
6810
6811         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
6812           by Stefan Mars <mars@lysator.liu.se>
6813         * examples/clist/clist.c examples/clist/Makefile: example code
6814           for GtkCList widget from the Tutorial
6815
6816 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
6817
6818         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
6819         if the container is not visible, we might be a toplevel! this holds
6820         for all other base container implementations as well, that are
6821         candidates to derive toplevels from. in general the resizing code will
6822         care about visibility itself.
6823         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
6824         * gtk/gtkbox.c (gtk_box_remove): likewise.
6825
6826         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
6827         gtk_window_set_hints(), since we haven't calculated the new position
6828         yet.
6829
6830         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
6831         *mask are alway initialized in a sane way, regardless of the return
6832         value.
6833
6834 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
6835
6836         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
6837         to gtk_container_child_arg_setv, but takes a variable argument list.
6838         new function gtk_container_get_child_arg_type, which is needed by
6839         gtk_object_collect_args.
6840
6841         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
6842         take a function pointer to figure the argument type.
6843         adapted callers to pass gtk_object_get_arg_type.
6844         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
6845         gtk_object_get_arg_type..
6846
6847         * gtk/gtkpacker.h: 
6848         * gtk/gtkpacker.c:
6849         (gtk_packer_reorder_child): new function to change the packing order
6850         of a child.
6851         (gtk_packer_size_request): 
6852         (gtk_packer_size_allocate): take container->border_width into acount.
6853
6854         * gtk/gtkpacker.c: implemented widget arguments:
6855         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
6856         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
6857         implemented child arguments:
6858         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
6859         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
6860         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
6861         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
6862
6863         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
6864         not the alignment.
6865
6866         * gtk/gtkeventbox.h:
6867         * gtk/gtkeventbox.c: GtkType and macro fixups.
6868
6869         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
6870         sensitivity of an entry.
6871
6872         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
6873         for insensitive base and text.
6874
6875         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
6876         widget state dependent.
6877         (gtk_entry_style_set): likewise.
6878         (gtk_entry_state_changed): set background color on state changes.
6879         (gtk_entry_draw_text): for non selected text, use state dependent
6880         colors.
6881
6882         * gtk/gtktogglebutton.c: support for widget arguments
6883         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
6884
6885 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
6886
6887         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
6888         code for 1.0.x-like parameters. Changed internal interface of
6889         gtk_spin_button_real_spin. Several fixes to avoid emission of
6890         "value_changed" where possible.
6891
6892 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
6893
6894         * gtk-boxed.defs: s/GkWidget/GtkWidget/
6895
6896 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
6897
6898         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
6899         to select the resize_mode for the idle-labels container.
6900
6901         * gtk/gtkframe.h: 
6902         * gtk/gtkframe.c: GtkType and macro corrections.
6903
6904         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
6905         support widget argument "GtkRadioButton::group".
6906
6907 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
6908
6909         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
6910         unconditionally if resize_mode has changed.
6911
6912         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
6913         GTK_RESIZE_QUEUE on the scrolled window.
6914         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
6915
6916 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
6917
6918         * gtk/gtkcontainer.h:
6919         * gtk/gtkcontainer.c:
6920         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
6921         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
6922         (gtk_container_queue_resize): new function to queue a container for
6923         a *size* reallocation (doesn't affect its position, and thus its
6924         parent is left untouched usually).
6925         (gtk_container_get_resize_container): new function to retrive the next
6926         most resize container which is not itself queued for a resize.
6927         (gtk_container_idle_sizer): new function to carefully process the
6928         container_resize_queue since it can change during invokation of
6929         gtk_container_check_resize().
6930         (gtk_container_resize_children): total rework of this function to
6931         properly handle resize containers. makes a lot of assumptions whitch
6932         are stated in the comments.
6933
6934         * gtk/gtkcontainer.c:
6935         (gtk_container_real_check_resize): only requeue ourselves if we are not
6936         a resize container.
6937         (gtk_container_clear_resize_widgets): care for automatic deletion of our
6938         resize_widgets list on size_allocate through a handler connection.
6939
6940         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
6941         focus and default widget of a window, so to take the burden from
6942         gtk_widget_unparent.
6943
6944         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
6945         to be clever, but actually messed up the resize_children logic and
6946         caused unneccessary allocations on its whole branch. besides this,
6947         it messed up the display by not invoking a redraw after the allocation.
6948
6949         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
6950         that it is the child again that is queued for a resize.
6951         (gtk_table_attach): likewise.
6952         (gtk_table_remove): likewise.
6953
6954 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
6955
6956         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
6957         gtk_entry_adjust_scroll.  Required if you change the cursor
6958         position and want to sync it up with your code (Midnight Commander
6959         gtk front end needs this).
6960
6961         * gtk/gtktable.c: Deal with tables that have size 0, 0.
6962
6963 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
6964
6965         * examples/README.1ST: new file to explain how the
6966           code examples should be extracted from the tutorial.
6967
6968 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
6969
6970         * gtk/gtkctree.c (draw_row): added new "line style"
6971         GTK_CTREE_LINES_TABBED 
6972         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
6973         search the glist pointer of an GtkCTreeRow
6974
6975 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
6976  
6977         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
6978         from, and clean up, the dependencies.  Generate to intermediate
6979         files to prevent problems with Ctrl-C.
6980
6981         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
6982
6983 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
6984
6985         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
6986         - Bug fix for precision problem causing occasional double emission 
6987           of "value_changed" signal (hopefully works now).
6988         - API change (should be binary compatible) : 
6989           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
6990           Modified cursor example appropriately.
6991           To spin by something other than step_/page_increment, use
6992           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
6993         - Made GTK_SHADOW_NONE the default. ;)
6994         - Fixed casting of GtkAdjustment* to GtkWidget* in
6995           gtk_spin_button_value_changed.
6996
6997 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
6998
6999         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
7000         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
7001         resize widget list before queuing the container for a new reize.
7002         (gtk_container_need_resize): changed return value to FALSE, since this
7003         used to indicate that no further resizes are needed.
7004         (gtk_container_set_arg): 
7005         (gtk_container_get_arg): 
7006         (gtk_container_class_init): implemented GtkContainer::resize_mode
7007         argument.
7008
7009         (gtk_container_resize_children): when we walk up the tree of a resize
7010         widget we need to stop if we are the current parent.
7011
7012         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
7013         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
7014         (gtk_widget_hide_all): retrive the toplevel widget from via
7015         gtk_widget_get_resize_container().
7016
7017 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
7018
7019         * gtk/gtklist.c (gtk_list_button_press): Only respond
7020           to selection with button 1. This allows context-sensitive
7021           menus to work correctly.
7022
7023 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
7024
7025         * gtk/gtkaccelgroup.c: 
7026         * gtk/gtkbindings.c: 
7027         * gtk/gtkcontainer.c:
7028         * gtk/gtkitemfactory.c:
7029         * gtk/gtkobject.c: 
7030         * gtk/gtksignal.c:
7031         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
7032         g_quark_from_static_string calls to save memory.
7033
7034         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
7035         function _after_ the new data has been setup.
7036         minor changes to object data functions to feature the GQuark type.
7037
7038 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
7039
7040         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
7041           from argv.
7042
7043 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
7044
7045         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
7046           to be more readable perl, to spit out stuff that looks
7047           more like readable C, and to pipe output through indent
7048           so output looks a lot like readable C. No functional
7049           changes.
7050
7051 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
7052
7053         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
7054           necessary when switching to a masked pixmap. (Based on a patch
7055           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
7056
7057 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
7058
7059         * gtk/gtkeditable.[ch]: Added action signals for keyboard
7060           bindings. (move_cursor, kill_word, etc, etc, etc). 
7061
7062           removed the time argument from
7063           gtk_editable_cut/copy/paste_clipboard (source but not
7064           binary incompatible...) Instead get time from
7065           gtk_get_current_event ().
7066         
7067         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
7068           signals.
7069
7070 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
7071
7072         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
7073
7074         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
7075              parent class to GtkNotebookClass when splitting the widget in
7076              two.  Also updated some comments.
7077
7078         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
7079                button without a font selected.
7080
7081              Fixed bug in set_font_name - I hadn't updated the code to
7082                search for the style in the font_style clist - it was
7083                still assuming the style row was equal to its index,
7084                but it isn't any more.
7085         
7086              Changed 'Reset' button on filter page to 'Clear Filter'.
7087              Deleted old code relating to the old 'Filter Fonts' toggle
7088              Updated some comments.
7089              Cleared 'Actual Fontname' if no font is set.
7090
7091         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
7092              destroying the GtkFontSelection instead of the
7093              GtkFontSelectionDialog.
7094
7095 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
7096
7097         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
7098           flag to make all warnings fatal errors.
7099
7100         * gtk/testthreads.c: moved <pthreads.h> include inside 
7101           #ifdef USE_PTHREADS
7102
7103 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
7104
7105         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
7106           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
7107
7108         - Added new function gtk_container_set_resize_mode() for
7109           fine-grained control of where resize-queueing is done.
7110
7111         - Removed GtkContainer::need_resize and GtkWindow::move_resize
7112         - Added GtkContainer::check_resize to replace need_resize.
7113
7114         - Added function gtk_container_check_resize() to trigger
7115           queued resizes, and gtk_container_resize_children() to
7116           Figure which children need to be size-allocated. (logic
7117           moved from gtkwindow.c)
7118
7119         - Reorganized code in gtkwindow.c
7120         
7121         - Set the resize-mode for viewports so that resizes within
7122           a viewport don't propagate out of it. 
7123         
7124 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7125
7126         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
7127
7128         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
7129         g_return_val_if_fail, because the function *does* return a value.
7130
7131 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
7132
7133         * gtk/gtkaccellabel.h:
7134         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
7135         request the size of the accelerator portion of an accel label.
7136         (gtk_accel_label_size_request): don't request for the accelerators size.
7137         (gtk_accel_label_expose_event): only draw the accelerator if we got
7138         enough extra space.
7139
7140         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
7141         width from children.
7142
7143         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
7144         object (after removal has been requested) check if there is still an
7145         accelerator remaining to avoid adding two accelerators on an object.
7146         this can happen for locked accelerators (or accelerator-frozen widgets).
7147         (gtk_menu_size_request): feature childrens accelerator width in size
7148         requests.
7149
7150         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
7151         gtk_widget_freeze_accelerators() for dynamically created menu items.
7152
7153         * gtk/gtksignal.h: 
7154         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
7155         which will return a handler_id > 0 if the specified function is pending
7156         for `signal_id'.
7157
7158         * gtk/gtkwidget.h:
7159         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
7160         a signal handler function to stop accelerator addition.
7161         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
7162         which will prevent (undo) any accelerators from being added to or
7163         removed from a widget.
7164
7165 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
7166
7167         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
7168         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
7169         acceleration, new API gtk_spin_button_set_snap_to_ticks.
7170
7171 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
7172
7173         * gdk/gdk.h:
7174         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
7175         the current GdkWindow the pointer is on if there is any.
7176         
7177         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
7178         and one column, so we don't construction logic at all. changed a few
7179         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
7180         unsigned int wraps.
7181
7182         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
7183         portion, added an additional check for parent != widget.
7184
7185         * more GtkType and macro fixups.
7186
7187 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7188
7189         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
7190         "clip" parameter, which is the clipping rectangle to use.  This
7191         eliminates the extremely annoying flicker when exposing parts of
7192         the handlebox.
7193
7194 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
7195
7196         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
7197         resizing
7198
7199 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
7200
7201         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
7202         != 0 on the argument.
7203
7204         * gtk/gtktable.h: 
7205         * gtk/gtktable.c: new function gtk_table_resize() which allowes
7206         shrinking and expanding of tables. implementation of widget arguments
7207         and child arguments. many signedness corrections.
7208
7209 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
7210
7211         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
7212         not only the child, otherwise we might end up taking away other
7213         childrens space after the resize.
7214
7215         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
7216         an unknown menu path from any source, that path must always be flagged
7217         as "modified", since we don't really know whether it has its default
7218         value or not.
7219
7220         * gtk/gtktree.c:
7221         * gtk/gtkpacker.c:
7222         * gtk/gtknotebook.c:
7223         * gtk/gtkmenushell.c:
7224         * gtk/gtklist.c:
7225         * gtk/gtkpaned.c:
7226         * gtk/gtkfixed.c: 
7227         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
7228
7229         * gtk/gtkbox.h: 
7230         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
7231         arguments. implemented child arguments.
7232
7233         * more GtkType and macro fixups.
7234
7235 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
7236
7237         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
7238
7239         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
7240         and gtk_clist_get_hadjustment.
7241
7242         * gtk/gtkcontainer.c:
7243         implementation of children arguments, new class member functions
7244         (child_type), (get_child_arg) and (set_child_arg) plus a new field
7245         n_child_args.
7246         (gtk_container_child_type): new function which returns the type of a
7247         child that the container expects for its next addition.
7248         (gtk_container_add_child_arg_type): new function to introduce a new
7249         child argument at class creation time.
7250         (gtk_container_query_child_args): new function to query all child
7251         arguments that are supported by a container class.
7252         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
7253         child argument.
7254         (gtk_container_child_arg_setv): new function to set a child argument for
7255         a certain container and child combination.
7256         (gtk_container_add_with_args):
7257         (gtk_container_add_with_argv): new functions to feature addition of a
7258         new child in combination with the setting of certain child arguments.
7259
7260         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
7261         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
7262         this should really be done through class cretion hooks some day.
7263
7264         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
7265         guint : 16.
7266
7267         * gtk/gtkpacker.h:
7268         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
7269         follow the gtk convention for lower case variable names (important
7270         for language wrappers and widget arguments), and made them guint : 16.
7271
7272         * examples/packer/pack.c: adaptions for the case converted GtkPacker
7273         fields.
7274
7275 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
7276
7277         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
7278         change the character pair for single line comments.
7279         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
7280         GtkItemFactoryClass.
7281         (gtk_item_factory_parse_rc_string): likewise.
7282
7283 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
7284
7285         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
7286         lists from the klass structure to a static structure
7287         in gtkfontsel.c; cleans up global the namespace.
7288
7289 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
7290
7291         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
7292         bug with /*< skip >*/ and remove warning.
7293         
7294 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
7295
7296         * gtk/Makefile.am: Made the gtkmarshal.* generation
7297         rules maintainer-only.
7298
7299 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
7300
7301         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
7302           gtk/Makefile.am gtk/makenums.pl 
7303
7304         Removed out the G_ENUM/FLAGS mechanism in favor
7305         of a perl script that parses the standard headers
7306         (with occasional /*< nick=foo >*/ style overrides)
7307         and extracts the enumerations.
7308
7309           gtk/maketypes.awk: Small improvments to the
7310           translation of names. (Avoid splitting gc into
7311           g_c_.)
7312         
7313 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
7314
7315         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
7316         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
7317         
7318 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
7319
7320         * gtk/gtkentry.c:
7321         - Restored gtk_entry_adjust_scroll to static 
7322         - Changed text positioning code so that we always
7323           display as large a portion of the text as possible.
7324
7325 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
7326
7327         * gtk/gtktext.c (gtk_text_finalize): Free internal
7328         structures of text widget. Also, unreference pixmaps
7329         when unrealizing.
7330         
7331 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
7332
7333         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
7334         3.3.1 bug workaround to number keys starting at 1.
7335
7336 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
7337
7338         * docs/gtk_tut.sgml: Fixed urls for complete example
7339         source for scribble+widget-writing examples.
7340
7341 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
7342
7343         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
7344         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
7345         specs of the form c #abcdef [ more keys ] properly.
7346
7347 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
7348
7349         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
7350         (gtk_spin_button_set_shadow_type):
7351         New API to set the shadow type of the arrow panel.
7352
7353 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
7354
7355         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
7356         code for drawing the child in two places at once. Unfortunately,
7357         not only does it not work anymore (because reparenting has
7358         been fixed), but it also triggers reparent/expose loops
7359         in some cases.
7360
7361         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
7362         an unecessary unrealize.
7363
7364 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
7365
7366         * gdk/gdkwindow.c (gdk_window_reparent): Update the
7367           old and new parents' child window lists properly.
7368
7369 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
7370
7371         * gtk/gtkpacker.h:
7372         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
7373         and GtkSideType, to be consistent with the rest of Gtk's enum
7374         definitions. wrapped the enum definitions with the G_ eunm wrappers.
7375         spelled out the GTK_ANCHOR_* enum values, since single letters don't
7376         work out corectly as nick-names (left the old values as aliases).
7377         some signdness corrections (border-width, spacing), could stand more.
7378
7379 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
7380
7381         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
7382           Added gtkpacker
7383
7384         * examples/packer/pack.c, examples/packer/Makefile: Added
7385           gtkpacker example
7386
7387 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
7388
7389         * gtk/gtktext.c (remove_cache_line): Fixed broken
7390         list-removal code.
7391
7392         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
7393         Check bounds before deleting.
7394
7395 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
7396
7397         * autogen.sh: Support ACLOCAL_FLAGS
7398
7399 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
7400
7401         * gtk-config.in: Added missing quotes.
7402
7403 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
7404
7405         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
7406
7407 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
7408
7409         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
7410         G_COMPILED_WITH_DEBUGGING.
7411
7412         * configure.in (fd_set): Explain check better.
7413
7414         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
7415         the version from which gtk+'s libtool forked.  Needed for people
7416         who use post-1.2 alphas of libtool.
7417
7418 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
7419
7420         * glib/* Moved to glib module
7421
7422         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
7423           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
7424
7425           configuration changes for the above:
7426          
7427           - Use AM_PATH_GLIB by default to find glib; also accept
7428             a --with-glib option for using an uninstalled glib.
7429          
7430           - Put --enable-debug information into config.h so
7431             that we rebuild when it changes. (was in glibconfig.h)
7432
7433 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
7434
7435         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
7436
7437         * gtk/gtknotebook.h (struct _GtkNotebookClass):
7438         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
7439         added missing argument (according to Joseph Coleman's bug report)
7440
7441         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
7442         function to fix notebook focus handling
7443         
7444 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
7445
7446         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
7447           glib/gutils.c glib/testglib.c glib/gdataset.c
7448           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
7449           gtk/gtktext.c gtk/gtkbindings.c:
7450
7451          renamed g_const_pointer => gconstpointer
7452
7453 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
7454
7455         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
7456         invoked with (NULL, NULL); (this worked sometime ago).
7457
7458         * gtk/gtktypeutils.h: 
7459         * gtk/gtktypeutils.c: enum and flags type creation can now be done
7460         through gtk_type_register_enum() and gtk_type_register_flags(),
7461         which allow to specify the enum value arrays directly.
7462         the NULL terminated value arrays can be retrived through
7463         gtk_type_enum_get_values() and gtk_type_flags_get_values();
7464         (gtk_type_children_types): new function to query derived types.
7465
7466 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
7467
7468         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
7469         environment to genmarshal.pl.
7470         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
7471         rule), and removed it where not needed (in the dependencies).
7472
7473         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
7474
7475 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
7476
7477         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
7478         was just g_direct_hash.
7479
7480 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
7481
7482         * configure.in: x_libs=, not $x_libs=. Enough said.
7483           (Case only hit for --disable-xshm)
7484         
7485 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
7486
7487         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
7488           when testing for X libraries, don't replace them. Because
7489           the user might have specified the path to the X libraries
7490           themself before running configure.
7491
7492         * examples/**.c: Changed all gpointer * to gpointer
7493         
7494 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7495
7496         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
7497         fleur_cursor field.  Now the cursor is created/destroyed on demand
7498         by the routines that need it.
7499
7500         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
7501         (gtk_handle_box_motion): The fleur cursor is created and destroyed
7502         only when needed.
7503
7504 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
7505
7506         * gtk/gtktypeutils.h: 
7507         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
7508         gtk_enum_set_values to gtk_type_enum_get_values and
7509         gtk_type_enum_set_values respectively, since they are actually type
7510         system features.
7511
7512         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
7513         my last commit. ;)
7514
7515 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
7516
7517         * gtk/gtkselection.h: 
7518         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
7519         gtk_selection_data_free.
7520
7521         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
7522         for "selection_received", which was completely bogus.
7523         * other fixups to gtk_signal_new() calls all over the place.
7524
7525         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
7526         * gtk/gtktypebuiltins_vars.c: type variable implementations.
7527         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
7528         declarations.
7529         * gtk/gtktypebuiltins_evals.c: enum value arrays.
7530         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
7531         gtk.defs.
7532         * gtk/gtk.defs: generated file with scheme syntax for type definitions
7533         of gtk and gdk structures and enums.
7534         * gtk/gtktypeutils.h: 
7535         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
7536         macros anymore (this fixes binary incompatibility with new enum
7537         definitions).
7538
7539         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
7540         key bindings for this widget.
7541         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
7542         handler.
7543
7544         * gtk/gtkobject.h:
7545         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
7546         again. new functions gtk_object_class_user_signal_new () and
7547         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
7548         flag on the signal creation.
7549
7550 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
7551
7552         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
7553
7554 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
7555
7556         * gdk/gdkprivate.h: 
7557         * gdk/gdktypes.h: 
7558         * gtk/gtkprivate.h: 
7559         * gtk/gtkwidget.h: 
7560         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
7561
7562         * reworked enum value array generation code. gtk.defs is a generated
7563         file now.
7564
7565 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
7566
7567         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
7568         check menu items in the compatibility code (this required me to remove
7569         the "<check>" part from the menu item name, grrr).
7570
7571 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
7572
7573         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
7574         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
7575         
7576 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
7577
7578         * gtk/gtkitemfactory.h: 
7579         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
7580         additions to the dumping code to feature GtkPatternSpec.
7581         even found a bug to fix in the original code ;)
7582         
7583 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
7584
7585         * gtk/gtkitemfactory.c: support different types of callbacks, to
7586         maintain existing code.
7587
7588 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
7589
7590         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
7591
7592         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
7593         this should eventually be done by gentypeinfo.el somewhen.
7594         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
7595
7596         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
7597         enum values of an enum type.
7598
7599         * gtk/gtk.defs:
7600         * gtk/gtkcurve.h: 
7601         * gtk/gtkobject.h: 
7602         * gtk/gtkprivate.h: 
7603         * gtk/gtkwidget.h:
7604         * gtk/gtkenums.h: 
7605         brought enum/flags definitions in sync, added a few more enum
7606         definitions for bindings and pattern matching.
7607
7608         * some more macro and GtkType fixups in various places.
7609
7610         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
7611         as a key-release modifier for the binding system.
7612
7613 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
7614
7615         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
7616         was a stale list pointer that is already present in GtkMenuShell.
7617
7618         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
7619         GtkMenuShell::selection_done which is emitted after the menu shell
7620         poped down again and all possible menu items have been activated.
7621
7622 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
7623
7624         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
7625         before activation of the menuitem, so the menu is actually taken off the
7626         screen prior to any menu item activation.
7627
7628         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
7629         for NULL nodes.
7630
7631         * gtk/gtkwidget.h:
7632         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
7633         the emission of the "add-accelerator" signal on a widget. this is
7634         usefull to prevent accelerator installation on certain widgets.
7635
7636         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
7637         labels left justified, by setting their alignment. stop accelerator
7638         installation for the menu items, since we use dynamic menus.
7639
7640 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
7641
7642         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
7643         should *really* use GtkItemFactory. this is only for preserving source
7644         compatibility where possible, use of GtkMenuFactory is deprecated as of
7645         now.
7646
7647         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
7648         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
7649         missed this possibility when i added gtk_object_class_add_user_signal
7650         in late january.
7651
7652         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
7653
7654 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
7655
7656         * gtk/gtkaccelgroup.h: 
7657         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
7658
7659         * gtk/gtkaccellabel.h: 
7660         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
7661         display of the accelerators associated with a certain widget.
7662
7663         * gtk/gtkitemfactory.h: 
7664         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
7665         parsing and accelerator handling.
7666
7667         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
7668         positioning a menu.
7669         (gtk_menu_map): removed the allocation code.
7670         (gtk_menu_size_allocate): care for redrawing of children and resize
7671         our widget->window correctly.
7672         (gtk_menu_key_press): feature the new accelerator groups.
7673
7674         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
7675         submenu if neccessary.
7676
7677         * gtk/gtkmenuitem.c:
7678         * gtk/gtkcheckmenuitem.c:
7679         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
7680         function variants.
7681
7682         * gdk/gdk.c:
7683         (gdk_keyval_from_name): 
7684         (gdk_keyval_name): new functions for keyval<->key-name associations.
7685         (gdk_keyval_to_upper): 
7686         (gdk_keyval_to_lower): 
7687         (gdk_keyval_is_upper): 
7688         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
7689         regards to their cases.
7690
7691 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
7692
7693         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
7694         widget's class path.
7695         (gtk_widget_path): new function to calculate a widget's name path.
7696
7697         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
7698         pattern matching, features reversed pattern matches.
7699
7700 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
7701
7702         * examples/extract.sh, examples/extract.awk:
7703           New files to automagically extract code examples from the
7704           tutorial.
7705
7706 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
7707
7708         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
7709         * gtk/gtkcontainer.c (gtk_container_focus_move):
7710         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
7711
7712 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
7713
7714         * docs/gtk_tut.sgml: minor changes to support auto
7715           extraction of example code
7716
7717 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
7718
7719         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
7720           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
7721
7722 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
7723
7724         * docs/gtk_tut.sgml:
7725           - new section on Events
7726           - change all delete_event callbacks to include
7727             a GdkEvent parameter
7728           - clean up the formatting
7729
7730         * examples - helloworld.c, helloworld2.c, notebook.c,
7731           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
7732           rulers.c, table.c, wheelbarrow.c: change all delete_event
7733            callbacks to include a GdkEvent parameter.
7734
7735 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7736
7737         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
7738         field of crossing events.
7739         (struct _GdkEventCrossing): Added the following fields: time, x,
7740         y, x_root, y_root, mode, focus, state.
7741
7742         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
7743         crossing event structure.
7744
7745         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
7746         changes to the crossing event structure.
7747
7748 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
7749
7750         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
7751
7752 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
7753
7754         * docs/gtk_tut.sgml:
7755            - GtkTooltips, update to current API
7756            - change all 'gpointer *data' to 'gpointer data'
7757            - other minor changes
7758
7759 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
7760
7761         * configure.in (LDFLAGS): Bomb out with a moderately
7762           helpful message if detection of X libraries fails.
7763
7764 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
7765
7766   [ Combination of:
7767      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
7768      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
7769
7770         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
7771           gtk/gtksignal.c gtk/gtktext.c: 
7772
7773           Fixups for warnings from adding const to type of GHashFunc,
7774           GCompareFunc
7775         
7776         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
7777           ansi-warnings fixups.
7778
7779 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
7780
7781         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
7782         Locate child at (border_width,border_width), not
7783         (2*border_width,2*border_width). [ The border is _outside_
7784         widget->window ]
7785         
7786         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
7787           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
7788
7789 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
7790
7791         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
7792         used in gnome-libs
7793
7794 1998-05-22    <sopwith@redhat.com>
7795
7796         * gtk/gtkeventbox.c: Pass size_allocate on to the child
7797         regardless of whether it is visible or not. Also
7798         locate child at (border_width,border_width), not (0,0)
7799
7800 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
7801
7802         * gtk/gtkhandlebox.c: Added style_set handler.
7803
7804 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
7805  [ From: Chris Lahey  <clahey@umich.edu> ]
7806         
7807         * gtk/gtkeditable.c, gtk/gtkeditable.h,
7808           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
7809           and set_position functions to get and set the cursor position.
7810
7811         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
7812           signal status. Make GtkText do user-controlled insertion
7813           and deletion through the Editable widget so that these
7814           signals are properly emitted.
7815
7816         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
7817           display asterisks instead of empty space when visible = FALSE)
7818
7819 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
7820
7821         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
7822         signal.
7823
7824 1998-05-21    <sopwith@redhat.com>
7825
7826         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
7827         custom routine for loading images specified in gtkrc's.
7828
7829 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
7830
7831         * configure.in: Use pthread_attr_init() as a test function,
7832         since most of the rest of -lpthread is macros on DU4.
7833
7834 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
7835
7836         * gtk/gtkcombo.c: implemented completion in the entry.
7837
7838 1998-05-18    <sopwith@moebuis.labs.redhat.com>
7839
7840         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
7841
7842 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
7843
7844         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
7845         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
7846         to be of runtype GTK_RUN_LAST.
7847
7848         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
7849         "need-resize".
7850
7851         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
7852         "widget-selected".
7853
7854 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
7855
7856         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
7857         text retrived from GtkEntry. only intercept the Tab key if there
7858         was some text to complete.
7859
7860 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
7861
7862         Basic thread-awareness:
7863
7864         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
7865
7866         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
7867         gdk_threads_[init/enter/leave] for applications, plus
7868         gdk_threads_wake to wake the mainloop thread out of
7869         the select().
7870
7871         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
7872
7873 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
7874
7875         * gtk/testgtk.c (list_clear): Account for the fact
7876         that gtk_list_clear_items is not inclusive. (Clears
7877         [start, end))
7878
7879 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
7880
7881         * gdk/gdk.c: include gdkkeysyms.h always
7882         
7883
7884 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
7885
7886         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
7887         the visibility_notify_event method and changed method order.
7888
7889 1998-05-14    <sopwith@moebuis.labs.redhat.com>
7890
7891         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
7892
7893 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
7894
7895         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
7896         from Olli Helenius <ollhel@batman.jytol.fi>.
7897
7898         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
7899         freeing types.
7900         (gtk_type_set_chunk_alloc): new function to allow allocation of new
7901         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
7902         thorugh g_malloc).
7903
7904         * gtk/gtkobject.c (gtk_object_finalize): free an object through
7905         gtk_type_free().
7906
7907         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
7908         GtkButtons to 16.
7909         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
7910         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
7911
7912 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
7913
7914         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
7915           GPOINTER_TO_UINT fixes.
7916
7917         * gtk/gtksignal.c: Include <string.h> for memset.
7918
7919 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
7920         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
7921
7922         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
7923         Cleanups, comments and the ability to have rulers with 
7924         a reversed direction.
7925
7926 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
7927
7928         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
7929         that Sopwith missed when changing stat => lstat.
7930
7931 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
7932
7933         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
7934           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
7935         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
7936
7937         * gdk/gdk.c: Print sizeof() results
7938         as g_print("%ld", (glong)sizeof(foo)), to deal with
7939         sizeof() being long on Alpha's.
7940
7941         * gtk/testgtk.c: include <string.h> for strlen
7942
7943 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
7944         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
7945         
7946         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
7947         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
7948
7949         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
7950
7951 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
7952         (From: Christopher James Lahey <clahey@umich.edu>)
7953         
7954         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
7955           gtk/testgtk.c:
7956
7957         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
7958         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
7959         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
7960         the default relief for the toolbars buttons. Added an
7961         toggle for the toolbar test in testgtk.c.
7962
7963 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
7964
7965         * docs/gtk-config.1: Rewritten and hopefully improved.
7966
7967 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
7968
7969         * docs/Makefile.am
7970         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
7971
7972 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7973
7974         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
7975         GtkPreview's visual and colormap, otherwise things can BadMatch.
7976
7977         * gtk/testgtk.c (create_color_preview): 
7978         (create_gray_preview): Removed pushing/popping of visual/colormap
7979         now that GtkPreview does things correctly.
7980
7981         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
7982         (gtk_color_selection_draw_wheel): Pick the style from the correct
7983         place (the colorsel->wheel_area widget) so that the GCs will match
7984         with where we are going to paint to.
7985
7986         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
7987         of visual/colormap now that GtkColorSelection does things the
7988         right way.
7989
7990 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
7991
7992         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
7993         previously unused window->need_resize flag to mark if a window's
7994         descendents changed size while the window was not visible. In this
7995         case, when the window becomes visible, we reallocate everything,
7996         since we didn't keep track of what actually changed.
7997
7998         (Fixes bug where changing the popdown strings of a
7999         combo to something of the same length caused them to
8000         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
8001
8002 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
8003
8004         [security audit by Alan Cox]
8005
8006         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
8007         exceed maximum assumed size.
8008
8009         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
8010         not exceed maximum assumed size.
8011         (gtk_menu_factory_remove): likewise.
8012         (gtk_menu_factory_find_recurse): likewise.
8013
8014 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
8015
8016         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
8017         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
8018         redrawn if that is still neccessary. don't allow queueing of already
8019         destructed objects.
8020         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
8021         widgets which are in the queue can be destroyed safely, handle
8022         requeueing properly.
8023         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
8024         widgets which are in the queue can be destroyed/unrealized safely.
8025
8026 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
8027
8028         * gtkfaq.sgml: add question on multi-threading,
8029           minor URL cleanups.
8030
8031 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
8032
8033         * configure.in (cflags_set): preserve automake CFLAGS.
8034
8035         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
8036         and libgdk-1.1.la. this means we need to change certain portions of
8037         the Makefile.am on major/minor version bumps.
8038
8039         * ltmain.sh: the -release option is not required anymore.
8040         
8041         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
8042         of the first argument to be of type GtkObject. unconditionally compile
8043         this function. removed __GNUC__ dependancy of the gtk_object_ref and
8044         gtk_object_unref macro wrappers for this function.
8045
8046 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
8047
8048         * gtk/gtkobject.h:
8049         * gtk/gtkobject.c:
8050         (gtk_object_data_try_key):
8051         (gtk_object_data_force_id): these are now macros substituting the old
8052         functions. we just use the corresponding g_dataset_* functions for
8053         key->id associations. (this is to assure unique key<->id associations).
8054
8055 1998-05-10  Stefan Jeske  <stefan@gtk.org>
8056
8057         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
8058         to gboolean.
8059
8060         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
8061
8062 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
8063
8064         * configure.in (LIBS): Try to figure out if this
8065         is Digital Unix and we need -std1 to get the
8066         right prototypes.
8067
8068 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
8069
8070         * docs/gtk_tut_it.sgml: update of Italian tutorial
8071           translation from Daniele Canazza <dcanazz@tin.it>
8072
8073 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
8074
8075         * gtk/gtkfeatures.h.in: new file used as template for
8076         * gtk/gtkfeatures.h: new file to define macros indicating newly
8077         introduced features, such as GTK_HAVE_SIGNAL_INIT.
8078
8079         * gtk/gtksignal.c:
8080         (gtk_signal_emitv_by_name):
8081         (gtk_signal_emitv):
8082         new functions to emit signals with an already provided parameter set.
8083         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
8084         (gtk_signal_real_emit): prototype changes, so this functions always
8085         gets its parameters and signal structure as arguments.
8086         (gtk_signal_emit): provide the signal structure and parameter list for
8087         gtk_signal_real_emit.
8088         (gtk_signal_emit_by_name): likewise.
8089
8090 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
8091
8092         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
8093         signal connections through unsetting GTK_CONNECTED.
8094         (gtk_signal_handler_insert): reflect the presence of signal connections
8095         through setting GTK_CONNECTED.
8096         (gtk_signal_real_emit): only check for handler emissions if the object
8097         has the GTK_CONNECTED flag set.
8098         (gtk_signal_handler_pending): don't check for pending handlers if the
8099         GTK_CONNECTED flag is not set for this object.
8100
8101         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
8102         a GtkObject has signal handler connections.
8103
8104         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
8105         set for this object call gtk_signal_handlers_destroy().
8106         
8107         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
8108         multiple processing of macro args.
8109
8110         * gtk/gtktypeutils.c:
8111         * gtk/gtkobject.c:
8112         * gtk/gtkwidget.c:
8113         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
8114
8115 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
8116
8117         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
8118         draw-queue when we are done. 
8119
8120         (gtk_widget_queue_draw/_queu_resize): Always return
8121         FALSE and avoid having two idles at the same time.
8122         
8123 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
8124
8125         * gtk/gtktext.c: Various fixes to make sure cache
8126         lines are freed if line_start_cache doesn't point to the
8127         beginning of the cache.
8128
8129 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
8130
8131         * style_set improvements for GtkText and GtkEntry
8132
8133 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
8134
8135         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
8136         been initialized.
8137
8138 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
8139
8140         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
8141         data chunks through a global object data structure list. unlink
8142         object data before invoking its destroy function.
8143         (gtk_object_finalize): slight modification to allow usage of object
8144         data during object finalization.
8145
8146 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
8147
8148         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
8149         signal names, e.g. "signal-name" is now an alias for "signal_name".
8150         (gtk_signal_handler_new): allocate handlers through a global handler
8151         structure list, that's faster than memchunks.
8152         (gtk_emission_new): allocate emissions through a global emission
8153         structure list, that's faster than memchunks.
8154
8155 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
8156
8157         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
8158
8159         * ltmain.sh: added a new commandline flag -postfix similar to -release,
8160         but will immediately change the library name.
8161
8162         * gdk/Makefile.am:
8163         * gtk/Makefile.am: specify -postfix and -version-info
8164
8165         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
8166         GTK_BINARY_AGE. calculate LT_* variables for libtool.
8167
8168 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8169
8170         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
8171         background (fg_set -> bg_set confusion).
8172
8173 1998-05-06  Stefan Jeske  <stefan@gtk.org>
8174
8175         * gtk/testgtk.c (unselect_all): Removed code that caused an
8176         endless loop.
8177
8178 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
8179
8180         * gtk/gtksignal.c: reimplemented the signal storage system to use a
8181         linear array rather than a hash table.
8182         be carefull *not* to keep any GtkSignal pointers across invokations
8183         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
8184         general code cleanups, made all allocations through memchunks.
8185         (gtk_signal_lookup): we now do the lookup of signals through a key_id
8186         for the signal names to avoid multiple hashing of the signal name on
8187         lookups for the several hirarchy levels of an object.
8188
8189 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
8190
8191         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
8192         to speed things up and remove code duplication.
8193
8194         Reintegrated buffer overflow patches, and added
8195         some extra paranoia.
8196         
8197 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
8198
8199         * gdk/gdk.c (gdk_event_translate): A guint * was
8200         being passed where X expected a Keysym *, and
8201         keysyms are long's on Alpha Linux. This was causing
8202         segfaults in Xlib, apparently because of alignment.
8203         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
8204         
8205 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
8206
8207         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
8208         set GDK_EXPOSURE_MASK for DrawingAreas
8209
8210 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
8211
8212         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
8213         (superceded by RC file reparsing capabilities)
8214
8215         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
8216         events. (Shouldn't be sent to the InputOnly leader, which
8217         it is now by gdk_event_send_clientmessage_toall
8218
8219         * gtk/testgtk.c: Added extra button to rcfiles test
8220         to send out _GDK_READ_RCFILES events.
8221         
8222 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
8223
8224         * gtk/gtkselection.c (gtk_selection_clear): Fixed
8225         reversed conditionals that caused segfault on some
8226         platforms.
8227
8228 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
8229
8230         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
8231         cast to GTK_OBJECT for gtk_object_ref.
8232
8233 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
8234
8235         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
8236         checking for signal initialization in gtksignal.c.
8237
8238         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
8239         a long debugging period ;)
8240
8241 1998-05-05  Stefan Jeske  <stefan@gtk.org>
8242
8243         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
8244         New function to wrap XSetDashes; modified gtkctree.c to use it.
8245
8246 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8247
8248         * configure.in: Added $x_libs in the other_libraries field in the
8249         check for XShapeCombineMask.
8250
8251 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
8252
8253         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
8254         gtk_type_is_a().
8255         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
8256         linear array rather than a hash table. it actually speeded up testgtk
8257         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
8258         pointers across invokations of gtk_type_node_next_and_invalidate() and
8259         therefore gtk_type_unique()!
8260
8261         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
8262         inheritance of a class pointer.
8263         (GTK_OBJECT): modifications for speedups.
8264         (GTK_IS_OBJECT): likewise.
8265         (GTK_OBJECT_CLASS): likewise.
8266         (suggested by owen).
8267
8268         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
8269
8270         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
8271
8272         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
8273         since its derivation changed 4 month ago ;(. showed up with the unique
8274         type name checking code in gtk_type_unique().
8275
8276         * random guint->GtkType and macro fixups.
8277
8278 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
8279
8280         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
8281         Configure events that would result in a negative
8282         size.
8283
8284 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
8285
8286         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
8287         "glibconfig.h" and another about writing another IRC
8288         client.
8289
8290 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
8291
8292         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
8293         parameters to log are doubles. Digital Unix apparently
8294         is missing the argument in its prototype.
8295
8296 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
8297
8298         * gtk/gtklabel.c (gtk_label_state_changed): Don't
8299         force a clear until the widget is actually on
8300         screen.
8301
8302 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
8303
8304         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
8305         to make this consistent with the gtk-1-0 tree.
8306
8307 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
8308
8309         * configure.in acheader.h gdk/gdkwindow.c 
8310         Check for Shape extension both on the client and server
8311         side. (And, more importantly, check for the shape extension
8312         so we may include -lXext even when compiling with --disable-xshm)
8313
8314         Don't set override_redirect on all shaped windows. It isn't
8315         necessary.
8316
8317         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
8318         and foreign windows. Use this to check if we
8319         need to get the colormap from X.
8320
8321 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
8322
8323         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
8324         between the default and the button always in GTK_STATE_NORMAL.
8325
8326         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
8327         callback.
8328
8329 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
8330
8331         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
8332           Fix a buffer overflow on pixmaps that claim to have
8333           more than 31 characters per pixel.
8334
8335           (gdk_pixmap_read_string): Don't wrap around strings longer
8336           than half of address space ;-)
8337
8338         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
8339         that were used for printing integers.
8340
8341         * */* (almost):
8342
8343         Style: All 
8344           int foo () { ... }
8345         changed to
8346           int foo (void) { ... }
8347
8348         Even where there were proper prototypes elsewhere.
8349
8350         * gdk/gxid.c (handle_claim_device): Some extra checks.
8351         It isn't safe against being fed bad X id's, but at
8352         least it should be safe against deleting all your
8353         files.
8354
8355 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
8356
8357         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
8358         to set the adjustments value when there is no current emission.
8359         [ Removed by mutual agreement owt 5/3/1998 ]
8360
8361         * gtk/gtksignal.c: added new functions to retrive the number of
8362         existing emissions for a certain signal.
8363         (gtk_signal_n_emissions): new function.
8364         (gtk_signal_n_emissions_by_name): new function.
8365
8366 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
8367
8368         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
8369         set the current focus_child of a container, does proper referencing and
8370         adjusts the vadjustment/hadjustment associated with the focus widget.
8371
8372         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
8373         containers via gtk_container_set_focus_child.
8374
8375         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
8376         where appropriate.
8377
8378         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
8379         child since not every child removal goes through this function (this
8380         showed up after gtk_container_set_focus_child() started to reference the
8381         focus_child of a container).
8382
8383         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
8384         of a container from gtk_container_remove into this place.
8385
8386 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
8387
8388         * gtk/gtksignal.c: added new functions to operate on intermediate
8389         function pointers. implemented incremental blocking.
8390         (gtk_signal_disconnect_by_func): new function.
8391         (gtk_signal_handler_block_by_func): new function.
8392         (gtk_signal_handler_unblock_by_func): new function
8393
8394 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
8395
8396         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
8397         Always show the scrollbars when the policy is
8398         GTK_POLICY_ALWAYS...
8399
8400 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
8401
8402         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
8403         "value_changed" if we really passed a new value.
8404         (gtk_adjustment_changed): new function to emit the "changed" signal.
8405         (gtk_adjustment_set_value): new function to emit the "value_changed"
8406         signal.
8407
8408 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
8409
8410         * gtk/gtkcombo.c: Further changes to the way the window
8411         is popped up so that it will be compatible with 
8412         auto-scrolling in the future.
8413
8414 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
8415
8416         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
8417         the combo-list is empty since that will cause the combo to operate
8418         on a non existing GtkList window.
8419         (gtk_combo_get_pos): provide the combo list with a usfull default
8420         height if empty.
8421         (gtk_combo_popup_button_press): grab the focus.
8422         (gtk_combo_activate): grab the focus.
8423
8424 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
8425
8426         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
8427         function to reset the RC styles for a heirarchy
8428
8429         Clear the window background if necessary in
8430         gtk_window_style_set.
8431
8432         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
8433         rereads all previously read RC files.
8434
8435         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
8436         (Should it just be called gdk_get_toplevels?)
8437
8438         * gtk/testgtk.c: New test to reload RC files.
8439
8440 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
8441
8442         * gtk/gtkclist.h:
8443         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
8444         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
8445         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
8446         the GTK_ prefix (this solution involved less changes in the
8447         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
8448         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
8449         from lars & stefan to support the derivation of GtkCtree.
8450
8451         * gtkctree.h:
8452         * gtkctree.c:
8453         initial import of a tree widget derived from gtkclist, courtesy
8454         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
8455         it just damn rocks!
8456
8457 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
8458
8459         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
8460         for us.
8461         (gtk_list_insert_items):
8462         (gtk_list_remove_items_internal): 
8463         (gtk_list_clear_items): 
8464         remove a possible pointer grab, we might get thrown into a loop
8465         otherwise.
8466         (gtk_list_button_press): grab the pointer *before* selecting the child,
8467         because selection of items may cause the lists children to change,
8468         resulting in a grab release.
8469         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
8470         children.
8471         (gtk_list_shutdown): remove all children from the list.
8472         (gtk_real_list_unselect_child): 
8473         (gtk_real_list_select_child): *always* put our internal structures into
8474         sane state *before* signal emisions (i.e. list->selection updates prior
8475         to gtk_list_item_[de]select() calls).
8476
8477         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
8478         focused child walks out of the window.
8479         removed CAN_FOCUS for the combo arrow's button since it doesn't react
8480         to keyboard events ("clicked" connection is missing).
8481
8482 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
8483
8484         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
8485         getting colormap for FOREIGN windows to go along with
8486         Raster's fix for visuals.
8487
8488 Merges from gtk-1-0
8489 ===================
8490         
8491 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
8492
8493         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
8494         Check to catch the case when the viewport fits in either
8495         direction or both, instead of flip-flopping infinitely.
8496
8497         Only show/hide the scrollbars once at the end.
8498
8499 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
8500
8501         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
8502         Include the scrollbars in the foreach call.
8503         (gtk-fortier-980405-0.patch; 
8504          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
8505
8506         The notebook widget
8507         really should also include its tabs, but that might cause
8508         problems for programs if they
8509
8510 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
8511
8512         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
8513         resize if the size actually changed. 
8514         (gtk-johannes-980414-0.patch ;  
8515          johannes@nada.kth.se (Johannes Keukelaar) )
8516
8517 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
8518
8519         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
8520           ltmain.sh ltconfig config.sub config.guess:
8521
8522         Reverted back to libtool-1.2 (plus minor patches) so as not to
8523         force the issue for everyone else.
8524
8525 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
8526
8527         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
8528         Updated to libtool 1.2a.
8529
8530         * gtk/gtkclist.c: Draw the in-between lines with style->base
8531         instead of style->white.
8532         
8533 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
8534
8535         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
8536         Cache the colormap and children of a window locally
8537         instead of fetching them from the server when needed.
8538         Huge performance difference for creating/destroying
8539         windows.
8540
8541         * gtk/gtkstyle.c: Find the depth from the cached
8542         visual, instead of asking the server.
8543
8544         * gtk.m4: Distribute the new version which tries to
8545         figure out what went wrong and give helpful error
8546         messages.
8547
8548         * ltmain.sh ltconfig config.sub config.sh: 
8549         Updated to libtool 1.2a
8550
8551         * gtk/gtktext.c: Fixed a bug where the drawn level
8552         was being messed up when the text was scrolled
8553         during a deletion.
8554         
8555 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
8556
8557         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
8558         the filesystem under you (fix from Josh)
8559
8560 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
8561
8562         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
8563         if the viewport already exists before iterating over it, maybe we
8564         haven't been constructed yet.
8565
8566 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
8567
8568         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
8569         the GtkBin widget already has a child.
8570
8571         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
8572         check that child->parent == NULL;
8573
8574 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
8575
8576         * gtk/gtkselection.c (gtk_selection_clear): Only return
8577         FALSE when the clear event is been rejected, not when
8578         widget has already lost the selection. (Which should
8579         only happen when we are setting the selection to another
8580         widget ourself.)
8581         
8582 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
8583
8584         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
8585
8586         Removed the "check visibility after gtk_widget_unparent" bug 
8587         in hopefully the last three places.
8588
8589 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
8590
8591         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
8592         rc-files.
8593
8594 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
8595
8596         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
8597         for CAN_FOCUS widgets.
8598
8599         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
8600         adjustments for the table.
8601         (create_list): feature automatic adjustment of the scrolled window to
8602         always contain the focused child.
8603         (create_main_window): keep the focussed button always inside of the
8604         scrolled windoww.
8605
8606         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
8607         adjustments, to contain the allocation of the currently focused child.
8608         (gtk_container_set_focus_hadjustment): new functin to set the
8609         horizontal focus adjustment.
8610         (gtk_container_set_focus_vadjustment): new functin to set the vertical
8611         focus adjustment.
8612
8613         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
8614         clamp the currents adjustment page into a specific range.
8615
8616         * random GtkType fixups for gtk_*_get_type() functions.
8617
8618 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
8619
8620         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
8621         Account for the fact that gtk_tree_item_remove_subtree
8622         will be called recursively. 
8623
8624         Handle removing a collapsed subtree.
8625
8626         (From Andy Dustman <adustman@comstar.net>)
8627         
8628         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
8629         root tree when removing items from a non-previously
8630         mapped tree.
8631
8632         * gtk/testgtk.c: Added a remove_subtree button.
8633         
8634 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
8635
8636         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
8637         before object removing data. This change fixes a bug where 
8638         removing the last weak references would cause it to be 
8639         triggered.
8640
8641 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
8642
8643         * gdk/Makefile.am: Removed mostly useless dependency that
8644         was causing problems for SGI's make, when used with
8645         the 'make dist' form of GTK+. (Dependency caused dependencies
8646         to be redone when BUILT_SOURCES changed)
8647
8648 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
8649
8650         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
8651         like a menu.
8652         
8653         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
8654         to gtkitem.c so dragging can also work in lists.
8655
8656         * gtk/gtklist.[ch]: Track child enter events and use
8657         those to allow dragging the selection. 
8658
8659 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
8660
8661         * gtk/gtktext.c: Try enabling background pixmaps for editable text
8662         widgets.  There is a bit of flashing, but not too bad. If you
8663         don't want the flashing, you can always not set a background
8664         pixmap.
8665
8666 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
8667
8668         * gtk/gtktext.c: Fixed a bug where the drawn level
8669         was being messed up when the text was scrolled
8670         during a deletion.
8671         
8672 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
8673
8674         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
8675         bug:  There is no need to set the ExposureMask in the XGrabPointer
8676         (this caused DnD programs to crash).
8677
8678 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
8679
8680         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
8681         field to be of type guint.
8682         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
8683         ref_count>0;
8684         (gtk_accelerator_table_install): keep a per object list of accelerator
8685         tables that refer to this object.
8686         (gtk_accelerator_table_remove): remove the accelerator table from the
8687         per object list.
8688         (gtk_accelerator_table_clean): warn if there are any object references
8689         left in an accelerator table upon destruction.
8690         (gtk_accelerator_tables_delete): new function to delete object
8691         references from the accelerator tables associated with this object.
8692
8693         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
8694         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
8695         of an accelerator can be prevented by gtk_signal_emit_stop().
8696         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
8697         so there are no stale pointers in accelerator tables left.
8698
8699 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8700
8701         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
8702         visible before we unparent it.
8703
8704 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
8705
8706         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
8707         running_timeouts list with the tmp_list link itself, not with a new
8708         GList structure pointing to our link. that would fill up memory and
8709         causes the GList.data fields of the running_timeouts list to point to
8710         GList structures and not GtkTimeoutFunction structures which is a
8711         *really* bad thing.
8712         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
8713         the above entry ;).
8714
8715 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
8716
8717         * gtk/gtkradiomenuitem.h: 
8718         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
8719         ala gtk_radio_button_set_group.
8720         (gtk_radio_menu_item_init): assure that we always have at least a group
8721         that points to self.
8722
8723         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
8724         added g_return_if_fail() statements.
8725         (gtk_radio_button_init): assure that we always have at least a group
8726         that points to self.
8727
8728 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
8729
8730         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
8731
8732 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
8733
8734         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
8735         (Damon Chaplin), which i got wrong when applying Damon's patch the last
8736         time.
8737
8738 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
8739
8740         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
8741         that when we are running with a non-installed colormap,
8742         in 8-bit pseudo-color, we actually are using the system
8743         visual. (Fixes *Bad Match* errors on Digital Unix machines
8744         with multiple 8-bit pseudo-color visuals)
8745
8746 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
8747
8748         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
8749         by whoever thought that randomly changing ints to unsigned int
8750         without reviewing the code was a good idea.  It is, btw not
8751         mentioned in the ChangeLog as usual, but I know it was not Elliot
8752         the culprit this time. 
8753
8754 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
8755
8756         * Released GTK+ 1.0.0