1 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
4 * gtk/gtkbin.h: GtkType and macro fixups.
6 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
7 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
8 GtkAlignment::xscale, GtkAlignment::yscale.
10 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
12 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
13 fucntions from all parent types upon class initialization.
16 (gtk_container_get_type): announce gtk_container_base_class_init to
18 (gtk_container_base_class_init): new function to feature base class
20 (gtk_container_get_child_arg):
21 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
22 and set_child_arg methods of the class indicated through the argument
26 (gtk_object_base_class_init): new function to feature base class
28 (gtk_object_init_type): announce gtk_object_base_class_init to the type
30 (gtk_object_class_init): setup the get_arg and set_arg pointers for
33 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
34 instead of bothering the type system with this.
36 * gtk/gtkaccellabel.c:
38 * gtk/gtkradiobutton.c:
40 * gtk/gtktogglebutton.c:
48 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
49 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
50 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
51 arg functions to take a GtkObject argument.
60 gtk/gtkcheckmenuitem.c:
100 gtk/gtkradiomenuitem.c:
105 gtk/gtkscrolledwindow.c:
121 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
122 match the modified GtkTypeInfo structure.
124 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
126 * gtk/testgtk.c: use rand() instead of random() for portability
128 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
132 * gdk/gdk.c: use native Xlib XConvertCase if it's available
134 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
136 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
137 XConvertCase() functionality from X11R6 on X11R5 systems.
139 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
141 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
142 gdk_string_height, gdk_char_height to retrieve the exact
145 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
147 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
148 by Stefan Mars <mars@lysator.liu.se>
149 * examples/clist/clist.c examples/clist/Makefile: example code
150 for GtkCList widget from the Tutorial
152 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
154 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
155 if the container is not visible, we might be a toplevel! this holds
156 for all other base container implementations as well, that are
157 candidates to derive toplevels from. in general the resizing code will
158 care about visibility itself.
159 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
160 * gtk/gtkbox.c (gtk_box_remove): likewise.
162 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
163 gtk_window_set_hints(), since we haven't calculated the new position
166 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
167 *mask are alway initialized in a sane way, regardless of the return
170 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
172 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
173 to gtk_container_child_arg_setv, but takes a variable argument list.
174 new function gtk_container_get_child_arg_type, which is needed by
175 gtk_object_collect_args.
177 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
178 take a function pointer to figure the argument type.
179 adapted callers to pass gtk_object_get_arg_type.
180 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
181 gtk_object_get_arg_type..
185 (gtk_packer_reorder_child): new function to change the packing order
187 (gtk_packer_size_request):
188 (gtk_packer_size_allocate): take container->border_width into acount.
190 * gtk/gtkpacker.c: implemented widget arguments:
191 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
192 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
193 implemented child arguments:
194 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
195 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
196 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
197 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
199 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
203 * gtk/gtkeventbox.c: GtkType and macro fixups.
205 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
206 sensitivity of an entry.
208 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
209 for insensitive base and text.
211 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
212 widget state dependent.
213 (gtk_entry_style_set): likewise.
214 (gtk_entry_state_changed): set background color on state changes.
215 (gtk_entry_draw_text): for non selected text, use state dependent
218 * gtk/gtktogglebutton.c: support for widget arguments
219 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
221 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
223 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
224 code for 1.0.x-like parameters. Changed internal interface of
225 gtk_spin_button_real_spin. Several fixes to avoid emission of
226 "value_changed" where possible.
228 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
230 * gtk-boxed.defs: s/GkWidget/GtkWidget/
232 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
234 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
235 to select the resize_mode for the idle-labels container.
238 * gtk/gtkframe.c: GtkType and macro corrections.
240 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
241 support widget argument "GtkRadioButton::group".
243 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
245 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
246 unconditionally if resize_mode has changed.
248 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
249 GTK_RESIZE_QUEUE on the scrolled window.
250 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
252 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
254 * gtk/gtkcontainer.h:
255 * gtk/gtkcontainer.c:
256 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
257 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
258 (gtk_container_queue_resize): new function to queue a container for
259 a *size* reallocation (doesn't affect its position, and thus its
260 parent is left untouched usually).
261 (gtk_container_get_resize_container): new function to retrive the next
262 most resize container which is not itself queued for a resize.
263 (gtk_container_idle_sizer): new function to carefully process the
264 container_resize_queue since it can change during invokation of
265 gtk_container_check_resize().
266 (gtk_container_resize_children): total rework of this function to
267 properly handle resize containers. makes a lot of assumptions whitch
268 are stated in the comments.
270 * gtk/gtkcontainer.c:
271 (gtk_container_real_check_resize): only requeue ourselves if we are not
273 (gtk_container_clear_resize_widgets): care for automatic deletion of our
274 resize_widgets list on size_allocate through a handler connection.
276 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
277 focus and default widget of a window, so to take the burden from
280 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
281 to be clever, but actually messed up the resize_children logic and
282 caused unneccessary allocations on its whole branch. besides this,
283 it messed up the display by not invoking a redraw after the allocation.
285 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
286 that it is the child again that is queued for a resize.
287 (gtk_table_attach): likewise.
288 (gtk_table_remove): likewise.
290 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
292 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
293 gtk_entry_adjust_scroll. Required if you change the cursor
294 position and want to sync it up with your code (Midnight Commander
295 gtk front end needs this).
297 * gtk/gtktable.c: Deal with tables that have size 0, 0.
299 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
301 * examples/README.1ST: new file to explain how the
302 code examples should be extracted from the tutorial.
304 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
306 * gtk/gtkctree.c (draw_row): added new "line style"
307 GTK_CTREE_LINES_TABBED
308 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
309 search the glist pointer of an GtkCTreeRow
311 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
313 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
314 from, and clean up, the dependencies. Generate to intermediate
315 files to prevent problems with Ctrl-C.
317 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
319 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
321 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
322 - Bug fix for precision problem causing occasional double emission
323 of "value_changed" signal (hopefully works now).
324 - API change (should be binary compatible) :
325 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
326 Modified cursor example appropriately.
327 To spin by something other than step_/page_increment, use
328 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
329 - Made GTK_SHADOW_NONE the default. ;)
330 - Fixed casting of GtkAdjustment* to GtkWidget* in
331 gtk_spin_button_value_changed.
333 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
335 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
336 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
337 resize widget list before queuing the container for a new reize.
338 (gtk_container_need_resize): changed return value to FALSE, since this
339 used to indicate that no further resizes are needed.
340 (gtk_container_set_arg):
341 (gtk_container_get_arg):
342 (gtk_container_class_init): implemented GtkContainer::resize_mode
345 (gtk_container_resize_children): when we walk up the tree of a resize
346 widget we need to stop if we are the current parent.
348 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
349 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
350 (gtk_widget_hide_all): retrive the toplevel widget from via
351 gtk_widget_get_resize_container().
353 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
355 * gtk/gtklist.c (gtk_list_button_press): Only respond
356 to selection with button 1. This allows context-sensitive
357 menus to work correctly.
359 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
361 * gtk/gtkaccelgroup.c:
363 * gtk/gtkcontainer.c:
364 * gtk/gtkitemfactory.c:
367 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
368 g_quark_from_static_string calls to save memory.
370 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
371 function _after_ the new data has been setup.
372 minor changes to object data functions to feature the GQuark type.
374 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
376 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
379 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
381 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
382 to be more readable perl, to spit out stuff that looks
383 more like readable C, and to pipe output through indent
384 so output looks a lot like readable C. No functional
387 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
389 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
390 necessary when switching to a masked pixmap. (Based on a patch
391 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
393 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
395 * gtk/gtkeditable.[ch]: Added action signals for keyboard
396 bindings. (move_cursor, kill_word, etc, etc, etc).
398 removed the time argument from
399 gtk_editable_cut/copy/paste_clipboard (source but not
400 binary incompatible...) Instead get time from
401 gtk_get_current_event ().
403 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
406 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
408 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
410 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
411 parent class to GtkNotebookClass when splitting the widget in
412 two. Also updated some comments.
414 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
415 button without a font selected.
417 Fixed bug in set_font_name - I hadn't updated the code to
418 search for the style in the font_style clist - it was
419 still assuming the style row was equal to its index,
420 but it isn't any more.
422 Changed 'Reset' button on filter page to 'Clear Filter'.
423 Deleted old code relating to the old 'Filter Fonts' toggle
424 Updated some comments.
425 Cleared 'Actual Fontname' if no font is set.
427 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
428 destroying the GtkFontSelection instead of the
429 GtkFontSelectionDialog.
431 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
433 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
434 flag to make all warnings fatal errors.
436 * gtk/testthreads.c: moved <pthreads.h> include inside
439 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
441 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
442 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
444 - Added new function gtk_container_set_resize_mode() for
445 fine-grained control of where resize-queueing is done.
447 - Removed GtkContainer::need_resize and GtkWindow::move_resize
448 - Added GtkContainer::check_resize to replace need_resize.
450 - Added function gtk_container_check_resize() to trigger
451 queued resizes, and gtk_container_resize_children() to
452 Figure which children need to be size-allocated. (logic
453 moved from gtkwindow.c)
455 - Reorganized code in gtkwindow.c
457 - Set the resize-mode for viewports so that resizes within
458 a viewport don't propagate out of it.
460 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
462 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
464 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
465 g_return_val_if_fail, because the function *does* return a value.
467 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
469 * gtk/gtkaccellabel.h:
470 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
471 request the size of the accelerator portion of an accel label.
472 (gtk_accel_label_size_request): don't request for the accelerators size.
473 (gtk_accel_label_expose_event): only draw the accelerator if we got
476 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
479 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
480 object (after removal has been requested) check if there is still an
481 accelerator remaining to avoid adding two accelerators on an object.
482 this can happen for locked accelerators (or accelerator-frozen widgets).
483 (gtk_menu_size_request): feature childrens accelerator width in size
486 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
487 gtk_widget_freeze_accelerators() for dynamically created menu items.
490 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
491 which will return a handler_id > 0 if the specified function is pending
495 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
496 a signal handler function to stop accelerator addition.
497 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
498 which will prevent (undo) any accelerators from being added to or
499 removed from a widget.
501 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
503 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
504 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
505 acceleration, new API gtk_spin_button_set_snap_to_ticks.
507 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
510 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
511 the current GdkWindow the pointer is on if there is any.
513 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
514 and one column, so we don't construction logic at all. changed a few
515 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
518 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
519 portion, added an additional check for parent != widget.
521 * more GtkType and macro fixups.
523 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
525 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
526 "clip" parameter, which is the clipping rectangle to use. This
527 eliminates the extremely annoying flicker when exposing parts of
530 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
532 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
535 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
537 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
538 != 0 on the argument.
541 * gtk/gtktable.c: new function gtk_table_resize() which allowes
542 shrinking and expanding of tables. implementation of widget arguments
543 and child arguments. many signedness corrections.
545 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
547 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
548 not only the child, otherwise we might end up taking away other
549 childrens space after the resize.
551 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
552 an unknown menu path from any source, that path must always be flagged
553 as "modified", since we don't really know whether it has its default
559 * gtk/gtkmenushell.c:
563 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
566 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
567 arguments. implemented child arguments.
569 * more GtkType and macro fixups.
571 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
573 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
575 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
576 and gtk_clist_get_hadjustment.
578 * gtk/gtkcontainer.c:
579 implementation of children arguments, new class member functions
580 (child_type), (get_child_arg) and (set_child_arg) plus a new field
582 (gtk_container_child_type): new function which returns the type of a
583 child that the container expects for its next addition.
584 (gtk_container_add_child_arg_type): new function to introduce a new
585 child argument at class creation time.
586 (gtk_container_query_child_args): new function to query all child
587 arguments that are supported by a container class.
588 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
590 (gtk_container_child_arg_setv): new function to set a child argument for
591 a certain container and child combination.
592 (gtk_container_add_with_args):
593 (gtk_container_add_with_argv): new functions to feature addition of a
594 new child in combination with the setting of certain child arguments.
596 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
597 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
598 this should really be done through class cretion hooks some day.
600 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
604 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
605 follow the gtk convention for lower case variable names (important
606 for language wrappers and widget arguments), and made them guint : 16.
608 * examples/packer/pack.c: adaptions for the case converted GtkPacker
611 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
613 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
614 change the character pair for single line comments.
615 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
617 (gtk_item_factory_parse_rc_string): likewise.
619 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
621 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
622 lists from the klass structure to a static structure
623 in gtkfontsel.c; cleans up global the namespace.
625 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
627 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
628 bug with /*< skip >*/ and remove warning.
630 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
632 * gtk/Makefile.am: Made the gtkmarshal.* generation
633 rules maintainer-only.
635 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
637 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
638 gtk/Makefile.am gtk/makenums.pl
640 Removed out the G_ENUM/FLAGS mechanism in favor
641 of a perl script that parses the standard headers
642 (with occasional /*< nick=foo >*/ style overrides)
643 and extracts the enumerations.
645 gtk/maketypes.awk: Small improvments to the
646 translation of names. (Avoid splitting gc into
649 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
651 * gtk/gtk.h gtk/gtkfontsel.[ch]:
652 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
654 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
657 - Restored gtk_entry_adjust_scroll to static
658 - Changed text positioning code so that we always
659 display as large a portion of the text as possible.
661 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
663 * gtk/gtktext.c (gtk_text_finalize): Free internal
664 structures of text widget. Also, unreference pixmaps
667 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
669 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
670 3.3.1 bug workaround to number keys starting at 1.
672 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
674 * docs/gtk_tut.sgml: Fixed urls for complete example
675 source for scribble+widget-writing examples.
677 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
679 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
680 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
681 specs of the form c #abcdef [ more keys ] properly.
683 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
685 * gtkspinbutton.h gtkspinbutton.c testgtk.c
686 (gtk_spin_button_set_shadow_type):
687 New API to set the shadow type of the arrow panel.
689 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
691 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
692 code for drawing the child in two places at once. Unfortunately,
693 not only does it not work anymore (because reparenting has
694 been fixed), but it also triggers reparent/expose loops
697 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
698 an unecessary unrealize.
700 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
702 * gdk/gdkwindow.c (gdk_window_reparent): Update the
703 old and new parents' child window lists properly.
705 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
708 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
709 and GtkSideType, to be consistent with the rest of Gtk's enum
710 definitions. wrapped the enum definitions with the G_ eunm wrappers.
711 spelled out the GTK_ANCHOR_* enum values, since single letters don't
712 work out corectly as nick-names (left the old values as aliases).
713 some signdness corrections (border-width, spacing), could stand more.
715 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
717 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
720 * examples/packer/pack.c, examples/packer/Makefile: Added
723 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
725 * gtk/gtktext.c (remove_cache_line): Fixed broken
728 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
729 Check bounds before deleting.
731 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
733 * autogen.sh: Support ACLOCAL_FLAGS
735 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
737 * gtk-config.in: Added missing quotes.
739 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
741 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
743 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
745 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
746 G_COMPILED_WITH_DEBUGGING.
748 * configure.in (fd_set): Explain check better.
750 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
751 the version from which gtk+'s libtool forked. Needed for people
752 who use post-1.2 alphas of libtool.
754 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
756 * glib/* Moved to glib module
758 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
759 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
761 configuration changes for the above:
763 - Use AM_PATH_GLIB by default to find glib; also accept
764 a --with-glib option for using an uninstalled glib.
766 - Put --enable-debug information into config.h so
767 that we rebuild when it changes. (was in glibconfig.h)
769 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
771 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
773 * gtk/gtknotebook.h (struct _GtkNotebookClass):
774 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
775 added missing argument (according to Joseph Coleman's bug report)
777 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
778 function to fix notebook focus handling
780 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
782 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
783 glib/gutils.c glib/testglib.c glib/gdataset.c
784 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
785 gtk/gtktext.c gtk/gtkbindings.c:
787 renamed g_const_pointer => gconstpointer
789 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
791 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
792 invoked with (NULL, NULL); (this worked sometime ago).
794 * gtk/gtktypeutils.h:
795 * gtk/gtktypeutils.c: enum and flags type creation can now be done
796 through gtk_type_register_enum() and gtk_type_register_flags(),
797 which allow to specify the enum value arrays directly.
798 the NULL terminated value arrays can be retrived through
799 gtk_type_enum_get_values() and gtk_type_flags_get_values();
800 (gtk_type_children_types): new function to query derived types.
802 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
804 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
805 environment to genmarshal.pl.
806 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
807 rule), and removed it where not needed (in the dependencies).
809 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
811 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
813 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
814 was just g_direct_hash.
816 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
818 * configure.in: x_libs=, not $x_libs=. Enough said.
819 (Case only hit for --disable-xshm)
821 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
823 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
824 when testing for X libraries, don't replace them. Because
825 the user might have specified the path to the X libraries
826 themself before running configure.
828 * examples/**.c: Changed all gpointer * to gpointer
830 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
832 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
833 fleur_cursor field. Now the cursor is created/destroyed on demand
834 by the routines that need it.
836 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
837 (gtk_handle_box_motion): The fleur cursor is created and destroyed
840 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
842 * gtk/gtktypeutils.h:
843 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
844 gtk_enum_set_values to gtk_type_enum_get_values and
845 gtk_type_enum_set_values respectively, since they are actually type
848 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
851 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
853 * gtk/gtkselection.h:
854 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
855 gtk_selection_data_free.
857 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
858 for "selection_received", which was completely bogus.
859 * other fixups to gtk_signal_new() calls all over the place.
861 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
862 * gtk/gtktypebuiltins_vars.c: type variable implementations.
863 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
865 * gtk/gtktypebuiltins_evals.c: enum value arrays.
866 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
868 * gtk/gtk.defs: generated file with scheme syntax for type definitions
869 of gtk and gdk structures and enums.
870 * gtk/gtktypeutils.h:
871 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
872 macros anymore (this fixes binary incompatibility with new enum
875 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
876 key bindings for this widget.
877 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
881 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
882 again. new functions gtk_object_class_user_signal_new () and
883 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
884 flag on the signal creation.
886 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
888 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
890 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
896 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
898 * reworked enum value array generation code. gtk.defs is a generated
901 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
903 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
904 check menu items in the compatibility code (this required me to remove
905 the "<check>" part from the menu item name, grrr).
907 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
909 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
910 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
912 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
914 * gtk/gtkitemfactory.h:
915 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
916 additions to the dumping code to feature GtkPatternSpec.
917 even found a bug to fix in the original code ;)
919 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
921 * gtk/gtkitemfactory.c: support different types of callbacks, to
922 maintain existing code.
924 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
926 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
928 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
929 this should eventually be done by gentypeinfo.el somewhen.
930 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
932 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
933 enum values of an enum type.
941 brought enum/flags definitions in sync, added a few more enum
942 definitions for bindings and pattern matching.
944 * some more macro and GtkType fixups in various places.
946 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
947 as a key-release modifier for the binding system.
949 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
951 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
952 was a stale list pointer that is already present in GtkMenuShell.
954 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
955 GtkMenuShell::selection_done which is emitted after the menu shell
956 poped down again and all possible menu items have been activated.
958 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
960 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
961 before activation of the menuitem, so the menu is actually taken off the
962 screen prior to any menu item activation.
964 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
968 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
969 the emission of the "add-accelerator" signal on a widget. this is
970 usefull to prevent accelerator installation on certain widgets.
972 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
973 labels left justified, by setting their alignment. stop accelerator
974 installation for the menu items, since we use dynamic menus.
976 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
978 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
979 should *really* use GtkItemFactory. this is only for preserving source
980 compatibility where possible, use of GtkMenuFactory is deprecated as of
983 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
984 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
985 missed this possibility when i added gtk_object_class_add_user_signal
988 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
990 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
992 * gtk/gtkaccelgroup.h:
993 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
995 * gtk/gtkaccellabel.h:
996 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
997 display of the accelerators associated with a certain widget.
999 * gtk/gtkitemfactory.h:
1000 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
1001 parsing and accelerator handling.
1003 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
1005 (gtk_menu_map): removed the allocation code.
1006 (gtk_menu_size_allocate): care for redrawing of children and resize
1007 our widget->window correctly.
1008 (gtk_menu_key_press): feature the new accelerator groups.
1010 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
1011 submenu if neccessary.
1013 * gtk/gtkmenuitem.c:
1014 * gtk/gtkcheckmenuitem.c:
1015 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
1019 (gdk_keyval_from_name):
1020 (gdk_keyval_name): new functions for keyval<->key-name associations.
1021 (gdk_keyval_to_upper):
1022 (gdk_keyval_to_lower):
1023 (gdk_keyval_is_upper):
1024 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
1025 regards to their cases.
1027 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
1029 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
1030 widget's class path.
1031 (gtk_widget_path): new function to calculate a widget's name path.
1033 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
1034 pattern matching, features reversed pattern matches.
1036 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
1038 * examples/extract.sh, examples/extract.awk:
1039 New files to automagically extract code examples from the
1042 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
1044 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
1045 * gtk/gtkcontainer.c (gtk_container_focus_move):
1046 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
1048 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
1050 * docs/gtk_tut.sgml: minor changes to support auto
1051 extraction of example code
1053 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
1055 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
1056 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
1058 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
1060 * docs/gtk_tut.sgml:
1061 - new section on Events
1062 - change all delete_event callbacks to include
1063 a GdkEvent parameter
1064 - clean up the formatting
1066 * examples - helloworld.c, helloworld2.c, notebook.c,
1067 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
1068 rulers.c, table.c, wheelbarrow.c: change all delete_event
1069 callbacks to include a GdkEvent parameter.
1071 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
1073 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
1074 field of crossing events.
1075 (struct _GdkEventCrossing): Added the following fields: time, x,
1076 y, x_root, y_root, mode, focus, state.
1078 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
1079 crossing event structure.
1081 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
1082 changes to the crossing event structure.
1084 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
1086 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
1088 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
1090 * docs/gtk_tut.sgml:
1091 - GtkTooltips, update to current API
1092 - change all 'gpointer *data' to 'gpointer data'
1093 - other minor changes
1095 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
1097 * configure.in (LDFLAGS): Bomb out with a moderately
1098 helpful message if detection of X libraries fails.
1100 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
1103 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
1104 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
1106 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
1107 gtk/gtksignal.c gtk/gtktext.c:
1109 Fixups for warnings from adding const to type of GHashFunc,
1112 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
1113 ansi-warnings fixups.
1115 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
1117 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
1118 Locate child at (border_width,border_width), not
1119 (2*border_width,2*border_width). [ The border is _outside_
1122 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
1123 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
1125 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
1127 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
1130 1998-05-22 <sopwith@redhat.com>
1132 * gtk/gtkeventbox.c: Pass size_allocate on to the child
1133 regardless of whether it is visible or not. Also
1134 locate child at (border_width,border_width), not (0,0)
1136 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
1138 * gtk/gtkhandlebox.c: Added style_set handler.
1140 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
1141 [ From: Chris Lahey <clahey@umich.edu> ]
1143 * gtk/gtkeditable.c, gtk/gtkeditable.h,
1144 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
1145 and set_position functions to get and set the cursor position.
1147 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
1148 signal status. Make GtkText do user-controlled insertion
1149 and deletion through the Editable widget so that these
1150 signals are properly emitted.
1152 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
1153 display asterisks instead of empty space when visible = FALSE)
1155 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
1157 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
1160 1998-05-21 <sopwith@redhat.com>
1162 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
1163 custom routine for loading images specified in gtkrc's.
1165 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
1167 * configure.in: Use pthread_attr_init() as a test function,
1168 since most of the rest of -lpthread is macros on DU4.
1170 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
1172 * gtk/gtkcombo.c: implemented completion in the entry.
1174 1998-05-18 <sopwith@moebuis.labs.redhat.com>
1176 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
1178 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
1180 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
1181 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
1182 to be of runtype GTK_RUN_LAST.
1184 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
1187 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
1190 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
1192 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
1193 text retrived from GtkEntry. only intercept the Tab key if there
1194 was some text to complete.
1196 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
1198 Basic thread-awareness:
1200 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
1202 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
1203 gdk_threads_[init/enter/leave] for applications, plus
1204 gdk_threads_wake to wake the mainloop thread out of
1207 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
1209 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
1211 * gtk/testgtk.c (list_clear): Account for the fact
1212 that gtk_list_clear_items is not inclusive. (Clears
1215 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
1217 * gdk/gdk.c: include gdkkeysyms.h always
1220 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
1222 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
1223 the visibility_notify_event method and changed method order.
1225 1998-05-14 <sopwith@moebuis.labs.redhat.com>
1227 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
1229 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
1231 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
1232 from Olli Helenius <ollhel@batman.jytol.fi>.
1234 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
1236 (gtk_type_set_chunk_alloc): new function to allow allocation of new
1237 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
1240 * gtk/gtkobject.c (gtk_object_finalize): free an object through
1243 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
1245 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
1246 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
1248 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
1250 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
1251 GPOINTER_TO_UINT fixes.
1253 * gtk/gtksignal.c: Include <string.h> for memset.
1255 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
1256 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
1258 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
1259 Cleanups, comments and the ability to have rulers with
1260 a reversed direction.
1262 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
1264 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
1265 that Sopwith missed when changing stat => lstat.
1267 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
1269 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
1270 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
1271 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
1273 * gdk/gdk.c: Print sizeof() results
1274 as g_print("%ld", (glong)sizeof(foo)), to deal with
1275 sizeof() being long on Alpha's.
1277 * gtk/testgtk.c: include <string.h> for strlen
1279 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
1280 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
1282 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
1283 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
1285 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
1287 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
1288 (From: Christopher James Lahey <clahey@umich.edu>)
1290 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
1293 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
1294 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
1295 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
1296 the default relief for the toolbars buttons. Added an
1297 toggle for the toolbar test in testgtk.c.
1299 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
1301 * docs/gtk-config.1: Rewritten and hopefully improved.
1303 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
1306 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
1308 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
1310 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
1311 GtkPreview's visual and colormap, otherwise things can BadMatch.
1313 * gtk/testgtk.c (create_color_preview):
1314 (create_gray_preview): Removed pushing/popping of visual/colormap
1315 now that GtkPreview does things correctly.
1317 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
1318 (gtk_color_selection_draw_wheel): Pick the style from the correct
1319 place (the colorsel->wheel_area widget) so that the GCs will match
1320 with where we are going to paint to.
1322 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
1323 of visual/colormap now that GtkColorSelection does things the
1326 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
1328 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
1329 previously unused window->need_resize flag to mark if a window's
1330 descendents changed size while the window was not visible. In this
1331 case, when the window becomes visible, we reallocate everything,
1332 since we didn't keep track of what actually changed.
1334 (Fixes bug where changing the popdown strings of a
1335 combo to something of the same length caused them to
1336 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
1338 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
1340 [security audit by Alan Cox]
1342 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
1343 exceed maximum assumed size.
1345 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
1346 not exceed maximum assumed size.
1347 (gtk_menu_factory_remove): likewise.
1348 (gtk_menu_factory_find_recurse): likewise.
1350 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
1352 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
1353 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
1354 redrawn if that is still neccessary. don't allow queueing of already
1356 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
1357 widgets which are in the queue can be destroyed safely, handle
1358 requeueing properly.
1359 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
1360 widgets which are in the queue can be destroyed/unrealized safely.
1362 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
1364 * gtkfaq.sgml: add question on multi-threading,
1367 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
1369 * configure.in (cflags_set): preserve automake CFLAGS.
1371 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
1372 and libgdk-1.1.la. this means we need to change certain portions of
1373 the Makefile.am on major/minor version bumps.
1375 * ltmain.sh: the -release option is not required anymore.
1377 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
1378 of the first argument to be of type GtkObject. unconditionally compile
1379 this function. removed __GNUC__ dependancy of the gtk_object_ref and
1380 gtk_object_unref macro wrappers for this function.
1382 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
1386 (gtk_object_data_try_key):
1387 (gtk_object_data_force_id): these are now macros substituting the old
1388 functions. we just use the corresponding g_dataset_* functions for
1389 key->id associations. (this is to assure unique key<->id associations).
1391 1998-05-10 Stefan Jeske <stefan@gtk.org>
1393 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
1396 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
1398 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
1400 * configure.in (LIBS): Try to figure out if this
1401 is Digital Unix and we need -std1 to get the
1404 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
1406 * docs/gtk_tut_it.sgml: update of Italian tutorial
1407 translation from Daniele Canazza <dcanazz@tin.it>
1409 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
1411 * gtk/gtkfeatures.h.in: new file used as template for
1412 * gtk/gtkfeatures.h: new file to define macros indicating newly
1413 introduced features, such as GTK_HAVE_SIGNAL_INIT.
1416 (gtk_signal_emitv_by_name):
1418 new functions to emit signals with an already provided parameter set.
1419 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
1420 (gtk_signal_real_emit): prototype changes, so this functions always
1421 gets its parameters and signal structure as arguments.
1422 (gtk_signal_emit): provide the signal structure and parameter list for
1423 gtk_signal_real_emit.
1424 (gtk_signal_emit_by_name): likewise.
1426 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
1428 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
1429 signal connections through unsetting GTK_CONNECTED.
1430 (gtk_signal_handler_insert): reflect the presence of signal connections
1431 through setting GTK_CONNECTED.
1432 (gtk_signal_real_emit): only check for handler emissions if the object
1433 has the GTK_CONNECTED flag set.
1434 (gtk_signal_handler_pending): don't check for pending handlers if the
1435 GTK_CONNECTED flag is not set for this object.
1437 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
1438 a GtkObject has signal handler connections.
1440 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
1441 set for this object call gtk_signal_handlers_destroy().
1443 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
1444 multiple processing of macro args.
1446 * gtk/gtktypeutils.c:
1449 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
1451 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
1453 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
1454 draw-queue when we are done.
1456 (gtk_widget_queue_draw/_queu_resize): Always return
1457 FALSE and avoid having two idles at the same time.
1459 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
1461 * gtk/gtktext.c: Various fixes to make sure cache
1462 lines are freed if line_start_cache doesn't point to the
1463 beginning of the cache.
1465 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
1467 * style_set improvements for GtkText and GtkEntry
1469 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
1471 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
1474 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
1476 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
1477 data chunks through a global object data structure list. unlink
1478 object data before invoking its destroy function.
1479 (gtk_object_finalize): slight modification to allow usage of object
1480 data during object finalization.
1482 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
1484 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
1485 signal names, e.g. "signal-name" is now an alias for "signal_name".
1486 (gtk_signal_handler_new): allocate handlers through a global handler
1487 structure list, that's faster than memchunks.
1488 (gtk_emission_new): allocate emissions through a global emission
1489 structure list, that's faster than memchunks.
1491 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
1493 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
1495 * ltmain.sh: added a new commandline flag -postfix similar to -release,
1496 but will immediately change the library name.
1499 * gtk/Makefile.am: specify -postfix and -version-info
1501 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
1502 GTK_BINARY_AGE. calculate LT_* variables for libtool.
1504 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
1506 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
1507 background (fg_set -> bg_set confusion).
1509 1998-05-06 Stefan Jeske <stefan@gtk.org>
1511 * gtk/testgtk.c (unselect_all): Removed code that caused an
1514 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
1516 * gtk/gtksignal.c: reimplemented the signal storage system to use a
1517 linear array rather than a hash table.
1518 be carefull *not* to keep any GtkSignal pointers across invokations
1519 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
1520 general code cleanups, made all allocations through memchunks.
1521 (gtk_signal_lookup): we now do the lookup of signals through a key_id
1522 for the signal names to avoid multiple hashing of the signal name on
1523 lookups for the several hirarchy levels of an object.
1525 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
1527 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
1528 to speed things up and remove code duplication.
1530 Reintegrated buffer overflow patches, and added
1531 some extra paranoia.
1533 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
1535 * gdk/gdk.c (gdk_event_translate): A guint * was
1536 being passed where X expected a Keysym *, and
1537 keysyms are long's on Alpha Linux. This was causing
1538 segfaults in Xlib, apparently because of alignment.
1539 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
1541 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
1543 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
1544 set GDK_EXPOSURE_MASK for DrawingAreas
1546 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
1548 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
1549 (superceded by RC file reparsing capabilities)
1551 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
1552 events. (Shouldn't be sent to the InputOnly leader, which
1553 it is now by gdk_event_send_clientmessage_toall
1555 * gtk/testgtk.c: Added extra button to rcfiles test
1556 to send out _GDK_READ_RCFILES events.
1558 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
1560 * gtk/gtkselection.c (gtk_selection_clear): Fixed
1561 reversed conditionals that caused segfault on some
1564 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
1566 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
1567 cast to GTK_OBJECT for gtk_object_ref.
1569 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
1571 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
1572 checking for signal initialization in gtksignal.c.
1574 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
1575 a long debugging period ;)
1577 1998-05-05 Stefan Jeske <stefan@gtk.org>
1579 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
1580 New function to wrap XSetDashes; modified gtkctree.c to use it.
1582 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
1584 * configure.in: Added $x_libs in the other_libraries field in the
1585 check for XShapeCombineMask.
1587 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
1589 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
1591 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
1592 linear array rather than a hash table. it actually speeded up testgtk
1593 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
1594 pointers across invokations of gtk_type_node_next_and_invalidate() and
1595 therefore gtk_type_unique()!
1597 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
1598 inheritance of a class pointer.
1599 (GTK_OBJECT): modifications for speedups.
1600 (GTK_IS_OBJECT): likewise.
1601 (GTK_OBJECT_CLASS): likewise.
1602 (suggested by owen).
1604 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
1606 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
1608 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
1609 since its derivation changed 4 month ago ;(. showed up with the unique
1610 type name checking code in gtk_type_unique().
1612 * random guint->GtkType and macro fixups.
1614 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
1616 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
1617 Configure events that would result in a negative
1620 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
1622 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
1623 "glibconfig.h" and another about writing another IRC
1626 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
1628 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
1629 parameters to log are doubles. Digital Unix apparently
1630 is missing the argument in its prototype.
1632 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
1634 * gtk/gtklabel.c (gtk_label_state_changed): Don't
1635 force a clear until the widget is actually on
1638 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
1640 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
1641 to make this consistent with the gtk-1-0 tree.
1643 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
1645 * configure.in acheader.h gdk/gdkwindow.c
1646 Check for Shape extension both on the client and server
1647 side. (And, more importantly, check for the shape extension
1648 so we may include -lXext even when compiling with --disable-xshm)
1650 Don't set override_redirect on all shaped windows. It isn't
1653 * gdk/gdkwindow.c: Set ->colormap to NULL for root
1654 and foreign windows. Use this to check if we
1655 need to get the colormap from X.
1657 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
1659 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
1660 between the default and the button always in GTK_STATE_NORMAL.
1662 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
1665 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
1667 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
1668 Fix a buffer overflow on pixmaps that claim to have
1669 more than 31 characters per pixel.
1671 (gdk_pixmap_read_string): Don't wrap around strings longer
1672 than half of address space ;-)
1674 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
1675 that were used for printing integers.
1682 int foo (void) { ... }
1684 Even where there were proper prototypes elsewhere.
1686 * gdk/gxid.c (handle_claim_device): Some extra checks.
1687 It isn't safe against being fed bad X id's, but at
1688 least it should be safe against deleting all your
1691 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
1693 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
1694 to set the adjustments value when there is no current emission.
1695 [ Removed by mutual agreement owt 5/3/1998 ]
1697 * gtk/gtksignal.c: added new functions to retrive the number of
1698 existing emissions for a certain signal.
1699 (gtk_signal_n_emissions): new function.
1700 (gtk_signal_n_emissions_by_name): new function.
1702 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
1704 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
1705 set the current focus_child of a container, does proper referencing and
1706 adjusts the vadjustment/hadjustment associated with the focus widget.
1708 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
1709 containers via gtk_container_set_focus_child.
1711 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
1714 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
1715 child since not every child removal goes through this function (this
1716 showed up after gtk_container_set_focus_child() started to reference the
1717 focus_child of a container).
1719 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
1720 of a container from gtk_container_remove into this place.
1722 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
1724 * gtk/gtksignal.c: added new functions to operate on intermediate
1725 function pointers. implemented incremental blocking.
1726 (gtk_signal_disconnect_by_func): new function.
1727 (gtk_signal_handler_block_by_func): new function.
1728 (gtk_signal_handler_unblock_by_func): new function
1730 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
1732 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
1733 Always show the scrollbars when the policy is
1734 GTK_POLICY_ALWAYS...
1736 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
1738 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
1739 "value_changed" if we really passed a new value.
1740 (gtk_adjustment_changed): new function to emit the "changed" signal.
1741 (gtk_adjustment_set_value): new function to emit the "value_changed"
1744 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
1746 * gtk/gtkcombo.c: Further changes to the way the window
1747 is popped up so that it will be compatible with
1748 auto-scrolling in the future.
1750 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
1752 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
1753 the combo-list is empty since that will cause the combo to operate
1754 on a non existing GtkList window.
1755 (gtk_combo_get_pos): provide the combo list with a usfull default
1757 (gtk_combo_popup_button_press): grab the focus.
1758 (gtk_combo_activate): grab the focus.
1760 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
1762 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
1763 function to reset the RC styles for a heirarchy
1765 Clear the window background if necessary in
1766 gtk_window_style_set.
1768 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
1769 rereads all previously read RC files.
1771 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
1772 (Should it just be called gdk_get_toplevels?)
1774 * gtk/testgtk.c: New test to reload RC files.
1776 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
1779 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
1780 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
1781 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
1782 the GTK_ prefix (this solution involved less changes in the
1783 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
1784 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
1785 from lars & stefan to support the derivation of GtkCtree.
1789 initial import of a tree widget derived from gtkclist, courtesy
1790 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
1793 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
1795 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
1797 (gtk_list_insert_items):
1798 (gtk_list_remove_items_internal):
1799 (gtk_list_clear_items):
1800 remove a possible pointer grab, we might get thrown into a loop
1802 (gtk_list_button_press): grab the pointer *before* selecting the child,
1803 because selection of items may cause the lists children to change,
1804 resulting in a grab release.
1805 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
1807 (gtk_list_shutdown): remove all children from the list.
1808 (gtk_real_list_unselect_child):
1809 (gtk_real_list_select_child): *always* put our internal structures into
1810 sane state *before* signal emisions (i.e. list->selection updates prior
1811 to gtk_list_item_[de]select() calls).
1813 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
1814 focused child walks out of the window.
1815 removed CAN_FOCUS for the combo arrow's button since it doesn't react
1816 to keyboard events ("clicked" connection is missing).
1818 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
1820 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
1821 getting colormap for FOREIGN windows to go along with
1822 Raster's fix for visuals.
1827 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
1829 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
1830 Check to catch the case when the viewport fits in either
1831 direction or both, instead of flip-flopping infinitely.
1833 Only show/hide the scrollbars once at the end.
1835 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
1837 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
1838 Include the scrollbars in the foreach call.
1839 (gtk-fortier-980405-0.patch;
1840 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
1843 really should also include its tabs, but that might cause
1844 problems for programs if they
1846 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
1848 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
1849 resize if the size actually changed.
1850 (gtk-johannes-980414-0.patch ;
1851 johannes@nada.kth.se (Johannes Keukelaar) )
1853 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
1855 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
1856 ltmain.sh ltconfig config.sub config.guess:
1858 Reverted back to libtool-1.2 (plus minor patches) so as not to
1859 force the issue for everyone else.
1861 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
1863 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
1864 Updated to libtool 1.2a.
1866 * gtk/gtkclist.c: Draw the in-between lines with style->base
1867 instead of style->white.
1869 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
1871 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
1872 Cache the colormap and children of a window locally
1873 instead of fetching them from the server when needed.
1874 Huge performance difference for creating/destroying
1877 * gtk/gtkstyle.c: Find the depth from the cached
1878 visual, instead of asking the server.
1880 * gtk.m4: Distribute the new version which tries to
1881 figure out what went wrong and give helpful error
1884 * ltmain.sh ltconfig config.sub config.sh:
1885 Updated to libtool 1.2a
1887 * gtk/gtktext.c: Fixed a bug where the drawn level
1888 was being messed up when the text was scrolled
1891 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
1893 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
1894 the filesystem under you (fix from Josh)
1896 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
1898 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
1899 if the viewport already exists before iterating over it, maybe we
1900 haven't been constructed yet.
1902 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
1904 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
1905 the GtkBin widget already has a child.
1907 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
1908 check that child->parent == NULL;
1910 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
1912 * gtk/gtkselection.c (gtk_selection_clear): Only return
1913 FALSE when the clear event is been rejected, not when
1914 widget has already lost the selection. (Which should
1915 only happen when we are setting the selection to another
1918 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
1920 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
1922 Removed the "check visibility after gtk_widget_unparent" bug
1923 in hopefully the last three places.
1925 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
1927 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
1930 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
1932 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
1933 for CAN_FOCUS widgets.
1935 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
1936 adjustments for the table.
1937 (create_list): feature automatic adjustment of the scrolled window to
1938 always contain the focused child.
1939 (create_main_window): keep the focussed button always inside of the
1942 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
1943 adjustments, to contain the allocation of the currently focused child.
1944 (gtk_container_set_focus_hadjustment): new functin to set the
1945 horizontal focus adjustment.
1946 (gtk_container_set_focus_vadjustment): new functin to set the vertical
1949 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
1950 clamp the currents adjustment page into a specific range.
1952 * random GtkType fixups for gtk_*_get_type() functions.
1954 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
1956 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
1957 Account for the fact that gtk_tree_item_remove_subtree
1958 will be called recursively.
1960 Handle removing a collapsed subtree.
1962 (From Andy Dustman <adustman@comstar.net>)
1964 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
1965 root tree when removing items from a non-previously
1968 * gtk/testgtk.c: Added a remove_subtree button.
1970 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
1972 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
1973 before object removing data. This change fixes a bug where
1974 removing the last weak references would cause it to be
1977 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
1979 * gdk/Makefile.am: Removed mostly useless dependency that
1980 was causing problems for SGI's make, when used with
1981 the 'make dist' form of GTK+. (Dependency caused dependencies
1982 to be redone when BUILT_SOURCES changed)
1984 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
1986 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
1989 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
1990 to gtkitem.c so dragging can also work in lists.
1992 * gtk/gtklist.[ch]: Track child enter events and use
1993 those to allow dragging the selection.
1995 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
1997 * gtk/gtktext.c: Try enabling background pixmaps for editable text
1998 widgets. There is a bit of flashing, but not too bad. If you
1999 don't want the flashing, you can always not set a background
2002 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
2004 * gtk/gtktext.c: Fixed a bug where the drawn level
2005 was being messed up when the text was scrolled
2008 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
2010 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
2011 bug: There is no need to set the ExposureMask in the XGrabPointer
2012 (this caused DnD programs to crash).
2014 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
2016 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
2017 field to be of type guint.
2018 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
2020 (gtk_accelerator_table_install): keep a per object list of accelerator
2021 tables that refer to this object.
2022 (gtk_accelerator_table_remove): remove the accelerator table from the
2024 (gtk_accelerator_table_clean): warn if there are any object references
2025 left in an accelerator table upon destruction.
2026 (gtk_accelerator_tables_delete): new function to delete object
2027 references from the accelerator tables associated with this object.
2029 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
2030 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
2031 of an accelerator can be prevented by gtk_signal_emit_stop().
2032 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
2033 so there are no stale pointers in accelerator tables left.
2035 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
2037 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
2038 visible before we unparent it.
2040 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
2042 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
2043 running_timeouts list with the tmp_list link itself, not with a new
2044 GList structure pointing to our link. that would fill up memory and
2045 causes the GList.data fields of the running_timeouts list to point to
2046 GList structures and not GtkTimeoutFunction structures which is a
2048 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
2051 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
2053 * gtk/gtkradiomenuitem.h:
2054 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
2055 ala gtk_radio_button_set_group.
2056 (gtk_radio_menu_item_init): assure that we always have at least a group
2057 that points to self.
2059 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
2060 added g_return_if_fail() statements.
2061 (gtk_radio_button_init): assure that we always have at least a group
2062 that points to self.
2064 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
2066 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
2068 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
2070 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
2071 (Damon Chaplin), which i got wrong when applying Damon's patch the last
2074 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
2076 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
2077 that when we are running with a non-installed colormap,
2078 in 8-bit pseudo-color, we actually are using the system
2079 visual. (Fixes *Bad Match* errors on Digital Unix machines
2080 with multiple 8-bit pseudo-color visuals)
2082 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
2084 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
2085 by whoever thought that randomly changing ints to unsigned int
2086 without reviewing the code was a good idea. It is, btw not
2087 mentioned in the ChangeLog as usual, but I know it was not Elliot
2088 the culprit this time.
2090 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
2092 * Released GTK+ 1.0.0