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