1 1999-01-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
3 * gtk/gtkdnd.c (gtk_drag_get_event_action): Allow button 2 to act
4 as GDK_ACTION_ASK. Also, allow MOD1 to specify GDK_ACTION_ASK
5 only if that action is enabled in the actions argument.
7 1999-01-20 Raja R Harinath <harinath@cs.umn.edu>
9 * configure.in (gtklocaledir): New variable. Define to
10 $prefix/$DATADIRNAME/locale. This will point to the directory
11 where po/Makefile actually installs the message translation
13 * gtk/Makefile.am (INCLUDES): Define GTK_LOCALEDIR to
14 $(gtklocaledir) rather than $prefix/share/locale.
16 Wed Jan 20 21:07:45 1999 Timur Bakeyev <mc@bat.ru>
18 * gtk/gtkrc.c (gtk_rc_init): There are some systems, that lacks of
19 LC_MESSAGES in locale.h. As a last resort for such systems, set locale
22 Wed Jan 20 13:06:51 1999 Owen Taylor <otaylor@redhat.com>
24 * gtk/gtktext.[ch] (clear_[focus_]area): Instead of drawing
25 a background pixmap in with gdk_draw_pixmap(), set
26 it as a tile pixmap for a GC. This should speed
27 up things considerably and also will hide a bug
28 where text->first_onscreen_ver_pixel is being
29 corrupted, causing the bg pixmap drawing code to generate
32 Tue Jan 19 22:15:10 1999 Lars Hamann <lars@gtk.org>
35 (gtk_list_button_press): only call grab_add if pointer_grab succeeds.
36 (gtk_list_unmap): remove pointer/widget grabs if needed.
37 (gtk_list_signal_focus_lost): removed.
38 (gtk_list_focus) (gtk_list_set_focus_child): set last_focus_child.
39 (gtk_list_remove_items_internal) (gtk_list_clear_items): unset
40 undo_focus_child if necessary. In case of SELECTION_BROWSE/EXTENDED
41 select a new item if selection is empty.
43 Tue Jan 19 00:21:15 1999 Tim Janik <timj@gtk.org>
45 * gtk/gtkcompat.h: add compatibility define for
46 gtk_ctree_set_reorderable.
48 Tue Jan 19 00:02:10 1999 Lars Hamann <lars@gtk.org>
50 * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full):
51 add a sanity check [from Todd Dukes <todddukes@netscape.net>]
53 Mon Jan 18 22:54:11 1999 Lars Hamann <lars@gtk.org>
55 * gtk/gtkclist.c (gtk_clist_button_press): only call grab_add
56 if pointer_grab succeeds.
57 (gtk_clist_unmap): remove pointer/widget grabs if needed.
59 Mon Jan 18 15:46:14 1999 Owen Taylor <otaylor@redhat.com>
61 * gtk/gtklabel.c (gtk_label_init): Initialize
62 label->label_wc. (We allocate labels from
65 Mon Jan 18 18:53:08 1999 Tim Janik <timj@gtk.org>
67 * gtk/gtkscale.c (gtk_scale_set_digits): CLAMP digits into a
68 meaningfull range (we need to stay below a certain limit anyways
69 to avoid string buffer overflows).
71 * gtk/gtkvscale.c (gtk_vscale_pos_background): fixed up background
72 area calculations for GTK_POS_RIGHT and GTK_POS_BOTTOM.
73 * gtk/gtkhscale.c (gtk_hscale_pos_background): likewise.
74 (gtk_hscale_draw_value): safety CLAMP the value's x position for
75 GTK_POS_TOP and GTK_POS_BOTTOM, so we don't paint strings outside of
78 * gtk/gtkscale.c: implemented GtkScale::digits, GtkScale::draw_value
79 and GtkScale::value_pos arguments.
81 Mon Jan 18 14:26:17 1999 Owen Taylor <otaylor@redhat.com>
83 * docs/Changes-1.2.txt: Some editing, a little more
86 Mon Jan 18 13:25:14 1999 Owen Taylor <otaylor@redhat.com>
88 * gtk/gtkmenu.[ch]: Added gtk_menu_set_title() to
89 set the title of a menu in the torn-off state.
91 * gtk/gtkthemes.c (gtk_theme_engine_get): When loading
92 of theme engine fails, just warn and do without -
95 * gtk/gtkmain.c (gtk_check_version): s/to/too/.
97 Mon Jan 18 01:21:03 1999 Lars Hamann <lars@gtk.org>
99 * gtk/gtkctree.c (draw_row): fixed auto resize bug.
101 Sun Jan 17 17:35:28 CST 1999 Shawn T. Amundson <amundson@gtk.org>
103 * Released GTK+ 1.1.13
107 docs/gtk-config.1: ver=1.1.13
109 Mon Jan 18 00:22:54 1999 Lars Hamann <lars@gtk.org>
111 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release):
112 block drag source signal handler during column resizes.
113 (gtk_clist_set_column_visibility): resize clist if needed.
114 (gtk_clist_map): raise resize windows to make resize
115 cursor visible again.
117 Sun Jan 17 22:47:15 1999 Tim Janik <timj@gtk.org>
119 * gtk/gtkwidget.[hc]:
120 * gtk/gtkspinbutton.[hc]:
121 * gtk/gtkscrolledwindow.[hc]:
122 * gtk/gtkprogressbar.[hc]:
123 * gtk/gtkpreview.[hc]:
124 * gtk/gtkobject.[hc]:
127 * gtk/gtkcontainer.[hc]:
129 removed deprecated functions: gtk_clist_set_border,
130 gtk_container_block_resize, gtk_container_unblock_resize,
131 gtk_container_need_resize, gtk_ctree_set_reorderable,
132 gtk_ctree_show_stub, gtk_ctree_set_use_drag_icons,
133 gtk_entry_adjust_scroll, gtk_object_class_add_user_signal,
134 gtk_preview_put_row, gtk_progress_bar_construct,
135 gtk_scrolled_window_construct, gtk_spin_button_construct,
136 gtk_widget_freeze_accelerators, gtk_widget_thaw_accelerators.
138 * gtk/gtkcheckmenuitem.c: removed binary variant of
139 gtk_check_menu_item_set_state, this is still defined in gtkcompat.h
142 * docs/Changes-1.2.txt:
143 removed section about gtk_idle_remove_by_data vs.
144 gtk_timeout_remove_by_data, we actually don't even provide a
145 gtk_timeout_remove_by_data() function.
146 added a table with removed functions and their replacements.
148 * NEWS: updates for 1.1.13.
150 Sun Jan 17 17:56:33 1999 Owen Taylor <otaylor@redhat.com>
152 Patch from Felix Bellaby <felix@pooh.u-net.com>
154 * gdk/gdk.c: Use XmbSetWMProperties to set
155 the class/command on the loader window so that the
156 client machine is also set in the same place.
157 (For X11R5 sesssion management compatibility)
159 * gdk/gdk.c: (gdk_set_sm_client_id) Implementation
160 of function to set the session manager client ID.
162 * gdk/gdkwindow.c (gdk_window_new): Set
163 WM_CLIENT_LEADER propertiy on all windows pointing
164 back to GDK's leader window.
166 Sun Jan 17 12:01:57 1999 Owen Taylor <otaylor@gtk.org>
168 * gtk/gtkrc.c (gtk_rc_style_init): Allow a bg_pixmap
169 of "<none>", as there was no way to set the background
170 on all widget but some widgets. This is important
171 because Text widgets with background images are
172 slow and possibly ugly.
174 1999-01-17 Nat Friedman <nat@nat.org>
176 * gtk/gtkscrolledwindow.c (DEFAULT_SCROLLBAR_SPACING): New macro.
177 Changed the spacing from 5 to 3.
179 * gtk/gtkmenubar.c (BORDER_SPACING): Changed the extra spacing on
180 the menubar from 2 to 0.
182 Sun Jan 17 11:51:17 1999 Owen Taylor <otaylor@gtk.org>
184 * gtk/gtktext.c (gtk_text_move_cursor): Fix typo
185 [ gtk-mailund-990116-0: Thomas Mailund Jensen <mailund@daimi.au.dk> ]
187 Sun Jan 17 11:15:05 1999 Christopher Blizzard <blizzard@appliedtheory.com>
189 * gtk+.spec: Update to version 1.1.13, change packager address.
191 Sun Jan 17 14:52:29 1999 Tim Janik <timj@gtk.org>
194 * gtk/gtkcheckmenuitem.[hc]:
195 deprecated gtk_check_menu_item_set_state, people should use
196 gtk_check_menu_item_set_active instead.
199 s/gtk_check_menu_item_set_state/gtk_check_menu_item_set_active/.
201 Sun Jan 17 05:19:14 1999 Tim Janik <timj@gtk.org>
203 * configure.in: incremented version number to 1.1.13, bin age 0,
206 * gtk/gtkmain.c (gtk_idle_remove_by_data): use g_idle_remove_by_data to
207 remove idles, so `data' cannot conflict with other sources.
209 * gtk/gtkcompat.h: define gtk_style_apply_default_pixmap here.
211 * gtk/gtkstyle.[hc]: removed gtk_style_apply_default_pixmap.
212 (struct _GtkStyle): reordered GtkStyleClass*klass; member.
214 Sat Jan 16 19:42:48 1999 George Lebl <jirka@5z.com>
216 * gtk/gtktooltips.c: for NO_WINDOW widgets, add their allocation.y
217 to the position of the tooltip. This fixes tooltip positioning
218 problems with some widgets such as a checkbox.
220 Sat Jan 16 14:01:53 1999 Stuart Parmenter <pavlov@gtk.org>
222 * gtk/gtklayout.c (gtk_layout_put): check for child widget being NULL
224 Sat Jan 16 05:02:22 1999 Lars Hamann <lars@gtk.org>
226 * gtk/gtkclist.c (gtk_clist_button_press): fixed double click bug.
228 Fri Jan 15 19:16:42 1999 Tim Janik <timj@gtk.org>
230 * gtk/Makefile.am: define GTK_DISABLE_COMPAT_H for compilation of gtk
233 * gtk/gtkrc.c (gtk_rc_style_unref): added an assertment.
237 don't provide compatibility defines if GTK_DISABLE_COMPAT_H is defined.
240 * gtk/gtkstyle.c: coding style, indentation and alignment fixups.
244 (gtk_style_set_background): fixed assertments.
245 (gtk_default_draw_ramp):
246 (gtk_default_draw_cross):
247 (gtk_default_draw_oval): issue warnings since these functions aren't
251 (gdk_window_hide): only unmap window if already mapped.
252 (gdk_window_show): only map window if !mapped.
253 (gdk_window_internal_destroy): destroyed windows can't be mapped.
255 * gtk/gtkwidget.c (gtk_widget_event): don't ignore expose events just
256 because a resize is queued on a widget, we rely on the expose events
259 Fri Jan 15 10:22:21 1999 Owen Taylor <otaylor@redhat.com>
261 * gtk/gtkwidget.c (gtk_widget_class_init):
262 nparams for selection_get should be 3, not 2.
263 [ From Damon Chaplin <damon@karuna.freeserve.co.uk> ]
265 * gtk/gtkeventbox.c (gtk_event_box_paint): Add a paint
266 routine so queued redraws work inside event boxes.
268 Thu Jan 14 17:47:37 1999 Owen Taylor <otaylor@redhat.com>
270 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Only
271 redraw character under cursor when not displaying
272 highlighted selection.
274 * gdk/gdkrgb.c (gdk_rgb_init): Add in a cast to
275 gpointer to make IRIX cc happy.
277 Thu Jan 14 12:29:50 1999 Owen Taylor <otaylor@redhat.com>
279 * gtk/gtkcheckbutton.c (gtk_check_button_draw): Restructure
280 the drawing code to remove a bit of duplication -
281 and to remove a call to gtk_widget_draw_focus()
282 that queues a redraw when an expose occurs.
284 * gtk/gtklabel.c (gtk_label_expose): Fix up handling
287 * gtk/gtknotebook.c (gtk_notebook_draw): If we redraw
288 the whole widget, also redraw the corresponding
289 areas of the child widget. (have_visible_child
290 still has some problems)
292 * gdk/gdkpixmap.c: Change some g_new's to g_new0 so
293 that fields unused for pixmaps get initialzized
296 * gdk/gdk.h gdk/gdkwindow.c gdk/gdkprivate.h: Add new calls
297 gdk_window_is_visible() and gdk_window_is_viewable()
298 and a mapped flag to the window private structure.
300 * gtk/gtkbin.c gtk/gtkclist.c gtk/gtkfixed.c gtk/gtkitem.c
301 gtk/gtklayout.c gtk/gtklist.c gtk/gtkmenushell.c
302 gtk/gtknotebook.c gtk/gtkpaned.c gtk/gtktree.c
303 gtk/gtktreeitem.c gtk/gtkviewport.c:
304 Map windows after mapping children.
306 * gtk/gtkwidget.c (gtk_widget_clip_rect): Handle
307 rectangles completely clipped away correctly.
309 * gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
310 call gtk_widget_draw if width or height is 0.
312 * gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
313 rely on GTK_REDRAW_PENDING after we've cleared
314 it. (This was causing draw-combining to not
317 * gtk/gtkbin.c gtk/gtkscale.c: Remove uneccessary calls
318 to gtk_widget_queue_draw() when mapping.
320 Thu Jan 14 11:29:53 1999 Owen Taylor <otaylor@redhat.com>
322 * gtk/gtkdnd.c (gtk_drag_get_event_action): Make
323 MOD1-drag also do action ask.
325 * gtk/gtkdnd.c (gtk_drag_button_release_cb): Send the
326 button-release event we simulate to get grabs released,
327 with a window of GDK_ROOT_PARENT instead of the actual
328 widget. This is a bad hack in some sense, but seems
329 to work nicely. (It's sort of like what you would
330 if you grabbed on button press, then the user
331 released outside of the widget.)
333 Thu Jan 14 20:29:16 1999 Owen Taylor <otaylor@redhat.com>
335 * gtk/gtkstyle.[ch] (gtk_style_apply_default_background):
336 Change copy_area => !set_bg. Use tile instead of
337 gdk_window_copy_area when drawing without !set_bg.
339 This does mess up timj's neat check-button example,
340 but is consistent with how we interpret background
341 pixmaps everywhere else in the default scheme.
343 Restructure code for clarity.
345 Thu Jan 14 19:19:51 1999 Owen Taylor <otaylor@redhat.com>
347 * gdk/gdkevents.c: Do all event processing in
348 dispatch() instead of prepare() and check().
350 Wed Jan 13 22:34:29 1999 Owen Taylor <otaylor@redhat.com>
352 * gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkhandlebox.c
353 gtk/gtkframe.c gtk/gtk[hv]box.c gtk[hv]paned.c gtk/gtklist.c
354 gtkmenu.c gtkmenuitem.c gtkmenubar.c gtknotebook.c
355 gtk/gtkscrolledwindow.c gtk/gtktable.c gtk/gtktree.c
356 gtk/gtktreeeitem.c gtk/gtkviewport.c
358 Fix up comparisons of signed and unsigned ints to avoid
359 assigning negative widths/heigths.
361 Wed Jan 13 21:18:41 1999 Owen Taylor <otaylor@redhat.com>
363 * acinclude.m4 (ac_result): Unset CATOBJEXT so
364 that the macros and Makefiles correctly handle
365 disabling NLS when no gettext is found.
367 Wed Jan 13 20:14:32 1999 Tim Janik <timj@gtk.org>
369 * gtk/gtkarg.c (gtk_arg_copy): in comparisions with GTK_TYPE_STRING, use
370 the fundamental type to catch GTK_TYPE_IDENTIFIER as well.
372 * gtk/gtkmenushell.c:
373 (gtk_real_menu_shell_activate_current):
374 (gtk_menu_shell_button_release): asure that we only activate sensitive
375 menu items, reported by Dave Cole <dave@dccs.com.au>.
377 Wed Jan 13 13:28:00 1999 Tim Janik <timj@gtk.org>
379 * gtk/gtkwidget.c: eliminate queue_clears or queue_draws where we know
380 that expose events will be generated.
381 (gtk_widget_map): only queue_draw for NO_WINDOW widgets.
382 (gtk_widget_unmap): only queue_clear_child for NO_WINDOW widgets.
383 (gtk_widget_size_allocate): we don't need a queue_clear on changing
384 allocations of !NO_WINDOW widgets, we do still need a full redraw for
387 * gtk/gtklabel.c (gtk_label_set_text): check whether the new string
388 actually differs from the original.
390 Tue Jan 12 22:50:44 PST 1999 Manish Singh <yosh@gimp.org>
394 * ltmain.sh: upgrade to libtool 1.2d (with fixes for irix6 and osf)
396 Tue Jan 12 18:30:51 1999 Owen Taylor <otaylor@redhat.com>
398 * gtk/testdnd.c (label_drag_data_received): Add
399 a drag_data_received handler for the label.
401 Tue Jan 12 15:01:50 1999 Owen Taylor <otaylor@redhat.com>
403 * gdk/gdkevents.c: Removed the putback_events queue,
404 since it was causing problems with event ordering -
405 just keep a single queue. If we need it, we can
406 add priorities to events.
408 * gdk/gdkevents.c: Annotate events with flags - we allocate
409 a GdkEventPrivate structure in gdk_event_new() and use these
410 flags to mark an event being translated as "pending" -
411 I.e., not yet ready to be dequeued. So we can put
412 the event on the queue and get the order of the
413 events right. (This solves the double-click problems)
415 * gdk/gdk.h gdk/gdkevents.h: Add gdk_event_peek() to get a copy
416 of the next event on the event queue.
418 * gtk/gtkmain.c (gtk_main_do_event): Use gdk_event_peek()
419 to check the next event without causing event queue
422 Tue Jan 12 15:41:20 1999 Owen Taylor <otaylor@redhat.com>
424 * gtk/gtklabel.c (gtk_label_expose): Minor fix
425 to handling of misc->[x/y]pad
427 Tue Jan 12 14:31:43 1999 Owen Taylor <otaylor@redhat.com>
429 * gtk/gtkstyle.[ch] (gtk_style_apply_default_pixmap):
430 Add back as wrapper function to restore source/binary
431 compatibility. grrrr.
433 Tue Jan 12 13:47:07 1999 Tim Janik <timj@gtk.org>
435 * reworked the redrawing heuristics somewhat, this fixed a bunch of
436 existing redrawing problems and majorly reduces overall redrawing needs
437 during normal operation. basically we now only queue redraws when
438 neccessary and much rely on the draw_area coalescing code in gtkwidget.c
439 to optimize the queued portions. widgets will now upon reallocation only
440 get redrawed if their allocation has changed. upon hide/show only the
441 area allocated by the child will be queued for the parent, this has the
442 side effect that parents which change their appearance in dependance on
443 the numer of visible children have to keep track of their children's
444 visiblity and eventually fully redraw themselves. this is a minor
445 constrain with great benefits in terms of redraw reduction, and only got
446 triggered by the notebook widget.
449 (gtk_widget_queue_clear): don't bother if width and height == 0.
450 (gtk_widget_queue_clear_child): new static function to queue a redraw of
451 the area obscured by a child on a parent.
452 (gtk_widget_queue_resize): queue_clear the widget if it is drawable.
453 (gtk_widget_show): queue resize on the widget before showing.
454 (gtk_widget_hide): queue resize on the widget after hiding.
455 (gtk_widget_map): queue_draw the widget after mapping.
456 (gtk_widget_unmap): queue_clear_child the widget.
457 (gtk_widget_size_allocate): queue_clear_child and queue_draw if the
458 widget's allocation changed.
459 (gtk_widget_unparent): queue_clear_child so the parent redraws obscured
461 (gtk_widget_real_show):
462 (gtk_widget_real_hide):
463 (gtk_widget_real_map):
464 (gtk_widget_real_unmap):
465 (gtk_widget_real_size_allocate): don't bother with redraw queueing,
466 descendants that override these functions don't do either and we handle
467 all redrawing/resizing related stuff before or after the signal emission
470 * gtk/gtkcontainer.c:
471 (gtk_container_resize_children): don't bother about redrawing anymore
472 since gtk_widget_size_allocate handles that for us now.
476 added a flag have_visible_child to indicate whether we need to draw
477 non child related portions at all, e.g. shadows etc.
478 (gtk_notebook_draw): if have_visible_child changed, do a full paint
479 instead of updating a small area only.
481 Mon Jan 11 20:44:35 1999 Tim Janik <timj@gtk.org>
483 * gtk/gtkstyle.c: changed gtk_style_apply_default_pixmap to
484 gtk_style_apply_default_background which takes an extra argument
485 copy_area to determine NO_WINDOW widget pixmap copying.
486 changed callers accordingly.
488 * gtk/gtktogglebutton.c:
489 (gtk_toggle_size_allocate):
490 (gtk_toggle_button_expose):
491 (gtk_toggle_button_paint): avoid messing with our parent's window if
492 toggle_button->draw_indicator == TRUE and we are a NO_WINDOW widget.
494 * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): draw
495 the draw_indicator with GTK_STATE_ACTIVE if the toggle button is active.
499 * gtk/testgtkrc: set pixmaps for ACTIVE and NORMAL check button
502 Mon Jan 11 23:52:58 1999 Lars Hamann <lars@gtk.org>
504 * gtk/gtklist.c (gtk_list_signal_drag_begin)
505 (gtk_list_drag_begin): end drag selections if necessary.
507 * gtk/gtkspinbutton.c/h (gtk_spin_button_update): made function
508 public. Manually force synchronization of spin button text and
511 Mon Jan 11 15:23:32 1999 Tim Janik <timj@gtk.org>
513 * gtk/gtktogglebutton.c: eliminated some queue_draws when invoking
514 gtk_widget_set_state, since that cares about redrawing already.
517 * gtk/gtktogglebutton.[hc]:
520 s/gtk_toggle_button_set_state/gtk_toggle_button_set_active/ since
521 set_state is already taken by gtkwidget.h.
523 * gtk/gtkcompat.h: #define gtk_toggle_button_set_state
524 gtk_toggle_button_set_active.
526 * gtk/gtkstyle.c: some indentation cleanups.
528 Mon Jan 11 15:12:33 1999 Tim Janik <timj@gtk.org>
530 * gtk/gtktogglebutton.c (gtk_toggle_button_set_mode): take previous
531 visibility state into account when unrealizing.
533 Mon Jan 11 10:45:28 1999 Owen Taylor <otaylor@redhat.com>
535 * gtk/gtkdnd.c: Only remove handlers for motion/button_release
536 at drop, remove "selection_get" handler later.
538 Mon Jan 11 13:31:49 1999 Tim Janik <timj@gtk.org>
540 * gtk/gtktypeutils.[hc]: removed Paolo Molaro's type creation hooks
541 again, since they 1) don't care about infinite recursion (likely
542 to achive), 2) we are in feature freeze for 1.2. this definitely
543 deserves a sane implementation in 1.3 though (but without a hook
544 return value, without seq_id hackery and with recursion checks).
546 Mon Jan 11 13:18:37 1999 Tim Janik <timj@gtk.org>
549 (gtk_window_key_release_event):
550 (gtk_window_key_press_event): only pass key events to the focus widget
553 * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): don't popup the
554 submenu if it isn't sensitive.
555 (gtk_menu_item_paint): state_type doesn't need to be reset to
556 GTK_STATE_INSENSITIVE if the widget is insensitive anyways.
558 * gtk/gtkcontainer.c (gtk_container_real_focus):
559 * gtk/gtklist.c (gtk_list_focus):
560 * gtk/gtkmenushell.c (gtk_menu_shell_move_selected):
561 * gtk/gtknotebook.c (gtk_notebook_focus):
562 s/GTK_WIDGET_SENSITIVE/GTK_WIDGET_IS_SENSITIVE/ since a widgets
563 sensitivity is determined through the parent as well,
564 GTK_WIDGET_SENSITIVE is only of interest inside gtkwidget.c, everywhere
565 else GTK_WIDGET_IS_SENSITIVE (widget) needs to be used to check for
568 * gtk/gtkaccelgroup.c (gtk_accel_group_activate): don't activate
569 object if it is an insensitive widget.
571 Mon, 11 Jan 1999 08:09:08 +0100 Paolo Molaro <lupus@debian.org>
573 * gtk/gtktypeutils.[ch]: add gtk_type_{add,remove}_creation_hook().
574 You can have a notification when a type is created.
576 1999-01-11 Tim Janik <timj@gtk.org>
578 * gtk/gtkmain.c (gtk_propagate_event): added an assertement.
580 Sun Jan 10 14:45:37 1999 Owen Taylor <otaylor@gtk.org>
582 * gtk/gtktext.c (text_properties_equal): Fixed
583 cut and paste bug when comparing text property
585 [ Matt Aubury <Matt.Aubury@comlab.ox.ac.uk> ]
587 1999-01-10 Tim Janik <timj@gtk.org>
589 * gtk/gtksignal.c (gtk_signal_lookup): if the lookup failed, try
590 to initialize the object class and reattempt the lookup, reported
591 by Paolo Molaro <lupus@lettere.unipd.it>.
593 Sat Jan 9 17:36:20 1999 Owen Taylor <otaylor@redhat.com>
595 * configure.in (ALL_LINGUAS): Added cs to ALL_LINGUAS.
597 Sat Jan 9 17:27:49 1999 Owen Taylor <otaylor@redhat.com>
599 * gtk/gtkfilesel.c (gtk_file_selection_populate):
600 Mark another string for internationalization.
601 [ Stanislav Brabec <utx@k332.feld.cvut.cz> ]
603 Sat Jan 9 14:02:08 1999 Owen Taylor <otaylor@redhat.com>
605 * gtk/gtktooltips.c (gtk_tooltips_force_window): Set
606 name "gtk-tooltips" on tip window so that a style
607 can be set for tooltips.
609 Fri Jan 8 19:00:17 1999 Owen Taylor <otaylor@redhat.com>
611 * gdk/gdkdnd.c (gdk_window_cache_filter): Fixed
612 some list-manipulation breakage.
614 * gdk/gdkdnd.c (gdk_window_cache_destroy): Free
615 window cache structure.
617 * gtk/gtkdnd.c (gtk_drag_set_icon_pixmap): Set an
618 event mask on the drag window so clicking on it
619 doesn't pop up root menus, etc.
621 * gtk/gtkdnd.c (gtk_drag_button_release_cb): Remove
622 signal handlers at button release.
624 Fri Jan 8 00:42:00 1999 Lars Hamann <lars@gtk.org>
626 * gtk/gtkspinbutton.c (gtk_spin_button_get_value_as_int)
627 (gtk_spin_button_get_value_as_float): call gtk_spin_button_update
628 before returning a value
630 * gtk/gtkclist.c (gtk_clist_motion): don't allow 'drag selections'
631 if clist is a drag source.
632 (gtk_clist_drag_begin): remove pointer grabs, end ongoing selections.
634 * gtk/gtkctree.c (remove_grab): copy of clist function.
635 (gtk_ctree_drag_begin): let clists drag_begin method set the
638 Thu Jan 7 19:10:21 1999 Owen Taylor <otaylor@redhat.com>
640 * gtk/gtkviewport.c (gtk_viewport_style_set): Fixes
641 to drawing the background of the bin window
642 so that clearing and redrawing of child
643 widgets work properly.
645 * gtk/gtkwidget.c (gtk_widget_idle_draw): Juggle around
646 data so that if somebody triggers more redraw queuing
647 from a expose_event handler, it doesn't confuse the
648 heck out of GTK+. (But is highly liable to cause
651 Thu Jan 7 12:31:41 1999 Owen Taylor <otaylor@redhat.com>
653 * gtk/gtkselection.c (gtk_target_list_unref): Fix some
656 Wed Jan 6 23:14:19 1999 Lars Hamann <lars@gtk.org>
658 * gtk/gtkctree.c (gtk_ctree_drag_motion): fix for dnd bug reported
659 by Bertrand Guiheneuf. Don't return FALSE if source widget != dest.
662 Wed Jan 06 10:04:12 1999 Tristan Tarrant <ttarrant@etnoteam.it>
664 * configure.in,po/it.po: added Italian translations
666 Tue Jan 05 21:18:00 1999 George Lebl <jirka@5z.com>
668 * gtk/gtkmenu.c,gtk/gtkmenuitem.c,gtk/gtkeditable.c: free the
669 event that was returned to us by gtk_get_current_event
671 Tue Jan 5 19:01:18 1999 Owen Taylor <otaylor@redhat.com>
673 * gtk/gtkcolorsel.c (gtk_color_selection_dialog_init): Push
674 GdkRGB's visual and colormap around the color selection
675 dialog so that the window and the previews have the
676 same colormap. If an app adds things to the colorsel
677 dialog, it will have to take care of them itself.
679 Tue Jan 5 15:03:47 1999 Owen Taylor <otaylor@redhat.com>
681 * gtk/gtkmain.c (gtk_propagate_event): Make
682 gtk_propagate_event() non-static, we need it in gtkdnd.c
683 so that the button-release we synthesize gets propagated
686 * gtk/gtkdnd.c: Use gtk_propagate_event() so
687 release gets to a GtkList. But we can't really
688 get this right without access to the windows
689 event masks and doing X-style propagation ourselves.
691 Tue Jan 5 12:40:57 1999 Owen Taylor <otaylor@redhat.com>
693 * gtk/gtkpreview.c: Add a size_allocate() routine
694 and set the size of the preview window equal
695 to the area we are going to draw on, instead
696 of the entire allocation. Do this to avoid having
697 to set a parent-relative background.
699 Tue Jan 5 11:51:32 1999 Owen Taylor <otaylor@redhat.com>
701 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
702 When redrawing the under-cursor character, don't
703 redraw the terminating NULL.
704 [ From: dov@imagic.weizmann.ac.il (Dov Grobgeld) ]
706 Tue Jan 5 11:31:55 1999 Owen Taylor <otaylor@redhat.com>
708 * gtk/gtkselection.c (gtk_target_list_unref): Free
709 memory allocated for target lists.
711 * gtk/gtkdnd.c (gtk_drag_drop_finished): Release
712 selections before destroying info structure.
714 * gdk/gdkdnd.c gdktypes.h (gdk_drag_get_protocol): Add
715 new value GDK_DRAG_PROTO_NONE, use it for non-drag
716 targets, to quiet Purify.
718 * gdk/gdkdnd.c (gdk_window_register_dnd): Set size
719 of property properly.
721 Mon Jan 4 03:45:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
723 * Released GTK+ 1.1.12
731 gtk/gtkfeatures.h.in: version=1.1.12
733 1999-01-04 Sung-Hyun Nam <namsh@lgic.co.kr>
735 * configure.in (ALL_LINGUAS): Added 'ko'.
737 Sun Jan 3 17:41:22 1999 Lars Hamann <lars@gtk.org>
739 * gtk/gtkctree.c (real_tree_expand): fixed auto_resize bug
741 Sat Jan 2 03:54:30 1999 Tim Janik <timj@gtk.org>
743 * gdk/gdk.h (GDK_PRIORITY_EVENTS): make this G_PRIORITY_DEFAULT.
745 * gdk/gdkevents.c (gdk_events_init): add the source and the poll fd with
746 a priority of GDK_PRIORITY_EVENTS.
748 1999-01-02 Jeff Garzik <jgarzik@pobox.com>
750 * configure.in, config.h.in, gdk/gdkimage.c:
751 Removed features.h test.
754 Guard public functions against NULL pointer derefs.
756 Fri Jan 1 18:41:09 PST 1999 Manish Singh <yosh@gimp.org>
760 * gtk/gtkruler.c: casts to get rid of const warnings
762 * gtk/Makefile.am: fix gtktypebuiltins.h dependencies, and do a
763 cmp so people don't whine about rebuilds
765 * gtk/gtknotebook.c: use g_snprintf on translated strings, so we
766 don't get buffer overflows
768 * gtk/gtkrc.c: use g_strdup_printf instead of g_malloc/sprintf
771 1999-01-01 Jeff Garzik <jgarzik@pobox.com>
773 * configure.in, config.h.in:
774 Check for features.h.
776 * gdk/gdkevents.c (gdk_event_put, gdk_events_queue):
777 Fixed bug in linked list append logic by replacing hand-coded
778 logic with a call to g_list_append. Bug found by tml.
781 'gcc -ansi -pedantic' on GNU/Linux spews warnings and errors
782 in sys/ipc.h, including one specific admonishment to use
783 _SVID_SOURCE or _XOPEN_SOURCE. Manually defined the latter, and
784 included features.h if present to obtain the necessary
787 * gtk/gtkclist.c, gtk/gtkeditable.c:
788 Eliminates comma-after-final-element warnings.
790 * gtk/gtkfontsel.c (gtk_font_selection_init):
791 Fixed bug where an intl string was declared as _("x") in
792 local var initializer.
794 1998-12-31 Jeff Garzik <jgarzik@pobox.com>
796 * gtk/gtklabel.c (gtk_label_split_text_wrapped):
797 word->space is now initialized correctly.
798 Reported by Chi-Deok Hwang <cdhwang@sr.hei.co.kr>.
800 1998-12-30 Miguel de Icaza <miguel@nuclecu.unam.mx>
802 * gtk/gtkmain.c (gtk_main_do_event): Fix memory leak.
803 gdk_event_put would make a copy of next_event, and next_event was
806 Wed Dec 30 18:39:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
808 * Released GTK+ 1.1.11
816 gtk/gtkfeatures.h.in: version=1.1.11
818 1998-12-29 Owen Taylor <otaylor@srv-19-29.roc.ny.frontiernet.net>
820 * gdk/gdkim.c (gdk_wcstombs): Fixed off-by-one
821 error when computing length.
823 Thu Dec 24 14:35:48 1998 Jeff Garzik <jgarzik@pobox.com>
825 * gdk/gdkevents.c, gdk/gdkim.c, gdk/gdkrgb.c, gdk/gdkwindow.c,
826 gtk/gtkprogressbar.c:
827 Pull in string.h for various mem*() and str*() functions,
828 in an autoconf-friendly way.
830 Thu Dec 24 12:40:45 1998 Jeff Garzik <jgarzik@pobox.com>
832 * gdk/gdkfont.c: removed unused var
833 * gdk/gdkim.c: 64-bit cast
834 * gtk/gtkaccelgroup.c: point to const data
835 * gtk/gtkdnd.[ch]: (gtk_drag_dest_set, gtk_drag_source_set):
837 * gtk/gtkfontsel.c: kill uninitialized var warning
838 * gtk/gtkselection.[ch]: (gtk_target_list_new,
839 gtk_target_list_add_table, gtk_selection_add_targets):
841 * gtk/testgtk.c: 64-bit cast
843 Thu Dec 24 03:16:52 CST 1998 Shawn T. Amundson <amundson@gtk.org>
851 gtk/gtkfeatures.h.in: version=1.1.10
853 Wed Dec 23 20:31:40 1998 Owen Taylor <otaylor@redhat.com>
855 * gtk/gtklabel.c: Fix problem where empty labels were
856 getting a requisition height of zero, and trailing
857 newlines were being ignored.
859 Wed Dec 23 13:58:14 1998 Owen Taylor <otaylor@redhat.com>
861 * gtk/gtklabel.c (gtk_label_parse_uline):
862 label->label should be the mb text _after_ removing
863 the underlines, not before.
865 * gtk/gtkmenu.c: Reverted Elliot's tearoff-menu-item
866 title hack. If it deserves being done, it deserves
869 1998-12-23 Elliot Lee <sopwith@redhat.com>
871 * gtk/gtkmenu.c: Allow programmer to gtk_object_set_data(obj,
872 "GtkTearoffMenuItem_window_title", ..) on a GtkMenuItem and have
873 it be recognized. If we're getting the title out of the GtkLabel,
874 then remove all underscores.
876 Tue Dec 22 17:01:43 1998 Owen Taylor <otaylor@redhat.com>
878 * gtk/gtkdnd.c (gtk_drag_dest_handle_event):
879 Request XmTRANFER_FAILURE on Motif drops not within
880 a drop zone. I don't know why this is necessary,
883 * gdk/gdkdnd.c (gdk_drop_reply): Fixed error where
884 Motif flag field in response was getting wrong
887 Tue Dec 22 15:55:39 1998 Owen Taylor <otaylor@redhat.com>
889 * gtk/gtkoptionmenu.c (gtk_option_menu_button_press):
890 Return TRUE for button press events we handle.
891 (Allows option menus in radio buttons to work...)
893 Tue Dec 22 14:50:25 1998 Owen Taylor <otaylor@redhat.com>
895 * gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
896 when we've already found a widget, skip all checks
897 for subsequent children.
899 * gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
900 !MAPPED, not !VISIBLE, since a widget (like a notebook
901 page), can be VISIBLE, but !REALIZED or !MAPPED.
903 * gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
906 Mon Dec 21 22:01:49 1998 Lars Hamann <lars@gtk.org>
908 * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
910 Sun Dec 20 04:48:59 1998 Tim Janik <timj@gtk.org>
912 * gdk/gdk.h (GDK_PRIORITY_EVENTS): export the priority at which
913 events are processed.
915 * gtk/gtk[main|signal|container].[ch]: removed deprecated _interp
916 variants: gtk_container_foreach_interp, gtk_idle_add_interp,
917 gtk_timeout_add_interp, gtk_signal_connect_interp.
919 Sat Dec 19 18:45:30 PST 1998 Shawn T. Amundson <amundson@gtk.org>
921 * configure.in: added sv to ALL_LIGNUAS
923 Sat Dec 19 22:49:40 1998 Tim Janik <timj@gtk.org>
925 * gtk/gtktypeutils.c (gtk_type_query): eek, fixed an embarrasing bug
926 that caused this function to always return NULL (noticed by marius
929 Sat Dec 19 17:28:30 1998 Owen Taylor <otaylor@redhat.com>
931 * configure.in: Don't add the gthread libs to
932 GLIB_LIBS either, or -lgthread -lpthread will get
933 pulled into all applications because of shlib deps.
935 * gtk/gtkmain.h gtk/gtkwidget.c gtk/gtk gdk/gdk:
936 Use GLIB's priority #define. Revise scale of
939 Sat Dec 19 03:44:29 PST 1998 Manish Singh <yosh@gimp.org>
941 * gtk/gtkmain.c: always run a g_main_iteration, even if
942 there are no active main loops. This fixes the gimp splash
945 Sat Dec 19 05:37:51 1998 Tim Janik <timj@gtk.org>
947 * gtk/gtklabel.c (gtk_label_expose): removed return_if_fail
948 (label->words != NULL) since that's a valid case when the label
949 is empty, or just default constructed.
950 fixed indentation prototype arguments and braces in some places.
951 also, pointer comparisions and initializations are done with NULL
952 not 0, there's a reason GLib defines NULL.
954 * gdk/gdkevents.c (gdk_events_pending): return (queued_events ||
955 putback_events) so this again returns whether events are pending,
956 not whether other sources like idles are pending.
958 * gtk/gtkmain.c (gtk_main_iteration_do):
959 (gtk_main_iteration): return whether the loop is done, not whether
960 something got dispatch to restore the original behaviour (yosh: this
961 fixes code like in GleSelector).
963 Fri Dec 18 19:20:45 PST 1998 Manish Singh <yosh@gimp.org>
966 * gtktogglebutton.c: s/(enter|leave)_button/$1/g, since pthreads.h
969 Sat Dec 19 01:56:13 1998 Lars Hamann <lars@gtk.org>
971 * gtk/gtkclist.c (gtk_clist_button_press): fixed GDK_2BUTTON_PRESS
974 Fri Dec 18 15:30:43 PST 1998 Manish Singh <yosh@gimp.org>
976 * configure.in: add ja to ALL_LINGUAS
978 Fri Dec 18 15:19:54 1998 Owen Taylor <otaylor@redhat.com>
980 * gtk/gtksocket.c (gtk_socket_filter_func): Marked
981 plug window as destroyed before destroying the
984 Fri Dec 18 14:17:14 1998 Owen Taylor <otaylor@redhat.com>
986 * gtk/gtkmenu.c (gtk_menu_popup): Set the usize on the
987 tearoff window so when we reparent the window out,
988 the window doesn't shrink down.
990 1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
992 * configure.in: do not export the glib flags for thread support to
995 Fri Dec 18 01:32:59 1998 Tim Janik <timj@gtk.org>
997 * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
998 get the original behaviour back, i.e. the event queue needs to be flushed
999 after a main loop has been quitted.
1000 (gtk_main): add/remove the current main loop to/from the main loop
1001 before/after init/quit functions have been exected to preserve the
1002 original gtk_main_quit() behaviour.
1004 Thu Dec 17 23:48:29 1998 Tim Janik <timj@gtk.org>
1006 * gdk/gdkevents.c (gdk_events_init): changed argument order in call
1007 to g_main_add_poll() to match recent glib changes.
1009 Thu Dec 17 20:33:28 1998 Owen Taylor <otaylor@redhat.com>
1011 * gtk-config.in: Add @INTLLIBS@.
1012 gtk-scier-981116-0.patch Sean Cier <scier@PostHorizon.com>) ]
1014 * gtk/gtkcolorsel.c gtk/gtkfilesel.c gtk/gtkfontsel.c
1015 gtk/gtkgamma.c gtk/gtkinputdialog.c
1016 gtk/gtknotebook.c gtk/gtkrc.c gtk/gtkthemes.c
1019 Applied parts of gtk-egger-981215-1 [ Daniel Egger
1020 <Daniel.Egger@t-online.de> ] marking additional strings for
1021 internationalization.
1023 * po/nl.po: Added Dutch translation from
1024 Paul Siegmann <pauls@euronet.nl>.
1026 Thu Dec 17 18:25:52 1998 Owen Taylor <otaylor@redhat.com>
1028 * gtk/gtkdnd.c (gtk_drag_drop_finished): Remove the
1029 info tag from the context so if the source unexpectedly
1030 responds in the future, we do nothing properly.
1032 Thu Dec 17 18:24:41 1998 Owen Taylor <otaylor@redhat.com>
1034 * gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): Handle
1035 the case where one side of the the pane is empty.
1037 * gtk/gtkfilesel.c (gtk_file_selection_init): Set
1038 dir_title before using it. (Pointed out by
1039 Lavoie Philippe <lavoie@zeus.genie.uottawa.ca>)
1041 Thu Dec 17 10:53:20 1998 Owen Taylor <otaylor@redhat.com>
1043 * gtk/gtklabel.c (gtk_label_set_text): Free
1044 previous label->label_wc.
1046 * gtk/testgtkrc: Leave font, not fontset commented
1049 1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1051 * gdk/gdkim.c: Define gdk_use_mb outside USE_XIM guard. Removed
1052 unnecessary USE_XIM guard inside another. Made gdk_use_mb
1053 static. Compile gdk_set_locale also if not USE_XIM.
1055 Thu Dec 17 00:26:01 1998 Shawn T. Amundson <amundson@gtk.org>
1057 * Released GTK+ 1.1.9
1064 gtk/gtkfeatures.h.in:
1065 docs/gtk-config.1: version=1.1.9
1067 Wed Dec 16 21:20:00 PST 1998 Manish Singh <yosh@gimp.org>
1069 * autogen.sh: rm -rf intl breaks --disable-nls, put it back
1072 * gtktogglebutton.c: s/(enter|leave)/$1_button/g.
1073 Digital: 1 GTK+: 0 (for now)
1075 Wed Dec 16 22:38:22 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1077 * gdk/gdkevents.c: updated call to g_main_add_poll
1078 instead of g_main_poll_add
1080 Wed Dec 16 23:32:05 1998 Owen Taylor <otaylor@redhat.com>
1082 * gtk/gtklabel.c (gtk_label_expose): Remove
1085 Wed Dec 16 22:50:52 1998 Owen Taylor <otaylor@redhat.com>
1087 * gdk/gdk.c gdk/gdkim.c: Check for broken glibc 2.0
1088 mb functions, and avoid them.
1090 Wed Dec 16 16:57:55 1998 Owen Taylor <otaylor@redhat.com>
1092 * gdk/gdkevents.c (gdk_events_queue): Don't
1093 call XPending() if we have putback events.
1095 Wed Dec 16 16:04:41 1998 Owen Taylor <otaylor@redhat.com>
1097 * gtk/gtklabel.c (gtk_label_expose): Do nothing
1098 on empty string, quietly.
1100 Wed Dec 16 15:36:19 1998 Owen Taylor <otaylor@redhat.com>
1102 * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
1103 Redraw the character under the cursor when removing
1106 Wed Dec 16 13:06:17 1998 Owen Taylor <otaylor@redhat.com>
1108 * gdk/gdk.[ch] gtk/gtkmain.[ch] gtk/gtkprivate.h: Move main
1109 thread lock back to GDK - we need it there for locking
1110 when translating events. Rename things appropriately.
1112 Wed Dec 16 11:44:21 1998 Owen Taylor <otaylor@redhat.com>
1114 * gtk/gtkrange.c (gtk_range_expose): Fix a x/y typo.
1116 Wed Dec 16 10:20:27 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1118 * Released GTK+ 1.1.8
1124 docs/gtk-config.1: version=1.1.8
1126 1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1128 * gdk/gdkglobals.c: Define gdk_xim_ic only, if USE_XIM is defined.
1130 Wed Dec 16 07:03:32 1998 Tim Janik <timj@gtk.org>
1133 * gtk/gtkwidget.c: s/USER_DRAW/APP_PAINTABLE/. provided
1134 gtk_widget_set_app_paintable() which users can use to make
1135 a widget paintable for the application. changed other files accordingly.
1137 Wed Dec 16 05:26:32 1998 Tim Janik <timj@gtk.org>
1139 * configure.in: version bump to 1.1.8, binary age 0, interface age 0,
1140 depend on GLib 1.1.8.
1143 * gdk/gdkglobals.c: removed last Gdk threads specific bits.
1145 * gtk/gtkmain.c (gtk_init): s/g_thread_supported/g_thread_supported()/.
1147 * gtk/gtkprivate.h: changed GTK_THREADS_ENTER and GTK_THREADS_LEAVE
1148 to function macros GTK_THREADS_ENTER() and GTK_THREADS_LEAVE().
1149 honour G_THREADS_ENABLED in the definition of GTK_THREADS_ENTER()
1150 and GTK_THREADS_LEAVE(). changed callers accordingly.
1152 Tue Dec 15 21:26:26 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1154 * autogen.sh: warn if glib.m4 or gettext.m4 are not found
1155 in aclocal's directory.
1157 Tue Dec 15 21:36:14 1998 Owen Taylor <otaylor@redhat.com>
1159 * gtk/testgtk.c (create_layout): Create buttons,
1162 1998-12-15 Joel Becker <jlbec@ocala.cs.miami.edu>
1164 * autogen.sh: reordered gettextize and aclocal, because
1165 gettextize was messing up aclocal.m4.
1167 Tue Dec 15 22:30:44 1998 Lars Hamann <lars@gtk.org>
1170 removed clist flag : GTK_CLIST_DRAG_SELECTION
1171 added flags : GTK_CLIST_REORDERABLE, GTK_CLIST_USE_DRAG_ICONS,
1172 GTK_CLIST_DRAW_DRAG_LINE, GTK_CLIST_DRAW_DRAG_RECT
1173 (GtkCListDragPos) : new enum for DND
1174 (GtkButtonAction) : new enum of possible mouse button actions
1175 (struct _GtkCList): added button_actions array.
1176 Added drag_button and click_cell struct, to store cell and
1177 mouse button of last button_press_event
1179 (struct _GtkCListClass): new class method draw_drag_highlight.
1180 (gtk_clist_set_reorderable) (gtk_clist_set_use_drag_icons) :
1181 new functions. Moved from gtkctree.h. Now clist is reorderable
1183 (gtk_clist_set_button_actions) new function to customize mouse
1187 (gtk_clist_drag_begin)
1188 (gtk_clist_drag_motion)
1189 (gtk_clist_drag_leave)
1190 (gtk_clist_drag_end)
1191 (gtk_clist_drag_drop)
1192 (gtk_clist_drag_data_get)
1193 (gtk_clist_drag_data_received) : new dnd widget methods to
1194 implement clists reorderability via DND
1196 (remove_grab) : new function. remove mouse grab if necessary.
1197 (draw_drag_highlight) : new method. Draw dnd highlight depending
1198 on clist flags GTK_CLIST_DRAW_DRAG_LINE and GTK_CLIST_DRAW_DRAG_RECT
1200 (gtk_clist_class_init): added object args "reorderable" and
1203 (gtk_clist_button_press) (gtk_clist_button_release) :
1204 use button_actions array to decide which action to perform.
1205 (gtk_clist_motion) : start reorder operation if necessary.
1208 (struct _GtkCTree): removed drag_icon, icon_widht, icon_height,
1209 drag_row, drag_source, drag_target, reorderable, use_icons,
1211 (gtk_ctree_set_reorderable) : deprecated function.
1212 use gtk_clist_set_reorderable instead.
1213 (gtk_ctree_set_use_drag_icons) : deprecated function.
1214 use gtk_clist_set_use_drag_icons instead.
1217 (gtk_ctree_class_init): removed object args "reorderable" and
1218 and "use_drag_icons"
1220 (draw_xor_line) (draw_xor_rect) (create_drag_icon) (check_cursor)
1221 (tree_toggle_selection) (set_mouse_cursor) : removed
1223 (draw_drag_highlight) : new clist method. replacement for
1224 draw_xor_line and draw_xor_rect functions
1225 (check_drag) renamed check_cursor function
1227 (gtk_ctree_drag_begin)
1228 (gtk_ctree_drag_motion)
1229 (gtk_ctree_drag_data_received) : new dnd methods to implement ctrees
1230 reorderability via DND
1232 (gtk_ctree_button_release)
1233 (gtk_ctree_button_motion) : removed.
1236 (create_clist) : added new reorderable toggle button
1238 Tue Dec 15 19:50:41 1998 Owen Taylor <otaylor@redhat.com>
1240 * gtk/gtkctree.c gtk/gtkclist.c gtk/testgtk.c: Use
1241 base[NORMAL] instead of bg[PRELIGHT] so CLists now can be
1242 used in detergent commercials.
1244 Tue Dec 15 16:54:09 1998 Owen Taylor <otaylor@redhat.com>
1246 * gtk/gtklabel.h: Moved gtk_label_set() compatiblity
1247 define from <gtkcompat.h> to <gtklabel.h> for
1250 1998-12-15 Jeff Garzik <jgarzik@pobox.com>
1252 * configure.in, gdk/Makefile.am, gtk/Makefile.am:
1253 Removed last remaining thread-related configure bits
1254 that have been moved into GLib.
1256 1998-12-15 Elliot Lee <sopwith@bogus.cuc.ml.org>
1258 * gdk/gdkevents.c: Use G_IO_ERR|G_IO_HUP|G_IO_NVAL
1259 as the mask for checking for GDK_INPUT_EXCEPTION events.
1261 1998-12-15 Martin Baulig <martin@home-of-linux.org>
1263 * acinclude.m4: Make the gettext check for for libc5 systems.
1265 * autogen.sh: Not running gettextize fails on a fresh CVS checkout
1266 and we'll get a lot of bug reports tomorrow, so I add it back.
1268 * acinclude.m4: Rename AM_GNU_GETTEXT_GTK to AM_GTK_GNU_GETTEXT and
1269 AM_WITH_NLS_GTK to AM_GTK_WITH_NLS to avoid this ugly automake
1272 Tue Dec 15 16:06:15 1998 Owen Taylor <otaylor@redhat.com>
1274 * acinclude.m4: Provide a hacked version of the
1275 gettext macros that never use the included gettext.
1277 * Makefile.am configure.in: Remove references
1280 * autogen.sh: Don't run gettextize.
1282 Tue Dec 15 14:30:35 1998 Owen Taylor <otaylor@redhat.com>
1284 * gdk/gdk.h gdk/gdkfonts.c: Added gdk_text_extents_wc()
1286 * Patch from Jonathan Blanford <jrb@redhat.com> to add line wrapping
1287 to label. (Based on patch from Jeff Dairiki
1288 <dairiki@mac-ceope.apl.washington.edu> gtk-dairiki-971208-0)
1290 - Adds new function gtk_label_set_line_wrap()
1291 - implement GTK_JUSTIFY_FILL.
1292 - rename gtk_label_set to gtk_label_set_text() add
1293 gtk_label_set() to gtkcompat.h.
1295 * Use an internal wc representation in the label, so
1296 that we handle underlining and line breaks correctly
1297 for multi-byte strings.
1299 Tue Dec 15 13:32:28 1998 Owen Taylor <otaylor@redhat.com>
1301 * gtk/gtkwidget.h: Added GTK_USER_DRAW flag.
1303 * gtk/gtkwindow.c: Honor GTK_USER_DRAW flag.
1305 * gtk/gtkdrawwindow.c gtk/Makefile.am: Removed
1306 GtkDrawWindow, which GTK_USER_DRAW obsoletes.
1308 Tue Dec 15 11:37:05 1998 Owen Taylor <otaylor@redhat.com>
1310 * gtk/gtkmain.c: Fixed up some warnings.
1312 Tue Dec 15 10:32:01 1998 Owen Taylor <otaylor@redhat.com>
1314 * gtk/gtk{h,v,}paned.{c,h}: Add new functions
1315 gtk_paned_set_position(),
1316 gtk_paned_pack1/2(). The latter take a
1317 shrink and resize parameters, that allows setting
1318 minimum sizes and getting 'relative' resizing.
1320 Tue Dec 15 10:26:23 1998 Owen Taylor <otaylor@redhat.com>
1322 * gdk/gdkevents.c: Keep separate putback_events and
1323 queued_events queues so that we get both FIFO and
1324 preemptive behavior for gdk_event_put().
1326 Tue Dec 15 09:22:44 1998 Owen Taylor <otaylor@gtk.org>
1328 * gtk/gtkrc.c (gtk_rc_init): Removed unused
1329 variable, fixed minor memory leak.
1331 * gdk/gdk.c: Fixed another merge problem.
1333 Tue Dec 15 08:53:38 1998 Owen Taylor <otaylor@redhat.com>
1335 * gdk/gdk.c (gdk_get_display): Remove gdk_signal,
1336 which crept back in in last commit.
1338 Tue Dec 15 01:38:53 1998 Owen Taylor <otaylor@redhat.com>
1340 * gtk/Makefile.am: Commented out testthreads from
1341 the build process, since we won't have any idea
1342 how to create a thread.
1344 * configure.in (LIBS): use glib-config ... gthread
1345 so we always build a thread-compatible library.
1347 * gtk/gtkaccellabel.c gtk/gtkclist.c gtk/gtkcolorsel.c
1348 gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkentry.c
1349 gtk/gtklist.c gtk/gtkmenuitem.c gtk/gtknotebook.c
1350 gtk/gtkrange.c gtk/gtkselection.c gtk/gtkspinbutton.c
1351 gtk/gtktext.c gtk/gtktooltips.c gtk/gtkwidget.c:
1353 Add GTK_THREADS_ENTER/LEAVE pairs around timeouts
1354 and idles to account for the fact that they are no
1355 longer called within the GTK+ lock.
1357 * gtk/gtkprivate.h: Added definitions for locking
1358 the main GTK+ mutex.
1360 * gtk/gtkmain.c: Re-implement the main loop
1361 in terms of the GLib main loop.
1363 * gdk/gdk.h gdk/gdkthreads.c gdk/Makefile.am: Removed threading
1364 functionality, as it seems better to subsume GDK within the
1365 GTK+ lock than vice-versa.
1367 * gdk/gdkevents.c: New file, containing event handling bits
1370 * gdk/gdkevents.c: Implement event source for GDK
1373 * configure.in gdk/gdkevents.c: Removed attempts to
1374 subtract base_id, which were already non-functional.
1376 Mon Dec 14 23:05:20 PST 1998 Manish Singh <yosh@gimp.org>
1379 * configure.in: removed IPC_RMID_DEFERRED_RELEASE check
1381 * gdk/gdk.c: remove signal handlers, since we do an IPC_RMID
1382 after XShmAttach, and nobody complained
1384 Tue Dec 15 02:27:42 MET 1998 Sven Neumann <sven@gimp.org>
1386 * po/de.po: Replaced the crappy german po-file with a valid one.
1388 Mon Dec 14 16:10:05 1998 Owen Taylor <otaylor@redhat.com>
1390 * gtk/gtkrc.c (gtk_rc_init): Append locale-specific
1391 suffixes to default rc file names, and look these
1392 up in addition to the base filename, to facilitate
1393 having the correct fontset per-locale.
1395 move $(sysconfdir)/gtkrc to $(sysconfdir)/gtk/gtkrc
1397 * gtk/gtkitemfactory.[ch] (gtk_item_factory_set_translate_func):
1398 New function to set a function to translate menu paths.
1400 * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Free
1401 results of g_strsplit().
1403 1998-12-14 Nuno Ferreira <nmrf@rnl.ist.utl.pt>
1405 * configure.in (ALL_LINGUAS): Added 'pt'.
1407 * po/pt.po: Added Portuguese translation.
1409 Mon Dec 14 20:04:31 1998 Stefan Jeske <stefan@gtk.org>
1411 * gtk/gtkspinbutton.c: Only call gtk_spin_button_update if
1412 the spinbutton is editable.
1414 Mon Dec 14 12:24:13 1998 Owen Taylor <otaylor@redhat.com>
1416 * HACKING: Added gettext-10.35
1418 * autogen.sh: Run gettextize.
1420 Wed Dec 9 16:29:06 1998 Owen Taylor <otaylor@redhat.com>
1422 Applied gtk-egger-981010-[12]
1423 [ Daniel.Egger@t-online.de (Daniel Egger) ]
1425 * gtk/gtkintl.h: New file - defines for localization.
1427 * gtk/gtkfilesel.c gtk/gtkinputdialog.c: Mark strings
1428 for internationalization.
1430 * gtk/gtkmain.c: call bindtextdomain
1432 * po/ - directory for translations. Initially includes
1435 Mon Dec 14 02:42:11 1998 Tim Janik <timj@gtk.org>
1437 * gtk/gtkwidget.c: made GtkWidget::grab_focus a RUN_LAST and
1438 RUN_ACTION signal. moved stuff from gtk_widget_grab_focus() into
1439 gtk_widget_real_grab_focus() so a signal is always emitted
1440 if the focus is grabbed on a widget.
1442 Mon Dec 14 02:13:01 1998 Tim Janik <timj@gtk.org>
1444 * gtk/gtkmenuitem.c: fixed submenu popup timeouts, we decide whether or
1445 not to delay the submenu popup from a menu item deselection time stamp.
1446 the code looks even more hackish than before, but in practice "feels"
1449 1998-12-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
1451 * gtk/gtkwidget.h (struct _GtkWidgetClass): Added a "grab_focus"
1452 signal for widgets. When the signal is emitted, the widget will
1453 grab the focus. This is needed to let the user press an
1454 accelerator key in a dialog box and have the corresponding widget
1457 * gtk/gtkwidget.c (gtk_widget_class_init): Create the "grab_focus"
1458 signal. The default handler is simply gtk_widget_grab_focus().
1460 Sun Dec 13 22:15:48 GMT 1998 Tony Gale <gale@gtk.org>
1462 * docs/gtk_tut.sgml: Update the following sections to the
1469 Sat Dec 12 19:11:35 1998 Tim Janik <timj@gtk.org>
1471 * gtk/gtkmenuitem.c: made GtkMenuItem::activate a GTK_RUN_ACTION signal.
1473 * gtk/gtkbutton.c: made GtkButton::clicked a GTK_RUN_ACTION signal.
1475 * gtk/gtkfeatures.h.in: define GTK_HAVE_FEATURES_1_1_8.
1477 Sat Dec 12 17:46:55 1998 Owen Taylor <otaylor@gtk.org>
1479 * gtk/gtklayout.c (gtk_layout_unrealize): Mark
1480 child->window as destroyed so we don't destroy
1483 Sat Dec 12 17:18:32 1998 Owen Taylor <otaylor@redhat.com>
1485 * gdk/gdkfont.c (gdk_text_extents): Corrections
1486 to computation of extents of text from a font set.
1487 (from Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
1488 and Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>)
1490 Fri Dec 11 08:59:12 1998 Owen Taylor <otaylor@redhat.com>
1492 * gtk/gtklistitem.c (gtk_list_item_style_set):
1493 * gtk/gtklist.c (gtk_list_style_set):
1494 Added "style_set" handlers.
1496 Fri Dec 11 05:49:30 1998 Owen Taylor <otaylor@redhat.com>
1498 * gtk/gtkclist.c (gtk_clist_style_set): Add in a "style_set"
1499 handler so that the background of the clist changes
1502 Thu Dec 10 22:02:49 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1504 * Released GTK+ 1.1.7
1511 gtk/gtkfeatures.h.in:
1512 docs/gtk-config.1: Version to 1.1.7
1514 Thu Dec 10 20:48:19 PST 1998 Manish Singh <yosh@gimp.org>
1516 * gtk/gtkclist.c: avoid void pointer math
1519 * gtk/gtkhscrollbar.c
1521 * gtk/gtkvscrollbar.c: removed trailing , from enums
1523 * gtk/gtksignal.c: can't use enums as a bitfield type, use guint
1525 * gtk/testgtk.c: removed C++ comment added by owenpoo
1527 Thu Dec 10 21:48:34 1998 Owen Taylor <otaylor@redhat.com>
1529 * gtk/gtkdnd.[ch]: Added gtk_drag_source_unset()
1531 Thu Dec 10 20:42:22 1998 Owen Taylor <otaylor@redhat.com>
1533 * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Use
1534 gdk_window_get_origin() instead of gdk_window_get_position,
1535 because get_position is unreliable for plugs.
1537 This is a bad hack, maybe we need GDK_WINDOW_PLUG?
1539 Thu Dec 10 17:58:49 GMT 1998 Tony Gale <gale@gtk.org>
1541 * docs/gtk_tut.sgml:
1542 - re-write the GtkProgressBar section to the 1.1 API.
1543 - add an Appendix listing all the signals
1544 (apologies to TimJ for taking so long in using his hard work
1545 in automating the extraction - thanx Tim).
1546 * examples/*: bring them all upto the tutorial versions
1548 Thu Dec 10 02:21:16 1998 Jeff Garzik <jgarzik@pobox.com>
1550 * gtk/testdnd.c: use g_snprintf, eliminate need for string.h
1551 * gtk/testrgb.c: include string.h, for strlen
1553 Wed Dec 9 17:39:26 1998 Owen Taylor <otaylor@redhat.com>
1555 * configure.in: Add a case for success in
1556 test for XUnregisterIMInstantiate, to prevent
1559 Wed Dec 9 13:06:31 1998 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1561 * gdk/gdkim.c (gdk_ic_new,gdk_ic_{set,get}_attr): Fixed argument
1562 list and return type for non-XIM fallback.
1564 * configure.in: Only build XIM-support if available.
1566 Wed Dec 9 12:23:30 1998 Owen Taylor <otaylor@redhat.com>
1568 * gtk/testselection.c (main): Add in missing 'flags'
1569 field to target list.
1571 * gdk/gdkproperty.c (gdk_atom_intern): Actually
1572 add the atoms to the local cache.
1574 Wed Dec 9 04:57:31 PST 1998 Manish Singh <yosh@gimp.org>
1576 * gdk/gdkprivate.h: put text after #endif in comment
1578 * gdk/gdktypes.h: change whitespace in enum to shut up makeenums.pl
1580 * gtk/testdnd.c: #include <string.h>
1582 Mon Dec 7 10:27:09 1998 Owen Taylor <otaylor@redhat.com>
1584 * gtk/gtkwidget.c: Destroy widgets _after_ propagating unrealize
1585 signals through the widget heirarchy. This is unpleasant, as it
1586 causes more X traffic, but is necessary, because we have to clean
1587 up our Input Contexts before destroying the X windows.
1588 (from matsu-981109-0.patch)
1590 Mon Dec 7 10:18:18 1998 Owen Taylor <otaylor@redhat.com>
1592 Applied gtk-a-higuti-981202-0 :
1593 [ a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi) ]
1595 * gdk/gdk.h gdk/gdk.c
1596 (gdk_mbstowcs): New function. Nearly equals to mbstowcs, but
1597 implemented by a combination of Xlib functions, so
1598 it works even with X_LOCALE.
1599 (gdk_wcstombs): New function.
1600 (g_mbtowc): Removed. No longer needed.
1602 * gdk/gdk.h gdk/gdkfont.c gdk/gdkdraw.c:
1603 Added _wc() variants to gdk_text_width(),
1604 gdk_char_width(), gdk_draw_text(),
1607 (mblen, mbtowc, wctomb, mbstowcs, wcstombs,
1608 wcslen, wcscpy, wcsncpy):
1609 Removed. No longer needed.
1610 (iswalnum): Removed.
1611 (gdk_iswalnum): New macro.
1612 (gdk_iswspace): New macro.
1614 (GdkWChar): New typedef.
1616 * gtk/gtkentry.h, gtk/gtkentry.c
1617 There are many changes according to the change of the
1618 internal representation of text, from multibyte string
1620 * gtk/gtkprivate.h, gtk/gtkmain.c
1621 Removed the variable gtk_use_mb and related codes.
1622 * gtk/gtkspinbutton.c
1623 Some changes according to the change of type of entry->text.
1624 * gtk/gtktext.h, gtk/gtktext.c
1625 Changed the internal representation of text. We use GdkWchar
1626 if a fontset is supplied. If not, we use guchar to save
1629 Tue Dec 1 15:20:39 1998 Owen Taylor <otaylor@redhat.com>
1631 * gdk/gdkwindow.c (gdk_window_new): When creating
1632 a window with a specified non-system visual, use
1633 a matching colormap.
1635 Mon Nov 30 11:50:13 1998 Owen Taylor <otaylor@redhat.com>
1637 * gdk/gdk.c gdk/gdkim.c gdk/gdkprivate.h gdk/gdk.h
1638 gdk/gdktypes.h gtk/gtkeditable.c gtk/gtkmain.c
1639 gtk/gtkentry.c gtk/gtktext.c:
1641 Applied matsu-981109-0
1642 [ matsu@arch.comp.kyutech.ac.jp (Takashi Matsuda) ]
1644 - Change system of setting input method values
1645 from varargs to a structure, similar to GC's
1646 or window attributes.
1648 - Various fixes to event handling.
1652 * gdk/gdkim.c: Split of input method stuff into
1653 a separate source file.
1655 * Remove GdkIM typedef, change everything from
1656 GdkIC to GdkIC * to be consistent with the
1659 Wed Dec 9 00:41:41 1998 Owen Taylor <otaylor@redhat.com>
1661 * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Allocate
1662 correct amount of memory for strings.
1664 Tue Dec 8 18:29:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1666 * Released GTK+ 1.1.6
1673 gtk/gtkrc.c: Read in default files.
1675 Wed Dec 9 00:49:12 1998 Tim Janik <timj@gtk.org>
1677 * gtk/gtktypeutils.h:
1678 * gtk/gtktypeutils.c: added gtk_type_query() which returns a newly
1679 allocated structure holding certain type specific informations.
1680 fixed the big bunch of `discards const' warnings with the
1681 initialization of enum/flags values.
1683 Tue Dec 8 15:10:17 1998 Owen Taylor <otaylor@redhat.com>
1685 * gtk/gtkwindow.c (gtk_window_transient_parent_realized):
1686 Fixed order of arguments to gdk_window_transient_for().
1688 Tue Dec 8 18:02:57 GMT 1998 Tony Gale <gale@gtk.org>
1690 * examples/Makefile: simple top level Makefile that invokes all
1691 the sub-directory Makefiles.
1693 1998-12-08 Andrew T. Veliath <andrewtv@usa.net>
1695 * gtk/testgtk.c: Functions to test the toolbar space style.
1697 * gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
1698 GtkToolbarChild to hold allocation. Set default space style to
1699 GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
1701 (gtk_toolbar_paint_space_line): New function; paints the separator
1702 line, using "toolbar" as the detail.
1703 (gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
1704 style is set to SPACE_LINE.
1705 (gtk_toolbar_size_allocate): Store space allocations.
1706 (gtk_toolbar_insert_element): If we are a space, allocate and
1707 initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
1708 (gtk_toolbar_set_space_style): New function.
1710 * gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
1711 and LINE. Add prototype for gtk_toolbar_set_space_style.
1713 Mon Dec 7 16:03:55 1998 Owen Taylor <otaylor@redhat.com>
1715 * gtk/gtkthemes.h: Remove random unnecessary includes
1716 of standard headers.
1718 1998-12-07 Damon Chaplin <DAChaplin@msn.com>
1720 * gtk/gtkfontsel.c (gtk_font_selection_select_best_style): made sure
1721 we only try to match styles which are currently shown.
1723 (gtk_font_selection_init): set the notebook tabs homogeneous and set
1724 the border, so we don't need to set the size explicitly (bad for i18n).
1725 Used the clist auto-resize feature for the font and style lists on the
1726 main page and all the filters. Used padding for the 'Reset Filter'
1727 button instead of spaces around it (bad for i18n).
1729 (gtk_font_selection_find_font): when searching for
1730 a font, if we can't match both the family and foundry, we return any
1731 font where just the family matches. (The foundry can even be '*'.)
1733 (gtk_font_selection_show_available_styles):
1734 (gtk_font_selection_realize_list): don't set the style clist row
1735 colours (for the charset rows) until the clist is realized, since we
1736 use the clist style's insensitive colours.
1738 Mon Dec 7 13:38:06 1998 Owen Taylor <otaylor@redhat.com>
1740 * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
1741 _after_ doing XShmAttach. This should work everywhere,
1742 and avoid the need for signal handlers or configure
1745 Thu Dec 3 19:58:45 1998 Owen Taylor <otaylor@redhat.com>
1747 * gtk/gtkinputdialog.c: Use _add_with_viewport() for
1748 scrolled window contents.
1750 1998-12-07 Federico Mena Quintero <federico@nuclecu.unam.mx>
1752 * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
1753 field in the structure.
1755 Mon Dec 7 15:15:06 GMT 1998 Tony Gale <gale@gtk.org>
1757 * docs/gtk_tut.sgml: Start mass update for GTK 1.1
1758 * examples/extract.sh: Look for the best version of awk
1759 * examples/extract.awk: Fix FD leak
1760 * example/base: minimal example from Tutorial
1762 Mon Dec 7 01:29:27 1998 Owen Taylor <otaylor@gtk.org>
1764 * gtk/gtkwindow.c: New functions
1765 gtk_window_set_transient_for() - set up a "transient for" relationship.
1766 gtk_window_set_default_size() - set the initial size of a window
1767 distinct from its minimum size.
1768 gtk_window_set_geometry_hints() - Allow the user to set
1769 minimum, maximum sizes, aspect rations, and gridded geometry,
1770 possibly all with respect to a subwidget of the window.
1771 These interfaces are still a wee bit experimental.
1773 * gdk/gdk.c: Added gdk_window_set_transient_for(),
1774 gdk_window_set_geometry_hints(), and gdk_window_set_role().
1776 * gdk/gdktypes.h: Added new types for find-grained specification
1779 * gtk/testgtk.c: Various changes to tests to test the
1780 above new functions.
1782 * gtk/gtkfontsel.c: Squash a few 'const' warnings.
1784 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
1785 call to gtk_style_set_background() to prevent egregious
1788 Mon Dec 7 03:52:01 1998 Tim Janik <timj@gtk.org>
1790 * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
1791 signals, don't pass the data pointer twice, but swap it with the
1792 object pointer (proposed on Nov 30 1998 on gtk-devel-list).
1794 Mon Dec 7 03:08:39 1998 Tim Janik <timj@gtk.org>
1796 * gtk/gtktypeutils.h:
1797 * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
1798 internal type info data to the user. if such functionality is required
1799 we should provide wrapping accessors, ala gtk_signal_query(). also the
1800 GtkTypeInfo structures are dynamically allocated memory portions, so
1801 only the type system is really allowed to access that stuff.
1803 * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
1804 since it destroys the possibility to implement automatic marshaller
1805 lookups some day, and it also disables third party code's ability to
1806 connect to any signal.
1808 Mon Dec 7 01:32:18 1998 Tim Janik <timj@gtk.org>
1810 * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
1811 Tab key on the entry. the focus shouldn't get lost even if completion
1812 is attempted from an empty entry, since an empty entry string does
1813 indeed have a valid completion meaning (complete all).
1814 (gtk_file_selection_init): cast the gchar array parameter in calls to
1815 gtk_clist_new_with_titles() to quit compiler warnings.
1816 (check_dir): the no_stat_dirs struct must not be const, since we do
1817 indeed modify its contents.
1819 * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
1824 changed emission allocation, so we don't use a doubly linked list
1825 but link ourselfs (singly linked).
1826 changed emission hooks, they get the emision parameters passed as
1827 well now and are emitted during the actuall signal emission (after
1828 the RUN_FIRST class method, but prior to RUN_FIRST handlers).
1829 the existing restrictions do still apply to signal emission hooks,
1830 i.e. an emission may not be stopped or restarted from an emission hook.
1831 due to possibly huge perfomance impacts, frequent use of emision hooks
1832 is also not recommended.
1833 (gtk_signal_next_and_invalidate): added an
1834 assertments which explicits what the code assumes anyways: a
1835 maximum amount of 65535 signals.
1837 * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
1838 gtk_container_foreach_full() should be used instead.
1841 deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
1842 we provide _full variants.
1844 * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
1845 gtk_signal_connect_full() for long enough now.
1847 1998-12-06 Marius Vollmer <mvo@zagadka.ping.de>
1849 * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
1850 (gtk_signal_connect_by_type): Allow only no_marshal handlers to
1851 connect to signals with a NULL marshaller.
1853 * gtk/gtktypeutils.c (gtk_type_get_info): New.
1854 gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
1856 Sun Dec 6 14:27:35 1998 Stefan Jeske <stefan@gtk.org>
1858 * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
1859 arrows if wrap == FALSE and interval borders are reached.
1861 Sat Dec 5 21:07:09 1998 Owen Taylor <otaylor@gtk.org>
1863 * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
1864 long-standing typo in aspect ratio computation code.
1865 (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
1867 Fri Dec 4 01:20:06 1998 Lars Hamann <lars@gtk.org>
1869 * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
1870 valid row numbers only
1871 (toggle_row): check if clist_row != NULL
1873 Fri Dec 4 00:50:12 1998 Lars Hamann <lars@gtk.org>
1875 * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
1878 (gtk_clist_set_column_visibility)
1879 (gtk_clist_column_titles_active)
1880 (gtk_clist_column_titles_active)
1881 (gtk_clist_column_title_passive)
1882 (gtk_clist_column_title_active): few additional tests whether
1883 column->button != NULL
1885 Thu Dec 3 16:49:18 1998 Owen Taylor <otaylor@redhat.com>
1887 * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
1888 from 10 seconds, so it doesn't abort while users
1889 have an ACTION_ASK menu up.
1891 * gtk/gtkdnd.c: Hide the icon window between sending a a
1892 drop event to the destination and displaying the
1893 snapback animation, so that it doesn't hang around
1896 Thu Dec 3 16:37:42 1998 Owen Taylor <otaylor@redhat.com>
1898 * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
1899 for the foreground of cells for CLists in the insensitive
1900 state, instead of GTK_STATE_PRELIGHT.
1902 Thu Dec 3 06:20:59 1998 Tim Janik <timj@gtk.org>
1904 * gtk/gtkwindow.c: moved checks upon focus setting from
1905 gtk_window_real_set_focus to gtk_window_set_focus, so we don't
1906 emit the signal if unneccessary.
1908 * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
1909 containers when grabbing focus on a new widget. this is based on
1910 a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
1912 * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
1913 flag, so we take the buttons into consideration upon the next focus
1916 * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
1919 Wed Dec 2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1921 * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
1922 enhancement for true-color displays.
1928 docs/gtk-config.1: up to version 1.1.6
1930 Wed Dec 2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
1932 * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
1933 we release it this time
1935 Wed Dec 2 01:39:02 1998 Tim Janik <timj@gtk.org>
1937 * gtk/gtknotebook.h:
1938 * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
1940 * incremented version number to 1.1.6 and made Gtk
1941 dependant on GLib 1.1.6.
1943 * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
1944 from guint16 to gint16, since sizes bigger than 32767 are not supported
1945 anyways, and aritmethics with intermediate negative values are possible
1948 Tue Dec 1 00:00:04 1998 Tim Janik <timj@gtk.org>
1950 * gtk/gtkscrolledwindow.c:
1951 implementation of GTK_POLICY_NEVER functionality, added rationales
1952 on the policy and size requisition handling at the top.
1953 (gtk_scrolled_window_size_request):
1954 we assume a default minimum for our child's width and height
1955 if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
1956 specified the dimension explicitely.
1957 (gtk_scrolled_window_size_allocate):
1958 do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
1960 * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
1961 size we require (including the child).
1964 (gtk_clist_size_request): report the real size required.
1966 * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
1968 * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
1969 need to be a static variable.
1971 Mon Nov 30 22:41:25 1998 Tim Janik <timj@gtk.org>
1975 * gtk/gtkviewport.h:
1976 * gtk/gtkviewport.c:
1983 * gtk/gtkscrolledwindow.h:
1984 * gtk/gtkscrolledwindow.c:
1985 s/scroll_adjustements/scroll_adjustments/
1986 s/scroll_adjustments/set_scroll_adjustments/g
1988 Tue Dec 1 22:45:58 1998 Lars Hamann <lars@gtk.org>
1990 * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
1992 * gtk/gtkclist.c (gtk_clist_row_move): new public function.
1993 emit a row_move signal
1994 (real_row_move): move source_row to dest_row
1995 (gtk_clist_swap_rows): use gtk_clist_row_move calls.
1996 (gtk_clist_columns_autosize): resize all columns to their optimal
1998 * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
2000 * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
2002 Tue Dec 1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
2006 * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
2007 Separate vars for each, for granularity.
2009 Tue Dec 1 02:19:54 1998 Tim Janik <timj@gtk.org>
2011 * gtk/gtkenums.h: fixed a stupid error of mine about the run type
2014 1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
2016 * {gdk,gtk}/*.c: Make read-only data structures "static const" to
2017 allow them to be shared, mainly including (but not limited to) the
2018 GtkTypeInfo structures for each class.
2020 * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
2022 Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
2025 Surround debug variable with #ifdef to silence gcc.
2027 * gtk/gtknotebook.c (gtk_notebook_reorder_child):
2028 Added initializer to quiet gcc warning.
2029 Added assertion to check for null pointer deref.
2031 Mon Nov 30 10:11:29 1998 Tim Janik <timj@gtk.org>
2033 * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
2034 system specific includes.
2036 * gtk/gtksignal.c: asured that stop and restart emissions are also
2037 checked and processed for not connected objects. fixed up restart
2038 emission administration. invoke emission hooks after emission, hooks
2039 are not supposed to muck around with the current emission, and
2040 may also not cause emission restarts. fixed up stop emission
2043 Mon Nov 30 06:20:36 1998 Tim Janik <timj@gtk.org>
2045 * gtk/testgtk.c: added an event watcher for enter/leave based on
2046 signal emission hooks.
2048 * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
2049 GTK_RUN_NO_HOOKS signal.
2052 * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
2053 to a signal with gtk_signal_add_emission_hook or
2054 gtk_signal_add_emission_hook_full, and can be removed again with
2055 gtk_signal_remove_emission_hook.
2057 * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
2058 an appropriate mask for signal runtypes for a long time now.
2059 added GTK_RUN_NO_HOOKS value, which is used to flag signals
2060 that do not allow the running of signal hooks.
2062 1998-11-26 Michael Krause <m.krause@tu-harburg.de>
2064 * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
2065 argument a gint: switch_page signal delivers valid page numbers
2068 Sun Nov 29 06:12:01 1998 Tim Janik <timj@gtk.org>
2070 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment):
2071 set composite names.
2073 * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
2074 check, people must use gtk_type_init().
2075 fixed up type allocation for foreign fundamentals.
2078 * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
2079 for internal use by containers, that want to assign specific composite
2080 names to their composite children.
2081 added gtk_widget_get_composite_name() which will return a newly
2082 allocated string, containing the composite name of a widget. valid
2083 composite names can only be retrived from widgets that have a parent
2084 assigned and are flagged as GTK_COMPOSITE_CHILD.
2086 * gtk/gtkcontainer.h:
2087 * gtk/gtkcontainer.c: added a new function
2088 gtk_container_child_default_composite_name() which will return a
2089 newly allocated string, holding the composite name of a containers
2090 child. a default implementation is provided which will compose the
2091 composite name out of the widgets type and its sequential children
2092 id. this implementation can be overidden through a new class function
2093 *(composite_name)().
2095 Sat Nov 28 10:57:59 1998 Owen Taylor <otaylor@redhat.com>
2097 * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
2098 expose_event handler - we had two expose_event
2101 Sat Nov 28 03:13:42 1998 Tim Janik <timj@gtk.org>
2103 * gtk/gtkscrolledwindow.h:
2104 * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
2105 it inherits from GtkBin now.
2107 * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
2108 visibility of child.
2109 (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
2110 added check so a child gets only drawn if it's visible.
2113 * gtk/gtkwidget.c: removed gtk_widget_draw_children().
2116 * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
2119 * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
2120 added internal function gtk_widget_reset_shapes() from gtkstyle.c.
2123 * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
2124 argument, changed callers.
2126 * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
2127 it will issue a warning now.
2129 * gtk/gtkcompat.h: new file to #define aliases for historic
2132 * changed 8 function names for consistency and provided aliases to keep
2133 source compatibility in gtkcompat.h:
2134 (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
2135 (gtk_container_set_border_width): renamed from gtk_container_border_width
2136 (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
2137 (gtk_packer_configure): renamed from gtk_packer_set_child_packing
2138 (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
2139 (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
2140 (gtk_scale_get_value_width): renamed from gtk_scale_value_width
2141 (gtk_window_set_position): renamed from gtk_window_position
2143 * renamed a few recently added funtions for consistency:
2144 (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
2145 (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
2146 (gtk_progress_configure): renamed from gtk_progress_reconfigure.
2148 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
2150 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
2151 check for existing viewport first, and don't add one if there
2154 Sat Nov 28 00:06:49 1998 Tim Janik <timj@gtk.org>
2157 * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
2158 gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
2159 and gtk_widget_unlock_accelerators.
2162 * gtk/gtklayout.c: implemented incremental freezing facility.
2165 * gtk/gtktext.c: implemented incremental freezing facility.
2168 * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
2172 deprecated gtk_entry_adjust_scroll().
2174 * random GtkType, macro and indentation fixes.
2176 Fri Nov 27 22:50:15 1998 Tim Janik <timj@gtk.org>
2179 * gtk/gtkclist.c: implemented incremental freezing facility, added
2180 a new class member (*refresh)() which takes over the thaw
2181 functionality. the clist FROZEN flag got removed on the way.
2182 * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
2183 and incremental freezing.
2185 * gtk/gtkcalendar.c: implemented incremental freezing facility.
2187 Fri Nov 27 11:41:27 1998 Raph Levien <raph@gimp.org>
2189 * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
2190 it still includes the core pointer in gdk_input_devices even
2191 if the XInput extension is not present in the X server.
2193 Fri Nov 27 12:17:15 1998 Owen Taylor <otaylor@redhat.com>
2195 * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
2196 get the source widget of a drag.
2198 * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
2199 to restrict certain targets to the same widget or to
2200 the same application.
2202 * gtk/testdnd.c: Test gtk_drag_get_source_widget().
2204 Thu Nov 26 19:11:46 1998 Lars Hamann <lars@gtk.org>
2206 * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
2207 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
2208 instead of GTK_TYPE_POINTER in signal definitions.
2209 (patch from James Henstridge <james@daa.com.au>)
2211 Thu Nov 26 18:48:44 1998 Lars Hamann <lars@gtk.org>
2213 * gtk/gtkclist.c (set_cell_contents)
2214 * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
2215 if auto.resize == TRUE
2217 * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
2218 don't draw tab, if show_tabs == FALSE
2219 (bug reports from Alexis Mikhailov / Dave Cole)
2220 (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
2221 the focus rectangle, not the hole tab.
2223 Thu Nov 26 03:18:08 1998 Tim Janik <timj@gtk.org>
2228 * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
2229 Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
2231 * gtk/maketypes.awk: changed underline substitution, so we get
2232 GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
2233 * gtk/makeenums.pl: likewise.
2234 * gtk/gtkctree.c: adapted type names accordingly.
2236 Tue Nov 24 11:31:06 1998 Owen Taylor <otaylor@redhat.com>
2238 * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
2240 * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
2241 some code duplication.
2243 * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
2244 and child widgets when scrolling greater than 32k pixels.
2246 * testgtk.c: Modified layout test to test scrolling over
2249 * gtk/gtkplug.c: Added a few blank lines.
2251 Tue Nov 24 11:11:05 1998 Owen Taylor <otaylor@redhat.com>
2253 * gtk/gtklayout.[ch]: Fixed up copyright message.
2255 * gdk/gdkrgb.c (DM): Make the dither matrix constant
2256 so it can be shared.
2258 * gtk/gtkdnd.c: Make cursor bitmaps const.
2260 * gdk/gdk.h gdk/gdkpixmap.c: Added const to
2261 gdk_pixmap/bitmap_create_from_data.
2263 Tue Nov 24 07:46:09 1998 Tim Janik <timj@gtk.org>
2265 * docs/Changes-1.2.txt: added a section on scrolled windows and
2268 1998-11-24 Andrew T. Veliath <andrewtv@usa.net>
2270 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
2271 buttons when setting relief for button items.
2272 (gtk_toolbar_set_button_relief): Same.
2274 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
2276 * gdk/Makefile.am, gtk/Makefile.am:
2277 Removed DEFS "+=" mess that breaks recent automakes.
2278 INCLUDES is the correct way to add to CFLAGS from Makefile.am.
2280 * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
2281 gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
2282 gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
2284 Include "config.h" instead of "../config.h".
2285 Now that DEFS works again, automake will automatically pass us
2286 the location of config.h in -I.
2288 Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
2290 * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
2291 gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
2293 Added layout widget for scrolling arbitrarily big areas.
2294 Added plug/socket widgets for interprocess embedding.
2296 These widgets still, at some point, need to be
2297 made more pure in their use of GDK, as opposed
2300 * gtk/testgtk.c: Added test for layout widget.
2302 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
2304 * gtk/gtkclist.c: (gtk_clist_swap_rows): Bugfix from
2305 Brandon Long <blong@fiction.net> - do the right thing with first
2306 and last, which are the absolute values of row arguments row1
2309 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
2311 * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
2312 default adjustment (from 0 to 100) instead. I'm not sure if this
2313 is the correct level for the fix, but gtk_progress_bar_new()'s
2314 original default behavior is restored.
2316 1998-11-23 Martin Baulig <martin@home-of-linux.org>
2318 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
2319 we can check for latest GTK features.
2321 1998-11-23 Havoc Pennington <hp@pobox.com>
2323 * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
2324 (gtk_toolbar_insert_element): When setting relief, also affect
2327 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
2329 * gtk/gtkobject.h: remove extraneous comma
2331 Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
2333 * gtk/gtkcontainer.c:
2334 (gtk_container_add_with_args):
2335 (gtk_container_addv):
2336 (gtk_container_add): removed assertements for constructed containers
2337 again, since this essentially breaks the "child" arg.
2339 * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
2340 reference count, we don't need to reference toplevels that already have
2343 * gtk/gtkscrolledwindow.c: check for the composites existance in
2344 _forall since we might not be already constructed.
2346 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2348 * Released GTK+ 1.1.5
2350 * configure.in: require GLib 1.1.5
2352 Mon Nov 23 03:21:17 1998 Tim Janik <timj@gtk.org>
2354 * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
2356 (gtk_text_finalize): only unref the current_font if we have
2359 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2366 docs/gtk-config.1: Version incremented to 1.1.5
2368 Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
2370 * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
2371 ::text_yalign, ::activity_mode.
2373 * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
2374 ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
2376 (gtk_progress_bar_new):
2377 (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
2378 (gtk_progress_bar_construct): deprecated.
2380 * gtk/gtkvscrollbar.c:
2381 (gtk_vscrollbar_draw_step_back):
2382 (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
2383 gtk_paint_arrow, to be consistent with hscrollbar.
2386 added construct args ::hadjustment, ::vadjustment.
2387 added args ::line_wrap, ::word_wrap.
2388 (gtk_text_class_init): added scroll_adjustments signal.
2389 (gtk_text_new): use gtk_widget_new.
2390 (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
2391 so we don't screw the reference counts and don't leave signals connected.
2392 (gtk_text_destroy): disconnect adjustments signals.
2393 (gtk_text_finalize): unref adjustments.
2395 * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
2396 added args ::indent, ::spacing, ::show_stub, ::reorderable,
2397 ::use_drag_icons, ::line_style and ::expander_style.
2398 (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
2401 * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
2403 removed ::vadjustment and ::hadjustment args, introduced
2404 ::scroll_adjustments signal.
2405 added ::shadow_type, ::selection_mode and ::row_height args.
2406 added n_columns construct arg.
2407 (gtk_clist_construct): call gtk_object_constructed().
2408 (gtk_clist_set_row_height): if height is passed as 0,
2409 revert to automatic height calculation.
2410 (gtk_clist_destroy): before unrefing the adjustments, disconnect our
2413 Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
2415 * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
2416 like gtk_object_new.
2417 (gtk_widget_destroy): assert that we only destroy constructed widgets.
2419 * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
2420 to identify args that may only be used for construction.
2421 GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
2423 * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
2424 at the end if the object is not fully constructed.
2425 (gtk_object_newv): likewise.
2426 (gtk_object_destroy): assert that we only destroy constructed objects.
2427 (gtk_object_init): setup GTK_CONSTRUCTED from the
2429 (gtk_object_default_construct): new function to complete default
2430 construction of an object by applying missing construtor args with
2431 default values of 0, 0.0 or NULL.
2432 (gtk_object_constructed): new function to mark an object as being
2433 constructed (used from within constructors).
2435 * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
2436 so it is immediatedly available for the caller.
2438 * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
2439 the object initilizer (GtkObjectInitFunc takes a second arg now, the
2440 real klass), and asure that object initializers may temporarily alter
2443 Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
2445 * gtk/testgtk.c: change all occourances of gtk_container_add (
2446 scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
2447 for widget!=(clist, ctree, text, viewport).
2450 (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
2451 to add children to the scrolled window.
2453 * gtk/gtkscrolledwindow.h:
2454 * gtk/gtkscrolledwindow.c:
2455 changed scrolled_window->viewport to scrolled_window->child, and use
2456 gtk_widget_scroll_adjustements() to set the scroll adjustments for the
2457 widget, we do not create an additional viewport anymore.
2458 added ::hadjustment and ::vadjustment constructor args.
2459 (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
2460 (gtk_scrolled_window_set_hadjustment):
2461 (gtk_scrolled_window_set_vadjustment): new functions that superceed
2462 gtk_scrolled_window_construct.
2463 (gtk_scrolled_window_construct): deprecated this function.
2465 * gtk/gtkhscrollbar.c:
2466 * gtk/gtkvscrollbar.c:
2469 support a constructor arg "::adjustment", and use gtk_widget_new() for
2470 the widget creation.
2472 * gtk/gtkrange.c: added ::update_policy arg.
2473 (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
2474 a default adjustment so this function can be used for derived widgets
2475 that depend on the adjustment's existance.
2476 (gtk_range_destroy): disconnect the adjustment signal, so we don't
2477 get called after we got destroyed, we don't destroy the adjustment
2478 in here, because it might have been provided from another widget.
2480 * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
2481 (gtk_viewport_destroy): same as gtk_range_destroy.
2483 * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
2486 * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
2487 gboolean, indicating whether this widget supports activation.
2488 added gtk_widget_scroll_adjustements() to set the scrolling
2489 adjustments of a widget.
2491 Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
2493 * gtk/gtkoptionmenu.c:
2494 (gtk_option_menu_remove_contents):
2495 (gtk_option_menu_update_contents): removed
2496 gtk_container_[un]block_resize() pairs.
2498 * gtk/gtknotebook.h:
2499 * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
2500 be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
2501 wrtie-only argument.
2503 * *.c: made deprecated functions issue a message:
2504 gtk_clist_set_border, gtk_container_block_resize,
2505 gtk_container_unblock_resize, gtk_container_need_resize,
2506 gtk_object_class_add_user_signal, gtk_spin_button_construct,
2507 gtk_scrolled_window_construct.
2508 removed non-functional functions:
2509 gtk_container_disable_resize, gtk_container_enable_resize,
2510 gtk_clist_set_policy.
2512 Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
2514 * gtk/gtkbox.c (gtk_box_init):
2515 * gtk/gtkdrawingarea.c (gtk_drawing_area_init):
2516 * gtk/gtkeventbox.c (gtk_event_box_init):
2517 * gtk/gtkfixed.c (gtk_fixed_init):
2518 * gtk/gtkframe.c (gtk_frame_init):
2519 * gtk/gtkhandlebox.c (gtk_handle_box_init):
2520 * gtk/gtkpacker.c (gtk_packer_init):
2521 * gtk/gtkmisc.c (gtk_misc_init):
2522 * gtk/gtkpreview.c (gtk_preview_init):
2523 * gtk/gtkprogress.c (gtk_progress_init):
2524 * gtk/gtkprogressbar.c (gtk_progress_bar_init):
2525 * gtk/gtkseparator.c (gtk_separator_init):
2526 * gtk/gtktable.c (gtk_table_init):
2527 * gtk/gtkviewport.c (gtk_viewport_init):
2528 * gtk/gtkalignment.c (gtk_alignment_init):
2529 removed setting of the GTK_BASIC flag.
2533 removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
2535 * miscellaneous GtkType and macro fixups.
2537 Sat Nov 21 18:53:13 1998 Owen Taylor <otaylor@redhat.com>
2539 * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
2540 Fixed so it at least works with window managers other
2541 than Enlightenment, though it probably needs to be
2544 1998-11-21 Andrew T. Veliath <andrewtv@usa.net>
2546 * gtk/gtkhandlebox.[ch]: Add shadow_type and
2547 gtk_handle_box_set_shadow_type function (plus a
2548 GtkHandleBox::shadow arg) to allow configuration of shadow in the
2551 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2553 * gtk/gtkcalendar.c: Fix for marking days from
2554 Dan Reish <dreish@izzy.net>.
2556 Thu Nov 19 00:15:27 1998 Lars Hamann <lars@gtk.org>
2558 * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
2559 in row_list. (from Samuel Solon <ssolon@usa.net>)
2561 * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
2562 (gtk_clist_get_column_widget): return column widget
2564 Wed Nov 18 11:54:57 1998 Owen Taylor <otaylor@redhat.com>
2566 * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
2567 that are sent to a toplevel but are not within the
2570 * gdk/gdkdnd.c gdk/gdk.h: Added support for a
2571 XdndProxy atom which proxies the drag to another window.
2573 1998-11-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
2575 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
2576 that it is not needed.
2578 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
2579 * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
2580 function to correctly determine gdk window position relative to
2581 its "root window" - contains check for an Enlightenment
2582 virtual root window.
2583 * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
2584 gdk_window_get_deskrelative_origin to get the origin of dragged
2585 handleboxes correctly. Now it works correctly with E.
2587 Tue Nov 17 1998 Tuomas Lukka <lukka@iki.fi>
2589 * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
2590 getting types even though we were not using real type names,
2591 just the index. This caused random crashes when more than
2592 256 types were defined.
2594 1998-11-17 Martin Baulig <martin@home-of-linux.org>
2596 * gtk/genmarshal.pl: Put output files in the current directory
2597 and not in the $(srcdir) since the VPATH is ignored for built
2600 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
2603 * gtk/Makefile.am: check for unchanged autogenerated files, so
2604 we don't rebuild everything just for adding a new function
2606 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2609 gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
2610 code thanks to GNOME stock by Eckehard Berns. New function
2611 gtk_pixmap_set_build_insensitive to provide ability to turn
2614 Tue Nov 17 00:06:29 1998 Lars Hamann <lars@gtk.org>
2616 * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
2617 new guints : tab_hborder, tab_vborder; marked tab_border deprecated
2618 (struct _GtkNotebookPage): new flags : expand, fill, pack
2620 * gtk/gtknotebook.h/c
2621 (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
2623 (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
2624 (gtk_notebook_set_tab_hborder): new function. set tab_hborder
2625 (gtk_notebook_set_tab_vborder): new function. set tab_vborder
2626 (gtk_notebook_query_tab_label): new function. get tab_label widget.
2627 (gtk_notebook_set_tab_label): new function. set tab_label widget.
2628 (gtk_notebook_set_tab_label_text): new function. set tab_label text.
2629 (gtk_notebook_query_menu_label): new function. get tab_label widget.
2630 (gtk_notebook_set_menu_label): new function. set tab_label widget.
2631 (gtk_notebook_set_menu_label_text): new function. set tab_label text.
2632 (gtk_notebook_set_tab_label_packing): new function. set tab_label
2633 fill, expand, fill_type
2634 (gtk_notebook_query_tab_label_packing): new function. get tab_label
2635 fill, expand, fill_type
2637 (gtk_notebook_real_page_position): return logic page number
2638 (gtk_notebook_search_page) search next/prev logic page
2639 (gtk_notebook_update_labels): set logic page number.
2640 (gtk_notebook_page_compare): renamed gtk_notebook_find_page
2641 (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
2642 CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
2643 (gtk_notebook_button_press) (gtk_notebook_key_press)
2644 (gtk_notebook_focus) (gtk_notebook_pages_allocate)
2645 (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
2646 use gtk_notebook_search_page
2647 (gtk_notebook_page_allocate): fixed allocation bug
2648 (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
2649 (gtk_notebook_init): unset GTK_NO_WINDOW flag
2650 (gtk_notebook_size_request): check whether page->child is visible.
2651 changes due to tab h/vborder, homogeneous tabs
2652 (gtk_notebook_paint): don't draw invisible tabs
2653 (gtk_notebook_switch_page): calculate page_num if it's less than 0
2654 (gtk_notebook_append_*) (gtk_notebook_prepend_*)
2655 (gtk_notebook_insert_page): removed sanity checks
2657 * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
2659 Mon Nov 16 15:10:33 1998 Owen Taylor <otaylor@redhat.com>
2661 * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
2662 (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
2664 * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
2665 broken. (GtkWidget's default unmap handler should work fine).
2666 Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
2668 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
2670 * gtk/gtkmenubar.[ch]: added shadow_type setting and
2671 gtk_menu_bar_set_shadow_type function to allow shadow
2672 configurability for menubars
2674 * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
2677 Mon Nov 16 00:17:53 1998 Tim Janik <timj@gtk.org>
2679 * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
2680 class creation and parent class' object initializer.
2682 1998-11-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
2684 * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
2685 have assigned it to the window -- there is no point in keeping it around.
2686 (gtk_paned_unrealize): No need to destroy the cursor here.
2688 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
2691 Fri Nov 13 11:22:38 1998 Owen Taylor <otaylor@redhat.com>
2693 * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
2694 (gtk-blizzard-981005-0.
2695 Christopher Blizzard <blizzard@applied-theory.com)
2697 * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
2698 gdk_pixmap_foreign_new to gdkx.h.
2700 Fri Nov 13 16:06:48 1998 Owen Taylor <otaylor@redhat.com>
2702 * gtk/Makefile.am: Added rules to generate an empty
2703 GTK+ theme called "Default" upon installation.
2705 * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
2706 of fonts and fontsets.
2707 (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
2709 * gtk/gtkmain.c: Change test to detect glibc's
2710 utf8 based mb* functions to be more specific.
2712 * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
2715 Fri Nov 13 16:43:36 1998 Lars Hamann <lars@gtk.org>
2717 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
2719 (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
2720 event_window if draw_indicator is set
2721 (gtk_toggle_button_set_mode):
2723 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
2725 * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
2726 ensure proper type (SunPro cc complains)
2728 * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
2730 * gtk/gtktogglebutton.c: use our own draw method so we get proper
2731 redraws on active state
2733 Thu Nov 12 00:26:13 1998 Lars Hamann <lars@gtk.org>
2735 * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
2738 * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
2741 Wed Nov 11 19:54:58 1998 Lars Hamann <lars@gtk.org>
2743 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
2744 (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
2745 added ARG_WINDOW_PLACEMENT
2747 * gtk/gtkclist.c (size_allocate_columns): resize column if column
2748 button > column width and auto_resize is set
2749 (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
2750 consider column button width of auto resized columns
2751 (gtk_clist_parent_set): removed
2753 * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
2754 (auto_resize_columns): auto_resize all columns
2755 (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
2756 (column_auto_resize): respect column button width of auto resized
2759 1998-11-10 Martin Baulig <baulig@merkur.uni-trier.de>
2761 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
2762 we can check for latest GTK features.
2764 Mon Nov 9 00:39:20 1998 Lars Hamann <lars@gtk.org>
2766 * gtk/gtkenums.h : new enum GtkCornerType
2767 * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
2769 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
2770 new method to set window_placement.
2771 (gtk_scrolled_window_viewport_allocate)
2772 (gtk_scrolled_window_size_allocate): few changes due to
2774 * gtk/testgtk.c (remove_selection): fixed while loop.
2776 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
2778 * gtk/gtkclist.c: check if column[i].button is valid before calling
2779 gtk_widget_intersect on it in gtk_clist_draw
2781 * gtk/gtkdnd.c: removed unused variable empty_bits
2783 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
2785 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
2786 a boolean (thanks to Elrond for noticing this)
2788 1998-11-07 Jay Cox <jaycox@earthlink.net>
2790 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
2791 * gdk/gdkxid.c: declare xid_ht static
2792 * examples/*/Makefile: get the link ordering right.
2794 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
2796 * gtk/gtkclist.c (gtk_clist_realize): Set background of
2797 title button window to GTK_STATE_NORMAL instead of
2798 GTK_STATE_SELECTED to avoid ugly flicker.
2800 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
2802 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
2803 if adjustments are NULL and list size has changed
2804 (gtk_clist_size_request): return real list requsition,
2805 if adjustments are NULL.
2806 (size_allocate_columns): use button->requisition.with, if column
2808 (list_requisition_width): new function. return full list width.
2809 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
2810 auto create adjustments.
2811 (gtk_clist_motion) (move_vertical) (move_horizontal):
2812 check adjustment != NULL.
2814 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
2816 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
2817 a clear/redraw, not just a redraw, so the focus
2818 gets undrawn properly.
2820 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
2821 Chain to gtk_widget_unrealize() instead of duplicating
2824 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
2826 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
2827 last vestiges of old DND.
2829 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
2831 * gtk/gtkentry.c: Restored inner border to entries,
2832 erase cursors to background image.
2834 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
2836 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
2837 it was identical to paint_flat_box().
2839 * gtk/gtkstyle.c: Coding style fixups.
2841 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
2844 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
2845 Change 'side' for paint_[box/shadow]_gap and paint_extension
2846 to be GtkPositionType instead of a random int.
2848 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
2849 "frame" as detail - an aspectframe should draw identical
2852 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
2854 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
2855 from combine_child_shapes().
2857 * gdk/gdkwindow.c: Merge propagate_shapes() and
2858 propagate_combine_shapes() to remove code duplication.
2860 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
2862 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
2863 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
2864 So allocate some mem if it's not already done.
2866 * clist scrollbar merges from HEAD
2868 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
2870 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
2872 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
2873 of 0x80000000, so we stay within the bounds of a postive signed
2874 int (it broke some compilers)
2876 * gtk/gtkmenushell.c
2877 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
2878 when some of the menuitems are hidden
2880 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
2883 * gtk/gtkwidget.c: add a dummy continue after the line label
2884 next_rect, since some compilers don't like label: }
2886 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
2888 * Okay, so we need the X11R6 keysyms so programs don't have to
2889 worry about them. They don't conflict anyway. Reverted the #ifdef
2892 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
2893 special rule for them (X-derived-headers)
2895 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
2897 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
2898 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
2899 portable, and we really shouldn't be using awk anyway.
2902 * makekeysyms.awk: bye bye
2904 * gtk/gtkaccelgroup.c
2907 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
2909 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
2911 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
2912 and gdkkeysyms.h. Remove those files from CVS.
2914 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
2916 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
2917 of the USE_XIM #ifdef
2919 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
2920 even with --include-deps. Slightly different from timj's fix, to avoid
2921 circular dependency with gtkmarshal.c
2926 * gtk/gtkfontsel.[ch]
2929 * gtk/gtkobject.[ch]
2930 * gtk/testgtk.c: merges from HEAD
2933 * gtk/gtkradiomenuitem.c
2934 * gtk/gtktreeitem.c: cleanups
2936 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
2938 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
2940 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
2942 * configure.in: AIX has libpthreads, to make sure you can have
2943 more than one thread. Also add -D_THREAD_SAFE, and reorder
2944 configure.in so CFLAGS doesn't get clobbered when we actually
2947 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
2950 * gtk/testdnd.c: removed unused variable "buf"
2952 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
2954 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
2955 remove_link(), not remove()
2957 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
2959 * gdk/gdkrgb.c: use glib endian stuff
2961 * configure.in: don't need to check for endianness anymore
2963 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
2965 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
2967 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
2968 all toplevel widgets, not toplevel windows. (I.e.,
2969 plugs should be reset)
2971 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
2972 _do_ need to notify the other toplevels - by the time
2973 the get the client messages, the RC file dates will
2976 * gtk/gtkcontainer.h: Added a function call to list
2977 every toplevel widget.
2979 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
2980 Don't send client messages to _every_ window on display!
2982 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
2984 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
2985 when dragging across widgets, only in drags
2988 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
2990 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
2991 Emit "drag_end" signal at end of drag.
2993 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
2995 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
2996 for "gtk-embedded" data currently set by
2997 GtkSocket, and use that to forward client message
2998 on to embedded windows. Only reset our own toplevel -
2999 the others will handle themselves. (Now that
3000 GtkMenus live in GtkWindows)
3002 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
3004 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
3005 client window finding code so that it works with
3006 WM's other than fvwm.
3008 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
3010 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
3011 the "GtkDrawWindow" class, which is a descendent
3012 of the Window class which leaves its background alone.
3013 Essentially, a toplevel drawing area, though it does
3014 allow adding a child.
3016 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
3018 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
3019 merging RC styles. Report new share/themes path for
3020 themes directory. Deref theme engines when appropriate.
3022 * gtk/gtkclist.c: Set all backgrounds in _style_set().
3023 Make sure that pixel for xor_gc is never 0.
3025 * gtk/gtkctree.c: Choose colors for plus/minus more
3026 carefully, in a hopefully style-independent fashion.
3027 (Still needs a bit more work)
3029 * gtk/gtkwidget.c: Don't send expose events to widgets
3030 which are about to be resized and redrawn. (Needs a
3033 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
3034 drawing on tabs for newly allocated, un-sized
3035 pages - we'll get the size wrong.
3037 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
3039 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
3040 up stupidities in last commit.
3042 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
3044 * gtk/gtkwidget.c: When handling queued resizes, account
3045 for handleboxes, where the widget heirarchy is different
3046 than the window heirarchy by just queueing a resize on
3047 the entire handlebox if the detached child is changed.
3049 - Remove widgets from the redraw queue when reparenting,
3050 even if not unrealizing. We queue a resize/redraw in
3053 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
3054 * gtk/gtkstyle.c: added check to see if the widget has been shaped
3055 byt the app via gtk_widget_shape_combine_mask and if it has does
3056 not reset the shape on theme change.
3058 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
3060 * gtk/gtkfilesel.c: Keep a list of directories in which we never
3061 want to stat the entries (like /afs), and assume everything in
3062 those directories is a subdirectory.
3064 - When following a path, try to open components even when
3065 we don't find them in their parent's directory to
3066 support automounters.
3068 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
3070 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
3071 now at least compiles again.
3073 * gdk/gdk.c (gdk_event_translate): Don't pass events
3074 on destroyed widgets to the gdk_input layer.
3076 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
3078 * gtk/gtkthemes.c: Use g_module instead of dlopen()
3080 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
3082 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
3083 if we've changed widgets since the expose event
3086 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
3088 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
3089 to restore approximate bin compatibility with the
3090 non-themes branch. (This does break bin compat
3091 within the themes branch.)
3093 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
3095 * gtk/gtklabel.c (gtk_label_set): Eliminate a
3096 gdk_window_clear_area() that snuck in with the
3097 menu underlines merge.
3099 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
3101 * gtk/gtktext.c: Fixed some remaining background drawing,
3102 merges from main branch, cleanups.
3104 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
3106 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
3107 dereference NULL focus tab.
3109 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
3110 functions since we need to both show/hide and
3111 queue a redraw. (There's some duplication of drawing here,
3112 we probably should only be queuing a redraw on the
3113 "value" portion of the scale.)
3115 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
3117 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
3118 into the theme-drawing framework. We do this by making them,
3119 like check/radio-buttons, no-window widgets with subwindows. We
3120 then move the value by calling gtk_widget_queue_clear() and only
3121 redraw the value in our draw() / expose() handler. A virtual
3122 function clear_background is added which queues a clear on the
3123 "background" portion of the widget.
3125 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
3127 * gtk/gtktext.c (mark_bg_gc): Make background colors work
3128 again. (We can't always paint the background with a
3129 paint() function - only do that for selected text)
3131 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
3133 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
3134 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
3136 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
3137 the themes can't be built as part of the same build since
3138 they depend on gdk_imlib.
3140 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
3142 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
3145 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
3148 - Upgrade to libtool-1.2b + patch to add shared library dependencies
3149 for Linux. (Needs to be extended to other platforms where they
3152 - Check for -ldl so this branch should build on all platforms, though
3153 themes will work on all platforms they could work on.
3155 - Use -version and -release simultaneously: sonames stay as they are
3156 in the current scheme, but -lgtk-1.1 changes to -lgtk.
3158 - Added in extra -l flags to library LDFLAGS so we get shared library
3159 dependencies against X libs and -ldl. (But not libgtk against
3160 libgdk or libglib yet, since dependencies against uninstalled
3161 libraries aren't portable)
3163 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
3164 * gtkrc.c - added api calls to find module and theme paths from gtk.
3165 nuked gtk_install_prefix global.
3167 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
3168 * fixed gtk_install_prefix global.
3170 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
3171 * added gtk_install_prefix global const variabel to find where gtk is
3174 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
3175 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
3178 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
3179 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
3181 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
3182 * Fixed minor problem in gtkhandlebox.c with drawing, and some
3183 notebook stuff. Also pixmap theme is now "clean" again.
3185 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
3186 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
3187 queued area resizing once more.
3189 Mon Aug 10 23:09:30 EDT 1998
3190 * Added a few drawing fixes for notebook and other widgets. finished
3191 pixmap theme up to the level that can be supported so far. (need to
3192 add path discovery 9ie where is the rc fiel from - add to pixmap
3193 path so we can get theimages from there too). then we can package
3194 themes. After that need to add to theme seartch path stuff in users
3197 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
3199 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
3200 drawing area, draw in an expose handler.
3202 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
3205 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
3207 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
3208 creation of GC's so that they will be set before
3209 they are used for map events (why are they used there?)
3211 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
3212 be queued in multiple times in the queue.
3214 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
3216 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
3217 clip rects (or do anything) for shadow_none.
3219 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
3221 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
3222 Yes, it was needed. draw() and expose() are _not_
3225 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
3226 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
3228 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
3229 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
3230 more baby oooh yeah more more MORE YES YES.
3232 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
3233 * hopefully fixed problem wiht togglebuttons acting like
3234 radiobuttons in gtktogglebutton.c
3236 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
3237 * fixed another drawing buglet in the frame drawing code (actually
3238 in the clearing code but anyway in gtkstyle.c)
3240 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
3241 * Fixed warning from colorsel widget...
3243 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
3244 * Fixed defautl drawing code to no longer clobber the original style
3245 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
3248 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
3250 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
3252 * gtk/gtktooltips.c: Pass a widget (the window) to the
3253 drawing function instead of the GtkTooltips.
3255 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
3257 * gdk/gdkwindow.c: Abstract out checking for shape
3258 extension into a function.
3260 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
3261 Remove extra callls to gtk_window_draw().
3263 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
3265 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
3267 * themes/th_main.c: Moved messages around so they are
3268 printed before destroying strings.
3270 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
3272 * gdk/gdk.c: Fairly simple implementation of expose compression.
3273 (No GraphicsExpose compression yet, always compress
3274 with the equivalent of XtCompressMultiple - no compression
3275 of Expose events across non-Expose events)
3277 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
3278 Find rectangle bounding two rectangles.
3280 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
3281 in gdk_default_draw_shadow()
3283 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
3284 * Fixed drawing functions to handle switching themes on the fly
3285 gracefully and look decent.
3287 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
3288 * Added all the theme drawing code to all widgets, fixed up minor
3289 nigglies in some widgets when it comes to themes, seem to be
3290 running into some funky behavior with clipping rects in GC's. Too
3291 many files to list here. (all files that now use gtk_paint_* are
3294 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
3296 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
3297 Set up the demo theme so it is loaded from the RC file.
3299 * themes/th_draw.c: Alleviate the hardcoded paths a wee
3300 bit. (use $HOME/themes/)
3302 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
3303 the RC file via dlopen()
3305 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
3307 Internal handling of styles and RC styles pretty much
3308 completely reworked for Theme work.
3311 - Added routines for virtualization of RcStyle and Style handling.
3312 - Temporary "sample" inline theme-engine. (Does nothing
3313 but print out a few messages.
3316 - Made GtkRcStyle public, added flags to tell if particular
3317 colors have been set.
3318 - RC Styles are "transparent", and the final style for
3319 a widget is the composition of all matching styles
3320 - Added pointer to GtkThemeEngine, and gpointer engine_data
3321 to RC style and style.
3322 - Parse "engine" keyword, load the appropriate theme engine
3323 and call the engine's parser.
3326 - Keep a GtkRcStyle * in styles created from Rc Styles.
3327 - Load up images from RC file at style attachment time.
3328 - Call ->engine->foo() at appropriate times.
3329 - Don't use a GCache. All incarnations for a style are
3330 just linked together in a list, depend on the RC style
3331 code to find the existing copy.
3333 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
3335 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
3336 of partial areas. This can be done either relative
3337 to the existing windows (gtk_widget_queue_clear[_area]())
3338 or relative to the future allocation of the widget
3339 (gtk_widget_queue_draw[_area]).
3341 The initial implementation is pretty braindead, but
3344 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
3345 in favor of gtk_widget_queue_clear().
3347 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
3348 flags in favor of gtk_widget_queue_clear()
3350 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
3352 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
3353 handling of partially clipped areas.
3355 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
3357 * gtk/gtkclist.h (struct _GtkCListClass)
3358 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
3360 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
3362 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
3363 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
3365 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
3366 "hadjustment" & "vadjustment"
3367 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
3368 set/get_arg functions
3369 (gtk_clist_construct): don't create/adjust scrollbars.
3370 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
3371 to set h/vadjustments
3372 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
3373 to query h/vadjustments
3374 (create_scrollbars): removed.
3375 (create_adjustments): replacement for create_scrollbars
3376 (gtk_clist_new): call gtk_clist_new_with_titles
3377 (gtk_clist_new_with_titles): don't warn on titles == NULL
3378 (move_horizontal): use CLAMP instead
3379 (gtk_clist_set_policy): deprecated method.
3380 use gtk_scrolled_window_set_policy instead.
3381 (vadjustment_value_changed): use clist->vadj.
3382 (adjust_scrollbars): renamed to adjust_adjustments
3383 (adjust_adjustments): former adjust_scrollbars
3384 (gtk_clist_destroy): unref adjustments
3385 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
3386 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
3387 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
3388 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
3389 (gtk_clist_set_row_height) (real_resize_column):
3390 call adjust_adjustments
3391 (gtk_clist_moveto): return if clist has no adjustments yet.
3392 (gtk_clist_parent_set): new GtkWidget::parent_set function.
3393 Autogenerate h/vadjustments if needed.
3394 (move_horizontal) (move_vertical): some cleanups
3396 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
3397 call only gtk_viewport_set_h/vadjustment and let these functions
3399 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
3400 generate a new adjustment if needed
3402 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
3403 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
3405 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
3406 queue_resize if visibility of scrollbars changes
3407 (gtk_scrolled_window_remove): only call container_remove with
3408 scrolled_window->viewport automatically if viewport was autogenerated
3409 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
3410 auto create a viewport only if widget does not take h/vadjustments.
3411 (gtk_scrolled_window_construct): don't generate a viewport
3413 (gtk_scrolled_window_forall): call callback with viewport in any case
3414 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
3416 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
3417 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
3421 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
3422 in conjunction with clists/ctrees
3424 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
3425 in conjunction with clists
3427 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
3428 in conjunction with clists
3430 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
3432 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
3433 (gtk_ctree_remove_node): select focus_row if needed
3434 (cell_size_request): only get pixmap size if pixmap != NULL
3436 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
3438 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
3439 GTK_IS_WIDGET (widget):
3441 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
3443 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
3444 focus_row after a remove_row call.
3446 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
3448 * gtk/gtkoptionmenu.c
3449 * gtk/gtkmenushell.c: make option menus work when some of the
3450 menuitems are hidden - previously, option menu would popup too
3453 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
3455 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
3457 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
3459 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
3461 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
3462 (GDK_WLIBS): New variable. Lists extra libraries needed to use
3464 * gtk-config.in (--libs): List $GDK_WLIBS, too.
3466 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3468 * Released GTK+ 1.1.3
3474 * docs/gtk-config.1: updated for v1.1.3
3478 * docs/Makefile.am: Includes new 'make release' as well as
3479 'make sanity'. Also handles html and text creation from html,
3480 and puts them into the distribution
3482 * docs/Makefile.sgml: removed, similar functionality is now in
3483 the Makefile.am file
3485 * docs/.cvsignore: ignore html and text directories
3486 * docs/glib.texi: removed (now in glib dist)
3488 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
3490 * gtk/gtklist.c (gtk_list_remove_items_internal):
3491 free undo_un/selection, unselect list_item before disconnect
3493 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
3495 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
3496 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
3497 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
3498 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
3499 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
3500 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
3501 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
3502 new functions. These functions are signal connected to inserted
3503 list_items, to handle key bindings and GtkItem::de/select/toggle
3506 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
3507 gtk_object_class_add_signals call.
3508 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
3509 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
3510 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
3511 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
3512 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
3513 removed. These functions are handled via connected
3514 gtk_list_signal_* functions now
3516 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
3518 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
3519 even with --include-deps:
3520 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
3522 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
3524 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
3525 gtk_object_data_set_destroy to fit the gtkobject.h API.
3527 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
3530 Added support for an extra 'base' filter which an application can
3531 set to restrict the fonts available to the user (e.g. a terminal
3532 program only wants the user to be able to select fixed-width fonts).
3533 The type of font (bitmap/scalable/scaled bitmap) is now
3534 also a part of the filter, so that an application can
3535 request that only scalable fonts are shown.
3536 There are new functions to set the base & user filters.
3537 I've also stopped the up/down key press signals getting
3538 to the clists since the font selection widget handles
3539 them itself. It acted a bit strangely before.
3541 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
3543 * gtk/gtkmain.c (gtk_init): support an environment variable
3544 GTK_MODULES= which takes a colon sperated list of module names
3545 automatically loaded at gtk_init() startup.
3547 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
3549 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
3551 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
3553 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
3556 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
3558 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
3561 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
3563 * gtk/gtkfilesel.h: GtkType and macro fixups
3564 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
3565 for the file selection widget to try a completion on (set the
3568 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
3570 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
3571 slight speed improvement and lessens code duplication.
3573 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
3575 * gtk/gtkdnd.c: Always send "drag_leave" to dests
3576 without GTK_DEST_DEFAULT_MOTION.
3578 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
3580 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
3581 on destroyed windows so we clear the XID table properly.
3582 Finish up restructure of return value handling that
3583 was half-done before.
3585 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
3587 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
3588 the window tree more comprehensively, so that we find
3589 client windows hidden under non-toplevels.
3591 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
3593 * gtk/gtkselection.c (gtk_selection_data_set):
3594 Maintain the null-termintation guarantee, even when
3595 data = NULL, length = 0. (Warn on data = NULL,
3598 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
3600 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
3601 into function prototype for drag_data_received.
3603 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
3605 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
3607 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
3609 * gtk/gtkclist.c: rearranged some functions
3610 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
3612 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
3613 (gtk_clist_set_border): deprecated function, use
3614 gtk_clist_set_shadow_type instead.
3615 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
3616 (adjust_scrollbars): some cleanups
3617 (select_row) (unselect_row): removed. replaced by equivalent
3618 gtk_signal_emit calls
3619 (add_style_data): removed, use gtk_clist_style_set instead
3620 (gtk_clist_style_set): fill in size data, after style was set.
3621 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
3622 (gtk_clist_set_cell_style): auto_resize columns if needed
3623 (column_auto_resize): resize column if needed for auto_resize
3624 (real_clear): disable auto_resize while list destroy
3625 (resize_column): removed
3627 * gtk/gtkctree.c : (gtk_ctree_remove_node)
3628 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
3629 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
3630 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
3631 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
3632 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
3633 auto_resize columns if needed
3634 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
3635 (real_clear): disable auto_resize while processing the tree
3637 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
3640 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
3642 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
3643 typo - look for right atom on transfer failures.
3645 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
3647 * gtk/gtkwidget.c gtkmarshal.list: Change signal
3648 for drag_data_get to match the use that was being
3649 made of it everywhere else...
3651 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
3653 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
3654 mechanism, that is used for the DND messages.
3656 Removed all the old DND code.
3658 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
3659 get the visual of a given colormap.
3661 * gtk/gtkcolorsel.c: Conversion to new DND, drag
3664 * gdk/gdk.h gdk/gdkdnd.c: The low-level
3665 X oriented portions of drag and drop protocols.
3666 Sending and receiving client messages, and navigating
3669 * gdk/gdkimage.c: added a gdk_flush() when destroying
3670 SHM images to hopefully make it more likely that
3671 X will gracefully handle the segment being destroyed.
3673 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
3674 DND debugging flags.
3676 * gtk/gtkeditable.[ch]: Updates for the selection handling
3679 * gtk/gtkselection.[ch]: Added GtkTargetList, a
3680 refcounted data structure for keeping track of lists
3681 of GdkAtom + information. Removed selection_handler_add
3682 in favor of a "drag_data_get" signal.
3684 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
3685 dependent) parts of the DND protocols, display of drag icons,
3686 drag-under highlighting, and the "default handlers".
3688 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
3689 windows that are used for reliable pointer grabs and
3690 selection handling in the DND code.
3692 * gtk/testdnd.c: New test program for new DND. (Old
3693 DND tests in testgtk still need to be converted.)
3695 * gtk/testselection.c: Use the new selection API.
3697 * docs/dnd_internals: Start at describing how
3698 all the new code works inside.
3700 * docs/Changes-1.2.txt: New file describing source-incompatible
3701 changes in GTK+-1.2.
3703 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
3705 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
3706 the right list node.
3708 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
3709 to the XID table so we can receive events on it.
3711 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
3713 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
3714 to get the timestamp from a generic event.
3716 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
3718 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
3719 that safely adds additional events to a widget's event
3720 mask, even if the widget has previously been realized.
3721 (We can do this, but not remove events from the event
3724 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
3726 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
3727 for AnyPropertyType.
3729 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
3731 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
3734 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
3736 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
3739 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
3741 * gdk/gdk.c (gdk_event_translate): Removed printing
3742 of unknown window lookup warnings. (Made it
3743 a GDK_NOTE) - they happen in many circumstances.
3745 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
3747 * Call XFilterEvent() on events we get for unknown
3748 windows, since it may be the window Xlib uses to
3749 communicate with the IM.
3750 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
3752 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
3754 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
3757 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
3759 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
3760 message for return_value + GTK_RUN_FIRST.
3762 1998-10-18 Martin Baulig <martin@home-of-linux.org>
3764 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
3765 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
3767 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
3769 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
3770 styles of inserted row
3771 (change_style): change style of focus_row
3773 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
3774 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
3775 to set/get row/cell styles.
3776 (gtk_clist_realize): attach row and cell style, allocate row colors.
3777 (gtk_clist_unrealize): detach row and cell styles.
3778 (get_cell_style): new function. get correct cell style.
3779 (draw_cell_pixmap): new function.
3780 (draw_row): draw cells with row or cell styles.
3781 (row_new): set cell and row styles to NULL.
3782 (row_delete): detach & unref cell and row styles.
3784 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
3785 new functions to attach/detach styles and allocate colors.
3786 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
3787 styles of invisible nodes.
3788 (draw_cell_pixmap): new function.
3789 (get_cell_style): new function. get correct cell style.
3790 (gtk_ctree_draw_expander): new function. draw tree expander.
3791 (gtk_ctree_draw_lines): new function.draw tree lines.
3792 (draw_row): draw cells with row or cell styles.
3793 (row_new): set cell and row styles to NULL.
3794 (row_delete): detach & unref cell and row styles.
3795 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
3796 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
3797 Analogons of GtkCList functions
3798 (gtk_ctree_set_spacing): new function. set spacing between
3799 tree expander and cell contents
3800 (gtk_ctree_set_expander_style): new function. set expander style
3802 (ctree_is_hot_spot): few changes due to draw_row modifications.
3804 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
3806 * gtk/gtkcombo.c: try completion on MOD1-TAB.
3807 Handle case when the combo->list is empty.
3809 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
3811 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
3812 handlers that have not yet been disconnected (finally managed to
3813 trigger the gtk_signal_handler_unref() paranoid warning).
3815 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
3817 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
3818 width and height which is -1 and not -2.
3820 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
3823 * autogen.sh: we need libtool 1.2b now
3825 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
3827 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
3828 and bottom attach arguments as mandatory and readjust the table size
3829 and opposing edge accordingly if required. this way the order in which
3830 the arguments are set doesn't matter.
3832 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
3834 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
3835 message to print out parent class name correctly.
3837 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
3841 removed functions gtk_object_set_data_destroy and
3842 gtk_object_set_data_destroy_by_id.
3843 added functions gtk_object_remove_no_notify and
3844 gtk_object_remove_no_notify_by_id which will remove a certain data
3845 portion without invokation of its destroy notifier, this should only
3846 be used in very controled circumstances.
3848 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
3850 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
3851 size_allocate_title_buttons call
3852 (gtk_clist_realize): changed initial column.window position
3854 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
3856 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
3858 * gtk/gtkctree.c (create_xor_gc): removed
3859 (gtk_ctree_button_press): set correct line_attributes for
3860 clist->xor_gc on drag start
3861 (gtk_ctree_button_release): reset clist->xor_gc
3863 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
3866 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
3867 which were in place to fixup emacs' cc-mode indentation.
3868 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
3869 proper way to achive this and doesn't produce problems for
3870 stupid pragma-related compiler bugs. ;)
3872 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
3874 * gtk/gtkclist.h: new signal GtkCList::resize_column.
3875 * gtk/gtkclist.c (draw_row): don't draw invisible columns
3876 (size_allocate_title_buttons) (size_allocate_columns):
3877 skip invisible columns
3878 (new_column_width): take min/max_width into account
3879 (gtk_clist_button_release) (gtk_clist_motion):
3880 changes due to changed new_column_width function
3881 (LIST_WIDTH): changed define to inline function.
3882 (real_resize_column): class function for resize_column signal
3883 (gtk_clist_motion): fixed autoscrolling for column resizes
3884 (gtk_clist_set_column_visibility): don't hide last visible column,
3885 changed visible arg to gboolean
3886 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
3887 new functions : set min/max width of a column
3888 (gtk_clist_set_column_resizeable): new function : enable/disable
3889 column resize operations by mouse
3891 * gtk/gtkctree.c (draw_row): don't draw invisible columns
3892 (ctree_is_hot_spot): return FALSE if tree_column is invisible
3893 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
3894 tree_column is invisible
3895 (gtk_ctree_find_all_by_row_data)
3896 (gtk_ctree_find_all_by_row_data_custom): new function from
3897 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
3898 GtkCTreeNodes with row->data == data.
3900 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
3902 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
3903 memory (Martin Pool <mbp@wistful.humbug.org.au>).
3905 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
3907 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
3908 should have been guint32. Thanks to Tristan Colgate for finding it.
3910 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3912 * gtk/gtkcalendar.h:
3913 gtk/gtkcalendar.c: More changes:
3914 - The day with focus is now seperated from the day selected
3915 - The day with focus has the xor's line around it
3916 - The selected day is now standard selected style
3917 - The week names and week numbers are now also drawn
3919 - Space now selects the day which has focus
3921 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3923 * gtk/gtkcalendar.h:
3924 gtk/gtkcalendar.c: Some significant changes, including:
3925 - No longer draw focus around entire widget, only around
3926 the day which has focus
3927 - Draw relief around entire widget like originally planned
3928 - Show header and day names by default
3929 - Move data private to the widget out of GtkCalendar struct
3930 and only point to it with a gpointer
3931 - Remove some old unused variables from GtkCalendar struct
3933 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
3935 * docs/gtk_tut.sgml: update I've had sat around:
3936 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
3937 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
3938 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
3940 1998-10-01 Martin Baulig <martin@home-of-linux.org>
3942 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
3944 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
3945 Makes it possible to individually show and hide columns.
3946 (size_allocate_columns): Adapted to keep track of hidden columns.
3947 (size_allocate_title_buttons): Likewise.
3949 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
3951 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
3952 fundamental types, collect an argument of the type returned from
3953 gtk_type_get_varargs_type(). removed the first macro argument which
3954 was just the same as the fundamental type of the *arg passed to
3956 * gtk/gtkarg.c (gtk_args_collect):
3957 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
3959 * gtk/gtktypeutils.h:
3960 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
3961 gtk_type_get_varargs_type() to set and query the varargs collect
3962 type used for a fundamental type, registered outside of Gtk.
3964 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
3965 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
3968 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
3969 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
3972 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
3974 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
3975 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
3976 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
3978 (real_tree_expand) (real_tree_collapse):
3979 don't expand/collapse a leaf
3981 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
3983 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
3984 segfault when looking up a non-existant value name (reported by
3985 Pablo <pcj+gtk@primenet.com>).
3987 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
3989 * gtk/gtkclist.h (gtk_clist_prepend):
3990 * gtk/gtkclist.c (gtk_clist_prepend): new function.
3991 (gtk_clist_insert): added g_return_val_if_fail()
3992 statements. accept a row parameter < 0 or > clist->rows to indicate
3994 (real_clear): first clean up all internal pointers and lists (e.g.
3995 clist->row_list or clist->rows), then delete the distinct rows. this
3996 is required because of destroy notifiers, we need to have all internal
3997 structures updated and be reentrant.
3999 * gtk/gtkcalendar.h:
4000 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
4001 GtkCalendarClass signal methods.
4002 GtkType and macro fixups, put `void' into () prototypes, avoid C++
4003 style comments, indentation fixes, fixed some g_return_if_fail()
4005 (gtk_calendar_paint_header):
4006 (gtk_calendar_paint_day_names):
4007 (gtk_calendar_paint_week_numbers):
4008 (gtk_calendar_paint_main): made these static functions.
4009 (gtk_calendar_select_month):
4010 (gtk_calendar_select_day):
4011 (gtk_calendar_mark_day):
4012 (gtk_calendar_unmark_day):
4013 (gtk_calendar_get_date): signedness corrections, use guints
4015 (gtk_calendar_size_request): removed unused variables.
4017 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
4019 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
4020 widgets in the ->widgets_by_action list that have a callback
4021 defined (not only those with a callback_action!=0).
4023 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4025 * gtk/gtkcalendar.h:
4027 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
4029 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4031 * gtk/gtkcalendar.h:
4033 examples/calendar: Added gtkcalendar widget and demo
4035 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
4037 * gtk/gtkclist.c (gtk_clist_sort):
4039 (gtk_clist_unselect_all):
4040 (gtk_clist_select_all): adde g_return_if_fail() statements.
4042 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
4044 * configure.in: set binary age and interface age to 0.
4046 * gtk/gtkspinbutton.h:
4047 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
4048 gtk_spin_button_configure. gtk_spin_button_construct is still defined
4049 as an alias for gtk_spin_button_configure for source compatibility,
4050 but actuall use is deprecated.
4051 typeness corrections, i.e. gint->gboolean and gint->guint.
4052 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
4053 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
4054 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
4055 GtkSpinButton::adjustment, GtkSpinButton::digits and
4056 GtkSpinButton::climb_rate.
4057 GtkType and macro fixups.
4059 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
4061 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
4062 the *real* geometry position of a window, taken possible window
4063 manager offsets into account.
4064 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
4065 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
4066 it does fail though for amiwm which adds windows to a pseudo root
4067 window, and for icewm by a small offset because it defines the
4068 geometry position whithin its border.
4070 * gtk/testgtk.c: added "saved position" test to figure how
4071 gdk_window_get_root_origin() interacts with window managers (repopup
4072 this window to figure ;).
4074 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
4076 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
4081 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
4082 existing code was buggy in letting ->ref_count==0 pass through and
4083 then failing the living_objs_ht assertion).
4085 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
4086 pixtext fields (Roman Pozlevich <roma@botik.ru>).
4088 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4090 * Released GTK+ 1.1.2
4092 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
4094 * gtk/Makefile.am: use $(PERL) instead of perl
4095 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
4096 also much faster to render.
4098 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
4100 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
4101 the required memory block, rather than allocating it newly from
4102 scratch and doing a full-blown block copy on it.
4104 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
4106 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
4107 binary age 0, interface age 0.
4109 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
4111 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
4113 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
4116 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
4118 * HACKING: indent other than GNU indent should be OK
4121 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
4122 instead of piping through indent. If indent wasn't
4123 found in ./configure don't bother indenting at
4126 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
4128 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
4130 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
4132 * gtk/Makefile.am: use $(AWK) instead of awk
4134 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
4136 * gtk/Makefile.am (gdk_headers):
4137 Remove references to $(top_srcdir).
4138 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
4139 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
4141 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
4143 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
4144 GData*object_data to cure compiler warnings.
4146 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
4150 * mkinstalldirs: updated to latest automake version
4152 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
4154 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
4155 (gtkinclude_HEADERS): ... here.
4156 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
4158 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
4160 * HACKING: added GNU indent, as it is now required to successfully
4161 build gtk+. Should this be detected in autoconf, possibly?
4163 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
4165 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
4166 change library versioning scheme to drop LT_RELEASE
4167 from the -l line, while keeping it in the soname.
4169 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
4171 * configure.in Makefile.in: define a MAINT-like variable REBUILD
4172 which is set if Perl and awk are found, and autogenerated sources
4173 can be rebuilt. Remove the auto-generated sources from
4176 Add dependencies so that the autogenerated sources are
4177 rebuilt if the files they depend on change.
4178 (This unfortunately currently results in the entire
4179 gtk/ directory being rebuilt when any header changes.
4180 Moving all enums to gtkenums.h would fix this.)
4182 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
4184 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
4185 gtk_object_set_data_destroy_by_id functions to set the destroy
4186 function pointer for an existing data portion.
4188 * gtk/gtkobject.c: removed the GtkObjectData implementation and
4189 made all gtk_object_*data* functions use the GLib equivalents.
4191 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4193 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
4194 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
4195 (widget != NULL), otherwise radio button insertion will not work
4196 -- the widget argument is NULL for the first radio button in the
4199 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
4201 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
4202 of g_new to malloc(), added back in the one place where
4203 it actually mattered. #include <stdlib.h>.
4205 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
4207 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
4209 * gtk/gtkfilesel.c: Keep a list of directories in which we never
4210 want to stat the entries (like /afs), and assume everything in
4211 those directories is a subdirectory.
4213 - When following a path, try to open components even when
4214 we don't find them in their parent's directory to
4215 support automounters.
4217 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
4219 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
4220 a new size from the WM if we asked for the same size
4221 before and our request was rejected.
4223 * gtk/gtkwindow.c (gtk_window_configure_event): If
4224 in response to a request, we get a configure event
4225 with unchanged dimensions, send a synthetic expose
4226 since ForgetGravity won't expose our window.
4228 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
4230 * gtk/gtktext.c (adjust_adj): Change the way we
4231 set the adjustments on resize so that it tries to
4232 keep the beginning of the text in approximately
4235 Removed assertion that the above change made invalid.
4237 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
4239 * gtk/gtktext.c: - Save first_cut_pixels when switching
4240 sizes, so that if we switch to the _same_ size,
4241 we don't move lines around.
4243 - Make sure that the text area always has a size of at
4244 least 1x1, then do all computations when realized.
4246 - When fetching lines in recompute_geometry, make
4247 sure we fetch enough lines to cover the screen.
4249 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4251 * gdk/gdkimage.c: changed g_new()s to malloc()s and
4252 g_free()s to free()s to avoid mixing g_new()s with
4253 free()s. X itself uses free() on some of the
4256 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
4258 * gtkfilesel.c: Maintain a list of directories like
4259 /afs we know contain only directories, and avoid
4260 stat'ing files in those directories. (Because
4261 stat'ing all files in /afs is extremely expensive)
4263 To support automounters, try to open directories,
4264 even if we couldn't find them when reading their
4267 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
4269 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
4270 to allow the same gtk.m4 to work for 1.0.x and
4273 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
4275 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
4276 to set/unset the selectable flag of a single row.
4277 (gtk_clist_get_selectable): new function
4278 to get the state of the selectable flag
4280 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
4281 (gtk_ctree_node_get_selectable): clist analogons
4283 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
4285 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
4288 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
4289 bugs in the 4bit gray cases.
4291 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
4293 * configure.in: added -posix check for NeXTStep
4295 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
4296 a unique buffer for each thread.
4298 * docs/gtk-config.1: clarified copyright
4300 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
4302 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
4304 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
4306 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
4309 * ltconfig: use GLib's ltconfig which honours lcc.
4311 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
4313 * configure.in: comment the -std1 check and save LIBS properly
4315 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
4317 * gtk/testrgb.c: #include <stdlib.h>
4319 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
4321 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
4322 When the pointer is grabbed on an input window,
4323 either explicitely, or through press-grab, and
4324 then grabbed on a non-input window, ungrab the
4327 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
4329 * gtk/gtktypeutils.h: don't include any gdk headers.
4330 added structure definitions for GtkTypeObject and GtkTypeClass,
4331 which cover the very basic fields of GtkObject and GtkObjectClass,
4332 which are actually used by the type system.
4334 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
4335 we only refer to our own structures. improved class inheritance
4336 sanity checking a bit.
4338 * gtk/gtkobject.h: placed appropriate comments at the beginnings
4339 of the GtkObject and GtkObjectClass structures, which explain
4340 their relationship to GtkTypeObject and GtkTypeClass.
4342 * gtk/gtktypeutils.h:
4344 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
4345 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
4346 gtkobject.h to gtktypeutils.h.
4350 removed gtk_object_check_cast() and gtk_object_check_class_cast()
4351 functions. to keep source compatibility, we can provide macro aliases
4352 for the corresponding gtk_type_* functions. but then again, people
4353 shouldn't have been using these functions anyways since they were part
4354 of Gtk's internal API.
4356 * gtk/gtktypeutils.h:
4357 * gtk/gtktypeutils.c:
4358 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
4359 functions to check GtkTypeObject and GtkTypeClass types.
4361 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
4364 * gtk/gtkctree.c: `const' fixups.
4367 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
4369 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
4370 if it is passed as NULL.
4372 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
4374 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
4375 big-endian cases. Added a 4bpp packed gray mode (somewhat
4376 incorrectly hardwired to MSB), which should take care of
4379 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
4381 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
4382 GtkSIgnalQuery leak.
4384 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
4386 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
4387 GTK_MENU_DIR_CHILD: check for the existance of
4388 menu_shell->active_menu_item before accessing its child.
4390 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
4391 don't, make a default selection.
4393 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
4395 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
4396 the children with _forall for sensitivity changes and with
4397 _foreach on pure state changes. this fixes a lot of the
4398 old inclusions of internal widgets into _foreach calls.
4400 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
4401 do the work. don't walk the subtrees of first level children.
4403 * gtk/gtktreeitem.c: provide a _forall implementation,
4404 which walks the subtrees as well for include_internals.
4406 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
4407 the submenus as well for include_internals.
4409 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
4410 implemented gtk_scrolled_window_forall, which will iterate over
4411 the viewport and the scrollbars for gtk_container_forall or
4412 iterate over the viewports children for gtk_container_foreach.
4418 * gtk/gtkmenushell.c:
4424 * gtk/gtknotebook.c:
4425 removed the old gtk_*_foreach functions and provided gtk_*_forall.
4427 * gtk/gtknotebook.c:
4428 (gtk_notebook_real_switch_page): expose tabs.
4429 (gtk_notebook_page_num): new function to return the page number
4430 of a distinct child.
4431 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
4432 under some circumstances.
4434 * gtk/gtktreeitem.c:
4435 (gtk_real_tree_item_select):
4436 (gtk_real_tree_item_deselect): major fixes.
4437 some general fixups wrt queue_redraw, and tree items not being
4440 * gtk/gtklistitem.c:
4441 (gtk_real_list_item_select):
4442 (gtk_real_list_item_deselect):
4443 (gtk_real_list_item_toggle):
4444 removed unneccessary queue_redraw calls.
4446 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
4448 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
4449 automatically popup the menu on space bar.
4451 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
4453 * gtk/gtkcontainer.h:
4454 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
4455 method), which acts similar to gtk_container_foreach(), but iterates
4456 over internal children. the GtkContainer::foreach signal vanished in
4457 favour of a new class method ->forall() that optionally includes
4460 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
4461 but a _forall implementation, since all child widgets we have are
4463 (column_button_create): set the parent window prior
4464 to gtk_widget_set_parent().
4467 exchanged all calls to gtk_container_foreach() with
4468 gtk_container_forall().
4471 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
4472 the GtkWidget::composite_child argument. to have a widget created
4473 with the flag initially, two new functions got added to wrap a widgets
4475 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
4477 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
4479 * gtk/gtktooltips.h:
4480 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
4481 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
4482 prior to the first tip being set.
4483 don't put an extra reference on the window, since it is a toplevel,
4484 it wont get destroyed from anywhere else.
4486 * overall macro and GtkType fixups.
4488 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
4490 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
4491 constructs by more forgiving ones. (Does anyone else feel like
4492 the color selector need rewriting?).
4494 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
4496 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
4499 * gtk/gtkmenu.c: Modified reference counting so
4500 that the reference count from the toplevel that
4501 the menu creates to the menu is invisible to the
4504 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
4506 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
4507 conversion selection logic, so Suns and other big-endian
4508 machines should get faster conv routines. This is also the
4509 point where 4bpp gray and 1bpp are checked in, although I
4510 wouldn't be surprised if 1bpp is a little buggy. This is
4511 synchronized with the 0.0.7 release of GdkRgb.
4514 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
4515 appropriate change to the Makefile.am
4517 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
4519 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
4520 which is good for images that scroll (makes the dither patterns
4523 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
4526 (gdk_colormap_new) (gdk_colormap_get_system):
4527 quell some warnings with g_hash_table_new
4529 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
4530 when we're done with it
4532 * gtk/itemfactory.c:
4533 (gtk_item_factory_from_path):
4534 (gtk_item_factory_create_item): free some strings
4537 (gtk_label_finalize): free label->pattern when done
4538 (gtk_label_parse_uline): null terminate pattern string, delete
4539 some duplicated code
4541 * gtk/testthreads.c: add #include <unistd.h> for sleep()
4543 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
4545 * gtk/gtktext.c (recompute_geometry): Make sure the
4546 mark we pass to line start is the beginning of a
4547 real line, not a wrapped one.
4549 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
4551 * gtk/gtktext.c: Reference count the fonts used in
4554 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
4555 freeing functions to be more consistent, and more
4556 convenient; leave the old names in for backwards compatibility.
4558 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
4559 allocations in pseudo-color colormaps to greatly reduce
4560 calls to XAllocColor. Keep a per-colormap hashtable to
4561 speed up finding if there is an already-allocated matching
4564 * gdk/gdkcolor.c: Don't just match read the system colormap
4565 when the colormap is created, but synchronize our copy
4566 with the system colormap periodically.
4568 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
4569 Change XIM constants names to match GDK conventions
4571 * gtk/testinput.c: Allow the drawing area to get the focus.
4573 * gtk/testgtk.c: Change around the Text test to demonstrates
4574 multiple fonts, use more colors.
4576 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
4577 so they work after a widget is unrealized.
4579 * gtk/gtktext.[ch]: Remove the requirement that the text
4580 widget be realized before adding text (!) Allocate colors
4581 ourself, instead of requiring the caller allocate them.
4582 Allow changing styles to work properly by keeping track
4583 of the values for a certain property are default or
4586 * gtk/gtkmenu.h: Added some comments.
4588 * gtk/gtkentry.c: Changes to match XIM constants.
4590 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
4591 for adding keyed data to drawables. (Uses g_dataset
4594 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
4595 when creating an XPM - store them as user data for the GdkPixmap,
4596 so we don't leak colors when we create pixmaps from XPM's.
4598 Allocate memory for color information in large blocks instead of
4599 as many little pieces.
4601 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
4603 * gdk/gdkrgb.c: removed some unused variables
4606 * gtk/gtkmain.c: #if 0'd out some unused code
4608 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
4610 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
4618 * gtk/gtkcontainer.h:
4619 * gtk/gtkcontainer.c:
4624 (gtk_container_add_with_args):
4625 (gtk_container_child_set):
4626 begin the parameter elipsis (...) after the first argument name. this
4627 change is source compatible, since it was always required, even as NULL.
4629 (gtk_object_args_collect):
4630 (gtk_container_child_args_collect):
4631 changed prototypes to pass first_arg_name, also, pass va_list variable
4632 by value (portability concerns). callers changed.
4634 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
4635 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
4636 can't pass va_list variables by reference for portability reasons.
4638 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
4640 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
4641 get_visual calls, so that it gets implicitly initialized.
4643 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
4644 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
4645 such as GtkCTree function name changes
4647 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
4650 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
4651 binary version check, returning a static string for error descriptions,
4654 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
4656 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
4657 computed our geometry yet, and if not, ignore the request.
4659 * gtk/gtktext.c (correct_cache_insert): Fiddled around
4660 some more. All the bug-test codes seem to work at once
4661 now. (fingers crossed...)
4663 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
4665 * gdk/gdkrgb.c: silly visual fixes
4667 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
4670 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
4672 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
4673 anything if the event's window is not the bin window.
4674 (gtk_handle_box_motion): Likewise.
4676 1998-08-19 Raph Levien <raph@gimp.org>
4678 * gtk/testgtk.c (create_color_preview): pushed the colormap and
4679 visual so it would work better with GdkRgb.
4681 1998-08-19 Raph Levien <raph@gimp.org>
4683 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
4684 4bpp static_color mode (for vga displays). Also fixed a '64' value
4685 in the dither matrix, which was causing one pixel out of 16k to be
4688 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
4689 most of the contents. This is an API change - any apps that relied
4690 on the internal structure of GtkPreview will need some change -
4691 most notably in the use of reserved colors. The Gimp needed
4692 changes in this regard.
4694 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
4696 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
4697 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
4698 --g-fatal-warnings), noticed by miguel.
4700 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
4702 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
4710 * gtk/gtkitemfactory.c:
4711 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
4713 * gtk/gtkselection.c:
4717 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
4719 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
4721 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
4723 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
4724 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
4725 in case of show_tabs == NULL
4727 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
4729 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
4730 to --g-fatal-warnings again. this option now causes log levels of
4731 WARNING and CRITICAL to abort().
4740 * gtk/gtktypeutils.c:
4746 * gtk/gtkselection.c:
4749 * gtk/gtktreeitem.c:
4750 did a global search&replace to substitute g_print() calls with
4751 g_message(). libraries shouldn't use printf(), g_print() or
4752 g_printerr() at all.
4753 a bunch of the replacements should probably be wrapped into the
4754 G{D|T}K_NOTE() macros, so they are special cased for debugging
4755 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
4758 * gdk/gdkdnd.c: added copyright notice.
4760 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
4762 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
4763 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
4764 running a PII 233. It's synced with the 0.0.5 release of
4767 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
4770 (struct _GtkCListClass): new class methods:
4771 (sort_list) (insert_row) (remove_row) (set_cell_contents)
4774 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
4775 removed and replaced by (set_cell_contents)
4776 (set_cell_contents): function for class method set_cell_contents
4777 (real_insert_row): function for class method insert_row
4778 (real_remoce_row): function for class method remove_row
4779 (real_sort_list): function for class method sort_list
4780 (default_compare): fix to avoid problems with cell types != CELL_TEXT
4783 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
4784 (gtk_ctree_node_is_visible): new function to return visibility state
4786 (gtk_ctree_show_stub): new function to set visibility of root stub
4789 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
4790 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
4791 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
4792 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
4793 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
4794 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
4795 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
4796 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
4797 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
4798 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
4799 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
4800 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
4801 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
4802 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
4803 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
4804 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
4805 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
4806 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
4807 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
4810 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
4811 removed and replaced by (set_cell_contents)
4812 (set_cell_contents): function for class method set_cell_contents
4813 (real_insert_row): function for class method insert_row
4814 (real_remoce_row): function for class method remove_row
4815 (real_sort_list): function for class method sort_list
4816 (default_compare): removed. CTree now also compares two GtkCTreeRows
4817 instead of two GtkCTreeNodes.
4818 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
4820 (real_tree_expand) (real_tree_collapse): fix for refcounting of
4822 (set_node_info): call gtk_ctree_node_set_pixtext instead of
4823 manipulating the row itself
4825 * gtk/testgtk.c: use renamed functions of GtkCTree.
4826 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
4829 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
4831 * gtk/gtkmain.c: removed gtk_input_add_interp.
4833 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
4835 (gtk_editable_get_event_time): fix default: case.
4837 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
4839 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
4842 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
4845 * various minor compilation cleanups, such as bogus commas in
4846 enums and similar things.
4848 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
4850 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
4853 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4855 * NEWS: updated for 1.1.2
4856 * gtk+.spec: version = 1.1.2
4858 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
4860 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
4861 times. changed --gtk-with-module to --gtk-module at owen's request.
4863 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
4865 * gtk/gtkmain.c (gtk_init): feature a new commandline option
4866 --gtk-with-module=<module> that allows additional loading and
4867 initialization of modules (e.g. GLE).
4869 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
4871 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
4872 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
4874 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
4875 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
4876 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
4877 different *-fatal-* arguments now. this needs to be revised and
4878 compressed to a reasonable amount of arguments.
4880 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
4882 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
4883 "--g-fatal-warnings" causes fatal warnings in GLib,
4884 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
4885 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
4887 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
4888 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
4892 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
4893 since automake doesn't support per target _CFLAGS yet.
4895 * configure.in: require GLib 1.1.3.
4897 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
4899 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
4900 to set a callback to test if a node in drag can be dropped onto
4901 it's currrent location.
4902 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
4903 to change the pointer when a drag destination is not allowed.
4905 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
4907 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
4908 speeds up the 565_d case by about 25% total. Thanks Ray!
4910 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
4912 * Changed GtkSignalFunc back to () from (void). (again!)
4914 * Added file README.cvs-commits
4916 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
4918 * docs/gtk_tut.sgml:
4919 - Tidy up of the menufactory example from
4920 Andy Kahn <kahn@zk3.dec.com>
4921 - New section on Range Widgets from
4922 David Huggins-Daines <bn711@freenet.carleton.ca>
4923 - Started a new section on 'Advanced Event and Signal
4924 Handling' - used an email from Owen.
4925 - New appendix on Gdk Event Types
4926 - Added the tictactoe full example code to the
4927 'Code Examples' appendix
4929 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
4931 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
4932 to calculate all the metrics at once of a string, including
4933 things which weren't calculated before.
4935 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
4936 MenuItem type, that when put as the first thing in a
4937 menu, makes the menu tearoff. Currently drawn as a
4940 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
4941 "hide_on_activate" to the MenuItem class structure to allow
4942 check and radio buttons to be changed with <Space> without
4945 * gtk/gtkitemfactory.c:
4946 - Create a AccelGroup for each MenuShell we create.
4947 - If an '_' appears before a character 'c' in the path,
4948 then make 'c' an accelerator in the menu's accel group,
4949 and if the menuitem is menubar <alt>C an accelerator
4950 in the itemfactory's accel group. Double '__' inserts
4953 * gtk/gtklabel.[ch]: Add support for a pattern arg -
4954 which is a string. If an '_' appears in this string,
4955 the corresponding position in the label is underlined.
4957 Add gtk_label_parse_uline() convenience function which
4958 takes a string with embedded underlines, sets the
4959 pattern and label, and returns the accelerator keyval.
4961 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
4962 Instead, they create a GtkWindow and add themselves
4963 to that. (When torn off, another new feature, they
4964 create another GtkWindow to hold the torn off menu)
4966 New function gtk_menu_set_tearoff_state()
4968 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
4969 Added action signals for keyboard navigation of menus.
4971 * gtk/gtkmenushell.c: Key press handler which activates
4972 bindings for navigation, and accelerators, for handling
4973 underline accelerators. Exported functions to select
4974 and activate menu items in a menushell.
4976 * gtk/testgtk.c: Added a new "Item Factory" test which
4977 tests GtkItemFactory and the new keyboard navigation
4980 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
4982 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
4983 external functions have been called. also relookup nodes after
4984 this function has been invoked.
4986 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
4988 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
4989 beginning of Text when creating the Text widget.
4991 * gtk/testgtk.c: Grab the focus on the text widget so
4992 as to test out the above.
4994 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
4996 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
4997 ::changed is a notification signal and should have no default
4998 handler. A complete redraw of the Text widget does _not_ need to
4999 be done on every text insertion.
5001 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
5002 (gtk-abilleira-072198-patch)
5004 * gtk/gtkwindow.[ch]:
5005 Add gtk_window_set_modal() which sets a flag; when
5006 set the window does a gtk_grab_add() when the window
5007 is shown, and a gtk_grab_remove() when the window
5010 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
5011 that case will run "Create Dir","Delete File" and "Rename File"
5012 dialogs as modal too.
5014 * gtk/testgtk.c: Added a button with an example of creating modal
5015 dialog boxes. Including file selection and color selection standard
5018 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
5020 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
5021 Removed CAN_FOCUS by default from scrollbars, button
5022 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
5023 (Scrollbar definitely good change, toolbar bit more questionable)
5025 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
5027 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
5030 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
5032 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
5033 added all logical operations to gc->function.
5035 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
5037 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
5038 gtk_widget_size_allocate instead of gtk_widget_queue_resize
5039 if the visibility state of a scrollbar changes.
5041 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
5043 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
5045 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
5047 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
5048 gtk_clist_merge and gtk_clist_mergesort. :)
5050 1998-08-06 Martin Baulig <martin@home-of-linux.org>
5052 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
5053 `mergesort' -> `my_mergesort'.
5055 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
5057 * gtk/gtkenums.h: new enum GtkSortType.
5061 Added sorting capabilities to GtkCList. New APIs :
5062 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
5063 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
5064 New internal functions : default_compare, merge, mergesort.
5066 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
5068 (gtk_clist_insert): Modified to handle gtk_clist_append and the
5069 auto sort flag. Changed the return value from void to gint to
5070 return the row number where the element was actually inserted.
5072 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
5076 Removed the auto_sort flag, replaced ctree->node_compare with
5077 clist->compare all over the place, modified default_compare to
5078 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
5079 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
5081 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
5082 sorting. The lists can be sorted by a column by clicking the
5083 corresponding title button.
5085 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5087 * Released GTK+ 1.1.1
5089 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
5093 (gtk_ctree_find): changed to return a gboolean
5094 (gtk_ctree_insert_gnode): new function for recursive insertion of a
5096 (gtk_ctree_real_select_recursive): fix for extended selection
5097 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
5098 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
5100 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
5102 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
5103 GLib version 1.1.1 is now required at minimum.
5105 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
5106 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
5108 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
5110 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
5111 cursor before (possibly) deleting the cursor's text
5114 * gtk/gtktext.c (correct_cache_delete): More attempts
5115 to clean the line-start cache up after inserting
5116 a property. Among other things, make sure to
5117 fix up text->current_line, since it is used to
5118 refetch the changed lines.
5120 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
5122 * gtk/gtktable.[ch]: Empty rows/columns of the table
5123 should not have been marked as being able to shrink.
5124 (Fixes problem with shrinking scrollbarless GIMP canvases)
5126 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
5128 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
5129 function to find a row by its data pointer using a custom
5130 comparison function.
5132 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
5134 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
5135 this fixes a bug when the whole widget is made non-sesitive
5136 the buttons weren't redrawn
5138 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
5140 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
5141 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
5142 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
5144 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
5146 * gdk/gdkwindow.c (gdk_window_reparent): Change
5147 window_private->parent pointer when reparenting.
5149 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
5151 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
5152 with the standalone release.
5154 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
5156 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
5157 (gtk_clist_button_release) (new_column_width): Few fixes for
5158 column resize. Store resize column in clist->drag_pos.
5160 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
5164 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
5165 to GtkCTreeNode *node.
5167 * gtk/gtklist.h : added extended selection mode and auto scrolling.
5168 (struct _GtkList): removed unneeded variables timer, button,
5169 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
5170 Added new variables undo_selection, undo_unselection, last_focus_child,
5171 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
5172 drag_selection, add_mode.
5175 (gtk_list_extend_selection), (gtk_list_start_selection),
5176 (gtk_list_end_selection), (gtk_list_select_all),
5177 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
5178 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
5179 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
5180 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
5183 (gtk_list_enter_notify): removed, because auto scrolling now works
5184 with gtk_list_motion_notify
5186 New functions, needed for auto scrolling :
5187 (gtk_list_motion_notify) (gtk_list_move_focus_child)
5189 New functions for extended selection support :
5190 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
5191 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
5192 (gtk_list_focus_lost)
5194 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
5195 function to support auto scrolling, and avoid out-of-sync errors in
5196 case auf GTK_SELECTION_BROWSE
5197 (gtk_list_focus): modified gtk_container_focus function to avoid out
5198 off sync errors in case auf GTK_SELECTION_EXTENDED
5201 * gtk/gtklistitem.c :
5202 New signal functions for key binding support :
5203 (toggle_focus_row), (select_all), (list_item), (unselect_all)
5204 (list_item), (undo_selection), (start_selection), (end_selection)
5205 (extend_selection), (scroll_horizontal), (scroll_vertical),
5207 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
5208 GDK_KEY_RELEASE_MASK
5209 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
5212 (gtk_combo_popup_button_press): grab pointer for combo->list
5213 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
5214 (gtk_combo_list_key_press): take care of which child HAS_GRAB
5215 (gtk_comb_init): don't connect combo->button with button_release_event
5217 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
5219 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
5221 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
5223 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
5224 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
5225 with horizontal and vertical autoscrolling.
5227 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5229 * gtk/docs/man: new directory
5230 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
5232 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
5234 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
5237 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
5239 * docs/gtk_tut.sgml: GtkTree section from
5240 David Huggins-Daines <bn711@freenet.carleton.ca>,
5241 add a GtkText widget example
5242 * examples/text/* example/tree/* : new examples for the
5243 GtkTree and GtkText widgets
5244 * docs/gtk_tut.sgml: added an appendix to hold complete code
5245 examples that aren't in a full form elsewhere in the
5246 tutorial (e.g. scribble)
5248 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5250 * Released GTK+ 1.1.0
5252 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
5254 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
5255 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
5257 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
5259 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
5260 values are looked up.
5262 * gtk/gtktypeutils.h:
5263 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
5264 gtk_type_enums_find_value to lookup enum values.
5267 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
5268 GtkCTreeExpansionType. fixed signal creations to pass the enum
5269 types not just the base type GTK_TYPE_ENUM.
5272 * gtk/gtkclist.c: fixed signal creations to pass the real enum
5273 types not just the base type GTK_TYPE_ENUM.
5275 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
5278 Began cleanup, e.g. use gtk_widget_show_all instead of many
5279 gtk_widget_show's. Completely rewrote the button box sample
5280 (only one window now). Removed "miscellaneous" button.
5282 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
5284 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
5285 Fixed wrong allocation for GTK_BUTTONBOX_END.
5286 (allocation->x => allocation->y)
5288 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
5290 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
5291 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
5293 * gtk/gtkctree.c (real_tree_select): added check to avoid double
5295 (gtk_ctree_button_press)
5296 (gtk_ctree_button_release): fix for pointer grab
5298 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
5300 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
5301 Fixed initialization problem - dirty memory could cause problems.
5302 Also checked that bitmapped fonts can be scaled when showing the
5305 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
5307 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
5308 (gtk_ctree_sort_recursive): test for node != NULL
5309 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
5310 (gtk_ctree_last) : added sanity checks
5311 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
5313 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
5315 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
5317 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
5319 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
5321 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
5323 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
5324 to check out binding priorities. someone should really write
5325 gtkrc-mode for emacs.
5327 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
5328 * gtk/testgtk.c (main): and move it here ;). this test says something
5329 on release of C-9. (this works only if the mouse pointer is on a
5330 spinbutton and there is no focus widget).
5334 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
5335 gtk_rc_parse_priority to parse path priority types.
5337 feature binding parsing.
5339 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
5341 * gtk/gtkbindings.h:
5342 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
5343 feature binding parsing in rc files.
5344 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
5345 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
5346 order the bindings with lowest priority first.
5348 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
5350 * gdk/gdkrgb.c: actually builds and runs properly on big
5351 endian machines now, because we #include config.h. Also
5352 fixed up a compile error in the WORDS_BIGENDIAN case in
5353 gdk_rgb_convert_565_gray. I made the fix by looking at
5354 patterns in the other code; Raph can you verify this?
5356 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
5359 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
5361 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
5362 (tree_toggle_expansion) (real_select/unselect_row)
5363 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
5365 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
5367 * gtk/gtktext.c (new_text_property): We free things from
5368 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
5370 * Fix up line start cache when splitting a property
5373 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
5375 * gtk/gtkwidget.c: restauration => restoration
5377 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
5379 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
5380 hasn't been created yet, don't do the lookup.
5382 1998-07-20 Raph Levien <raph@acm.org>
5384 * gdk/gdkrgb.c: More cleanups in the config process.
5386 1998-07-20 Raph Levien <raph@acm.org>
5388 * gdkrgb.c: Fixed minor config bug preventing big-endian
5389 architectures from working.
5391 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
5393 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
5394 activity indicator. It is settable now as a fraction of the
5395 total width/height using gtk_progress_bar_set_activity_blocks.
5396 Renamed gtk_progress_bar_set_number_of_blocks to
5397 gtk_progress_bar_set_discrete_blocks.
5399 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
5401 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
5402 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
5403 tree to specified depth
5404 (gtk_ctree_expand_to_depth): expand tree to specified depth
5405 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
5407 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
5409 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
5410 of GTK_CLIST_ADD_MOD
5411 * gtk/testgtk.c (add1000_clist): changed pixmap
5413 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
5416 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
5418 * gtk/gtktypeutils.h:
5419 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
5421 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
5423 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
5424 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
5425 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
5427 (gtk_notebook_reorder_child): new funktion to change position of a
5429 (gtk_notebook_draw_arrow): draw left/right arrow with
5430 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
5432 * gtk/gtkstyle.c (gtk_default_draw_arrow):
5433 added GTK_SHADOW_ETCHED_IN/OUT
5435 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
5437 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
5438 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
5439 Introduced generic GtkProgress widget. Derived GtkProgressBar from
5440 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
5442 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
5444 * gtk/gtktypeutils.h
5445 * gtk/gtkitemfactory.h: explicitly specify void in prototype
5447 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
5449 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
5452 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
5454 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
5455 sropped the approach of copying all signal specific data into a
5456 GtkHandlerInfo structure. we rather keep the signal data on the stack
5457 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
5458 avoids multiple lookups of the signal pointer and works savely together
5459 with destroy notifiers of handlers.
5461 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
5462 someone destroys the entry on the ::activate signal.
5464 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
5466 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
5467 instead of ypad (typo).
5468 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
5469 border around the allocation).
5470 (gtk_arrow_init): the static requisition needs to be setup in this
5471 function rather than gtk_widget_new(), so arrow creation works without
5472 the gtk_arrow_new() constructing.
5473 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
5475 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
5476 implementation for GtkWidget::size_request, so size requisition for
5477 simple statically sized widgets like GtkArrow works.
5479 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
5481 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
5482 prepend -I@libdir@/glib/include anymore, since glib-config handles
5483 it; --libs strips out redundant -L<path>'s properly (there was
5484 code in there to do it before, but it didn't work)
5486 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
5488 * gtk/gtknotebook.h:
5489 * gtk/gtknotebook.c: signdness corrections all ove the place.
5490 implementation of object arguments: GtkNotebook::enable_popup,
5491 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
5492 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
5493 begun implementation of child args, we have GtkNotebook::tab_label, but
5494 GtkNotebook::menu_label and GtkNotebook::position still lack the
5496 (gtk_notebook_remove_page):
5497 (gtk_notebook_current_page): allow negative indices (-1) as alias for
5501 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
5502 arguments GtkEntry::max_length and GtkEntry::visibility.
5503 (gtk_entry_adjust_scroll): queue a redraw.
5505 * gtk/gtkeditable.h:
5506 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
5507 object arguments GtkEditable::text_position and GtkEditable::editable.
5508 new (action) signal GtkEditable::set_editable.
5509 provide a default handler for GtkEditable::changed that queues a redraw.
5512 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
5515 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
5517 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
5518 case of drag_target == NULL
5519 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
5520 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
5521 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
5522 gtk_dir_selection_file_button): fix due to changes in clist's
5525 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
5528 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
5529 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
5530 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
5531 to be gint16s rather than guint16s, since that's what the code expected
5532 (for a long time actually).
5534 * gtk/gtkviewport.c:
5535 added support for object arguments: GtkViewport::shadow_type,
5536 GtkViewport::vadjustment and GtkViewport::hadjustment.
5537 (gtk_viewport_add): chain gtk_bin_add.
5539 * gtk/gtkscrolledwindow.c:
5540 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
5541 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
5543 * gtk/gtkadjustment.h:
5544 * gtk/gtkadjustment.c:
5549 * gtk/gtkscrolledwindow.h:
5550 * gtk/gtkscrolledwindow.c:
5551 * gtk/gtkviewport.h:
5552 * gtk/gtkviewport.c:
5553 GtkType and macro fixups.
5555 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
5559 Added focus handling, horizontal and vertical autoscrolling,
5560 extended Selection Mode, key bindings
5561 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
5562 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
5563 Removed gtk_ctree_clear.
5567 Added focus handling, horizontal and vertical autoscrolling,
5568 extended Selection Mode, key bindings
5570 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
5572 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
5573 source tree. For more information on GdkRgb, please see:
5574 http://www.levien.com/gdkrgb/
5576 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
5577 bothers me slightly that the feature is in gdk, and this file is
5578 in gtk, but it's probably ok.
5580 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
5583 * gdk/gdkrgb.h: Added this module.
5585 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
5587 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
5589 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
5591 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
5592 to this function. it needs to relookup the signal multiple times.
5593 this fixes spurious segfaults that could show up with signal intensive
5594 code, when classes are created during a pending emission (which is
5597 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
5599 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
5600 child if it isn't a label.
5602 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
5605 * gtk/gtkseparator.h:
5606 * gtk/gtkhseparator.h:
5607 * gtk/gtkvseparator.h: macro and GtkType fixups.
5609 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
5611 * gtk/testgtk.c (create_cursors): display the current cursor name.
5613 * gtk/gtktypeutils.h:
5614 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
5615 the fundamental type definition. the GtkArg union now only covers
5616 the required storage types for argument values. adapted the GTK_VALUE_*
5617 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
5619 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
5620 code, fixed int/float collection. fixed a bug in the sanity checking
5621 code for GtkObjects.
5623 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
5624 argument collection code.
5626 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
5627 macros when distinguishing the return type.
5629 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
5631 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
5632 is not NULL before trying to g_list_remove the child. A patch
5633 from Michael Lausch.
5635 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
5637 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
5638 collection (always casted to doubles upon argument passing).
5640 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
5642 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
5643 object_init_func for derived objects with the object's ->klass field
5644 still pointing to the corresponding base class, otherwise overridden
5645 class functions could get called with partly-initialized objects.
5646 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
5648 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
5652 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
5654 * gtk/gtkcontainer.h:
5655 * gtk/gtkcontainer.c:
5656 (gtk_container_child_arg_get_info): new function which wraps
5659 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
5661 * gtk/gtkcontainer.c:
5662 (gtk_container_arg_get):
5663 (gtk_container_arg_set):
5665 (gtk_object_arg_set):
5666 (gtk_object_arg_get):
5667 strictly check for the associated get/set arg functions. if an
5668 arg is readable or writable, the associated class functions *must*
5671 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
5673 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
5674 padding into account if there is an accelerator.
5676 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
5678 * gtk/gtkcontainer.c:
5679 (gtk_container_add_with_args): collect the arguments with
5680 gtk_container_child_args_collect, not through gtk_object_args_collect.
5681 (gtk_container_child_set): likewise.
5683 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
5685 * gtk/gtktypeutils.h:
5686 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
5687 which is derived from GTK_TYPE_STRING.
5689 * gtk/gtkbindings.c: reworked the argument type handling.
5691 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5693 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
5694 so that it seems to allow normal operation in those modes,
5695 although you will only see black (GIMP toolbar now pops up,
5696 just don't create a new image and GIMP now works in 4 bit.)
5698 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5700 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
5701 array, which was too low (?)
5703 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
5705 * gtk/gtkcontainer.h:
5706 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
5707 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
5708 we now export a new function gtk_container_child_args_collect().
5709 for consistency with the object arguments, a few functions got renamed:
5710 gtk_container_child_arg_get -> gtk_container_child_get,
5711 gtk_container_child_arg_set -> gtk_container_child_set,
5712 gtk_container_child_arg_getv -> gtk_container_child_getv,
5713 gtk_container_child_arg_setv -> gtk_container_child_setv,
5714 gtk_container_add_with_argv -> gtk_container_addv.
5715 note, gtk_container_add_with_args() remained, because its equivalent
5716 would be gtk_container_add(,, ...) which would break all existing code.
5717 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
5718 we expect the `arg_name' argument to be a const static string now.
5719 (gtk_container_get_child_arg_type): function removed.
5721 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
5723 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
5724 this is a static inline function that collects command line arguments
5725 from a va_list. this file can just be included in all places that
5726 need this functionality.
5729 * gtk/gtkarg.c: new files which implement most of the argument
5730 handling stuff from gtkobject.c. also collected a few more
5731 gtk_arg_* utility functions from else places.
5734 * gtk/gtkobject.c: moved most of the argument handling code into
5735 gtkarg.c. we now export gtk_object_args_collect() as a non-public
5736 method with a blind va_list pointer.
5737 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
5738 const static string now.
5739 (gtk_object_get_arg_type): function got removed.
5743 (gtk_widget_new): adaptions for gtk_object_args_collect().
5745 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
5746 fundamental type name so as to have a valid prefix, e.g. "bool"->
5747 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
5748 though that should probably be something like GtkNone since the
5749 type itself is called GTK_TYPE_NONE.
5750 even the internal type names need to avoid name clashes and must live
5751 in their own namespace, several code portions rely on that.
5752 we should relly have typedefs such as typedef gchar* GtkString; so the
5753 fundamental type names can be used for code dumpers just like with all
5756 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
5758 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
5759 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
5760 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
5762 (gtk_button_paint): set the background for prelighted buttons with
5763 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
5764 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
5765 the shadow type (otherwise we get strange shadows for coloured buttons).
5766 (gtk_button_set_relief): queue a redraw after changing
5768 (gtk_button_class_init):
5769 (gtk_button_set_arg):
5770 (gtk_button_get_arg): added object argument "GtkButton::relief".
5772 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
5774 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
5777 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
5778 GTK_BIN (button)->child to button->child to keep source compatibility.
5780 * gtk/gtkoptionmenu.c:
5782 * gtkcheckbutton.c: don't refer to button->child, but
5783 GTK_BIN (button)->child instead.
5785 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
5787 * docs/gtkfaq.sgml: update anon CVS info
5789 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
5791 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
5795 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
5798 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
5800 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
5801 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
5803 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
5805 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
5807 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
5810 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
5812 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
5813 error that prevented signal to entry addition for signals with
5816 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
5818 * ltconfig: fix for properly detecting shared lib support on
5819 SunPro cc (taken from libtool 1.2.a)
5821 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
5823 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
5825 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
5827 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
5828 rc set pattern is favoured, this is needed for overriding of style
5829 patterns with subsequently parsed rc files.
5831 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
5833 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
5836 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
5838 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
5840 (gtk_accelerator_name): add "<Release>" to the accelerator name if
5843 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
5846 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
5847 default handler for key-release events, which checks for activation
5848 of GDK_RELEASE_MASK key bindings.
5850 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
5852 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
5854 * gtk/gtkarrow.h: GtkType and macro fixups.
5855 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
5856 "GtkArrow::shadow_type".
5858 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
5860 * gtk/gtkalignment.h:
5861 * gtk/gtkbin.h: GtkType and macro fixups.
5863 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
5864 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
5865 GtkAlignment::xscale, GtkAlignment::yscale.
5867 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
5869 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
5870 fucntions from all parent types upon class initialization.
5872 * gtk/gtkcontainer.c:
5873 (gtk_container_get_type): announce gtk_container_base_class_init to
5875 (gtk_container_base_class_init): new function to feature base class
5877 (gtk_container_get_child_arg):
5878 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
5879 and set_child_arg methods of the class indicated through the argument
5883 (gtk_object_base_class_init): new function to feature base class
5885 (gtk_object_init_type): announce gtk_object_base_class_init to the type
5887 (gtk_object_class_init): setup the get_arg and set_arg pointers for
5890 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
5891 instead of bothering the type system with this.
5893 * gtk/gtkaccellabel.c:
5895 * gtk/gtkradiobutton.c:
5897 * gtk/gtktogglebutton.c:
5898 * gtk/gtktipsquery.c:
5905 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
5906 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
5907 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
5908 arg functions to take a GtkObject argument.
5910 gtk/gtkadjustment.c:
5913 gtk/gtkaspectframe.c:
5916 gtk/gtkcheckbutton.c:
5917 gtk/gtkcheckmenuitem.c:
5925 gtk/gtkdrawingarea.c:
5939 gtk/gtkhscrollbar.c:
5940 gtk/gtkhseparator.c:
5942 gtk/gtkinputdialog.c:
5944 gtk/gtkitemfactory.c:
5952 gtk/gtkoptionmenu.c:
5956 gtk/gtkprogressbar.c:
5957 gtk/gtkradiomenuitem.c:
5962 gtk/gtkscrolledwindow.c:
5964 gtk/gtkspinbutton.c:
5977 gtk/gtkvscrollbar.c:
5978 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
5979 match the modified GtkTypeInfo structure.
5981 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
5983 * gtk/testgtk.c: use rand() instead of random() for portability
5985 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
5989 * gdk/gdk.c: use native Xlib XConvertCase if it's available
5991 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
5993 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
5994 XConvertCase() functionality from X11R6 on X11R5 systems.
5996 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
5998 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
5999 gdk_string_height, gdk_char_height to retrieve the exact
6002 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
6004 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
6005 by Stefan Mars <mars@lysator.liu.se>
6006 * examples/clist/clist.c examples/clist/Makefile: example code
6007 for GtkCList widget from the Tutorial
6009 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
6011 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
6012 if the container is not visible, we might be a toplevel! this holds
6013 for all other base container implementations as well, that are
6014 candidates to derive toplevels from. in general the resizing code will
6015 care about visibility itself.
6016 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
6017 * gtk/gtkbox.c (gtk_box_remove): likewise.
6019 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
6020 gtk_window_set_hints(), since we haven't calculated the new position
6023 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
6024 *mask are alway initialized in a sane way, regardless of the return
6027 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
6029 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
6030 to gtk_container_child_arg_setv, but takes a variable argument list.
6031 new function gtk_container_get_child_arg_type, which is needed by
6032 gtk_object_collect_args.
6034 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
6035 take a function pointer to figure the argument type.
6036 adapted callers to pass gtk_object_get_arg_type.
6037 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
6038 gtk_object_get_arg_type..
6042 (gtk_packer_reorder_child): new function to change the packing order
6044 (gtk_packer_size_request):
6045 (gtk_packer_size_allocate): take container->border_width into acount.
6047 * gtk/gtkpacker.c: implemented widget arguments:
6048 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
6049 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
6050 implemented child arguments:
6051 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
6052 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
6053 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
6054 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
6056 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
6059 * gtk/gtkeventbox.h:
6060 * gtk/gtkeventbox.c: GtkType and macro fixups.
6062 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
6063 sensitivity of an entry.
6065 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
6066 for insensitive base and text.
6068 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
6069 widget state dependent.
6070 (gtk_entry_style_set): likewise.
6071 (gtk_entry_state_changed): set background color on state changes.
6072 (gtk_entry_draw_text): for non selected text, use state dependent
6075 * gtk/gtktogglebutton.c: support for widget arguments
6076 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
6078 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
6080 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
6081 code for 1.0.x-like parameters. Changed internal interface of
6082 gtk_spin_button_real_spin. Several fixes to avoid emission of
6083 "value_changed" where possible.
6085 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
6087 * gtk-boxed.defs: s/GkWidget/GtkWidget/
6089 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
6091 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
6092 to select the resize_mode for the idle-labels container.
6095 * gtk/gtkframe.c: GtkType and macro corrections.
6097 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
6098 support widget argument "GtkRadioButton::group".
6100 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
6102 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
6103 unconditionally if resize_mode has changed.
6105 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
6106 GTK_RESIZE_QUEUE on the scrolled window.
6107 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
6109 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
6111 * gtk/gtkcontainer.h:
6112 * gtk/gtkcontainer.c:
6113 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
6114 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
6115 (gtk_container_queue_resize): new function to queue a container for
6116 a *size* reallocation (doesn't affect its position, and thus its
6117 parent is left untouched usually).
6118 (gtk_container_get_resize_container): new function to retrive the next
6119 most resize container which is not itself queued for a resize.
6120 (gtk_container_idle_sizer): new function to carefully process the
6121 container_resize_queue since it can change during invokation of
6122 gtk_container_check_resize().
6123 (gtk_container_resize_children): total rework of this function to
6124 properly handle resize containers. makes a lot of assumptions whitch
6125 are stated in the comments.
6127 * gtk/gtkcontainer.c:
6128 (gtk_container_real_check_resize): only requeue ourselves if we are not
6130 (gtk_container_clear_resize_widgets): care for automatic deletion of our
6131 resize_widgets list on size_allocate through a handler connection.
6133 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
6134 focus and default widget of a window, so to take the burden from
6135 gtk_widget_unparent.
6137 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
6138 to be clever, but actually messed up the resize_children logic and
6139 caused unneccessary allocations on its whole branch. besides this,
6140 it messed up the display by not invoking a redraw after the allocation.
6142 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
6143 that it is the child again that is queued for a resize.
6144 (gtk_table_attach): likewise.
6145 (gtk_table_remove): likewise.
6147 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
6149 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
6150 gtk_entry_adjust_scroll. Required if you change the cursor
6151 position and want to sync it up with your code (Midnight Commander
6152 gtk front end needs this).
6154 * gtk/gtktable.c: Deal with tables that have size 0, 0.
6156 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
6158 * examples/README.1ST: new file to explain how the
6159 code examples should be extracted from the tutorial.
6161 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
6163 * gtk/gtkctree.c (draw_row): added new "line style"
6164 GTK_CTREE_LINES_TABBED
6165 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
6166 search the glist pointer of an GtkCTreeRow
6168 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
6170 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
6171 from, and clean up, the dependencies. Generate to intermediate
6172 files to prevent problems with Ctrl-C.
6174 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
6176 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
6178 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
6179 - Bug fix for precision problem causing occasional double emission
6180 of "value_changed" signal (hopefully works now).
6181 - API change (should be binary compatible) :
6182 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
6183 Modified cursor example appropriately.
6184 To spin by something other than step_/page_increment, use
6185 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
6186 - Made GTK_SHADOW_NONE the default. ;)
6187 - Fixed casting of GtkAdjustment* to GtkWidget* in
6188 gtk_spin_button_value_changed.
6190 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
6192 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
6193 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
6194 resize widget list before queuing the container for a new reize.
6195 (gtk_container_need_resize): changed return value to FALSE, since this
6196 used to indicate that no further resizes are needed.
6197 (gtk_container_set_arg):
6198 (gtk_container_get_arg):
6199 (gtk_container_class_init): implemented GtkContainer::resize_mode
6202 (gtk_container_resize_children): when we walk up the tree of a resize
6203 widget we need to stop if we are the current parent.
6205 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
6206 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
6207 (gtk_widget_hide_all): retrive the toplevel widget from via
6208 gtk_widget_get_resize_container().
6210 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
6212 * gtk/gtklist.c (gtk_list_button_press): Only respond
6213 to selection with button 1. This allows context-sensitive
6214 menus to work correctly.
6216 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
6218 * gtk/gtkaccelgroup.c:
6219 * gtk/gtkbindings.c:
6220 * gtk/gtkcontainer.c:
6221 * gtk/gtkitemfactory.c:
6224 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
6225 g_quark_from_static_string calls to save memory.
6227 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
6228 function _after_ the new data has been setup.
6229 minor changes to object data functions to feature the GQuark type.
6231 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
6233 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
6236 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
6238 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
6239 to be more readable perl, to spit out stuff that looks
6240 more like readable C, and to pipe output through indent
6241 so output looks a lot like readable C. No functional
6244 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
6246 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
6247 necessary when switching to a masked pixmap. (Based on a patch
6248 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
6250 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
6252 * gtk/gtkeditable.[ch]: Added action signals for keyboard
6253 bindings. (move_cursor, kill_word, etc, etc, etc).
6255 removed the time argument from
6256 gtk_editable_cut/copy/paste_clipboard (source but not
6257 binary incompatible...) Instead get time from
6258 gtk_get_current_event ().
6260 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
6263 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
6265 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
6267 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
6268 parent class to GtkNotebookClass when splitting the widget in
6269 two. Also updated some comments.
6271 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
6272 button without a font selected.
6274 Fixed bug in set_font_name - I hadn't updated the code to
6275 search for the style in the font_style clist - it was
6276 still assuming the style row was equal to its index,
6277 but it isn't any more.
6279 Changed 'Reset' button on filter page to 'Clear Filter'.
6280 Deleted old code relating to the old 'Filter Fonts' toggle
6281 Updated some comments.
6282 Cleared 'Actual Fontname' if no font is set.
6284 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
6285 destroying the GtkFontSelection instead of the
6286 GtkFontSelectionDialog.
6288 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
6290 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
6291 flag to make all warnings fatal errors.
6293 * gtk/testthreads.c: moved <pthreads.h> include inside
6296 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
6298 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
6299 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
6301 - Added new function gtk_container_set_resize_mode() for
6302 fine-grained control of where resize-queueing is done.
6304 - Removed GtkContainer::need_resize and GtkWindow::move_resize
6305 - Added GtkContainer::check_resize to replace need_resize.
6307 - Added function gtk_container_check_resize() to trigger
6308 queued resizes, and gtk_container_resize_children() to
6309 Figure which children need to be size-allocated. (logic
6310 moved from gtkwindow.c)
6312 - Reorganized code in gtkwindow.c
6314 - Set the resize-mode for viewports so that resizes within
6315 a viewport don't propagate out of it.
6317 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
6319 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
6321 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
6322 g_return_val_if_fail, because the function *does* return a value.
6324 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
6326 * gtk/gtkaccellabel.h:
6327 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
6328 request the size of the accelerator portion of an accel label.
6329 (gtk_accel_label_size_request): don't request for the accelerators size.
6330 (gtk_accel_label_expose_event): only draw the accelerator if we got
6333 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
6334 width from children.
6336 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
6337 object (after removal has been requested) check if there is still an
6338 accelerator remaining to avoid adding two accelerators on an object.
6339 this can happen for locked accelerators (or accelerator-frozen widgets).
6340 (gtk_menu_size_request): feature childrens accelerator width in size
6343 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
6344 gtk_widget_freeze_accelerators() for dynamically created menu items.
6347 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
6348 which will return a handler_id > 0 if the specified function is pending
6352 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
6353 a signal handler function to stop accelerator addition.
6354 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
6355 which will prevent (undo) any accelerators from being added to or
6356 removed from a widget.
6358 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
6360 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
6361 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
6362 acceleration, new API gtk_spin_button_set_snap_to_ticks.
6364 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
6367 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
6368 the current GdkWindow the pointer is on if there is any.
6370 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
6371 and one column, so we don't construction logic at all. changed a few
6372 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
6375 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
6376 portion, added an additional check for parent != widget.
6378 * more GtkType and macro fixups.
6380 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
6382 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
6383 "clip" parameter, which is the clipping rectangle to use. This
6384 eliminates the extremely annoying flicker when exposing parts of
6387 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
6389 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
6392 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
6394 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
6395 != 0 on the argument.
6398 * gtk/gtktable.c: new function gtk_table_resize() which allowes
6399 shrinking and expanding of tables. implementation of widget arguments
6400 and child arguments. many signedness corrections.
6402 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
6404 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
6405 not only the child, otherwise we might end up taking away other
6406 childrens space after the resize.
6408 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
6409 an unknown menu path from any source, that path must always be flagged
6410 as "modified", since we don't really know whether it has its default
6415 * gtk/gtknotebook.c:
6416 * gtk/gtkmenushell.c:
6420 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
6423 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
6424 arguments. implemented child arguments.
6426 * more GtkType and macro fixups.
6428 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
6430 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
6432 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
6433 and gtk_clist_get_hadjustment.
6435 * gtk/gtkcontainer.c:
6436 implementation of children arguments, new class member functions
6437 (child_type), (get_child_arg) and (set_child_arg) plus a new field
6439 (gtk_container_child_type): new function which returns the type of a
6440 child that the container expects for its next addition.
6441 (gtk_container_add_child_arg_type): new function to introduce a new
6442 child argument at class creation time.
6443 (gtk_container_query_child_args): new function to query all child
6444 arguments that are supported by a container class.
6445 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
6447 (gtk_container_child_arg_setv): new function to set a child argument for
6448 a certain container and child combination.
6449 (gtk_container_add_with_args):
6450 (gtk_container_add_with_argv): new functions to feature addition of a
6451 new child in combination with the setting of certain child arguments.
6453 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
6454 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
6455 this should really be done through class cretion hooks some day.
6457 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
6461 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
6462 follow the gtk convention for lower case variable names (important
6463 for language wrappers and widget arguments), and made them guint : 16.
6465 * examples/packer/pack.c: adaptions for the case converted GtkPacker
6468 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
6470 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
6471 change the character pair for single line comments.
6472 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
6473 GtkItemFactoryClass.
6474 (gtk_item_factory_parse_rc_string): likewise.
6476 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
6478 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
6479 lists from the klass structure to a static structure
6480 in gtkfontsel.c; cleans up global the namespace.
6482 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
6484 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
6485 bug with /*< skip >*/ and remove warning.
6487 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
6489 * gtk/Makefile.am: Made the gtkmarshal.* generation
6490 rules maintainer-only.
6492 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
6494 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
6495 gtk/Makefile.am gtk/makenums.pl
6497 Removed out the G_ENUM/FLAGS mechanism in favor
6498 of a perl script that parses the standard headers
6499 (with occasional /*< nick=foo >*/ style overrides)
6500 and extracts the enumerations.
6502 gtk/maketypes.awk: Small improvments to the
6503 translation of names. (Avoid splitting gc into
6506 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
6508 * gtk/gtk.h gtk/gtkfontsel.[ch]:
6509 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
6511 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
6514 - Restored gtk_entry_adjust_scroll to static
6515 - Changed text positioning code so that we always
6516 display as large a portion of the text as possible.
6518 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
6520 * gtk/gtktext.c (gtk_text_finalize): Free internal
6521 structures of text widget. Also, unreference pixmaps
6524 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
6526 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
6527 3.3.1 bug workaround to number keys starting at 1.
6529 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
6531 * docs/gtk_tut.sgml: Fixed urls for complete example
6532 source for scribble+widget-writing examples.
6534 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
6536 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
6537 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
6538 specs of the form c #abcdef [ more keys ] properly.
6540 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
6542 * gtkspinbutton.h gtkspinbutton.c testgtk.c
6543 (gtk_spin_button_set_shadow_type):
6544 New API to set the shadow type of the arrow panel.
6546 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
6548 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
6549 code for drawing the child in two places at once. Unfortunately,
6550 not only does it not work anymore (because reparenting has
6551 been fixed), but it also triggers reparent/expose loops
6554 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
6555 an unecessary unrealize.
6557 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
6559 * gdk/gdkwindow.c (gdk_window_reparent): Update the
6560 old and new parents' child window lists properly.
6562 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
6565 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
6566 and GtkSideType, to be consistent with the rest of Gtk's enum
6567 definitions. wrapped the enum definitions with the G_ eunm wrappers.
6568 spelled out the GTK_ANCHOR_* enum values, since single letters don't
6569 work out corectly as nick-names (left the old values as aliases).
6570 some signdness corrections (border-width, spacing), could stand more.
6572 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6574 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
6577 * examples/packer/pack.c, examples/packer/Makefile: Added
6580 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
6582 * gtk/gtktext.c (remove_cache_line): Fixed broken
6585 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
6586 Check bounds before deleting.
6588 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
6590 * autogen.sh: Support ACLOCAL_FLAGS
6592 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
6594 * gtk-config.in: Added missing quotes.
6596 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
6598 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
6600 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
6602 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
6603 G_COMPILED_WITH_DEBUGGING.
6605 * configure.in (fd_set): Explain check better.
6607 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
6608 the version from which gtk+'s libtool forked. Needed for people
6609 who use post-1.2 alphas of libtool.
6611 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
6613 * glib/* Moved to glib module
6615 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
6616 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
6618 configuration changes for the above:
6620 - Use AM_PATH_GLIB by default to find glib; also accept
6621 a --with-glib option for using an uninstalled glib.
6623 - Put --enable-debug information into config.h so
6624 that we rebuild when it changes. (was in glibconfig.h)
6626 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
6628 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
6630 * gtk/gtknotebook.h (struct _GtkNotebookClass):
6631 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
6632 added missing argument (according to Joseph Coleman's bug report)
6634 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
6635 function to fix notebook focus handling
6637 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
6639 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
6640 glib/gutils.c glib/testglib.c glib/gdataset.c
6641 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
6642 gtk/gtktext.c gtk/gtkbindings.c:
6644 renamed g_const_pointer => gconstpointer
6646 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
6648 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
6649 invoked with (NULL, NULL); (this worked sometime ago).
6651 * gtk/gtktypeutils.h:
6652 * gtk/gtktypeutils.c: enum and flags type creation can now be done
6653 through gtk_type_register_enum() and gtk_type_register_flags(),
6654 which allow to specify the enum value arrays directly.
6655 the NULL terminated value arrays can be retrived through
6656 gtk_type_enum_get_values() and gtk_type_flags_get_values();
6657 (gtk_type_children_types): new function to query derived types.
6659 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
6661 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
6662 environment to genmarshal.pl.
6663 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
6664 rule), and removed it where not needed (in the dependencies).
6666 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
6668 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
6670 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
6671 was just g_direct_hash.
6673 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
6675 * configure.in: x_libs=, not $x_libs=. Enough said.
6676 (Case only hit for --disable-xshm)
6678 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
6680 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
6681 when testing for X libraries, don't replace them. Because
6682 the user might have specified the path to the X libraries
6683 themself before running configure.
6685 * examples/**.c: Changed all gpointer * to gpointer
6687 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
6689 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
6690 fleur_cursor field. Now the cursor is created/destroyed on demand
6691 by the routines that need it.
6693 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
6694 (gtk_handle_box_motion): The fleur cursor is created and destroyed
6697 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
6699 * gtk/gtktypeutils.h:
6700 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
6701 gtk_enum_set_values to gtk_type_enum_get_values and
6702 gtk_type_enum_set_values respectively, since they are actually type
6705 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
6708 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
6710 * gtk/gtkselection.h:
6711 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
6712 gtk_selection_data_free.
6714 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
6715 for "selection_received", which was completely bogus.
6716 * other fixups to gtk_signal_new() calls all over the place.
6718 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
6719 * gtk/gtktypebuiltins_vars.c: type variable implementations.
6720 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
6722 * gtk/gtktypebuiltins_evals.c: enum value arrays.
6723 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
6725 * gtk/gtk.defs: generated file with scheme syntax for type definitions
6726 of gtk and gdk structures and enums.
6727 * gtk/gtktypeutils.h:
6728 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
6729 macros anymore (this fixes binary incompatibility with new enum
6732 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
6733 key bindings for this widget.
6734 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
6738 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
6739 again. new functions gtk_object_class_user_signal_new () and
6740 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
6741 flag on the signal creation.
6743 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
6745 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
6747 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
6753 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
6755 * reworked enum value array generation code. gtk.defs is a generated
6758 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
6760 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
6761 check menu items in the compatibility code (this required me to remove
6762 the "<check>" part from the menu item name, grrr).
6764 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
6766 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
6767 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
6769 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
6771 * gtk/gtkitemfactory.h:
6772 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
6773 additions to the dumping code to feature GtkPatternSpec.
6774 even found a bug to fix in the original code ;)
6776 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
6778 * gtk/gtkitemfactory.c: support different types of callbacks, to
6779 maintain existing code.
6781 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
6783 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
6785 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
6786 this should eventually be done by gentypeinfo.el somewhen.
6787 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
6789 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
6790 enum values of an enum type.
6798 brought enum/flags definitions in sync, added a few more enum
6799 definitions for bindings and pattern matching.
6801 * some more macro and GtkType fixups in various places.
6803 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
6804 as a key-release modifier for the binding system.
6806 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
6808 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
6809 was a stale list pointer that is already present in GtkMenuShell.
6811 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
6812 GtkMenuShell::selection_done which is emitted after the menu shell
6813 poped down again and all possible menu items have been activated.
6815 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
6817 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
6818 before activation of the menuitem, so the menu is actually taken off the
6819 screen prior to any menu item activation.
6821 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
6825 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
6826 the emission of the "add-accelerator" signal on a widget. this is
6827 usefull to prevent accelerator installation on certain widgets.
6829 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
6830 labels left justified, by setting their alignment. stop accelerator
6831 installation for the menu items, since we use dynamic menus.
6833 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
6835 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
6836 should *really* use GtkItemFactory. this is only for preserving source
6837 compatibility where possible, use of GtkMenuFactory is deprecated as of
6840 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
6841 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
6842 missed this possibility when i added gtk_object_class_add_user_signal
6845 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
6847 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
6849 * gtk/gtkaccelgroup.h:
6850 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
6852 * gtk/gtkaccellabel.h:
6853 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
6854 display of the accelerators associated with a certain widget.
6856 * gtk/gtkitemfactory.h:
6857 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
6858 parsing and accelerator handling.
6860 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
6862 (gtk_menu_map): removed the allocation code.
6863 (gtk_menu_size_allocate): care for redrawing of children and resize
6864 our widget->window correctly.
6865 (gtk_menu_key_press): feature the new accelerator groups.
6867 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
6868 submenu if neccessary.
6870 * gtk/gtkmenuitem.c:
6871 * gtk/gtkcheckmenuitem.c:
6872 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
6876 (gdk_keyval_from_name):
6877 (gdk_keyval_name): new functions for keyval<->key-name associations.
6878 (gdk_keyval_to_upper):
6879 (gdk_keyval_to_lower):
6880 (gdk_keyval_is_upper):
6881 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
6882 regards to their cases.
6884 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
6886 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
6887 widget's class path.
6888 (gtk_widget_path): new function to calculate a widget's name path.
6890 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
6891 pattern matching, features reversed pattern matches.
6893 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
6895 * examples/extract.sh, examples/extract.awk:
6896 New files to automagically extract code examples from the
6899 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
6901 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
6902 * gtk/gtkcontainer.c (gtk_container_focus_move):
6903 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
6905 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
6907 * docs/gtk_tut.sgml: minor changes to support auto
6908 extraction of example code
6910 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
6912 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
6913 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
6915 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
6917 * docs/gtk_tut.sgml:
6918 - new section on Events
6919 - change all delete_event callbacks to include
6920 a GdkEvent parameter
6921 - clean up the formatting
6923 * examples - helloworld.c, helloworld2.c, notebook.c,
6924 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
6925 rulers.c, table.c, wheelbarrow.c: change all delete_event
6926 callbacks to include a GdkEvent parameter.
6928 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
6930 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
6931 field of crossing events.
6932 (struct _GdkEventCrossing): Added the following fields: time, x,
6933 y, x_root, y_root, mode, focus, state.
6935 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
6936 crossing event structure.
6938 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
6939 changes to the crossing event structure.
6941 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
6943 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
6945 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
6947 * docs/gtk_tut.sgml:
6948 - GtkTooltips, update to current API
6949 - change all 'gpointer *data' to 'gpointer data'
6950 - other minor changes
6952 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
6954 * configure.in (LDFLAGS): Bomb out with a moderately
6955 helpful message if detection of X libraries fails.
6957 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
6960 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
6961 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
6963 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
6964 gtk/gtksignal.c gtk/gtktext.c:
6966 Fixups for warnings from adding const to type of GHashFunc,
6969 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
6970 ansi-warnings fixups.
6972 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
6974 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
6975 Locate child at (border_width,border_width), not
6976 (2*border_width,2*border_width). [ The border is _outside_
6979 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
6980 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
6982 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
6984 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
6987 1998-05-22 <sopwith@redhat.com>
6989 * gtk/gtkeventbox.c: Pass size_allocate on to the child
6990 regardless of whether it is visible or not. Also
6991 locate child at (border_width,border_width), not (0,0)
6993 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
6995 * gtk/gtkhandlebox.c: Added style_set handler.
6997 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
6998 [ From: Chris Lahey <clahey@umich.edu> ]
7000 * gtk/gtkeditable.c, gtk/gtkeditable.h,
7001 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
7002 and set_position functions to get and set the cursor position.
7004 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
7005 signal status. Make GtkText do user-controlled insertion
7006 and deletion through the Editable widget so that these
7007 signals are properly emitted.
7009 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
7010 display asterisks instead of empty space when visible = FALSE)
7012 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
7014 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
7017 1998-05-21 <sopwith@redhat.com>
7019 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
7020 custom routine for loading images specified in gtkrc's.
7022 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
7024 * configure.in: Use pthread_attr_init() as a test function,
7025 since most of the rest of -lpthread is macros on DU4.
7027 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
7029 * gtk/gtkcombo.c: implemented completion in the entry.
7031 1998-05-18 <sopwith@moebuis.labs.redhat.com>
7033 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
7035 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
7037 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
7038 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
7039 to be of runtype GTK_RUN_LAST.
7041 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
7044 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
7047 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
7049 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
7050 text retrived from GtkEntry. only intercept the Tab key if there
7051 was some text to complete.
7053 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
7055 Basic thread-awareness:
7057 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
7059 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
7060 gdk_threads_[init/enter/leave] for applications, plus
7061 gdk_threads_wake to wake the mainloop thread out of
7064 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
7066 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
7068 * gtk/testgtk.c (list_clear): Account for the fact
7069 that gtk_list_clear_items is not inclusive. (Clears
7072 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
7074 * gdk/gdk.c: include gdkkeysyms.h always
7077 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
7079 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
7080 the visibility_notify_event method and changed method order.
7082 1998-05-14 <sopwith@moebuis.labs.redhat.com>
7084 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
7086 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
7088 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
7089 from Olli Helenius <ollhel@batman.jytol.fi>.
7091 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
7093 (gtk_type_set_chunk_alloc): new function to allow allocation of new
7094 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
7097 * gtk/gtkobject.c (gtk_object_finalize): free an object through
7100 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
7102 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
7103 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
7105 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
7107 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
7108 GPOINTER_TO_UINT fixes.
7110 * gtk/gtksignal.c: Include <string.h> for memset.
7112 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
7113 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
7115 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
7116 Cleanups, comments and the ability to have rulers with
7117 a reversed direction.
7119 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
7121 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
7122 that Sopwith missed when changing stat => lstat.
7124 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
7126 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
7127 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
7128 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
7130 * gdk/gdk.c: Print sizeof() results
7131 as g_print("%ld", (glong)sizeof(foo)), to deal with
7132 sizeof() being long on Alpha's.
7134 * gtk/testgtk.c: include <string.h> for strlen
7136 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
7137 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
7139 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
7140 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
7142 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
7144 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
7145 (From: Christopher James Lahey <clahey@umich.edu>)
7147 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
7150 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
7151 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
7152 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
7153 the default relief for the toolbars buttons. Added an
7154 toggle for the toolbar test in testgtk.c.
7156 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
7158 * docs/gtk-config.1: Rewritten and hopefully improved.
7160 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
7163 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
7165 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
7167 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
7168 GtkPreview's visual and colormap, otherwise things can BadMatch.
7170 * gtk/testgtk.c (create_color_preview):
7171 (create_gray_preview): Removed pushing/popping of visual/colormap
7172 now that GtkPreview does things correctly.
7174 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
7175 (gtk_color_selection_draw_wheel): Pick the style from the correct
7176 place (the colorsel->wheel_area widget) so that the GCs will match
7177 with where we are going to paint to.
7179 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
7180 of visual/colormap now that GtkColorSelection does things the
7183 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
7185 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
7186 previously unused window->need_resize flag to mark if a window's
7187 descendents changed size while the window was not visible. In this
7188 case, when the window becomes visible, we reallocate everything,
7189 since we didn't keep track of what actually changed.
7191 (Fixes bug where changing the popdown strings of a
7192 combo to something of the same length caused them to
7193 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
7195 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
7197 [security audit by Alan Cox]
7199 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
7200 exceed maximum assumed size.
7202 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
7203 not exceed maximum assumed size.
7204 (gtk_menu_factory_remove): likewise.
7205 (gtk_menu_factory_find_recurse): likewise.
7207 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
7209 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
7210 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
7211 redrawn if that is still neccessary. don't allow queueing of already
7213 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
7214 widgets which are in the queue can be destroyed safely, handle
7215 requeueing properly.
7216 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
7217 widgets which are in the queue can be destroyed/unrealized safely.
7219 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
7221 * gtkfaq.sgml: add question on multi-threading,
7224 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
7226 * configure.in (cflags_set): preserve automake CFLAGS.
7228 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
7229 and libgdk-1.1.la. this means we need to change certain portions of
7230 the Makefile.am on major/minor version bumps.
7232 * ltmain.sh: the -release option is not required anymore.
7234 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
7235 of the first argument to be of type GtkObject. unconditionally compile
7236 this function. removed __GNUC__ dependancy of the gtk_object_ref and
7237 gtk_object_unref macro wrappers for this function.
7239 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
7243 (gtk_object_data_try_key):
7244 (gtk_object_data_force_id): these are now macros substituting the old
7245 functions. we just use the corresponding g_dataset_* functions for
7246 key->id associations. (this is to assure unique key<->id associations).
7248 1998-05-10 Stefan Jeske <stefan@gtk.org>
7250 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
7253 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
7255 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
7257 * configure.in (LIBS): Try to figure out if this
7258 is Digital Unix and we need -std1 to get the
7261 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
7263 * docs/gtk_tut_it.sgml: update of Italian tutorial
7264 translation from Daniele Canazza <dcanazz@tin.it>
7266 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
7268 * gtk/gtkfeatures.h.in: new file used as template for
7269 * gtk/gtkfeatures.h: new file to define macros indicating newly
7270 introduced features, such as GTK_HAVE_SIGNAL_INIT.
7273 (gtk_signal_emitv_by_name):
7275 new functions to emit signals with an already provided parameter set.
7276 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
7277 (gtk_signal_real_emit): prototype changes, so this functions always
7278 gets its parameters and signal structure as arguments.
7279 (gtk_signal_emit): provide the signal structure and parameter list for
7280 gtk_signal_real_emit.
7281 (gtk_signal_emit_by_name): likewise.
7283 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
7285 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
7286 signal connections through unsetting GTK_CONNECTED.
7287 (gtk_signal_handler_insert): reflect the presence of signal connections
7288 through setting GTK_CONNECTED.
7289 (gtk_signal_real_emit): only check for handler emissions if the object
7290 has the GTK_CONNECTED flag set.
7291 (gtk_signal_handler_pending): don't check for pending handlers if the
7292 GTK_CONNECTED flag is not set for this object.
7294 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
7295 a GtkObject has signal handler connections.
7297 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
7298 set for this object call gtk_signal_handlers_destroy().
7300 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
7301 multiple processing of macro args.
7303 * gtk/gtktypeutils.c:
7306 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
7308 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
7310 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
7311 draw-queue when we are done.
7313 (gtk_widget_queue_draw/_queu_resize): Always return
7314 FALSE and avoid having two idles at the same time.
7316 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
7318 * gtk/gtktext.c: Various fixes to make sure cache
7319 lines are freed if line_start_cache doesn't point to the
7320 beginning of the cache.
7322 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
7324 * style_set improvements for GtkText and GtkEntry
7326 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
7328 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
7331 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
7333 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
7334 data chunks through a global object data structure list. unlink
7335 object data before invoking its destroy function.
7336 (gtk_object_finalize): slight modification to allow usage of object
7337 data during object finalization.
7339 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
7341 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
7342 signal names, e.g. "signal-name" is now an alias for "signal_name".
7343 (gtk_signal_handler_new): allocate handlers through a global handler
7344 structure list, that's faster than memchunks.
7345 (gtk_emission_new): allocate emissions through a global emission
7346 structure list, that's faster than memchunks.
7348 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
7350 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
7352 * ltmain.sh: added a new commandline flag -postfix similar to -release,
7353 but will immediately change the library name.
7356 * gtk/Makefile.am: specify -postfix and -version-info
7358 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
7359 GTK_BINARY_AGE. calculate LT_* variables for libtool.
7361 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
7363 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
7364 background (fg_set -> bg_set confusion).
7366 1998-05-06 Stefan Jeske <stefan@gtk.org>
7368 * gtk/testgtk.c (unselect_all): Removed code that caused an
7371 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
7373 * gtk/gtksignal.c: reimplemented the signal storage system to use a
7374 linear array rather than a hash table.
7375 be carefull *not* to keep any GtkSignal pointers across invokations
7376 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
7377 general code cleanups, made all allocations through memchunks.
7378 (gtk_signal_lookup): we now do the lookup of signals through a key_id
7379 for the signal names to avoid multiple hashing of the signal name on
7380 lookups for the several hirarchy levels of an object.
7382 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
7384 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
7385 to speed things up and remove code duplication.
7387 Reintegrated buffer overflow patches, and added
7388 some extra paranoia.
7390 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
7392 * gdk/gdk.c (gdk_event_translate): A guint * was
7393 being passed where X expected a Keysym *, and
7394 keysyms are long's on Alpha Linux. This was causing
7395 segfaults in Xlib, apparently because of alignment.
7396 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
7398 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
7400 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
7401 set GDK_EXPOSURE_MASK for DrawingAreas
7403 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
7405 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
7406 (superceded by RC file reparsing capabilities)
7408 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
7409 events. (Shouldn't be sent to the InputOnly leader, which
7410 it is now by gdk_event_send_clientmessage_toall
7412 * gtk/testgtk.c: Added extra button to rcfiles test
7413 to send out _GDK_READ_RCFILES events.
7415 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
7417 * gtk/gtkselection.c (gtk_selection_clear): Fixed
7418 reversed conditionals that caused segfault on some
7421 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
7423 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
7424 cast to GTK_OBJECT for gtk_object_ref.
7426 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
7428 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
7429 checking for signal initialization in gtksignal.c.
7431 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
7432 a long debugging period ;)
7434 1998-05-05 Stefan Jeske <stefan@gtk.org>
7436 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
7437 New function to wrap XSetDashes; modified gtkctree.c to use it.
7439 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
7441 * configure.in: Added $x_libs in the other_libraries field in the
7442 check for XShapeCombineMask.
7444 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
7446 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
7448 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
7449 linear array rather than a hash table. it actually speeded up testgtk
7450 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
7451 pointers across invokations of gtk_type_node_next_and_invalidate() and
7452 therefore gtk_type_unique()!
7454 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
7455 inheritance of a class pointer.
7456 (GTK_OBJECT): modifications for speedups.
7457 (GTK_IS_OBJECT): likewise.
7458 (GTK_OBJECT_CLASS): likewise.
7459 (suggested by owen).
7461 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
7463 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
7465 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
7466 since its derivation changed 4 month ago ;(. showed up with the unique
7467 type name checking code in gtk_type_unique().
7469 * random guint->GtkType and macro fixups.
7471 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
7473 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
7474 Configure events that would result in a negative
7477 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
7479 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
7480 "glibconfig.h" and another about writing another IRC
7483 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
7485 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
7486 parameters to log are doubles. Digital Unix apparently
7487 is missing the argument in its prototype.
7489 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
7491 * gtk/gtklabel.c (gtk_label_state_changed): Don't
7492 force a clear until the widget is actually on
7495 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
7497 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
7498 to make this consistent with the gtk-1-0 tree.
7500 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
7502 * configure.in acheader.h gdk/gdkwindow.c
7503 Check for Shape extension both on the client and server
7504 side. (And, more importantly, check for the shape extension
7505 so we may include -lXext even when compiling with --disable-xshm)
7507 Don't set override_redirect on all shaped windows. It isn't
7510 * gdk/gdkwindow.c: Set ->colormap to NULL for root
7511 and foreign windows. Use this to check if we
7512 need to get the colormap from X.
7514 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
7516 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
7517 between the default and the button always in GTK_STATE_NORMAL.
7519 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
7522 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
7524 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
7525 Fix a buffer overflow on pixmaps that claim to have
7526 more than 31 characters per pixel.
7528 (gdk_pixmap_read_string): Don't wrap around strings longer
7529 than half of address space ;-)
7531 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
7532 that were used for printing integers.
7539 int foo (void) { ... }
7541 Even where there were proper prototypes elsewhere.
7543 * gdk/gxid.c (handle_claim_device): Some extra checks.
7544 It isn't safe against being fed bad X id's, but at
7545 least it should be safe against deleting all your
7548 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
7550 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
7551 to set the adjustments value when there is no current emission.
7552 [ Removed by mutual agreement owt 5/3/1998 ]
7554 * gtk/gtksignal.c: added new functions to retrive the number of
7555 existing emissions for a certain signal.
7556 (gtk_signal_n_emissions): new function.
7557 (gtk_signal_n_emissions_by_name): new function.
7559 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
7561 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
7562 set the current focus_child of a container, does proper referencing and
7563 adjusts the vadjustment/hadjustment associated with the focus widget.
7565 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
7566 containers via gtk_container_set_focus_child.
7568 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
7571 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
7572 child since not every child removal goes through this function (this
7573 showed up after gtk_container_set_focus_child() started to reference the
7574 focus_child of a container).
7576 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
7577 of a container from gtk_container_remove into this place.
7579 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
7581 * gtk/gtksignal.c: added new functions to operate on intermediate
7582 function pointers. implemented incremental blocking.
7583 (gtk_signal_disconnect_by_func): new function.
7584 (gtk_signal_handler_block_by_func): new function.
7585 (gtk_signal_handler_unblock_by_func): new function
7587 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
7589 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
7590 Always show the scrollbars when the policy is
7591 GTK_POLICY_ALWAYS...
7593 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
7595 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
7596 "value_changed" if we really passed a new value.
7597 (gtk_adjustment_changed): new function to emit the "changed" signal.
7598 (gtk_adjustment_set_value): new function to emit the "value_changed"
7601 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
7603 * gtk/gtkcombo.c: Further changes to the way the window
7604 is popped up so that it will be compatible with
7605 auto-scrolling in the future.
7607 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
7609 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
7610 the combo-list is empty since that will cause the combo to operate
7611 on a non existing GtkList window.
7612 (gtk_combo_get_pos): provide the combo list with a usfull default
7614 (gtk_combo_popup_button_press): grab the focus.
7615 (gtk_combo_activate): grab the focus.
7617 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
7619 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
7620 function to reset the RC styles for a heirarchy
7622 Clear the window background if necessary in
7623 gtk_window_style_set.
7625 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
7626 rereads all previously read RC files.
7628 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
7629 (Should it just be called gdk_get_toplevels?)
7631 * gtk/testgtk.c: New test to reload RC files.
7633 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
7636 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
7637 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
7638 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
7639 the GTK_ prefix (this solution involved less changes in the
7640 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
7641 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
7642 from lars & stefan to support the derivation of GtkCtree.
7646 initial import of a tree widget derived from gtkclist, courtesy
7647 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
7650 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
7652 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
7654 (gtk_list_insert_items):
7655 (gtk_list_remove_items_internal):
7656 (gtk_list_clear_items):
7657 remove a possible pointer grab, we might get thrown into a loop
7659 (gtk_list_button_press): grab the pointer *before* selecting the child,
7660 because selection of items may cause the lists children to change,
7661 resulting in a grab release.
7662 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
7664 (gtk_list_shutdown): remove all children from the list.
7665 (gtk_real_list_unselect_child):
7666 (gtk_real_list_select_child): *always* put our internal structures into
7667 sane state *before* signal emisions (i.e. list->selection updates prior
7668 to gtk_list_item_[de]select() calls).
7670 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
7671 focused child walks out of the window.
7672 removed CAN_FOCUS for the combo arrow's button since it doesn't react
7673 to keyboard events ("clicked" connection is missing).
7675 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
7677 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
7678 getting colormap for FOREIGN windows to go along with
7679 Raster's fix for visuals.
7684 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
7686 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
7687 Check to catch the case when the viewport fits in either
7688 direction or both, instead of flip-flopping infinitely.
7690 Only show/hide the scrollbars once at the end.
7692 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
7694 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
7695 Include the scrollbars in the foreach call.
7696 (gtk-fortier-980405-0.patch;
7697 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
7700 really should also include its tabs, but that might cause
7701 problems for programs if they
7703 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
7705 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
7706 resize if the size actually changed.
7707 (gtk-johannes-980414-0.patch ;
7708 johannes@nada.kth.se (Johannes Keukelaar) )
7710 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
7712 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
7713 ltmain.sh ltconfig config.sub config.guess:
7715 Reverted back to libtool-1.2 (plus minor patches) so as not to
7716 force the issue for everyone else.
7718 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
7720 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
7721 Updated to libtool 1.2a.
7723 * gtk/gtkclist.c: Draw the in-between lines with style->base
7724 instead of style->white.
7726 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
7728 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
7729 Cache the colormap and children of a window locally
7730 instead of fetching them from the server when needed.
7731 Huge performance difference for creating/destroying
7734 * gtk/gtkstyle.c: Find the depth from the cached
7735 visual, instead of asking the server.
7737 * gtk.m4: Distribute the new version which tries to
7738 figure out what went wrong and give helpful error
7741 * ltmain.sh ltconfig config.sub config.sh:
7742 Updated to libtool 1.2a
7744 * gtk/gtktext.c: Fixed a bug where the drawn level
7745 was being messed up when the text was scrolled
7748 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
7750 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
7751 the filesystem under you (fix from Josh)
7753 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
7755 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
7756 if the viewport already exists before iterating over it, maybe we
7757 haven't been constructed yet.
7759 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
7761 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
7762 the GtkBin widget already has a child.
7764 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
7765 check that child->parent == NULL;
7767 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
7769 * gtk/gtkselection.c (gtk_selection_clear): Only return
7770 FALSE when the clear event is been rejected, not when
7771 widget has already lost the selection. (Which should
7772 only happen when we are setting the selection to another
7775 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
7777 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
7779 Removed the "check visibility after gtk_widget_unparent" bug
7780 in hopefully the last three places.
7782 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
7784 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
7787 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
7789 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
7790 for CAN_FOCUS widgets.
7792 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
7793 adjustments for the table.
7794 (create_list): feature automatic adjustment of the scrolled window to
7795 always contain the focused child.
7796 (create_main_window): keep the focussed button always inside of the
7799 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
7800 adjustments, to contain the allocation of the currently focused child.
7801 (gtk_container_set_focus_hadjustment): new functin to set the
7802 horizontal focus adjustment.
7803 (gtk_container_set_focus_vadjustment): new functin to set the vertical
7806 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
7807 clamp the currents adjustment page into a specific range.
7809 * random GtkType fixups for gtk_*_get_type() functions.
7811 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
7813 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
7814 Account for the fact that gtk_tree_item_remove_subtree
7815 will be called recursively.
7817 Handle removing a collapsed subtree.
7819 (From Andy Dustman <adustman@comstar.net>)
7821 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
7822 root tree when removing items from a non-previously
7825 * gtk/testgtk.c: Added a remove_subtree button.
7827 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
7829 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
7830 before object removing data. This change fixes a bug where
7831 removing the last weak references would cause it to be
7834 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
7836 * gdk/Makefile.am: Removed mostly useless dependency that
7837 was causing problems for SGI's make, when used with
7838 the 'make dist' form of GTK+. (Dependency caused dependencies
7839 to be redone when BUILT_SOURCES changed)
7841 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
7843 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
7846 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
7847 to gtkitem.c so dragging can also work in lists.
7849 * gtk/gtklist.[ch]: Track child enter events and use
7850 those to allow dragging the selection.
7852 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
7854 * gtk/gtktext.c: Try enabling background pixmaps for editable text
7855 widgets. There is a bit of flashing, but not too bad. If you
7856 don't want the flashing, you can always not set a background
7859 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
7861 * gtk/gtktext.c: Fixed a bug where the drawn level
7862 was being messed up when the text was scrolled
7865 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
7867 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
7868 bug: There is no need to set the ExposureMask in the XGrabPointer
7869 (this caused DnD programs to crash).
7871 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
7873 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
7874 field to be of type guint.
7875 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
7877 (gtk_accelerator_table_install): keep a per object list of accelerator
7878 tables that refer to this object.
7879 (gtk_accelerator_table_remove): remove the accelerator table from the
7881 (gtk_accelerator_table_clean): warn if there are any object references
7882 left in an accelerator table upon destruction.
7883 (gtk_accelerator_tables_delete): new function to delete object
7884 references from the accelerator tables associated with this object.
7886 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
7887 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
7888 of an accelerator can be prevented by gtk_signal_emit_stop().
7889 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
7890 so there are no stale pointers in accelerator tables left.
7892 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
7894 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
7895 visible before we unparent it.
7897 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
7899 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
7900 running_timeouts list with the tmp_list link itself, not with a new
7901 GList structure pointing to our link. that would fill up memory and
7902 causes the GList.data fields of the running_timeouts list to point to
7903 GList structures and not GtkTimeoutFunction structures which is a
7905 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
7908 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
7910 * gtk/gtkradiomenuitem.h:
7911 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
7912 ala gtk_radio_button_set_group.
7913 (gtk_radio_menu_item_init): assure that we always have at least a group
7914 that points to self.
7916 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
7917 added g_return_if_fail() statements.
7918 (gtk_radio_button_init): assure that we always have at least a group
7919 that points to self.
7921 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
7923 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
7925 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
7927 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
7928 (Damon Chaplin), which i got wrong when applying Damon's patch the last
7931 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
7933 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
7934 that when we are running with a non-installed colormap,
7935 in 8-bit pseudo-color, we actually are using the system
7936 visual. (Fixes *Bad Match* errors on Digital Unix machines
7937 with multiple 8-bit pseudo-color visuals)
7939 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
7941 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
7942 by whoever thought that randomly changing ints to unsigned int
7943 without reviewing the code was a good idea. It is, btw not
7944 mentioned in the ChangeLog as usual, but I know it was not Elliot
7945 the culprit this time.
7947 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
7949 * Released GTK+ 1.0.0