1 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
3 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
4 a clear/redraw, not just a redraw, so the focus
7 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
8 Chain to gtk_widget_unrealize() instead of duplicating
11 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
13 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
14 last vestiges of old DND.
16 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
18 * gtk/gtkentry.c: Restored inner border to entries,
19 erase cursors to background image.
21 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
23 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
24 it was identical to paint_flat_box().
26 * gtk/gtkstyle.c: Coding style fixups.
28 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
31 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
32 Change 'side' for paint_[box/shadow]_gap and paint_extension
33 to be GtkPositionType instead of a random int.
35 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
36 "frame" as detail - an aspectframe should draw identical
39 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
41 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
42 from combine_child_shapes().
44 * gdk/gdkwindow.c: Merge propagate_shapes() and
45 propagate_combine_shapes() to remove code duplication.
47 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
49 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
50 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
51 So allocate some mem if it's not already done.
53 * clist scrollbar merges from HEAD
55 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
57 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
59 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
60 of 0x80000000, so we stay within the bounds of a postive signed
61 int (it broke some compilers)
64 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
65 when some of the menuitems are hidden
67 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
70 * gtk/gtkwidget.c: add a dummy continue after the line label
71 next_rect, since some compilers don't like label: }
73 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
75 * Okay, so we need the X11R6 keysyms so programs don't have to
76 worry about them. They don't conflict anyway. Reverted the #ifdef
79 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
80 special rule for them (X-derived-headers)
82 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
84 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
85 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
86 portable, and we really shouldn't be using awk anyway.
89 * makekeysyms.awk: bye bye
94 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
96 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
98 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
99 and gdkkeysyms.h. Remove those files from CVS.
101 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
103 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
104 of the USE_XIM #ifdef
106 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
107 even with --include-deps. Slightly different from timj's fix, to avoid
108 circular dependency with gtkmarshal.c
113 * gtk/gtkfontsel.[ch]
117 * gtk/testgtk.c: merges from HEAD
120 * gtk/gtkradiomenuitem.c
121 * gtk/gtktreeitem.c: cleanups
123 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
125 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
127 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
129 * configure.in: AIX has libpthreads, to make sure you can have
130 more than one thread. Also add -D_THREAD_SAFE, and reorder
131 configure.in so CFLAGS doesn't get clobbered when we actually
134 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
137 * gtk/testdnd.c: removed unused variable "buf"
139 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
141 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
142 remove_link(), not remove()
144 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
146 * gdk/gdkrgb.c: use glib endian stuff
148 * configure.in: don't need to check for endianness anymore
150 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
152 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
154 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
155 all toplevel widgets, not toplevel windows. (I.e.,
156 plugs should be reset)
158 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
159 _do_ need to notify the other toplevels - by the time
160 the get the client messages, the RC file dates will
163 * gtk/gtkcontainer.h: Added a function call to list
164 every toplevel widget.
166 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
167 Don't send client messages to _every_ window on display!
169 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
171 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
172 when dragging across widgets, only in drags
175 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
177 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
178 Emit "drag_end" signal at end of drag.
180 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
182 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
183 for "gtk-embedded" data currently set by
184 GtkSocket, and use that to forward client message
185 on to embedded windows. Only reset our own toplevel -
186 the others will handle themselves. (Now that
187 GtkMenus live in GtkWindows)
189 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
191 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
192 client window finding code so that it works with
193 WM's other than fvwm.
195 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
197 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
198 the "GtkDrawWindow" class, which is a descendent
199 of the Window class which leaves its background alone.
200 Essentially, a toplevel drawing area, though it does
201 allow adding a child.
203 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
205 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
206 merging RC styles. Report new share/themes path for
207 themes directory. Deref theme engines when appropriate.
209 * gtk/gtkclist.c: Set all backgrounds in _style_set().
210 Make sure that pixel for xor_gc is never 0.
212 * gtk/gtkctree.c: Choose colors for plus/minus more
213 carefully, in a hopefully style-independent fashion.
214 (Still needs a bit more work)
216 * gtk/gtkwidget.c: Don't send expose events to widgets
217 which are about to be resized and redrawn. (Needs a
220 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
221 drawing on tabs for newly allocated, un-sized
222 pages - we'll get the size wrong.
224 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
226 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
227 up stupidities in last commit.
229 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
231 * gtk/gtkwidget.c: When handling queued resizes, account
232 for handleboxes, where the widget heirarchy is different
233 than the window heirarchy by just queueing a resize on
234 the entire handlebox if the detached child is changed.
236 - Remove widgets from the redraw queue when reparenting,
237 even if not unrealizing. We queue a resize/redraw in
240 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
241 * gtk/gtkstyle.c: added check to see if the widget has been shaped
242 byt the app via gtk_widget_shape_combine_mask and if it has does
243 not reset the shape on theme change.
245 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
247 * gtk/gtkfilesel.c: Keep a list of directories in which we never
248 want to stat the entries (like /afs), and assume everything in
249 those directories is a subdirectory.
251 - When following a path, try to open components even when
252 we don't find them in their parent's directory to
253 support automounters.
255 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
257 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
258 now at least compiles again.
260 * gdk/gdk.c (gdk_event_translate): Don't pass events
261 on destroyed widgets to the gdk_input layer.
263 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
265 * gtk/gtkthemes.c: Use g_module instead of dlopen()
267 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
269 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
270 if we've changed widgets since the expose event
273 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
275 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
276 to restore approximate bin compatibility with the
277 non-themes branch. (This does break bin compat
278 within the themes branch.)
280 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
282 * gtk/gtklabel.c (gtk_label_set): Eliminate a
283 gdk_window_clear_area() that snuck in with the
284 menu underlines merge.
286 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
288 * gtk/gtktext.c: Fixed some remaining background drawing,
289 merges from main branch, cleanups.
291 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
293 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
294 dereference NULL focus tab.
296 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
297 functions since we need to both show/hide and
298 queue a redraw. (There's some duplication of drawing here,
299 we probably should only be queuing a redraw on the
300 "value" portion of the scale.)
302 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
304 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
305 into the theme-drawing framework. We do this by making them,
306 like check/radio-buttons, no-window widgets with subwindows. We
307 then move the value by calling gtk_widget_queue_clear() and only
308 redraw the value in our draw() / expose() handler. A virtual
309 function clear_background is added which queues a clear on the
310 "background" portion of the widget.
312 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
314 * gtk/gtktext.c (mark_bg_gc): Make background colors work
315 again. (We can't always paint the background with a
316 paint() function - only do that for selected text)
318 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
320 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
321 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
323 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
324 the themes can't be built as part of the same build since
325 they depend on gdk_imlib.
327 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
329 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
332 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
335 - Upgrade to libtool-1.2b + patch to add shared library dependencies
336 for Linux. (Needs to be extended to other platforms where they
339 - Check for -ldl so this branch should build on all platforms, though
340 themes will work on all platforms they could work on.
342 - Use -version and -release simultaneously: sonames stay as they are
343 in the current scheme, but -lgtk-1.1 changes to -lgtk.
345 - Added in extra -l flags to library LDFLAGS so we get shared library
346 dependencies against X libs and -ldl. (But not libgtk against
347 libgdk or libglib yet, since dependencies against uninstalled
348 libraries aren't portable)
350 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
351 * gtkrc.c - added api calls to find module and theme paths from gtk.
352 nuked gtk_install_prefix global.
354 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
355 * fixed gtk_install_prefix global.
357 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
358 * added gtk_install_prefix global const variabel to find where gtk is
361 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
362 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
365 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
366 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
368 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
369 * Fixed minor problem in gtkhandlebox.c with drawing, and some
370 notebook stuff. Also pixmap theme is now "clean" again.
372 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
373 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
374 queued area resizing once more.
376 Mon Aug 10 23:09:30 EDT 1998
377 * Added a few drawing fixes for notebook and other widgets. finished
378 pixmap theme up to the level that can be supported so far. (need to
379 add path discovery 9ie where is the rc fiel from - add to pixmap
380 path so we can get theimages from there too). then we can package
381 themes. After that need to add to theme seartch path stuff in users
384 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
386 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
387 drawing area, draw in an expose handler.
389 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
392 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
394 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
395 creation of GC's so that they will be set before
396 they are used for map events (why are they used there?)
398 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
399 be queued in multiple times in the queue.
401 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
403 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
404 clip rects (or do anything) for shadow_none.
406 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
408 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
409 Yes, it was needed. draw() and expose() are _not_
412 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
413 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
415 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
416 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
417 more baby oooh yeah more more MORE YES YES.
419 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
420 * hopefully fixed problem wiht togglebuttons acting like
421 radiobuttons in gtktogglebutton.c
423 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
424 * fixed another drawing buglet in the frame drawing code (actually
425 in the clearing code but anyway in gtkstyle.c)
427 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
428 * Fixed warning from colorsel widget...
430 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
431 * Fixed defautl drawing code to no longer clobber the original style
432 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
435 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
437 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
439 * gtk/gtktooltips.c: Pass a widget (the window) to the
440 drawing function instead of the GtkTooltips.
442 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
444 * gdk/gdkwindow.c: Abstract out checking for shape
445 extension into a function.
447 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
448 Remove extra callls to gtk_window_draw().
450 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
452 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
454 * themes/th_main.c: Moved messages around so they are
455 printed before destroying strings.
457 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
459 * gdk/gdk.c: Fairly simple implementation of expose compression.
460 (No GraphicsExpose compression yet, always compress
461 with the equivalent of XtCompressMultiple - no compression
462 of Expose events across non-Expose events)
464 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
465 Find rectangle bounding two rectangles.
467 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
468 in gdk_default_draw_shadow()
470 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
471 * Fixed drawing functions to handle switching themes on the fly
472 gracefully and look decent.
474 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
475 * Added all the theme drawing code to all widgets, fixed up minor
476 nigglies in some widgets when it comes to themes, seem to be
477 running into some funky behavior with clipping rects in GC's. Too
478 many files to list here. (all files that now use gtk_paint_* are
481 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
483 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
484 Set up the demo theme so it is loaded from the RC file.
486 * themes/th_draw.c: Alleviate the hardcoded paths a wee
487 bit. (use $HOME/themes/)
489 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
490 the RC file via dlopen()
492 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
494 Internal handling of styles and RC styles pretty much
495 completely reworked for Theme work.
498 - Added routines for virtualization of RcStyle and Style handling.
499 - Temporary "sample" inline theme-engine. (Does nothing
500 but print out a few messages.
503 - Made GtkRcStyle public, added flags to tell if particular
504 colors have been set.
505 - RC Styles are "transparent", and the final style for
506 a widget is the composition of all matching styles
507 - Added pointer to GtkThemeEngine, and gpointer engine_data
508 to RC style and style.
509 - Parse "engine" keyword, load the appropriate theme engine
510 and call the engine's parser.
513 - Keep a GtkRcStyle * in styles created from Rc Styles.
514 - Load up images from RC file at style attachment time.
515 - Call ->engine->foo() at appropriate times.
516 - Don't use a GCache. All incarnations for a style are
517 just linked together in a list, depend on the RC style
518 code to find the existing copy.
520 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
522 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
523 of partial areas. This can be done either relative
524 to the existing windows (gtk_widget_queue_clear[_area]())
525 or relative to the future allocation of the widget
526 (gtk_widget_queue_draw[_area]).
528 The initial implementation is pretty braindead, but
531 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
532 in favor of gtk_widget_queue_clear().
534 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
535 flags in favor of gtk_widget_queue_clear()
537 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
539 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
540 handling of partially clipped areas.
542 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
544 * gtk/gtkclist.h (struct _GtkCListClass)
545 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
547 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
549 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
550 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
552 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
553 "hadjustment" & "vadjustment"
554 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
555 set/get_arg functions
556 (gtk_clist_construct): don't create/adjust scrollbars.
557 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
558 to set h/vadjustments
559 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
560 to query h/vadjustments
561 (create_scrollbars): removed.
562 (create_adjustments): replacement for create_scrollbars
563 (gtk_clist_new): call gtk_clist_new_with_titles
564 (gtk_clist_new_with_titles): don't warn on titles == NULL
565 (move_horizontal): use CLAMP instead
566 (gtk_clist_set_policy): deprecated method.
567 use gtk_scrolled_window_set_policy instead.
568 (vadjustment_value_changed): use clist->vadj.
569 (adjust_scrollbars): renamed to adjust_adjustments
570 (adjust_adjustments): former adjust_scrollbars
571 (gtk_clist_destroy): unref adjustments
572 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
573 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
574 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
575 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
576 (gtk_clist_set_row_height) (real_resize_column):
577 call adjust_adjustments
578 (gtk_clist_moveto): return if clist has no adjustments yet.
579 (gtk_clist_parent_set): new GtkWidget::parent_set function.
580 Autogenerate h/vadjustments if needed.
581 (move_horizontal) (move_vertical): some cleanups
583 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
584 call only gtk_viewport_set_h/vadjustment and let these functions
586 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
587 generate a new adjustment if needed
589 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
590 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
592 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
593 queue_resize if visibility of scrollbars changes
594 (gtk_scrolled_window_remove): only call container_remove with
595 scrolled_window->viewport automatically if viewport was autogenerated
596 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
597 auto create a viewport only if widget does not take h/vadjustments.
598 (gtk_scrolled_window_construct): don't generate a viewport
600 (gtk_scrolled_window_forall): call callback with viewport in any case
601 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
603 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
604 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
608 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
609 in conjunction with clists/ctrees
611 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
612 in conjunction with clists
614 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
615 in conjunction with clists
617 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
619 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
620 (gtk_ctree_remove_node): select focus_row if needed
621 (cell_size_request): only get pixmap size if pixmap != NULL
623 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
625 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
626 GTK_IS_WIDGET (widget):
628 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
630 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
631 focus_row after a remove_row call.
633 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
635 * gtk/gtkoptionmenu.c
636 * gtk/gtkmenushell.c: make option menus work when some of the
637 menuitems are hidden - previously, option menu would popup too
640 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
642 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
644 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
646 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
648 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
649 (GDK_WLIBS): New variable. Lists extra libraries needed to use
651 * gtk-config.in (--libs): List $GDK_WLIBS, too.
653 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
655 * Released GTK+ 1.1.3
661 * docs/gtk-config.1: updated for v1.1.3
665 * docs/Makefile.am: Includes new 'make release' as well as
666 'make sanity'. Also handles html and text creation from html,
667 and puts them into the distribution
669 * docs/Makefile.sgml: removed, similar functionality is now in
672 * docs/.cvsignore: ignore html and text directories
673 * docs/glib.texi: removed (now in glib dist)
675 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
677 * gtk/gtklist.c (gtk_list_remove_items_internal):
678 free undo_un/selection, unselect list_item before disconnect
680 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
682 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
683 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
684 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
685 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
686 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
687 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
688 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
689 new functions. These functions are signal connected to inserted
690 list_items, to handle key bindings and GtkItem::de/select/toggle
693 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
694 gtk_object_class_add_signals call.
695 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
696 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
697 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
698 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
699 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
700 removed. These functions are handled via connected
701 gtk_list_signal_* functions now
703 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
705 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
706 even with --include-deps:
707 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
709 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
711 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
712 gtk_object_data_set_destroy to fit the gtkobject.h API.
714 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
717 Added support for an extra 'base' filter which an application can
718 set to restrict the fonts available to the user (e.g. a terminal
719 program only wants the user to be able to select fixed-width fonts).
720 The type of font (bitmap/scalable/scaled bitmap) is now
721 also a part of the filter, so that an application can
722 request that only scalable fonts are shown.
723 There are new functions to set the base & user filters.
724 I've also stopped the up/down key press signals getting
725 to the clists since the font selection widget handles
726 them itself. It acted a bit strangely before.
728 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
730 * gtk/gtkmain.c (gtk_init): support an environment variable
731 GTK_MODULES= which takes a colon sperated list of module names
732 automatically loaded at gtk_init() startup.
734 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
736 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
738 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
740 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
743 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
745 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
748 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
750 * gtk/gtkfilesel.h: GtkType and macro fixups
751 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
752 for the file selection widget to try a completion on (set the
755 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
757 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
758 slight speed improvement and lessens code duplication.
760 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
762 * gtk/gtkdnd.c: Always send "drag_leave" to dests
763 without GTK_DEST_DEFAULT_MOTION.
765 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
767 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
768 on destroyed windows so we clear the XID table properly.
769 Finish up restructure of return value handling that
770 was half-done before.
772 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
774 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
775 the window tree more comprehensively, so that we find
776 client windows hidden under non-toplevels.
778 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
780 * gtk/gtkselection.c (gtk_selection_data_set):
781 Maintain the null-termintation guarantee, even when
782 data = NULL, length = 0. (Warn on data = NULL,
785 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
787 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
788 into function prototype for drag_data_received.
790 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
792 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
794 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
796 * gtk/gtkclist.c: rearranged some functions
797 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
799 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
800 (gtk_clist_set_border): deprecated function, use
801 gtk_clist_set_shadow_type instead.
802 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
803 (adjust_scrollbars): some cleanups
804 (select_row) (unselect_row): removed. replaced by equivalent
805 gtk_signal_emit calls
806 (add_style_data): removed, use gtk_clist_style_set instead
807 (gtk_clist_style_set): fill in size data, after style was set.
808 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
809 (gtk_clist_set_cell_style): auto_resize columns if needed
810 (column_auto_resize): resize column if needed for auto_resize
811 (real_clear): disable auto_resize while list destroy
812 (resize_column): removed
814 * gtk/gtkctree.c : (gtk_ctree_remove_node)
815 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
816 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
817 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
818 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
819 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
820 auto_resize columns if needed
821 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
822 (real_clear): disable auto_resize while processing the tree
824 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
827 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
829 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
830 typo - look for right atom on transfer failures.
832 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
834 * gtk/gtkwidget.c gtkmarshal.list: Change signal
835 for drag_data_get to match the use that was being
836 made of it everywhere else...
838 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
840 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
841 mechanism, that is used for the DND messages.
843 Removed all the old DND code.
845 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
846 get the visual of a given colormap.
848 * gtk/gtkcolorsel.c: Conversion to new DND, drag
851 * gdk/gdk.h gdk/gdkdnd.c: The low-level
852 X oriented portions of drag and drop protocols.
853 Sending and receiving client messages, and navigating
856 * gdk/gdkimage.c: added a gdk_flush() when destroying
857 SHM images to hopefully make it more likely that
858 X will gracefully handle the segment being destroyed.
860 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
863 * gtk/gtkeditable.[ch]: Updates for the selection handling
866 * gtk/gtkselection.[ch]: Added GtkTargetList, a
867 refcounted data structure for keeping track of lists
868 of GdkAtom + information. Removed selection_handler_add
869 in favor of a "drag_data_get" signal.
871 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
872 dependent) parts of the DND protocols, display of drag icons,
873 drag-under highlighting, and the "default handlers".
875 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
876 windows that are used for reliable pointer grabs and
877 selection handling in the DND code.
879 * gtk/testdnd.c: New test program for new DND. (Old
880 DND tests in testgtk still need to be converted.)
882 * gtk/testselection.c: Use the new selection API.
884 * docs/dnd_internals: Start at describing how
885 all the new code works inside.
887 * docs/Changes-1.2.txt: New file describing source-incompatible
890 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
892 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
895 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
896 to the XID table so we can receive events on it.
898 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
900 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
901 to get the timestamp from a generic event.
903 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
905 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
906 that safely adds additional events to a widget's event
907 mask, even if the widget has previously been realized.
908 (We can do this, but not remove events from the event
911 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
913 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
916 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
918 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
921 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
923 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
926 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
928 * gdk/gdk.c (gdk_event_translate): Removed printing
929 of unknown window lookup warnings. (Made it
930 a GDK_NOTE) - they happen in many circumstances.
932 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
934 * Call XFilterEvent() on events we get for unknown
935 windows, since it may be the window Xlib uses to
936 communicate with the IM.
937 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
939 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
941 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
944 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
946 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
947 message for return_value + GTK_RUN_FIRST.
949 1998-10-18 Martin Baulig <martin@home-of-linux.org>
951 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
952 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
954 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
956 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
957 styles of inserted row
958 (change_style): change style of focus_row
960 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
961 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
962 to set/get row/cell styles.
963 (gtk_clist_realize): attach row and cell style, allocate row colors.
964 (gtk_clist_unrealize): detach row and cell styles.
965 (get_cell_style): new function. get correct cell style.
966 (draw_cell_pixmap): new function.
967 (draw_row): draw cells with row or cell styles.
968 (row_new): set cell and row styles to NULL.
969 (row_delete): detach & unref cell and row styles.
971 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
972 new functions to attach/detach styles and allocate colors.
973 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
974 styles of invisible nodes.
975 (draw_cell_pixmap): new function.
976 (get_cell_style): new function. get correct cell style.
977 (gtk_ctree_draw_expander): new function. draw tree expander.
978 (gtk_ctree_draw_lines): new function.draw tree lines.
979 (draw_row): draw cells with row or cell styles.
980 (row_new): set cell and row styles to NULL.
981 (row_delete): detach & unref cell and row styles.
982 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
983 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
984 Analogons of GtkCList functions
985 (gtk_ctree_set_spacing): new function. set spacing between
986 tree expander and cell contents
987 (gtk_ctree_set_expander_style): new function. set expander style
989 (ctree_is_hot_spot): few changes due to draw_row modifications.
991 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
993 * gtk/gtkcombo.c: try completion on MOD1-TAB.
994 Handle case when the combo->list is empty.
996 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
998 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
999 handlers that have not yet been disconnected (finally managed to
1000 trigger the gtk_signal_handler_unref() paranoid warning).
1002 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1004 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
1005 width and height which is -1 and not -2.
1007 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
1010 * autogen.sh: we need libtool 1.2b now
1012 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1014 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
1015 and bottom attach arguments as mandatory and readjust the table size
1016 and opposing edge accordingly if required. this way the order in which
1017 the arguments are set doesn't matter.
1019 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
1021 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
1022 message to print out parent class name correctly.
1024 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
1028 removed functions gtk_object_set_data_destroy and
1029 gtk_object_set_data_destroy_by_id.
1030 added functions gtk_object_remove_no_notify and
1031 gtk_object_remove_no_notify_by_id which will remove a certain data
1032 portion without invokation of its destroy notifier, this should only
1033 be used in very controled circumstances.
1035 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
1037 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
1038 size_allocate_title_buttons call
1039 (gtk_clist_realize): changed initial column.window position
1041 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
1043 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
1045 * gtk/gtkctree.c (create_xor_gc): removed
1046 (gtk_ctree_button_press): set correct line_attributes for
1047 clist->xor_gc on drag start
1048 (gtk_ctree_button_release): reset clist->xor_gc
1050 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
1053 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
1054 which were in place to fixup emacs' cc-mode indentation.
1055 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
1056 proper way to achive this and doesn't produce problems for
1057 stupid pragma-related compiler bugs. ;)
1059 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
1061 * gtk/gtkclist.h: new signal GtkCList::resize_column.
1062 * gtk/gtkclist.c (draw_row): don't draw invisible columns
1063 (size_allocate_title_buttons) (size_allocate_columns):
1064 skip invisible columns
1065 (new_column_width): take min/max_width into account
1066 (gtk_clist_button_release) (gtk_clist_motion):
1067 changes due to changed new_column_width function
1068 (LIST_WIDTH): changed define to inline function.
1069 (real_resize_column): class function for resize_column signal
1070 (gtk_clist_motion): fixed autoscrolling for column resizes
1071 (gtk_clist_set_column_visibility): don't hide last visible column,
1072 changed visible arg to gboolean
1073 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
1074 new functions : set min/max width of a column
1075 (gtk_clist_set_column_resizeable): new function : enable/disable
1076 column resize operations by mouse
1078 * gtk/gtkctree.c (draw_row): don't draw invisible columns
1079 (ctree_is_hot_spot): return FALSE if tree_column is invisible
1080 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
1081 tree_column is invisible
1082 (gtk_ctree_find_all_by_row_data)
1083 (gtk_ctree_find_all_by_row_data_custom): new function from
1084 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
1085 GtkCTreeNodes with row->data == data.
1087 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
1089 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
1090 memory (Martin Pool <mbp@wistful.humbug.org.au>).
1092 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
1094 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
1095 should have been guint32. Thanks to Tristan Colgate for finding it.
1097 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1099 * gtk/gtkcalendar.h:
1100 gtk/gtkcalendar.c: More changes:
1101 - The day with focus is now seperated from the day selected
1102 - The day with focus has the xor's line around it
1103 - The selected day is now standard selected style
1104 - The week names and week numbers are now also drawn
1106 - Space now selects the day which has focus
1108 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1110 * gtk/gtkcalendar.h:
1111 gtk/gtkcalendar.c: Some significant changes, including:
1112 - No longer draw focus around entire widget, only around
1113 the day which has focus
1114 - Draw relief around entire widget like originally planned
1115 - Show header and day names by default
1116 - Move data private to the widget out of GtkCalendar struct
1117 and only point to it with a gpointer
1118 - Remove some old unused variables from GtkCalendar struct
1120 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
1122 * docs/gtk_tut.sgml: update I've had sat around:
1123 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
1124 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
1125 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
1127 1998-10-01 Martin Baulig <martin@home-of-linux.org>
1129 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
1131 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
1132 Makes it possible to individually show and hide columns.
1133 (size_allocate_columns): Adapted to keep track of hidden columns.
1134 (size_allocate_title_buttons): Likewise.
1136 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
1138 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
1139 fundamental types, collect an argument of the type returned from
1140 gtk_type_get_varargs_type(). removed the first macro argument which
1141 was just the same as the fundamental type of the *arg passed to
1143 * gtk/gtkarg.c (gtk_args_collect):
1144 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
1146 * gtk/gtktypeutils.h:
1147 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
1148 gtk_type_get_varargs_type() to set and query the varargs collect
1149 type used for a fundamental type, registered outside of Gtk.
1151 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
1152 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
1155 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
1156 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
1159 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
1161 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
1162 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
1163 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
1165 (real_tree_expand) (real_tree_collapse):
1166 don't expand/collapse a leaf
1168 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
1170 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
1171 segfault when looking up a non-existant value name (reported by
1172 Pablo <pcj+gtk@primenet.com>).
1174 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
1176 * gtk/gtkclist.h (gtk_clist_prepend):
1177 * gtk/gtkclist.c (gtk_clist_prepend): new function.
1178 (gtk_clist_insert): added g_return_val_if_fail()
1179 statements. accept a row parameter < 0 or > clist->rows to indicate
1181 (real_clear): first clean up all internal pointers and lists (e.g.
1182 clist->row_list or clist->rows), then delete the distinct rows. this
1183 is required because of destroy notifiers, we need to have all internal
1184 structures updated and be reentrant.
1186 * gtk/gtkcalendar.h:
1187 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
1188 GtkCalendarClass signal methods.
1189 GtkType and macro fixups, put `void' into () prototypes, avoid C++
1190 style comments, indentation fixes, fixed some g_return_if_fail()
1192 (gtk_calendar_paint_header):
1193 (gtk_calendar_paint_day_names):
1194 (gtk_calendar_paint_week_numbers):
1195 (gtk_calendar_paint_main): made these static functions.
1196 (gtk_calendar_select_month):
1197 (gtk_calendar_select_day):
1198 (gtk_calendar_mark_day):
1199 (gtk_calendar_unmark_day):
1200 (gtk_calendar_get_date): signedness corrections, use guints
1202 (gtk_calendar_size_request): removed unused variables.
1204 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
1206 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
1207 widgets in the ->widgets_by_action list that have a callback
1208 defined (not only those with a callback_action!=0).
1210 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1212 * gtk/gtkcalendar.h:
1214 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
1216 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1218 * gtk/gtkcalendar.h:
1220 examples/calendar: Added gtkcalendar widget and demo
1222 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
1224 * gtk/gtkclist.c (gtk_clist_sort):
1226 (gtk_clist_unselect_all):
1227 (gtk_clist_select_all): adde g_return_if_fail() statements.
1229 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
1231 * configure.in: set binary age and interface age to 0.
1233 * gtk/gtkspinbutton.h:
1234 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
1235 gtk_spin_button_configure. gtk_spin_button_construct is still defined
1236 as an alias for gtk_spin_button_configure for source compatibility,
1237 but actuall use is deprecated.
1238 typeness corrections, i.e. gint->gboolean and gint->guint.
1239 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
1240 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
1241 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
1242 GtkSpinButton::adjustment, GtkSpinButton::digits and
1243 GtkSpinButton::climb_rate.
1244 GtkType and macro fixups.
1246 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
1248 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
1249 the *real* geometry position of a window, taken possible window
1250 manager offsets into account.
1251 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
1252 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
1253 it does fail though for amiwm which adds windows to a pseudo root
1254 window, and for icewm by a small offset because it defines the
1255 geometry position whithin its border.
1257 * gtk/testgtk.c: added "saved position" test to figure how
1258 gdk_window_get_root_origin() interacts with window managers (repopup
1259 this window to figure ;).
1261 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
1263 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
1268 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
1269 existing code was buggy in letting ->ref_count==0 pass through and
1270 then failing the living_objs_ht assertion).
1272 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
1273 pixtext fields (Roman Pozlevich <roma@botik.ru>).
1275 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1277 * Released GTK+ 1.1.2
1279 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
1281 * gtk/Makefile.am: use $(PERL) instead of perl
1282 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
1283 also much faster to render.
1285 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
1287 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
1288 the required memory block, rather than allocating it newly from
1289 scratch and doing a full-blown block copy on it.
1291 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
1293 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
1294 binary age 0, interface age 0.
1296 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
1298 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
1300 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
1303 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
1305 * HACKING: indent other than GNU indent should be OK
1308 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
1309 instead of piping through indent. If indent wasn't
1310 found in ./configure don't bother indenting at
1313 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
1315 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
1317 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
1319 * gtk/Makefile.am: use $(AWK) instead of awk
1321 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
1323 * gtk/Makefile.am (gdk_headers):
1324 Remove references to $(top_srcdir).
1325 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
1326 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
1328 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
1330 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
1331 GData*object_data to cure compiler warnings.
1333 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
1337 * mkinstalldirs: updated to latest automake version
1339 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
1341 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
1342 (gtkinclude_HEADERS): ... here.
1343 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
1345 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
1347 * HACKING: added GNU indent, as it is now required to successfully
1348 build gtk+. Should this be detected in autoconf, possibly?
1350 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
1352 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
1353 change library versioning scheme to drop LT_RELEASE
1354 from the -l line, while keeping it in the soname.
1356 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
1358 * configure.in Makefile.in: define a MAINT-like variable REBUILD
1359 which is set if Perl and awk are found, and autogenerated sources
1360 can be rebuilt. Remove the auto-generated sources from
1363 Add dependencies so that the autogenerated sources are
1364 rebuilt if the files they depend on change.
1365 (This unfortunately currently results in the entire
1366 gtk/ directory being rebuilt when any header changes.
1367 Moving all enums to gtkenums.h would fix this.)
1369 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
1371 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
1372 gtk_object_set_data_destroy_by_id functions to set the destroy
1373 function pointer for an existing data portion.
1375 * gtk/gtkobject.c: removed the GtkObjectData implementation and
1376 made all gtk_object_*data* functions use the GLib equivalents.
1378 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
1380 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
1381 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
1382 (widget != NULL), otherwise radio button insertion will not work
1383 -- the widget argument is NULL for the first radio button in the
1386 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
1388 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
1389 of g_new to malloc(), added back in the one place where
1390 it actually mattered. #include <stdlib.h>.
1392 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
1394 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1396 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1397 want to stat the entries (like /afs), and assume everything in
1398 those directories is a subdirectory.
1400 - When following a path, try to open components even when
1401 we don't find them in their parent's directory to
1402 support automounters.
1404 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
1406 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
1407 a new size from the WM if we asked for the same size
1408 before and our request was rejected.
1410 * gtk/gtkwindow.c (gtk_window_configure_event): If
1411 in response to a request, we get a configure event
1412 with unchanged dimensions, send a synthetic expose
1413 since ForgetGravity won't expose our window.
1415 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
1417 * gtk/gtktext.c (adjust_adj): Change the way we
1418 set the adjustments on resize so that it tries to
1419 keep the beginning of the text in approximately
1422 Removed assertion that the above change made invalid.
1424 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
1426 * gtk/gtktext.c: - Save first_cut_pixels when switching
1427 sizes, so that if we switch to the _same_ size,
1428 we don't move lines around.
1430 - Make sure that the text area always has a size of at
1431 least 1x1, then do all computations when realized.
1433 - When fetching lines in recompute_geometry, make
1434 sure we fetch enough lines to cover the screen.
1436 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1438 * gdk/gdkimage.c: changed g_new()s to malloc()s and
1439 g_free()s to free()s to avoid mixing g_new()s with
1440 free()s. X itself uses free() on some of the
1443 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
1445 * gtkfilesel.c: Maintain a list of directories like
1446 /afs we know contain only directories, and avoid
1447 stat'ing files in those directories. (Because
1448 stat'ing all files in /afs is extremely expensive)
1450 To support automounters, try to open directories,
1451 even if we couldn't find them when reading their
1454 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
1456 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
1457 to allow the same gtk.m4 to work for 1.0.x and
1460 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
1462 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
1463 to set/unset the selectable flag of a single row.
1464 (gtk_clist_get_selectable): new function
1465 to get the state of the selectable flag
1467 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
1468 (gtk_ctree_node_get_selectable): clist analogons
1470 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
1472 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
1475 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
1476 bugs in the 4bit gray cases.
1478 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
1480 * configure.in: added -posix check for NeXTStep
1482 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
1483 a unique buffer for each thread.
1485 * docs/gtk-config.1: clarified copyright
1487 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
1489 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
1491 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
1493 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
1496 * ltconfig: use GLib's ltconfig which honours lcc.
1498 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
1500 * configure.in: comment the -std1 check and save LIBS properly
1502 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
1504 * gtk/testrgb.c: #include <stdlib.h>
1506 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
1508 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
1509 When the pointer is grabbed on an input window,
1510 either explicitely, or through press-grab, and
1511 then grabbed on a non-input window, ungrab the
1514 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
1516 * gtk/gtktypeutils.h: don't include any gdk headers.
1517 added structure definitions for GtkTypeObject and GtkTypeClass,
1518 which cover the very basic fields of GtkObject and GtkObjectClass,
1519 which are actually used by the type system.
1521 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
1522 we only refer to our own structures. improved class inheritance
1523 sanity checking a bit.
1525 * gtk/gtkobject.h: placed appropriate comments at the beginnings
1526 of the GtkObject and GtkObjectClass structures, which explain
1527 their relationship to GtkTypeObject and GtkTypeClass.
1529 * gtk/gtktypeutils.h:
1531 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
1532 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
1533 gtkobject.h to gtktypeutils.h.
1537 removed gtk_object_check_cast() and gtk_object_check_class_cast()
1538 functions. to keep source compatibility, we can provide macro aliases
1539 for the corresponding gtk_type_* functions. but then again, people
1540 shouldn't have been using these functions anyways since they were part
1541 of Gtk's internal API.
1543 * gtk/gtktypeutils.h:
1544 * gtk/gtktypeutils.c:
1545 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
1546 functions to check GtkTypeObject and GtkTypeClass types.
1548 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
1551 * gtk/gtkctree.c: `const' fixups.
1554 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
1556 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
1557 if it is passed as NULL.
1559 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
1561 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
1562 big-endian cases. Added a 4bpp packed gray mode (somewhat
1563 incorrectly hardwired to MSB), which should take care of
1566 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
1568 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
1569 GtkSIgnalQuery leak.
1571 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
1573 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
1574 GTK_MENU_DIR_CHILD: check for the existance of
1575 menu_shell->active_menu_item before accessing its child.
1577 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
1578 don't, make a default selection.
1580 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
1582 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
1583 the children with _forall for sensitivity changes and with
1584 _foreach on pure state changes. this fixes a lot of the
1585 old inclusions of internal widgets into _foreach calls.
1587 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
1588 do the work. don't walk the subtrees of first level children.
1590 * gtk/gtktreeitem.c: provide a _forall implementation,
1591 which walks the subtrees as well for include_internals.
1593 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
1594 the submenus as well for include_internals.
1596 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
1597 implemented gtk_scrolled_window_forall, which will iterate over
1598 the viewport and the scrollbars for gtk_container_forall or
1599 iterate over the viewports children for gtk_container_foreach.
1605 * gtk/gtkmenushell.c:
1611 * gtk/gtknotebook.c:
1612 removed the old gtk_*_foreach functions and provided gtk_*_forall.
1614 * gtk/gtknotebook.c:
1615 (gtk_notebook_real_switch_page): expose tabs.
1616 (gtk_notebook_page_num): new function to return the page number
1617 of a distinct child.
1618 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
1619 under some circumstances.
1621 * gtk/gtktreeitem.c:
1622 (gtk_real_tree_item_select):
1623 (gtk_real_tree_item_deselect): major fixes.
1624 some general fixups wrt queue_redraw, and tree items not being
1627 * gtk/gtklistitem.c:
1628 (gtk_real_list_item_select):
1629 (gtk_real_list_item_deselect):
1630 (gtk_real_list_item_toggle):
1631 removed unneccessary queue_redraw calls.
1633 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
1635 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
1636 automatically popup the menu on space bar.
1638 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
1640 * gtk/gtkcontainer.h:
1641 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
1642 method), which acts similar to gtk_container_foreach(), but iterates
1643 over internal children. the GtkContainer::foreach signal vanished in
1644 favour of a new class method ->forall() that optionally includes
1647 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
1648 but a _forall implementation, since all child widgets we have are
1650 (column_button_create): set the parent window prior
1651 to gtk_widget_set_parent().
1654 exchanged all calls to gtk_container_foreach() with
1655 gtk_container_forall().
1658 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
1659 the GtkWidget::composite_child argument. to have a widget created
1660 with the flag initially, two new functions got added to wrap a widgets
1662 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
1664 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
1666 * gtk/gtktooltips.h:
1667 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
1668 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
1669 prior to the first tip being set.
1670 don't put an extra reference on the window, since it is a toplevel,
1671 it wont get destroyed from anywhere else.
1673 * overall macro and GtkType fixups.
1675 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
1677 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
1678 constructs by more forgiving ones. (Does anyone else feel like
1679 the color selector need rewriting?).
1681 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
1683 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1686 * gtk/gtkmenu.c: Modified reference counting so
1687 that the reference count from the toplevel that
1688 the menu creates to the menu is invisible to the
1691 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
1693 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
1694 conversion selection logic, so Suns and other big-endian
1695 machines should get faster conv routines. This is also the
1696 point where 4bpp gray and 1bpp are checked in, although I
1697 wouldn't be surprised if 1bpp is a little buggy. This is
1698 synchronized with the 0.0.7 release of GdkRgb.
1701 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
1702 appropriate change to the Makefile.am
1704 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
1706 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
1707 which is good for images that scroll (makes the dither patterns
1710 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
1713 (gdk_colormap_new) (gdk_colormap_get_system):
1714 quell some warnings with g_hash_table_new
1716 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
1717 when we're done with it
1719 * gtk/itemfactory.c:
1720 (gtk_item_factory_from_path):
1721 (gtk_item_factory_create_item): free some strings
1724 (gtk_label_finalize): free label->pattern when done
1725 (gtk_label_parse_uline): null terminate pattern string, delete
1726 some duplicated code
1728 * gtk/testthreads.c: add #include <unistd.h> for sleep()
1730 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
1732 * gtk/gtktext.c (recompute_geometry): Make sure the
1733 mark we pass to line start is the beginning of a
1734 real line, not a wrapped one.
1736 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
1738 * gtk/gtktext.c: Reference count the fonts used in
1741 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
1742 freeing functions to be more consistent, and more
1743 convenient; leave the old names in for backwards compatibility.
1745 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
1746 allocations in pseudo-color colormaps to greatly reduce
1747 calls to XAllocColor. Keep a per-colormap hashtable to
1748 speed up finding if there is an already-allocated matching
1751 * gdk/gdkcolor.c: Don't just match read the system colormap
1752 when the colormap is created, but synchronize our copy
1753 with the system colormap periodically.
1755 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
1756 Change XIM constants names to match GDK conventions
1758 * gtk/testinput.c: Allow the drawing area to get the focus.
1760 * gtk/testgtk.c: Change around the Text test to demonstrates
1761 multiple fonts, use more colors.
1763 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
1764 so they work after a widget is unrealized.
1766 * gtk/gtktext.[ch]: Remove the requirement that the text
1767 widget be realized before adding text (!) Allocate colors
1768 ourself, instead of requiring the caller allocate them.
1769 Allow changing styles to work properly by keeping track
1770 of the values for a certain property are default or
1773 * gtk/gtkmenu.h: Added some comments.
1775 * gtk/gtkentry.c: Changes to match XIM constants.
1777 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
1778 for adding keyed data to drawables. (Uses g_dataset
1781 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
1782 when creating an XPM - store them as user data for the GdkPixmap,
1783 so we don't leak colors when we create pixmaps from XPM's.
1785 Allocate memory for color information in large blocks instead of
1786 as many little pieces.
1788 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
1790 * gdk/gdkrgb.c: removed some unused variables
1793 * gtk/gtkmain.c: #if 0'd out some unused code
1795 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
1797 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
1805 * gtk/gtkcontainer.h:
1806 * gtk/gtkcontainer.c:
1811 (gtk_container_add_with_args):
1812 (gtk_container_child_set):
1813 begin the parameter elipsis (...) after the first argument name. this
1814 change is source compatible, since it was always required, even as NULL.
1816 (gtk_object_args_collect):
1817 (gtk_container_child_args_collect):
1818 changed prototypes to pass first_arg_name, also, pass va_list variable
1819 by value (portability concerns). callers changed.
1821 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
1822 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
1823 can't pass va_list variables by reference for portability reasons.
1825 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
1827 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
1828 get_visual calls, so that it gets implicitly initialized.
1830 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
1831 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
1832 such as GtkCTree function name changes
1834 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
1837 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
1838 binary version check, returning a static string for error descriptions,
1841 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
1843 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
1844 computed our geometry yet, and if not, ignore the request.
1846 * gtk/gtktext.c (correct_cache_insert): Fiddled around
1847 some more. All the bug-test codes seem to work at once
1848 now. (fingers crossed...)
1850 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
1852 * gdk/gdkrgb.c: silly visual fixes
1854 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
1857 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
1859 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
1860 anything if the event's window is not the bin window.
1861 (gtk_handle_box_motion): Likewise.
1863 1998-08-19 Raph Levien <raph@gimp.org>
1865 * gtk/testgtk.c (create_color_preview): pushed the colormap and
1866 visual so it would work better with GdkRgb.
1868 1998-08-19 Raph Levien <raph@gimp.org>
1870 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
1871 4bpp static_color mode (for vga displays). Also fixed a '64' value
1872 in the dither matrix, which was causing one pixel out of 16k to be
1875 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
1876 most of the contents. This is an API change - any apps that relied
1877 on the internal structure of GtkPreview will need some change -
1878 most notably in the use of reserved colors. The Gimp needed
1879 changes in this regard.
1881 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
1883 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
1884 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
1885 --g-fatal-warnings), noticed by miguel.
1887 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
1889 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
1897 * gtk/gtkitemfactory.c:
1898 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
1900 * gtk/gtkselection.c:
1904 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
1906 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
1908 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
1910 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
1911 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
1912 in case of show_tabs == NULL
1914 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
1916 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
1917 to --g-fatal-warnings again. this option now causes log levels of
1918 WARNING and CRITICAL to abort().
1927 * gtk/gtktypeutils.c:
1933 * gtk/gtkselection.c:
1936 * gtk/gtktreeitem.c:
1937 did a global search&replace to substitute g_print() calls with
1938 g_message(). libraries shouldn't use printf(), g_print() or
1939 g_printerr() at all.
1940 a bunch of the replacements should probably be wrapped into the
1941 G{D|T}K_NOTE() macros, so they are special cased for debugging
1942 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
1945 * gdk/gdkdnd.c: added copyright notice.
1947 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
1949 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
1950 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
1951 running a PII 233. It's synced with the 0.0.5 release of
1954 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
1957 (struct _GtkCListClass): new class methods:
1958 (sort_list) (insert_row) (remove_row) (set_cell_contents)
1961 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
1962 removed and replaced by (set_cell_contents)
1963 (set_cell_contents): function for class method set_cell_contents
1964 (real_insert_row): function for class method insert_row
1965 (real_remoce_row): function for class method remove_row
1966 (real_sort_list): function for class method sort_list
1967 (default_compare): fix to avoid problems with cell types != CELL_TEXT
1970 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
1971 (gtk_ctree_node_is_visible): new function to return visibility state
1973 (gtk_ctree_show_stub): new function to set visibility of root stub
1976 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
1977 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
1978 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
1979 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
1980 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
1981 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
1982 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
1983 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
1984 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
1985 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
1986 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
1987 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
1988 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
1989 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
1990 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
1991 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
1992 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
1993 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
1994 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
1997 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
1998 removed and replaced by (set_cell_contents)
1999 (set_cell_contents): function for class method set_cell_contents
2000 (real_insert_row): function for class method insert_row
2001 (real_remoce_row): function for class method remove_row
2002 (real_sort_list): function for class method sort_list
2003 (default_compare): removed. CTree now also compares two GtkCTreeRows
2004 instead of two GtkCTreeNodes.
2005 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
2007 (real_tree_expand) (real_tree_collapse): fix for refcounting of
2009 (set_node_info): call gtk_ctree_node_set_pixtext instead of
2010 manipulating the row itself
2012 * gtk/testgtk.c: use renamed functions of GtkCTree.
2013 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
2016 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
2018 * gtk/gtkmain.c: removed gtk_input_add_interp.
2020 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
2022 (gtk_editable_get_event_time): fix default: case.
2024 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
2026 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
2029 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
2032 * various minor compilation cleanups, such as bogus commas in
2033 enums and similar things.
2035 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
2037 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
2040 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2042 * NEWS: updated for 1.1.2
2043 * gtk+.spec: version = 1.1.2
2045 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
2047 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
2048 times. changed --gtk-with-module to --gtk-module at owen's request.
2050 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
2052 * gtk/gtkmain.c (gtk_init): feature a new commandline option
2053 --gtk-with-module=<module> that allows additional loading and
2054 initialization of modules (e.g. GLE).
2056 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
2058 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
2059 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
2061 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
2062 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
2063 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
2064 different *-fatal-* arguments now. this needs to be revised and
2065 compressed to a reasonable amount of arguments.
2067 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
2069 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
2070 "--g-fatal-warnings" causes fatal warnings in GLib,
2071 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
2072 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
2074 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
2075 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
2079 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
2080 since automake doesn't support per target _CFLAGS yet.
2082 * configure.in: require GLib 1.1.3.
2084 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
2086 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
2087 to set a callback to test if a node in drag can be dropped onto
2088 it's currrent location.
2089 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
2090 to change the pointer when a drag destination is not allowed.
2092 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
2094 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
2095 speeds up the 565_d case by about 25% total. Thanks Ray!
2097 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
2099 * Changed GtkSignalFunc back to () from (void). (again!)
2101 * Added file README.cvs-commits
2103 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
2105 * docs/gtk_tut.sgml:
2106 - Tidy up of the menufactory example from
2107 Andy Kahn <kahn@zk3.dec.com>
2108 - New section on Range Widgets from
2109 David Huggins-Daines <bn711@freenet.carleton.ca>
2110 - Started a new section on 'Advanced Event and Signal
2111 Handling' - used an email from Owen.
2112 - New appendix on Gdk Event Types
2113 - Added the tictactoe full example code to the
2114 'Code Examples' appendix
2116 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
2118 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
2119 to calculate all the metrics at once of a string, including
2120 things which weren't calculated before.
2122 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
2123 MenuItem type, that when put as the first thing in a
2124 menu, makes the menu tearoff. Currently drawn as a
2127 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
2128 "hide_on_activate" to the MenuItem class structure to allow
2129 check and radio buttons to be changed with <Space> without
2132 * gtk/gtkitemfactory.c:
2133 - Create a AccelGroup for each MenuShell we create.
2134 - If an '_' appears before a character 'c' in the path,
2135 then make 'c' an accelerator in the menu's accel group,
2136 and if the menuitem is menubar <alt>C an accelerator
2137 in the itemfactory's accel group. Double '__' inserts
2140 * gtk/gtklabel.[ch]: Add support for a pattern arg -
2141 which is a string. If an '_' appears in this string,
2142 the corresponding position in the label is underlined.
2144 Add gtk_label_parse_uline() convenience function which
2145 takes a string with embedded underlines, sets the
2146 pattern and label, and returns the accelerator keyval.
2148 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
2149 Instead, they create a GtkWindow and add themselves
2150 to that. (When torn off, another new feature, they
2151 create another GtkWindow to hold the torn off menu)
2153 New function gtk_menu_set_tearoff_state()
2155 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
2156 Added action signals for keyboard navigation of menus.
2158 * gtk/gtkmenushell.c: Key press handler which activates
2159 bindings for navigation, and accelerators, for handling
2160 underline accelerators. Exported functions to select
2161 and activate menu items in a menushell.
2163 * gtk/testgtk.c: Added a new "Item Factory" test which
2164 tests GtkItemFactory and the new keyboard navigation
2167 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
2169 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
2170 external functions have been called. also relookup nodes after
2171 this function has been invoked.
2173 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
2175 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
2176 beginning of Text when creating the Text widget.
2178 * gtk/testgtk.c: Grab the focus on the text widget so
2179 as to test out the above.
2181 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
2183 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
2184 ::changed is a notification signal and should have no default
2185 handler. A complete redraw of the Text widget does _not_ need to
2186 be done on every text insertion.
2188 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
2189 (gtk-abilleira-072198-patch)
2191 * gtk/gtkwindow.[ch]:
2192 Add gtk_window_set_modal() which sets a flag; when
2193 set the window does a gtk_grab_add() when the window
2194 is shown, and a gtk_grab_remove() when the window
2197 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
2198 that case will run "Create Dir","Delete File" and "Rename File"
2199 dialogs as modal too.
2201 * gtk/testgtk.c: Added a button with an example of creating modal
2202 dialog boxes. Including file selection and color selection standard
2205 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
2207 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
2208 Removed CAN_FOCUS by default from scrollbars, button
2209 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
2210 (Scrollbar definitely good change, toolbar bit more questionable)
2212 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
2214 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
2217 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
2219 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
2220 added all logical operations to gc->function.
2222 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
2224 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
2225 gtk_widget_size_allocate instead of gtk_widget_queue_resize
2226 if the visibility state of a scrollbar changes.
2228 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
2230 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
2232 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
2234 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
2235 gtk_clist_merge and gtk_clist_mergesort. :)
2237 1998-08-06 Martin Baulig <martin@home-of-linux.org>
2239 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
2240 `mergesort' -> `my_mergesort'.
2242 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
2244 * gtk/gtkenums.h: new enum GtkSortType.
2248 Added sorting capabilities to GtkCList. New APIs :
2249 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
2250 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
2251 New internal functions : default_compare, merge, mergesort.
2253 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
2255 (gtk_clist_insert): Modified to handle gtk_clist_append and the
2256 auto sort flag. Changed the return value from void to gint to
2257 return the row number where the element was actually inserted.
2259 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
2263 Removed the auto_sort flag, replaced ctree->node_compare with
2264 clist->compare all over the place, modified default_compare to
2265 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
2266 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
2268 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
2269 sorting. The lists can be sorted by a column by clicking the
2270 corresponding title button.
2272 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
2274 * Released GTK+ 1.1.1
2276 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
2280 (gtk_ctree_find): changed to return a gboolean
2281 (gtk_ctree_insert_gnode): new function for recursive insertion of a
2283 (gtk_ctree_real_select_recursive): fix for extended selection
2284 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
2285 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
2287 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
2289 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
2290 GLib version 1.1.1 is now required at minimum.
2292 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
2293 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
2295 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
2297 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
2298 cursor before (possibly) deleting the cursor's text
2301 * gtk/gtktext.c (correct_cache_delete): More attempts
2302 to clean the line-start cache up after inserting
2303 a property. Among other things, make sure to
2304 fix up text->current_line, since it is used to
2305 refetch the changed lines.
2307 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
2309 * gtk/gtktable.[ch]: Empty rows/columns of the table
2310 should not have been marked as being able to shrink.
2311 (Fixes problem with shrinking scrollbarless GIMP canvases)
2313 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
2315 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
2316 function to find a row by its data pointer using a custom
2317 comparison function.
2319 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
2321 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
2322 this fixes a bug when the whole widget is made non-sesitive
2323 the buttons weren't redrawn
2325 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
2327 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
2328 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
2329 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
2331 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
2333 * gdk/gdkwindow.c (gdk_window_reparent): Change
2334 window_private->parent pointer when reparenting.
2336 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
2338 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
2339 with the standalone release.
2341 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
2343 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
2344 (gtk_clist_button_release) (new_column_width): Few fixes for
2345 column resize. Store resize column in clist->drag_pos.
2347 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
2351 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
2352 to GtkCTreeNode *node.
2354 * gtk/gtklist.h : added extended selection mode and auto scrolling.
2355 (struct _GtkList): removed unneeded variables timer, button,
2356 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
2357 Added new variables undo_selection, undo_unselection, last_focus_child,
2358 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
2359 drag_selection, add_mode.
2362 (gtk_list_extend_selection), (gtk_list_start_selection),
2363 (gtk_list_end_selection), (gtk_list_select_all),
2364 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
2365 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
2366 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
2367 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
2370 (gtk_list_enter_notify): removed, because auto scrolling now works
2371 with gtk_list_motion_notify
2373 New functions, needed for auto scrolling :
2374 (gtk_list_motion_notify) (gtk_list_move_focus_child)
2376 New functions for extended selection support :
2377 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
2378 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
2379 (gtk_list_focus_lost)
2381 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
2382 function to support auto scrolling, and avoid out-of-sync errors in
2383 case auf GTK_SELECTION_BROWSE
2384 (gtk_list_focus): modified gtk_container_focus function to avoid out
2385 off sync errors in case auf GTK_SELECTION_EXTENDED
2388 * gtk/gtklistitem.c :
2389 New signal functions for key binding support :
2390 (toggle_focus_row), (select_all), (list_item), (unselect_all)
2391 (list_item), (undo_selection), (start_selection), (end_selection)
2392 (extend_selection), (scroll_horizontal), (scroll_vertical),
2394 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
2395 GDK_KEY_RELEASE_MASK
2396 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
2399 (gtk_combo_popup_button_press): grab pointer for combo->list
2400 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
2401 (gtk_combo_list_key_press): take care of which child HAS_GRAB
2402 (gtk_comb_init): don't connect combo->button with button_release_event
2404 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
2406 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
2408 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
2410 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
2411 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
2412 with horizontal and vertical autoscrolling.
2414 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2416 * gtk/docs/man: new directory
2417 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
2419 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
2421 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
2424 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
2426 * docs/gtk_tut.sgml: GtkTree section from
2427 David Huggins-Daines <bn711@freenet.carleton.ca>,
2428 add a GtkText widget example
2429 * examples/text/* example/tree/* : new examples for the
2430 GtkTree and GtkText widgets
2431 * docs/gtk_tut.sgml: added an appendix to hold complete code
2432 examples that aren't in a full form elsewhere in the
2433 tutorial (e.g. scribble)
2435 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2437 * Released GTK+ 1.1.0
2439 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
2441 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
2442 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
2444 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
2446 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
2447 values are looked up.
2449 * gtk/gtktypeutils.h:
2450 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
2451 gtk_type_enums_find_value to lookup enum values.
2454 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
2455 GtkCTreeExpansionType. fixed signal creations to pass the enum
2456 types not just the base type GTK_TYPE_ENUM.
2459 * gtk/gtkclist.c: fixed signal creations to pass the real enum
2460 types not just the base type GTK_TYPE_ENUM.
2462 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
2465 Began cleanup, e.g. use gtk_widget_show_all instead of many
2466 gtk_widget_show's. Completely rewrote the button box sample
2467 (only one window now). Removed "miscellaneous" button.
2469 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
2471 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
2472 Fixed wrong allocation for GTK_BUTTONBOX_END.
2473 (allocation->x => allocation->y)
2475 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
2477 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
2478 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
2480 * gtk/gtkctree.c (real_tree_select): added check to avoid double
2482 (gtk_ctree_button_press)
2483 (gtk_ctree_button_release): fix for pointer grab
2485 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
2487 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
2488 Fixed initialization problem - dirty memory could cause problems.
2489 Also checked that bitmapped fonts can be scaled when showing the
2492 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
2494 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
2495 (gtk_ctree_sort_recursive): test for node != NULL
2496 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
2497 (gtk_ctree_last) : added sanity checks
2498 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
2500 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
2502 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
2504 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
2506 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
2508 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
2510 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
2511 to check out binding priorities. someone should really write
2512 gtkrc-mode for emacs.
2514 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
2515 * gtk/testgtk.c (main): and move it here ;). this test says something
2516 on release of C-9. (this works only if the mouse pointer is on a
2517 spinbutton and there is no focus widget).
2521 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
2522 gtk_rc_parse_priority to parse path priority types.
2524 feature binding parsing.
2526 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
2528 * gtk/gtkbindings.h:
2529 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
2530 feature binding parsing in rc files.
2531 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
2532 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
2533 order the bindings with lowest priority first.
2535 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
2537 * gdk/gdkrgb.c: actually builds and runs properly on big
2538 endian machines now, because we #include config.h. Also
2539 fixed up a compile error in the WORDS_BIGENDIAN case in
2540 gdk_rgb_convert_565_gray. I made the fix by looking at
2541 patterns in the other code; Raph can you verify this?
2543 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
2546 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
2548 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
2549 (tree_toggle_expansion) (real_select/unselect_row)
2550 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
2552 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
2554 * gtk/gtktext.c (new_text_property): We free things from
2555 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
2557 * Fix up line start cache when splitting a property
2560 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
2562 * gtk/gtkwidget.c: restauration => restoration
2564 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
2566 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
2567 hasn't been created yet, don't do the lookup.
2569 1998-07-20 Raph Levien <raph@acm.org>
2571 * gdk/gdkrgb.c: More cleanups in the config process.
2573 1998-07-20 Raph Levien <raph@acm.org>
2575 * gdkrgb.c: Fixed minor config bug preventing big-endian
2576 architectures from working.
2578 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
2580 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
2581 activity indicator. It is settable now as a fraction of the
2582 total width/height using gtk_progress_bar_set_activity_blocks.
2583 Renamed gtk_progress_bar_set_number_of_blocks to
2584 gtk_progress_bar_set_discrete_blocks.
2586 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
2588 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
2589 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
2590 tree to specified depth
2591 (gtk_ctree_expand_to_depth): expand tree to specified depth
2592 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
2594 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
2596 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
2597 of GTK_CLIST_ADD_MOD
2598 * gtk/testgtk.c (add1000_clist): changed pixmap
2600 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
2603 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
2605 * gtk/gtktypeutils.h:
2606 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
2608 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
2610 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
2611 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
2612 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
2614 (gtk_notebook_reorder_child): new funktion to change position of a
2616 (gtk_notebook_draw_arrow): draw left/right arrow with
2617 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
2619 * gtk/gtkstyle.c (gtk_default_draw_arrow):
2620 added GTK_SHADOW_ETCHED_IN/OUT
2622 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
2624 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
2625 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
2626 Introduced generic GtkProgress widget. Derived GtkProgressBar from
2627 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
2629 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
2631 * gtk/gtktypeutils.h
2632 * gtk/gtkitemfactory.h: explicitly specify void in prototype
2634 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
2636 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
2639 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
2641 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
2642 sropped the approach of copying all signal specific data into a
2643 GtkHandlerInfo structure. we rather keep the signal data on the stack
2644 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
2645 avoids multiple lookups of the signal pointer and works savely together
2646 with destroy notifiers of handlers.
2648 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
2649 someone destroys the entry on the ::activate signal.
2651 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
2653 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
2654 instead of ypad (typo).
2655 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
2656 border around the allocation).
2657 (gtk_arrow_init): the static requisition needs to be setup in this
2658 function rather than gtk_widget_new(), so arrow creation works without
2659 the gtk_arrow_new() constructing.
2660 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
2662 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
2663 implementation for GtkWidget::size_request, so size requisition for
2664 simple statically sized widgets like GtkArrow works.
2666 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
2668 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
2669 prepend -I@libdir@/glib/include anymore, since glib-config handles
2670 it; --libs strips out redundant -L<path>'s properly (there was
2671 code in there to do it before, but it didn't work)
2673 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
2675 * gtk/gtknotebook.h:
2676 * gtk/gtknotebook.c: signdness corrections all ove the place.
2677 implementation of object arguments: GtkNotebook::enable_popup,
2678 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
2679 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
2680 begun implementation of child args, we have GtkNotebook::tab_label, but
2681 GtkNotebook::menu_label and GtkNotebook::position still lack the
2683 (gtk_notebook_remove_page):
2684 (gtk_notebook_current_page): allow negative indices (-1) as alias for
2688 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
2689 arguments GtkEntry::max_length and GtkEntry::visibility.
2690 (gtk_entry_adjust_scroll): queue a redraw.
2692 * gtk/gtkeditable.h:
2693 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
2694 object arguments GtkEditable::text_position and GtkEditable::editable.
2695 new (action) signal GtkEditable::set_editable.
2696 provide a default handler for GtkEditable::changed that queues a redraw.
2699 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
2702 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
2704 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
2705 case of drag_target == NULL
2706 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
2707 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
2708 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
2709 gtk_dir_selection_file_button): fix due to changes in clist's
2712 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
2715 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
2716 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
2717 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
2718 to be gint16s rather than guint16s, since that's what the code expected
2719 (for a long time actually).
2721 * gtk/gtkviewport.c:
2722 added support for object arguments: GtkViewport::shadow_type,
2723 GtkViewport::vadjustment and GtkViewport::hadjustment.
2724 (gtk_viewport_add): chain gtk_bin_add.
2726 * gtk/gtkscrolledwindow.c:
2727 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
2728 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
2730 * gtk/gtkadjustment.h:
2731 * gtk/gtkadjustment.c:
2736 * gtk/gtkscrolledwindow.h:
2737 * gtk/gtkscrolledwindow.c:
2738 * gtk/gtkviewport.h:
2739 * gtk/gtkviewport.c:
2740 GtkType and macro fixups.
2742 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
2746 Added focus handling, horizontal and vertical autoscrolling,
2747 extended Selection Mode, key bindings
2748 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
2749 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
2750 Removed gtk_ctree_clear.
2754 Added focus handling, horizontal and vertical autoscrolling,
2755 extended Selection Mode, key bindings
2757 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
2759 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
2760 source tree. For more information on GdkRgb, please see:
2761 http://www.levien.com/gdkrgb/
2763 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
2764 bothers me slightly that the feature is in gdk, and this file is
2765 in gtk, but it's probably ok.
2767 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
2770 * gdk/gdkrgb.h: Added this module.
2772 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
2774 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
2776 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
2778 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
2779 to this function. it needs to relookup the signal multiple times.
2780 this fixes spurious segfaults that could show up with signal intensive
2781 code, when classes are created during a pending emission (which is
2784 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
2786 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
2787 child if it isn't a label.
2789 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
2792 * gtk/gtkseparator.h:
2793 * gtk/gtkhseparator.h:
2794 * gtk/gtkvseparator.h: macro and GtkType fixups.
2796 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
2798 * gtk/testgtk.c (create_cursors): display the current cursor name.
2800 * gtk/gtktypeutils.h:
2801 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
2802 the fundamental type definition. the GtkArg union now only covers
2803 the required storage types for argument values. adapted the GTK_VALUE_*
2804 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
2806 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
2807 code, fixed int/float collection. fixed a bug in the sanity checking
2808 code for GtkObjects.
2810 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
2811 argument collection code.
2813 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
2814 macros when distinguishing the return type.
2816 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
2818 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
2819 is not NULL before trying to g_list_remove the child. A patch
2820 from Michael Lausch.
2822 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
2824 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
2825 collection (always casted to doubles upon argument passing).
2827 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
2829 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
2830 object_init_func for derived objects with the object's ->klass field
2831 still pointing to the corresponding base class, otherwise overridden
2832 class functions could get called with partly-initialized objects.
2833 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
2835 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
2839 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
2841 * gtk/gtkcontainer.h:
2842 * gtk/gtkcontainer.c:
2843 (gtk_container_child_arg_get_info): new function which wraps
2846 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
2848 * gtk/gtkcontainer.c:
2849 (gtk_container_arg_get):
2850 (gtk_container_arg_set):
2852 (gtk_object_arg_set):
2853 (gtk_object_arg_get):
2854 strictly check for the associated get/set arg functions. if an
2855 arg is readable or writable, the associated class functions *must*
2858 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
2860 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
2861 padding into account if there is an accelerator.
2863 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
2865 * gtk/gtkcontainer.c:
2866 (gtk_container_add_with_args): collect the arguments with
2867 gtk_container_child_args_collect, not through gtk_object_args_collect.
2868 (gtk_container_child_set): likewise.
2870 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
2872 * gtk/gtktypeutils.h:
2873 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
2874 which is derived from GTK_TYPE_STRING.
2876 * gtk/gtkbindings.c: reworked the argument type handling.
2878 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2880 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
2881 so that it seems to allow normal operation in those modes,
2882 although you will only see black (GIMP toolbar now pops up,
2883 just don't create a new image and GIMP now works in 4 bit.)
2885 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2887 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
2888 array, which was too low (?)
2890 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
2892 * gtk/gtkcontainer.h:
2893 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
2894 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
2895 we now export a new function gtk_container_child_args_collect().
2896 for consistency with the object arguments, a few functions got renamed:
2897 gtk_container_child_arg_get -> gtk_container_child_get,
2898 gtk_container_child_arg_set -> gtk_container_child_set,
2899 gtk_container_child_arg_getv -> gtk_container_child_getv,
2900 gtk_container_child_arg_setv -> gtk_container_child_setv,
2901 gtk_container_add_with_argv -> gtk_container_addv.
2902 note, gtk_container_add_with_args() remained, because its equivalent
2903 would be gtk_container_add(,, ...) which would break all existing code.
2904 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
2905 we expect the `arg_name' argument to be a const static string now.
2906 (gtk_container_get_child_arg_type): function removed.
2908 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
2910 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
2911 this is a static inline function that collects command line arguments
2912 from a va_list. this file can just be included in all places that
2913 need this functionality.
2916 * gtk/gtkarg.c: new files which implement most of the argument
2917 handling stuff from gtkobject.c. also collected a few more
2918 gtk_arg_* utility functions from else places.
2921 * gtk/gtkobject.c: moved most of the argument handling code into
2922 gtkarg.c. we now export gtk_object_args_collect() as a non-public
2923 method with a blind va_list pointer.
2924 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
2925 const static string now.
2926 (gtk_object_get_arg_type): function got removed.
2930 (gtk_widget_new): adaptions for gtk_object_args_collect().
2932 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
2933 fundamental type name so as to have a valid prefix, e.g. "bool"->
2934 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
2935 though that should probably be something like GtkNone since the
2936 type itself is called GTK_TYPE_NONE.
2937 even the internal type names need to avoid name clashes and must live
2938 in their own namespace, several code portions rely on that.
2939 we should relly have typedefs such as typedef gchar* GtkString; so the
2940 fundamental type names can be used for code dumpers just like with all
2943 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
2945 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
2946 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
2947 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
2949 (gtk_button_paint): set the background for prelighted buttons with
2950 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
2951 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
2952 the shadow type (otherwise we get strange shadows for coloured buttons).
2953 (gtk_button_set_relief): queue a redraw after changing
2955 (gtk_button_class_init):
2956 (gtk_button_set_arg):
2957 (gtk_button_get_arg): added object argument "GtkButton::relief".
2959 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
2961 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
2964 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
2965 GTK_BIN (button)->child to button->child to keep source compatibility.
2967 * gtk/gtkoptionmenu.c:
2969 * gtkcheckbutton.c: don't refer to button->child, but
2970 GTK_BIN (button)->child instead.
2972 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
2974 * docs/gtkfaq.sgml: update anon CVS info
2976 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
2978 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
2982 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
2985 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
2987 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
2988 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
2990 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
2992 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
2994 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
2997 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
2999 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
3000 error that prevented signal to entry addition for signals with
3003 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
3005 * ltconfig: fix for properly detecting shared lib support on
3006 SunPro cc (taken from libtool 1.2.a)
3008 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
3010 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
3012 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
3014 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
3015 rc set pattern is favoured, this is needed for overriding of style
3016 patterns with subsequently parsed rc files.
3018 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
3020 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
3023 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
3025 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
3027 (gtk_accelerator_name): add "<Release>" to the accelerator name if
3030 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
3033 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
3034 default handler for key-release events, which checks for activation
3035 of GDK_RELEASE_MASK key bindings.
3037 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
3039 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
3041 * gtk/gtkarrow.h: GtkType and macro fixups.
3042 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
3043 "GtkArrow::shadow_type".
3045 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
3047 * gtk/gtkalignment.h:
3048 * gtk/gtkbin.h: GtkType and macro fixups.
3050 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
3051 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
3052 GtkAlignment::xscale, GtkAlignment::yscale.
3054 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
3056 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
3057 fucntions from all parent types upon class initialization.
3059 * gtk/gtkcontainer.c:
3060 (gtk_container_get_type): announce gtk_container_base_class_init to
3062 (gtk_container_base_class_init): new function to feature base class
3064 (gtk_container_get_child_arg):
3065 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
3066 and set_child_arg methods of the class indicated through the argument
3070 (gtk_object_base_class_init): new function to feature base class
3072 (gtk_object_init_type): announce gtk_object_base_class_init to the type
3074 (gtk_object_class_init): setup the get_arg and set_arg pointers for
3077 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
3078 instead of bothering the type system with this.
3080 * gtk/gtkaccellabel.c:
3082 * gtk/gtkradiobutton.c:
3084 * gtk/gtktogglebutton.c:
3085 * gtk/gtktipsquery.c:
3092 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
3093 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
3094 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
3095 arg functions to take a GtkObject argument.
3097 gtk/gtkadjustment.c:
3100 gtk/gtkaspectframe.c:
3103 gtk/gtkcheckbutton.c:
3104 gtk/gtkcheckmenuitem.c:
3112 gtk/gtkdrawingarea.c:
3126 gtk/gtkhscrollbar.c:
3127 gtk/gtkhseparator.c:
3129 gtk/gtkinputdialog.c:
3131 gtk/gtkitemfactory.c:
3139 gtk/gtkoptionmenu.c:
3143 gtk/gtkprogressbar.c:
3144 gtk/gtkradiomenuitem.c:
3149 gtk/gtkscrolledwindow.c:
3151 gtk/gtkspinbutton.c:
3164 gtk/gtkvscrollbar.c:
3165 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
3166 match the modified GtkTypeInfo structure.
3168 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
3170 * gtk/testgtk.c: use rand() instead of random() for portability
3172 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
3176 * gdk/gdk.c: use native Xlib XConvertCase if it's available
3178 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
3180 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
3181 XConvertCase() functionality from X11R6 on X11R5 systems.
3183 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
3185 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
3186 gdk_string_height, gdk_char_height to retrieve the exact
3189 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
3191 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
3192 by Stefan Mars <mars@lysator.liu.se>
3193 * examples/clist/clist.c examples/clist/Makefile: example code
3194 for GtkCList widget from the Tutorial
3196 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
3198 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
3199 if the container is not visible, we might be a toplevel! this holds
3200 for all other base container implementations as well, that are
3201 candidates to derive toplevels from. in general the resizing code will
3202 care about visibility itself.
3203 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
3204 * gtk/gtkbox.c (gtk_box_remove): likewise.
3206 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
3207 gtk_window_set_hints(), since we haven't calculated the new position
3210 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
3211 *mask are alway initialized in a sane way, regardless of the return
3214 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
3216 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
3217 to gtk_container_child_arg_setv, but takes a variable argument list.
3218 new function gtk_container_get_child_arg_type, which is needed by
3219 gtk_object_collect_args.
3221 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
3222 take a function pointer to figure the argument type.
3223 adapted callers to pass gtk_object_get_arg_type.
3224 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
3225 gtk_object_get_arg_type..
3229 (gtk_packer_reorder_child): new function to change the packing order
3231 (gtk_packer_size_request):
3232 (gtk_packer_size_allocate): take container->border_width into acount.
3234 * gtk/gtkpacker.c: implemented widget arguments:
3235 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
3236 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
3237 implemented child arguments:
3238 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
3239 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
3240 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
3241 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
3243 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
3246 * gtk/gtkeventbox.h:
3247 * gtk/gtkeventbox.c: GtkType and macro fixups.
3249 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
3250 sensitivity of an entry.
3252 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
3253 for insensitive base and text.
3255 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
3256 widget state dependent.
3257 (gtk_entry_style_set): likewise.
3258 (gtk_entry_state_changed): set background color on state changes.
3259 (gtk_entry_draw_text): for non selected text, use state dependent
3262 * gtk/gtktogglebutton.c: support for widget arguments
3263 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
3265 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
3267 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
3268 code for 1.0.x-like parameters. Changed internal interface of
3269 gtk_spin_button_real_spin. Several fixes to avoid emission of
3270 "value_changed" where possible.
3272 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
3274 * gtk-boxed.defs: s/GkWidget/GtkWidget/
3276 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
3278 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
3279 to select the resize_mode for the idle-labels container.
3282 * gtk/gtkframe.c: GtkType and macro corrections.
3284 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
3285 support widget argument "GtkRadioButton::group".
3287 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
3289 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
3290 unconditionally if resize_mode has changed.
3292 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
3293 GTK_RESIZE_QUEUE on the scrolled window.
3294 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
3296 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
3298 * gtk/gtkcontainer.h:
3299 * gtk/gtkcontainer.c:
3300 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
3301 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
3302 (gtk_container_queue_resize): new function to queue a container for
3303 a *size* reallocation (doesn't affect its position, and thus its
3304 parent is left untouched usually).
3305 (gtk_container_get_resize_container): new function to retrive the next
3306 most resize container which is not itself queued for a resize.
3307 (gtk_container_idle_sizer): new function to carefully process the
3308 container_resize_queue since it can change during invokation of
3309 gtk_container_check_resize().
3310 (gtk_container_resize_children): total rework of this function to
3311 properly handle resize containers. makes a lot of assumptions whitch
3312 are stated in the comments.
3314 * gtk/gtkcontainer.c:
3315 (gtk_container_real_check_resize): only requeue ourselves if we are not
3317 (gtk_container_clear_resize_widgets): care for automatic deletion of our
3318 resize_widgets list on size_allocate through a handler connection.
3320 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
3321 focus and default widget of a window, so to take the burden from
3322 gtk_widget_unparent.
3324 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
3325 to be clever, but actually messed up the resize_children logic and
3326 caused unneccessary allocations on its whole branch. besides this,
3327 it messed up the display by not invoking a redraw after the allocation.
3329 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
3330 that it is the child again that is queued for a resize.
3331 (gtk_table_attach): likewise.
3332 (gtk_table_remove): likewise.
3334 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
3336 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
3337 gtk_entry_adjust_scroll. Required if you change the cursor
3338 position and want to sync it up with your code (Midnight Commander
3339 gtk front end needs this).
3341 * gtk/gtktable.c: Deal with tables that have size 0, 0.
3343 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
3345 * examples/README.1ST: new file to explain how the
3346 code examples should be extracted from the tutorial.
3348 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
3350 * gtk/gtkctree.c (draw_row): added new "line style"
3351 GTK_CTREE_LINES_TABBED
3352 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
3353 search the glist pointer of an GtkCTreeRow
3355 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
3357 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
3358 from, and clean up, the dependencies. Generate to intermediate
3359 files to prevent problems with Ctrl-C.
3361 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
3363 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
3365 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
3366 - Bug fix for precision problem causing occasional double emission
3367 of "value_changed" signal (hopefully works now).
3368 - API change (should be binary compatible) :
3369 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
3370 Modified cursor example appropriately.
3371 To spin by something other than step_/page_increment, use
3372 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
3373 - Made GTK_SHADOW_NONE the default. ;)
3374 - Fixed casting of GtkAdjustment* to GtkWidget* in
3375 gtk_spin_button_value_changed.
3377 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
3379 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
3380 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
3381 resize widget list before queuing the container for a new reize.
3382 (gtk_container_need_resize): changed return value to FALSE, since this
3383 used to indicate that no further resizes are needed.
3384 (gtk_container_set_arg):
3385 (gtk_container_get_arg):
3386 (gtk_container_class_init): implemented GtkContainer::resize_mode
3389 (gtk_container_resize_children): when we walk up the tree of a resize
3390 widget we need to stop if we are the current parent.
3392 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
3393 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
3394 (gtk_widget_hide_all): retrive the toplevel widget from via
3395 gtk_widget_get_resize_container().
3397 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
3399 * gtk/gtklist.c (gtk_list_button_press): Only respond
3400 to selection with button 1. This allows context-sensitive
3401 menus to work correctly.
3403 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
3405 * gtk/gtkaccelgroup.c:
3406 * gtk/gtkbindings.c:
3407 * gtk/gtkcontainer.c:
3408 * gtk/gtkitemfactory.c:
3411 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
3412 g_quark_from_static_string calls to save memory.
3414 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
3415 function _after_ the new data has been setup.
3416 minor changes to object data functions to feature the GQuark type.
3418 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
3420 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
3423 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
3425 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
3426 to be more readable perl, to spit out stuff that looks
3427 more like readable C, and to pipe output through indent
3428 so output looks a lot like readable C. No functional
3431 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
3433 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
3434 necessary when switching to a masked pixmap. (Based on a patch
3435 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
3437 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
3439 * gtk/gtkeditable.[ch]: Added action signals for keyboard
3440 bindings. (move_cursor, kill_word, etc, etc, etc).
3442 removed the time argument from
3443 gtk_editable_cut/copy/paste_clipboard (source but not
3444 binary incompatible...) Instead get time from
3445 gtk_get_current_event ().
3447 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
3450 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
3452 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
3454 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
3455 parent class to GtkNotebookClass when splitting the widget in
3456 two. Also updated some comments.
3458 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
3459 button without a font selected.
3461 Fixed bug in set_font_name - I hadn't updated the code to
3462 search for the style in the font_style clist - it was
3463 still assuming the style row was equal to its index,
3464 but it isn't any more.
3466 Changed 'Reset' button on filter page to 'Clear Filter'.
3467 Deleted old code relating to the old 'Filter Fonts' toggle
3468 Updated some comments.
3469 Cleared 'Actual Fontname' if no font is set.
3471 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
3472 destroying the GtkFontSelection instead of the
3473 GtkFontSelectionDialog.
3475 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
3477 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
3478 flag to make all warnings fatal errors.
3480 * gtk/testthreads.c: moved <pthreads.h> include inside
3483 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
3485 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
3486 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
3488 - Added new function gtk_container_set_resize_mode() for
3489 fine-grained control of where resize-queueing is done.
3491 - Removed GtkContainer::need_resize and GtkWindow::move_resize
3492 - Added GtkContainer::check_resize to replace need_resize.
3494 - Added function gtk_container_check_resize() to trigger
3495 queued resizes, and gtk_container_resize_children() to
3496 Figure which children need to be size-allocated. (logic
3497 moved from gtkwindow.c)
3499 - Reorganized code in gtkwindow.c
3501 - Set the resize-mode for viewports so that resizes within
3502 a viewport don't propagate out of it.
3504 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
3506 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
3508 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
3509 g_return_val_if_fail, because the function *does* return a value.
3511 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
3513 * gtk/gtkaccellabel.h:
3514 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
3515 request the size of the accelerator portion of an accel label.
3516 (gtk_accel_label_size_request): don't request for the accelerators size.
3517 (gtk_accel_label_expose_event): only draw the accelerator if we got
3520 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
3521 width from children.
3523 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
3524 object (after removal has been requested) check if there is still an
3525 accelerator remaining to avoid adding two accelerators on an object.
3526 this can happen for locked accelerators (or accelerator-frozen widgets).
3527 (gtk_menu_size_request): feature childrens accelerator width in size
3530 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
3531 gtk_widget_freeze_accelerators() for dynamically created menu items.
3534 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
3535 which will return a handler_id > 0 if the specified function is pending
3539 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
3540 a signal handler function to stop accelerator addition.
3541 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
3542 which will prevent (undo) any accelerators from being added to or
3543 removed from a widget.
3545 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
3547 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
3548 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
3549 acceleration, new API gtk_spin_button_set_snap_to_ticks.
3551 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
3554 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
3555 the current GdkWindow the pointer is on if there is any.
3557 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
3558 and one column, so we don't construction logic at all. changed a few
3559 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
3562 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
3563 portion, added an additional check for parent != widget.
3565 * more GtkType and macro fixups.
3567 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
3569 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
3570 "clip" parameter, which is the clipping rectangle to use. This
3571 eliminates the extremely annoying flicker when exposing parts of
3574 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
3576 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
3579 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
3581 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
3582 != 0 on the argument.
3585 * gtk/gtktable.c: new function gtk_table_resize() which allowes
3586 shrinking and expanding of tables. implementation of widget arguments
3587 and child arguments. many signedness corrections.
3589 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
3591 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
3592 not only the child, otherwise we might end up taking away other
3593 childrens space after the resize.
3595 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
3596 an unknown menu path from any source, that path must always be flagged
3597 as "modified", since we don't really know whether it has its default
3602 * gtk/gtknotebook.c:
3603 * gtk/gtkmenushell.c:
3607 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
3610 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
3611 arguments. implemented child arguments.
3613 * more GtkType and macro fixups.
3615 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
3617 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
3619 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
3620 and gtk_clist_get_hadjustment.
3622 * gtk/gtkcontainer.c:
3623 implementation of children arguments, new class member functions
3624 (child_type), (get_child_arg) and (set_child_arg) plus a new field
3626 (gtk_container_child_type): new function which returns the type of a
3627 child that the container expects for its next addition.
3628 (gtk_container_add_child_arg_type): new function to introduce a new
3629 child argument at class creation time.
3630 (gtk_container_query_child_args): new function to query all child
3631 arguments that are supported by a container class.
3632 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
3634 (gtk_container_child_arg_setv): new function to set a child argument for
3635 a certain container and child combination.
3636 (gtk_container_add_with_args):
3637 (gtk_container_add_with_argv): new functions to feature addition of a
3638 new child in combination with the setting of certain child arguments.
3640 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
3641 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
3642 this should really be done through class cretion hooks some day.
3644 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
3648 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
3649 follow the gtk convention for lower case variable names (important
3650 for language wrappers and widget arguments), and made them guint : 16.
3652 * examples/packer/pack.c: adaptions for the case converted GtkPacker
3655 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
3657 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
3658 change the character pair for single line comments.
3659 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
3660 GtkItemFactoryClass.
3661 (gtk_item_factory_parse_rc_string): likewise.
3663 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
3665 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
3666 lists from the klass structure to a static structure
3667 in gtkfontsel.c; cleans up global the namespace.
3669 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
3671 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
3672 bug with /*< skip >*/ and remove warning.
3674 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
3676 * gtk/Makefile.am: Made the gtkmarshal.* generation
3677 rules maintainer-only.
3679 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
3681 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
3682 gtk/Makefile.am gtk/makenums.pl
3684 Removed out the G_ENUM/FLAGS mechanism in favor
3685 of a perl script that parses the standard headers
3686 (with occasional /*< nick=foo >*/ style overrides)
3687 and extracts the enumerations.
3689 gtk/maketypes.awk: Small improvments to the
3690 translation of names. (Avoid splitting gc into
3693 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
3695 * gtk/gtk.h gtk/gtkfontsel.[ch]:
3696 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
3698 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
3701 - Restored gtk_entry_adjust_scroll to static
3702 - Changed text positioning code so that we always
3703 display as large a portion of the text as possible.
3705 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
3707 * gtk/gtktext.c (gtk_text_finalize): Free internal
3708 structures of text widget. Also, unreference pixmaps
3711 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
3713 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
3714 3.3.1 bug workaround to number keys starting at 1.
3716 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
3718 * docs/gtk_tut.sgml: Fixed urls for complete example
3719 source for scribble+widget-writing examples.
3721 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
3723 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
3724 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
3725 specs of the form c #abcdef [ more keys ] properly.
3727 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
3729 * gtkspinbutton.h gtkspinbutton.c testgtk.c
3730 (gtk_spin_button_set_shadow_type):
3731 New API to set the shadow type of the arrow panel.
3733 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
3735 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
3736 code for drawing the child in two places at once. Unfortunately,
3737 not only does it not work anymore (because reparenting has
3738 been fixed), but it also triggers reparent/expose loops
3741 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
3742 an unecessary unrealize.
3744 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
3746 * gdk/gdkwindow.c (gdk_window_reparent): Update the
3747 old and new parents' child window lists properly.
3749 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
3752 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
3753 and GtkSideType, to be consistent with the rest of Gtk's enum
3754 definitions. wrapped the enum definitions with the G_ eunm wrappers.
3755 spelled out the GTK_ANCHOR_* enum values, since single letters don't
3756 work out corectly as nick-names (left the old values as aliases).
3757 some signdness corrections (border-width, spacing), could stand more.
3759 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3761 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
3764 * examples/packer/pack.c, examples/packer/Makefile: Added
3767 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
3769 * gtk/gtktext.c (remove_cache_line): Fixed broken
3772 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
3773 Check bounds before deleting.
3775 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
3777 * autogen.sh: Support ACLOCAL_FLAGS
3779 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
3781 * gtk-config.in: Added missing quotes.
3783 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
3785 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
3787 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
3789 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
3790 G_COMPILED_WITH_DEBUGGING.
3792 * configure.in (fd_set): Explain check better.
3794 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
3795 the version from which gtk+'s libtool forked. Needed for people
3796 who use post-1.2 alphas of libtool.
3798 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
3800 * glib/* Moved to glib module
3802 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
3803 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
3805 configuration changes for the above:
3807 - Use AM_PATH_GLIB by default to find glib; also accept
3808 a --with-glib option for using an uninstalled glib.
3810 - Put --enable-debug information into config.h so
3811 that we rebuild when it changes. (was in glibconfig.h)
3813 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
3815 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
3817 * gtk/gtknotebook.h (struct _GtkNotebookClass):
3818 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
3819 added missing argument (according to Joseph Coleman's bug report)
3821 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
3822 function to fix notebook focus handling
3824 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
3826 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
3827 glib/gutils.c glib/testglib.c glib/gdataset.c
3828 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
3829 gtk/gtktext.c gtk/gtkbindings.c:
3831 renamed g_const_pointer => gconstpointer
3833 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
3835 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
3836 invoked with (NULL, NULL); (this worked sometime ago).
3838 * gtk/gtktypeutils.h:
3839 * gtk/gtktypeutils.c: enum and flags type creation can now be done
3840 through gtk_type_register_enum() and gtk_type_register_flags(),
3841 which allow to specify the enum value arrays directly.
3842 the NULL terminated value arrays can be retrived through
3843 gtk_type_enum_get_values() and gtk_type_flags_get_values();
3844 (gtk_type_children_types): new function to query derived types.
3846 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
3848 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
3849 environment to genmarshal.pl.
3850 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
3851 rule), and removed it where not needed (in the dependencies).
3853 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
3855 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
3857 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
3858 was just g_direct_hash.
3860 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
3862 * configure.in: x_libs=, not $x_libs=. Enough said.
3863 (Case only hit for --disable-xshm)
3865 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
3867 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
3868 when testing for X libraries, don't replace them. Because
3869 the user might have specified the path to the X libraries
3870 themself before running configure.
3872 * examples/**.c: Changed all gpointer * to gpointer
3874 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
3876 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
3877 fleur_cursor field. Now the cursor is created/destroyed on demand
3878 by the routines that need it.
3880 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
3881 (gtk_handle_box_motion): The fleur cursor is created and destroyed
3884 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
3886 * gtk/gtktypeutils.h:
3887 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
3888 gtk_enum_set_values to gtk_type_enum_get_values and
3889 gtk_type_enum_set_values respectively, since they are actually type
3892 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
3895 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
3897 * gtk/gtkselection.h:
3898 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
3899 gtk_selection_data_free.
3901 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
3902 for "selection_received", which was completely bogus.
3903 * other fixups to gtk_signal_new() calls all over the place.
3905 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
3906 * gtk/gtktypebuiltins_vars.c: type variable implementations.
3907 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
3909 * gtk/gtktypebuiltins_evals.c: enum value arrays.
3910 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
3912 * gtk/gtk.defs: generated file with scheme syntax for type definitions
3913 of gtk and gdk structures and enums.
3914 * gtk/gtktypeutils.h:
3915 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
3916 macros anymore (this fixes binary incompatibility with new enum
3919 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
3920 key bindings for this widget.
3921 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
3925 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
3926 again. new functions gtk_object_class_user_signal_new () and
3927 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
3928 flag on the signal creation.
3930 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
3932 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
3934 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
3940 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
3942 * reworked enum value array generation code. gtk.defs is a generated
3945 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
3947 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
3948 check menu items in the compatibility code (this required me to remove
3949 the "<check>" part from the menu item name, grrr).
3951 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
3953 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
3954 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
3956 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
3958 * gtk/gtkitemfactory.h:
3959 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
3960 additions to the dumping code to feature GtkPatternSpec.
3961 even found a bug to fix in the original code ;)
3963 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
3965 * gtk/gtkitemfactory.c: support different types of callbacks, to
3966 maintain existing code.
3968 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
3970 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
3972 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
3973 this should eventually be done by gentypeinfo.el somewhen.
3974 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
3976 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
3977 enum values of an enum type.
3985 brought enum/flags definitions in sync, added a few more enum
3986 definitions for bindings and pattern matching.
3988 * some more macro and GtkType fixups in various places.
3990 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
3991 as a key-release modifier for the binding system.
3993 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
3995 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
3996 was a stale list pointer that is already present in GtkMenuShell.
3998 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
3999 GtkMenuShell::selection_done which is emitted after the menu shell
4000 poped down again and all possible menu items have been activated.
4002 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
4004 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
4005 before activation of the menuitem, so the menu is actually taken off the
4006 screen prior to any menu item activation.
4008 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
4012 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
4013 the emission of the "add-accelerator" signal on a widget. this is
4014 usefull to prevent accelerator installation on certain widgets.
4016 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
4017 labels left justified, by setting their alignment. stop accelerator
4018 installation for the menu items, since we use dynamic menus.
4020 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
4022 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
4023 should *really* use GtkItemFactory. this is only for preserving source
4024 compatibility where possible, use of GtkMenuFactory is deprecated as of
4027 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
4028 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
4029 missed this possibility when i added gtk_object_class_add_user_signal
4032 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
4034 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
4036 * gtk/gtkaccelgroup.h:
4037 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
4039 * gtk/gtkaccellabel.h:
4040 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
4041 display of the accelerators associated with a certain widget.
4043 * gtk/gtkitemfactory.h:
4044 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
4045 parsing and accelerator handling.
4047 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
4049 (gtk_menu_map): removed the allocation code.
4050 (gtk_menu_size_allocate): care for redrawing of children and resize
4051 our widget->window correctly.
4052 (gtk_menu_key_press): feature the new accelerator groups.
4054 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
4055 submenu if neccessary.
4057 * gtk/gtkmenuitem.c:
4058 * gtk/gtkcheckmenuitem.c:
4059 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
4063 (gdk_keyval_from_name):
4064 (gdk_keyval_name): new functions for keyval<->key-name associations.
4065 (gdk_keyval_to_upper):
4066 (gdk_keyval_to_lower):
4067 (gdk_keyval_is_upper):
4068 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
4069 regards to their cases.
4071 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
4073 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
4074 widget's class path.
4075 (gtk_widget_path): new function to calculate a widget's name path.
4077 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
4078 pattern matching, features reversed pattern matches.
4080 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
4082 * examples/extract.sh, examples/extract.awk:
4083 New files to automagically extract code examples from the
4086 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
4088 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
4089 * gtk/gtkcontainer.c (gtk_container_focus_move):
4090 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
4092 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
4094 * docs/gtk_tut.sgml: minor changes to support auto
4095 extraction of example code
4097 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
4099 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
4100 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
4102 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
4104 * docs/gtk_tut.sgml:
4105 - new section on Events
4106 - change all delete_event callbacks to include
4107 a GdkEvent parameter
4108 - clean up the formatting
4110 * examples - helloworld.c, helloworld2.c, notebook.c,
4111 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
4112 rulers.c, table.c, wheelbarrow.c: change all delete_event
4113 callbacks to include a GdkEvent parameter.
4115 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
4117 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
4118 field of crossing events.
4119 (struct _GdkEventCrossing): Added the following fields: time, x,
4120 y, x_root, y_root, mode, focus, state.
4122 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
4123 crossing event structure.
4125 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
4126 changes to the crossing event structure.
4128 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
4130 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
4132 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
4134 * docs/gtk_tut.sgml:
4135 - GtkTooltips, update to current API
4136 - change all 'gpointer *data' to 'gpointer data'
4137 - other minor changes
4139 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
4141 * configure.in (LDFLAGS): Bomb out with a moderately
4142 helpful message if detection of X libraries fails.
4144 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
4147 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
4148 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
4150 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
4151 gtk/gtksignal.c gtk/gtktext.c:
4153 Fixups for warnings from adding const to type of GHashFunc,
4156 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
4157 ansi-warnings fixups.
4159 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
4161 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
4162 Locate child at (border_width,border_width), not
4163 (2*border_width,2*border_width). [ The border is _outside_
4166 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
4167 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
4169 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4171 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
4174 1998-05-22 <sopwith@redhat.com>
4176 * gtk/gtkeventbox.c: Pass size_allocate on to the child
4177 regardless of whether it is visible or not. Also
4178 locate child at (border_width,border_width), not (0,0)
4180 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
4182 * gtk/gtkhandlebox.c: Added style_set handler.
4184 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
4185 [ From: Chris Lahey <clahey@umich.edu> ]
4187 * gtk/gtkeditable.c, gtk/gtkeditable.h,
4188 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
4189 and set_position functions to get and set the cursor position.
4191 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
4192 signal status. Make GtkText do user-controlled insertion
4193 and deletion through the Editable widget so that these
4194 signals are properly emitted.
4196 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
4197 display asterisks instead of empty space when visible = FALSE)
4199 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
4201 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
4204 1998-05-21 <sopwith@redhat.com>
4206 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
4207 custom routine for loading images specified in gtkrc's.
4209 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
4211 * configure.in: Use pthread_attr_init() as a test function,
4212 since most of the rest of -lpthread is macros on DU4.
4214 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
4216 * gtk/gtkcombo.c: implemented completion in the entry.
4218 1998-05-18 <sopwith@moebuis.labs.redhat.com>
4220 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
4222 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
4224 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
4225 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
4226 to be of runtype GTK_RUN_LAST.
4228 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
4231 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
4234 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
4236 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
4237 text retrived from GtkEntry. only intercept the Tab key if there
4238 was some text to complete.
4240 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
4242 Basic thread-awareness:
4244 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
4246 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
4247 gdk_threads_[init/enter/leave] for applications, plus
4248 gdk_threads_wake to wake the mainloop thread out of
4251 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
4253 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
4255 * gtk/testgtk.c (list_clear): Account for the fact
4256 that gtk_list_clear_items is not inclusive. (Clears
4259 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
4261 * gdk/gdk.c: include gdkkeysyms.h always
4264 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
4266 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
4267 the visibility_notify_event method and changed method order.
4269 1998-05-14 <sopwith@moebuis.labs.redhat.com>
4271 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
4273 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
4275 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
4276 from Olli Helenius <ollhel@batman.jytol.fi>.
4278 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
4280 (gtk_type_set_chunk_alloc): new function to allow allocation of new
4281 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
4284 * gtk/gtkobject.c (gtk_object_finalize): free an object through
4287 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
4289 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
4290 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
4292 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
4294 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
4295 GPOINTER_TO_UINT fixes.
4297 * gtk/gtksignal.c: Include <string.h> for memset.
4299 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
4300 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
4302 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
4303 Cleanups, comments and the ability to have rulers with
4304 a reversed direction.
4306 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
4308 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
4309 that Sopwith missed when changing stat => lstat.
4311 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
4313 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
4314 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
4315 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
4317 * gdk/gdk.c: Print sizeof() results
4318 as g_print("%ld", (glong)sizeof(foo)), to deal with
4319 sizeof() being long on Alpha's.
4321 * gtk/testgtk.c: include <string.h> for strlen
4323 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
4324 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
4326 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
4327 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
4329 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
4331 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
4332 (From: Christopher James Lahey <clahey@umich.edu>)
4334 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
4337 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
4338 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
4339 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
4340 the default relief for the toolbars buttons. Added an
4341 toggle for the toolbar test in testgtk.c.
4343 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
4345 * docs/gtk-config.1: Rewritten and hopefully improved.
4347 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
4350 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
4352 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
4354 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
4355 GtkPreview's visual and colormap, otherwise things can BadMatch.
4357 * gtk/testgtk.c (create_color_preview):
4358 (create_gray_preview): Removed pushing/popping of visual/colormap
4359 now that GtkPreview does things correctly.
4361 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
4362 (gtk_color_selection_draw_wheel): Pick the style from the correct
4363 place (the colorsel->wheel_area widget) so that the GCs will match
4364 with where we are going to paint to.
4366 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
4367 of visual/colormap now that GtkColorSelection does things the
4370 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
4372 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
4373 previously unused window->need_resize flag to mark if a window's
4374 descendents changed size while the window was not visible. In this
4375 case, when the window becomes visible, we reallocate everything,
4376 since we didn't keep track of what actually changed.
4378 (Fixes bug where changing the popdown strings of a
4379 combo to something of the same length caused them to
4380 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
4382 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
4384 [security audit by Alan Cox]
4386 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
4387 exceed maximum assumed size.
4389 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
4390 not exceed maximum assumed size.
4391 (gtk_menu_factory_remove): likewise.
4392 (gtk_menu_factory_find_recurse): likewise.
4394 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
4396 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
4397 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
4398 redrawn if that is still neccessary. don't allow queueing of already
4400 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
4401 widgets which are in the queue can be destroyed safely, handle
4402 requeueing properly.
4403 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
4404 widgets which are in the queue can be destroyed/unrealized safely.
4406 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
4408 * gtkfaq.sgml: add question on multi-threading,
4411 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
4413 * configure.in (cflags_set): preserve automake CFLAGS.
4415 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
4416 and libgdk-1.1.la. this means we need to change certain portions of
4417 the Makefile.am on major/minor version bumps.
4419 * ltmain.sh: the -release option is not required anymore.
4421 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
4422 of the first argument to be of type GtkObject. unconditionally compile
4423 this function. removed __GNUC__ dependancy of the gtk_object_ref and
4424 gtk_object_unref macro wrappers for this function.
4426 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
4430 (gtk_object_data_try_key):
4431 (gtk_object_data_force_id): these are now macros substituting the old
4432 functions. we just use the corresponding g_dataset_* functions for
4433 key->id associations. (this is to assure unique key<->id associations).
4435 1998-05-10 Stefan Jeske <stefan@gtk.org>
4437 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
4440 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
4442 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
4444 * configure.in (LIBS): Try to figure out if this
4445 is Digital Unix and we need -std1 to get the
4448 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
4450 * docs/gtk_tut_it.sgml: update of Italian tutorial
4451 translation from Daniele Canazza <dcanazz@tin.it>
4453 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
4455 * gtk/gtkfeatures.h.in: new file used as template for
4456 * gtk/gtkfeatures.h: new file to define macros indicating newly
4457 introduced features, such as GTK_HAVE_SIGNAL_INIT.
4460 (gtk_signal_emitv_by_name):
4462 new functions to emit signals with an already provided parameter set.
4463 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
4464 (gtk_signal_real_emit): prototype changes, so this functions always
4465 gets its parameters and signal structure as arguments.
4466 (gtk_signal_emit): provide the signal structure and parameter list for
4467 gtk_signal_real_emit.
4468 (gtk_signal_emit_by_name): likewise.
4470 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
4472 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
4473 signal connections through unsetting GTK_CONNECTED.
4474 (gtk_signal_handler_insert): reflect the presence of signal connections
4475 through setting GTK_CONNECTED.
4476 (gtk_signal_real_emit): only check for handler emissions if the object
4477 has the GTK_CONNECTED flag set.
4478 (gtk_signal_handler_pending): don't check for pending handlers if the
4479 GTK_CONNECTED flag is not set for this object.
4481 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
4482 a GtkObject has signal handler connections.
4484 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
4485 set for this object call gtk_signal_handlers_destroy().
4487 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
4488 multiple processing of macro args.
4490 * gtk/gtktypeutils.c:
4493 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
4495 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
4497 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
4498 draw-queue when we are done.
4500 (gtk_widget_queue_draw/_queu_resize): Always return
4501 FALSE and avoid having two idles at the same time.
4503 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
4505 * gtk/gtktext.c: Various fixes to make sure cache
4506 lines are freed if line_start_cache doesn't point to the
4507 beginning of the cache.
4509 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
4511 * style_set improvements for GtkText and GtkEntry
4513 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
4515 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
4518 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
4520 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
4521 data chunks through a global object data structure list. unlink
4522 object data before invoking its destroy function.
4523 (gtk_object_finalize): slight modification to allow usage of object
4524 data during object finalization.
4526 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
4528 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
4529 signal names, e.g. "signal-name" is now an alias for "signal_name".
4530 (gtk_signal_handler_new): allocate handlers through a global handler
4531 structure list, that's faster than memchunks.
4532 (gtk_emission_new): allocate emissions through a global emission
4533 structure list, that's faster than memchunks.
4535 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
4537 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
4539 * ltmain.sh: added a new commandline flag -postfix similar to -release,
4540 but will immediately change the library name.
4543 * gtk/Makefile.am: specify -postfix and -version-info
4545 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
4546 GTK_BINARY_AGE. calculate LT_* variables for libtool.
4548 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
4550 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
4551 background (fg_set -> bg_set confusion).
4553 1998-05-06 Stefan Jeske <stefan@gtk.org>
4555 * gtk/testgtk.c (unselect_all): Removed code that caused an
4558 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
4560 * gtk/gtksignal.c: reimplemented the signal storage system to use a
4561 linear array rather than a hash table.
4562 be carefull *not* to keep any GtkSignal pointers across invokations
4563 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
4564 general code cleanups, made all allocations through memchunks.
4565 (gtk_signal_lookup): we now do the lookup of signals through a key_id
4566 for the signal names to avoid multiple hashing of the signal name on
4567 lookups for the several hirarchy levels of an object.
4569 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
4571 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
4572 to speed things up and remove code duplication.
4574 Reintegrated buffer overflow patches, and added
4575 some extra paranoia.
4577 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
4579 * gdk/gdk.c (gdk_event_translate): A guint * was
4580 being passed where X expected a Keysym *, and
4581 keysyms are long's on Alpha Linux. This was causing
4582 segfaults in Xlib, apparently because of alignment.
4583 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
4585 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
4587 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
4588 set GDK_EXPOSURE_MASK for DrawingAreas
4590 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
4592 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
4593 (superceded by RC file reparsing capabilities)
4595 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
4596 events. (Shouldn't be sent to the InputOnly leader, which
4597 it is now by gdk_event_send_clientmessage_toall
4599 * gtk/testgtk.c: Added extra button to rcfiles test
4600 to send out _GDK_READ_RCFILES events.
4602 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
4604 * gtk/gtkselection.c (gtk_selection_clear): Fixed
4605 reversed conditionals that caused segfault on some
4608 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
4610 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
4611 cast to GTK_OBJECT for gtk_object_ref.
4613 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
4615 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
4616 checking for signal initialization in gtksignal.c.
4618 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
4619 a long debugging period ;)
4621 1998-05-05 Stefan Jeske <stefan@gtk.org>
4623 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
4624 New function to wrap XSetDashes; modified gtkctree.c to use it.
4626 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
4628 * configure.in: Added $x_libs in the other_libraries field in the
4629 check for XShapeCombineMask.
4631 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
4633 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
4635 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
4636 linear array rather than a hash table. it actually speeded up testgtk
4637 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
4638 pointers across invokations of gtk_type_node_next_and_invalidate() and
4639 therefore gtk_type_unique()!
4641 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
4642 inheritance of a class pointer.
4643 (GTK_OBJECT): modifications for speedups.
4644 (GTK_IS_OBJECT): likewise.
4645 (GTK_OBJECT_CLASS): likewise.
4646 (suggested by owen).
4648 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
4650 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
4652 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
4653 since its derivation changed 4 month ago ;(. showed up with the unique
4654 type name checking code in gtk_type_unique().
4656 * random guint->GtkType and macro fixups.
4658 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
4660 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
4661 Configure events that would result in a negative
4664 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
4666 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
4667 "glibconfig.h" and another about writing another IRC
4670 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
4672 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
4673 parameters to log are doubles. Digital Unix apparently
4674 is missing the argument in its prototype.
4676 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
4678 * gtk/gtklabel.c (gtk_label_state_changed): Don't
4679 force a clear until the widget is actually on
4682 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
4684 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
4685 to make this consistent with the gtk-1-0 tree.
4687 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
4689 * configure.in acheader.h gdk/gdkwindow.c
4690 Check for Shape extension both on the client and server
4691 side. (And, more importantly, check for the shape extension
4692 so we may include -lXext even when compiling with --disable-xshm)
4694 Don't set override_redirect on all shaped windows. It isn't
4697 * gdk/gdkwindow.c: Set ->colormap to NULL for root
4698 and foreign windows. Use this to check if we
4699 need to get the colormap from X.
4701 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
4703 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
4704 between the default and the button always in GTK_STATE_NORMAL.
4706 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
4709 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
4711 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
4712 Fix a buffer overflow on pixmaps that claim to have
4713 more than 31 characters per pixel.
4715 (gdk_pixmap_read_string): Don't wrap around strings longer
4716 than half of address space ;-)
4718 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
4719 that were used for printing integers.
4726 int foo (void) { ... }
4728 Even where there were proper prototypes elsewhere.
4730 * gdk/gxid.c (handle_claim_device): Some extra checks.
4731 It isn't safe against being fed bad X id's, but at
4732 least it should be safe against deleting all your
4735 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
4737 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
4738 to set the adjustments value when there is no current emission.
4739 [ Removed by mutual agreement owt 5/3/1998 ]
4741 * gtk/gtksignal.c: added new functions to retrive the number of
4742 existing emissions for a certain signal.
4743 (gtk_signal_n_emissions): new function.
4744 (gtk_signal_n_emissions_by_name): new function.
4746 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
4748 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
4749 set the current focus_child of a container, does proper referencing and
4750 adjusts the vadjustment/hadjustment associated with the focus widget.
4752 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
4753 containers via gtk_container_set_focus_child.
4755 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
4758 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
4759 child since not every child removal goes through this function (this
4760 showed up after gtk_container_set_focus_child() started to reference the
4761 focus_child of a container).
4763 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
4764 of a container from gtk_container_remove into this place.
4766 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
4768 * gtk/gtksignal.c: added new functions to operate on intermediate
4769 function pointers. implemented incremental blocking.
4770 (gtk_signal_disconnect_by_func): new function.
4771 (gtk_signal_handler_block_by_func): new function.
4772 (gtk_signal_handler_unblock_by_func): new function
4774 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
4776 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
4777 Always show the scrollbars when the policy is
4778 GTK_POLICY_ALWAYS...
4780 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
4782 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
4783 "value_changed" if we really passed a new value.
4784 (gtk_adjustment_changed): new function to emit the "changed" signal.
4785 (gtk_adjustment_set_value): new function to emit the "value_changed"
4788 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
4790 * gtk/gtkcombo.c: Further changes to the way the window
4791 is popped up so that it will be compatible with
4792 auto-scrolling in the future.
4794 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
4796 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
4797 the combo-list is empty since that will cause the combo to operate
4798 on a non existing GtkList window.
4799 (gtk_combo_get_pos): provide the combo list with a usfull default
4801 (gtk_combo_popup_button_press): grab the focus.
4802 (gtk_combo_activate): grab the focus.
4804 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
4806 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
4807 function to reset the RC styles for a heirarchy
4809 Clear the window background if necessary in
4810 gtk_window_style_set.
4812 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
4813 rereads all previously read RC files.
4815 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
4816 (Should it just be called gdk_get_toplevels?)
4818 * gtk/testgtk.c: New test to reload RC files.
4820 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
4823 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
4824 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
4825 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
4826 the GTK_ prefix (this solution involved less changes in the
4827 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
4828 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
4829 from lars & stefan to support the derivation of GtkCtree.
4833 initial import of a tree widget derived from gtkclist, courtesy
4834 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
4837 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
4839 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
4841 (gtk_list_insert_items):
4842 (gtk_list_remove_items_internal):
4843 (gtk_list_clear_items):
4844 remove a possible pointer grab, we might get thrown into a loop
4846 (gtk_list_button_press): grab the pointer *before* selecting the child,
4847 because selection of items may cause the lists children to change,
4848 resulting in a grab release.
4849 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
4851 (gtk_list_shutdown): remove all children from the list.
4852 (gtk_real_list_unselect_child):
4853 (gtk_real_list_select_child): *always* put our internal structures into
4854 sane state *before* signal emisions (i.e. list->selection updates prior
4855 to gtk_list_item_[de]select() calls).
4857 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
4858 focused child walks out of the window.
4859 removed CAN_FOCUS for the combo arrow's button since it doesn't react
4860 to keyboard events ("clicked" connection is missing).
4862 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
4864 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
4865 getting colormap for FOREIGN windows to go along with
4866 Raster's fix for visuals.
4871 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
4873 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
4874 Check to catch the case when the viewport fits in either
4875 direction or both, instead of flip-flopping infinitely.
4877 Only show/hide the scrollbars once at the end.
4879 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
4881 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
4882 Include the scrollbars in the foreach call.
4883 (gtk-fortier-980405-0.patch;
4884 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
4887 really should also include its tabs, but that might cause
4888 problems for programs if they
4890 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
4892 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
4893 resize if the size actually changed.
4894 (gtk-johannes-980414-0.patch ;
4895 johannes@nada.kth.se (Johannes Keukelaar) )
4897 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
4899 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
4900 ltmain.sh ltconfig config.sub config.guess:
4902 Reverted back to libtool-1.2 (plus minor patches) so as not to
4903 force the issue for everyone else.
4905 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
4907 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
4908 Updated to libtool 1.2a.
4910 * gtk/gtkclist.c: Draw the in-between lines with style->base
4911 instead of style->white.
4913 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
4915 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
4916 Cache the colormap and children of a window locally
4917 instead of fetching them from the server when needed.
4918 Huge performance difference for creating/destroying
4921 * gtk/gtkstyle.c: Find the depth from the cached
4922 visual, instead of asking the server.
4924 * gtk.m4: Distribute the new version which tries to
4925 figure out what went wrong and give helpful error
4928 * ltmain.sh ltconfig config.sub config.sh:
4929 Updated to libtool 1.2a
4931 * gtk/gtktext.c: Fixed a bug where the drawn level
4932 was being messed up when the text was scrolled
4935 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
4937 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
4938 the filesystem under you (fix from Josh)
4940 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
4942 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
4943 if the viewport already exists before iterating over it, maybe we
4944 haven't been constructed yet.
4946 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
4948 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
4949 the GtkBin widget already has a child.
4951 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
4952 check that child->parent == NULL;
4954 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
4956 * gtk/gtkselection.c (gtk_selection_clear): Only return
4957 FALSE when the clear event is been rejected, not when
4958 widget has already lost the selection. (Which should
4959 only happen when we are setting the selection to another
4962 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
4964 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
4966 Removed the "check visibility after gtk_widget_unparent" bug
4967 in hopefully the last three places.
4969 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
4971 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
4974 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
4976 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
4977 for CAN_FOCUS widgets.
4979 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
4980 adjustments for the table.
4981 (create_list): feature automatic adjustment of the scrolled window to
4982 always contain the focused child.
4983 (create_main_window): keep the focussed button always inside of the
4986 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
4987 adjustments, to contain the allocation of the currently focused child.
4988 (gtk_container_set_focus_hadjustment): new functin to set the
4989 horizontal focus adjustment.
4990 (gtk_container_set_focus_vadjustment): new functin to set the vertical
4993 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
4994 clamp the currents adjustment page into a specific range.
4996 * random GtkType fixups for gtk_*_get_type() functions.
4998 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
5000 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
5001 Account for the fact that gtk_tree_item_remove_subtree
5002 will be called recursively.
5004 Handle removing a collapsed subtree.
5006 (From Andy Dustman <adustman@comstar.net>)
5008 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
5009 root tree when removing items from a non-previously
5012 * gtk/testgtk.c: Added a remove_subtree button.
5014 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
5016 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
5017 before object removing data. This change fixes a bug where
5018 removing the last weak references would cause it to be
5021 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5023 * gdk/Makefile.am: Removed mostly useless dependency that
5024 was causing problems for SGI's make, when used with
5025 the 'make dist' form of GTK+. (Dependency caused dependencies
5026 to be redone when BUILT_SOURCES changed)
5028 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
5030 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
5033 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
5034 to gtkitem.c so dragging can also work in lists.
5036 * gtk/gtklist.[ch]: Track child enter events and use
5037 those to allow dragging the selection.
5039 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
5041 * gtk/gtktext.c: Try enabling background pixmaps for editable text
5042 widgets. There is a bit of flashing, but not too bad. If you
5043 don't want the flashing, you can always not set a background
5046 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5048 * gtk/gtktext.c: Fixed a bug where the drawn level
5049 was being messed up when the text was scrolled
5052 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
5054 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
5055 bug: There is no need to set the ExposureMask in the XGrabPointer
5056 (this caused DnD programs to crash).
5058 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
5060 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
5061 field to be of type guint.
5062 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
5064 (gtk_accelerator_table_install): keep a per object list of accelerator
5065 tables that refer to this object.
5066 (gtk_accelerator_table_remove): remove the accelerator table from the
5068 (gtk_accelerator_table_clean): warn if there are any object references
5069 left in an accelerator table upon destruction.
5070 (gtk_accelerator_tables_delete): new function to delete object
5071 references from the accelerator tables associated with this object.
5073 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
5074 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
5075 of an accelerator can be prevented by gtk_signal_emit_stop().
5076 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
5077 so there are no stale pointers in accelerator tables left.
5079 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
5081 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
5082 visible before we unparent it.
5084 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
5086 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
5087 running_timeouts list with the tmp_list link itself, not with a new
5088 GList structure pointing to our link. that would fill up memory and
5089 causes the GList.data fields of the running_timeouts list to point to
5090 GList structures and not GtkTimeoutFunction structures which is a
5092 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
5095 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
5097 * gtk/gtkradiomenuitem.h:
5098 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
5099 ala gtk_radio_button_set_group.
5100 (gtk_radio_menu_item_init): assure that we always have at least a group
5101 that points to self.
5103 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
5104 added g_return_if_fail() statements.
5105 (gtk_radio_button_init): assure that we always have at least a group
5106 that points to self.
5108 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
5110 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
5112 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
5114 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
5115 (Damon Chaplin), which i got wrong when applying Damon's patch the last
5118 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5120 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
5121 that when we are running with a non-installed colormap,
5122 in 8-bit pseudo-color, we actually are using the system
5123 visual. (Fixes *Bad Match* errors on Digital Unix machines
5124 with multiple 8-bit pseudo-color visuals)
5126 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
5128 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
5129 by whoever thought that randomly changing ints to unsigned int
5130 without reviewing the code was a good idea. It is, btw not
5131 mentioned in the ChangeLog as usual, but I know it was not Elliot
5132 the culprit this time.
5134 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5136 * Released GTK+ 1.0.0