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