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