1 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
3 * gtk/gtkclist.c: check if column[i].button is valid before calling
4 gtk_widget_intersect on it in gtk_clist_draw
6 * gtk/gtkdnd.c: removed unused variable empty_bits
8 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
10 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
11 a boolean (thanks to Elrond for noticing this)
13 1998-11-07 Jay Cox <jaycox@earthlink.net>
15 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
16 * gdk/gdkxid.c: declare xid_ht static
17 * examples/*/Makefile: get the link ordering right.
19 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
21 * gtk/gtkclist.c (gtk_clist_realize): Set background of
22 title button window to GTK_STATE_NORMAL instead of
23 GTK_STATE_SELECTED to avoid ugly flicker.
25 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
27 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
28 if adjustments are NULL and list size has changed
29 (gtk_clist_size_request): return real list requsition,
30 if adjustments are NULL.
31 (size_allocate_columns): use button->requisition.with, if column
33 (list_requisition_width): new function. return full list width.
34 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
35 auto create adjustments.
36 (gtk_clist_motion) (move_vertical) (move_horizontal):
37 check adjustment != NULL.
39 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
41 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
42 a clear/redraw, not just a redraw, so the focus
43 gets undrawn properly.
45 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
46 Chain to gtk_widget_unrealize() instead of duplicating
49 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
51 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
52 last vestiges of old DND.
54 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
56 * gtk/gtkentry.c: Restored inner border to entries,
57 erase cursors to background image.
59 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
61 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
62 it was identical to paint_flat_box().
64 * gtk/gtkstyle.c: Coding style fixups.
66 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
69 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
70 Change 'side' for paint_[box/shadow]_gap and paint_extension
71 to be GtkPositionType instead of a random int.
73 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
74 "frame" as detail - an aspectframe should draw identical
77 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
79 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
80 from combine_child_shapes().
82 * gdk/gdkwindow.c: Merge propagate_shapes() and
83 propagate_combine_shapes() to remove code duplication.
85 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
87 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
88 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
89 So allocate some mem if it's not already done.
91 * clist scrollbar merges from HEAD
93 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
95 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
97 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
98 of 0x80000000, so we stay within the bounds of a postive signed
99 int (it broke some compilers)
102 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
103 when some of the menuitems are hidden
105 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
108 * gtk/gtkwidget.c: add a dummy continue after the line label
109 next_rect, since some compilers don't like label: }
111 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
113 * Okay, so we need the X11R6 keysyms so programs don't have to
114 worry about them. They don't conflict anyway. Reverted the #ifdef
117 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
118 special rule for them (X-derived-headers)
120 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
122 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
123 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
124 portable, and we really shouldn't be using awk anyway.
127 * makekeysyms.awk: bye bye
129 * gtk/gtkaccelgroup.c
132 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
134 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
136 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
137 and gdkkeysyms.h. Remove those files from CVS.
139 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
141 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
142 of the USE_XIM #ifdef
144 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
145 even with --include-deps. Slightly different from timj's fix, to avoid
146 circular dependency with gtkmarshal.c
151 * gtk/gtkfontsel.[ch]
155 * gtk/testgtk.c: merges from HEAD
158 * gtk/gtkradiomenuitem.c
159 * gtk/gtktreeitem.c: cleanups
161 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
163 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
165 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
167 * configure.in: AIX has libpthreads, to make sure you can have
168 more than one thread. Also add -D_THREAD_SAFE, and reorder
169 configure.in so CFLAGS doesn't get clobbered when we actually
172 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
175 * gtk/testdnd.c: removed unused variable "buf"
177 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
179 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
180 remove_link(), not remove()
182 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
184 * gdk/gdkrgb.c: use glib endian stuff
186 * configure.in: don't need to check for endianness anymore
188 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
190 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
192 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
193 all toplevel widgets, not toplevel windows. (I.e.,
194 plugs should be reset)
196 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
197 _do_ need to notify the other toplevels - by the time
198 the get the client messages, the RC file dates will
201 * gtk/gtkcontainer.h: Added a function call to list
202 every toplevel widget.
204 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
205 Don't send client messages to _every_ window on display!
207 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
209 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
210 when dragging across widgets, only in drags
213 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
215 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
216 Emit "drag_end" signal at end of drag.
218 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
220 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
221 for "gtk-embedded" data currently set by
222 GtkSocket, and use that to forward client message
223 on to embedded windows. Only reset our own toplevel -
224 the others will handle themselves. (Now that
225 GtkMenus live in GtkWindows)
227 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
229 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
230 client window finding code so that it works with
231 WM's other than fvwm.
233 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
235 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
236 the "GtkDrawWindow" class, which is a descendent
237 of the Window class which leaves its background alone.
238 Essentially, a toplevel drawing area, though it does
239 allow adding a child.
241 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
243 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
244 merging RC styles. Report new share/themes path for
245 themes directory. Deref theme engines when appropriate.
247 * gtk/gtkclist.c: Set all backgrounds in _style_set().
248 Make sure that pixel for xor_gc is never 0.
250 * gtk/gtkctree.c: Choose colors for plus/minus more
251 carefully, in a hopefully style-independent fashion.
252 (Still needs a bit more work)
254 * gtk/gtkwidget.c: Don't send expose events to widgets
255 which are about to be resized and redrawn. (Needs a
258 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
259 drawing on tabs for newly allocated, un-sized
260 pages - we'll get the size wrong.
262 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
264 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
265 up stupidities in last commit.
267 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
269 * gtk/gtkwidget.c: When handling queued resizes, account
270 for handleboxes, where the widget heirarchy is different
271 than the window heirarchy by just queueing a resize on
272 the entire handlebox if the detached child is changed.
274 - Remove widgets from the redraw queue when reparenting,
275 even if not unrealizing. We queue a resize/redraw in
278 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
279 * gtk/gtkstyle.c: added check to see if the widget has been shaped
280 byt the app via gtk_widget_shape_combine_mask and if it has does
281 not reset the shape on theme change.
283 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
285 * gtk/gtkfilesel.c: Keep a list of directories in which we never
286 want to stat the entries (like /afs), and assume everything in
287 those directories is a subdirectory.
289 - When following a path, try to open components even when
290 we don't find them in their parent's directory to
291 support automounters.
293 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
295 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
296 now at least compiles again.
298 * gdk/gdk.c (gdk_event_translate): Don't pass events
299 on destroyed widgets to the gdk_input layer.
301 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
303 * gtk/gtkthemes.c: Use g_module instead of dlopen()
305 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
307 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
308 if we've changed widgets since the expose event
311 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
313 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
314 to restore approximate bin compatibility with the
315 non-themes branch. (This does break bin compat
316 within the themes branch.)
318 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
320 * gtk/gtklabel.c (gtk_label_set): Eliminate a
321 gdk_window_clear_area() that snuck in with the
322 menu underlines merge.
324 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
326 * gtk/gtktext.c: Fixed some remaining background drawing,
327 merges from main branch, cleanups.
329 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
331 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
332 dereference NULL focus tab.
334 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
335 functions since we need to both show/hide and
336 queue a redraw. (There's some duplication of drawing here,
337 we probably should only be queuing a redraw on the
338 "value" portion of the scale.)
340 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
342 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
343 into the theme-drawing framework. We do this by making them,
344 like check/radio-buttons, no-window widgets with subwindows. We
345 then move the value by calling gtk_widget_queue_clear() and only
346 redraw the value in our draw() / expose() handler. A virtual
347 function clear_background is added which queues a clear on the
348 "background" portion of the widget.
350 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
352 * gtk/gtktext.c (mark_bg_gc): Make background colors work
353 again. (We can't always paint the background with a
354 paint() function - only do that for selected text)
356 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
358 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
359 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
361 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
362 the themes can't be built as part of the same build since
363 they depend on gdk_imlib.
365 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
367 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
370 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
373 - Upgrade to libtool-1.2b + patch to add shared library dependencies
374 for Linux. (Needs to be extended to other platforms where they
377 - Check for -ldl so this branch should build on all platforms, though
378 themes will work on all platforms they could work on.
380 - Use -version and -release simultaneously: sonames stay as they are
381 in the current scheme, but -lgtk-1.1 changes to -lgtk.
383 - Added in extra -l flags to library LDFLAGS so we get shared library
384 dependencies against X libs and -ldl. (But not libgtk against
385 libgdk or libglib yet, since dependencies against uninstalled
386 libraries aren't portable)
388 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
389 * gtkrc.c - added api calls to find module and theme paths from gtk.
390 nuked gtk_install_prefix global.
392 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
393 * fixed gtk_install_prefix global.
395 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
396 * added gtk_install_prefix global const variabel to find where gtk is
399 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
400 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
403 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
404 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
406 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
407 * Fixed minor problem in gtkhandlebox.c with drawing, and some
408 notebook stuff. Also pixmap theme is now "clean" again.
410 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
411 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
412 queued area resizing once more.
414 Mon Aug 10 23:09:30 EDT 1998
415 * Added a few drawing fixes for notebook and other widgets. finished
416 pixmap theme up to the level that can be supported so far. (need to
417 add path discovery 9ie where is the rc fiel from - add to pixmap
418 path so we can get theimages from there too). then we can package
419 themes. After that need to add to theme seartch path stuff in users
422 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
424 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
425 drawing area, draw in an expose handler.
427 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
430 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
432 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
433 creation of GC's so that they will be set before
434 they are used for map events (why are they used there?)
436 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
437 be queued in multiple times in the queue.
439 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
441 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
442 clip rects (or do anything) for shadow_none.
444 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
446 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
447 Yes, it was needed. draw() and expose() are _not_
450 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
451 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
453 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
454 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
455 more baby oooh yeah more more MORE YES YES.
457 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
458 * hopefully fixed problem wiht togglebuttons acting like
459 radiobuttons in gtktogglebutton.c
461 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
462 * fixed another drawing buglet in the frame drawing code (actually
463 in the clearing code but anyway in gtkstyle.c)
465 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
466 * Fixed warning from colorsel widget...
468 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
469 * Fixed defautl drawing code to no longer clobber the original style
470 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
473 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
475 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
477 * gtk/gtktooltips.c: Pass a widget (the window) to the
478 drawing function instead of the GtkTooltips.
480 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
482 * gdk/gdkwindow.c: Abstract out checking for shape
483 extension into a function.
485 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
486 Remove extra callls to gtk_window_draw().
488 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
490 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
492 * themes/th_main.c: Moved messages around so they are
493 printed before destroying strings.
495 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
497 * gdk/gdk.c: Fairly simple implementation of expose compression.
498 (No GraphicsExpose compression yet, always compress
499 with the equivalent of XtCompressMultiple - no compression
500 of Expose events across non-Expose events)
502 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
503 Find rectangle bounding two rectangles.
505 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
506 in gdk_default_draw_shadow()
508 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
509 * Fixed drawing functions to handle switching themes on the fly
510 gracefully and look decent.
512 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
513 * Added all the theme drawing code to all widgets, fixed up minor
514 nigglies in some widgets when it comes to themes, seem to be
515 running into some funky behavior with clipping rects in GC's. Too
516 many files to list here. (all files that now use gtk_paint_* are
519 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
521 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
522 Set up the demo theme so it is loaded from the RC file.
524 * themes/th_draw.c: Alleviate the hardcoded paths a wee
525 bit. (use $HOME/themes/)
527 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
528 the RC file via dlopen()
530 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
532 Internal handling of styles and RC styles pretty much
533 completely reworked for Theme work.
536 - Added routines for virtualization of RcStyle and Style handling.
537 - Temporary "sample" inline theme-engine. (Does nothing
538 but print out a few messages.
541 - Made GtkRcStyle public, added flags to tell if particular
542 colors have been set.
543 - RC Styles are "transparent", and the final style for
544 a widget is the composition of all matching styles
545 - Added pointer to GtkThemeEngine, and gpointer engine_data
546 to RC style and style.
547 - Parse "engine" keyword, load the appropriate theme engine
548 and call the engine's parser.
551 - Keep a GtkRcStyle * in styles created from Rc Styles.
552 - Load up images from RC file at style attachment time.
553 - Call ->engine->foo() at appropriate times.
554 - Don't use a GCache. All incarnations for a style are
555 just linked together in a list, depend on the RC style
556 code to find the existing copy.
558 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
560 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
561 of partial areas. This can be done either relative
562 to the existing windows (gtk_widget_queue_clear[_area]())
563 or relative to the future allocation of the widget
564 (gtk_widget_queue_draw[_area]).
566 The initial implementation is pretty braindead, but
569 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
570 in favor of gtk_widget_queue_clear().
572 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
573 flags in favor of gtk_widget_queue_clear()
575 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
577 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
578 handling of partially clipped areas.
580 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
582 * gtk/gtkclist.h (struct _GtkCListClass)
583 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
585 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
587 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
588 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
590 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
591 "hadjustment" & "vadjustment"
592 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
593 set/get_arg functions
594 (gtk_clist_construct): don't create/adjust scrollbars.
595 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
596 to set h/vadjustments
597 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
598 to query h/vadjustments
599 (create_scrollbars): removed.
600 (create_adjustments): replacement for create_scrollbars
601 (gtk_clist_new): call gtk_clist_new_with_titles
602 (gtk_clist_new_with_titles): don't warn on titles == NULL
603 (move_horizontal): use CLAMP instead
604 (gtk_clist_set_policy): deprecated method.
605 use gtk_scrolled_window_set_policy instead.
606 (vadjustment_value_changed): use clist->vadj.
607 (adjust_scrollbars): renamed to adjust_adjustments
608 (adjust_adjustments): former adjust_scrollbars
609 (gtk_clist_destroy): unref adjustments
610 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
611 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
612 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
613 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
614 (gtk_clist_set_row_height) (real_resize_column):
615 call adjust_adjustments
616 (gtk_clist_moveto): return if clist has no adjustments yet.
617 (gtk_clist_parent_set): new GtkWidget::parent_set function.
618 Autogenerate h/vadjustments if needed.
619 (move_horizontal) (move_vertical): some cleanups
621 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
622 call only gtk_viewport_set_h/vadjustment and let these functions
624 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
625 generate a new adjustment if needed
627 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
628 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
630 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
631 queue_resize if visibility of scrollbars changes
632 (gtk_scrolled_window_remove): only call container_remove with
633 scrolled_window->viewport automatically if viewport was autogenerated
634 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
635 auto create a viewport only if widget does not take h/vadjustments.
636 (gtk_scrolled_window_construct): don't generate a viewport
638 (gtk_scrolled_window_forall): call callback with viewport in any case
639 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
641 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
642 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
646 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
647 in conjunction with clists/ctrees
649 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
650 in conjunction with clists
652 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
653 in conjunction with clists
655 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
657 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
658 (gtk_ctree_remove_node): select focus_row if needed
659 (cell_size_request): only get pixmap size if pixmap != NULL
661 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
663 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
664 GTK_IS_WIDGET (widget):
666 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
668 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
669 focus_row after a remove_row call.
671 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
673 * gtk/gtkoptionmenu.c
674 * gtk/gtkmenushell.c: make option menus work when some of the
675 menuitems are hidden - previously, option menu would popup too
678 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
680 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
682 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
684 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
686 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
687 (GDK_WLIBS): New variable. Lists extra libraries needed to use
689 * gtk-config.in (--libs): List $GDK_WLIBS, too.
691 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
693 * Released GTK+ 1.1.3
699 * docs/gtk-config.1: updated for v1.1.3
703 * docs/Makefile.am: Includes new 'make release' as well as
704 'make sanity'. Also handles html and text creation from html,
705 and puts them into the distribution
707 * docs/Makefile.sgml: removed, similar functionality is now in
710 * docs/.cvsignore: ignore html and text directories
711 * docs/glib.texi: removed (now in glib dist)
713 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
715 * gtk/gtklist.c (gtk_list_remove_items_internal):
716 free undo_un/selection, unselect list_item before disconnect
718 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
720 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
721 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
722 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
723 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
724 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
725 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
726 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
727 new functions. These functions are signal connected to inserted
728 list_items, to handle key bindings and GtkItem::de/select/toggle
731 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
732 gtk_object_class_add_signals call.
733 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
734 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
735 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
736 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
737 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
738 removed. These functions are handled via connected
739 gtk_list_signal_* functions now
741 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
743 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
744 even with --include-deps:
745 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
747 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
749 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
750 gtk_object_data_set_destroy to fit the gtkobject.h API.
752 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
755 Added support for an extra 'base' filter which an application can
756 set to restrict the fonts available to the user (e.g. a terminal
757 program only wants the user to be able to select fixed-width fonts).
758 The type of font (bitmap/scalable/scaled bitmap) is now
759 also a part of the filter, so that an application can
760 request that only scalable fonts are shown.
761 There are new functions to set the base & user filters.
762 I've also stopped the up/down key press signals getting
763 to the clists since the font selection widget handles
764 them itself. It acted a bit strangely before.
766 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
768 * gtk/gtkmain.c (gtk_init): support an environment variable
769 GTK_MODULES= which takes a colon sperated list of module names
770 automatically loaded at gtk_init() startup.
772 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
774 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
776 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
778 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
781 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
783 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
786 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
788 * gtk/gtkfilesel.h: GtkType and macro fixups
789 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
790 for the file selection widget to try a completion on (set the
793 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
795 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
796 slight speed improvement and lessens code duplication.
798 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
800 * gtk/gtkdnd.c: Always send "drag_leave" to dests
801 without GTK_DEST_DEFAULT_MOTION.
803 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
805 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
806 on destroyed windows so we clear the XID table properly.
807 Finish up restructure of return value handling that
808 was half-done before.
810 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
812 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
813 the window tree more comprehensively, so that we find
814 client windows hidden under non-toplevels.
816 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
818 * gtk/gtkselection.c (gtk_selection_data_set):
819 Maintain the null-termintation guarantee, even when
820 data = NULL, length = 0. (Warn on data = NULL,
823 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
825 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
826 into function prototype for drag_data_received.
828 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
830 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
832 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
834 * gtk/gtkclist.c: rearranged some functions
835 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
837 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
838 (gtk_clist_set_border): deprecated function, use
839 gtk_clist_set_shadow_type instead.
840 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
841 (adjust_scrollbars): some cleanups
842 (select_row) (unselect_row): removed. replaced by equivalent
843 gtk_signal_emit calls
844 (add_style_data): removed, use gtk_clist_style_set instead
845 (gtk_clist_style_set): fill in size data, after style was set.
846 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
847 (gtk_clist_set_cell_style): auto_resize columns if needed
848 (column_auto_resize): resize column if needed for auto_resize
849 (real_clear): disable auto_resize while list destroy
850 (resize_column): removed
852 * gtk/gtkctree.c : (gtk_ctree_remove_node)
853 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
854 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
855 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
856 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
857 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
858 auto_resize columns if needed
859 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
860 (real_clear): disable auto_resize while processing the tree
862 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
865 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
867 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
868 typo - look for right atom on transfer failures.
870 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
872 * gtk/gtkwidget.c gtkmarshal.list: Change signal
873 for drag_data_get to match the use that was being
874 made of it everywhere else...
876 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
878 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
879 mechanism, that is used for the DND messages.
881 Removed all the old DND code.
883 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
884 get the visual of a given colormap.
886 * gtk/gtkcolorsel.c: Conversion to new DND, drag
889 * gdk/gdk.h gdk/gdkdnd.c: The low-level
890 X oriented portions of drag and drop protocols.
891 Sending and receiving client messages, and navigating
894 * gdk/gdkimage.c: added a gdk_flush() when destroying
895 SHM images to hopefully make it more likely that
896 X will gracefully handle the segment being destroyed.
898 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
901 * gtk/gtkeditable.[ch]: Updates for the selection handling
904 * gtk/gtkselection.[ch]: Added GtkTargetList, a
905 refcounted data structure for keeping track of lists
906 of GdkAtom + information. Removed selection_handler_add
907 in favor of a "drag_data_get" signal.
909 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
910 dependent) parts of the DND protocols, display of drag icons,
911 drag-under highlighting, and the "default handlers".
913 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
914 windows that are used for reliable pointer grabs and
915 selection handling in the DND code.
917 * gtk/testdnd.c: New test program for new DND. (Old
918 DND tests in testgtk still need to be converted.)
920 * gtk/testselection.c: Use the new selection API.
922 * docs/dnd_internals: Start at describing how
923 all the new code works inside.
925 * docs/Changes-1.2.txt: New file describing source-incompatible
928 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
930 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
933 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
934 to the XID table so we can receive events on it.
936 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
938 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
939 to get the timestamp from a generic event.
941 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
943 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
944 that safely adds additional events to a widget's event
945 mask, even if the widget has previously been realized.
946 (We can do this, but not remove events from the event
949 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
951 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
954 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
956 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
959 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
961 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
964 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
966 * gdk/gdk.c (gdk_event_translate): Removed printing
967 of unknown window lookup warnings. (Made it
968 a GDK_NOTE) - they happen in many circumstances.
970 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
972 * Call XFilterEvent() on events we get for unknown
973 windows, since it may be the window Xlib uses to
974 communicate with the IM.
975 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
977 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
979 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
982 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
984 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
985 message for return_value + GTK_RUN_FIRST.
987 1998-10-18 Martin Baulig <martin@home-of-linux.org>
989 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
990 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
992 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
994 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
995 styles of inserted row
996 (change_style): change style of focus_row
998 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
999 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
1000 to set/get row/cell styles.
1001 (gtk_clist_realize): attach row and cell style, allocate row colors.
1002 (gtk_clist_unrealize): detach row and cell styles.
1003 (get_cell_style): new function. get correct cell style.
1004 (draw_cell_pixmap): new function.
1005 (draw_row): draw cells with row or cell styles.
1006 (row_new): set cell and row styles to NULL.
1007 (row_delete): detach & unref cell and row styles.
1009 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
1010 new functions to attach/detach styles and allocate colors.
1011 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
1012 styles of invisible nodes.
1013 (draw_cell_pixmap): new function.
1014 (get_cell_style): new function. get correct cell style.
1015 (gtk_ctree_draw_expander): new function. draw tree expander.
1016 (gtk_ctree_draw_lines): new function.draw tree lines.
1017 (draw_row): draw cells with row or cell styles.
1018 (row_new): set cell and row styles to NULL.
1019 (row_delete): detach & unref cell and row styles.
1020 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
1021 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
1022 Analogons of GtkCList functions
1023 (gtk_ctree_set_spacing): new function. set spacing between
1024 tree expander and cell contents
1025 (gtk_ctree_set_expander_style): new function. set expander style
1027 (ctree_is_hot_spot): few changes due to draw_row modifications.
1029 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
1031 * gtk/gtkcombo.c: try completion on MOD1-TAB.
1032 Handle case when the combo->list is empty.
1034 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
1036 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
1037 handlers that have not yet been disconnected (finally managed to
1038 trigger the gtk_signal_handler_unref() paranoid warning).
1040 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1042 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
1043 width and height which is -1 and not -2.
1045 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
1048 * autogen.sh: we need libtool 1.2b now
1050 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1052 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
1053 and bottom attach arguments as mandatory and readjust the table size
1054 and opposing edge accordingly if required. this way the order in which
1055 the arguments are set doesn't matter.
1057 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
1059 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
1060 message to print out parent class name correctly.
1062 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
1066 removed functions gtk_object_set_data_destroy and
1067 gtk_object_set_data_destroy_by_id.
1068 added functions gtk_object_remove_no_notify and
1069 gtk_object_remove_no_notify_by_id which will remove a certain data
1070 portion without invokation of its destroy notifier, this should only
1071 be used in very controled circumstances.
1073 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
1075 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
1076 size_allocate_title_buttons call
1077 (gtk_clist_realize): changed initial column.window position
1079 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
1081 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
1083 * gtk/gtkctree.c (create_xor_gc): removed
1084 (gtk_ctree_button_press): set correct line_attributes for
1085 clist->xor_gc on drag start
1086 (gtk_ctree_button_release): reset clist->xor_gc
1088 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
1091 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
1092 which were in place to fixup emacs' cc-mode indentation.
1093 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
1094 proper way to achive this and doesn't produce problems for
1095 stupid pragma-related compiler bugs. ;)
1097 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
1099 * gtk/gtkclist.h: new signal GtkCList::resize_column.
1100 * gtk/gtkclist.c (draw_row): don't draw invisible columns
1101 (size_allocate_title_buttons) (size_allocate_columns):
1102 skip invisible columns
1103 (new_column_width): take min/max_width into account
1104 (gtk_clist_button_release) (gtk_clist_motion):
1105 changes due to changed new_column_width function
1106 (LIST_WIDTH): changed define to inline function.
1107 (real_resize_column): class function for resize_column signal
1108 (gtk_clist_motion): fixed autoscrolling for column resizes
1109 (gtk_clist_set_column_visibility): don't hide last visible column,
1110 changed visible arg to gboolean
1111 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
1112 new functions : set min/max width of a column
1113 (gtk_clist_set_column_resizeable): new function : enable/disable
1114 column resize operations by mouse
1116 * gtk/gtkctree.c (draw_row): don't draw invisible columns
1117 (ctree_is_hot_spot): return FALSE if tree_column is invisible
1118 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
1119 tree_column is invisible
1120 (gtk_ctree_find_all_by_row_data)
1121 (gtk_ctree_find_all_by_row_data_custom): new function from
1122 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
1123 GtkCTreeNodes with row->data == data.
1125 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
1127 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
1128 memory (Martin Pool <mbp@wistful.humbug.org.au>).
1130 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
1132 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
1133 should have been guint32. Thanks to Tristan Colgate for finding it.
1135 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1137 * gtk/gtkcalendar.h:
1138 gtk/gtkcalendar.c: More changes:
1139 - The day with focus is now seperated from the day selected
1140 - The day with focus has the xor's line around it
1141 - The selected day is now standard selected style
1142 - The week names and week numbers are now also drawn
1144 - Space now selects the day which has focus
1146 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1148 * gtk/gtkcalendar.h:
1149 gtk/gtkcalendar.c: Some significant changes, including:
1150 - No longer draw focus around entire widget, only around
1151 the day which has focus
1152 - Draw relief around entire widget like originally planned
1153 - Show header and day names by default
1154 - Move data private to the widget out of GtkCalendar struct
1155 and only point to it with a gpointer
1156 - Remove some old unused variables from GtkCalendar struct
1158 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
1160 * docs/gtk_tut.sgml: update I've had sat around:
1161 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
1162 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
1163 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
1165 1998-10-01 Martin Baulig <martin@home-of-linux.org>
1167 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
1169 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
1170 Makes it possible to individually show and hide columns.
1171 (size_allocate_columns): Adapted to keep track of hidden columns.
1172 (size_allocate_title_buttons): Likewise.
1174 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
1176 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
1177 fundamental types, collect an argument of the type returned from
1178 gtk_type_get_varargs_type(). removed the first macro argument which
1179 was just the same as the fundamental type of the *arg passed to
1181 * gtk/gtkarg.c (gtk_args_collect):
1182 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
1184 * gtk/gtktypeutils.h:
1185 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
1186 gtk_type_get_varargs_type() to set and query the varargs collect
1187 type used for a fundamental type, registered outside of Gtk.
1189 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
1190 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
1193 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
1194 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
1197 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
1199 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
1200 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
1201 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
1203 (real_tree_expand) (real_tree_collapse):
1204 don't expand/collapse a leaf
1206 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
1208 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
1209 segfault when looking up a non-existant value name (reported by
1210 Pablo <pcj+gtk@primenet.com>).
1212 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
1214 * gtk/gtkclist.h (gtk_clist_prepend):
1215 * gtk/gtkclist.c (gtk_clist_prepend): new function.
1216 (gtk_clist_insert): added g_return_val_if_fail()
1217 statements. accept a row parameter < 0 or > clist->rows to indicate
1219 (real_clear): first clean up all internal pointers and lists (e.g.
1220 clist->row_list or clist->rows), then delete the distinct rows. this
1221 is required because of destroy notifiers, we need to have all internal
1222 structures updated and be reentrant.
1224 * gtk/gtkcalendar.h:
1225 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
1226 GtkCalendarClass signal methods.
1227 GtkType and macro fixups, put `void' into () prototypes, avoid C++
1228 style comments, indentation fixes, fixed some g_return_if_fail()
1230 (gtk_calendar_paint_header):
1231 (gtk_calendar_paint_day_names):
1232 (gtk_calendar_paint_week_numbers):
1233 (gtk_calendar_paint_main): made these static functions.
1234 (gtk_calendar_select_month):
1235 (gtk_calendar_select_day):
1236 (gtk_calendar_mark_day):
1237 (gtk_calendar_unmark_day):
1238 (gtk_calendar_get_date): signedness corrections, use guints
1240 (gtk_calendar_size_request): removed unused variables.
1242 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
1244 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
1245 widgets in the ->widgets_by_action list that have a callback
1246 defined (not only those with a callback_action!=0).
1248 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1250 * gtk/gtkcalendar.h:
1252 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
1254 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1256 * gtk/gtkcalendar.h:
1258 examples/calendar: Added gtkcalendar widget and demo
1260 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
1262 * gtk/gtkclist.c (gtk_clist_sort):
1264 (gtk_clist_unselect_all):
1265 (gtk_clist_select_all): adde g_return_if_fail() statements.
1267 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
1269 * configure.in: set binary age and interface age to 0.
1271 * gtk/gtkspinbutton.h:
1272 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
1273 gtk_spin_button_configure. gtk_spin_button_construct is still defined
1274 as an alias for gtk_spin_button_configure for source compatibility,
1275 but actuall use is deprecated.
1276 typeness corrections, i.e. gint->gboolean and gint->guint.
1277 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
1278 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
1279 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
1280 GtkSpinButton::adjustment, GtkSpinButton::digits and
1281 GtkSpinButton::climb_rate.
1282 GtkType and macro fixups.
1284 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
1286 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
1287 the *real* geometry position of a window, taken possible window
1288 manager offsets into account.
1289 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
1290 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
1291 it does fail though for amiwm which adds windows to a pseudo root
1292 window, and for icewm by a small offset because it defines the
1293 geometry position whithin its border.
1295 * gtk/testgtk.c: added "saved position" test to figure how
1296 gdk_window_get_root_origin() interacts with window managers (repopup
1297 this window to figure ;).
1299 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
1301 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
1306 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
1307 existing code was buggy in letting ->ref_count==0 pass through and
1308 then failing the living_objs_ht assertion).
1310 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
1311 pixtext fields (Roman Pozlevich <roma@botik.ru>).
1313 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1315 * Released GTK+ 1.1.2
1317 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
1319 * gtk/Makefile.am: use $(PERL) instead of perl
1320 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
1321 also much faster to render.
1323 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
1325 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
1326 the required memory block, rather than allocating it newly from
1327 scratch and doing a full-blown block copy on it.
1329 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
1331 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
1332 binary age 0, interface age 0.
1334 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
1336 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
1338 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
1341 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
1343 * HACKING: indent other than GNU indent should be OK
1346 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
1347 instead of piping through indent. If indent wasn't
1348 found in ./configure don't bother indenting at
1351 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
1353 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
1355 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
1357 * gtk/Makefile.am: use $(AWK) instead of awk
1359 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
1361 * gtk/Makefile.am (gdk_headers):
1362 Remove references to $(top_srcdir).
1363 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
1364 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
1366 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
1368 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
1369 GData*object_data to cure compiler warnings.
1371 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
1375 * mkinstalldirs: updated to latest automake version
1377 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
1379 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
1380 (gtkinclude_HEADERS): ... here.
1381 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
1383 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
1385 * HACKING: added GNU indent, as it is now required to successfully
1386 build gtk+. Should this be detected in autoconf, possibly?
1388 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
1390 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
1391 change library versioning scheme to drop LT_RELEASE
1392 from the -l line, while keeping it in the soname.
1394 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
1396 * configure.in Makefile.in: define a MAINT-like variable REBUILD
1397 which is set if Perl and awk are found, and autogenerated sources
1398 can be rebuilt. Remove the auto-generated sources from
1401 Add dependencies so that the autogenerated sources are
1402 rebuilt if the files they depend on change.
1403 (This unfortunately currently results in the entire
1404 gtk/ directory being rebuilt when any header changes.
1405 Moving all enums to gtkenums.h would fix this.)
1407 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
1409 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
1410 gtk_object_set_data_destroy_by_id functions to set the destroy
1411 function pointer for an existing data portion.
1413 * gtk/gtkobject.c: removed the GtkObjectData implementation and
1414 made all gtk_object_*data* functions use the GLib equivalents.
1416 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
1418 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
1419 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
1420 (widget != NULL), otherwise radio button insertion will not work
1421 -- the widget argument is NULL for the first radio button in the
1424 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
1426 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
1427 of g_new to malloc(), added back in the one place where
1428 it actually mattered. #include <stdlib.h>.
1430 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
1432 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1434 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1435 want to stat the entries (like /afs), and assume everything in
1436 those directories is a subdirectory.
1438 - When following a path, try to open components even when
1439 we don't find them in their parent's directory to
1440 support automounters.
1442 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
1444 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
1445 a new size from the WM if we asked for the same size
1446 before and our request was rejected.
1448 * gtk/gtkwindow.c (gtk_window_configure_event): If
1449 in response to a request, we get a configure event
1450 with unchanged dimensions, send a synthetic expose
1451 since ForgetGravity won't expose our window.
1453 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
1455 * gtk/gtktext.c (adjust_adj): Change the way we
1456 set the adjustments on resize so that it tries to
1457 keep the beginning of the text in approximately
1460 Removed assertion that the above change made invalid.
1462 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
1464 * gtk/gtktext.c: - Save first_cut_pixels when switching
1465 sizes, so that if we switch to the _same_ size,
1466 we don't move lines around.
1468 - Make sure that the text area always has a size of at
1469 least 1x1, then do all computations when realized.
1471 - When fetching lines in recompute_geometry, make
1472 sure we fetch enough lines to cover the screen.
1474 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1476 * gdk/gdkimage.c: changed g_new()s to malloc()s and
1477 g_free()s to free()s to avoid mixing g_new()s with
1478 free()s. X itself uses free() on some of the
1481 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
1483 * gtkfilesel.c: Maintain a list of directories like
1484 /afs we know contain only directories, and avoid
1485 stat'ing files in those directories. (Because
1486 stat'ing all files in /afs is extremely expensive)
1488 To support automounters, try to open directories,
1489 even if we couldn't find them when reading their
1492 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
1494 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
1495 to allow the same gtk.m4 to work for 1.0.x and
1498 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
1500 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
1501 to set/unset the selectable flag of a single row.
1502 (gtk_clist_get_selectable): new function
1503 to get the state of the selectable flag
1505 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
1506 (gtk_ctree_node_get_selectable): clist analogons
1508 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
1510 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
1513 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
1514 bugs in the 4bit gray cases.
1516 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
1518 * configure.in: added -posix check for NeXTStep
1520 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
1521 a unique buffer for each thread.
1523 * docs/gtk-config.1: clarified copyright
1525 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
1527 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
1529 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
1531 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
1534 * ltconfig: use GLib's ltconfig which honours lcc.
1536 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
1538 * configure.in: comment the -std1 check and save LIBS properly
1540 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
1542 * gtk/testrgb.c: #include <stdlib.h>
1544 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
1546 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
1547 When the pointer is grabbed on an input window,
1548 either explicitely, or through press-grab, and
1549 then grabbed on a non-input window, ungrab the
1552 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
1554 * gtk/gtktypeutils.h: don't include any gdk headers.
1555 added structure definitions for GtkTypeObject and GtkTypeClass,
1556 which cover the very basic fields of GtkObject and GtkObjectClass,
1557 which are actually used by the type system.
1559 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
1560 we only refer to our own structures. improved class inheritance
1561 sanity checking a bit.
1563 * gtk/gtkobject.h: placed appropriate comments at the beginnings
1564 of the GtkObject and GtkObjectClass structures, which explain
1565 their relationship to GtkTypeObject and GtkTypeClass.
1567 * gtk/gtktypeutils.h:
1569 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
1570 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
1571 gtkobject.h to gtktypeutils.h.
1575 removed gtk_object_check_cast() and gtk_object_check_class_cast()
1576 functions. to keep source compatibility, we can provide macro aliases
1577 for the corresponding gtk_type_* functions. but then again, people
1578 shouldn't have been using these functions anyways since they were part
1579 of Gtk's internal API.
1581 * gtk/gtktypeutils.h:
1582 * gtk/gtktypeutils.c:
1583 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
1584 functions to check GtkTypeObject and GtkTypeClass types.
1586 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
1589 * gtk/gtkctree.c: `const' fixups.
1592 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
1594 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
1595 if it is passed as NULL.
1597 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
1599 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
1600 big-endian cases. Added a 4bpp packed gray mode (somewhat
1601 incorrectly hardwired to MSB), which should take care of
1604 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
1606 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
1607 GtkSIgnalQuery leak.
1609 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
1611 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
1612 GTK_MENU_DIR_CHILD: check for the existance of
1613 menu_shell->active_menu_item before accessing its child.
1615 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
1616 don't, make a default selection.
1618 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
1620 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
1621 the children with _forall for sensitivity changes and with
1622 _foreach on pure state changes. this fixes a lot of the
1623 old inclusions of internal widgets into _foreach calls.
1625 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
1626 do the work. don't walk the subtrees of first level children.
1628 * gtk/gtktreeitem.c: provide a _forall implementation,
1629 which walks the subtrees as well for include_internals.
1631 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
1632 the submenus as well for include_internals.
1634 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
1635 implemented gtk_scrolled_window_forall, which will iterate over
1636 the viewport and the scrollbars for gtk_container_forall or
1637 iterate over the viewports children for gtk_container_foreach.
1643 * gtk/gtkmenushell.c:
1649 * gtk/gtknotebook.c:
1650 removed the old gtk_*_foreach functions and provided gtk_*_forall.
1652 * gtk/gtknotebook.c:
1653 (gtk_notebook_real_switch_page): expose tabs.
1654 (gtk_notebook_page_num): new function to return the page number
1655 of a distinct child.
1656 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
1657 under some circumstances.
1659 * gtk/gtktreeitem.c:
1660 (gtk_real_tree_item_select):
1661 (gtk_real_tree_item_deselect): major fixes.
1662 some general fixups wrt queue_redraw, and tree items not being
1665 * gtk/gtklistitem.c:
1666 (gtk_real_list_item_select):
1667 (gtk_real_list_item_deselect):
1668 (gtk_real_list_item_toggle):
1669 removed unneccessary queue_redraw calls.
1671 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
1673 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
1674 automatically popup the menu on space bar.
1676 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
1678 * gtk/gtkcontainer.h:
1679 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
1680 method), which acts similar to gtk_container_foreach(), but iterates
1681 over internal children. the GtkContainer::foreach signal vanished in
1682 favour of a new class method ->forall() that optionally includes
1685 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
1686 but a _forall implementation, since all child widgets we have are
1688 (column_button_create): set the parent window prior
1689 to gtk_widget_set_parent().
1692 exchanged all calls to gtk_container_foreach() with
1693 gtk_container_forall().
1696 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
1697 the GtkWidget::composite_child argument. to have a widget created
1698 with the flag initially, two new functions got added to wrap a widgets
1700 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
1702 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
1704 * gtk/gtktooltips.h:
1705 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
1706 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
1707 prior to the first tip being set.
1708 don't put an extra reference on the window, since it is a toplevel,
1709 it wont get destroyed from anywhere else.
1711 * overall macro and GtkType fixups.
1713 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
1715 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
1716 constructs by more forgiving ones. (Does anyone else feel like
1717 the color selector need rewriting?).
1719 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
1721 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1724 * gtk/gtkmenu.c: Modified reference counting so
1725 that the reference count from the toplevel that
1726 the menu creates to the menu is invisible to the
1729 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
1731 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
1732 conversion selection logic, so Suns and other big-endian
1733 machines should get faster conv routines. This is also the
1734 point where 4bpp gray and 1bpp are checked in, although I
1735 wouldn't be surprised if 1bpp is a little buggy. This is
1736 synchronized with the 0.0.7 release of GdkRgb.
1739 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
1740 appropriate change to the Makefile.am
1742 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
1744 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
1745 which is good for images that scroll (makes the dither patterns
1748 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
1751 (gdk_colormap_new) (gdk_colormap_get_system):
1752 quell some warnings with g_hash_table_new
1754 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
1755 when we're done with it
1757 * gtk/itemfactory.c:
1758 (gtk_item_factory_from_path):
1759 (gtk_item_factory_create_item): free some strings
1762 (gtk_label_finalize): free label->pattern when done
1763 (gtk_label_parse_uline): null terminate pattern string, delete
1764 some duplicated code
1766 * gtk/testthreads.c: add #include <unistd.h> for sleep()
1768 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
1770 * gtk/gtktext.c (recompute_geometry): Make sure the
1771 mark we pass to line start is the beginning of a
1772 real line, not a wrapped one.
1774 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
1776 * gtk/gtktext.c: Reference count the fonts used in
1779 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
1780 freeing functions to be more consistent, and more
1781 convenient; leave the old names in for backwards compatibility.
1783 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
1784 allocations in pseudo-color colormaps to greatly reduce
1785 calls to XAllocColor. Keep a per-colormap hashtable to
1786 speed up finding if there is an already-allocated matching
1789 * gdk/gdkcolor.c: Don't just match read the system colormap
1790 when the colormap is created, but synchronize our copy
1791 with the system colormap periodically.
1793 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
1794 Change XIM constants names to match GDK conventions
1796 * gtk/testinput.c: Allow the drawing area to get the focus.
1798 * gtk/testgtk.c: Change around the Text test to demonstrates
1799 multiple fonts, use more colors.
1801 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
1802 so they work after a widget is unrealized.
1804 * gtk/gtktext.[ch]: Remove the requirement that the text
1805 widget be realized before adding text (!) Allocate colors
1806 ourself, instead of requiring the caller allocate them.
1807 Allow changing styles to work properly by keeping track
1808 of the values for a certain property are default or
1811 * gtk/gtkmenu.h: Added some comments.
1813 * gtk/gtkentry.c: Changes to match XIM constants.
1815 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
1816 for adding keyed data to drawables. (Uses g_dataset
1819 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
1820 when creating an XPM - store them as user data for the GdkPixmap,
1821 so we don't leak colors when we create pixmaps from XPM's.
1823 Allocate memory for color information in large blocks instead of
1824 as many little pieces.
1826 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
1828 * gdk/gdkrgb.c: removed some unused variables
1831 * gtk/gtkmain.c: #if 0'd out some unused code
1833 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
1835 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
1843 * gtk/gtkcontainer.h:
1844 * gtk/gtkcontainer.c:
1849 (gtk_container_add_with_args):
1850 (gtk_container_child_set):
1851 begin the parameter elipsis (...) after the first argument name. this
1852 change is source compatible, since it was always required, even as NULL.
1854 (gtk_object_args_collect):
1855 (gtk_container_child_args_collect):
1856 changed prototypes to pass first_arg_name, also, pass va_list variable
1857 by value (portability concerns). callers changed.
1859 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
1860 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
1861 can't pass va_list variables by reference for portability reasons.
1863 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
1865 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
1866 get_visual calls, so that it gets implicitly initialized.
1868 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
1869 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
1870 such as GtkCTree function name changes
1872 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
1875 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
1876 binary version check, returning a static string for error descriptions,
1879 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
1881 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
1882 computed our geometry yet, and if not, ignore the request.
1884 * gtk/gtktext.c (correct_cache_insert): Fiddled around
1885 some more. All the bug-test codes seem to work at once
1886 now. (fingers crossed...)
1888 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
1890 * gdk/gdkrgb.c: silly visual fixes
1892 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
1895 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
1897 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
1898 anything if the event's window is not the bin window.
1899 (gtk_handle_box_motion): Likewise.
1901 1998-08-19 Raph Levien <raph@gimp.org>
1903 * gtk/testgtk.c (create_color_preview): pushed the colormap and
1904 visual so it would work better with GdkRgb.
1906 1998-08-19 Raph Levien <raph@gimp.org>
1908 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
1909 4bpp static_color mode (for vga displays). Also fixed a '64' value
1910 in the dither matrix, which was causing one pixel out of 16k to be
1913 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
1914 most of the contents. This is an API change - any apps that relied
1915 on the internal structure of GtkPreview will need some change -
1916 most notably in the use of reserved colors. The Gimp needed
1917 changes in this regard.
1919 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
1921 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
1922 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
1923 --g-fatal-warnings), noticed by miguel.
1925 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
1927 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
1935 * gtk/gtkitemfactory.c:
1936 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
1938 * gtk/gtkselection.c:
1942 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
1944 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
1946 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
1948 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
1949 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
1950 in case of show_tabs == NULL
1952 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
1954 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
1955 to --g-fatal-warnings again. this option now causes log levels of
1956 WARNING and CRITICAL to abort().
1965 * gtk/gtktypeutils.c:
1971 * gtk/gtkselection.c:
1974 * gtk/gtktreeitem.c:
1975 did a global search&replace to substitute g_print() calls with
1976 g_message(). libraries shouldn't use printf(), g_print() or
1977 g_printerr() at all.
1978 a bunch of the replacements should probably be wrapped into the
1979 G{D|T}K_NOTE() macros, so they are special cased for debugging
1980 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
1983 * gdk/gdkdnd.c: added copyright notice.
1985 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
1987 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
1988 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
1989 running a PII 233. It's synced with the 0.0.5 release of
1992 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
1995 (struct _GtkCListClass): new class methods:
1996 (sort_list) (insert_row) (remove_row) (set_cell_contents)
1999 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2000 removed and replaced by (set_cell_contents)
2001 (set_cell_contents): function for class method set_cell_contents
2002 (real_insert_row): function for class method insert_row
2003 (real_remoce_row): function for class method remove_row
2004 (real_sort_list): function for class method sort_list
2005 (default_compare): fix to avoid problems with cell types != CELL_TEXT
2008 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
2009 (gtk_ctree_node_is_visible): new function to return visibility state
2011 (gtk_ctree_show_stub): new function to set visibility of root stub
2014 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
2015 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
2016 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
2017 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
2018 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
2019 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
2020 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
2021 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
2022 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
2023 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
2024 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
2025 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
2026 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
2027 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
2028 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
2029 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
2030 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
2031 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
2032 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
2035 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2036 removed and replaced by (set_cell_contents)
2037 (set_cell_contents): function for class method set_cell_contents
2038 (real_insert_row): function for class method insert_row
2039 (real_remoce_row): function for class method remove_row
2040 (real_sort_list): function for class method sort_list
2041 (default_compare): removed. CTree now also compares two GtkCTreeRows
2042 instead of two GtkCTreeNodes.
2043 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
2045 (real_tree_expand) (real_tree_collapse): fix for refcounting of
2047 (set_node_info): call gtk_ctree_node_set_pixtext instead of
2048 manipulating the row itself
2050 * gtk/testgtk.c: use renamed functions of GtkCTree.
2051 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
2054 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
2056 * gtk/gtkmain.c: removed gtk_input_add_interp.
2058 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
2060 (gtk_editable_get_event_time): fix default: case.
2062 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
2064 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
2067 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
2070 * various minor compilation cleanups, such as bogus commas in
2071 enums and similar things.
2073 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
2075 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
2078 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2080 * NEWS: updated for 1.1.2
2081 * gtk+.spec: version = 1.1.2
2083 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
2085 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
2086 times. changed --gtk-with-module to --gtk-module at owen's request.
2088 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
2090 * gtk/gtkmain.c (gtk_init): feature a new commandline option
2091 --gtk-with-module=<module> that allows additional loading and
2092 initialization of modules (e.g. GLE).
2094 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
2096 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
2097 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
2099 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
2100 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
2101 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
2102 different *-fatal-* arguments now. this needs to be revised and
2103 compressed to a reasonable amount of arguments.
2105 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
2107 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
2108 "--g-fatal-warnings" causes fatal warnings in GLib,
2109 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
2110 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
2112 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
2113 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
2117 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
2118 since automake doesn't support per target _CFLAGS yet.
2120 * configure.in: require GLib 1.1.3.
2122 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
2124 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
2125 to set a callback to test if a node in drag can be dropped onto
2126 it's currrent location.
2127 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
2128 to change the pointer when a drag destination is not allowed.
2130 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
2132 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
2133 speeds up the 565_d case by about 25% total. Thanks Ray!
2135 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
2137 * Changed GtkSignalFunc back to () from (void). (again!)
2139 * Added file README.cvs-commits
2141 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
2143 * docs/gtk_tut.sgml:
2144 - Tidy up of the menufactory example from
2145 Andy Kahn <kahn@zk3.dec.com>
2146 - New section on Range Widgets from
2147 David Huggins-Daines <bn711@freenet.carleton.ca>
2148 - Started a new section on 'Advanced Event and Signal
2149 Handling' - used an email from Owen.
2150 - New appendix on Gdk Event Types
2151 - Added the tictactoe full example code to the
2152 'Code Examples' appendix
2154 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
2156 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
2157 to calculate all the metrics at once of a string, including
2158 things which weren't calculated before.
2160 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
2161 MenuItem type, that when put as the first thing in a
2162 menu, makes the menu tearoff. Currently drawn as a
2165 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
2166 "hide_on_activate" to the MenuItem class structure to allow
2167 check and radio buttons to be changed with <Space> without
2170 * gtk/gtkitemfactory.c:
2171 - Create a AccelGroup for each MenuShell we create.
2172 - If an '_' appears before a character 'c' in the path,
2173 then make 'c' an accelerator in the menu's accel group,
2174 and if the menuitem is menubar <alt>C an accelerator
2175 in the itemfactory's accel group. Double '__' inserts
2178 * gtk/gtklabel.[ch]: Add support for a pattern arg -
2179 which is a string. If an '_' appears in this string,
2180 the corresponding position in the label is underlined.
2182 Add gtk_label_parse_uline() convenience function which
2183 takes a string with embedded underlines, sets the
2184 pattern and label, and returns the accelerator keyval.
2186 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
2187 Instead, they create a GtkWindow and add themselves
2188 to that. (When torn off, another new feature, they
2189 create another GtkWindow to hold the torn off menu)
2191 New function gtk_menu_set_tearoff_state()
2193 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
2194 Added action signals for keyboard navigation of menus.
2196 * gtk/gtkmenushell.c: Key press handler which activates
2197 bindings for navigation, and accelerators, for handling
2198 underline accelerators. Exported functions to select
2199 and activate menu items in a menushell.
2201 * gtk/testgtk.c: Added a new "Item Factory" test which
2202 tests GtkItemFactory and the new keyboard navigation
2205 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
2207 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
2208 external functions have been called. also relookup nodes after
2209 this function has been invoked.
2211 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
2213 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
2214 beginning of Text when creating the Text widget.
2216 * gtk/testgtk.c: Grab the focus on the text widget so
2217 as to test out the above.
2219 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
2221 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
2222 ::changed is a notification signal and should have no default
2223 handler. A complete redraw of the Text widget does _not_ need to
2224 be done on every text insertion.
2226 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
2227 (gtk-abilleira-072198-patch)
2229 * gtk/gtkwindow.[ch]:
2230 Add gtk_window_set_modal() which sets a flag; when
2231 set the window does a gtk_grab_add() when the window
2232 is shown, and a gtk_grab_remove() when the window
2235 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
2236 that case will run "Create Dir","Delete File" and "Rename File"
2237 dialogs as modal too.
2239 * gtk/testgtk.c: Added a button with an example of creating modal
2240 dialog boxes. Including file selection and color selection standard
2243 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
2245 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
2246 Removed CAN_FOCUS by default from scrollbars, button
2247 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
2248 (Scrollbar definitely good change, toolbar bit more questionable)
2250 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
2252 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
2255 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
2257 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
2258 added all logical operations to gc->function.
2260 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
2262 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
2263 gtk_widget_size_allocate instead of gtk_widget_queue_resize
2264 if the visibility state of a scrollbar changes.
2266 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
2268 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
2270 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
2272 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
2273 gtk_clist_merge and gtk_clist_mergesort. :)
2275 1998-08-06 Martin Baulig <martin@home-of-linux.org>
2277 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
2278 `mergesort' -> `my_mergesort'.
2280 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
2282 * gtk/gtkenums.h: new enum GtkSortType.
2286 Added sorting capabilities to GtkCList. New APIs :
2287 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
2288 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
2289 New internal functions : default_compare, merge, mergesort.
2291 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
2293 (gtk_clist_insert): Modified to handle gtk_clist_append and the
2294 auto sort flag. Changed the return value from void to gint to
2295 return the row number where the element was actually inserted.
2297 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
2301 Removed the auto_sort flag, replaced ctree->node_compare with
2302 clist->compare all over the place, modified default_compare to
2303 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
2304 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
2306 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
2307 sorting. The lists can be sorted by a column by clicking the
2308 corresponding title button.
2310 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
2312 * Released GTK+ 1.1.1
2314 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
2318 (gtk_ctree_find): changed to return a gboolean
2319 (gtk_ctree_insert_gnode): new function for recursive insertion of a
2321 (gtk_ctree_real_select_recursive): fix for extended selection
2322 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
2323 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
2325 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
2327 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
2328 GLib version 1.1.1 is now required at minimum.
2330 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
2331 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
2333 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
2335 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
2336 cursor before (possibly) deleting the cursor's text
2339 * gtk/gtktext.c (correct_cache_delete): More attempts
2340 to clean the line-start cache up after inserting
2341 a property. Among other things, make sure to
2342 fix up text->current_line, since it is used to
2343 refetch the changed lines.
2345 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
2347 * gtk/gtktable.[ch]: Empty rows/columns of the table
2348 should not have been marked as being able to shrink.
2349 (Fixes problem with shrinking scrollbarless GIMP canvases)
2351 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
2353 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
2354 function to find a row by its data pointer using a custom
2355 comparison function.
2357 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
2359 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
2360 this fixes a bug when the whole widget is made non-sesitive
2361 the buttons weren't redrawn
2363 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
2365 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
2366 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
2367 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
2369 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
2371 * gdk/gdkwindow.c (gdk_window_reparent): Change
2372 window_private->parent pointer when reparenting.
2374 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
2376 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
2377 with the standalone release.
2379 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
2381 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
2382 (gtk_clist_button_release) (new_column_width): Few fixes for
2383 column resize. Store resize column in clist->drag_pos.
2385 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
2389 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
2390 to GtkCTreeNode *node.
2392 * gtk/gtklist.h : added extended selection mode and auto scrolling.
2393 (struct _GtkList): removed unneeded variables timer, button,
2394 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
2395 Added new variables undo_selection, undo_unselection, last_focus_child,
2396 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
2397 drag_selection, add_mode.
2400 (gtk_list_extend_selection), (gtk_list_start_selection),
2401 (gtk_list_end_selection), (gtk_list_select_all),
2402 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
2403 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
2404 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
2405 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
2408 (gtk_list_enter_notify): removed, because auto scrolling now works
2409 with gtk_list_motion_notify
2411 New functions, needed for auto scrolling :
2412 (gtk_list_motion_notify) (gtk_list_move_focus_child)
2414 New functions for extended selection support :
2415 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
2416 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
2417 (gtk_list_focus_lost)
2419 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
2420 function to support auto scrolling, and avoid out-of-sync errors in
2421 case auf GTK_SELECTION_BROWSE
2422 (gtk_list_focus): modified gtk_container_focus function to avoid out
2423 off sync errors in case auf GTK_SELECTION_EXTENDED
2426 * gtk/gtklistitem.c :
2427 New signal functions for key binding support :
2428 (toggle_focus_row), (select_all), (list_item), (unselect_all)
2429 (list_item), (undo_selection), (start_selection), (end_selection)
2430 (extend_selection), (scroll_horizontal), (scroll_vertical),
2432 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
2433 GDK_KEY_RELEASE_MASK
2434 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
2437 (gtk_combo_popup_button_press): grab pointer for combo->list
2438 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
2439 (gtk_combo_list_key_press): take care of which child HAS_GRAB
2440 (gtk_comb_init): don't connect combo->button with button_release_event
2442 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
2444 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
2446 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
2448 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
2449 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
2450 with horizontal and vertical autoscrolling.
2452 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2454 * gtk/docs/man: new directory
2455 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
2457 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
2459 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
2462 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
2464 * docs/gtk_tut.sgml: GtkTree section from
2465 David Huggins-Daines <bn711@freenet.carleton.ca>,
2466 add a GtkText widget example
2467 * examples/text/* example/tree/* : new examples for the
2468 GtkTree and GtkText widgets
2469 * docs/gtk_tut.sgml: added an appendix to hold complete code
2470 examples that aren't in a full form elsewhere in the
2471 tutorial (e.g. scribble)
2473 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2475 * Released GTK+ 1.1.0
2477 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
2479 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
2480 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
2482 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
2484 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
2485 values are looked up.
2487 * gtk/gtktypeutils.h:
2488 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
2489 gtk_type_enums_find_value to lookup enum values.
2492 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
2493 GtkCTreeExpansionType. fixed signal creations to pass the enum
2494 types not just the base type GTK_TYPE_ENUM.
2497 * gtk/gtkclist.c: fixed signal creations to pass the real enum
2498 types not just the base type GTK_TYPE_ENUM.
2500 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
2503 Began cleanup, e.g. use gtk_widget_show_all instead of many
2504 gtk_widget_show's. Completely rewrote the button box sample
2505 (only one window now). Removed "miscellaneous" button.
2507 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
2509 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
2510 Fixed wrong allocation for GTK_BUTTONBOX_END.
2511 (allocation->x => allocation->y)
2513 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
2515 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
2516 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
2518 * gtk/gtkctree.c (real_tree_select): added check to avoid double
2520 (gtk_ctree_button_press)
2521 (gtk_ctree_button_release): fix for pointer grab
2523 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
2525 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
2526 Fixed initialization problem - dirty memory could cause problems.
2527 Also checked that bitmapped fonts can be scaled when showing the
2530 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
2532 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
2533 (gtk_ctree_sort_recursive): test for node != NULL
2534 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
2535 (gtk_ctree_last) : added sanity checks
2536 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
2538 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
2540 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
2542 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
2544 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
2546 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
2548 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
2549 to check out binding priorities. someone should really write
2550 gtkrc-mode for emacs.
2552 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
2553 * gtk/testgtk.c (main): and move it here ;). this test says something
2554 on release of C-9. (this works only if the mouse pointer is on a
2555 spinbutton and there is no focus widget).
2559 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
2560 gtk_rc_parse_priority to parse path priority types.
2562 feature binding parsing.
2564 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
2566 * gtk/gtkbindings.h:
2567 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
2568 feature binding parsing in rc files.
2569 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
2570 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
2571 order the bindings with lowest priority first.
2573 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
2575 * gdk/gdkrgb.c: actually builds and runs properly on big
2576 endian machines now, because we #include config.h. Also
2577 fixed up a compile error in the WORDS_BIGENDIAN case in
2578 gdk_rgb_convert_565_gray. I made the fix by looking at
2579 patterns in the other code; Raph can you verify this?
2581 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
2584 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
2586 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
2587 (tree_toggle_expansion) (real_select/unselect_row)
2588 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
2590 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
2592 * gtk/gtktext.c (new_text_property): We free things from
2593 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
2595 * Fix up line start cache when splitting a property
2598 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
2600 * gtk/gtkwidget.c: restauration => restoration
2602 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
2604 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
2605 hasn't been created yet, don't do the lookup.
2607 1998-07-20 Raph Levien <raph@acm.org>
2609 * gdk/gdkrgb.c: More cleanups in the config process.
2611 1998-07-20 Raph Levien <raph@acm.org>
2613 * gdkrgb.c: Fixed minor config bug preventing big-endian
2614 architectures from working.
2616 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
2618 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
2619 activity indicator. It is settable now as a fraction of the
2620 total width/height using gtk_progress_bar_set_activity_blocks.
2621 Renamed gtk_progress_bar_set_number_of_blocks to
2622 gtk_progress_bar_set_discrete_blocks.
2624 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
2626 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
2627 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
2628 tree to specified depth
2629 (gtk_ctree_expand_to_depth): expand tree to specified depth
2630 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
2632 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
2634 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
2635 of GTK_CLIST_ADD_MOD
2636 * gtk/testgtk.c (add1000_clist): changed pixmap
2638 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
2641 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
2643 * gtk/gtktypeutils.h:
2644 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
2646 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
2648 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
2649 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
2650 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
2652 (gtk_notebook_reorder_child): new funktion to change position of a
2654 (gtk_notebook_draw_arrow): draw left/right arrow with
2655 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
2657 * gtk/gtkstyle.c (gtk_default_draw_arrow):
2658 added GTK_SHADOW_ETCHED_IN/OUT
2660 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
2662 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
2663 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
2664 Introduced generic GtkProgress widget. Derived GtkProgressBar from
2665 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
2667 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
2669 * gtk/gtktypeutils.h
2670 * gtk/gtkitemfactory.h: explicitly specify void in prototype
2672 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
2674 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
2677 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
2679 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
2680 sropped the approach of copying all signal specific data into a
2681 GtkHandlerInfo structure. we rather keep the signal data on the stack
2682 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
2683 avoids multiple lookups of the signal pointer and works savely together
2684 with destroy notifiers of handlers.
2686 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
2687 someone destroys the entry on the ::activate signal.
2689 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
2691 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
2692 instead of ypad (typo).
2693 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
2694 border around the allocation).
2695 (gtk_arrow_init): the static requisition needs to be setup in this
2696 function rather than gtk_widget_new(), so arrow creation works without
2697 the gtk_arrow_new() constructing.
2698 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
2700 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
2701 implementation for GtkWidget::size_request, so size requisition for
2702 simple statically sized widgets like GtkArrow works.
2704 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
2706 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
2707 prepend -I@libdir@/glib/include anymore, since glib-config handles
2708 it; --libs strips out redundant -L<path>'s properly (there was
2709 code in there to do it before, but it didn't work)
2711 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
2713 * gtk/gtknotebook.h:
2714 * gtk/gtknotebook.c: signdness corrections all ove the place.
2715 implementation of object arguments: GtkNotebook::enable_popup,
2716 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
2717 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
2718 begun implementation of child args, we have GtkNotebook::tab_label, but
2719 GtkNotebook::menu_label and GtkNotebook::position still lack the
2721 (gtk_notebook_remove_page):
2722 (gtk_notebook_current_page): allow negative indices (-1) as alias for
2726 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
2727 arguments GtkEntry::max_length and GtkEntry::visibility.
2728 (gtk_entry_adjust_scroll): queue a redraw.
2730 * gtk/gtkeditable.h:
2731 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
2732 object arguments GtkEditable::text_position and GtkEditable::editable.
2733 new (action) signal GtkEditable::set_editable.
2734 provide a default handler for GtkEditable::changed that queues a redraw.
2737 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
2740 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
2742 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
2743 case of drag_target == NULL
2744 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
2745 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
2746 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
2747 gtk_dir_selection_file_button): fix due to changes in clist's
2750 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
2753 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
2754 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
2755 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
2756 to be gint16s rather than guint16s, since that's what the code expected
2757 (for a long time actually).
2759 * gtk/gtkviewport.c:
2760 added support for object arguments: GtkViewport::shadow_type,
2761 GtkViewport::vadjustment and GtkViewport::hadjustment.
2762 (gtk_viewport_add): chain gtk_bin_add.
2764 * gtk/gtkscrolledwindow.c:
2765 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
2766 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
2768 * gtk/gtkadjustment.h:
2769 * gtk/gtkadjustment.c:
2774 * gtk/gtkscrolledwindow.h:
2775 * gtk/gtkscrolledwindow.c:
2776 * gtk/gtkviewport.h:
2777 * gtk/gtkviewport.c:
2778 GtkType and macro fixups.
2780 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
2784 Added focus handling, horizontal and vertical autoscrolling,
2785 extended Selection Mode, key bindings
2786 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
2787 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
2788 Removed gtk_ctree_clear.
2792 Added focus handling, horizontal and vertical autoscrolling,
2793 extended Selection Mode, key bindings
2795 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
2797 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
2798 source tree. For more information on GdkRgb, please see:
2799 http://www.levien.com/gdkrgb/
2801 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
2802 bothers me slightly that the feature is in gdk, and this file is
2803 in gtk, but it's probably ok.
2805 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
2808 * gdk/gdkrgb.h: Added this module.
2810 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
2812 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
2814 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
2816 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
2817 to this function. it needs to relookup the signal multiple times.
2818 this fixes spurious segfaults that could show up with signal intensive
2819 code, when classes are created during a pending emission (which is
2822 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
2824 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
2825 child if it isn't a label.
2827 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
2830 * gtk/gtkseparator.h:
2831 * gtk/gtkhseparator.h:
2832 * gtk/gtkvseparator.h: macro and GtkType fixups.
2834 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
2836 * gtk/testgtk.c (create_cursors): display the current cursor name.
2838 * gtk/gtktypeutils.h:
2839 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
2840 the fundamental type definition. the GtkArg union now only covers
2841 the required storage types for argument values. adapted the GTK_VALUE_*
2842 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
2844 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
2845 code, fixed int/float collection. fixed a bug in the sanity checking
2846 code for GtkObjects.
2848 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
2849 argument collection code.
2851 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
2852 macros when distinguishing the return type.
2854 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
2856 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
2857 is not NULL before trying to g_list_remove the child. A patch
2858 from Michael Lausch.
2860 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
2862 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
2863 collection (always casted to doubles upon argument passing).
2865 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
2867 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
2868 object_init_func for derived objects with the object's ->klass field
2869 still pointing to the corresponding base class, otherwise overridden
2870 class functions could get called with partly-initialized objects.
2871 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
2873 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
2877 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
2879 * gtk/gtkcontainer.h:
2880 * gtk/gtkcontainer.c:
2881 (gtk_container_child_arg_get_info): new function which wraps
2884 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
2886 * gtk/gtkcontainer.c:
2887 (gtk_container_arg_get):
2888 (gtk_container_arg_set):
2890 (gtk_object_arg_set):
2891 (gtk_object_arg_get):
2892 strictly check for the associated get/set arg functions. if an
2893 arg is readable or writable, the associated class functions *must*
2896 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
2898 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
2899 padding into account if there is an accelerator.
2901 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
2903 * gtk/gtkcontainer.c:
2904 (gtk_container_add_with_args): collect the arguments with
2905 gtk_container_child_args_collect, not through gtk_object_args_collect.
2906 (gtk_container_child_set): likewise.
2908 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
2910 * gtk/gtktypeutils.h:
2911 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
2912 which is derived from GTK_TYPE_STRING.
2914 * gtk/gtkbindings.c: reworked the argument type handling.
2916 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2918 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
2919 so that it seems to allow normal operation in those modes,
2920 although you will only see black (GIMP toolbar now pops up,
2921 just don't create a new image and GIMP now works in 4 bit.)
2923 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2925 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
2926 array, which was too low (?)
2928 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
2930 * gtk/gtkcontainer.h:
2931 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
2932 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
2933 we now export a new function gtk_container_child_args_collect().
2934 for consistency with the object arguments, a few functions got renamed:
2935 gtk_container_child_arg_get -> gtk_container_child_get,
2936 gtk_container_child_arg_set -> gtk_container_child_set,
2937 gtk_container_child_arg_getv -> gtk_container_child_getv,
2938 gtk_container_child_arg_setv -> gtk_container_child_setv,
2939 gtk_container_add_with_argv -> gtk_container_addv.
2940 note, gtk_container_add_with_args() remained, because its equivalent
2941 would be gtk_container_add(,, ...) which would break all existing code.
2942 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
2943 we expect the `arg_name' argument to be a const static string now.
2944 (gtk_container_get_child_arg_type): function removed.
2946 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
2948 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
2949 this is a static inline function that collects command line arguments
2950 from a va_list. this file can just be included in all places that
2951 need this functionality.
2954 * gtk/gtkarg.c: new files which implement most of the argument
2955 handling stuff from gtkobject.c. also collected a few more
2956 gtk_arg_* utility functions from else places.
2959 * gtk/gtkobject.c: moved most of the argument handling code into
2960 gtkarg.c. we now export gtk_object_args_collect() as a non-public
2961 method with a blind va_list pointer.
2962 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
2963 const static string now.
2964 (gtk_object_get_arg_type): function got removed.
2968 (gtk_widget_new): adaptions for gtk_object_args_collect().
2970 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
2971 fundamental type name so as to have a valid prefix, e.g. "bool"->
2972 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
2973 though that should probably be something like GtkNone since the
2974 type itself is called GTK_TYPE_NONE.
2975 even the internal type names need to avoid name clashes and must live
2976 in their own namespace, several code portions rely on that.
2977 we should relly have typedefs such as typedef gchar* GtkString; so the
2978 fundamental type names can be used for code dumpers just like with all
2981 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
2983 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
2984 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
2985 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
2987 (gtk_button_paint): set the background for prelighted buttons with
2988 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
2989 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
2990 the shadow type (otherwise we get strange shadows for coloured buttons).
2991 (gtk_button_set_relief): queue a redraw after changing
2993 (gtk_button_class_init):
2994 (gtk_button_set_arg):
2995 (gtk_button_get_arg): added object argument "GtkButton::relief".
2997 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
2999 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
3002 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
3003 GTK_BIN (button)->child to button->child to keep source compatibility.
3005 * gtk/gtkoptionmenu.c:
3007 * gtkcheckbutton.c: don't refer to button->child, but
3008 GTK_BIN (button)->child instead.
3010 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
3012 * docs/gtkfaq.sgml: update anon CVS info
3014 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
3016 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
3020 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
3023 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3025 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
3026 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
3028 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
3030 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
3032 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
3035 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
3037 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
3038 error that prevented signal to entry addition for signals with
3041 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
3043 * ltconfig: fix for properly detecting shared lib support on
3044 SunPro cc (taken from libtool 1.2.a)
3046 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
3048 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
3050 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
3052 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
3053 rc set pattern is favoured, this is needed for overriding of style
3054 patterns with subsequently parsed rc files.
3056 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
3058 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
3061 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
3063 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
3065 (gtk_accelerator_name): add "<Release>" to the accelerator name if
3068 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
3071 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
3072 default handler for key-release events, which checks for activation
3073 of GDK_RELEASE_MASK key bindings.
3075 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
3077 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
3079 * gtk/gtkarrow.h: GtkType and macro fixups.
3080 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
3081 "GtkArrow::shadow_type".
3083 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
3085 * gtk/gtkalignment.h:
3086 * gtk/gtkbin.h: GtkType and macro fixups.
3088 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
3089 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
3090 GtkAlignment::xscale, GtkAlignment::yscale.
3092 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
3094 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
3095 fucntions from all parent types upon class initialization.
3097 * gtk/gtkcontainer.c:
3098 (gtk_container_get_type): announce gtk_container_base_class_init to
3100 (gtk_container_base_class_init): new function to feature base class
3102 (gtk_container_get_child_arg):
3103 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
3104 and set_child_arg methods of the class indicated through the argument
3108 (gtk_object_base_class_init): new function to feature base class
3110 (gtk_object_init_type): announce gtk_object_base_class_init to the type
3112 (gtk_object_class_init): setup the get_arg and set_arg pointers for
3115 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
3116 instead of bothering the type system with this.
3118 * gtk/gtkaccellabel.c:
3120 * gtk/gtkradiobutton.c:
3122 * gtk/gtktogglebutton.c:
3123 * gtk/gtktipsquery.c:
3130 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
3131 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
3132 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
3133 arg functions to take a GtkObject argument.
3135 gtk/gtkadjustment.c:
3138 gtk/gtkaspectframe.c:
3141 gtk/gtkcheckbutton.c:
3142 gtk/gtkcheckmenuitem.c:
3150 gtk/gtkdrawingarea.c:
3164 gtk/gtkhscrollbar.c:
3165 gtk/gtkhseparator.c:
3167 gtk/gtkinputdialog.c:
3169 gtk/gtkitemfactory.c:
3177 gtk/gtkoptionmenu.c:
3181 gtk/gtkprogressbar.c:
3182 gtk/gtkradiomenuitem.c:
3187 gtk/gtkscrolledwindow.c:
3189 gtk/gtkspinbutton.c:
3202 gtk/gtkvscrollbar.c:
3203 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
3204 match the modified GtkTypeInfo structure.
3206 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
3208 * gtk/testgtk.c: use rand() instead of random() for portability
3210 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
3214 * gdk/gdk.c: use native Xlib XConvertCase if it's available
3216 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
3218 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
3219 XConvertCase() functionality from X11R6 on X11R5 systems.
3221 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
3223 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
3224 gdk_string_height, gdk_char_height to retrieve the exact
3227 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
3229 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
3230 by Stefan Mars <mars@lysator.liu.se>
3231 * examples/clist/clist.c examples/clist/Makefile: example code
3232 for GtkCList widget from the Tutorial
3234 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
3236 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
3237 if the container is not visible, we might be a toplevel! this holds
3238 for all other base container implementations as well, that are
3239 candidates to derive toplevels from. in general the resizing code will
3240 care about visibility itself.
3241 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
3242 * gtk/gtkbox.c (gtk_box_remove): likewise.
3244 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
3245 gtk_window_set_hints(), since we haven't calculated the new position
3248 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
3249 *mask are alway initialized in a sane way, regardless of the return
3252 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
3254 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
3255 to gtk_container_child_arg_setv, but takes a variable argument list.
3256 new function gtk_container_get_child_arg_type, which is needed by
3257 gtk_object_collect_args.
3259 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
3260 take a function pointer to figure the argument type.
3261 adapted callers to pass gtk_object_get_arg_type.
3262 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
3263 gtk_object_get_arg_type..
3267 (gtk_packer_reorder_child): new function to change the packing order
3269 (gtk_packer_size_request):
3270 (gtk_packer_size_allocate): take container->border_width into acount.
3272 * gtk/gtkpacker.c: implemented widget arguments:
3273 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
3274 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
3275 implemented child arguments:
3276 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
3277 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
3278 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
3279 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
3281 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
3284 * gtk/gtkeventbox.h:
3285 * gtk/gtkeventbox.c: GtkType and macro fixups.
3287 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
3288 sensitivity of an entry.
3290 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
3291 for insensitive base and text.
3293 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
3294 widget state dependent.
3295 (gtk_entry_style_set): likewise.
3296 (gtk_entry_state_changed): set background color on state changes.
3297 (gtk_entry_draw_text): for non selected text, use state dependent
3300 * gtk/gtktogglebutton.c: support for widget arguments
3301 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
3303 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
3305 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
3306 code for 1.0.x-like parameters. Changed internal interface of
3307 gtk_spin_button_real_spin. Several fixes to avoid emission of
3308 "value_changed" where possible.
3310 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
3312 * gtk-boxed.defs: s/GkWidget/GtkWidget/
3314 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
3316 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
3317 to select the resize_mode for the idle-labels container.
3320 * gtk/gtkframe.c: GtkType and macro corrections.
3322 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
3323 support widget argument "GtkRadioButton::group".
3325 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
3327 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
3328 unconditionally if resize_mode has changed.
3330 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
3331 GTK_RESIZE_QUEUE on the scrolled window.
3332 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
3334 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
3336 * gtk/gtkcontainer.h:
3337 * gtk/gtkcontainer.c:
3338 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
3339 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
3340 (gtk_container_queue_resize): new function to queue a container for
3341 a *size* reallocation (doesn't affect its position, and thus its
3342 parent is left untouched usually).
3343 (gtk_container_get_resize_container): new function to retrive the next
3344 most resize container which is not itself queued for a resize.
3345 (gtk_container_idle_sizer): new function to carefully process the
3346 container_resize_queue since it can change during invokation of
3347 gtk_container_check_resize().
3348 (gtk_container_resize_children): total rework of this function to
3349 properly handle resize containers. makes a lot of assumptions whitch
3350 are stated in the comments.
3352 * gtk/gtkcontainer.c:
3353 (gtk_container_real_check_resize): only requeue ourselves if we are not
3355 (gtk_container_clear_resize_widgets): care for automatic deletion of our
3356 resize_widgets list on size_allocate through a handler connection.
3358 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
3359 focus and default widget of a window, so to take the burden from
3360 gtk_widget_unparent.
3362 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
3363 to be clever, but actually messed up the resize_children logic and
3364 caused unneccessary allocations on its whole branch. besides this,
3365 it messed up the display by not invoking a redraw after the allocation.
3367 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
3368 that it is the child again that is queued for a resize.
3369 (gtk_table_attach): likewise.
3370 (gtk_table_remove): likewise.
3372 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
3374 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
3375 gtk_entry_adjust_scroll. Required if you change the cursor
3376 position and want to sync it up with your code (Midnight Commander
3377 gtk front end needs this).
3379 * gtk/gtktable.c: Deal with tables that have size 0, 0.
3381 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
3383 * examples/README.1ST: new file to explain how the
3384 code examples should be extracted from the tutorial.
3386 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
3388 * gtk/gtkctree.c (draw_row): added new "line style"
3389 GTK_CTREE_LINES_TABBED
3390 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
3391 search the glist pointer of an GtkCTreeRow
3393 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
3395 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
3396 from, and clean up, the dependencies. Generate to intermediate
3397 files to prevent problems with Ctrl-C.
3399 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
3401 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
3403 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
3404 - Bug fix for precision problem causing occasional double emission
3405 of "value_changed" signal (hopefully works now).
3406 - API change (should be binary compatible) :
3407 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
3408 Modified cursor example appropriately.
3409 To spin by something other than step_/page_increment, use
3410 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
3411 - Made GTK_SHADOW_NONE the default. ;)
3412 - Fixed casting of GtkAdjustment* to GtkWidget* in
3413 gtk_spin_button_value_changed.
3415 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
3417 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
3418 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
3419 resize widget list before queuing the container for a new reize.
3420 (gtk_container_need_resize): changed return value to FALSE, since this
3421 used to indicate that no further resizes are needed.
3422 (gtk_container_set_arg):
3423 (gtk_container_get_arg):
3424 (gtk_container_class_init): implemented GtkContainer::resize_mode
3427 (gtk_container_resize_children): when we walk up the tree of a resize
3428 widget we need to stop if we are the current parent.
3430 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
3431 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
3432 (gtk_widget_hide_all): retrive the toplevel widget from via
3433 gtk_widget_get_resize_container().
3435 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
3437 * gtk/gtklist.c (gtk_list_button_press): Only respond
3438 to selection with button 1. This allows context-sensitive
3439 menus to work correctly.
3441 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
3443 * gtk/gtkaccelgroup.c:
3444 * gtk/gtkbindings.c:
3445 * gtk/gtkcontainer.c:
3446 * gtk/gtkitemfactory.c:
3449 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
3450 g_quark_from_static_string calls to save memory.
3452 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
3453 function _after_ the new data has been setup.
3454 minor changes to object data functions to feature the GQuark type.
3456 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
3458 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
3461 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
3463 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
3464 to be more readable perl, to spit out stuff that looks
3465 more like readable C, and to pipe output through indent
3466 so output looks a lot like readable C. No functional
3469 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
3471 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
3472 necessary when switching to a masked pixmap. (Based on a patch
3473 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
3475 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
3477 * gtk/gtkeditable.[ch]: Added action signals for keyboard
3478 bindings. (move_cursor, kill_word, etc, etc, etc).
3480 removed the time argument from
3481 gtk_editable_cut/copy/paste_clipboard (source but not
3482 binary incompatible...) Instead get time from
3483 gtk_get_current_event ().
3485 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
3488 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
3490 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
3492 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
3493 parent class to GtkNotebookClass when splitting the widget in
3494 two. Also updated some comments.
3496 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
3497 button without a font selected.
3499 Fixed bug in set_font_name - I hadn't updated the code to
3500 search for the style in the font_style clist - it was
3501 still assuming the style row was equal to its index,
3502 but it isn't any more.
3504 Changed 'Reset' button on filter page to 'Clear Filter'.
3505 Deleted old code relating to the old 'Filter Fonts' toggle
3506 Updated some comments.
3507 Cleared 'Actual Fontname' if no font is set.
3509 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
3510 destroying the GtkFontSelection instead of the
3511 GtkFontSelectionDialog.
3513 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
3515 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
3516 flag to make all warnings fatal errors.
3518 * gtk/testthreads.c: moved <pthreads.h> include inside
3521 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
3523 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
3524 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
3526 - Added new function gtk_container_set_resize_mode() for
3527 fine-grained control of where resize-queueing is done.
3529 - Removed GtkContainer::need_resize and GtkWindow::move_resize
3530 - Added GtkContainer::check_resize to replace need_resize.
3532 - Added function gtk_container_check_resize() to trigger
3533 queued resizes, and gtk_container_resize_children() to
3534 Figure which children need to be size-allocated. (logic
3535 moved from gtkwindow.c)
3537 - Reorganized code in gtkwindow.c
3539 - Set the resize-mode for viewports so that resizes within
3540 a viewport don't propagate out of it.
3542 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
3544 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
3546 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
3547 g_return_val_if_fail, because the function *does* return a value.
3549 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
3551 * gtk/gtkaccellabel.h:
3552 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
3553 request the size of the accelerator portion of an accel label.
3554 (gtk_accel_label_size_request): don't request for the accelerators size.
3555 (gtk_accel_label_expose_event): only draw the accelerator if we got
3558 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
3559 width from children.
3561 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
3562 object (after removal has been requested) check if there is still an
3563 accelerator remaining to avoid adding two accelerators on an object.
3564 this can happen for locked accelerators (or accelerator-frozen widgets).
3565 (gtk_menu_size_request): feature childrens accelerator width in size
3568 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
3569 gtk_widget_freeze_accelerators() for dynamically created menu items.
3572 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
3573 which will return a handler_id > 0 if the specified function is pending
3577 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
3578 a signal handler function to stop accelerator addition.
3579 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
3580 which will prevent (undo) any accelerators from being added to or
3581 removed from a widget.
3583 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
3585 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
3586 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
3587 acceleration, new API gtk_spin_button_set_snap_to_ticks.
3589 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
3592 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
3593 the current GdkWindow the pointer is on if there is any.
3595 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
3596 and one column, so we don't construction logic at all. changed a few
3597 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
3600 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
3601 portion, added an additional check for parent != widget.
3603 * more GtkType and macro fixups.
3605 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
3607 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
3608 "clip" parameter, which is the clipping rectangle to use. This
3609 eliminates the extremely annoying flicker when exposing parts of
3612 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
3614 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
3617 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
3619 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
3620 != 0 on the argument.
3623 * gtk/gtktable.c: new function gtk_table_resize() which allowes
3624 shrinking and expanding of tables. implementation of widget arguments
3625 and child arguments. many signedness corrections.
3627 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
3629 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
3630 not only the child, otherwise we might end up taking away other
3631 childrens space after the resize.
3633 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
3634 an unknown menu path from any source, that path must always be flagged
3635 as "modified", since we don't really know whether it has its default
3640 * gtk/gtknotebook.c:
3641 * gtk/gtkmenushell.c:
3645 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
3648 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
3649 arguments. implemented child arguments.
3651 * more GtkType and macro fixups.
3653 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
3655 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
3657 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
3658 and gtk_clist_get_hadjustment.
3660 * gtk/gtkcontainer.c:
3661 implementation of children arguments, new class member functions
3662 (child_type), (get_child_arg) and (set_child_arg) plus a new field
3664 (gtk_container_child_type): new function which returns the type of a
3665 child that the container expects for its next addition.
3666 (gtk_container_add_child_arg_type): new function to introduce a new
3667 child argument at class creation time.
3668 (gtk_container_query_child_args): new function to query all child
3669 arguments that are supported by a container class.
3670 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
3672 (gtk_container_child_arg_setv): new function to set a child argument for
3673 a certain container and child combination.
3674 (gtk_container_add_with_args):
3675 (gtk_container_add_with_argv): new functions to feature addition of a
3676 new child in combination with the setting of certain child arguments.
3678 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
3679 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
3680 this should really be done through class cretion hooks some day.
3682 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
3686 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
3687 follow the gtk convention for lower case variable names (important
3688 for language wrappers and widget arguments), and made them guint : 16.
3690 * examples/packer/pack.c: adaptions for the case converted GtkPacker
3693 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
3695 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
3696 change the character pair for single line comments.
3697 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
3698 GtkItemFactoryClass.
3699 (gtk_item_factory_parse_rc_string): likewise.
3701 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
3703 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
3704 lists from the klass structure to a static structure
3705 in gtkfontsel.c; cleans up global the namespace.
3707 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
3709 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
3710 bug with /*< skip >*/ and remove warning.
3712 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
3714 * gtk/Makefile.am: Made the gtkmarshal.* generation
3715 rules maintainer-only.
3717 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
3719 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
3720 gtk/Makefile.am gtk/makenums.pl
3722 Removed out the G_ENUM/FLAGS mechanism in favor
3723 of a perl script that parses the standard headers
3724 (with occasional /*< nick=foo >*/ style overrides)
3725 and extracts the enumerations.
3727 gtk/maketypes.awk: Small improvments to the
3728 translation of names. (Avoid splitting gc into
3731 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
3733 * gtk/gtk.h gtk/gtkfontsel.[ch]:
3734 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
3736 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
3739 - Restored gtk_entry_adjust_scroll to static
3740 - Changed text positioning code so that we always
3741 display as large a portion of the text as possible.
3743 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
3745 * gtk/gtktext.c (gtk_text_finalize): Free internal
3746 structures of text widget. Also, unreference pixmaps
3749 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
3751 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
3752 3.3.1 bug workaround to number keys starting at 1.
3754 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
3756 * docs/gtk_tut.sgml: Fixed urls for complete example
3757 source for scribble+widget-writing examples.
3759 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
3761 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
3762 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
3763 specs of the form c #abcdef [ more keys ] properly.
3765 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
3767 * gtkspinbutton.h gtkspinbutton.c testgtk.c
3768 (gtk_spin_button_set_shadow_type):
3769 New API to set the shadow type of the arrow panel.
3771 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
3773 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
3774 code for drawing the child in two places at once. Unfortunately,
3775 not only does it not work anymore (because reparenting has
3776 been fixed), but it also triggers reparent/expose loops
3779 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
3780 an unecessary unrealize.
3782 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
3784 * gdk/gdkwindow.c (gdk_window_reparent): Update the
3785 old and new parents' child window lists properly.
3787 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
3790 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
3791 and GtkSideType, to be consistent with the rest of Gtk's enum
3792 definitions. wrapped the enum definitions with the G_ eunm wrappers.
3793 spelled out the GTK_ANCHOR_* enum values, since single letters don't
3794 work out corectly as nick-names (left the old values as aliases).
3795 some signdness corrections (border-width, spacing), could stand more.
3797 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3799 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
3802 * examples/packer/pack.c, examples/packer/Makefile: Added
3805 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
3807 * gtk/gtktext.c (remove_cache_line): Fixed broken
3810 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
3811 Check bounds before deleting.
3813 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
3815 * autogen.sh: Support ACLOCAL_FLAGS
3817 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
3819 * gtk-config.in: Added missing quotes.
3821 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
3823 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
3825 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
3827 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
3828 G_COMPILED_WITH_DEBUGGING.
3830 * configure.in (fd_set): Explain check better.
3832 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
3833 the version from which gtk+'s libtool forked. Needed for people
3834 who use post-1.2 alphas of libtool.
3836 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
3838 * glib/* Moved to glib module
3840 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
3841 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
3843 configuration changes for the above:
3845 - Use AM_PATH_GLIB by default to find glib; also accept
3846 a --with-glib option for using an uninstalled glib.
3848 - Put --enable-debug information into config.h so
3849 that we rebuild when it changes. (was in glibconfig.h)
3851 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
3853 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
3855 * gtk/gtknotebook.h (struct _GtkNotebookClass):
3856 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
3857 added missing argument (according to Joseph Coleman's bug report)
3859 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
3860 function to fix notebook focus handling
3862 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
3864 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
3865 glib/gutils.c glib/testglib.c glib/gdataset.c
3866 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
3867 gtk/gtktext.c gtk/gtkbindings.c:
3869 renamed g_const_pointer => gconstpointer
3871 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
3873 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
3874 invoked with (NULL, NULL); (this worked sometime ago).
3876 * gtk/gtktypeutils.h:
3877 * gtk/gtktypeutils.c: enum and flags type creation can now be done
3878 through gtk_type_register_enum() and gtk_type_register_flags(),
3879 which allow to specify the enum value arrays directly.
3880 the NULL terminated value arrays can be retrived through
3881 gtk_type_enum_get_values() and gtk_type_flags_get_values();
3882 (gtk_type_children_types): new function to query derived types.
3884 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
3886 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
3887 environment to genmarshal.pl.
3888 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
3889 rule), and removed it where not needed (in the dependencies).
3891 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
3893 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
3895 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
3896 was just g_direct_hash.
3898 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
3900 * configure.in: x_libs=, not $x_libs=. Enough said.
3901 (Case only hit for --disable-xshm)
3903 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
3905 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
3906 when testing for X libraries, don't replace them. Because
3907 the user might have specified the path to the X libraries
3908 themself before running configure.
3910 * examples/**.c: Changed all gpointer * to gpointer
3912 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
3914 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
3915 fleur_cursor field. Now the cursor is created/destroyed on demand
3916 by the routines that need it.
3918 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
3919 (gtk_handle_box_motion): The fleur cursor is created and destroyed
3922 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
3924 * gtk/gtktypeutils.h:
3925 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
3926 gtk_enum_set_values to gtk_type_enum_get_values and
3927 gtk_type_enum_set_values respectively, since they are actually type
3930 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
3933 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
3935 * gtk/gtkselection.h:
3936 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
3937 gtk_selection_data_free.
3939 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
3940 for "selection_received", which was completely bogus.
3941 * other fixups to gtk_signal_new() calls all over the place.
3943 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
3944 * gtk/gtktypebuiltins_vars.c: type variable implementations.
3945 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
3947 * gtk/gtktypebuiltins_evals.c: enum value arrays.
3948 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
3950 * gtk/gtk.defs: generated file with scheme syntax for type definitions
3951 of gtk and gdk structures and enums.
3952 * gtk/gtktypeutils.h:
3953 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
3954 macros anymore (this fixes binary incompatibility with new enum
3957 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
3958 key bindings for this widget.
3959 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
3963 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
3964 again. new functions gtk_object_class_user_signal_new () and
3965 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
3966 flag on the signal creation.
3968 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
3970 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
3972 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
3978 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
3980 * reworked enum value array generation code. gtk.defs is a generated
3983 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
3985 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
3986 check menu items in the compatibility code (this required me to remove
3987 the "<check>" part from the menu item name, grrr).
3989 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
3991 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
3992 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
3994 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
3996 * gtk/gtkitemfactory.h:
3997 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
3998 additions to the dumping code to feature GtkPatternSpec.
3999 even found a bug to fix in the original code ;)
4001 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
4003 * gtk/gtkitemfactory.c: support different types of callbacks, to
4004 maintain existing code.
4006 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
4008 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
4010 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
4011 this should eventually be done by gentypeinfo.el somewhen.
4012 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
4014 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
4015 enum values of an enum type.
4023 brought enum/flags definitions in sync, added a few more enum
4024 definitions for bindings and pattern matching.
4026 * some more macro and GtkType fixups in various places.
4028 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
4029 as a key-release modifier for the binding system.
4031 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
4033 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
4034 was a stale list pointer that is already present in GtkMenuShell.
4036 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
4037 GtkMenuShell::selection_done which is emitted after the menu shell
4038 poped down again and all possible menu items have been activated.
4040 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
4042 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
4043 before activation of the menuitem, so the menu is actually taken off the
4044 screen prior to any menu item activation.
4046 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
4050 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
4051 the emission of the "add-accelerator" signal on a widget. this is
4052 usefull to prevent accelerator installation on certain widgets.
4054 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
4055 labels left justified, by setting their alignment. stop accelerator
4056 installation for the menu items, since we use dynamic menus.
4058 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
4060 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
4061 should *really* use GtkItemFactory. this is only for preserving source
4062 compatibility where possible, use of GtkMenuFactory is deprecated as of
4065 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
4066 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
4067 missed this possibility when i added gtk_object_class_add_user_signal
4070 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
4072 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
4074 * gtk/gtkaccelgroup.h:
4075 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
4077 * gtk/gtkaccellabel.h:
4078 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
4079 display of the accelerators associated with a certain widget.
4081 * gtk/gtkitemfactory.h:
4082 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
4083 parsing and accelerator handling.
4085 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
4087 (gtk_menu_map): removed the allocation code.
4088 (gtk_menu_size_allocate): care for redrawing of children and resize
4089 our widget->window correctly.
4090 (gtk_menu_key_press): feature the new accelerator groups.
4092 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
4093 submenu if neccessary.
4095 * gtk/gtkmenuitem.c:
4096 * gtk/gtkcheckmenuitem.c:
4097 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
4101 (gdk_keyval_from_name):
4102 (gdk_keyval_name): new functions for keyval<->key-name associations.
4103 (gdk_keyval_to_upper):
4104 (gdk_keyval_to_lower):
4105 (gdk_keyval_is_upper):
4106 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
4107 regards to their cases.
4109 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
4111 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
4112 widget's class path.
4113 (gtk_widget_path): new function to calculate a widget's name path.
4115 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
4116 pattern matching, features reversed pattern matches.
4118 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
4120 * examples/extract.sh, examples/extract.awk:
4121 New files to automagically extract code examples from the
4124 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
4126 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
4127 * gtk/gtkcontainer.c (gtk_container_focus_move):
4128 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
4130 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
4132 * docs/gtk_tut.sgml: minor changes to support auto
4133 extraction of example code
4135 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
4137 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
4138 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
4140 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
4142 * docs/gtk_tut.sgml:
4143 - new section on Events
4144 - change all delete_event callbacks to include
4145 a GdkEvent parameter
4146 - clean up the formatting
4148 * examples - helloworld.c, helloworld2.c, notebook.c,
4149 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
4150 rulers.c, table.c, wheelbarrow.c: change all delete_event
4151 callbacks to include a GdkEvent parameter.
4153 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
4155 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
4156 field of crossing events.
4157 (struct _GdkEventCrossing): Added the following fields: time, x,
4158 y, x_root, y_root, mode, focus, state.
4160 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
4161 crossing event structure.
4163 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
4164 changes to the crossing event structure.
4166 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
4168 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
4170 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
4172 * docs/gtk_tut.sgml:
4173 - GtkTooltips, update to current API
4174 - change all 'gpointer *data' to 'gpointer data'
4175 - other minor changes
4177 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
4179 * configure.in (LDFLAGS): Bomb out with a moderately
4180 helpful message if detection of X libraries fails.
4182 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
4185 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
4186 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
4188 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
4189 gtk/gtksignal.c gtk/gtktext.c:
4191 Fixups for warnings from adding const to type of GHashFunc,
4194 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
4195 ansi-warnings fixups.
4197 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
4199 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
4200 Locate child at (border_width,border_width), not
4201 (2*border_width,2*border_width). [ The border is _outside_
4204 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
4205 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
4207 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4209 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
4212 1998-05-22 <sopwith@redhat.com>
4214 * gtk/gtkeventbox.c: Pass size_allocate on to the child
4215 regardless of whether it is visible or not. Also
4216 locate child at (border_width,border_width), not (0,0)
4218 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
4220 * gtk/gtkhandlebox.c: Added style_set handler.
4222 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
4223 [ From: Chris Lahey <clahey@umich.edu> ]
4225 * gtk/gtkeditable.c, gtk/gtkeditable.h,
4226 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
4227 and set_position functions to get and set the cursor position.
4229 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
4230 signal status. Make GtkText do user-controlled insertion
4231 and deletion through the Editable widget so that these
4232 signals are properly emitted.
4234 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
4235 display asterisks instead of empty space when visible = FALSE)
4237 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
4239 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
4242 1998-05-21 <sopwith@redhat.com>
4244 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
4245 custom routine for loading images specified in gtkrc's.
4247 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
4249 * configure.in: Use pthread_attr_init() as a test function,
4250 since most of the rest of -lpthread is macros on DU4.
4252 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
4254 * gtk/gtkcombo.c: implemented completion in the entry.
4256 1998-05-18 <sopwith@moebuis.labs.redhat.com>
4258 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
4260 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
4262 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
4263 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
4264 to be of runtype GTK_RUN_LAST.
4266 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
4269 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
4272 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
4274 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
4275 text retrived from GtkEntry. only intercept the Tab key if there
4276 was some text to complete.
4278 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
4280 Basic thread-awareness:
4282 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
4284 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
4285 gdk_threads_[init/enter/leave] for applications, plus
4286 gdk_threads_wake to wake the mainloop thread out of
4289 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
4291 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
4293 * gtk/testgtk.c (list_clear): Account for the fact
4294 that gtk_list_clear_items is not inclusive. (Clears
4297 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
4299 * gdk/gdk.c: include gdkkeysyms.h always
4302 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
4304 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
4305 the visibility_notify_event method and changed method order.
4307 1998-05-14 <sopwith@moebuis.labs.redhat.com>
4309 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
4311 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
4313 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
4314 from Olli Helenius <ollhel@batman.jytol.fi>.
4316 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
4318 (gtk_type_set_chunk_alloc): new function to allow allocation of new
4319 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
4322 * gtk/gtkobject.c (gtk_object_finalize): free an object through
4325 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
4327 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
4328 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
4330 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
4332 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
4333 GPOINTER_TO_UINT fixes.
4335 * gtk/gtksignal.c: Include <string.h> for memset.
4337 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
4338 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
4340 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
4341 Cleanups, comments and the ability to have rulers with
4342 a reversed direction.
4344 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
4346 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
4347 that Sopwith missed when changing stat => lstat.
4349 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
4351 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
4352 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
4353 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
4355 * gdk/gdk.c: Print sizeof() results
4356 as g_print("%ld", (glong)sizeof(foo)), to deal with
4357 sizeof() being long on Alpha's.
4359 * gtk/testgtk.c: include <string.h> for strlen
4361 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
4362 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
4364 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
4365 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
4367 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
4369 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
4370 (From: Christopher James Lahey <clahey@umich.edu>)
4372 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
4375 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
4376 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
4377 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
4378 the default relief for the toolbars buttons. Added an
4379 toggle for the toolbar test in testgtk.c.
4381 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
4383 * docs/gtk-config.1: Rewritten and hopefully improved.
4385 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
4388 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
4390 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
4392 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
4393 GtkPreview's visual and colormap, otherwise things can BadMatch.
4395 * gtk/testgtk.c (create_color_preview):
4396 (create_gray_preview): Removed pushing/popping of visual/colormap
4397 now that GtkPreview does things correctly.
4399 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
4400 (gtk_color_selection_draw_wheel): Pick the style from the correct
4401 place (the colorsel->wheel_area widget) so that the GCs will match
4402 with where we are going to paint to.
4404 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
4405 of visual/colormap now that GtkColorSelection does things the
4408 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
4410 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
4411 previously unused window->need_resize flag to mark if a window's
4412 descendents changed size while the window was not visible. In this
4413 case, when the window becomes visible, we reallocate everything,
4414 since we didn't keep track of what actually changed.
4416 (Fixes bug where changing the popdown strings of a
4417 combo to something of the same length caused them to
4418 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
4420 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
4422 [security audit by Alan Cox]
4424 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
4425 exceed maximum assumed size.
4427 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
4428 not exceed maximum assumed size.
4429 (gtk_menu_factory_remove): likewise.
4430 (gtk_menu_factory_find_recurse): likewise.
4432 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
4434 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
4435 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
4436 redrawn if that is still neccessary. don't allow queueing of already
4438 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
4439 widgets which are in the queue can be destroyed safely, handle
4440 requeueing properly.
4441 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
4442 widgets which are in the queue can be destroyed/unrealized safely.
4444 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
4446 * gtkfaq.sgml: add question on multi-threading,
4449 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
4451 * configure.in (cflags_set): preserve automake CFLAGS.
4453 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
4454 and libgdk-1.1.la. this means we need to change certain portions of
4455 the Makefile.am on major/minor version bumps.
4457 * ltmain.sh: the -release option is not required anymore.
4459 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
4460 of the first argument to be of type GtkObject. unconditionally compile
4461 this function. removed __GNUC__ dependancy of the gtk_object_ref and
4462 gtk_object_unref macro wrappers for this function.
4464 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
4468 (gtk_object_data_try_key):
4469 (gtk_object_data_force_id): these are now macros substituting the old
4470 functions. we just use the corresponding g_dataset_* functions for
4471 key->id associations. (this is to assure unique key<->id associations).
4473 1998-05-10 Stefan Jeske <stefan@gtk.org>
4475 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
4478 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
4480 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
4482 * configure.in (LIBS): Try to figure out if this
4483 is Digital Unix and we need -std1 to get the
4486 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
4488 * docs/gtk_tut_it.sgml: update of Italian tutorial
4489 translation from Daniele Canazza <dcanazz@tin.it>
4491 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
4493 * gtk/gtkfeatures.h.in: new file used as template for
4494 * gtk/gtkfeatures.h: new file to define macros indicating newly
4495 introduced features, such as GTK_HAVE_SIGNAL_INIT.
4498 (gtk_signal_emitv_by_name):
4500 new functions to emit signals with an already provided parameter set.
4501 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
4502 (gtk_signal_real_emit): prototype changes, so this functions always
4503 gets its parameters and signal structure as arguments.
4504 (gtk_signal_emit): provide the signal structure and parameter list for
4505 gtk_signal_real_emit.
4506 (gtk_signal_emit_by_name): likewise.
4508 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
4510 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
4511 signal connections through unsetting GTK_CONNECTED.
4512 (gtk_signal_handler_insert): reflect the presence of signal connections
4513 through setting GTK_CONNECTED.
4514 (gtk_signal_real_emit): only check for handler emissions if the object
4515 has the GTK_CONNECTED flag set.
4516 (gtk_signal_handler_pending): don't check for pending handlers if the
4517 GTK_CONNECTED flag is not set for this object.
4519 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
4520 a GtkObject has signal handler connections.
4522 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
4523 set for this object call gtk_signal_handlers_destroy().
4525 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
4526 multiple processing of macro args.
4528 * gtk/gtktypeutils.c:
4531 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
4533 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
4535 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
4536 draw-queue when we are done.
4538 (gtk_widget_queue_draw/_queu_resize): Always return
4539 FALSE and avoid having two idles at the same time.
4541 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
4543 * gtk/gtktext.c: Various fixes to make sure cache
4544 lines are freed if line_start_cache doesn't point to the
4545 beginning of the cache.
4547 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
4549 * style_set improvements for GtkText and GtkEntry
4551 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
4553 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
4556 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
4558 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
4559 data chunks through a global object data structure list. unlink
4560 object data before invoking its destroy function.
4561 (gtk_object_finalize): slight modification to allow usage of object
4562 data during object finalization.
4564 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
4566 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
4567 signal names, e.g. "signal-name" is now an alias for "signal_name".
4568 (gtk_signal_handler_new): allocate handlers through a global handler
4569 structure list, that's faster than memchunks.
4570 (gtk_emission_new): allocate emissions through a global emission
4571 structure list, that's faster than memchunks.
4573 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
4575 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
4577 * ltmain.sh: added a new commandline flag -postfix similar to -release,
4578 but will immediately change the library name.
4581 * gtk/Makefile.am: specify -postfix and -version-info
4583 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
4584 GTK_BINARY_AGE. calculate LT_* variables for libtool.
4586 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
4588 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
4589 background (fg_set -> bg_set confusion).
4591 1998-05-06 Stefan Jeske <stefan@gtk.org>
4593 * gtk/testgtk.c (unselect_all): Removed code that caused an
4596 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
4598 * gtk/gtksignal.c: reimplemented the signal storage system to use a
4599 linear array rather than a hash table.
4600 be carefull *not* to keep any GtkSignal pointers across invokations
4601 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
4602 general code cleanups, made all allocations through memchunks.
4603 (gtk_signal_lookup): we now do the lookup of signals through a key_id
4604 for the signal names to avoid multiple hashing of the signal name on
4605 lookups for the several hirarchy levels of an object.
4607 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
4609 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
4610 to speed things up and remove code duplication.
4612 Reintegrated buffer overflow patches, and added
4613 some extra paranoia.
4615 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
4617 * gdk/gdk.c (gdk_event_translate): A guint * was
4618 being passed where X expected a Keysym *, and
4619 keysyms are long's on Alpha Linux. This was causing
4620 segfaults in Xlib, apparently because of alignment.
4621 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
4623 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
4625 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
4626 set GDK_EXPOSURE_MASK for DrawingAreas
4628 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
4630 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
4631 (superceded by RC file reparsing capabilities)
4633 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
4634 events. (Shouldn't be sent to the InputOnly leader, which
4635 it is now by gdk_event_send_clientmessage_toall
4637 * gtk/testgtk.c: Added extra button to rcfiles test
4638 to send out _GDK_READ_RCFILES events.
4640 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
4642 * gtk/gtkselection.c (gtk_selection_clear): Fixed
4643 reversed conditionals that caused segfault on some
4646 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
4648 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
4649 cast to GTK_OBJECT for gtk_object_ref.
4651 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
4653 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
4654 checking for signal initialization in gtksignal.c.
4656 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
4657 a long debugging period ;)
4659 1998-05-05 Stefan Jeske <stefan@gtk.org>
4661 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
4662 New function to wrap XSetDashes; modified gtkctree.c to use it.
4664 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
4666 * configure.in: Added $x_libs in the other_libraries field in the
4667 check for XShapeCombineMask.
4669 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
4671 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
4673 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
4674 linear array rather than a hash table. it actually speeded up testgtk
4675 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
4676 pointers across invokations of gtk_type_node_next_and_invalidate() and
4677 therefore gtk_type_unique()!
4679 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
4680 inheritance of a class pointer.
4681 (GTK_OBJECT): modifications for speedups.
4682 (GTK_IS_OBJECT): likewise.
4683 (GTK_OBJECT_CLASS): likewise.
4684 (suggested by owen).
4686 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
4688 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
4690 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
4691 since its derivation changed 4 month ago ;(. showed up with the unique
4692 type name checking code in gtk_type_unique().
4694 * random guint->GtkType and macro fixups.
4696 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
4698 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
4699 Configure events that would result in a negative
4702 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
4704 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
4705 "glibconfig.h" and another about writing another IRC
4708 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
4710 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
4711 parameters to log are doubles. Digital Unix apparently
4712 is missing the argument in its prototype.
4714 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
4716 * gtk/gtklabel.c (gtk_label_state_changed): Don't
4717 force a clear until the widget is actually on
4720 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
4722 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
4723 to make this consistent with the gtk-1-0 tree.
4725 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
4727 * configure.in acheader.h gdk/gdkwindow.c
4728 Check for Shape extension both on the client and server
4729 side. (And, more importantly, check for the shape extension
4730 so we may include -lXext even when compiling with --disable-xshm)
4732 Don't set override_redirect on all shaped windows. It isn't
4735 * gdk/gdkwindow.c: Set ->colormap to NULL for root
4736 and foreign windows. Use this to check if we
4737 need to get the colormap from X.
4739 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
4741 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
4742 between the default and the button always in GTK_STATE_NORMAL.
4744 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
4747 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
4749 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
4750 Fix a buffer overflow on pixmaps that claim to have
4751 more than 31 characters per pixel.
4753 (gdk_pixmap_read_string): Don't wrap around strings longer
4754 than half of address space ;-)
4756 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
4757 that were used for printing integers.
4764 int foo (void) { ... }
4766 Even where there were proper prototypes elsewhere.
4768 * gdk/gxid.c (handle_claim_device): Some extra checks.
4769 It isn't safe against being fed bad X id's, but at
4770 least it should be safe against deleting all your
4773 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
4775 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
4776 to set the adjustments value when there is no current emission.
4777 [ Removed by mutual agreement owt 5/3/1998 ]
4779 * gtk/gtksignal.c: added new functions to retrive the number of
4780 existing emissions for a certain signal.
4781 (gtk_signal_n_emissions): new function.
4782 (gtk_signal_n_emissions_by_name): new function.
4784 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
4786 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
4787 set the current focus_child of a container, does proper referencing and
4788 adjusts the vadjustment/hadjustment associated with the focus widget.
4790 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
4791 containers via gtk_container_set_focus_child.
4793 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
4796 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
4797 child since not every child removal goes through this function (this
4798 showed up after gtk_container_set_focus_child() started to reference the
4799 focus_child of a container).
4801 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
4802 of a container from gtk_container_remove into this place.
4804 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
4806 * gtk/gtksignal.c: added new functions to operate on intermediate
4807 function pointers. implemented incremental blocking.
4808 (gtk_signal_disconnect_by_func): new function.
4809 (gtk_signal_handler_block_by_func): new function.
4810 (gtk_signal_handler_unblock_by_func): new function
4812 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
4814 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
4815 Always show the scrollbars when the policy is
4816 GTK_POLICY_ALWAYS...
4818 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
4820 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
4821 "value_changed" if we really passed a new value.
4822 (gtk_adjustment_changed): new function to emit the "changed" signal.
4823 (gtk_adjustment_set_value): new function to emit the "value_changed"
4826 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
4828 * gtk/gtkcombo.c: Further changes to the way the window
4829 is popped up so that it will be compatible with
4830 auto-scrolling in the future.
4832 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
4834 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
4835 the combo-list is empty since that will cause the combo to operate
4836 on a non existing GtkList window.
4837 (gtk_combo_get_pos): provide the combo list with a usfull default
4839 (gtk_combo_popup_button_press): grab the focus.
4840 (gtk_combo_activate): grab the focus.
4842 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
4844 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
4845 function to reset the RC styles for a heirarchy
4847 Clear the window background if necessary in
4848 gtk_window_style_set.
4850 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
4851 rereads all previously read RC files.
4853 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
4854 (Should it just be called gdk_get_toplevels?)
4856 * gtk/testgtk.c: New test to reload RC files.
4858 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
4861 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
4862 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
4863 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
4864 the GTK_ prefix (this solution involved less changes in the
4865 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
4866 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
4867 from lars & stefan to support the derivation of GtkCtree.
4871 initial import of a tree widget derived from gtkclist, courtesy
4872 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
4875 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
4877 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
4879 (gtk_list_insert_items):
4880 (gtk_list_remove_items_internal):
4881 (gtk_list_clear_items):
4882 remove a possible pointer grab, we might get thrown into a loop
4884 (gtk_list_button_press): grab the pointer *before* selecting the child,
4885 because selection of items may cause the lists children to change,
4886 resulting in a grab release.
4887 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
4889 (gtk_list_shutdown): remove all children from the list.
4890 (gtk_real_list_unselect_child):
4891 (gtk_real_list_select_child): *always* put our internal structures into
4892 sane state *before* signal emisions (i.e. list->selection updates prior
4893 to gtk_list_item_[de]select() calls).
4895 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
4896 focused child walks out of the window.
4897 removed CAN_FOCUS for the combo arrow's button since it doesn't react
4898 to keyboard events ("clicked" connection is missing).
4900 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
4902 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
4903 getting colormap for FOREIGN windows to go along with
4904 Raster's fix for visuals.
4909 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
4911 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
4912 Check to catch the case when the viewport fits in either
4913 direction or both, instead of flip-flopping infinitely.
4915 Only show/hide the scrollbars once at the end.
4917 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
4919 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
4920 Include the scrollbars in the foreach call.
4921 (gtk-fortier-980405-0.patch;
4922 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
4925 really should also include its tabs, but that might cause
4926 problems for programs if they
4928 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
4930 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
4931 resize if the size actually changed.
4932 (gtk-johannes-980414-0.patch ;
4933 johannes@nada.kth.se (Johannes Keukelaar) )
4935 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
4937 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
4938 ltmain.sh ltconfig config.sub config.guess:
4940 Reverted back to libtool-1.2 (plus minor patches) so as not to
4941 force the issue for everyone else.
4943 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
4945 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
4946 Updated to libtool 1.2a.
4948 * gtk/gtkclist.c: Draw the in-between lines with style->base
4949 instead of style->white.
4951 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
4953 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
4954 Cache the colormap and children of a window locally
4955 instead of fetching them from the server when needed.
4956 Huge performance difference for creating/destroying
4959 * gtk/gtkstyle.c: Find the depth from the cached
4960 visual, instead of asking the server.
4962 * gtk.m4: Distribute the new version which tries to
4963 figure out what went wrong and give helpful error
4966 * ltmain.sh ltconfig config.sub config.sh:
4967 Updated to libtool 1.2a
4969 * gtk/gtktext.c: Fixed a bug where the drawn level
4970 was being messed up when the text was scrolled
4973 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
4975 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
4976 the filesystem under you (fix from Josh)
4978 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
4980 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
4981 if the viewport already exists before iterating over it, maybe we
4982 haven't been constructed yet.
4984 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
4986 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
4987 the GtkBin widget already has a child.
4989 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
4990 check that child->parent == NULL;
4992 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
4994 * gtk/gtkselection.c (gtk_selection_clear): Only return
4995 FALSE when the clear event is been rejected, not when
4996 widget has already lost the selection. (Which should
4997 only happen when we are setting the selection to another
5000 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
5002 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
5004 Removed the "check visibility after gtk_widget_unparent" bug
5005 in hopefully the last three places.
5007 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
5009 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
5012 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
5014 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
5015 for CAN_FOCUS widgets.
5017 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
5018 adjustments for the table.
5019 (create_list): feature automatic adjustment of the scrolled window to
5020 always contain the focused child.
5021 (create_main_window): keep the focussed button always inside of the
5024 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
5025 adjustments, to contain the allocation of the currently focused child.
5026 (gtk_container_set_focus_hadjustment): new functin to set the
5027 horizontal focus adjustment.
5028 (gtk_container_set_focus_vadjustment): new functin to set the vertical
5031 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
5032 clamp the currents adjustment page into a specific range.
5034 * random GtkType fixups for gtk_*_get_type() functions.
5036 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
5038 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
5039 Account for the fact that gtk_tree_item_remove_subtree
5040 will be called recursively.
5042 Handle removing a collapsed subtree.
5044 (From Andy Dustman <adustman@comstar.net>)
5046 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
5047 root tree when removing items from a non-previously
5050 * gtk/testgtk.c: Added a remove_subtree button.
5052 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
5054 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
5055 before object removing data. This change fixes a bug where
5056 removing the last weak references would cause it to be
5059 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5061 * gdk/Makefile.am: Removed mostly useless dependency that
5062 was causing problems for SGI's make, when used with
5063 the 'make dist' form of GTK+. (Dependency caused dependencies
5064 to be redone when BUILT_SOURCES changed)
5066 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
5068 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
5071 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
5072 to gtkitem.c so dragging can also work in lists.
5074 * gtk/gtklist.[ch]: Track child enter events and use
5075 those to allow dragging the selection.
5077 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
5079 * gtk/gtktext.c: Try enabling background pixmaps for editable text
5080 widgets. There is a bit of flashing, but not too bad. If you
5081 don't want the flashing, you can always not set a background
5084 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5086 * gtk/gtktext.c: Fixed a bug where the drawn level
5087 was being messed up when the text was scrolled
5090 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
5092 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
5093 bug: There is no need to set the ExposureMask in the XGrabPointer
5094 (this caused DnD programs to crash).
5096 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
5098 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
5099 field to be of type guint.
5100 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
5102 (gtk_accelerator_table_install): keep a per object list of accelerator
5103 tables that refer to this object.
5104 (gtk_accelerator_table_remove): remove the accelerator table from the
5106 (gtk_accelerator_table_clean): warn if there are any object references
5107 left in an accelerator table upon destruction.
5108 (gtk_accelerator_tables_delete): new function to delete object
5109 references from the accelerator tables associated with this object.
5111 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
5112 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
5113 of an accelerator can be prevented by gtk_signal_emit_stop().
5114 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
5115 so there are no stale pointers in accelerator tables left.
5117 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
5119 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
5120 visible before we unparent it.
5122 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
5124 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
5125 running_timeouts list with the tmp_list link itself, not with a new
5126 GList structure pointing to our link. that would fill up memory and
5127 causes the GList.data fields of the running_timeouts list to point to
5128 GList structures and not GtkTimeoutFunction structures which is a
5130 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
5133 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
5135 * gtk/gtkradiomenuitem.h:
5136 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
5137 ala gtk_radio_button_set_group.
5138 (gtk_radio_menu_item_init): assure that we always have at least a group
5139 that points to self.
5141 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
5142 added g_return_if_fail() statements.
5143 (gtk_radio_button_init): assure that we always have at least a group
5144 that points to self.
5146 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
5148 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
5150 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
5152 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
5153 (Damon Chaplin), which i got wrong when applying Damon's patch the last
5156 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5158 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
5159 that when we are running with a non-installed colormap,
5160 in 8-bit pseudo-color, we actually are using the system
5161 visual. (Fixes *Bad Match* errors on Digital Unix machines
5162 with multiple 8-bit pseudo-color visuals)
5164 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
5166 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
5167 by whoever thought that randomly changing ints to unsigned int
5168 without reviewing the code was a good idea. It is, btw not
5169 mentioned in the ChangeLog as usual, but I know it was not Elliot
5170 the culprit this time.
5172 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5174 * Released GTK+ 1.0.0