1 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
3 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
4 if adjustments are NULL and list size has changed
5 (gtk_clist_size_request): return real list requsition,
6 if adjustments are NULL.
7 (size_allocate_columns): use button->requisition.with, if column
9 (list_requisition_width): new function. return full list width.
10 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
11 auto create adjustments.
12 (gtk_clist_motion) (move_vertical) (move_horizontal):
13 check adjustment != NULL.
15 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
17 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
18 a clear/redraw, not just a redraw, so the focus
19 gets undrawn properly.
21 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
22 Chain to gtk_widget_unrealize() instead of duplicating
25 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
27 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
28 last vestiges of old DND.
30 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
32 * gtk/gtkentry.c: Restored inner border to entries,
33 erase cursors to background image.
35 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
37 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
38 it was identical to paint_flat_box().
40 * gtk/gtkstyle.c: Coding style fixups.
42 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
45 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
46 Change 'side' for paint_[box/shadow]_gap and paint_extension
47 to be GtkPositionType instead of a random int.
49 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
50 "frame" as detail - an aspectframe should draw identical
53 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
55 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
56 from combine_child_shapes().
58 * gdk/gdkwindow.c: Merge propagate_shapes() and
59 propagate_combine_shapes() to remove code duplication.
61 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
63 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
64 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
65 So allocate some mem if it's not already done.
67 * clist scrollbar merges from HEAD
69 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
71 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
73 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
74 of 0x80000000, so we stay within the bounds of a postive signed
75 int (it broke some compilers)
78 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
79 when some of the menuitems are hidden
81 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
84 * gtk/gtkwidget.c: add a dummy continue after the line label
85 next_rect, since some compilers don't like label: }
87 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
89 * Okay, so we need the X11R6 keysyms so programs don't have to
90 worry about them. They don't conflict anyway. Reverted the #ifdef
93 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
94 special rule for them (X-derived-headers)
96 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
98 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
99 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
100 portable, and we really shouldn't be using awk anyway.
103 * makekeysyms.awk: bye bye
105 * gtk/gtkaccelgroup.c
108 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
110 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
112 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
113 and gdkkeysyms.h. Remove those files from CVS.
115 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
117 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
118 of the USE_XIM #ifdef
120 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
121 even with --include-deps. Slightly different from timj's fix, to avoid
122 circular dependency with gtkmarshal.c
127 * gtk/gtkfontsel.[ch]
131 * gtk/testgtk.c: merges from HEAD
134 * gtk/gtkradiomenuitem.c
135 * gtk/gtktreeitem.c: cleanups
137 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
139 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
141 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
143 * configure.in: AIX has libpthreads, to make sure you can have
144 more than one thread. Also add -D_THREAD_SAFE, and reorder
145 configure.in so CFLAGS doesn't get clobbered when we actually
148 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
151 * gtk/testdnd.c: removed unused variable "buf"
153 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
155 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
156 remove_link(), not remove()
158 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
160 * gdk/gdkrgb.c: use glib endian stuff
162 * configure.in: don't need to check for endianness anymore
164 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
166 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
168 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
169 all toplevel widgets, not toplevel windows. (I.e.,
170 plugs should be reset)
172 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
173 _do_ need to notify the other toplevels - by the time
174 the get the client messages, the RC file dates will
177 * gtk/gtkcontainer.h: Added a function call to list
178 every toplevel widget.
180 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
181 Don't send client messages to _every_ window on display!
183 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
185 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
186 when dragging across widgets, only in drags
189 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
191 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
192 Emit "drag_end" signal at end of drag.
194 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
196 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
197 for "gtk-embedded" data currently set by
198 GtkSocket, and use that to forward client message
199 on to embedded windows. Only reset our own toplevel -
200 the others will handle themselves. (Now that
201 GtkMenus live in GtkWindows)
203 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
205 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
206 client window finding code so that it works with
207 WM's other than fvwm.
209 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
211 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
212 the "GtkDrawWindow" class, which is a descendent
213 of the Window class which leaves its background alone.
214 Essentially, a toplevel drawing area, though it does
215 allow adding a child.
217 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
219 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
220 merging RC styles. Report new share/themes path for
221 themes directory. Deref theme engines when appropriate.
223 * gtk/gtkclist.c: Set all backgrounds in _style_set().
224 Make sure that pixel for xor_gc is never 0.
226 * gtk/gtkctree.c: Choose colors for plus/minus more
227 carefully, in a hopefully style-independent fashion.
228 (Still needs a bit more work)
230 * gtk/gtkwidget.c: Don't send expose events to widgets
231 which are about to be resized and redrawn. (Needs a
234 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
235 drawing on tabs for newly allocated, un-sized
236 pages - we'll get the size wrong.
238 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
240 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
241 up stupidities in last commit.
243 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
245 * gtk/gtkwidget.c: When handling queued resizes, account
246 for handleboxes, where the widget heirarchy is different
247 than the window heirarchy by just queueing a resize on
248 the entire handlebox if the detached child is changed.
250 - Remove widgets from the redraw queue when reparenting,
251 even if not unrealizing. We queue a resize/redraw in
254 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
255 * gtk/gtkstyle.c: added check to see if the widget has been shaped
256 byt the app via gtk_widget_shape_combine_mask and if it has does
257 not reset the shape on theme change.
259 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
261 * gtk/gtkfilesel.c: Keep a list of directories in which we never
262 want to stat the entries (like /afs), and assume everything in
263 those directories is a subdirectory.
265 - When following a path, try to open components even when
266 we don't find them in their parent's directory to
267 support automounters.
269 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
271 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
272 now at least compiles again.
274 * gdk/gdk.c (gdk_event_translate): Don't pass events
275 on destroyed widgets to the gdk_input layer.
277 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
279 * gtk/gtkthemes.c: Use g_module instead of dlopen()
281 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
283 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
284 if we've changed widgets since the expose event
287 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
289 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
290 to restore approximate bin compatibility with the
291 non-themes branch. (This does break bin compat
292 within the themes branch.)
294 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
296 * gtk/gtklabel.c (gtk_label_set): Eliminate a
297 gdk_window_clear_area() that snuck in with the
298 menu underlines merge.
300 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
302 * gtk/gtktext.c: Fixed some remaining background drawing,
303 merges from main branch, cleanups.
305 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
307 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
308 dereference NULL focus tab.
310 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
311 functions since we need to both show/hide and
312 queue a redraw. (There's some duplication of drawing here,
313 we probably should only be queuing a redraw on the
314 "value" portion of the scale.)
316 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
318 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
319 into the theme-drawing framework. We do this by making them,
320 like check/radio-buttons, no-window widgets with subwindows. We
321 then move the value by calling gtk_widget_queue_clear() and only
322 redraw the value in our draw() / expose() handler. A virtual
323 function clear_background is added which queues a clear on the
324 "background" portion of the widget.
326 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
328 * gtk/gtktext.c (mark_bg_gc): Make background colors work
329 again. (We can't always paint the background with a
330 paint() function - only do that for selected text)
332 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
334 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
335 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
337 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
338 the themes can't be built as part of the same build since
339 they depend on gdk_imlib.
341 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
343 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
346 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
349 - Upgrade to libtool-1.2b + patch to add shared library dependencies
350 for Linux. (Needs to be extended to other platforms where they
353 - Check for -ldl so this branch should build on all platforms, though
354 themes will work on all platforms they could work on.
356 - Use -version and -release simultaneously: sonames stay as they are
357 in the current scheme, but -lgtk-1.1 changes to -lgtk.
359 - Added in extra -l flags to library LDFLAGS so we get shared library
360 dependencies against X libs and -ldl. (But not libgtk against
361 libgdk or libglib yet, since dependencies against uninstalled
362 libraries aren't portable)
364 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
365 * gtkrc.c - added api calls to find module and theme paths from gtk.
366 nuked gtk_install_prefix global.
368 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
369 * fixed gtk_install_prefix global.
371 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
372 * added gtk_install_prefix global const variabel to find where gtk is
375 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
376 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
379 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
380 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
382 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
383 * Fixed minor problem in gtkhandlebox.c with drawing, and some
384 notebook stuff. Also pixmap theme is now "clean" again.
386 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
387 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
388 queued area resizing once more.
390 Mon Aug 10 23:09:30 EDT 1998
391 * Added a few drawing fixes for notebook and other widgets. finished
392 pixmap theme up to the level that can be supported so far. (need to
393 add path discovery 9ie where is the rc fiel from - add to pixmap
394 path so we can get theimages from there too). then we can package
395 themes. After that need to add to theme seartch path stuff in users
398 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
400 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
401 drawing area, draw in an expose handler.
403 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
406 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
408 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
409 creation of GC's so that they will be set before
410 they are used for map events (why are they used there?)
412 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
413 be queued in multiple times in the queue.
415 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
417 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
418 clip rects (or do anything) for shadow_none.
420 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
422 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
423 Yes, it was needed. draw() and expose() are _not_
426 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
427 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
429 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
430 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
431 more baby oooh yeah more more MORE YES YES.
433 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
434 * hopefully fixed problem wiht togglebuttons acting like
435 radiobuttons in gtktogglebutton.c
437 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
438 * fixed another drawing buglet in the frame drawing code (actually
439 in the clearing code but anyway in gtkstyle.c)
441 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
442 * Fixed warning from colorsel widget...
444 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
445 * Fixed defautl drawing code to no longer clobber the original style
446 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
449 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
451 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
453 * gtk/gtktooltips.c: Pass a widget (the window) to the
454 drawing function instead of the GtkTooltips.
456 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
458 * gdk/gdkwindow.c: Abstract out checking for shape
459 extension into a function.
461 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
462 Remove extra callls to gtk_window_draw().
464 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
466 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
468 * themes/th_main.c: Moved messages around so they are
469 printed before destroying strings.
471 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
473 * gdk/gdk.c: Fairly simple implementation of expose compression.
474 (No GraphicsExpose compression yet, always compress
475 with the equivalent of XtCompressMultiple - no compression
476 of Expose events across non-Expose events)
478 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
479 Find rectangle bounding two rectangles.
481 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
482 in gdk_default_draw_shadow()
484 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
485 * Fixed drawing functions to handle switching themes on the fly
486 gracefully and look decent.
488 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
489 * Added all the theme drawing code to all widgets, fixed up minor
490 nigglies in some widgets when it comes to themes, seem to be
491 running into some funky behavior with clipping rects in GC's. Too
492 many files to list here. (all files that now use gtk_paint_* are
495 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
497 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
498 Set up the demo theme so it is loaded from the RC file.
500 * themes/th_draw.c: Alleviate the hardcoded paths a wee
501 bit. (use $HOME/themes/)
503 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
504 the RC file via dlopen()
506 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
508 Internal handling of styles and RC styles pretty much
509 completely reworked for Theme work.
512 - Added routines for virtualization of RcStyle and Style handling.
513 - Temporary "sample" inline theme-engine. (Does nothing
514 but print out a few messages.
517 - Made GtkRcStyle public, added flags to tell if particular
518 colors have been set.
519 - RC Styles are "transparent", and the final style for
520 a widget is the composition of all matching styles
521 - Added pointer to GtkThemeEngine, and gpointer engine_data
522 to RC style and style.
523 - Parse "engine" keyword, load the appropriate theme engine
524 and call the engine's parser.
527 - Keep a GtkRcStyle * in styles created from Rc Styles.
528 - Load up images from RC file at style attachment time.
529 - Call ->engine->foo() at appropriate times.
530 - Don't use a GCache. All incarnations for a style are
531 just linked together in a list, depend on the RC style
532 code to find the existing copy.
534 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
536 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
537 of partial areas. This can be done either relative
538 to the existing windows (gtk_widget_queue_clear[_area]())
539 or relative to the future allocation of the widget
540 (gtk_widget_queue_draw[_area]).
542 The initial implementation is pretty braindead, but
545 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
546 in favor of gtk_widget_queue_clear().
548 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
549 flags in favor of gtk_widget_queue_clear()
551 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
553 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
554 handling of partially clipped areas.
556 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
558 * gtk/gtkclist.h (struct _GtkCListClass)
559 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
561 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
563 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
564 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
566 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
567 "hadjustment" & "vadjustment"
568 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
569 set/get_arg functions
570 (gtk_clist_construct): don't create/adjust scrollbars.
571 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
572 to set h/vadjustments
573 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
574 to query h/vadjustments
575 (create_scrollbars): removed.
576 (create_adjustments): replacement for create_scrollbars
577 (gtk_clist_new): call gtk_clist_new_with_titles
578 (gtk_clist_new_with_titles): don't warn on titles == NULL
579 (move_horizontal): use CLAMP instead
580 (gtk_clist_set_policy): deprecated method.
581 use gtk_scrolled_window_set_policy instead.
582 (vadjustment_value_changed): use clist->vadj.
583 (adjust_scrollbars): renamed to adjust_adjustments
584 (adjust_adjustments): former adjust_scrollbars
585 (gtk_clist_destroy): unref adjustments
586 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
587 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
588 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
589 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
590 (gtk_clist_set_row_height) (real_resize_column):
591 call adjust_adjustments
592 (gtk_clist_moveto): return if clist has no adjustments yet.
593 (gtk_clist_parent_set): new GtkWidget::parent_set function.
594 Autogenerate h/vadjustments if needed.
595 (move_horizontal) (move_vertical): some cleanups
597 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
598 call only gtk_viewport_set_h/vadjustment and let these functions
600 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
601 generate a new adjustment if needed
603 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
604 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
606 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
607 queue_resize if visibility of scrollbars changes
608 (gtk_scrolled_window_remove): only call container_remove with
609 scrolled_window->viewport automatically if viewport was autogenerated
610 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
611 auto create a viewport only if widget does not take h/vadjustments.
612 (gtk_scrolled_window_construct): don't generate a viewport
614 (gtk_scrolled_window_forall): call callback with viewport in any case
615 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
617 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
618 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
622 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
623 in conjunction with clists/ctrees
625 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
626 in conjunction with clists
628 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
629 in conjunction with clists
631 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
633 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
634 (gtk_ctree_remove_node): select focus_row if needed
635 (cell_size_request): only get pixmap size if pixmap != NULL
637 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
639 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
640 GTK_IS_WIDGET (widget):
642 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
644 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
645 focus_row after a remove_row call.
647 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
649 * gtk/gtkoptionmenu.c
650 * gtk/gtkmenushell.c: make option menus work when some of the
651 menuitems are hidden - previously, option menu would popup too
654 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
656 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
658 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
660 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
662 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
663 (GDK_WLIBS): New variable. Lists extra libraries needed to use
665 * gtk-config.in (--libs): List $GDK_WLIBS, too.
667 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
669 * Released GTK+ 1.1.3
675 * docs/gtk-config.1: updated for v1.1.3
679 * docs/Makefile.am: Includes new 'make release' as well as
680 'make sanity'. Also handles html and text creation from html,
681 and puts them into the distribution
683 * docs/Makefile.sgml: removed, similar functionality is now in
686 * docs/.cvsignore: ignore html and text directories
687 * docs/glib.texi: removed (now in glib dist)
689 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
691 * gtk/gtklist.c (gtk_list_remove_items_internal):
692 free undo_un/selection, unselect list_item before disconnect
694 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
696 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
697 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
698 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
699 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
700 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
701 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
702 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
703 new functions. These functions are signal connected to inserted
704 list_items, to handle key bindings and GtkItem::de/select/toggle
707 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
708 gtk_object_class_add_signals call.
709 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
710 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
711 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
712 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
713 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
714 removed. These functions are handled via connected
715 gtk_list_signal_* functions now
717 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
719 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
720 even with --include-deps:
721 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
723 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
725 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
726 gtk_object_data_set_destroy to fit the gtkobject.h API.
728 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
731 Added support for an extra 'base' filter which an application can
732 set to restrict the fonts available to the user (e.g. a terminal
733 program only wants the user to be able to select fixed-width fonts).
734 The type of font (bitmap/scalable/scaled bitmap) is now
735 also a part of the filter, so that an application can
736 request that only scalable fonts are shown.
737 There are new functions to set the base & user filters.
738 I've also stopped the up/down key press signals getting
739 to the clists since the font selection widget handles
740 them itself. It acted a bit strangely before.
742 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
744 * gtk/gtkmain.c (gtk_init): support an environment variable
745 GTK_MODULES= which takes a colon sperated list of module names
746 automatically loaded at gtk_init() startup.
748 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
750 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
752 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
754 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
757 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
759 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
762 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
764 * gtk/gtkfilesel.h: GtkType and macro fixups
765 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
766 for the file selection widget to try a completion on (set the
769 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
771 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
772 slight speed improvement and lessens code duplication.
774 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
776 * gtk/gtkdnd.c: Always send "drag_leave" to dests
777 without GTK_DEST_DEFAULT_MOTION.
779 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
781 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
782 on destroyed windows so we clear the XID table properly.
783 Finish up restructure of return value handling that
784 was half-done before.
786 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
788 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
789 the window tree more comprehensively, so that we find
790 client windows hidden under non-toplevels.
792 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
794 * gtk/gtkselection.c (gtk_selection_data_set):
795 Maintain the null-termintation guarantee, even when
796 data = NULL, length = 0. (Warn on data = NULL,
799 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
801 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
802 into function prototype for drag_data_received.
804 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
806 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
808 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
810 * gtk/gtkclist.c: rearranged some functions
811 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
813 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
814 (gtk_clist_set_border): deprecated function, use
815 gtk_clist_set_shadow_type instead.
816 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
817 (adjust_scrollbars): some cleanups
818 (select_row) (unselect_row): removed. replaced by equivalent
819 gtk_signal_emit calls
820 (add_style_data): removed, use gtk_clist_style_set instead
821 (gtk_clist_style_set): fill in size data, after style was set.
822 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
823 (gtk_clist_set_cell_style): auto_resize columns if needed
824 (column_auto_resize): resize column if needed for auto_resize
825 (real_clear): disable auto_resize while list destroy
826 (resize_column): removed
828 * gtk/gtkctree.c : (gtk_ctree_remove_node)
829 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
830 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
831 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
832 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
833 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
834 auto_resize columns if needed
835 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
836 (real_clear): disable auto_resize while processing the tree
838 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
841 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
843 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
844 typo - look for right atom on transfer failures.
846 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
848 * gtk/gtkwidget.c gtkmarshal.list: Change signal
849 for drag_data_get to match the use that was being
850 made of it everywhere else...
852 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
854 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
855 mechanism, that is used for the DND messages.
857 Removed all the old DND code.
859 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
860 get the visual of a given colormap.
862 * gtk/gtkcolorsel.c: Conversion to new DND, drag
865 * gdk/gdk.h gdk/gdkdnd.c: The low-level
866 X oriented portions of drag and drop protocols.
867 Sending and receiving client messages, and navigating
870 * gdk/gdkimage.c: added a gdk_flush() when destroying
871 SHM images to hopefully make it more likely that
872 X will gracefully handle the segment being destroyed.
874 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
877 * gtk/gtkeditable.[ch]: Updates for the selection handling
880 * gtk/gtkselection.[ch]: Added GtkTargetList, a
881 refcounted data structure for keeping track of lists
882 of GdkAtom + information. Removed selection_handler_add
883 in favor of a "drag_data_get" signal.
885 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
886 dependent) parts of the DND protocols, display of drag icons,
887 drag-under highlighting, and the "default handlers".
889 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
890 windows that are used for reliable pointer grabs and
891 selection handling in the DND code.
893 * gtk/testdnd.c: New test program for new DND. (Old
894 DND tests in testgtk still need to be converted.)
896 * gtk/testselection.c: Use the new selection API.
898 * docs/dnd_internals: Start at describing how
899 all the new code works inside.
901 * docs/Changes-1.2.txt: New file describing source-incompatible
904 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
906 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
909 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
910 to the XID table so we can receive events on it.
912 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
914 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
915 to get the timestamp from a generic event.
917 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
919 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
920 that safely adds additional events to a widget's event
921 mask, even if the widget has previously been realized.
922 (We can do this, but not remove events from the event
925 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
927 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
930 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
932 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
935 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
937 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
940 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
942 * gdk/gdk.c (gdk_event_translate): Removed printing
943 of unknown window lookup warnings. (Made it
944 a GDK_NOTE) - they happen in many circumstances.
946 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
948 * Call XFilterEvent() on events we get for unknown
949 windows, since it may be the window Xlib uses to
950 communicate with the IM.
951 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
953 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
955 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
958 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
960 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
961 message for return_value + GTK_RUN_FIRST.
963 1998-10-18 Martin Baulig <martin@home-of-linux.org>
965 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
966 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
968 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
970 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
971 styles of inserted row
972 (change_style): change style of focus_row
974 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
975 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
976 to set/get row/cell styles.
977 (gtk_clist_realize): attach row and cell style, allocate row colors.
978 (gtk_clist_unrealize): detach row and cell styles.
979 (get_cell_style): new function. get correct cell style.
980 (draw_cell_pixmap): new function.
981 (draw_row): draw cells with row or cell styles.
982 (row_new): set cell and row styles to NULL.
983 (row_delete): detach & unref cell and row styles.
985 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
986 new functions to attach/detach styles and allocate colors.
987 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
988 styles of invisible nodes.
989 (draw_cell_pixmap): new function.
990 (get_cell_style): new function. get correct cell style.
991 (gtk_ctree_draw_expander): new function. draw tree expander.
992 (gtk_ctree_draw_lines): new function.draw tree lines.
993 (draw_row): draw cells with row or cell styles.
994 (row_new): set cell and row styles to NULL.
995 (row_delete): detach & unref cell and row styles.
996 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
997 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
998 Analogons of GtkCList functions
999 (gtk_ctree_set_spacing): new function. set spacing between
1000 tree expander and cell contents
1001 (gtk_ctree_set_expander_style): new function. set expander style
1003 (ctree_is_hot_spot): few changes due to draw_row modifications.
1005 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
1007 * gtk/gtkcombo.c: try completion on MOD1-TAB.
1008 Handle case when the combo->list is empty.
1010 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
1012 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
1013 handlers that have not yet been disconnected (finally managed to
1014 trigger the gtk_signal_handler_unref() paranoid warning).
1016 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1018 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
1019 width and height which is -1 and not -2.
1021 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
1024 * autogen.sh: we need libtool 1.2b now
1026 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1028 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
1029 and bottom attach arguments as mandatory and readjust the table size
1030 and opposing edge accordingly if required. this way the order in which
1031 the arguments are set doesn't matter.
1033 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
1035 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
1036 message to print out parent class name correctly.
1038 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
1042 removed functions gtk_object_set_data_destroy and
1043 gtk_object_set_data_destroy_by_id.
1044 added functions gtk_object_remove_no_notify and
1045 gtk_object_remove_no_notify_by_id which will remove a certain data
1046 portion without invokation of its destroy notifier, this should only
1047 be used in very controled circumstances.
1049 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
1051 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
1052 size_allocate_title_buttons call
1053 (gtk_clist_realize): changed initial column.window position
1055 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
1057 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
1059 * gtk/gtkctree.c (create_xor_gc): removed
1060 (gtk_ctree_button_press): set correct line_attributes for
1061 clist->xor_gc on drag start
1062 (gtk_ctree_button_release): reset clist->xor_gc
1064 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
1067 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
1068 which were in place to fixup emacs' cc-mode indentation.
1069 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
1070 proper way to achive this and doesn't produce problems for
1071 stupid pragma-related compiler bugs. ;)
1073 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
1075 * gtk/gtkclist.h: new signal GtkCList::resize_column.
1076 * gtk/gtkclist.c (draw_row): don't draw invisible columns
1077 (size_allocate_title_buttons) (size_allocate_columns):
1078 skip invisible columns
1079 (new_column_width): take min/max_width into account
1080 (gtk_clist_button_release) (gtk_clist_motion):
1081 changes due to changed new_column_width function
1082 (LIST_WIDTH): changed define to inline function.
1083 (real_resize_column): class function for resize_column signal
1084 (gtk_clist_motion): fixed autoscrolling for column resizes
1085 (gtk_clist_set_column_visibility): don't hide last visible column,
1086 changed visible arg to gboolean
1087 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
1088 new functions : set min/max width of a column
1089 (gtk_clist_set_column_resizeable): new function : enable/disable
1090 column resize operations by mouse
1092 * gtk/gtkctree.c (draw_row): don't draw invisible columns
1093 (ctree_is_hot_spot): return FALSE if tree_column is invisible
1094 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
1095 tree_column is invisible
1096 (gtk_ctree_find_all_by_row_data)
1097 (gtk_ctree_find_all_by_row_data_custom): new function from
1098 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
1099 GtkCTreeNodes with row->data == data.
1101 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
1103 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
1104 memory (Martin Pool <mbp@wistful.humbug.org.au>).
1106 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
1108 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
1109 should have been guint32. Thanks to Tristan Colgate for finding it.
1111 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1113 * gtk/gtkcalendar.h:
1114 gtk/gtkcalendar.c: More changes:
1115 - The day with focus is now seperated from the day selected
1116 - The day with focus has the xor's line around it
1117 - The selected day is now standard selected style
1118 - The week names and week numbers are now also drawn
1120 - Space now selects the day which has focus
1122 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1124 * gtk/gtkcalendar.h:
1125 gtk/gtkcalendar.c: Some significant changes, including:
1126 - No longer draw focus around entire widget, only around
1127 the day which has focus
1128 - Draw relief around entire widget like originally planned
1129 - Show header and day names by default
1130 - Move data private to the widget out of GtkCalendar struct
1131 and only point to it with a gpointer
1132 - Remove some old unused variables from GtkCalendar struct
1134 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
1136 * docs/gtk_tut.sgml: update I've had sat around:
1137 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
1138 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
1139 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
1141 1998-10-01 Martin Baulig <martin@home-of-linux.org>
1143 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
1145 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
1146 Makes it possible to individually show and hide columns.
1147 (size_allocate_columns): Adapted to keep track of hidden columns.
1148 (size_allocate_title_buttons): Likewise.
1150 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
1152 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
1153 fundamental types, collect an argument of the type returned from
1154 gtk_type_get_varargs_type(). removed the first macro argument which
1155 was just the same as the fundamental type of the *arg passed to
1157 * gtk/gtkarg.c (gtk_args_collect):
1158 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
1160 * gtk/gtktypeutils.h:
1161 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
1162 gtk_type_get_varargs_type() to set and query the varargs collect
1163 type used for a fundamental type, registered outside of Gtk.
1165 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
1166 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
1169 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
1170 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
1173 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
1175 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
1176 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
1177 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
1179 (real_tree_expand) (real_tree_collapse):
1180 don't expand/collapse a leaf
1182 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
1184 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
1185 segfault when looking up a non-existant value name (reported by
1186 Pablo <pcj+gtk@primenet.com>).
1188 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
1190 * gtk/gtkclist.h (gtk_clist_prepend):
1191 * gtk/gtkclist.c (gtk_clist_prepend): new function.
1192 (gtk_clist_insert): added g_return_val_if_fail()
1193 statements. accept a row parameter < 0 or > clist->rows to indicate
1195 (real_clear): first clean up all internal pointers and lists (e.g.
1196 clist->row_list or clist->rows), then delete the distinct rows. this
1197 is required because of destroy notifiers, we need to have all internal
1198 structures updated and be reentrant.
1200 * gtk/gtkcalendar.h:
1201 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
1202 GtkCalendarClass signal methods.
1203 GtkType and macro fixups, put `void' into () prototypes, avoid C++
1204 style comments, indentation fixes, fixed some g_return_if_fail()
1206 (gtk_calendar_paint_header):
1207 (gtk_calendar_paint_day_names):
1208 (gtk_calendar_paint_week_numbers):
1209 (gtk_calendar_paint_main): made these static functions.
1210 (gtk_calendar_select_month):
1211 (gtk_calendar_select_day):
1212 (gtk_calendar_mark_day):
1213 (gtk_calendar_unmark_day):
1214 (gtk_calendar_get_date): signedness corrections, use guints
1216 (gtk_calendar_size_request): removed unused variables.
1218 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
1220 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
1221 widgets in the ->widgets_by_action list that have a callback
1222 defined (not only those with a callback_action!=0).
1224 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1226 * gtk/gtkcalendar.h:
1228 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
1230 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1232 * gtk/gtkcalendar.h:
1234 examples/calendar: Added gtkcalendar widget and demo
1236 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
1238 * gtk/gtkclist.c (gtk_clist_sort):
1240 (gtk_clist_unselect_all):
1241 (gtk_clist_select_all): adde g_return_if_fail() statements.
1243 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
1245 * configure.in: set binary age and interface age to 0.
1247 * gtk/gtkspinbutton.h:
1248 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
1249 gtk_spin_button_configure. gtk_spin_button_construct is still defined
1250 as an alias for gtk_spin_button_configure for source compatibility,
1251 but actuall use is deprecated.
1252 typeness corrections, i.e. gint->gboolean and gint->guint.
1253 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
1254 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
1255 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
1256 GtkSpinButton::adjustment, GtkSpinButton::digits and
1257 GtkSpinButton::climb_rate.
1258 GtkType and macro fixups.
1260 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
1262 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
1263 the *real* geometry position of a window, taken possible window
1264 manager offsets into account.
1265 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
1266 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
1267 it does fail though for amiwm which adds windows to a pseudo root
1268 window, and for icewm by a small offset because it defines the
1269 geometry position whithin its border.
1271 * gtk/testgtk.c: added "saved position" test to figure how
1272 gdk_window_get_root_origin() interacts with window managers (repopup
1273 this window to figure ;).
1275 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
1277 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
1282 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
1283 existing code was buggy in letting ->ref_count==0 pass through and
1284 then failing the living_objs_ht assertion).
1286 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
1287 pixtext fields (Roman Pozlevich <roma@botik.ru>).
1289 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1291 * Released GTK+ 1.1.2
1293 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
1295 * gtk/Makefile.am: use $(PERL) instead of perl
1296 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
1297 also much faster to render.
1299 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
1301 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
1302 the required memory block, rather than allocating it newly from
1303 scratch and doing a full-blown block copy on it.
1305 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
1307 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
1308 binary age 0, interface age 0.
1310 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
1312 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
1314 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
1317 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
1319 * HACKING: indent other than GNU indent should be OK
1322 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
1323 instead of piping through indent. If indent wasn't
1324 found in ./configure don't bother indenting at
1327 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
1329 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
1331 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
1333 * gtk/Makefile.am: use $(AWK) instead of awk
1335 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
1337 * gtk/Makefile.am (gdk_headers):
1338 Remove references to $(top_srcdir).
1339 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
1340 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
1342 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
1344 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
1345 GData*object_data to cure compiler warnings.
1347 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
1351 * mkinstalldirs: updated to latest automake version
1353 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
1355 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
1356 (gtkinclude_HEADERS): ... here.
1357 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
1359 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
1361 * HACKING: added GNU indent, as it is now required to successfully
1362 build gtk+. Should this be detected in autoconf, possibly?
1364 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
1366 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
1367 change library versioning scheme to drop LT_RELEASE
1368 from the -l line, while keeping it in the soname.
1370 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
1372 * configure.in Makefile.in: define a MAINT-like variable REBUILD
1373 which is set if Perl and awk are found, and autogenerated sources
1374 can be rebuilt. Remove the auto-generated sources from
1377 Add dependencies so that the autogenerated sources are
1378 rebuilt if the files they depend on change.
1379 (This unfortunately currently results in the entire
1380 gtk/ directory being rebuilt when any header changes.
1381 Moving all enums to gtkenums.h would fix this.)
1383 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
1385 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
1386 gtk_object_set_data_destroy_by_id functions to set the destroy
1387 function pointer for an existing data portion.
1389 * gtk/gtkobject.c: removed the GtkObjectData implementation and
1390 made all gtk_object_*data* functions use the GLib equivalents.
1392 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
1394 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
1395 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
1396 (widget != NULL), otherwise radio button insertion will not work
1397 -- the widget argument is NULL for the first radio button in the
1400 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
1402 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
1403 of g_new to malloc(), added back in the one place where
1404 it actually mattered. #include <stdlib.h>.
1406 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
1408 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1410 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1411 want to stat the entries (like /afs), and assume everything in
1412 those directories is a subdirectory.
1414 - When following a path, try to open components even when
1415 we don't find them in their parent's directory to
1416 support automounters.
1418 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
1420 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
1421 a new size from the WM if we asked for the same size
1422 before and our request was rejected.
1424 * gtk/gtkwindow.c (gtk_window_configure_event): If
1425 in response to a request, we get a configure event
1426 with unchanged dimensions, send a synthetic expose
1427 since ForgetGravity won't expose our window.
1429 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
1431 * gtk/gtktext.c (adjust_adj): Change the way we
1432 set the adjustments on resize so that it tries to
1433 keep the beginning of the text in approximately
1436 Removed assertion that the above change made invalid.
1438 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
1440 * gtk/gtktext.c: - Save first_cut_pixels when switching
1441 sizes, so that if we switch to the _same_ size,
1442 we don't move lines around.
1444 - Make sure that the text area always has a size of at
1445 least 1x1, then do all computations when realized.
1447 - When fetching lines in recompute_geometry, make
1448 sure we fetch enough lines to cover the screen.
1450 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1452 * gdk/gdkimage.c: changed g_new()s to malloc()s and
1453 g_free()s to free()s to avoid mixing g_new()s with
1454 free()s. X itself uses free() on some of the
1457 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
1459 * gtkfilesel.c: Maintain a list of directories like
1460 /afs we know contain only directories, and avoid
1461 stat'ing files in those directories. (Because
1462 stat'ing all files in /afs is extremely expensive)
1464 To support automounters, try to open directories,
1465 even if we couldn't find them when reading their
1468 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
1470 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
1471 to allow the same gtk.m4 to work for 1.0.x and
1474 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
1476 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
1477 to set/unset the selectable flag of a single row.
1478 (gtk_clist_get_selectable): new function
1479 to get the state of the selectable flag
1481 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
1482 (gtk_ctree_node_get_selectable): clist analogons
1484 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
1486 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
1489 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
1490 bugs in the 4bit gray cases.
1492 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
1494 * configure.in: added -posix check for NeXTStep
1496 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
1497 a unique buffer for each thread.
1499 * docs/gtk-config.1: clarified copyright
1501 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
1503 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
1505 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
1507 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
1510 * ltconfig: use GLib's ltconfig which honours lcc.
1512 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
1514 * configure.in: comment the -std1 check and save LIBS properly
1516 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
1518 * gtk/testrgb.c: #include <stdlib.h>
1520 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
1522 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
1523 When the pointer is grabbed on an input window,
1524 either explicitely, or through press-grab, and
1525 then grabbed on a non-input window, ungrab the
1528 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
1530 * gtk/gtktypeutils.h: don't include any gdk headers.
1531 added structure definitions for GtkTypeObject and GtkTypeClass,
1532 which cover the very basic fields of GtkObject and GtkObjectClass,
1533 which are actually used by the type system.
1535 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
1536 we only refer to our own structures. improved class inheritance
1537 sanity checking a bit.
1539 * gtk/gtkobject.h: placed appropriate comments at the beginnings
1540 of the GtkObject and GtkObjectClass structures, which explain
1541 their relationship to GtkTypeObject and GtkTypeClass.
1543 * gtk/gtktypeutils.h:
1545 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
1546 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
1547 gtkobject.h to gtktypeutils.h.
1551 removed gtk_object_check_cast() and gtk_object_check_class_cast()
1552 functions. to keep source compatibility, we can provide macro aliases
1553 for the corresponding gtk_type_* functions. but then again, people
1554 shouldn't have been using these functions anyways since they were part
1555 of Gtk's internal API.
1557 * gtk/gtktypeutils.h:
1558 * gtk/gtktypeutils.c:
1559 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
1560 functions to check GtkTypeObject and GtkTypeClass types.
1562 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
1565 * gtk/gtkctree.c: `const' fixups.
1568 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
1570 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
1571 if it is passed as NULL.
1573 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
1575 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
1576 big-endian cases. Added a 4bpp packed gray mode (somewhat
1577 incorrectly hardwired to MSB), which should take care of
1580 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
1582 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
1583 GtkSIgnalQuery leak.
1585 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
1587 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
1588 GTK_MENU_DIR_CHILD: check for the existance of
1589 menu_shell->active_menu_item before accessing its child.
1591 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
1592 don't, make a default selection.
1594 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
1596 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
1597 the children with _forall for sensitivity changes and with
1598 _foreach on pure state changes. this fixes a lot of the
1599 old inclusions of internal widgets into _foreach calls.
1601 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
1602 do the work. don't walk the subtrees of first level children.
1604 * gtk/gtktreeitem.c: provide a _forall implementation,
1605 which walks the subtrees as well for include_internals.
1607 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
1608 the submenus as well for include_internals.
1610 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
1611 implemented gtk_scrolled_window_forall, which will iterate over
1612 the viewport and the scrollbars for gtk_container_forall or
1613 iterate over the viewports children for gtk_container_foreach.
1619 * gtk/gtkmenushell.c:
1625 * gtk/gtknotebook.c:
1626 removed the old gtk_*_foreach functions and provided gtk_*_forall.
1628 * gtk/gtknotebook.c:
1629 (gtk_notebook_real_switch_page): expose tabs.
1630 (gtk_notebook_page_num): new function to return the page number
1631 of a distinct child.
1632 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
1633 under some circumstances.
1635 * gtk/gtktreeitem.c:
1636 (gtk_real_tree_item_select):
1637 (gtk_real_tree_item_deselect): major fixes.
1638 some general fixups wrt queue_redraw, and tree items not being
1641 * gtk/gtklistitem.c:
1642 (gtk_real_list_item_select):
1643 (gtk_real_list_item_deselect):
1644 (gtk_real_list_item_toggle):
1645 removed unneccessary queue_redraw calls.
1647 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
1649 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
1650 automatically popup the menu on space bar.
1652 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
1654 * gtk/gtkcontainer.h:
1655 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
1656 method), which acts similar to gtk_container_foreach(), but iterates
1657 over internal children. the GtkContainer::foreach signal vanished in
1658 favour of a new class method ->forall() that optionally includes
1661 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
1662 but a _forall implementation, since all child widgets we have are
1664 (column_button_create): set the parent window prior
1665 to gtk_widget_set_parent().
1668 exchanged all calls to gtk_container_foreach() with
1669 gtk_container_forall().
1672 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
1673 the GtkWidget::composite_child argument. to have a widget created
1674 with the flag initially, two new functions got added to wrap a widgets
1676 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
1678 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
1680 * gtk/gtktooltips.h:
1681 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
1682 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
1683 prior to the first tip being set.
1684 don't put an extra reference on the window, since it is a toplevel,
1685 it wont get destroyed from anywhere else.
1687 * overall macro and GtkType fixups.
1689 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
1691 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
1692 constructs by more forgiving ones. (Does anyone else feel like
1693 the color selector need rewriting?).
1695 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
1697 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1700 * gtk/gtkmenu.c: Modified reference counting so
1701 that the reference count from the toplevel that
1702 the menu creates to the menu is invisible to the
1705 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
1707 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
1708 conversion selection logic, so Suns and other big-endian
1709 machines should get faster conv routines. This is also the
1710 point where 4bpp gray and 1bpp are checked in, although I
1711 wouldn't be surprised if 1bpp is a little buggy. This is
1712 synchronized with the 0.0.7 release of GdkRgb.
1715 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
1716 appropriate change to the Makefile.am
1718 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
1720 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
1721 which is good for images that scroll (makes the dither patterns
1724 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
1727 (gdk_colormap_new) (gdk_colormap_get_system):
1728 quell some warnings with g_hash_table_new
1730 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
1731 when we're done with it
1733 * gtk/itemfactory.c:
1734 (gtk_item_factory_from_path):
1735 (gtk_item_factory_create_item): free some strings
1738 (gtk_label_finalize): free label->pattern when done
1739 (gtk_label_parse_uline): null terminate pattern string, delete
1740 some duplicated code
1742 * gtk/testthreads.c: add #include <unistd.h> for sleep()
1744 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
1746 * gtk/gtktext.c (recompute_geometry): Make sure the
1747 mark we pass to line start is the beginning of a
1748 real line, not a wrapped one.
1750 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
1752 * gtk/gtktext.c: Reference count the fonts used in
1755 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
1756 freeing functions to be more consistent, and more
1757 convenient; leave the old names in for backwards compatibility.
1759 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
1760 allocations in pseudo-color colormaps to greatly reduce
1761 calls to XAllocColor. Keep a per-colormap hashtable to
1762 speed up finding if there is an already-allocated matching
1765 * gdk/gdkcolor.c: Don't just match read the system colormap
1766 when the colormap is created, but synchronize our copy
1767 with the system colormap periodically.
1769 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
1770 Change XIM constants names to match GDK conventions
1772 * gtk/testinput.c: Allow the drawing area to get the focus.
1774 * gtk/testgtk.c: Change around the Text test to demonstrates
1775 multiple fonts, use more colors.
1777 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
1778 so they work after a widget is unrealized.
1780 * gtk/gtktext.[ch]: Remove the requirement that the text
1781 widget be realized before adding text (!) Allocate colors
1782 ourself, instead of requiring the caller allocate them.
1783 Allow changing styles to work properly by keeping track
1784 of the values for a certain property are default or
1787 * gtk/gtkmenu.h: Added some comments.
1789 * gtk/gtkentry.c: Changes to match XIM constants.
1791 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
1792 for adding keyed data to drawables. (Uses g_dataset
1795 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
1796 when creating an XPM - store them as user data for the GdkPixmap,
1797 so we don't leak colors when we create pixmaps from XPM's.
1799 Allocate memory for color information in large blocks instead of
1800 as many little pieces.
1802 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
1804 * gdk/gdkrgb.c: removed some unused variables
1807 * gtk/gtkmain.c: #if 0'd out some unused code
1809 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
1811 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
1819 * gtk/gtkcontainer.h:
1820 * gtk/gtkcontainer.c:
1825 (gtk_container_add_with_args):
1826 (gtk_container_child_set):
1827 begin the parameter elipsis (...) after the first argument name. this
1828 change is source compatible, since it was always required, even as NULL.
1830 (gtk_object_args_collect):
1831 (gtk_container_child_args_collect):
1832 changed prototypes to pass first_arg_name, also, pass va_list variable
1833 by value (portability concerns). callers changed.
1835 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
1836 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
1837 can't pass va_list variables by reference for portability reasons.
1839 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
1841 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
1842 get_visual calls, so that it gets implicitly initialized.
1844 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
1845 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
1846 such as GtkCTree function name changes
1848 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
1851 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
1852 binary version check, returning a static string for error descriptions,
1855 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
1857 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
1858 computed our geometry yet, and if not, ignore the request.
1860 * gtk/gtktext.c (correct_cache_insert): Fiddled around
1861 some more. All the bug-test codes seem to work at once
1862 now. (fingers crossed...)
1864 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
1866 * gdk/gdkrgb.c: silly visual fixes
1868 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
1871 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
1873 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
1874 anything if the event's window is not the bin window.
1875 (gtk_handle_box_motion): Likewise.
1877 1998-08-19 Raph Levien <raph@gimp.org>
1879 * gtk/testgtk.c (create_color_preview): pushed the colormap and
1880 visual so it would work better with GdkRgb.
1882 1998-08-19 Raph Levien <raph@gimp.org>
1884 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
1885 4bpp static_color mode (for vga displays). Also fixed a '64' value
1886 in the dither matrix, which was causing one pixel out of 16k to be
1889 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
1890 most of the contents. This is an API change - any apps that relied
1891 on the internal structure of GtkPreview will need some change -
1892 most notably in the use of reserved colors. The Gimp needed
1893 changes in this regard.
1895 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
1897 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
1898 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
1899 --g-fatal-warnings), noticed by miguel.
1901 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
1903 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
1911 * gtk/gtkitemfactory.c:
1912 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
1914 * gtk/gtkselection.c:
1918 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
1920 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
1922 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
1924 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
1925 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
1926 in case of show_tabs == NULL
1928 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
1930 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
1931 to --g-fatal-warnings again. this option now causes log levels of
1932 WARNING and CRITICAL to abort().
1941 * gtk/gtktypeutils.c:
1947 * gtk/gtkselection.c:
1950 * gtk/gtktreeitem.c:
1951 did a global search&replace to substitute g_print() calls with
1952 g_message(). libraries shouldn't use printf(), g_print() or
1953 g_printerr() at all.
1954 a bunch of the replacements should probably be wrapped into the
1955 G{D|T}K_NOTE() macros, so they are special cased for debugging
1956 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
1959 * gdk/gdkdnd.c: added copyright notice.
1961 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
1963 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
1964 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
1965 running a PII 233. It's synced with the 0.0.5 release of
1968 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
1971 (struct _GtkCListClass): new class methods:
1972 (sort_list) (insert_row) (remove_row) (set_cell_contents)
1975 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
1976 removed and replaced by (set_cell_contents)
1977 (set_cell_contents): function for class method set_cell_contents
1978 (real_insert_row): function for class method insert_row
1979 (real_remoce_row): function for class method remove_row
1980 (real_sort_list): function for class method sort_list
1981 (default_compare): fix to avoid problems with cell types != CELL_TEXT
1984 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
1985 (gtk_ctree_node_is_visible): new function to return visibility state
1987 (gtk_ctree_show_stub): new function to set visibility of root stub
1990 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
1991 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
1992 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
1993 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
1994 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
1995 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
1996 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
1997 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
1998 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
1999 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
2000 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
2001 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
2002 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
2003 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
2004 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
2005 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
2006 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
2007 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
2008 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
2011 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2012 removed and replaced by (set_cell_contents)
2013 (set_cell_contents): function for class method set_cell_contents
2014 (real_insert_row): function for class method insert_row
2015 (real_remoce_row): function for class method remove_row
2016 (real_sort_list): function for class method sort_list
2017 (default_compare): removed. CTree now also compares two GtkCTreeRows
2018 instead of two GtkCTreeNodes.
2019 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
2021 (real_tree_expand) (real_tree_collapse): fix for refcounting of
2023 (set_node_info): call gtk_ctree_node_set_pixtext instead of
2024 manipulating the row itself
2026 * gtk/testgtk.c: use renamed functions of GtkCTree.
2027 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
2030 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
2032 * gtk/gtkmain.c: removed gtk_input_add_interp.
2034 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
2036 (gtk_editable_get_event_time): fix default: case.
2038 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
2040 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
2043 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
2046 * various minor compilation cleanups, such as bogus commas in
2047 enums and similar things.
2049 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
2051 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
2054 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2056 * NEWS: updated for 1.1.2
2057 * gtk+.spec: version = 1.1.2
2059 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
2061 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
2062 times. changed --gtk-with-module to --gtk-module at owen's request.
2064 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
2066 * gtk/gtkmain.c (gtk_init): feature a new commandline option
2067 --gtk-with-module=<module> that allows additional loading and
2068 initialization of modules (e.g. GLE).
2070 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
2072 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
2073 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
2075 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
2076 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
2077 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
2078 different *-fatal-* arguments now. this needs to be revised and
2079 compressed to a reasonable amount of arguments.
2081 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
2083 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
2084 "--g-fatal-warnings" causes fatal warnings in GLib,
2085 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
2086 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
2088 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
2089 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
2093 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
2094 since automake doesn't support per target _CFLAGS yet.
2096 * configure.in: require GLib 1.1.3.
2098 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
2100 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
2101 to set a callback to test if a node in drag can be dropped onto
2102 it's currrent location.
2103 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
2104 to change the pointer when a drag destination is not allowed.
2106 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
2108 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
2109 speeds up the 565_d case by about 25% total. Thanks Ray!
2111 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
2113 * Changed GtkSignalFunc back to () from (void). (again!)
2115 * Added file README.cvs-commits
2117 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
2119 * docs/gtk_tut.sgml:
2120 - Tidy up of the menufactory example from
2121 Andy Kahn <kahn@zk3.dec.com>
2122 - New section on Range Widgets from
2123 David Huggins-Daines <bn711@freenet.carleton.ca>
2124 - Started a new section on 'Advanced Event and Signal
2125 Handling' - used an email from Owen.
2126 - New appendix on Gdk Event Types
2127 - Added the tictactoe full example code to the
2128 'Code Examples' appendix
2130 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
2132 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
2133 to calculate all the metrics at once of a string, including
2134 things which weren't calculated before.
2136 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
2137 MenuItem type, that when put as the first thing in a
2138 menu, makes the menu tearoff. Currently drawn as a
2141 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
2142 "hide_on_activate" to the MenuItem class structure to allow
2143 check and radio buttons to be changed with <Space> without
2146 * gtk/gtkitemfactory.c:
2147 - Create a AccelGroup for each MenuShell we create.
2148 - If an '_' appears before a character 'c' in the path,
2149 then make 'c' an accelerator in the menu's accel group,
2150 and if the menuitem is menubar <alt>C an accelerator
2151 in the itemfactory's accel group. Double '__' inserts
2154 * gtk/gtklabel.[ch]: Add support for a pattern arg -
2155 which is a string. If an '_' appears in this string,
2156 the corresponding position in the label is underlined.
2158 Add gtk_label_parse_uline() convenience function which
2159 takes a string with embedded underlines, sets the
2160 pattern and label, and returns the accelerator keyval.
2162 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
2163 Instead, they create a GtkWindow and add themselves
2164 to that. (When torn off, another new feature, they
2165 create another GtkWindow to hold the torn off menu)
2167 New function gtk_menu_set_tearoff_state()
2169 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
2170 Added action signals for keyboard navigation of menus.
2172 * gtk/gtkmenushell.c: Key press handler which activates
2173 bindings for navigation, and accelerators, for handling
2174 underline accelerators. Exported functions to select
2175 and activate menu items in a menushell.
2177 * gtk/testgtk.c: Added a new "Item Factory" test which
2178 tests GtkItemFactory and the new keyboard navigation
2181 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
2183 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
2184 external functions have been called. also relookup nodes after
2185 this function has been invoked.
2187 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
2189 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
2190 beginning of Text when creating the Text widget.
2192 * gtk/testgtk.c: Grab the focus on the text widget so
2193 as to test out the above.
2195 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
2197 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
2198 ::changed is a notification signal and should have no default
2199 handler. A complete redraw of the Text widget does _not_ need to
2200 be done on every text insertion.
2202 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
2203 (gtk-abilleira-072198-patch)
2205 * gtk/gtkwindow.[ch]:
2206 Add gtk_window_set_modal() which sets a flag; when
2207 set the window does a gtk_grab_add() when the window
2208 is shown, and a gtk_grab_remove() when the window
2211 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
2212 that case will run "Create Dir","Delete File" and "Rename File"
2213 dialogs as modal too.
2215 * gtk/testgtk.c: Added a button with an example of creating modal
2216 dialog boxes. Including file selection and color selection standard
2219 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
2221 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
2222 Removed CAN_FOCUS by default from scrollbars, button
2223 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
2224 (Scrollbar definitely good change, toolbar bit more questionable)
2226 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
2228 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
2231 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
2233 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
2234 added all logical operations to gc->function.
2236 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
2238 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
2239 gtk_widget_size_allocate instead of gtk_widget_queue_resize
2240 if the visibility state of a scrollbar changes.
2242 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
2244 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
2246 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
2248 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
2249 gtk_clist_merge and gtk_clist_mergesort. :)
2251 1998-08-06 Martin Baulig <martin@home-of-linux.org>
2253 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
2254 `mergesort' -> `my_mergesort'.
2256 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
2258 * gtk/gtkenums.h: new enum GtkSortType.
2262 Added sorting capabilities to GtkCList. New APIs :
2263 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
2264 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
2265 New internal functions : default_compare, merge, mergesort.
2267 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
2269 (gtk_clist_insert): Modified to handle gtk_clist_append and the
2270 auto sort flag. Changed the return value from void to gint to
2271 return the row number where the element was actually inserted.
2273 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
2277 Removed the auto_sort flag, replaced ctree->node_compare with
2278 clist->compare all over the place, modified default_compare to
2279 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
2280 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
2282 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
2283 sorting. The lists can be sorted by a column by clicking the
2284 corresponding title button.
2286 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
2288 * Released GTK+ 1.1.1
2290 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
2294 (gtk_ctree_find): changed to return a gboolean
2295 (gtk_ctree_insert_gnode): new function for recursive insertion of a
2297 (gtk_ctree_real_select_recursive): fix for extended selection
2298 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
2299 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
2301 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
2303 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
2304 GLib version 1.1.1 is now required at minimum.
2306 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
2307 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
2309 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
2311 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
2312 cursor before (possibly) deleting the cursor's text
2315 * gtk/gtktext.c (correct_cache_delete): More attempts
2316 to clean the line-start cache up after inserting
2317 a property. Among other things, make sure to
2318 fix up text->current_line, since it is used to
2319 refetch the changed lines.
2321 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
2323 * gtk/gtktable.[ch]: Empty rows/columns of the table
2324 should not have been marked as being able to shrink.
2325 (Fixes problem with shrinking scrollbarless GIMP canvases)
2327 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
2329 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
2330 function to find a row by its data pointer using a custom
2331 comparison function.
2333 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
2335 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
2336 this fixes a bug when the whole widget is made non-sesitive
2337 the buttons weren't redrawn
2339 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
2341 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
2342 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
2343 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
2345 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
2347 * gdk/gdkwindow.c (gdk_window_reparent): Change
2348 window_private->parent pointer when reparenting.
2350 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
2352 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
2353 with the standalone release.
2355 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
2357 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
2358 (gtk_clist_button_release) (new_column_width): Few fixes for
2359 column resize. Store resize column in clist->drag_pos.
2361 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
2365 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
2366 to GtkCTreeNode *node.
2368 * gtk/gtklist.h : added extended selection mode and auto scrolling.
2369 (struct _GtkList): removed unneeded variables timer, button,
2370 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
2371 Added new variables undo_selection, undo_unselection, last_focus_child,
2372 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
2373 drag_selection, add_mode.
2376 (gtk_list_extend_selection), (gtk_list_start_selection),
2377 (gtk_list_end_selection), (gtk_list_select_all),
2378 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
2379 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
2380 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
2381 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
2384 (gtk_list_enter_notify): removed, because auto scrolling now works
2385 with gtk_list_motion_notify
2387 New functions, needed for auto scrolling :
2388 (gtk_list_motion_notify) (gtk_list_move_focus_child)
2390 New functions for extended selection support :
2391 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
2392 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
2393 (gtk_list_focus_lost)
2395 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
2396 function to support auto scrolling, and avoid out-of-sync errors in
2397 case auf GTK_SELECTION_BROWSE
2398 (gtk_list_focus): modified gtk_container_focus function to avoid out
2399 off sync errors in case auf GTK_SELECTION_EXTENDED
2402 * gtk/gtklistitem.c :
2403 New signal functions for key binding support :
2404 (toggle_focus_row), (select_all), (list_item), (unselect_all)
2405 (list_item), (undo_selection), (start_selection), (end_selection)
2406 (extend_selection), (scroll_horizontal), (scroll_vertical),
2408 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
2409 GDK_KEY_RELEASE_MASK
2410 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
2413 (gtk_combo_popup_button_press): grab pointer for combo->list
2414 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
2415 (gtk_combo_list_key_press): take care of which child HAS_GRAB
2416 (gtk_comb_init): don't connect combo->button with button_release_event
2418 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
2420 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
2422 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
2424 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
2425 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
2426 with horizontal and vertical autoscrolling.
2428 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2430 * gtk/docs/man: new directory
2431 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
2433 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
2435 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
2438 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
2440 * docs/gtk_tut.sgml: GtkTree section from
2441 David Huggins-Daines <bn711@freenet.carleton.ca>,
2442 add a GtkText widget example
2443 * examples/text/* example/tree/* : new examples for the
2444 GtkTree and GtkText widgets
2445 * docs/gtk_tut.sgml: added an appendix to hold complete code
2446 examples that aren't in a full form elsewhere in the
2447 tutorial (e.g. scribble)
2449 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2451 * Released GTK+ 1.1.0
2453 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
2455 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
2456 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
2458 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
2460 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
2461 values are looked up.
2463 * gtk/gtktypeutils.h:
2464 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
2465 gtk_type_enums_find_value to lookup enum values.
2468 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
2469 GtkCTreeExpansionType. fixed signal creations to pass the enum
2470 types not just the base type GTK_TYPE_ENUM.
2473 * gtk/gtkclist.c: fixed signal creations to pass the real enum
2474 types not just the base type GTK_TYPE_ENUM.
2476 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
2479 Began cleanup, e.g. use gtk_widget_show_all instead of many
2480 gtk_widget_show's. Completely rewrote the button box sample
2481 (only one window now). Removed "miscellaneous" button.
2483 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
2485 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
2486 Fixed wrong allocation for GTK_BUTTONBOX_END.
2487 (allocation->x => allocation->y)
2489 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
2491 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
2492 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
2494 * gtk/gtkctree.c (real_tree_select): added check to avoid double
2496 (gtk_ctree_button_press)
2497 (gtk_ctree_button_release): fix for pointer grab
2499 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
2501 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
2502 Fixed initialization problem - dirty memory could cause problems.
2503 Also checked that bitmapped fonts can be scaled when showing the
2506 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
2508 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
2509 (gtk_ctree_sort_recursive): test for node != NULL
2510 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
2511 (gtk_ctree_last) : added sanity checks
2512 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
2514 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
2516 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
2518 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
2520 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
2522 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
2524 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
2525 to check out binding priorities. someone should really write
2526 gtkrc-mode for emacs.
2528 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
2529 * gtk/testgtk.c (main): and move it here ;). this test says something
2530 on release of C-9. (this works only if the mouse pointer is on a
2531 spinbutton and there is no focus widget).
2535 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
2536 gtk_rc_parse_priority to parse path priority types.
2538 feature binding parsing.
2540 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
2542 * gtk/gtkbindings.h:
2543 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
2544 feature binding parsing in rc files.
2545 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
2546 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
2547 order the bindings with lowest priority first.
2549 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
2551 * gdk/gdkrgb.c: actually builds and runs properly on big
2552 endian machines now, because we #include config.h. Also
2553 fixed up a compile error in the WORDS_BIGENDIAN case in
2554 gdk_rgb_convert_565_gray. I made the fix by looking at
2555 patterns in the other code; Raph can you verify this?
2557 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
2560 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
2562 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
2563 (tree_toggle_expansion) (real_select/unselect_row)
2564 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
2566 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
2568 * gtk/gtktext.c (new_text_property): We free things from
2569 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
2571 * Fix up line start cache when splitting a property
2574 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
2576 * gtk/gtkwidget.c: restauration => restoration
2578 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
2580 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
2581 hasn't been created yet, don't do the lookup.
2583 1998-07-20 Raph Levien <raph@acm.org>
2585 * gdk/gdkrgb.c: More cleanups in the config process.
2587 1998-07-20 Raph Levien <raph@acm.org>
2589 * gdkrgb.c: Fixed minor config bug preventing big-endian
2590 architectures from working.
2592 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
2594 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
2595 activity indicator. It is settable now as a fraction of the
2596 total width/height using gtk_progress_bar_set_activity_blocks.
2597 Renamed gtk_progress_bar_set_number_of_blocks to
2598 gtk_progress_bar_set_discrete_blocks.
2600 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
2602 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
2603 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
2604 tree to specified depth
2605 (gtk_ctree_expand_to_depth): expand tree to specified depth
2606 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
2608 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
2610 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
2611 of GTK_CLIST_ADD_MOD
2612 * gtk/testgtk.c (add1000_clist): changed pixmap
2614 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
2617 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
2619 * gtk/gtktypeutils.h:
2620 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
2622 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
2624 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
2625 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
2626 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
2628 (gtk_notebook_reorder_child): new funktion to change position of a
2630 (gtk_notebook_draw_arrow): draw left/right arrow with
2631 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
2633 * gtk/gtkstyle.c (gtk_default_draw_arrow):
2634 added GTK_SHADOW_ETCHED_IN/OUT
2636 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
2638 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
2639 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
2640 Introduced generic GtkProgress widget. Derived GtkProgressBar from
2641 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
2643 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
2645 * gtk/gtktypeutils.h
2646 * gtk/gtkitemfactory.h: explicitly specify void in prototype
2648 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
2650 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
2653 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
2655 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
2656 sropped the approach of copying all signal specific data into a
2657 GtkHandlerInfo structure. we rather keep the signal data on the stack
2658 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
2659 avoids multiple lookups of the signal pointer and works savely together
2660 with destroy notifiers of handlers.
2662 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
2663 someone destroys the entry on the ::activate signal.
2665 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
2667 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
2668 instead of ypad (typo).
2669 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
2670 border around the allocation).
2671 (gtk_arrow_init): the static requisition needs to be setup in this
2672 function rather than gtk_widget_new(), so arrow creation works without
2673 the gtk_arrow_new() constructing.
2674 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
2676 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
2677 implementation for GtkWidget::size_request, so size requisition for
2678 simple statically sized widgets like GtkArrow works.
2680 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
2682 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
2683 prepend -I@libdir@/glib/include anymore, since glib-config handles
2684 it; --libs strips out redundant -L<path>'s properly (there was
2685 code in there to do it before, but it didn't work)
2687 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
2689 * gtk/gtknotebook.h:
2690 * gtk/gtknotebook.c: signdness corrections all ove the place.
2691 implementation of object arguments: GtkNotebook::enable_popup,
2692 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
2693 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
2694 begun implementation of child args, we have GtkNotebook::tab_label, but
2695 GtkNotebook::menu_label and GtkNotebook::position still lack the
2697 (gtk_notebook_remove_page):
2698 (gtk_notebook_current_page): allow negative indices (-1) as alias for
2702 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
2703 arguments GtkEntry::max_length and GtkEntry::visibility.
2704 (gtk_entry_adjust_scroll): queue a redraw.
2706 * gtk/gtkeditable.h:
2707 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
2708 object arguments GtkEditable::text_position and GtkEditable::editable.
2709 new (action) signal GtkEditable::set_editable.
2710 provide a default handler for GtkEditable::changed that queues a redraw.
2713 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
2716 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
2718 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
2719 case of drag_target == NULL
2720 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
2721 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
2722 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
2723 gtk_dir_selection_file_button): fix due to changes in clist's
2726 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
2729 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
2730 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
2731 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
2732 to be gint16s rather than guint16s, since that's what the code expected
2733 (for a long time actually).
2735 * gtk/gtkviewport.c:
2736 added support for object arguments: GtkViewport::shadow_type,
2737 GtkViewport::vadjustment and GtkViewport::hadjustment.
2738 (gtk_viewport_add): chain gtk_bin_add.
2740 * gtk/gtkscrolledwindow.c:
2741 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
2742 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
2744 * gtk/gtkadjustment.h:
2745 * gtk/gtkadjustment.c:
2750 * gtk/gtkscrolledwindow.h:
2751 * gtk/gtkscrolledwindow.c:
2752 * gtk/gtkviewport.h:
2753 * gtk/gtkviewport.c:
2754 GtkType and macro fixups.
2756 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
2760 Added focus handling, horizontal and vertical autoscrolling,
2761 extended Selection Mode, key bindings
2762 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
2763 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
2764 Removed gtk_ctree_clear.
2768 Added focus handling, horizontal and vertical autoscrolling,
2769 extended Selection Mode, key bindings
2771 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
2773 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
2774 source tree. For more information on GdkRgb, please see:
2775 http://www.levien.com/gdkrgb/
2777 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
2778 bothers me slightly that the feature is in gdk, and this file is
2779 in gtk, but it's probably ok.
2781 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
2784 * gdk/gdkrgb.h: Added this module.
2786 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
2788 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
2790 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
2792 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
2793 to this function. it needs to relookup the signal multiple times.
2794 this fixes spurious segfaults that could show up with signal intensive
2795 code, when classes are created during a pending emission (which is
2798 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
2800 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
2801 child if it isn't a label.
2803 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
2806 * gtk/gtkseparator.h:
2807 * gtk/gtkhseparator.h:
2808 * gtk/gtkvseparator.h: macro and GtkType fixups.
2810 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
2812 * gtk/testgtk.c (create_cursors): display the current cursor name.
2814 * gtk/gtktypeutils.h:
2815 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
2816 the fundamental type definition. the GtkArg union now only covers
2817 the required storage types for argument values. adapted the GTK_VALUE_*
2818 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
2820 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
2821 code, fixed int/float collection. fixed a bug in the sanity checking
2822 code for GtkObjects.
2824 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
2825 argument collection code.
2827 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
2828 macros when distinguishing the return type.
2830 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
2832 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
2833 is not NULL before trying to g_list_remove the child. A patch
2834 from Michael Lausch.
2836 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
2838 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
2839 collection (always casted to doubles upon argument passing).
2841 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
2843 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
2844 object_init_func for derived objects with the object's ->klass field
2845 still pointing to the corresponding base class, otherwise overridden
2846 class functions could get called with partly-initialized objects.
2847 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
2849 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
2853 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
2855 * gtk/gtkcontainer.h:
2856 * gtk/gtkcontainer.c:
2857 (gtk_container_child_arg_get_info): new function which wraps
2860 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
2862 * gtk/gtkcontainer.c:
2863 (gtk_container_arg_get):
2864 (gtk_container_arg_set):
2866 (gtk_object_arg_set):
2867 (gtk_object_arg_get):
2868 strictly check for the associated get/set arg functions. if an
2869 arg is readable or writable, the associated class functions *must*
2872 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
2874 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
2875 padding into account if there is an accelerator.
2877 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
2879 * gtk/gtkcontainer.c:
2880 (gtk_container_add_with_args): collect the arguments with
2881 gtk_container_child_args_collect, not through gtk_object_args_collect.
2882 (gtk_container_child_set): likewise.
2884 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
2886 * gtk/gtktypeutils.h:
2887 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
2888 which is derived from GTK_TYPE_STRING.
2890 * gtk/gtkbindings.c: reworked the argument type handling.
2892 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2894 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
2895 so that it seems to allow normal operation in those modes,
2896 although you will only see black (GIMP toolbar now pops up,
2897 just don't create a new image and GIMP now works in 4 bit.)
2899 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2901 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
2902 array, which was too low (?)
2904 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
2906 * gtk/gtkcontainer.h:
2907 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
2908 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
2909 we now export a new function gtk_container_child_args_collect().
2910 for consistency with the object arguments, a few functions got renamed:
2911 gtk_container_child_arg_get -> gtk_container_child_get,
2912 gtk_container_child_arg_set -> gtk_container_child_set,
2913 gtk_container_child_arg_getv -> gtk_container_child_getv,
2914 gtk_container_child_arg_setv -> gtk_container_child_setv,
2915 gtk_container_add_with_argv -> gtk_container_addv.
2916 note, gtk_container_add_with_args() remained, because its equivalent
2917 would be gtk_container_add(,, ...) which would break all existing code.
2918 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
2919 we expect the `arg_name' argument to be a const static string now.
2920 (gtk_container_get_child_arg_type): function removed.
2922 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
2924 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
2925 this is a static inline function that collects command line arguments
2926 from a va_list. this file can just be included in all places that
2927 need this functionality.
2930 * gtk/gtkarg.c: new files which implement most of the argument
2931 handling stuff from gtkobject.c. also collected a few more
2932 gtk_arg_* utility functions from else places.
2935 * gtk/gtkobject.c: moved most of the argument handling code into
2936 gtkarg.c. we now export gtk_object_args_collect() as a non-public
2937 method with a blind va_list pointer.
2938 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
2939 const static string now.
2940 (gtk_object_get_arg_type): function got removed.
2944 (gtk_widget_new): adaptions for gtk_object_args_collect().
2946 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
2947 fundamental type name so as to have a valid prefix, e.g. "bool"->
2948 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
2949 though that should probably be something like GtkNone since the
2950 type itself is called GTK_TYPE_NONE.
2951 even the internal type names need to avoid name clashes and must live
2952 in their own namespace, several code portions rely on that.
2953 we should relly have typedefs such as typedef gchar* GtkString; so the
2954 fundamental type names can be used for code dumpers just like with all
2957 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
2959 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
2960 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
2961 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
2963 (gtk_button_paint): set the background for prelighted buttons with
2964 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
2965 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
2966 the shadow type (otherwise we get strange shadows for coloured buttons).
2967 (gtk_button_set_relief): queue a redraw after changing
2969 (gtk_button_class_init):
2970 (gtk_button_set_arg):
2971 (gtk_button_get_arg): added object argument "GtkButton::relief".
2973 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
2975 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
2978 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
2979 GTK_BIN (button)->child to button->child to keep source compatibility.
2981 * gtk/gtkoptionmenu.c:
2983 * gtkcheckbutton.c: don't refer to button->child, but
2984 GTK_BIN (button)->child instead.
2986 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
2988 * docs/gtkfaq.sgml: update anon CVS info
2990 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
2992 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
2996 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
2999 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3001 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
3002 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
3004 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
3006 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
3008 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
3011 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
3013 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
3014 error that prevented signal to entry addition for signals with
3017 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
3019 * ltconfig: fix for properly detecting shared lib support on
3020 SunPro cc (taken from libtool 1.2.a)
3022 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
3024 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
3026 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
3028 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
3029 rc set pattern is favoured, this is needed for overriding of style
3030 patterns with subsequently parsed rc files.
3032 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
3034 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
3037 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
3039 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
3041 (gtk_accelerator_name): add "<Release>" to the accelerator name if
3044 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
3047 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
3048 default handler for key-release events, which checks for activation
3049 of GDK_RELEASE_MASK key bindings.
3051 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
3053 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
3055 * gtk/gtkarrow.h: GtkType and macro fixups.
3056 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
3057 "GtkArrow::shadow_type".
3059 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
3061 * gtk/gtkalignment.h:
3062 * gtk/gtkbin.h: GtkType and macro fixups.
3064 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
3065 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
3066 GtkAlignment::xscale, GtkAlignment::yscale.
3068 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
3070 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
3071 fucntions from all parent types upon class initialization.
3073 * gtk/gtkcontainer.c:
3074 (gtk_container_get_type): announce gtk_container_base_class_init to
3076 (gtk_container_base_class_init): new function to feature base class
3078 (gtk_container_get_child_arg):
3079 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
3080 and set_child_arg methods of the class indicated through the argument
3084 (gtk_object_base_class_init): new function to feature base class
3086 (gtk_object_init_type): announce gtk_object_base_class_init to the type
3088 (gtk_object_class_init): setup the get_arg and set_arg pointers for
3091 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
3092 instead of bothering the type system with this.
3094 * gtk/gtkaccellabel.c:
3096 * gtk/gtkradiobutton.c:
3098 * gtk/gtktogglebutton.c:
3099 * gtk/gtktipsquery.c:
3106 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
3107 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
3108 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
3109 arg functions to take a GtkObject argument.
3111 gtk/gtkadjustment.c:
3114 gtk/gtkaspectframe.c:
3117 gtk/gtkcheckbutton.c:
3118 gtk/gtkcheckmenuitem.c:
3126 gtk/gtkdrawingarea.c:
3140 gtk/gtkhscrollbar.c:
3141 gtk/gtkhseparator.c:
3143 gtk/gtkinputdialog.c:
3145 gtk/gtkitemfactory.c:
3153 gtk/gtkoptionmenu.c:
3157 gtk/gtkprogressbar.c:
3158 gtk/gtkradiomenuitem.c:
3163 gtk/gtkscrolledwindow.c:
3165 gtk/gtkspinbutton.c:
3178 gtk/gtkvscrollbar.c:
3179 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
3180 match the modified GtkTypeInfo structure.
3182 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
3184 * gtk/testgtk.c: use rand() instead of random() for portability
3186 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
3190 * gdk/gdk.c: use native Xlib XConvertCase if it's available
3192 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
3194 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
3195 XConvertCase() functionality from X11R6 on X11R5 systems.
3197 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
3199 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
3200 gdk_string_height, gdk_char_height to retrieve the exact
3203 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
3205 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
3206 by Stefan Mars <mars@lysator.liu.se>
3207 * examples/clist/clist.c examples/clist/Makefile: example code
3208 for GtkCList widget from the Tutorial
3210 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
3212 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
3213 if the container is not visible, we might be a toplevel! this holds
3214 for all other base container implementations as well, that are
3215 candidates to derive toplevels from. in general the resizing code will
3216 care about visibility itself.
3217 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
3218 * gtk/gtkbox.c (gtk_box_remove): likewise.
3220 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
3221 gtk_window_set_hints(), since we haven't calculated the new position
3224 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
3225 *mask are alway initialized in a sane way, regardless of the return
3228 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
3230 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
3231 to gtk_container_child_arg_setv, but takes a variable argument list.
3232 new function gtk_container_get_child_arg_type, which is needed by
3233 gtk_object_collect_args.
3235 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
3236 take a function pointer to figure the argument type.
3237 adapted callers to pass gtk_object_get_arg_type.
3238 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
3239 gtk_object_get_arg_type..
3243 (gtk_packer_reorder_child): new function to change the packing order
3245 (gtk_packer_size_request):
3246 (gtk_packer_size_allocate): take container->border_width into acount.
3248 * gtk/gtkpacker.c: implemented widget arguments:
3249 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
3250 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
3251 implemented child arguments:
3252 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
3253 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
3254 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
3255 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
3257 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
3260 * gtk/gtkeventbox.h:
3261 * gtk/gtkeventbox.c: GtkType and macro fixups.
3263 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
3264 sensitivity of an entry.
3266 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
3267 for insensitive base and text.
3269 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
3270 widget state dependent.
3271 (gtk_entry_style_set): likewise.
3272 (gtk_entry_state_changed): set background color on state changes.
3273 (gtk_entry_draw_text): for non selected text, use state dependent
3276 * gtk/gtktogglebutton.c: support for widget arguments
3277 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
3279 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
3281 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
3282 code for 1.0.x-like parameters. Changed internal interface of
3283 gtk_spin_button_real_spin. Several fixes to avoid emission of
3284 "value_changed" where possible.
3286 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
3288 * gtk-boxed.defs: s/GkWidget/GtkWidget/
3290 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
3292 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
3293 to select the resize_mode for the idle-labels container.
3296 * gtk/gtkframe.c: GtkType and macro corrections.
3298 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
3299 support widget argument "GtkRadioButton::group".
3301 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
3303 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
3304 unconditionally if resize_mode has changed.
3306 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
3307 GTK_RESIZE_QUEUE on the scrolled window.
3308 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
3310 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
3312 * gtk/gtkcontainer.h:
3313 * gtk/gtkcontainer.c:
3314 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
3315 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
3316 (gtk_container_queue_resize): new function to queue a container for
3317 a *size* reallocation (doesn't affect its position, and thus its
3318 parent is left untouched usually).
3319 (gtk_container_get_resize_container): new function to retrive the next
3320 most resize container which is not itself queued for a resize.
3321 (gtk_container_idle_sizer): new function to carefully process the
3322 container_resize_queue since it can change during invokation of
3323 gtk_container_check_resize().
3324 (gtk_container_resize_children): total rework of this function to
3325 properly handle resize containers. makes a lot of assumptions whitch
3326 are stated in the comments.
3328 * gtk/gtkcontainer.c:
3329 (gtk_container_real_check_resize): only requeue ourselves if we are not
3331 (gtk_container_clear_resize_widgets): care for automatic deletion of our
3332 resize_widgets list on size_allocate through a handler connection.
3334 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
3335 focus and default widget of a window, so to take the burden from
3336 gtk_widget_unparent.
3338 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
3339 to be clever, but actually messed up the resize_children logic and
3340 caused unneccessary allocations on its whole branch. besides this,
3341 it messed up the display by not invoking a redraw after the allocation.
3343 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
3344 that it is the child again that is queued for a resize.
3345 (gtk_table_attach): likewise.
3346 (gtk_table_remove): likewise.
3348 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
3350 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
3351 gtk_entry_adjust_scroll. Required if you change the cursor
3352 position and want to sync it up with your code (Midnight Commander
3353 gtk front end needs this).
3355 * gtk/gtktable.c: Deal with tables that have size 0, 0.
3357 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
3359 * examples/README.1ST: new file to explain how the
3360 code examples should be extracted from the tutorial.
3362 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
3364 * gtk/gtkctree.c (draw_row): added new "line style"
3365 GTK_CTREE_LINES_TABBED
3366 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
3367 search the glist pointer of an GtkCTreeRow
3369 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
3371 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
3372 from, and clean up, the dependencies. Generate to intermediate
3373 files to prevent problems with Ctrl-C.
3375 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
3377 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
3379 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
3380 - Bug fix for precision problem causing occasional double emission
3381 of "value_changed" signal (hopefully works now).
3382 - API change (should be binary compatible) :
3383 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
3384 Modified cursor example appropriately.
3385 To spin by something other than step_/page_increment, use
3386 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
3387 - Made GTK_SHADOW_NONE the default. ;)
3388 - Fixed casting of GtkAdjustment* to GtkWidget* in
3389 gtk_spin_button_value_changed.
3391 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
3393 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
3394 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
3395 resize widget list before queuing the container for a new reize.
3396 (gtk_container_need_resize): changed return value to FALSE, since this
3397 used to indicate that no further resizes are needed.
3398 (gtk_container_set_arg):
3399 (gtk_container_get_arg):
3400 (gtk_container_class_init): implemented GtkContainer::resize_mode
3403 (gtk_container_resize_children): when we walk up the tree of a resize
3404 widget we need to stop if we are the current parent.
3406 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
3407 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
3408 (gtk_widget_hide_all): retrive the toplevel widget from via
3409 gtk_widget_get_resize_container().
3411 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
3413 * gtk/gtklist.c (gtk_list_button_press): Only respond
3414 to selection with button 1. This allows context-sensitive
3415 menus to work correctly.
3417 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
3419 * gtk/gtkaccelgroup.c:
3420 * gtk/gtkbindings.c:
3421 * gtk/gtkcontainer.c:
3422 * gtk/gtkitemfactory.c:
3425 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
3426 g_quark_from_static_string calls to save memory.
3428 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
3429 function _after_ the new data has been setup.
3430 minor changes to object data functions to feature the GQuark type.
3432 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
3434 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
3437 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
3439 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
3440 to be more readable perl, to spit out stuff that looks
3441 more like readable C, and to pipe output through indent
3442 so output looks a lot like readable C. No functional
3445 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
3447 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
3448 necessary when switching to a masked pixmap. (Based on a patch
3449 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
3451 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
3453 * gtk/gtkeditable.[ch]: Added action signals for keyboard
3454 bindings. (move_cursor, kill_word, etc, etc, etc).
3456 removed the time argument from
3457 gtk_editable_cut/copy/paste_clipboard (source but not
3458 binary incompatible...) Instead get time from
3459 gtk_get_current_event ().
3461 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
3464 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
3466 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
3468 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
3469 parent class to GtkNotebookClass when splitting the widget in
3470 two. Also updated some comments.
3472 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
3473 button without a font selected.
3475 Fixed bug in set_font_name - I hadn't updated the code to
3476 search for the style in the font_style clist - it was
3477 still assuming the style row was equal to its index,
3478 but it isn't any more.
3480 Changed 'Reset' button on filter page to 'Clear Filter'.
3481 Deleted old code relating to the old 'Filter Fonts' toggle
3482 Updated some comments.
3483 Cleared 'Actual Fontname' if no font is set.
3485 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
3486 destroying the GtkFontSelection instead of the
3487 GtkFontSelectionDialog.
3489 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
3491 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
3492 flag to make all warnings fatal errors.
3494 * gtk/testthreads.c: moved <pthreads.h> include inside
3497 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
3499 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
3500 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
3502 - Added new function gtk_container_set_resize_mode() for
3503 fine-grained control of where resize-queueing is done.
3505 - Removed GtkContainer::need_resize and GtkWindow::move_resize
3506 - Added GtkContainer::check_resize to replace need_resize.
3508 - Added function gtk_container_check_resize() to trigger
3509 queued resizes, and gtk_container_resize_children() to
3510 Figure which children need to be size-allocated. (logic
3511 moved from gtkwindow.c)
3513 - Reorganized code in gtkwindow.c
3515 - Set the resize-mode for viewports so that resizes within
3516 a viewport don't propagate out of it.
3518 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
3520 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
3522 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
3523 g_return_val_if_fail, because the function *does* return a value.
3525 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
3527 * gtk/gtkaccellabel.h:
3528 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
3529 request the size of the accelerator portion of an accel label.
3530 (gtk_accel_label_size_request): don't request for the accelerators size.
3531 (gtk_accel_label_expose_event): only draw the accelerator if we got
3534 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
3535 width from children.
3537 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
3538 object (after removal has been requested) check if there is still an
3539 accelerator remaining to avoid adding two accelerators on an object.
3540 this can happen for locked accelerators (or accelerator-frozen widgets).
3541 (gtk_menu_size_request): feature childrens accelerator width in size
3544 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
3545 gtk_widget_freeze_accelerators() for dynamically created menu items.
3548 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
3549 which will return a handler_id > 0 if the specified function is pending
3553 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
3554 a signal handler function to stop accelerator addition.
3555 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
3556 which will prevent (undo) any accelerators from being added to or
3557 removed from a widget.
3559 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
3561 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
3562 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
3563 acceleration, new API gtk_spin_button_set_snap_to_ticks.
3565 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
3568 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
3569 the current GdkWindow the pointer is on if there is any.
3571 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
3572 and one column, so we don't construction logic at all. changed a few
3573 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
3576 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
3577 portion, added an additional check for parent != widget.
3579 * more GtkType and macro fixups.
3581 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
3583 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
3584 "clip" parameter, which is the clipping rectangle to use. This
3585 eliminates the extremely annoying flicker when exposing parts of
3588 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
3590 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
3593 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
3595 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
3596 != 0 on the argument.
3599 * gtk/gtktable.c: new function gtk_table_resize() which allowes
3600 shrinking and expanding of tables. implementation of widget arguments
3601 and child arguments. many signedness corrections.
3603 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
3605 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
3606 not only the child, otherwise we might end up taking away other
3607 childrens space after the resize.
3609 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
3610 an unknown menu path from any source, that path must always be flagged
3611 as "modified", since we don't really know whether it has its default
3616 * gtk/gtknotebook.c:
3617 * gtk/gtkmenushell.c:
3621 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
3624 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
3625 arguments. implemented child arguments.
3627 * more GtkType and macro fixups.
3629 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
3631 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
3633 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
3634 and gtk_clist_get_hadjustment.
3636 * gtk/gtkcontainer.c:
3637 implementation of children arguments, new class member functions
3638 (child_type), (get_child_arg) and (set_child_arg) plus a new field
3640 (gtk_container_child_type): new function which returns the type of a
3641 child that the container expects for its next addition.
3642 (gtk_container_add_child_arg_type): new function to introduce a new
3643 child argument at class creation time.
3644 (gtk_container_query_child_args): new function to query all child
3645 arguments that are supported by a container class.
3646 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
3648 (gtk_container_child_arg_setv): new function to set a child argument for
3649 a certain container and child combination.
3650 (gtk_container_add_with_args):
3651 (gtk_container_add_with_argv): new functions to feature addition of a
3652 new child in combination with the setting of certain child arguments.
3654 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
3655 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
3656 this should really be done through class cretion hooks some day.
3658 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
3662 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
3663 follow the gtk convention for lower case variable names (important
3664 for language wrappers and widget arguments), and made them guint : 16.
3666 * examples/packer/pack.c: adaptions for the case converted GtkPacker
3669 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
3671 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
3672 change the character pair for single line comments.
3673 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
3674 GtkItemFactoryClass.
3675 (gtk_item_factory_parse_rc_string): likewise.
3677 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
3679 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
3680 lists from the klass structure to a static structure
3681 in gtkfontsel.c; cleans up global the namespace.
3683 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
3685 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
3686 bug with /*< skip >*/ and remove warning.
3688 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
3690 * gtk/Makefile.am: Made the gtkmarshal.* generation
3691 rules maintainer-only.
3693 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
3695 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
3696 gtk/Makefile.am gtk/makenums.pl
3698 Removed out the G_ENUM/FLAGS mechanism in favor
3699 of a perl script that parses the standard headers
3700 (with occasional /*< nick=foo >*/ style overrides)
3701 and extracts the enumerations.
3703 gtk/maketypes.awk: Small improvments to the
3704 translation of names. (Avoid splitting gc into
3707 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
3709 * gtk/gtk.h gtk/gtkfontsel.[ch]:
3710 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
3712 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
3715 - Restored gtk_entry_adjust_scroll to static
3716 - Changed text positioning code so that we always
3717 display as large a portion of the text as possible.
3719 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
3721 * gtk/gtktext.c (gtk_text_finalize): Free internal
3722 structures of text widget. Also, unreference pixmaps
3725 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
3727 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
3728 3.3.1 bug workaround to number keys starting at 1.
3730 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
3732 * docs/gtk_tut.sgml: Fixed urls for complete example
3733 source for scribble+widget-writing examples.
3735 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
3737 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
3738 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
3739 specs of the form c #abcdef [ more keys ] properly.
3741 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
3743 * gtkspinbutton.h gtkspinbutton.c testgtk.c
3744 (gtk_spin_button_set_shadow_type):
3745 New API to set the shadow type of the arrow panel.
3747 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
3749 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
3750 code for drawing the child in two places at once. Unfortunately,
3751 not only does it not work anymore (because reparenting has
3752 been fixed), but it also triggers reparent/expose loops
3755 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
3756 an unecessary unrealize.
3758 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
3760 * gdk/gdkwindow.c (gdk_window_reparent): Update the
3761 old and new parents' child window lists properly.
3763 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
3766 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
3767 and GtkSideType, to be consistent with the rest of Gtk's enum
3768 definitions. wrapped the enum definitions with the G_ eunm wrappers.
3769 spelled out the GTK_ANCHOR_* enum values, since single letters don't
3770 work out corectly as nick-names (left the old values as aliases).
3771 some signdness corrections (border-width, spacing), could stand more.
3773 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3775 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
3778 * examples/packer/pack.c, examples/packer/Makefile: Added
3781 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
3783 * gtk/gtktext.c (remove_cache_line): Fixed broken
3786 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
3787 Check bounds before deleting.
3789 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
3791 * autogen.sh: Support ACLOCAL_FLAGS
3793 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
3795 * gtk-config.in: Added missing quotes.
3797 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
3799 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
3801 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
3803 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
3804 G_COMPILED_WITH_DEBUGGING.
3806 * configure.in (fd_set): Explain check better.
3808 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
3809 the version from which gtk+'s libtool forked. Needed for people
3810 who use post-1.2 alphas of libtool.
3812 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
3814 * glib/* Moved to glib module
3816 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
3817 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
3819 configuration changes for the above:
3821 - Use AM_PATH_GLIB by default to find glib; also accept
3822 a --with-glib option for using an uninstalled glib.
3824 - Put --enable-debug information into config.h so
3825 that we rebuild when it changes. (was in glibconfig.h)
3827 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
3829 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
3831 * gtk/gtknotebook.h (struct _GtkNotebookClass):
3832 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
3833 added missing argument (according to Joseph Coleman's bug report)
3835 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
3836 function to fix notebook focus handling
3838 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
3840 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
3841 glib/gutils.c glib/testglib.c glib/gdataset.c
3842 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
3843 gtk/gtktext.c gtk/gtkbindings.c:
3845 renamed g_const_pointer => gconstpointer
3847 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
3849 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
3850 invoked with (NULL, NULL); (this worked sometime ago).
3852 * gtk/gtktypeutils.h:
3853 * gtk/gtktypeutils.c: enum and flags type creation can now be done
3854 through gtk_type_register_enum() and gtk_type_register_flags(),
3855 which allow to specify the enum value arrays directly.
3856 the NULL terminated value arrays can be retrived through
3857 gtk_type_enum_get_values() and gtk_type_flags_get_values();
3858 (gtk_type_children_types): new function to query derived types.
3860 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
3862 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
3863 environment to genmarshal.pl.
3864 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
3865 rule), and removed it where not needed (in the dependencies).
3867 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
3869 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
3871 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
3872 was just g_direct_hash.
3874 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
3876 * configure.in: x_libs=, not $x_libs=. Enough said.
3877 (Case only hit for --disable-xshm)
3879 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
3881 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
3882 when testing for X libraries, don't replace them. Because
3883 the user might have specified the path to the X libraries
3884 themself before running configure.
3886 * examples/**.c: Changed all gpointer * to gpointer
3888 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
3890 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
3891 fleur_cursor field. Now the cursor is created/destroyed on demand
3892 by the routines that need it.
3894 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
3895 (gtk_handle_box_motion): The fleur cursor is created and destroyed
3898 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
3900 * gtk/gtktypeutils.h:
3901 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
3902 gtk_enum_set_values to gtk_type_enum_get_values and
3903 gtk_type_enum_set_values respectively, since they are actually type
3906 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
3909 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
3911 * gtk/gtkselection.h:
3912 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
3913 gtk_selection_data_free.
3915 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
3916 for "selection_received", which was completely bogus.
3917 * other fixups to gtk_signal_new() calls all over the place.
3919 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
3920 * gtk/gtktypebuiltins_vars.c: type variable implementations.
3921 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
3923 * gtk/gtktypebuiltins_evals.c: enum value arrays.
3924 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
3926 * gtk/gtk.defs: generated file with scheme syntax for type definitions
3927 of gtk and gdk structures and enums.
3928 * gtk/gtktypeutils.h:
3929 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
3930 macros anymore (this fixes binary incompatibility with new enum
3933 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
3934 key bindings for this widget.
3935 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
3939 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
3940 again. new functions gtk_object_class_user_signal_new () and
3941 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
3942 flag on the signal creation.
3944 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
3946 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
3948 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
3954 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
3956 * reworked enum value array generation code. gtk.defs is a generated
3959 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
3961 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
3962 check menu items in the compatibility code (this required me to remove
3963 the "<check>" part from the menu item name, grrr).
3965 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
3967 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
3968 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
3970 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
3972 * gtk/gtkitemfactory.h:
3973 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
3974 additions to the dumping code to feature GtkPatternSpec.
3975 even found a bug to fix in the original code ;)
3977 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
3979 * gtk/gtkitemfactory.c: support different types of callbacks, to
3980 maintain existing code.
3982 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
3984 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
3986 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
3987 this should eventually be done by gentypeinfo.el somewhen.
3988 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
3990 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
3991 enum values of an enum type.
3999 brought enum/flags definitions in sync, added a few more enum
4000 definitions for bindings and pattern matching.
4002 * some more macro and GtkType fixups in various places.
4004 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
4005 as a key-release modifier for the binding system.
4007 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
4009 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
4010 was a stale list pointer that is already present in GtkMenuShell.
4012 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
4013 GtkMenuShell::selection_done which is emitted after the menu shell
4014 poped down again and all possible menu items have been activated.
4016 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
4018 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
4019 before activation of the menuitem, so the menu is actually taken off the
4020 screen prior to any menu item activation.
4022 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
4026 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
4027 the emission of the "add-accelerator" signal on a widget. this is
4028 usefull to prevent accelerator installation on certain widgets.
4030 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
4031 labels left justified, by setting their alignment. stop accelerator
4032 installation for the menu items, since we use dynamic menus.
4034 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
4036 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
4037 should *really* use GtkItemFactory. this is only for preserving source
4038 compatibility where possible, use of GtkMenuFactory is deprecated as of
4041 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
4042 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
4043 missed this possibility when i added gtk_object_class_add_user_signal
4046 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
4048 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
4050 * gtk/gtkaccelgroup.h:
4051 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
4053 * gtk/gtkaccellabel.h:
4054 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
4055 display of the accelerators associated with a certain widget.
4057 * gtk/gtkitemfactory.h:
4058 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
4059 parsing and accelerator handling.
4061 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
4063 (gtk_menu_map): removed the allocation code.
4064 (gtk_menu_size_allocate): care for redrawing of children and resize
4065 our widget->window correctly.
4066 (gtk_menu_key_press): feature the new accelerator groups.
4068 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
4069 submenu if neccessary.
4071 * gtk/gtkmenuitem.c:
4072 * gtk/gtkcheckmenuitem.c:
4073 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
4077 (gdk_keyval_from_name):
4078 (gdk_keyval_name): new functions for keyval<->key-name associations.
4079 (gdk_keyval_to_upper):
4080 (gdk_keyval_to_lower):
4081 (gdk_keyval_is_upper):
4082 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
4083 regards to their cases.
4085 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
4087 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
4088 widget's class path.
4089 (gtk_widget_path): new function to calculate a widget's name path.
4091 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
4092 pattern matching, features reversed pattern matches.
4094 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
4096 * examples/extract.sh, examples/extract.awk:
4097 New files to automagically extract code examples from the
4100 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
4102 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
4103 * gtk/gtkcontainer.c (gtk_container_focus_move):
4104 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
4106 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
4108 * docs/gtk_tut.sgml: minor changes to support auto
4109 extraction of example code
4111 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
4113 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
4114 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
4116 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
4118 * docs/gtk_tut.sgml:
4119 - new section on Events
4120 - change all delete_event callbacks to include
4121 a GdkEvent parameter
4122 - clean up the formatting
4124 * examples - helloworld.c, helloworld2.c, notebook.c,
4125 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
4126 rulers.c, table.c, wheelbarrow.c: change all delete_event
4127 callbacks to include a GdkEvent parameter.
4129 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
4131 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
4132 field of crossing events.
4133 (struct _GdkEventCrossing): Added the following fields: time, x,
4134 y, x_root, y_root, mode, focus, state.
4136 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
4137 crossing event structure.
4139 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
4140 changes to the crossing event structure.
4142 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
4144 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
4146 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
4148 * docs/gtk_tut.sgml:
4149 - GtkTooltips, update to current API
4150 - change all 'gpointer *data' to 'gpointer data'
4151 - other minor changes
4153 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
4155 * configure.in (LDFLAGS): Bomb out with a moderately
4156 helpful message if detection of X libraries fails.
4158 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
4161 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
4162 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
4164 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
4165 gtk/gtksignal.c gtk/gtktext.c:
4167 Fixups for warnings from adding const to type of GHashFunc,
4170 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
4171 ansi-warnings fixups.
4173 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
4175 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
4176 Locate child at (border_width,border_width), not
4177 (2*border_width,2*border_width). [ The border is _outside_
4180 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
4181 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
4183 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4185 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
4188 1998-05-22 <sopwith@redhat.com>
4190 * gtk/gtkeventbox.c: Pass size_allocate on to the child
4191 regardless of whether it is visible or not. Also
4192 locate child at (border_width,border_width), not (0,0)
4194 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
4196 * gtk/gtkhandlebox.c: Added style_set handler.
4198 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
4199 [ From: Chris Lahey <clahey@umich.edu> ]
4201 * gtk/gtkeditable.c, gtk/gtkeditable.h,
4202 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
4203 and set_position functions to get and set the cursor position.
4205 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
4206 signal status. Make GtkText do user-controlled insertion
4207 and deletion through the Editable widget so that these
4208 signals are properly emitted.
4210 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
4211 display asterisks instead of empty space when visible = FALSE)
4213 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
4215 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
4218 1998-05-21 <sopwith@redhat.com>
4220 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
4221 custom routine for loading images specified in gtkrc's.
4223 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
4225 * configure.in: Use pthread_attr_init() as a test function,
4226 since most of the rest of -lpthread is macros on DU4.
4228 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
4230 * gtk/gtkcombo.c: implemented completion in the entry.
4232 1998-05-18 <sopwith@moebuis.labs.redhat.com>
4234 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
4236 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
4238 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
4239 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
4240 to be of runtype GTK_RUN_LAST.
4242 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
4245 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
4248 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
4250 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
4251 text retrived from GtkEntry. only intercept the Tab key if there
4252 was some text to complete.
4254 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
4256 Basic thread-awareness:
4258 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
4260 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
4261 gdk_threads_[init/enter/leave] for applications, plus
4262 gdk_threads_wake to wake the mainloop thread out of
4265 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
4267 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
4269 * gtk/testgtk.c (list_clear): Account for the fact
4270 that gtk_list_clear_items is not inclusive. (Clears
4273 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
4275 * gdk/gdk.c: include gdkkeysyms.h always
4278 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
4280 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
4281 the visibility_notify_event method and changed method order.
4283 1998-05-14 <sopwith@moebuis.labs.redhat.com>
4285 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
4287 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
4289 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
4290 from Olli Helenius <ollhel@batman.jytol.fi>.
4292 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
4294 (gtk_type_set_chunk_alloc): new function to allow allocation of new
4295 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
4298 * gtk/gtkobject.c (gtk_object_finalize): free an object through
4301 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
4303 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
4304 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
4306 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
4308 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
4309 GPOINTER_TO_UINT fixes.
4311 * gtk/gtksignal.c: Include <string.h> for memset.
4313 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
4314 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
4316 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
4317 Cleanups, comments and the ability to have rulers with
4318 a reversed direction.
4320 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
4322 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
4323 that Sopwith missed when changing stat => lstat.
4325 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
4327 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
4328 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
4329 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
4331 * gdk/gdk.c: Print sizeof() results
4332 as g_print("%ld", (glong)sizeof(foo)), to deal with
4333 sizeof() being long on Alpha's.
4335 * gtk/testgtk.c: include <string.h> for strlen
4337 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
4338 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
4340 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
4341 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
4343 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
4345 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
4346 (From: Christopher James Lahey <clahey@umich.edu>)
4348 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
4351 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
4352 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
4353 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
4354 the default relief for the toolbars buttons. Added an
4355 toggle for the toolbar test in testgtk.c.
4357 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
4359 * docs/gtk-config.1: Rewritten and hopefully improved.
4361 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
4364 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
4366 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
4368 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
4369 GtkPreview's visual and colormap, otherwise things can BadMatch.
4371 * gtk/testgtk.c (create_color_preview):
4372 (create_gray_preview): Removed pushing/popping of visual/colormap
4373 now that GtkPreview does things correctly.
4375 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
4376 (gtk_color_selection_draw_wheel): Pick the style from the correct
4377 place (the colorsel->wheel_area widget) so that the GCs will match
4378 with where we are going to paint to.
4380 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
4381 of visual/colormap now that GtkColorSelection does things the
4384 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
4386 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
4387 previously unused window->need_resize flag to mark if a window's
4388 descendents changed size while the window was not visible. In this
4389 case, when the window becomes visible, we reallocate everything,
4390 since we didn't keep track of what actually changed.
4392 (Fixes bug where changing the popdown strings of a
4393 combo to something of the same length caused them to
4394 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
4396 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
4398 [security audit by Alan Cox]
4400 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
4401 exceed maximum assumed size.
4403 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
4404 not exceed maximum assumed size.
4405 (gtk_menu_factory_remove): likewise.
4406 (gtk_menu_factory_find_recurse): likewise.
4408 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
4410 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
4411 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
4412 redrawn if that is still neccessary. don't allow queueing of already
4414 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
4415 widgets which are in the queue can be destroyed safely, handle
4416 requeueing properly.
4417 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
4418 widgets which are in the queue can be destroyed/unrealized safely.
4420 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
4422 * gtkfaq.sgml: add question on multi-threading,
4425 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
4427 * configure.in (cflags_set): preserve automake CFLAGS.
4429 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
4430 and libgdk-1.1.la. this means we need to change certain portions of
4431 the Makefile.am on major/minor version bumps.
4433 * ltmain.sh: the -release option is not required anymore.
4435 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
4436 of the first argument to be of type GtkObject. unconditionally compile
4437 this function. removed __GNUC__ dependancy of the gtk_object_ref and
4438 gtk_object_unref macro wrappers for this function.
4440 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
4444 (gtk_object_data_try_key):
4445 (gtk_object_data_force_id): these are now macros substituting the old
4446 functions. we just use the corresponding g_dataset_* functions for
4447 key->id associations. (this is to assure unique key<->id associations).
4449 1998-05-10 Stefan Jeske <stefan@gtk.org>
4451 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
4454 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
4456 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
4458 * configure.in (LIBS): Try to figure out if this
4459 is Digital Unix and we need -std1 to get the
4462 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
4464 * docs/gtk_tut_it.sgml: update of Italian tutorial
4465 translation from Daniele Canazza <dcanazz@tin.it>
4467 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
4469 * gtk/gtkfeatures.h.in: new file used as template for
4470 * gtk/gtkfeatures.h: new file to define macros indicating newly
4471 introduced features, such as GTK_HAVE_SIGNAL_INIT.
4474 (gtk_signal_emitv_by_name):
4476 new functions to emit signals with an already provided parameter set.
4477 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
4478 (gtk_signal_real_emit): prototype changes, so this functions always
4479 gets its parameters and signal structure as arguments.
4480 (gtk_signal_emit): provide the signal structure and parameter list for
4481 gtk_signal_real_emit.
4482 (gtk_signal_emit_by_name): likewise.
4484 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
4486 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
4487 signal connections through unsetting GTK_CONNECTED.
4488 (gtk_signal_handler_insert): reflect the presence of signal connections
4489 through setting GTK_CONNECTED.
4490 (gtk_signal_real_emit): only check for handler emissions if the object
4491 has the GTK_CONNECTED flag set.
4492 (gtk_signal_handler_pending): don't check for pending handlers if the
4493 GTK_CONNECTED flag is not set for this object.
4495 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
4496 a GtkObject has signal handler connections.
4498 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
4499 set for this object call gtk_signal_handlers_destroy().
4501 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
4502 multiple processing of macro args.
4504 * gtk/gtktypeutils.c:
4507 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
4509 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
4511 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
4512 draw-queue when we are done.
4514 (gtk_widget_queue_draw/_queu_resize): Always return
4515 FALSE and avoid having two idles at the same time.
4517 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
4519 * gtk/gtktext.c: Various fixes to make sure cache
4520 lines are freed if line_start_cache doesn't point to the
4521 beginning of the cache.
4523 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
4525 * style_set improvements for GtkText and GtkEntry
4527 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
4529 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
4532 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
4534 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
4535 data chunks through a global object data structure list. unlink
4536 object data before invoking its destroy function.
4537 (gtk_object_finalize): slight modification to allow usage of object
4538 data during object finalization.
4540 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
4542 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
4543 signal names, e.g. "signal-name" is now an alias for "signal_name".
4544 (gtk_signal_handler_new): allocate handlers through a global handler
4545 structure list, that's faster than memchunks.
4546 (gtk_emission_new): allocate emissions through a global emission
4547 structure list, that's faster than memchunks.
4549 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
4551 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
4553 * ltmain.sh: added a new commandline flag -postfix similar to -release,
4554 but will immediately change the library name.
4557 * gtk/Makefile.am: specify -postfix and -version-info
4559 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
4560 GTK_BINARY_AGE. calculate LT_* variables for libtool.
4562 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
4564 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
4565 background (fg_set -> bg_set confusion).
4567 1998-05-06 Stefan Jeske <stefan@gtk.org>
4569 * gtk/testgtk.c (unselect_all): Removed code that caused an
4572 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
4574 * gtk/gtksignal.c: reimplemented the signal storage system to use a
4575 linear array rather than a hash table.
4576 be carefull *not* to keep any GtkSignal pointers across invokations
4577 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
4578 general code cleanups, made all allocations through memchunks.
4579 (gtk_signal_lookup): we now do the lookup of signals through a key_id
4580 for the signal names to avoid multiple hashing of the signal name on
4581 lookups for the several hirarchy levels of an object.
4583 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
4585 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
4586 to speed things up and remove code duplication.
4588 Reintegrated buffer overflow patches, and added
4589 some extra paranoia.
4591 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
4593 * gdk/gdk.c (gdk_event_translate): A guint * was
4594 being passed where X expected a Keysym *, and
4595 keysyms are long's on Alpha Linux. This was causing
4596 segfaults in Xlib, apparently because of alignment.
4597 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
4599 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
4601 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
4602 set GDK_EXPOSURE_MASK for DrawingAreas
4604 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
4606 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
4607 (superceded by RC file reparsing capabilities)
4609 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
4610 events. (Shouldn't be sent to the InputOnly leader, which
4611 it is now by gdk_event_send_clientmessage_toall
4613 * gtk/testgtk.c: Added extra button to rcfiles test
4614 to send out _GDK_READ_RCFILES events.
4616 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
4618 * gtk/gtkselection.c (gtk_selection_clear): Fixed
4619 reversed conditionals that caused segfault on some
4622 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
4624 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
4625 cast to GTK_OBJECT for gtk_object_ref.
4627 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
4629 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
4630 checking for signal initialization in gtksignal.c.
4632 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
4633 a long debugging period ;)
4635 1998-05-05 Stefan Jeske <stefan@gtk.org>
4637 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
4638 New function to wrap XSetDashes; modified gtkctree.c to use it.
4640 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
4642 * configure.in: Added $x_libs in the other_libraries field in the
4643 check for XShapeCombineMask.
4645 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
4647 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
4649 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
4650 linear array rather than a hash table. it actually speeded up testgtk
4651 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
4652 pointers across invokations of gtk_type_node_next_and_invalidate() and
4653 therefore gtk_type_unique()!
4655 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
4656 inheritance of a class pointer.
4657 (GTK_OBJECT): modifications for speedups.
4658 (GTK_IS_OBJECT): likewise.
4659 (GTK_OBJECT_CLASS): likewise.
4660 (suggested by owen).
4662 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
4664 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
4666 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
4667 since its derivation changed 4 month ago ;(. showed up with the unique
4668 type name checking code in gtk_type_unique().
4670 * random guint->GtkType and macro fixups.
4672 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
4674 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
4675 Configure events that would result in a negative
4678 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
4680 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
4681 "glibconfig.h" and another about writing another IRC
4684 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
4686 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
4687 parameters to log are doubles. Digital Unix apparently
4688 is missing the argument in its prototype.
4690 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
4692 * gtk/gtklabel.c (gtk_label_state_changed): Don't
4693 force a clear until the widget is actually on
4696 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
4698 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
4699 to make this consistent with the gtk-1-0 tree.
4701 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
4703 * configure.in acheader.h gdk/gdkwindow.c
4704 Check for Shape extension both on the client and server
4705 side. (And, more importantly, check for the shape extension
4706 so we may include -lXext even when compiling with --disable-xshm)
4708 Don't set override_redirect on all shaped windows. It isn't
4711 * gdk/gdkwindow.c: Set ->colormap to NULL for root
4712 and foreign windows. Use this to check if we
4713 need to get the colormap from X.
4715 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
4717 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
4718 between the default and the button always in GTK_STATE_NORMAL.
4720 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
4723 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
4725 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
4726 Fix a buffer overflow on pixmaps that claim to have
4727 more than 31 characters per pixel.
4729 (gdk_pixmap_read_string): Don't wrap around strings longer
4730 than half of address space ;-)
4732 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
4733 that were used for printing integers.
4740 int foo (void) { ... }
4742 Even where there were proper prototypes elsewhere.
4744 * gdk/gxid.c (handle_claim_device): Some extra checks.
4745 It isn't safe against being fed bad X id's, but at
4746 least it should be safe against deleting all your
4749 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
4751 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
4752 to set the adjustments value when there is no current emission.
4753 [ Removed by mutual agreement owt 5/3/1998 ]
4755 * gtk/gtksignal.c: added new functions to retrive the number of
4756 existing emissions for a certain signal.
4757 (gtk_signal_n_emissions): new function.
4758 (gtk_signal_n_emissions_by_name): new function.
4760 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
4762 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
4763 set the current focus_child of a container, does proper referencing and
4764 adjusts the vadjustment/hadjustment associated with the focus widget.
4766 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
4767 containers via gtk_container_set_focus_child.
4769 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
4772 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
4773 child since not every child removal goes through this function (this
4774 showed up after gtk_container_set_focus_child() started to reference the
4775 focus_child of a container).
4777 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
4778 of a container from gtk_container_remove into this place.
4780 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
4782 * gtk/gtksignal.c: added new functions to operate on intermediate
4783 function pointers. implemented incremental blocking.
4784 (gtk_signal_disconnect_by_func): new function.
4785 (gtk_signal_handler_block_by_func): new function.
4786 (gtk_signal_handler_unblock_by_func): new function
4788 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
4790 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
4791 Always show the scrollbars when the policy is
4792 GTK_POLICY_ALWAYS...
4794 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
4796 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
4797 "value_changed" if we really passed a new value.
4798 (gtk_adjustment_changed): new function to emit the "changed" signal.
4799 (gtk_adjustment_set_value): new function to emit the "value_changed"
4802 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
4804 * gtk/gtkcombo.c: Further changes to the way the window
4805 is popped up so that it will be compatible with
4806 auto-scrolling in the future.
4808 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
4810 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
4811 the combo-list is empty since that will cause the combo to operate
4812 on a non existing GtkList window.
4813 (gtk_combo_get_pos): provide the combo list with a usfull default
4815 (gtk_combo_popup_button_press): grab the focus.
4816 (gtk_combo_activate): grab the focus.
4818 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
4820 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
4821 function to reset the RC styles for a heirarchy
4823 Clear the window background if necessary in
4824 gtk_window_style_set.
4826 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
4827 rereads all previously read RC files.
4829 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
4830 (Should it just be called gdk_get_toplevels?)
4832 * gtk/testgtk.c: New test to reload RC files.
4834 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
4837 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
4838 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
4839 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
4840 the GTK_ prefix (this solution involved less changes in the
4841 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
4842 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
4843 from lars & stefan to support the derivation of GtkCtree.
4847 initial import of a tree widget derived from gtkclist, courtesy
4848 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
4851 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
4853 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
4855 (gtk_list_insert_items):
4856 (gtk_list_remove_items_internal):
4857 (gtk_list_clear_items):
4858 remove a possible pointer grab, we might get thrown into a loop
4860 (gtk_list_button_press): grab the pointer *before* selecting the child,
4861 because selection of items may cause the lists children to change,
4862 resulting in a grab release.
4863 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
4865 (gtk_list_shutdown): remove all children from the list.
4866 (gtk_real_list_unselect_child):
4867 (gtk_real_list_select_child): *always* put our internal structures into
4868 sane state *before* signal emisions (i.e. list->selection updates prior
4869 to gtk_list_item_[de]select() calls).
4871 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
4872 focused child walks out of the window.
4873 removed CAN_FOCUS for the combo arrow's button since it doesn't react
4874 to keyboard events ("clicked" connection is missing).
4876 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
4878 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
4879 getting colormap for FOREIGN windows to go along with
4880 Raster's fix for visuals.
4885 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
4887 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
4888 Check to catch the case when the viewport fits in either
4889 direction or both, instead of flip-flopping infinitely.
4891 Only show/hide the scrollbars once at the end.
4893 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
4895 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
4896 Include the scrollbars in the foreach call.
4897 (gtk-fortier-980405-0.patch;
4898 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
4901 really should also include its tabs, but that might cause
4902 problems for programs if they
4904 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
4906 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
4907 resize if the size actually changed.
4908 (gtk-johannes-980414-0.patch ;
4909 johannes@nada.kth.se (Johannes Keukelaar) )
4911 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
4913 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
4914 ltmain.sh ltconfig config.sub config.guess:
4916 Reverted back to libtool-1.2 (plus minor patches) so as not to
4917 force the issue for everyone else.
4919 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
4921 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
4922 Updated to libtool 1.2a.
4924 * gtk/gtkclist.c: Draw the in-between lines with style->base
4925 instead of style->white.
4927 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
4929 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
4930 Cache the colormap and children of a window locally
4931 instead of fetching them from the server when needed.
4932 Huge performance difference for creating/destroying
4935 * gtk/gtkstyle.c: Find the depth from the cached
4936 visual, instead of asking the server.
4938 * gtk.m4: Distribute the new version which tries to
4939 figure out what went wrong and give helpful error
4942 * ltmain.sh ltconfig config.sub config.sh:
4943 Updated to libtool 1.2a
4945 * gtk/gtktext.c: Fixed a bug where the drawn level
4946 was being messed up when the text was scrolled
4949 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
4951 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
4952 the filesystem under you (fix from Josh)
4954 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
4956 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
4957 if the viewport already exists before iterating over it, maybe we
4958 haven't been constructed yet.
4960 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
4962 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
4963 the GtkBin widget already has a child.
4965 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
4966 check that child->parent == NULL;
4968 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
4970 * gtk/gtkselection.c (gtk_selection_clear): Only return
4971 FALSE when the clear event is been rejected, not when
4972 widget has already lost the selection. (Which should
4973 only happen when we are setting the selection to another
4976 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
4978 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
4980 Removed the "check visibility after gtk_widget_unparent" bug
4981 in hopefully the last three places.
4983 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
4985 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
4988 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
4990 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
4991 for CAN_FOCUS widgets.
4993 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
4994 adjustments for the table.
4995 (create_list): feature automatic adjustment of the scrolled window to
4996 always contain the focused child.
4997 (create_main_window): keep the focussed button always inside of the
5000 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
5001 adjustments, to contain the allocation of the currently focused child.
5002 (gtk_container_set_focus_hadjustment): new functin to set the
5003 horizontal focus adjustment.
5004 (gtk_container_set_focus_vadjustment): new functin to set the vertical
5007 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
5008 clamp the currents adjustment page into a specific range.
5010 * random GtkType fixups for gtk_*_get_type() functions.
5012 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
5014 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
5015 Account for the fact that gtk_tree_item_remove_subtree
5016 will be called recursively.
5018 Handle removing a collapsed subtree.
5020 (From Andy Dustman <adustman@comstar.net>)
5022 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
5023 root tree when removing items from a non-previously
5026 * gtk/testgtk.c: Added a remove_subtree button.
5028 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
5030 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
5031 before object removing data. This change fixes a bug where
5032 removing the last weak references would cause it to be
5035 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5037 * gdk/Makefile.am: Removed mostly useless dependency that
5038 was causing problems for SGI's make, when used with
5039 the 'make dist' form of GTK+. (Dependency caused dependencies
5040 to be redone when BUILT_SOURCES changed)
5042 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
5044 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
5047 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
5048 to gtkitem.c so dragging can also work in lists.
5050 * gtk/gtklist.[ch]: Track child enter events and use
5051 those to allow dragging the selection.
5053 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
5055 * gtk/gtktext.c: Try enabling background pixmaps for editable text
5056 widgets. There is a bit of flashing, but not too bad. If you
5057 don't want the flashing, you can always not set a background
5060 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5062 * gtk/gtktext.c: Fixed a bug where the drawn level
5063 was being messed up when the text was scrolled
5066 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
5068 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
5069 bug: There is no need to set the ExposureMask in the XGrabPointer
5070 (this caused DnD programs to crash).
5072 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
5074 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
5075 field to be of type guint.
5076 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
5078 (gtk_accelerator_table_install): keep a per object list of accelerator
5079 tables that refer to this object.
5080 (gtk_accelerator_table_remove): remove the accelerator table from the
5082 (gtk_accelerator_table_clean): warn if there are any object references
5083 left in an accelerator table upon destruction.
5084 (gtk_accelerator_tables_delete): new function to delete object
5085 references from the accelerator tables associated with this object.
5087 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
5088 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
5089 of an accelerator can be prevented by gtk_signal_emit_stop().
5090 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
5091 so there are no stale pointers in accelerator tables left.
5093 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
5095 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
5096 visible before we unparent it.
5098 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
5100 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
5101 running_timeouts list with the tmp_list link itself, not with a new
5102 GList structure pointing to our link. that would fill up memory and
5103 causes the GList.data fields of the running_timeouts list to point to
5104 GList structures and not GtkTimeoutFunction structures which is a
5106 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
5109 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
5111 * gtk/gtkradiomenuitem.h:
5112 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
5113 ala gtk_radio_button_set_group.
5114 (gtk_radio_menu_item_init): assure that we always have at least a group
5115 that points to self.
5117 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
5118 added g_return_if_fail() statements.
5119 (gtk_radio_button_init): assure that we always have at least a group
5120 that points to self.
5122 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
5124 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
5126 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
5128 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
5129 (Damon Chaplin), which i got wrong when applying Damon's patch the last
5132 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5134 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
5135 that when we are running with a non-installed colormap,
5136 in 8-bit pseudo-color, we actually are using the system
5137 visual. (Fixes *Bad Match* errors on Digital Unix machines
5138 with multiple 8-bit pseudo-color visuals)
5140 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
5142 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
5143 by whoever thought that randomly changing ints to unsigned int
5144 without reviewing the code was a good idea. It is, btw not
5145 mentioned in the ChangeLog as usual, but I know it was not Elliot
5146 the culprit this time.
5148 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5150 * Released GTK+ 1.0.0