]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
begin the parameter elipsis (...) after the first argument name. this
[~andy/gtk] / ChangeLog.pre-2-8
1 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
2
3         * gtk/gtkarg.h:
4         * gtk/gtkarg.c:
5         * gtk/gtkwidget.h: 
6         * gtk/gtkwidget.c: 
7         * gtk/gtkobject.h:
8         * gtk/gtkobject.c:
9         * gtk/gtkcontainer.h: 
10         * gtk/gtkcontainer.c: 
11         (gtk_object_new):
12         (gtk_object_set):
13         (gtk_widget_new):
14         (gtk_widget_set): 
15         (gtk_container_add_with_args):
16         (gtk_container_child_set):
17         begin the parameter elipsis (...) after the first argument name. this
18         change is source compatible, since it was always required, even as NULL.
19         (gtk_args_collect): 
20         (gtk_object_args_collect): 
21         (gtk_container_child_args_collect):
22         changed prototypes to pass first_arg_name, also, pass va_list variable
23         by value (portability concerns). callers changed.
24
25         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
26         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
27         can't pass va_list variables by reference for portability reasons.
28
29 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
30
31         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
32         get_visual calls, so that it gets implicitly initialized.
33
34 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
35         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
36         such as GtkCTree function name changes
37         
38 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
39
40         * gtk/gtkmain.h:
41         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
42         binary version check, returning a static string for error descriptions,
43         or NULL on success.
44
45 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
46
47         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
48         computed our geometry yet, and if not, ignore the request.
49
50         * gtk/gtktext.c (correct_cache_insert): Fiddled around
51         some more. All the bug-test codes seem to work at once
52         now. (fingers crossed...)
53
54 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
55
56         * gdk/gdkrgb.c: silly visual fixes
57
58         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
59         works
60
61 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
62
63         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
64         anything if the event's window is not the bin window.
65         (gtk_handle_box_motion): Likewise.
66
67 1998-08-19  Raph Levien  <raph@gimp.org>
68
69         * gtk/testgtk.c (create_color_preview): pushed the colormap and
70         visual so it would work better with GdkRgb.
71
72 1998-08-19  Raph Levien  <raph@gimp.org>
73
74         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
75         4bpp static_color mode (for vga displays). Also fixed a '64' value
76         in the dither matrix, which was causing one pixel out of 16k to be
77         dithered wrong.
78
79         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
80         most of the contents. This is an API change - any apps that relied
81         on the internal structure of GtkPreview will need some change -
82         most notably in the use of reserved colors. The Gimp needed
83         changes in this regard.
84
85 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
86
87         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
88         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
89         --g-fatal-warnings), noticed by miguel.
90
91 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
92
93         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
94         getcwd().
95
96         * gdk/gdkprivate.h:
97         * gdk/gdkglobals.c:
98         * gdk/gdkwindow.c:
99         * gdk/gdk.c:
100         * gtk/gtkwindow.c: 
101         * gtk/gtkitemfactory.c: 
102         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
103
104         * gtk/gtkselection.c:
105         * gtk/gtkpreview.c:
106         * gtk/gtkobject.c: 
107         * gtk/gtkmain.c: 
108         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
109
110         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
111
112 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
113
114         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
115         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
116         in case of show_tabs == NULL
117
118 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
119
120         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
121         to --g-fatal-warnings again. this option now causes log levels of
122         WARNING and CRITICAL to abort().
123
124         * gdk/gdk.c: 
125         * gdk/gdkdnd.c: 
126         * gdk/gdkcc.c: 
127         * gdk/gdkfont.c: 
128         * gdk/gdkwindow.c:
129         * gdk/gdkvisual.c:
130         * gtk/gtkwidget.c:
131         * gtk/gtktypeutils.c:
132         * gtk/gtktree.c:
133         * gtk/gtkfontsel.c:
134         * gtk/gtkmain.c:
135         * gtk/gtkobject.c:
136         * gtk/gtkpreview.c:
137         * gtk/gtkselection.c:
138         * gtk/gtktext.c:
139         * gtk/gtktree.c:
140         * gtk/gtktreeitem.c:
141         did a global search&replace to substitute g_print() calls with
142         g_message(). libraries shouldn't use printf(), g_print() or
143         g_printerr() at all.
144         a bunch of the replacements should probably be wrapped into the
145         G{D|T}K_NOTE() macros, so they are special cased for debugging
146         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
147         things.
148
149         * gdk/gdkdnd.c: added copyright notice.
150
151 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
152
153         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
154         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
155         running a PII 233. It's synced with the 0.0.5 release of
156         GdkRgb.
157
158 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
159
160         * gtk/gtkclist.h:
161         (struct _GtkCListClass): new class methods:
162         (sort_list) (insert_row) (remove_row) (set_cell_contents)
163
164         * gtk/gtkclist.c :
165         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
166         removed and replaced by (set_cell_contents)
167         (set_cell_contents): function for class method set_cell_contents
168         (real_insert_row): function for class method insert_row
169         (real_remoce_row): function for class method remove_row
170         (real_sort_list): function for class method sort_list
171         (default_compare): fix to avoid problems with cell types != CELL_TEXT
172
173         * gtk/gtkctree.h :
174         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
175         (gtk_ctree_node_is_visible): new function to return visibility state
176         of a node
177         (gtk_ctree_show_stub): new function to set visibility of root stub
178
179         renamed functions :
180         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
181         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
182         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
183         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
184         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
185         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
186         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
187         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
188         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
189         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
190         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
191         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
192         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
193         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
194         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
195         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
196         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
197         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
198         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
199
200         * gtk/gtkctree.c :
201         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
202         removed and replaced by (set_cell_contents)
203         (set_cell_contents): function for class method set_cell_contents
204         (real_insert_row): function for class method insert_row
205         (real_remoce_row): function for class method remove_row
206         (real_sort_list): function for class method sort_list
207         (default_compare): removed. CTree now also compares two GtkCTreeRows
208         instead of two GtkCTreeNodes.
209         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
210         unlinking the node
211         (real_tree_expand) (real_tree_collapse): fix for refcounting of
212         node pixmaps
213         (set_node_info): call gtk_ctree_node_set_pixtext instead of
214         manipulating the row itself
215         
216         * gtk/testgtk.c: use renamed functions of GtkCTree.
217         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
218         at work.
219
220 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
221
222         * gtk/gtkmain.c: removed gtk_input_add_interp.
223
224         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
225         keyword.
226         (gtk_editable_get_event_time): fix default: case.
227
228         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
229
230         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
231
232         * gdk/gdkcolor.c:
233         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
234         of our functions.
235
236         * various minor compilation cleanups, such as bogus commas in
237         enums and similar things.
238
239 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
240
241         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
242         (thanx raph).
243
244 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
245
246         * NEWS: updated for 1.1.2
247         * gtk+.spec: version = 1.1.2
248
249 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
250
251         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
252         times. changed --gtk-with-module to --gtk-module at owen's request.
253
254 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
255
256         * gtk/gtkmain.c (gtk_init): feature a new commandline option
257         --gtk-with-module=<module> that allows additional loading and
258         initialization of modules (e.g. GLE).
259
260 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
261
262         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
263         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
264
265         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
266         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
267         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
268         different *-fatal-* arguments now. this needs to be revised and
269         compressed to a reasonable amount of arguments.
270
271 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
272
273         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
274         "--g-fatal-warnings" causes fatal warnings in GLib,
275         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
276         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
277
278         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
279         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
280
281         * gtk/testgtk.c: 
282         * gdk/gxid.c:
283         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
284         since automake doesn't support per target _CFLAGS yet.
285
286         * configure.in: require GLib 1.1.3.
287
288 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
289
290         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
291         to set a callback to test if a node in drag can be dropped onto
292         it's currrent location.
293         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
294         to change the pointer when a drag destination is not allowed.
295
296 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
297
298         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
299         speeds up the 565_d case by about 25% total. Thanks Ray!
300
301 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
302
303         * Changed GtkSignalFunc back to () from (void). (again!)
304
305         * Added file README.cvs-commits
306         
307 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
308
309         * docs/gtk_tut.sgml:
310           - Tidy up of the menufactory example from
311             Andy Kahn <kahn@zk3.dec.com>
312           - New section on Range Widgets from
313             David Huggins-Daines <bn711@freenet.carleton.ca>
314           - Started a new section on 'Advanced Event and Signal
315             Handling' - used an email from Owen.
316           - New appendix on Gdk Event Types
317           - Added the tictactoe full example code to the
318             'Code Examples' appendix
319
320 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
321
322         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
323           to calculate all the metrics at once of a string, including
324           things which weren't calculated before.
325
326         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
327           MenuItem type, that when put as the first thing in a
328           menu, makes the menu tearoff. Currently drawn as a
329           dashed line.
330
331         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
332           "hide_on_activate" to the MenuItem class structure to allow
333           check and radio buttons to be changed with <Space> without
334           hiding the menu.
335
336         * gtk/gtkitemfactory.c: 
337           - Create a AccelGroup for each MenuShell we create.
338           - If an '_' appears before a  character 'c' in the path,
339             then make 'c' an accelerator in the menu's accel group,
340             and if the menuitem is menubar <alt>C an accelerator 
341             in the itemfactory's accel group. Double '__' inserts
342             a literal '_'
343
344         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
345           which is a string. If an '_' appears in this string,
346           the corresponding position in the label is underlined.
347
348           Add gtk_label_parse_uline() convenience function which
349           takes a string with embedded underlines, sets the
350           pattern and label, and returns the accelerator keyval.
351
352         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
353           Instead, they create a GtkWindow and add themselves
354           to that. (When torn off, another new feature, they
355           create another GtkWindow to hold the torn off menu)
356
357           New function gtk_menu_set_tearoff_state()
358         
359         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
360           Added action signals  for keyboard navigation of menus.
361
362         * gtk/gtkmenushell.c: Key press handler which activates
363           bindings for navigation, and accelerators, for handling
364           underline accelerators. Exported functions to select 
365           and activate menu items in a menushell.
366
367         * gtk/testgtk.c: Added a new "Item Factory" test which
368           tests GtkItemFactory and the new keyboard navigation
369           of menus.
370
371 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
372
373         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
374         external functions have been called. also relookup nodes after
375         this function has been invoked.
376
377 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
378
379         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
380           beginning of Text when creating the Text widget.
381
382         * gtk/testgtk.c: Grab the focus on the text widget so
383           as to test out the above.
384
385 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
386
387         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
388           ::changed is a notification signal and should have no default
389           handler. A complete redraw of the Text widget does _not_ need to
390           be done on every text insertion.
391
392 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
393         (gtk-abilleira-072198-patch)
394
395         * gtk/gtkwindow.[ch]: 
396           Add gtk_window_set_modal() which sets a flag; when
397           set the window does a gtk_grab_add() when the window
398           is shown, and a gtk_grab_remove() when the window
399           is hidden. 
400
401         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
402           that case will run "Create Dir","Delete File" and "Rename File" 
403           dialogs as modal too.
404
405         * gtk/testgtk.c: Added a button with an example of creating modal 
406           dialog boxes. Including file selection and color selection standard
407           dialogs.
408         
409 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
410
411         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
412           Removed CAN_FOCUS by default from scrollbars, button
413           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
414           (Scrollbar definitely good change, toolbar bit more questionable)
415
416 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
417
418         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
419         Pettersen).
420
421 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
422
423         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
424           added all logical operations to gc->function.
425
426 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
427
428         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
429         gtk_widget_size_allocate instead of gtk_widget_queue_resize
430         if the visibility state of a scrollbar changes.
431
432 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
433
434         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
435
436 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
437
438         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
439         gtk_clist_merge and gtk_clist_mergesort. :)
440
441 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
442
443         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
444         `mergesort' -> `my_mergesort'.
445
446 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
447
448         * gtk/gtkenums.h: new enum GtkSortType.
449         
450         * gtk/gtkclist.h:
451         * gtk/gtkclist.c:
452         Added sorting capabilities to GtkCList. New APIs :
453         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
454         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
455         New internal functions : default_compare, merge, mergesort.
456
457         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
458         
459         (gtk_clist_insert): Modified to handle gtk_clist_append and the
460         auto sort flag. Changed the return value from void to gint to
461         return the row number where the element was actually inserted.
462
463         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
464         
465         * gtk/gtkctree.h:
466         * gtk/gtkctree.c:
467         Removed the auto_sort flag, replaced ctree->node_compare with
468         clist->compare all over the place, modified default_compare to
469         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
470         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
471
472         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
473         sorting. The lists can be sorted by a column by clicking the 
474         corresponding title button.
475         
476 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
477
478         * Released GTK+ 1.1.1
479
480 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
481
482         * gtk/gtkctree.h:
483         * gtk/gtkctree.c:
484         (gtk_ctree_find): changed to return a gboolean
485         (gtk_ctree_insert_gnode): new function for recursive insertion of a
486         GNode tree.
487         (gtk_ctree_real_select_recursive): fix for extended selection
488         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
489         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
490
491 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
492
493         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
494         GLib version 1.1.1 is now required at minimum.
495
496         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
497         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
498
499 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
500  
501         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
502           cursor before (possibly) deleting the cursor's text
503           property.
504  
505         * gtk/gtktext.c (correct_cache_delete): More attempts
506           to clean the line-start cache up after inserting
507           a property. Among other things, make sure to
508           fix up text->current_line, since it is used to 
509           refetch the changed lines.
510  
511 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
512
513         * gtk/gtktable.[ch]: Empty rows/columns of the table
514         should not have been marked as being able to shrink.
515         (Fixes problem with shrinking scrollbarless GIMP canvases)
516
517 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
518
519         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
520         function to find a row by its data pointer using a custom
521         comparison function.
522
523 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
524
525         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
526           this fixes a bug when the whole widget is made non-sesitive
527           the buttons weren't redrawn
528
529 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
530
531         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
532         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
533         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
534
535 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
536
537         * gdk/gdkwindow.c (gdk_window_reparent): Change 
538           window_private->parent pointer when reparenting.
539
540 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
541
542         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
543         with the standalone release.
544
545 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
546
547         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
548         (gtk_clist_button_release) (new_column_width): Few fixes for
549         column resize. Store resize column in clist->drag_pos.
550
551 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
552
553         * gtk/gtkctree.h 
554         * gtk/gtkctree.c 
555         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
556         to GtkCTreeNode *node.
557
558         * gtk/gtklist.h : added extended selection mode and auto scrolling.
559         (struct _GtkList): removed unneeded variables timer, button,
560         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
561         Added new variables undo_selection, undo_unselection, last_focus_child,
562         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
563         drag_selection, add_mode.
564  
565         New functions :
566         (gtk_list_extend_selection), (gtk_list_start_selection),
567         (gtk_list_end_selection), (gtk_list_select_all),
568         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
569         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
570         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
571         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
572         
573         * gtk/gtklist.c : 
574         (gtk_list_enter_notify): removed, because auto scrolling now works
575         with gtk_list_motion_notify
576  
577         New functions, needed for auto scrolling :
578         (gtk_list_motion_notify) (gtk_list_move_focus_child)
579  
580         New functions for extended selection support :
581         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
582         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
583         (gtk_list_focus_lost)
584         
585         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
586         function to support auto scrolling, and avoid out-of-sync errors in
587         case auf GTK_SELECTION_BROWSE
588         (gtk_list_focus): modified gtk_container_focus function to avoid out
589         off sync errors in case auf GTK_SELECTION_EXTENDED
590
591         * gtk/gtklistitem.h 
592         * gtk/gtklistitem.c :
593         New signal functions for key binding support :
594         (toggle_focus_row), (select_all), (list_item), (unselect_all)
595         (list_item), (undo_selection), (start_selection), (end_selection)
596         (extend_selection), (scroll_horizontal), (scroll_vertical),
597         (toggle_add_mode)
598         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
599         GDK_KEY_RELEASE_MASK
600         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
601  
602         * gtk/gtkcombo.c :
603         (gtk_combo_popup_button_press):  grab pointer for combo->list
604         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
605         (gtk_combo_list_key_press): take care of which child HAS_GRAB
606         (gtk_comb_init): don't connect combo->button with button_release_event
607
608 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
609
610         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
611
612 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
613
614         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
615         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
616         with horizontal and vertical autoscrolling.
617
618 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
619
620         * gtk/docs/man: new directory
621         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
622
623 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
624
625         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
626         bug
627
628 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
629
630         * docs/gtk_tut.sgml: GtkTree section from
631           David Huggins-Daines <bn711@freenet.carleton.ca>,
632           add a GtkText widget example
633         * examples/text/* example/tree/* : new examples for the
634           GtkTree and GtkText widgets
635         * docs/gtk_tut.sgml: added an appendix to hold complete code
636           examples that aren't in a full form elsewhere in the
637           tutorial (e.g. scribble)
638
639 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
640
641         * Released GTK+ 1.1.0
642
643 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
644
645         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
646         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
647
648 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
649
650         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
651         values are looked up.
652
653         * gtk/gtktypeutils.h:
654         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
655         gtk_type_enums_find_value to lookup enum values.
656
657         * gtk/gtkctree.h: 
658         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
659         GtkCTreeExpansionType. fixed signal creations to pass the enum
660         types not just the base type GTK_TYPE_ENUM.
661
662         * gtk/gtkclist.h: 
663         * gtk/gtkclist.c: fixed signal creations to pass the real enum
664         types not just the base type GTK_TYPE_ENUM.
665
666 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
667
668         * gtk/testgtk.c : 
669         Began cleanup, e.g. use gtk_widget_show_all instead of many 
670         gtk_widget_show's. Completely rewrote the button box sample
671         (only one window now). Removed "miscellaneous" button.
672
673 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
674
675         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
676         Fixed wrong allocation for GTK_BUTTONBOX_END.
677         (allocation->x  =>  allocation->y)
678
679 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
680
681         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
682         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
683         
684         * gtk/gtkctree.c (real_tree_select): added check to avoid double
685         selected rows
686         (gtk_ctree_button_press)
687         (gtk_ctree_button_release): fix for pointer grab
688
689 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
690
691         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
692         Fixed initialization problem - dirty memory could cause problems.
693         Also checked that bitmapped fonts can be scaled when showing the
694         available sizes.
695
696 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
697
698         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
699         (gtk_ctree_sort_recursive): test for node != NULL
700         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
701         (gtk_ctree_last) : added sanity checks
702         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
703
704 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
705
706         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
707
708 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
709
710         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
711
712 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
713
714         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
715         to check out binding priorities. someone should really write
716         gtkrc-mode for emacs.
717
718         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
719         * gtk/testgtk.c (main): and move it here ;). this test says something
720         on release of C-9. (this works only if the mouse pointer is on a
721         spinbutton and there is no focus widget).
722
723         * gtk/gtkrc.h:
724         * gtk/gtkrc.c:
725         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
726         gtk_rc_parse_priority to parse path priority types.
727         export rc tokens.
728         feature binding parsing.
729
730 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
731
732         * gtk/gtkbindings.h: 
733         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
734         feature binding parsing in rc files.
735         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
736         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
737         order the bindings with lowest priority first.
738
739 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
740
741         * gdk/gdkrgb.c: actually builds and runs properly on big
742         endian machines now, because we #include config.h. Also
743         fixed up a compile error in the WORDS_BIGENDIAN case in
744         gdk_rgb_convert_565_gray. I made the fix by looking at
745         patterns in the other code; Raph can you verify this?
746
747         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
748         warnings
749
750 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
751
752         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
753         (tree_toggle_expansion) (real_select/unselect_row)
754         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
755
756 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
757
758         * gtk/gtktext.c (new_text_property): We free things from
759         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
760
761         * Fix up line start cache when splitting a property
762         during an insert.
763
764 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
765
766         * gtk/gtkwidget.c: restauration => restoration
767
768 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
769
770         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
771         hasn't been created yet, don't do the lookup.
772
773 1998-07-20  Raph Levien  <raph@acm.org>
774
775         * gdk/gdkrgb.c: More cleanups in the config process.
776
777 1998-07-20  Raph Levien  <raph@acm.org>
778
779         * gdkrgb.c: Fixed minor config bug preventing big-endian
780         architectures from working.
781
782 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
783
784         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
785         activity indicator. It is settable now as a fraction of the
786         total width/height using gtk_progress_bar_set_activity_blocks.
787         Renamed gtk_progress_bar_set_number_of_blocks to
788         gtk_progress_bar_set_discrete_blocks.
789
790 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
791
792         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
793         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
794         tree to specified depth
795         (gtk_ctree_expand_to_depth): expand tree to specified depth
796         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
797
798 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
799
800         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
801         of GTK_CLIST_ADD_MOD
802         * gtk/testgtk.c (add1000_clist): changed pixmap
803
804 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
805
806         * gtk/gtkmain.h: 
807         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
808
809         * gtk/gtktypeutils.h:
810         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
811
812 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
813
814         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
815         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
816         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
817         CHILD_ARG_POSITION
818         (gtk_notebook_reorder_child): new funktion to change position of a
819         notebook page
820         (gtk_notebook_draw_arrow): draw left/right arrow with
821         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
822
823         * gtk/gtkstyle.c (gtk_default_draw_arrow):
824         added GTK_SHADOW_ETCHED_IN/OUT
825
826 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
827
828         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
829           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
830         Introduced generic GtkProgress widget. Derived GtkProgressBar from
831         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
832
833 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
834
835         * gtk/gtktypeutils.h
836         * gtk/gtkitemfactory.h: explicitly specify void in prototype
837
838 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
839
840         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
841         of list
842
843 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
844
845         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
846         sropped the approach of copying all signal specific data into a
847         GtkHandlerInfo structure. we rather keep the signal data on the stack
848         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
849         avoids multiple lookups of the signal pointer and works savely together
850         with destroy notifiers of handlers.
851
852         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
853         someone destroys the entry on the ::activate signal.
854
855 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
856
857         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
858         instead of ypad (typo).
859         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
860         border around the allocation).
861         (gtk_arrow_init): the static requisition needs to be setup in this
862         function rather than gtk_widget_new(), so arrow creation works without
863         the gtk_arrow_new() constructing.
864         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
865
866         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
867         implementation for GtkWidget::size_request, so size requisition for
868         simple statically sized widgets like GtkArrow works.
869
870 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
871
872         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
873         prepend -I@libdir@/glib/include anymore, since glib-config handles
874         it; --libs strips out redundant -L<path>'s properly (there was
875         code in there to do it before, but it didn't work)
876
877 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
878
879         * gtk/gtknotebook.h: 
880         * gtk/gtknotebook.c: signdness corrections all ove the place.
881         implementation of object arguments: GtkNotebook::enable_popup,
882         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
883         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
884         begun implementation of child args, we have GtkNotebook::tab_label, but
885         GtkNotebook::menu_label and GtkNotebook::position still lack the
886         implementation.
887         (gtk_notebook_remove_page):
888         (gtk_notebook_current_page): allow negative indices (-1) as alias for
889         the last page.
890
891         * gtk/gtkentry.h:
892         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
893         arguments GtkEntry::max_length and GtkEntry::visibility.
894         (gtk_entry_adjust_scroll): queue a redraw.
895
896         * gtk/gtkeditable.h:
897         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
898         object arguments GtkEditable::text_position and GtkEditable::editable.
899         new (action) signal GtkEditable::set_editable.
900         provide a default handler for GtkEditable::changed that queues a redraw.
901
902         * gtk/gtktext.h: 
903         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
904         set_editable.
905
906 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
907
908         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
909         case of drag_target == NULL
910         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
911         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
912         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
913         gtk_dir_selection_file_button): fix due to changes in clist's
914         select_row signal.
915
916 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
917
918         * gtk/gtkwidget.h:
919         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
920         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
921         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
922         to be gint16s rather than guint16s, since that's what the code expected
923         (for a long time actually).
924
925         * gtk/gtkviewport.c:
926         added support for object arguments: GtkViewport::shadow_type,
927         GtkViewport::vadjustment and GtkViewport::hadjustment.
928         (gtk_viewport_add): chain gtk_bin_add.
929
930         * gtk/gtkscrolledwindow.c: 
931         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
932         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
933
934         * gtk/gtkadjustment.h: 
935         * gtk/gtkadjustment.c: 
936         * gtk/gtkctree.h: 
937         * gtk/gtkclist.h: 
938         * gtk/gtkctree.c: 
939         * gtk/gtkclist.c:
940         * gtk/gtkscrolledwindow.h:
941         * gtk/gtkscrolledwindow.c:
942         * gtk/gtkviewport.h:
943         * gtk/gtkviewport.c:
944         GtkType and macro fixups.
945
946 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
947
948         * gtk/gtkctree.h :
949         * gtk/gtkctree.c :
950         Added focus handling, horizontal and vertical autoscrolling,
951         extended Selection Mode, key bindings
952         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
953         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
954         Removed gtk_ctree_clear.
955         
956         * gtk/gtkclist.h :
957         * gtk/gtkclist.c : 
958         Added focus handling, horizontal and vertical autoscrolling,
959         extended Selection Mode, key bindings
960
961 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
962
963         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
964         source tree. For more information on GdkRgb, please see:
965         http://www.levien.com/gdkrgb/
966
967         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
968         bothers me slightly that the feature is in gdk, and this file is
969         in gtk, but it's probably ok.
970
971         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
972
973         * gdk/gdkrgb.c:
974         * gdk/gdkrgb.h: Added this module.
975
976         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
977
978         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
979
980 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
981
982         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
983         to this function. it needs to relookup the signal multiple times.
984         this fixes spurious segfaults that could show up with signal intensive
985         code, when classes are created during a pending emission (which is
986         normal case).
987
988 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
989
990         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
991         child if it isn't a label.
992
993 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
994
995         * gtk/gtkdialog.h: 
996         * gtk/gtkseparator.h: 
997         * gtk/gtkhseparator.h: 
998         * gtk/gtkvseparator.h: macro and GtkType fixups.
999
1000 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
1001
1002         * gtk/testgtk.c (create_cursors): display the current cursor name.
1003
1004         * gtk/gtktypeutils.h: 
1005         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
1006         the fundamental type definition. the GtkArg union now only covers
1007         the required storage types for argument values. adapted the GTK_VALUE_*
1008         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
1009
1010         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
1011         code, fixed int/float collection. fixed a bug in the sanity checking
1012         code for GtkObjects.
1013
1014         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
1015         argument collection code.
1016
1017         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
1018         macros when distinguishing the return type.
1019
1020 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
1021
1022         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
1023           is not NULL before trying to g_list_remove the child. A patch
1024           from Michael Lausch.
1025
1026 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
1027
1028         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
1029         collection (always casted to doubles upon argument passing).
1030
1031 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
1032
1033         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
1034         object_init_func for derived objects with the object's ->klass field
1035         still pointing to the corresponding base class, otherwise overridden
1036         class functions could get called with partly-initialized objects.
1037         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
1038
1039 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
1040
1041         * gtk/gtkobject.h:
1042         * gtk/gtkobject.c:
1043         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
1044
1045         * gtk/gtkcontainer.h:
1046         * gtk/gtkcontainer.c:
1047         (gtk_container_child_arg_get_info): new function which wraps
1048         gtk_arg_get_info().
1049
1050 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
1051
1052         * gtk/gtkcontainer.c:
1053         (gtk_container_arg_get): 
1054         (gtk_container_arg_set): 
1055         * gtk/gtkobject.c:
1056         (gtk_object_arg_set): 
1057         (gtk_object_arg_get):
1058         strictly check for the associated get/set arg functions. if an
1059         arg is readable or writable, the associated class functions *must*
1060         be provided.
1061
1062 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
1063
1064         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
1065         padding into account if there is an accelerator.
1066
1067 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
1068
1069         * gtk/gtkcontainer.c:
1070         (gtk_container_add_with_args): collect the arguments with
1071         gtk_container_child_args_collect, not through gtk_object_args_collect.
1072         (gtk_container_child_set): likewise.
1073
1074 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
1075
1076         * gtk/gtktypeutils.h: 
1077         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
1078         which is derived from GTK_TYPE_STRING.
1079
1080         * gtk/gtkbindings.c: reworked the argument type handling.
1081
1082 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1083
1084         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
1085           so that it seems to allow normal operation in those modes,
1086           although you will only see black  (GIMP toolbar now pops up,
1087           just don't create a new image and GIMP now works in 4 bit.)
1088
1089 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1090
1091         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
1092           array, which was too low (?)
1093
1094 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
1095
1096         * gtk/gtkcontainer.h: 
1097         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
1098         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
1099         we now export a new function gtk_container_child_args_collect().
1100         for consistency with the object arguments, a few functions got renamed:
1101         gtk_container_child_arg_get -> gtk_container_child_get,
1102         gtk_container_child_arg_set -> gtk_container_child_set,
1103         gtk_container_child_arg_getv -> gtk_container_child_getv,
1104         gtk_container_child_arg_setv -> gtk_container_child_setv,
1105         gtk_container_add_with_argv -> gtk_container_addv.
1106         note, gtk_container_add_with_args() remained, because its equivalent
1107         would be gtk_container_add(,, ...) which would break all existing code.
1108         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
1109         we expect the `arg_name' argument to be a const static string now.
1110         (gtk_container_get_child_arg_type): function removed.
1111
1112 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
1113
1114         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
1115         this is a static inline function that collects command line arguments
1116         from a va_list. this file can just be included in all places that
1117         need this functionality.
1118
1119         * gtk/gtkarg.h: 
1120         * gtk/gtkarg.c: new files which implement most of the argument
1121         handling stuff from gtkobject.c. also collected a few more
1122         gtk_arg_* utility functions from else places.
1123
1124         * gtk/gtkobject.h: 
1125         * gtk/gtkobject.c: moved most of the argument handling code into
1126         gtkarg.c. we now export gtk_object_args_collect() as a non-public
1127         method with a blind va_list pointer.
1128         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
1129         const static string now.
1130         (gtk_object_get_arg_type): function got removed.
1131
1132         * gtk/gtkwidget.c: 
1133         (gtk_widget_set): 
1134         (gtk_widget_new): adaptions for gtk_object_args_collect().
1135
1136         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
1137         fundamental type name so as to have a valid prefix, e.g. "bool"->
1138         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
1139         though that should probably be something like GtkNone since the
1140         type itself is called GTK_TYPE_NONE.
1141         even the internal type names need to avoid name clashes and must live
1142         in their own namespace, several code portions rely on that.
1143         we should relly have typedefs such as typedef gchar* GtkString; so the
1144         fundamental type names can be used for code dumpers just like with all
1145         the Gtk/Gdk types.
1146
1147 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
1148
1149         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
1150         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
1151         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
1152         (GTK_RELIEF_HALF).
1153         (gtk_button_paint): set the background for prelighted buttons with
1154         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
1155         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
1156         the shadow type (otherwise we get strange shadows for coloured buttons).
1157         (gtk_button_set_relief): queue a redraw after changing
1158         the relief.
1159         (gtk_button_class_init): 
1160         (gtk_button_set_arg): 
1161         (gtk_button_get_arg): added object argument "GtkButton::relief".
1162
1163         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
1164
1165 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
1166
1167         * gtk/gtkbutton.h:
1168         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
1169         GTK_BIN (button)->child to button->child to keep source compatibility.
1170
1171         * gtk/gtkoptionmenu.c:
1172         * gtk/gtkclist.c:
1173         * gtkcheckbutton.c: don't refer to button->child, but
1174         GTK_BIN (button)->child instead.
1175
1176 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
1177
1178         * docs/gtkfaq.sgml: update anon CVS info
1179
1180 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
1181
1182         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
1183         functions.
1184
1185         * gdk/gdkwindow.c:
1186         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
1187         to XFree() calls.
1188
1189 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1190
1191         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
1192         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
1193
1194 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
1195
1196         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
1197
1198 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
1199
1200         * gtk/gtkwidget.h:
1201         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
1202
1203         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
1204         error that prevented signal to entry addition for signals with
1205         parameters.
1206
1207 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
1208
1209         * ltconfig: fix for properly detecting shared lib support on
1210         SunPro cc (taken from libtool 1.2.a)
1211
1212 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
1213
1214         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
1215
1216 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
1217
1218         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
1219         rc set pattern is favoured, this is needed for overriding of style
1220         patterns with subsequently parsed rc files.
1221
1222 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
1223
1224         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
1225         error messages.
1226
1227 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
1228
1229         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
1230         modifier as well.
1231         (gtk_accelerator_name): add "<Release>" to the accelerator name if
1232         neccessary.
1233
1234         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
1235         account.
1236
1237         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
1238         default handler for key-release events, which checks for activation
1239         of GDK_RELEASE_MASK key bindings.
1240
1241         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
1242
1243 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
1244
1245         * gtk/gtkarrow.h: GtkType and macro fixups.
1246         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
1247         "GtkArrow::shadow_type".
1248
1249 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
1250
1251         * gtk/gtkalignment.h:
1252         * gtk/gtkbin.h: GtkType and macro fixups.
1253         
1254         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
1255         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
1256         GtkAlignment::xscale, GtkAlignment::yscale.
1257
1258 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
1259
1260         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
1261         fucntions from all parent types upon class initialization.
1262
1263         * gtk/gtkcontainer.c:
1264         (gtk_container_get_type): announce gtk_container_base_class_init to
1265         the type system.
1266         (gtk_container_base_class_init): new function to feature base class
1267         initialization.
1268         (gtk_container_get_child_arg): 
1269         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
1270         and set_child_arg methods of the class indicated through the argument
1271         name.
1272
1273         * gtk/gtkobject.c:
1274         (gtk_object_base_class_init): new function to feature base class
1275         initialization.
1276         (gtk_object_init_type): announce gtk_object_base_class_init to the type
1277         system.
1278         (gtk_object_class_init): setup the get_arg and set_arg pointers for
1279         GtkObjectClass.
1280         (gtk_object_setv): 
1281         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
1282         instead of bothering the type system with this.
1283
1284         * gtk/gtkaccellabel.c: 
1285         * gtk/gtkbutton.c: 
1286         * gtk/gtkradiobutton.c: 
1287         * gtk/gtktable.c:
1288         * gtk/gtktogglebutton.c: 
1289         * gtk/gtktipsquery.c: 
1290         * gtk/gtkbox.c: 
1291         * gtk/gtkpacker.c: 
1292         * gtk/gtkwidget.c: 
1293         * gtk/gtkwindow.c: 
1294         * gtk/gtkframe.c: 
1295         * gtk/gtkmisc.c:
1296         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
1297         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
1298         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
1299         arg functions to take a GtkObject argument.
1300
1301         gtk/gtkadjustment.c:
1302         gtk/gtkalignment.c:
1303         gtk/gtkarrow.c:
1304         gtk/gtkaspectframe.c:
1305         gtk/gtkbbox.c:
1306         gtk/gtkbin.c:
1307         gtk/gtkcheckbutton.c:
1308         gtk/gtkcheckmenuitem.c:
1309         gtk/gtkclist.c:
1310         gtk/gtkcolorsel.c:
1311         gtk/gtkcombo.c:
1312         gtk/gtkctree.c:
1313         gtk/gtkcurve.c:
1314         gtk/gtkdata.c:
1315         gtk/gtkdialog.c:
1316         gtk/gtkdrawingarea.c:
1317         gtk/gtkeditable.c:
1318         gtk/gtkentry.c:
1319         gtk/gtkeventbox.c:
1320         gtk/gtkfilesel.c:
1321         gtk/gtkfixed.c:
1322         gtk/gtkfontsel.c:
1323         gtk/gtkgamma.c:
1324         gtk/gtkhandlebox.c:
1325         gtk/gtkhbbox.c:
1326         gtk/gtkhbox.c:
1327         gtk/gtkhpaned.c:
1328         gtk/gtkhruler.c:
1329         gtk/gtkhscale.c:
1330         gtk/gtkhscrollbar.c:
1331         gtk/gtkhseparator.c:
1332         gtk/gtkimage.c:
1333         gtk/gtkinputdialog.c:
1334         gtk/gtkitem.c:
1335         gtk/gtkitemfactory.c:
1336         gtk/gtklist.c:
1337         gtk/gtklistitem.c:
1338         gtk/gtkmenu.c:
1339         gtk/gtkmenubar.c:
1340         gtk/gtkmenuitem.c:
1341         gtk/gtkmenushell.c:
1342         gtk/gtknotebook.c:
1343         gtk/gtkoptionmenu.c:
1344         gtk/gtkpaned.c:
1345         gtk/gtkpixmap.c:
1346         gtk/gtkpreview.c:
1347         gtk/gtkprogressbar.c:
1348         gtk/gtkradiomenuitem.c:
1349         gtk/gtkrange.c:
1350         gtk/gtkruler.c:
1351         gtk/gtkscale.c:
1352         gtk/gtkscrollbar.c:
1353         gtk/gtkscrolledwindow.c:
1354         gtk/gtkseparator.c:
1355         gtk/gtkspinbutton.c:
1356         gtk/gtkstatusbar.c:
1357         gtk/gtktext.c:
1358         gtk/gtktoolbar.c:
1359         gtk/gtktooltips.c:
1360         gtk/gtktree.c:
1361         gtk/gtktreeitem.c:
1362         gtk/gtkvbbox.c:
1363         gtk/gtkvbox.c:
1364         gtk/gtkviewport.c:
1365         gtk/gtkvpaned.c:
1366         gtk/gtkvruler.c:
1367         gtk/gtkvscale.c:
1368         gtk/gtkvscrollbar.c:
1369         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
1370         match the modified GtkTypeInfo structure.
1371
1372 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
1373
1374         * gtk/testgtk.c: use rand() instead of random() for portability
1375
1376 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
1377
1378         * configure.in
1379         * acconfig.h
1380         * gdk/gdk.c: use native Xlib XConvertCase if it's available
1381
1382 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
1383
1384         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
1385         XConvertCase() functionality from X11R6 on X11R5 systems.
1386
1387 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
1388
1389         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
1390         gdk_string_height, gdk_char_height to retrieve the exact
1391         height of a text.
1392
1393 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
1394
1395         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
1396           by Stefan Mars <mars@lysator.liu.se>
1397         * examples/clist/clist.c examples/clist/Makefile: example code
1398           for GtkCList widget from the Tutorial
1399
1400 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
1401
1402         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
1403         if the container is not visible, we might be a toplevel! this holds
1404         for all other base container implementations as well, that are
1405         candidates to derive toplevels from. in general the resizing code will
1406         care about visibility itself.
1407         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
1408         * gtk/gtkbox.c (gtk_box_remove): likewise.
1409
1410         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
1411         gtk_window_set_hints(), since we haven't calculated the new position
1412         yet.
1413
1414         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
1415         *mask are alway initialized in a sane way, regardless of the return
1416         value.
1417
1418 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
1419
1420         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
1421         to gtk_container_child_arg_setv, but takes a variable argument list.
1422         new function gtk_container_get_child_arg_type, which is needed by
1423         gtk_object_collect_args.
1424
1425         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
1426         take a function pointer to figure the argument type.
1427         adapted callers to pass gtk_object_get_arg_type.
1428         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
1429         gtk_object_get_arg_type..
1430
1431         * gtk/gtkpacker.h: 
1432         * gtk/gtkpacker.c:
1433         (gtk_packer_reorder_child): new function to change the packing order
1434         of a child.
1435         (gtk_packer_size_request): 
1436         (gtk_packer_size_allocate): take container->border_width into acount.
1437
1438         * gtk/gtkpacker.c: implemented widget arguments:
1439         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
1440         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
1441         implemented child arguments:
1442         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
1443         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
1444         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
1445         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
1446
1447         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
1448         not the alignment.
1449
1450         * gtk/gtkeventbox.h:
1451         * gtk/gtkeventbox.c: GtkType and macro fixups.
1452
1453         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
1454         sensitivity of an entry.
1455
1456         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
1457         for insensitive base and text.
1458
1459         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
1460         widget state dependent.
1461         (gtk_entry_style_set): likewise.
1462         (gtk_entry_state_changed): set background color on state changes.
1463         (gtk_entry_draw_text): for non selected text, use state dependent
1464         colors.
1465
1466         * gtk/gtktogglebutton.c: support for widget arguments
1467         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
1468
1469 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
1470
1471         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
1472         code for 1.0.x-like parameters. Changed internal interface of
1473         gtk_spin_button_real_spin. Several fixes to avoid emission of
1474         "value_changed" where possible.
1475
1476 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
1477
1478         * gtk-boxed.defs: s/GkWidget/GtkWidget/
1479
1480 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
1481
1482         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
1483         to select the resize_mode for the idle-labels container.
1484
1485         * gtk/gtkframe.h: 
1486         * gtk/gtkframe.c: GtkType and macro corrections.
1487
1488         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
1489         support widget argument "GtkRadioButton::group".
1490
1491 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
1492
1493         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
1494         unconditionally if resize_mode has changed.
1495
1496         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
1497         GTK_RESIZE_QUEUE on the scrolled window.
1498         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
1499
1500 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
1501
1502         * gtk/gtkcontainer.h:
1503         * gtk/gtkcontainer.c:
1504         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
1505         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
1506         (gtk_container_queue_resize): new function to queue a container for
1507         a *size* reallocation (doesn't affect its position, and thus its
1508         parent is left untouched usually).
1509         (gtk_container_get_resize_container): new function to retrive the next
1510         most resize container which is not itself queued for a resize.
1511         (gtk_container_idle_sizer): new function to carefully process the
1512         container_resize_queue since it can change during invokation of
1513         gtk_container_check_resize().
1514         (gtk_container_resize_children): total rework of this function to
1515         properly handle resize containers. makes a lot of assumptions whitch
1516         are stated in the comments.
1517
1518         * gtk/gtkcontainer.c:
1519         (gtk_container_real_check_resize): only requeue ourselves if we are not
1520         a resize container.
1521         (gtk_container_clear_resize_widgets): care for automatic deletion of our
1522         resize_widgets list on size_allocate through a handler connection.
1523
1524         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
1525         focus and default widget of a window, so to take the burden from
1526         gtk_widget_unparent.
1527
1528         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
1529         to be clever, but actually messed up the resize_children logic and
1530         caused unneccessary allocations on its whole branch. besides this,
1531         it messed up the display by not invoking a redraw after the allocation.
1532
1533         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
1534         that it is the child again that is queued for a resize.
1535         (gtk_table_attach): likewise.
1536         (gtk_table_remove): likewise.
1537
1538 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1539
1540         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
1541         gtk_entry_adjust_scroll.  Required if you change the cursor
1542         position and want to sync it up with your code (Midnight Commander
1543         gtk front end needs this).
1544
1545         * gtk/gtktable.c: Deal with tables that have size 0, 0.
1546
1547 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
1548
1549         * examples/README.1ST: new file to explain how the
1550           code examples should be extracted from the tutorial.
1551
1552 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
1553
1554         * gtk/gtkctree.c (draw_row): added new "line style"
1555         GTK_CTREE_LINES_TABBED 
1556         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
1557         search the glist pointer of an GtkCTreeRow
1558
1559 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
1560  
1561         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
1562         from, and clean up, the dependencies.  Generate to intermediate
1563         files to prevent problems with Ctrl-C.
1564
1565         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
1566
1567 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
1568
1569         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
1570         - Bug fix for precision problem causing occasional double emission 
1571           of "value_changed" signal (hopefully works now).
1572         - API change (should be binary compatible) : 
1573           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
1574           Modified cursor example appropriately.
1575           To spin by something other than step_/page_increment, use
1576           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
1577         - Made GTK_SHADOW_NONE the default. ;)
1578         - Fixed casting of GtkAdjustment* to GtkWidget* in
1579           gtk_spin_button_value_changed.
1580
1581 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
1582
1583         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
1584         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
1585         resize widget list before queuing the container for a new reize.
1586         (gtk_container_need_resize): changed return value to FALSE, since this
1587         used to indicate that no further resizes are needed.
1588         (gtk_container_set_arg): 
1589         (gtk_container_get_arg): 
1590         (gtk_container_class_init): implemented GtkContainer::resize_mode
1591         argument.
1592
1593         (gtk_container_resize_children): when we walk up the tree of a resize
1594         widget we need to stop if we are the current parent.
1595
1596         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
1597         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
1598         (gtk_widget_hide_all): retrive the toplevel widget from via
1599         gtk_widget_get_resize_container().
1600
1601 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
1602
1603         * gtk/gtklist.c (gtk_list_button_press): Only respond
1604           to selection with button 1. This allows context-sensitive
1605           menus to work correctly.
1606
1607 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
1608
1609         * gtk/gtkaccelgroup.c: 
1610         * gtk/gtkbindings.c: 
1611         * gtk/gtkcontainer.c:
1612         * gtk/gtkitemfactory.c:
1613         * gtk/gtkobject.c: 
1614         * gtk/gtksignal.c:
1615         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
1616         g_quark_from_static_string calls to save memory.
1617
1618         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
1619         function _after_ the new data has been setup.
1620         minor changes to object data functions to feature the GQuark type.
1621
1622 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
1623
1624         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
1625           from argv.
1626
1627 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
1628
1629         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
1630           to be more readable perl, to spit out stuff that looks
1631           more like readable C, and to pipe output through indent
1632           so output looks a lot like readable C. No functional
1633           changes.
1634
1635 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
1636
1637         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
1638           necessary when switching to a masked pixmap. (Based on a patch
1639           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
1640
1641 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
1642
1643         * gtk/gtkeditable.[ch]: Added action signals for keyboard
1644           bindings. (move_cursor, kill_word, etc, etc, etc). 
1645
1646           removed the time argument from
1647           gtk_editable_cut/copy/paste_clipboard (source but not
1648           binary incompatible...) Instead get time from
1649           gtk_get_current_event ().
1650         
1651         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
1652           signals.
1653
1654 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
1655
1656         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
1657
1658         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
1659              parent class to GtkNotebookClass when splitting the widget in
1660              two.  Also updated some comments.
1661
1662         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
1663                button without a font selected.
1664
1665              Fixed bug in set_font_name - I hadn't updated the code to
1666                search for the style in the font_style clist - it was
1667                still assuming the style row was equal to its index,
1668                but it isn't any more.
1669         
1670              Changed 'Reset' button on filter page to 'Clear Filter'.
1671              Deleted old code relating to the old 'Filter Fonts' toggle
1672              Updated some comments.
1673              Cleared 'Actual Fontname' if no font is set.
1674
1675         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
1676              destroying the GtkFontSelection instead of the
1677              GtkFontSelectionDialog.
1678
1679 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
1680
1681         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
1682           flag to make all warnings fatal errors.
1683
1684         * gtk/testthreads.c: moved <pthreads.h> include inside 
1685           #ifdef USE_PTHREADS
1686
1687 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
1688
1689         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
1690           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
1691
1692         - Added new function gtk_container_set_resize_mode() for
1693           fine-grained control of where resize-queueing is done.
1694
1695         - Removed GtkContainer::need_resize and GtkWindow::move_resize
1696         - Added GtkContainer::check_resize to replace need_resize.
1697
1698         - Added function gtk_container_check_resize() to trigger
1699           queued resizes, and gtk_container_resize_children() to
1700           Figure which children need to be size-allocated. (logic
1701           moved from gtkwindow.c)
1702
1703         - Reorganized code in gtkwindow.c
1704         
1705         - Set the resize-mode for viewports so that resizes within
1706           a viewport don't propagate out of it. 
1707         
1708 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1709
1710         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
1711
1712         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
1713         g_return_val_if_fail, because the function *does* return a value.
1714
1715 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
1716
1717         * gtk/gtkaccellabel.h:
1718         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
1719         request the size of the accelerator portion of an accel label.
1720         (gtk_accel_label_size_request): don't request for the accelerators size.
1721         (gtk_accel_label_expose_event): only draw the accelerator if we got
1722         enough extra space.
1723
1724         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
1725         width from children.
1726
1727         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
1728         object (after removal has been requested) check if there is still an
1729         accelerator remaining to avoid adding two accelerators on an object.
1730         this can happen for locked accelerators (or accelerator-frozen widgets).
1731         (gtk_menu_size_request): feature childrens accelerator width in size
1732         requests.
1733
1734         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
1735         gtk_widget_freeze_accelerators() for dynamically created menu items.
1736
1737         * gtk/gtksignal.h: 
1738         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
1739         which will return a handler_id > 0 if the specified function is pending
1740         for `signal_id'.
1741
1742         * gtk/gtkwidget.h:
1743         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
1744         a signal handler function to stop accelerator addition.
1745         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
1746         which will prevent (undo) any accelerators from being added to or
1747         removed from a widget.
1748
1749 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
1750
1751         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
1752         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
1753         acceleration, new API gtk_spin_button_set_snap_to_ticks.
1754
1755 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
1756
1757         * gdk/gdk.h:
1758         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
1759         the current GdkWindow the pointer is on if there is any.
1760         
1761         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
1762         and one column, so we don't construction logic at all. changed a few
1763         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
1764         unsigned int wraps.
1765
1766         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
1767         portion, added an additional check for parent != widget.
1768
1769         * more GtkType and macro fixups.
1770
1771 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1772
1773         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
1774         "clip" parameter, which is the clipping rectangle to use.  This
1775         eliminates the extremely annoying flicker when exposing parts of
1776         the handlebox.
1777
1778 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
1779
1780         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
1781         resizing
1782
1783 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
1784
1785         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
1786         != 0 on the argument.
1787
1788         * gtk/gtktable.h: 
1789         * gtk/gtktable.c: new function gtk_table_resize() which allowes
1790         shrinking and expanding of tables. implementation of widget arguments
1791         and child arguments. many signedness corrections.
1792
1793 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
1794
1795         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
1796         not only the child, otherwise we might end up taking away other
1797         childrens space after the resize.
1798
1799         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
1800         an unknown menu path from any source, that path must always be flagged
1801         as "modified", since we don't really know whether it has its default
1802         value or not.
1803
1804         * gtk/gtktree.c:
1805         * gtk/gtkpacker.c:
1806         * gtk/gtknotebook.c:
1807         * gtk/gtkmenushell.c:
1808         * gtk/gtklist.c:
1809         * gtk/gtkpaned.c:
1810         * gtk/gtkfixed.c: 
1811         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
1812
1813         * gtk/gtkbox.h: 
1814         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
1815         arguments. implemented child arguments.
1816
1817         * more GtkType and macro fixups.
1818
1819 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
1820
1821         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
1822
1823         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
1824         and gtk_clist_get_hadjustment.
1825
1826         * gtk/gtkcontainer.c:
1827         implementation of children arguments, new class member functions
1828         (child_type), (get_child_arg) and (set_child_arg) plus a new field
1829         n_child_args.
1830         (gtk_container_child_type): new function which returns the type of a
1831         child that the container expects for its next addition.
1832         (gtk_container_add_child_arg_type): new function to introduce a new
1833         child argument at class creation time.
1834         (gtk_container_query_child_args): new function to query all child
1835         arguments that are supported by a container class.
1836         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
1837         child argument.
1838         (gtk_container_child_arg_setv): new function to set a child argument for
1839         a certain container and child combination.
1840         (gtk_container_add_with_args):
1841         (gtk_container_add_with_argv): new functions to feature addition of a
1842         new child in combination with the setting of certain child arguments.
1843
1844         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
1845         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
1846         this should really be done through class cretion hooks some day.
1847
1848         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
1849         guint : 16.
1850
1851         * gtk/gtkpacker.h:
1852         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
1853         follow the gtk convention for lower case variable names (important
1854         for language wrappers and widget arguments), and made them guint : 16.
1855
1856         * examples/packer/pack.c: adaptions for the case converted GtkPacker
1857         fields.
1858
1859 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
1860
1861         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
1862         change the character pair for single line comments.
1863         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
1864         GtkItemFactoryClass.
1865         (gtk_item_factory_parse_rc_string): likewise.
1866
1867 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
1868
1869         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
1870         lists from the klass structure to a static structure
1871         in gtkfontsel.c; cleans up global the namespace.
1872
1873 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
1874
1875         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
1876         bug with /*< skip >*/ and remove warning.
1877         
1878 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
1879
1880         * gtk/Makefile.am: Made the gtkmarshal.* generation
1881         rules maintainer-only.
1882
1883 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
1884
1885         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
1886           gtk/Makefile.am gtk/makenums.pl 
1887
1888         Removed out the G_ENUM/FLAGS mechanism in favor
1889         of a perl script that parses the standard headers
1890         (with occasional /*< nick=foo >*/ style overrides)
1891         and extracts the enumerations.
1892
1893           gtk/maketypes.awk: Small improvments to the
1894           translation of names. (Avoid splitting gc into
1895           g_c_.)
1896         
1897 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
1898
1899         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
1900         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
1901         
1902 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
1903
1904         * gtk/gtkentry.c:
1905         - Restored gtk_entry_adjust_scroll to static 
1906         - Changed text positioning code so that we always
1907           display as large a portion of the text as possible.
1908
1909 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
1910
1911         * gtk/gtktext.c (gtk_text_finalize): Free internal
1912         structures of text widget. Also, unreference pixmaps
1913         when unrealizing.
1914         
1915 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
1916
1917         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
1918         3.3.1 bug workaround to number keys starting at 1.
1919
1920 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
1921
1922         * docs/gtk_tut.sgml: Fixed urls for complete example
1923         source for scribble+widget-writing examples.
1924
1925 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
1926
1927         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
1928         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
1929         specs of the form c #abcdef [ more keys ] properly.
1930
1931 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
1932
1933         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
1934         (gtk_spin_button_set_shadow_type):
1935         New API to set the shadow type of the arrow panel.
1936
1937 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
1938
1939         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
1940         code for drawing the child in two places at once. Unfortunately,
1941         not only does it not work anymore (because reparenting has
1942         been fixed), but it also triggers reparent/expose loops
1943         in some cases.
1944
1945         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
1946         an unecessary unrealize.
1947
1948 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
1949
1950         * gdk/gdkwindow.c (gdk_window_reparent): Update the
1951           old and new parents' child window lists properly.
1952
1953 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
1954
1955         * gtk/gtkpacker.h:
1956         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
1957         and GtkSideType, to be consistent with the rest of Gtk's enum
1958         definitions. wrapped the enum definitions with the G_ eunm wrappers.
1959         spelled out the GTK_ANCHOR_* enum values, since single letters don't
1960         work out corectly as nick-names (left the old values as aliases).
1961         some signdness corrections (border-width, spacing), could stand more.
1962
1963 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1964
1965         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
1966           Added gtkpacker
1967
1968         * examples/packer/pack.c, examples/packer/Makefile: Added
1969           gtkpacker example
1970
1971 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
1972
1973         * gtk/gtktext.c (remove_cache_line): Fixed broken
1974         list-removal code.
1975
1976         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
1977         Check bounds before deleting.
1978
1979 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
1980
1981         * autogen.sh: Support ACLOCAL_FLAGS
1982
1983 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
1984
1985         * gtk-config.in: Added missing quotes.
1986
1987 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
1988
1989         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
1990
1991 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
1992
1993         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
1994         G_COMPILED_WITH_DEBUGGING.
1995
1996         * configure.in (fd_set): Explain check better.
1997
1998         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
1999         the version from which gtk+'s libtool forked.  Needed for people
2000         who use post-1.2 alphas of libtool.
2001
2002 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
2003
2004         * glib/* Moved to glib module
2005
2006         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
2007           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
2008
2009           configuration changes for the above:
2010          
2011           - Use AM_PATH_GLIB by default to find glib; also accept
2012             a --with-glib option for using an uninstalled glib.
2013          
2014           - Put --enable-debug information into config.h so
2015             that we rebuild when it changes. (was in glibconfig.h)
2016
2017 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
2018
2019         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
2020
2021         * gtk/gtknotebook.h (struct _GtkNotebookClass):
2022         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
2023         added missing argument (according to Joseph Coleman's bug report)
2024
2025         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
2026         function to fix notebook focus handling
2027         
2028 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
2029
2030         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
2031           glib/gutils.c glib/testglib.c glib/gdataset.c
2032           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
2033           gtk/gtktext.c gtk/gtkbindings.c:
2034
2035          renamed g_const_pointer => gconstpointer
2036
2037 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
2038
2039         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
2040         invoked with (NULL, NULL); (this worked sometime ago).
2041
2042         * gtk/gtktypeutils.h: 
2043         * gtk/gtktypeutils.c: enum and flags type creation can now be done
2044         through gtk_type_register_enum() and gtk_type_register_flags(),
2045         which allow to specify the enum value arrays directly.
2046         the NULL terminated value arrays can be retrived through
2047         gtk_type_enum_get_values() and gtk_type_flags_get_values();
2048         (gtk_type_children_types): new function to query derived types.
2049
2050 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
2051
2052         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
2053         environment to genmarshal.pl.
2054         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
2055         rule), and removed it where not needed (in the dependencies).
2056
2057         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
2058
2059 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
2060
2061         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
2062         was just g_direct_hash.
2063
2064 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
2065
2066         * configure.in: x_libs=, not $x_libs=. Enough said.
2067           (Case only hit for --disable-xshm)
2068         
2069 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
2070
2071         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
2072           when testing for X libraries, don't replace them. Because
2073           the user might have specified the path to the X libraries
2074           themself before running configure.
2075
2076         * examples/**.c: Changed all gpointer * to gpointer
2077         
2078 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2079
2080         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
2081         fleur_cursor field.  Now the cursor is created/destroyed on demand
2082         by the routines that need it.
2083
2084         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
2085         (gtk_handle_box_motion): The fleur cursor is created and destroyed
2086         only when needed.
2087
2088 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
2089
2090         * gtk/gtktypeutils.h: 
2091         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
2092         gtk_enum_set_values to gtk_type_enum_get_values and
2093         gtk_type_enum_set_values respectively, since they are actually type
2094         system features.
2095
2096         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
2097         my last commit. ;)
2098
2099 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
2100
2101         * gtk/gtkselection.h: 
2102         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
2103         gtk_selection_data_free.
2104
2105         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
2106         for "selection_received", which was completely bogus.
2107         * other fixups to gtk_signal_new() calls all over the place.
2108
2109         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
2110         * gtk/gtktypebuiltins_vars.c: type variable implementations.
2111         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
2112         declarations.
2113         * gtk/gtktypebuiltins_evals.c: enum value arrays.
2114         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
2115         gtk.defs.
2116         * gtk/gtk.defs: generated file with scheme syntax for type definitions
2117         of gtk and gdk structures and enums.
2118         * gtk/gtktypeutils.h: 
2119         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
2120         macros anymore (this fixes binary incompatibility with new enum
2121         definitions).
2122
2123         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
2124         key bindings for this widget.
2125         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
2126         handler.
2127
2128         * gtk/gtkobject.h:
2129         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
2130         again. new functions gtk_object_class_user_signal_new () and
2131         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
2132         flag on the signal creation.
2133
2134 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
2135
2136         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
2137
2138 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
2139
2140         * gdk/gdkprivate.h: 
2141         * gdk/gdktypes.h: 
2142         * gtk/gtkprivate.h: 
2143         * gtk/gtkwidget.h: 
2144         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
2145
2146         * reworked enum value array generation code. gtk.defs is a generated
2147         file now.
2148
2149 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
2150
2151         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
2152         check menu items in the compatibility code (this required me to remove
2153         the "<check>" part from the menu item name, grrr).
2154
2155 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
2156
2157         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
2158         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
2159         
2160 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
2161
2162         * gtk/gtkitemfactory.h: 
2163         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
2164         additions to the dumping code to feature GtkPatternSpec.
2165         even found a bug to fix in the original code ;)
2166         
2167 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
2168
2169         * gtk/gtkitemfactory.c: support different types of callbacks, to
2170         maintain existing code.
2171
2172 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
2173
2174         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
2175
2176         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
2177         this should eventually be done by gentypeinfo.el somewhen.
2178         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
2179
2180         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
2181         enum values of an enum type.
2182
2183         * gtk/gtk.defs:
2184         * gtk/gtkcurve.h: 
2185         * gtk/gtkobject.h: 
2186         * gtk/gtkprivate.h: 
2187         * gtk/gtkwidget.h:
2188         * gtk/gtkenums.h: 
2189         brought enum/flags definitions in sync, added a few more enum
2190         definitions for bindings and pattern matching.
2191
2192         * some more macro and GtkType fixups in various places.
2193
2194         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
2195         as a key-release modifier for the binding system.
2196
2197 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
2198
2199         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
2200         was a stale list pointer that is already present in GtkMenuShell.
2201
2202         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
2203         GtkMenuShell::selection_done which is emitted after the menu shell
2204         poped down again and all possible menu items have been activated.
2205
2206 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
2207
2208         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
2209         before activation of the menuitem, so the menu is actually taken off the
2210         screen prior to any menu item activation.
2211
2212         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
2213         for NULL nodes.
2214
2215         * gtk/gtkwidget.h:
2216         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
2217         the emission of the "add-accelerator" signal on a widget. this is
2218         usefull to prevent accelerator installation on certain widgets.
2219
2220         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
2221         labels left justified, by setting their alignment. stop accelerator
2222         installation for the menu items, since we use dynamic menus.
2223
2224 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
2225
2226         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
2227         should *really* use GtkItemFactory. this is only for preserving source
2228         compatibility where possible, use of GtkMenuFactory is deprecated as of
2229         now.
2230
2231         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
2232         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
2233         missed this possibility when i added gtk_object_class_add_user_signal
2234         in late january.
2235
2236         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
2237
2238 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
2239
2240         * gtk/gtkaccelgroup.h: 
2241         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
2242
2243         * gtk/gtkaccellabel.h: 
2244         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
2245         display of the accelerators associated with a certain widget.
2246
2247         * gtk/gtkitemfactory.h: 
2248         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
2249         parsing and accelerator handling.
2250
2251         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
2252         positioning a menu.
2253         (gtk_menu_map): removed the allocation code.
2254         (gtk_menu_size_allocate): care for redrawing of children and resize
2255         our widget->window correctly.
2256         (gtk_menu_key_press): feature the new accelerator groups.
2257
2258         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
2259         submenu if neccessary.
2260
2261         * gtk/gtkmenuitem.c:
2262         * gtk/gtkcheckmenuitem.c:
2263         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
2264         function variants.
2265
2266         * gdk/gdk.c:
2267         (gdk_keyval_from_name): 
2268         (gdk_keyval_name): new functions for keyval<->key-name associations.
2269         (gdk_keyval_to_upper): 
2270         (gdk_keyval_to_lower): 
2271         (gdk_keyval_is_upper): 
2272         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
2273         regards to their cases.
2274
2275 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
2276
2277         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
2278         widget's class path.
2279         (gtk_widget_path): new function to calculate a widget's name path.
2280
2281         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
2282         pattern matching, features reversed pattern matches.
2283
2284 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
2285
2286         * examples/extract.sh, examples/extract.awk:
2287           New files to automagically extract code examples from the
2288           tutorial.
2289
2290 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
2291
2292         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
2293         * gtk/gtkcontainer.c (gtk_container_focus_move):
2294         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
2295
2296 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
2297
2298         * docs/gtk_tut.sgml: minor changes to support auto
2299           extraction of example code
2300
2301 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
2302
2303         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
2304           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
2305
2306 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
2307
2308         * docs/gtk_tut.sgml:
2309           - new section on Events
2310           - change all delete_event callbacks to include
2311             a GdkEvent parameter
2312           - clean up the formatting
2313
2314         * examples - helloworld.c, helloworld2.c, notebook.c,
2315           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
2316           rulers.c, table.c, wheelbarrow.c: change all delete_event
2317            callbacks to include a GdkEvent parameter.
2318
2319 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2320
2321         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
2322         field of crossing events.
2323         (struct _GdkEventCrossing): Added the following fields: time, x,
2324         y, x_root, y_root, mode, focus, state.
2325
2326         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
2327         crossing event structure.
2328
2329         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
2330         changes to the crossing event structure.
2331
2332 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
2333
2334         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
2335
2336 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
2337
2338         * docs/gtk_tut.sgml:
2339            - GtkTooltips, update to current API
2340            - change all 'gpointer *data' to 'gpointer data'
2341            - other minor changes
2342
2343 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
2344
2345         * configure.in (LDFLAGS): Bomb out with a moderately
2346           helpful message if detection of X libraries fails.
2347
2348 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
2349
2350   [ Combination of:
2351      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
2352      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
2353
2354         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
2355           gtk/gtksignal.c gtk/gtktext.c: 
2356
2357           Fixups for warnings from adding const to type of GHashFunc,
2358           GCompareFunc
2359         
2360         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
2361           ansi-warnings fixups.
2362
2363 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
2364
2365         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
2366         Locate child at (border_width,border_width), not
2367         (2*border_width,2*border_width). [ The border is _outside_
2368         widget->window ]
2369         
2370         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
2371           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
2372
2373 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
2374
2375         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
2376         used in gnome-libs
2377
2378 1998-05-22    <sopwith@redhat.com>
2379
2380         * gtk/gtkeventbox.c: Pass size_allocate on to the child
2381         regardless of whether it is visible or not. Also
2382         locate child at (border_width,border_width), not (0,0)
2383
2384 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
2385
2386         * gtk/gtkhandlebox.c: Added style_set handler.
2387
2388 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
2389  [ From: Chris Lahey  <clahey@umich.edu> ]
2390         
2391         * gtk/gtkeditable.c, gtk/gtkeditable.h,
2392           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
2393           and set_position functions to get and set the cursor position.
2394
2395         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
2396           signal status. Make GtkText do user-controlled insertion
2397           and deletion through the Editable widget so that these
2398           signals are properly emitted.
2399
2400         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
2401           display asterisks instead of empty space when visible = FALSE)
2402
2403 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
2404
2405         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
2406         signal.
2407
2408 1998-05-21    <sopwith@redhat.com>
2409
2410         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
2411         custom routine for loading images specified in gtkrc's.
2412
2413 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
2414
2415         * configure.in: Use pthread_attr_init() as a test function,
2416         since most of the rest of -lpthread is macros on DU4.
2417
2418 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
2419
2420         * gtk/gtkcombo.c: implemented completion in the entry.
2421
2422 1998-05-18    <sopwith@moebuis.labs.redhat.com>
2423
2424         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
2425
2426 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
2427
2428         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
2429         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
2430         to be of runtype GTK_RUN_LAST.
2431
2432         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
2433         "need-resize".
2434
2435         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
2436         "widget-selected".
2437
2438 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
2439
2440         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
2441         text retrived from GtkEntry. only intercept the Tab key if there
2442         was some text to complete.
2443
2444 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
2445
2446         Basic thread-awareness:
2447
2448         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
2449
2450         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
2451         gdk_threads_[init/enter/leave] for applications, plus
2452         gdk_threads_wake to wake the mainloop thread out of
2453         the select().
2454
2455         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
2456
2457 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
2458
2459         * gtk/testgtk.c (list_clear): Account for the fact
2460         that gtk_list_clear_items is not inclusive. (Clears
2461         [start, end))
2462
2463 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
2464
2465         * gdk/gdk.c: include gdkkeysyms.h always
2466         
2467
2468 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
2469
2470         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
2471         the visibility_notify_event method and changed method order.
2472
2473 1998-05-14    <sopwith@moebuis.labs.redhat.com>
2474
2475         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
2476
2477 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
2478
2479         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
2480         from Olli Helenius <ollhel@batman.jytol.fi>.
2481
2482         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
2483         freeing types.
2484         (gtk_type_set_chunk_alloc): new function to allow allocation of new
2485         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
2486         thorugh g_malloc).
2487
2488         * gtk/gtkobject.c (gtk_object_finalize): free an object through
2489         gtk_type_free().
2490
2491         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
2492         GtkButtons to 16.
2493         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
2494         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
2495
2496 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
2497
2498         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
2499           GPOINTER_TO_UINT fixes.
2500
2501         * gtk/gtksignal.c: Include <string.h> for memset.
2502
2503 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
2504         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
2505
2506         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
2507         Cleanups, comments and the ability to have rulers with 
2508         a reversed direction.
2509
2510 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
2511
2512         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
2513         that Sopwith missed when changing stat => lstat.
2514
2515 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
2516
2517         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
2518           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
2519         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
2520
2521         * gdk/gdk.c: Print sizeof() results
2522         as g_print("%ld", (glong)sizeof(foo)), to deal with
2523         sizeof() being long on Alpha's.
2524
2525         * gtk/testgtk.c: include <string.h> for strlen
2526
2527 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
2528         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
2529         
2530         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
2531         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
2532
2533         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
2534
2535 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
2536         (From: Christopher James Lahey <clahey@umich.edu>)
2537         
2538         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
2539           gtk/testgtk.c:
2540
2541         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
2542         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
2543         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
2544         the default relief for the toolbars buttons. Added an
2545         toggle for the toolbar test in testgtk.c.
2546
2547 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
2548
2549         * docs/gtk-config.1: Rewritten and hopefully improved.
2550
2551 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
2552
2553         * docs/Makefile.am
2554         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
2555
2556 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2557
2558         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
2559         GtkPreview's visual and colormap, otherwise things can BadMatch.
2560
2561         * gtk/testgtk.c (create_color_preview): 
2562         (create_gray_preview): Removed pushing/popping of visual/colormap
2563         now that GtkPreview does things correctly.
2564
2565         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
2566         (gtk_color_selection_draw_wheel): Pick the style from the correct
2567         place (the colorsel->wheel_area widget) so that the GCs will match
2568         with where we are going to paint to.
2569
2570         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
2571         of visual/colormap now that GtkColorSelection does things the
2572         right way.
2573
2574 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
2575
2576         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
2577         previously unused window->need_resize flag to mark if a window's
2578         descendents changed size while the window was not visible. In this
2579         case, when the window becomes visible, we reallocate everything,
2580         since we didn't keep track of what actually changed.
2581
2582         (Fixes bug where changing the popdown strings of a
2583         combo to something of the same length caused them to
2584         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
2585
2586 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
2587
2588         [security audit by Alan Cox]
2589
2590         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
2591         exceed maximum assumed size.
2592
2593         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
2594         not exceed maximum assumed size.
2595         (gtk_menu_factory_remove): likewise.
2596         (gtk_menu_factory_find_recurse): likewise.
2597
2598 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
2599
2600         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
2601         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
2602         redrawn if that is still neccessary. don't allow queueing of already
2603         destructed objects.
2604         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
2605         widgets which are in the queue can be destroyed safely, handle
2606         requeueing properly.
2607         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
2608         widgets which are in the queue can be destroyed/unrealized safely.
2609
2610 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
2611
2612         * gtkfaq.sgml: add question on multi-threading,
2613           minor URL cleanups.
2614
2615 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
2616
2617         * configure.in (cflags_set): preserve automake CFLAGS.
2618
2619         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
2620         and libgdk-1.1.la. this means we need to change certain portions of
2621         the Makefile.am on major/minor version bumps.
2622
2623         * ltmain.sh: the -release option is not required anymore.
2624         
2625         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
2626         of the first argument to be of type GtkObject. unconditionally compile
2627         this function. removed __GNUC__ dependancy of the gtk_object_ref and
2628         gtk_object_unref macro wrappers for this function.
2629
2630 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
2631
2632         * gtk/gtkobject.h:
2633         * gtk/gtkobject.c:
2634         (gtk_object_data_try_key):
2635         (gtk_object_data_force_id): these are now macros substituting the old
2636         functions. we just use the corresponding g_dataset_* functions for
2637         key->id associations. (this is to assure unique key<->id associations).
2638
2639 1998-05-10  Stefan Jeske  <stefan@gtk.org>
2640
2641         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
2642         to gboolean.
2643
2644         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
2645
2646 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
2647
2648         * configure.in (LIBS): Try to figure out if this
2649         is Digital Unix and we need -std1 to get the
2650         right prototypes.
2651
2652 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
2653
2654         * docs/gtk_tut_it.sgml: update of Italian tutorial
2655           translation from Daniele Canazza <dcanazz@tin.it>
2656
2657 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
2658
2659         * gtk/gtkfeatures.h.in: new file used as template for
2660         * gtk/gtkfeatures.h: new file to define macros indicating newly
2661         introduced features, such as GTK_HAVE_SIGNAL_INIT.
2662
2663         * gtk/gtksignal.c:
2664         (gtk_signal_emitv_by_name):
2665         (gtk_signal_emitv):
2666         new functions to emit signals with an already provided parameter set.
2667         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
2668         (gtk_signal_real_emit): prototype changes, so this functions always
2669         gets its parameters and signal structure as arguments.
2670         (gtk_signal_emit): provide the signal structure and parameter list for
2671         gtk_signal_real_emit.
2672         (gtk_signal_emit_by_name): likewise.
2673
2674 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
2675
2676         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
2677         signal connections through unsetting GTK_CONNECTED.
2678         (gtk_signal_handler_insert): reflect the presence of signal connections
2679         through setting GTK_CONNECTED.
2680         (gtk_signal_real_emit): only check for handler emissions if the object
2681         has the GTK_CONNECTED flag set.
2682         (gtk_signal_handler_pending): don't check for pending handlers if the
2683         GTK_CONNECTED flag is not set for this object.
2684
2685         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
2686         a GtkObject has signal handler connections.
2687
2688         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
2689         set for this object call gtk_signal_handlers_destroy().
2690         
2691         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
2692         multiple processing of macro args.
2693
2694         * gtk/gtktypeutils.c:
2695         * gtk/gtkobject.c:
2696         * gtk/gtkwidget.c:
2697         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
2698
2699 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
2700
2701         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
2702         draw-queue when we are done. 
2703
2704         (gtk_widget_queue_draw/_queu_resize): Always return
2705         FALSE and avoid having two idles at the same time.
2706         
2707 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
2708
2709         * gtk/gtktext.c: Various fixes to make sure cache
2710         lines are freed if line_start_cache doesn't point to the
2711         beginning of the cache.
2712
2713 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
2714
2715         * style_set improvements for GtkText and GtkEntry
2716
2717 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
2718
2719         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
2720         been initialized.
2721
2722 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
2723
2724         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
2725         data chunks through a global object data structure list. unlink
2726         object data before invoking its destroy function.
2727         (gtk_object_finalize): slight modification to allow usage of object
2728         data during object finalization.
2729
2730 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
2731
2732         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
2733         signal names, e.g. "signal-name" is now an alias for "signal_name".
2734         (gtk_signal_handler_new): allocate handlers through a global handler
2735         structure list, that's faster than memchunks.
2736         (gtk_emission_new): allocate emissions through a global emission
2737         structure list, that's faster than memchunks.
2738
2739 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
2740
2741         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
2742
2743         * ltmain.sh: added a new commandline flag -postfix similar to -release,
2744         but will immediately change the library name.
2745
2746         * gdk/Makefile.am:
2747         * gtk/Makefile.am: specify -postfix and -version-info
2748
2749         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
2750         GTK_BINARY_AGE. calculate LT_* variables for libtool.
2751
2752 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2753
2754         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
2755         background (fg_set -> bg_set confusion).
2756
2757 1998-05-06  Stefan Jeske  <stefan@gtk.org>
2758
2759         * gtk/testgtk.c (unselect_all): Removed code that caused an
2760         endless loop.
2761
2762 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
2763
2764         * gtk/gtksignal.c: reimplemented the signal storage system to use a
2765         linear array rather than a hash table.
2766         be carefull *not* to keep any GtkSignal pointers across invokations
2767         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
2768         general code cleanups, made all allocations through memchunks.
2769         (gtk_signal_lookup): we now do the lookup of signals through a key_id
2770         for the signal names to avoid multiple hashing of the signal name on
2771         lookups for the several hirarchy levels of an object.
2772
2773 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
2774
2775         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
2776         to speed things up and remove code duplication.
2777
2778         Reintegrated buffer overflow patches, and added
2779         some extra paranoia.
2780         
2781 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
2782
2783         * gdk/gdk.c (gdk_event_translate): A guint * was
2784         being passed where X expected a Keysym *, and
2785         keysyms are long's on Alpha Linux. This was causing
2786         segfaults in Xlib, apparently because of alignment.
2787         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
2788         
2789 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
2790
2791         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
2792         set GDK_EXPOSURE_MASK for DrawingAreas
2793
2794 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
2795
2796         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
2797         (superceded by RC file reparsing capabilities)
2798
2799         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
2800         events. (Shouldn't be sent to the InputOnly leader, which
2801         it is now by gdk_event_send_clientmessage_toall
2802
2803         * gtk/testgtk.c: Added extra button to rcfiles test
2804         to send out _GDK_READ_RCFILES events.
2805         
2806 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
2807
2808         * gtk/gtkselection.c (gtk_selection_clear): Fixed
2809         reversed conditionals that caused segfault on some
2810         platforms.
2811
2812 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
2813
2814         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
2815         cast to GTK_OBJECT for gtk_object_ref.
2816
2817 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
2818
2819         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
2820         checking for signal initialization in gtksignal.c.
2821
2822         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
2823         a long debugging period ;)
2824
2825 1998-05-05  Stefan Jeske  <stefan@gtk.org>
2826
2827         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
2828         New function to wrap XSetDashes; modified gtkctree.c to use it.
2829
2830 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2831
2832         * configure.in: Added $x_libs in the other_libraries field in the
2833         check for XShapeCombineMask.
2834
2835 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
2836
2837         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
2838         gtk_type_is_a().
2839         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
2840         linear array rather than a hash table. it actually speeded up testgtk
2841         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
2842         pointers across invokations of gtk_type_node_next_and_invalidate() and
2843         therefore gtk_type_unique()!
2844
2845         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
2846         inheritance of a class pointer.
2847         (GTK_OBJECT): modifications for speedups.
2848         (GTK_IS_OBJECT): likewise.
2849         (GTK_OBJECT_CLASS): likewise.
2850         (suggested by owen).
2851
2852         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
2853
2854         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
2855
2856         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
2857         since its derivation changed 4 month ago ;(. showed up with the unique
2858         type name checking code in gtk_type_unique().
2859
2860         * random guint->GtkType and macro fixups.
2861
2862 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
2863
2864         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
2865         Configure events that would result in a negative
2866         size.
2867
2868 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
2869
2870         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
2871         "glibconfig.h" and another about writing another IRC
2872         client.
2873
2874 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
2875
2876         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
2877         parameters to log are doubles. Digital Unix apparently
2878         is missing the argument in its prototype.
2879
2880 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
2881
2882         * gtk/gtklabel.c (gtk_label_state_changed): Don't
2883         force a clear until the widget is actually on
2884         screen.
2885
2886 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
2887
2888         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
2889         to make this consistent with the gtk-1-0 tree.
2890
2891 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
2892
2893         * configure.in acheader.h gdk/gdkwindow.c 
2894         Check for Shape extension both on the client and server
2895         side. (And, more importantly, check for the shape extension
2896         so we may include -lXext even when compiling with --disable-xshm)
2897
2898         Don't set override_redirect on all shaped windows. It isn't
2899         necessary.
2900
2901         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
2902         and foreign windows. Use this to check if we
2903         need to get the colormap from X.
2904
2905 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
2906
2907         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
2908         between the default and the button always in GTK_STATE_NORMAL.
2909
2910         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
2911         callback.
2912
2913 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
2914
2915         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
2916           Fix a buffer overflow on pixmaps that claim to have
2917           more than 31 characters per pixel.
2918
2919           (gdk_pixmap_read_string): Don't wrap around strings longer
2920           than half of address space ;-)
2921
2922         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
2923         that were used for printing integers.
2924
2925         * */* (almost):
2926
2927         Style: All 
2928           int foo () { ... }
2929         changed to
2930           int foo (void) { ... }
2931
2932         Even where there were proper prototypes elsewhere.
2933
2934         * gdk/gxid.c (handle_claim_device): Some extra checks.
2935         It isn't safe against being fed bad X id's, but at
2936         least it should be safe against deleting all your
2937         files.
2938
2939 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
2940
2941         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
2942         to set the adjustments value when there is no current emission.
2943         [ Removed by mutual agreement owt 5/3/1998 ]
2944
2945         * gtk/gtksignal.c: added new functions to retrive the number of
2946         existing emissions for a certain signal.
2947         (gtk_signal_n_emissions): new function.
2948         (gtk_signal_n_emissions_by_name): new function.
2949
2950 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
2951
2952         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
2953         set the current focus_child of a container, does proper referencing and
2954         adjusts the vadjustment/hadjustment associated with the focus widget.
2955
2956         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
2957         containers via gtk_container_set_focus_child.
2958
2959         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
2960         where appropriate.
2961
2962         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
2963         child since not every child removal goes through this function (this
2964         showed up after gtk_container_set_focus_child() started to reference the
2965         focus_child of a container).
2966
2967         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
2968         of a container from gtk_container_remove into this place.
2969
2970 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
2971
2972         * gtk/gtksignal.c: added new functions to operate on intermediate
2973         function pointers. implemented incremental blocking.
2974         (gtk_signal_disconnect_by_func): new function.
2975         (gtk_signal_handler_block_by_func): new function.
2976         (gtk_signal_handler_unblock_by_func): new function
2977
2978 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
2979
2980         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
2981         Always show the scrollbars when the policy is
2982         GTK_POLICY_ALWAYS...
2983
2984 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
2985
2986         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
2987         "value_changed" if we really passed a new value.
2988         (gtk_adjustment_changed): new function to emit the "changed" signal.
2989         (gtk_adjustment_set_value): new function to emit the "value_changed"
2990         signal.
2991
2992 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
2993
2994         * gtk/gtkcombo.c: Further changes to the way the window
2995         is popped up so that it will be compatible with 
2996         auto-scrolling in the future.
2997
2998 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
2999
3000         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
3001         the combo-list is empty since that will cause the combo to operate
3002         on a non existing GtkList window.
3003         (gtk_combo_get_pos): provide the combo list with a usfull default
3004         height if empty.
3005         (gtk_combo_popup_button_press): grab the focus.
3006         (gtk_combo_activate): grab the focus.
3007
3008 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
3009
3010         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
3011         function to reset the RC styles for a heirarchy
3012
3013         Clear the window background if necessary in
3014         gtk_window_style_set.
3015
3016         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
3017         rereads all previously read RC files.
3018
3019         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
3020         (Should it just be called gdk_get_toplevels?)
3021
3022         * gtk/testgtk.c: New test to reload RC files.
3023
3024 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
3025
3026         * gtk/gtkclist.h:
3027         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
3028         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
3029         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
3030         the GTK_ prefix (this solution involved less changes in the
3031         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
3032         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
3033         from lars & stefan to support the derivation of GtkCtree.
3034
3035         * gtkctree.h:
3036         * gtkctree.c:
3037         initial import of a tree widget derived from gtkclist, courtesy
3038         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
3039         it just damn rocks!
3040
3041 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
3042
3043         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
3044         for us.
3045         (gtk_list_insert_items):
3046         (gtk_list_remove_items_internal): 
3047         (gtk_list_clear_items): 
3048         remove a possible pointer grab, we might get thrown into a loop
3049         otherwise.
3050         (gtk_list_button_press): grab the pointer *before* selecting the child,
3051         because selection of items may cause the lists children to change,
3052         resulting in a grab release.
3053         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
3054         children.
3055         (gtk_list_shutdown): remove all children from the list.
3056         (gtk_real_list_unselect_child): 
3057         (gtk_real_list_select_child): *always* put our internal structures into
3058         sane state *before* signal emisions (i.e. list->selection updates prior
3059         to gtk_list_item_[de]select() calls).
3060
3061         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
3062         focused child walks out of the window.
3063         removed CAN_FOCUS for the combo arrow's button since it doesn't react
3064         to keyboard events ("clicked" connection is missing).
3065
3066 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
3067
3068         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
3069         getting colormap for FOREIGN windows to go along with
3070         Raster's fix for visuals.
3071
3072 Merges from gtk-1-0
3073 ===================
3074         
3075 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
3076
3077         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
3078         Check to catch the case when the viewport fits in either
3079         direction or both, instead of flip-flopping infinitely.
3080
3081         Only show/hide the scrollbars once at the end.
3082
3083 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
3084
3085         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
3086         Include the scrollbars in the foreach call.
3087         (gtk-fortier-980405-0.patch; 
3088          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
3089
3090         The notebook widget
3091         really should also include its tabs, but that might cause
3092         problems for programs if they
3093
3094 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
3095
3096         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
3097         resize if the size actually changed. 
3098         (gtk-johannes-980414-0.patch ;  
3099          johannes@nada.kth.se (Johannes Keukelaar) )
3100
3101 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
3102
3103         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3104           ltmain.sh ltconfig config.sub config.guess:
3105
3106         Reverted back to libtool-1.2 (plus minor patches) so as not to
3107         force the issue for everyone else.
3108
3109 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
3110
3111         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3112         Updated to libtool 1.2a.
3113
3114         * gtk/gtkclist.c: Draw the in-between lines with style->base
3115         instead of style->white.
3116         
3117 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
3118
3119         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
3120         Cache the colormap and children of a window locally
3121         instead of fetching them from the server when needed.
3122         Huge performance difference for creating/destroying
3123         windows.
3124
3125         * gtk/gtkstyle.c: Find the depth from the cached
3126         visual, instead of asking the server.
3127
3128         * gtk.m4: Distribute the new version which tries to
3129         figure out what went wrong and give helpful error
3130         messages.
3131
3132         * ltmain.sh ltconfig config.sub config.sh: 
3133         Updated to libtool 1.2a
3134
3135         * gtk/gtktext.c: Fixed a bug where the drawn level
3136         was being messed up when the text was scrolled
3137         during a deletion.
3138         
3139 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
3140
3141         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
3142         the filesystem under you (fix from Josh)
3143
3144 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
3145
3146         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
3147         if the viewport already exists before iterating over it, maybe we
3148         haven't been constructed yet.
3149
3150 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
3151
3152         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
3153         the GtkBin widget already has a child.
3154
3155         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
3156         check that child->parent == NULL;
3157
3158 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
3159
3160         * gtk/gtkselection.c (gtk_selection_clear): Only return
3161         FALSE when the clear event is been rejected, not when
3162         widget has already lost the selection. (Which should
3163         only happen when we are setting the selection to another
3164         widget ourself.)
3165         
3166 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
3167
3168         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
3169
3170         Removed the "check visibility after gtk_widget_unparent" bug 
3171         in hopefully the last three places.
3172
3173 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
3174
3175         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
3176         rc-files.
3177
3178 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
3179
3180         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
3181         for CAN_FOCUS widgets.
3182
3183         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
3184         adjustments for the table.
3185         (create_list): feature automatic adjustment of the scrolled window to
3186         always contain the focused child.
3187         (create_main_window): keep the focussed button always inside of the
3188         scrolled windoww.
3189
3190         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
3191         adjustments, to contain the allocation of the currently focused child.
3192         (gtk_container_set_focus_hadjustment): new functin to set the
3193         horizontal focus adjustment.
3194         (gtk_container_set_focus_vadjustment): new functin to set the vertical
3195         focus adjustment.
3196
3197         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
3198         clamp the currents adjustment page into a specific range.
3199
3200         * random GtkType fixups for gtk_*_get_type() functions.
3201
3202 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
3203
3204         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
3205         Account for the fact that gtk_tree_item_remove_subtree
3206         will be called recursively. 
3207
3208         Handle removing a collapsed subtree.
3209
3210         (From Andy Dustman <adustman@comstar.net>)
3211         
3212         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
3213         root tree when removing items from a non-previously
3214         mapped tree.
3215
3216         * gtk/testgtk.c: Added a remove_subtree button.
3217         
3218 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
3219
3220         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
3221         before object removing data. This change fixes a bug where 
3222         removing the last weak references would cause it to be 
3223         triggered.
3224
3225 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
3226
3227         * gdk/Makefile.am: Removed mostly useless dependency that
3228         was causing problems for SGI's make, when used with
3229         the 'make dist' form of GTK+. (Dependency caused dependencies
3230         to be redone when BUILT_SOURCES changed)
3231
3232 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
3233
3234         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
3235         like a menu.
3236         
3237         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
3238         to gtkitem.c so dragging can also work in lists.
3239
3240         * gtk/gtklist.[ch]: Track child enter events and use
3241         those to allow dragging the selection. 
3242
3243 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
3244
3245         * gtk/gtktext.c: Try enabling background pixmaps for editable text
3246         widgets.  There is a bit of flashing, but not too bad. If you
3247         don't want the flashing, you can always not set a background
3248         pixmap.
3249
3250 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
3251
3252         * gtk/gtktext.c: Fixed a bug where the drawn level
3253         was being messed up when the text was scrolled
3254         during a deletion.
3255         
3256 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3257
3258         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
3259         bug:  There is no need to set the ExposureMask in the XGrabPointer
3260         (this caused DnD programs to crash).
3261
3262 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
3263
3264         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
3265         field to be of type guint.
3266         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
3267         ref_count>0;
3268         (gtk_accelerator_table_install): keep a per object list of accelerator
3269         tables that refer to this object.
3270         (gtk_accelerator_table_remove): remove the accelerator table from the
3271         per object list.
3272         (gtk_accelerator_table_clean): warn if there are any object references
3273         left in an accelerator table upon destruction.
3274         (gtk_accelerator_tables_delete): new function to delete object
3275         references from the accelerator tables associated with this object.
3276
3277         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
3278         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
3279         of an accelerator can be prevented by gtk_signal_emit_stop().
3280         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
3281         so there are no stale pointers in accelerator tables left.
3282
3283 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3284
3285         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
3286         visible before we unparent it.
3287
3288 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
3289
3290         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
3291         running_timeouts list with the tmp_list link itself, not with a new
3292         GList structure pointing to our link. that would fill up memory and
3293         causes the GList.data fields of the running_timeouts list to point to
3294         GList structures and not GtkTimeoutFunction structures which is a
3295         *really* bad thing.
3296         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
3297         the above entry ;).
3298
3299 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
3300
3301         * gtk/gtkradiomenuitem.h: 
3302         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
3303         ala gtk_radio_button_set_group.
3304         (gtk_radio_menu_item_init): assure that we always have at least a group
3305         that points to self.
3306
3307         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
3308         added g_return_if_fail() statements.
3309         (gtk_radio_button_init): assure that we always have at least a group
3310         that points to self.
3311
3312 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
3313
3314         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
3315
3316 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
3317
3318         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
3319         (Damon Chaplin), which i got wrong when applying Damon's patch the last
3320         time.
3321
3322 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
3323
3324         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
3325         that when we are running with a non-installed colormap,
3326         in 8-bit pseudo-color, we actually are using the system
3327         visual. (Fixes *Bad Match* errors on Digital Unix machines
3328         with multiple 8-bit pseudo-color visuals)
3329
3330 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3331
3332         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
3333         by whoever thought that randomly changing ints to unsigned int
3334         without reviewing the code was a good idea.  It is, btw not
3335         mentioned in the ChangeLog as usual, but I know it was not Elliot
3336         the culprit this time. 
3337
3338 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3339
3340         * Released GTK+ 1.0.0