1 Mon Dec 7 13:38:06 1998 Owen Taylor <otaylor@redhat.com>
3 * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
4 _after_ doing XShmAttach. This should work everywhere,
5 and avoid the need for signal handlers or configure
8 Thu Dec 3 19:58:45 1998 Owen Taylor <otaylor@redhat.com>
10 * gtk/gtkinputdialog.c: Use _add_with_viewport() for
11 scrolled window contents.
13 1998-12-07 Federico Mena Quintero <federico@nuclecu.unam.mx>
15 * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
16 field in the structure.
18 Mon Dec 7 15:15:06 GMT 1998 Tony Gale <gale@gtk.org>
20 * docs/gtk_tut.sgml: Start mass update for GTK 1.1
21 * examples/extract.sh: Look for the best version of awk
22 * examples/extract.awk: Fix FD leak
23 * example/base: minimal example from Tutorial
25 Mon Dec 7 01:29:27 1998 Owen Taylor <otaylor@gtk.org>
27 * gtk/gtkwindow.c: New functions
28 gtk_window_set_transient_for() - set up a "transient for" relationship.
29 gtk_window_set_default_size() - set the initial size of a window
30 distinct from its minimum size.
31 gtk_window_set_geometry_hints() - Allow the user to set
32 minimum, maximum sizes, aspect rations, and gridded geometry,
33 possibly all with respect to a subwidget of the window.
34 These interfaces are still a wee bit experimental.
36 * gdk/gdk.c: Added gdk_window_set_transient_for(),
37 gdk_window_set_geometry_hints(), and gdk_window_set_role().
39 * gdk/gdktypes.h: Added new types for find-grained specification
42 * gtk/testgtk.c: Various changes to tests to test the
45 * gtk/gtkfontsel.c: Squash a few 'const' warnings.
47 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
48 call to gtk_style_set_background() to prevent egregious
51 Mon Dec 7 03:52:01 1998 Tim Janik <timj@gtk.org>
53 * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
54 signals, don't pass the data pointer twice, but swap it with the
55 object pointer (proposed on Nov 30 1998 on gtk-devel-list).
57 Mon Dec 7 03:08:39 1998 Tim Janik <timj@gtk.org>
60 * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
61 internal type info data to the user. if such functionality is required
62 we should provide wrapping accessors, ala gtk_signal_query(). also the
63 GtkTypeInfo structures are dynamically allocated memory portions, so
64 only the type system is really allowed to access that stuff.
66 * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
67 since it destroys the possibility to implement automatic marshaller
68 lookups some day, and it also disables third party code's ability to
69 connect to any signal.
71 Mon Dec 7 01:32:18 1998 Tim Janik <timj@gtk.org>
73 * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
74 Tab key on the entry. the focus shouldn't get lost even if completion
75 is attempted from an empty entry, since an empty entry string does
76 indeed have a valid completion meaning (complete all).
77 (gtk_file_selection_init): cast the gchar array parameter in calls to
78 gtk_clist_new_with_titles() to quit compiler warnings.
79 (check_dir): the no_stat_dirs struct must not be const, since we do
80 indeed modify its contents.
82 * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
87 changed emission allocation, so we don't use a doubly linked list
88 but link ourselfs (singly linked).
89 changed emission hooks, they get the emision parameters passed as
90 well now and are emitted during the actuall signal emission (after
91 the RUN_FIRST class method, but prior to RUN_FIRST handlers).
92 the existing restrictions do still apply to signal emission hooks,
93 i.e. an emission may not be stopped or restarted from an emission hook.
94 due to possibly huge perfomance impacts, frequent use of emision hooks
95 is also not recommended.
96 (gtk_signal_next_and_invalidate): added an
97 assertments which explicits what the code assumes anyways: a
98 maximum amount of 65535 signals.
100 * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
101 gtk_container_foreach_full() should be used instead.
104 deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
105 we provide _full variants.
107 * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
108 gtk_signal_connect_full() for long enough now.
110 1998-12-06 Marius Vollmer <mvo@zagadka.ping.de>
112 * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
113 (gtk_signal_connect_by_type): Allow only no_marshal handlers to
114 connect to signals with a NULL marshaller.
116 * gtk/gtktypeutils.c (gtk_type_get_info): New.
117 gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
119 Sun Dec 6 14:27:35 1998 Stefan Jeske <stefan@gtk.org>
121 * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
122 arrows if wrap == FALSE and interval borders are reached.
124 Sat Dec 5 21:07:09 1998 Owen Taylor <otaylor@gtk.org>
126 * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
127 long-standing typo in aspect ratio computation code.
128 (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
130 Fri Dec 4 01:20:06 1998 Lars Hamann <lars@gtk.org>
132 * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
133 valid row numbers only
134 (toggle_row): check if clist_row != NULL
136 Fri Dec 4 00:50:12 1998 Lars Hamann <lars@gtk.org>
138 * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
141 (gtk_clist_set_column_visibility)
142 (gtk_clist_column_titles_active)
143 (gtk_clist_column_titles_active)
144 (gtk_clist_column_title_passive)
145 (gtk_clist_column_title_active): few additional tests whether
146 column->button != NULL
148 Thu Dec 3 16:49:18 1998 Owen Taylor <otaylor@redhat.com>
150 * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
151 from 10 seconds, so it doesn't abort while users
152 have an ACTION_ASK menu up.
154 * gtk/gtkdnd.c: Hide the icon window between sending a a
155 drop event to the destination and displaying the
156 snapback animation, so that it doesn't hang around
159 Thu Dec 3 16:37:42 1998 Owen Taylor <otaylor@redhat.com>
161 * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
162 for the foreground of cells for CLists in the insensitive
163 state, instead of GTK_STATE_PRELIGHT.
165 Thu Dec 3 06:20:59 1998 Tim Janik <timj@gtk.org>
167 * gtk/gtkwindow.c: moved checks upon focus setting from
168 gtk_window_real_set_focus to gtk_window_set_focus, so we don't
169 emit the signal if unneccessary.
171 * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
172 containers when grabbing focus on a new widget. this is based on
173 a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
175 * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
176 flag, so we take the buttons into consideration upon the next focus
179 * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
182 Wed Dec 2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
184 * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
185 enhancement for true-color displays.
191 docs/gtk-config.1: up to version 1.1.6
193 Wed Dec 2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
195 * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
196 we release it this time
198 Wed Dec 2 01:39:02 1998 Tim Janik <timj@gtk.org>
201 * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
203 * incremented version number to 1.1.6 and made Gtk
204 dependant on GLib 1.1.6.
206 * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
207 from guint16 to gint16, since sizes bigger than 32767 are not supported
208 anyways, and aritmethics with intermediate negative values are possible
211 Tue Dec 1 00:00:04 1998 Tim Janik <timj@gtk.org>
213 * gtk/gtkscrolledwindow.c:
214 implementation of GTK_POLICY_NEVER functionality, added rationales
215 on the policy and size requisition handling at the top.
216 (gtk_scrolled_window_size_request):
217 we assume a default minimum for our child's width and height
218 if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
219 specified the dimension explicitely.
220 (gtk_scrolled_window_size_allocate):
221 do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
223 * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
224 size we require (including the child).
227 (gtk_clist_size_request): report the real size required.
229 * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
231 * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
232 need to be a static variable.
234 Mon Nov 30 22:41:25 1998 Tim Janik <timj@gtk.org>
246 * gtk/gtkscrolledwindow.h:
247 * gtk/gtkscrolledwindow.c:
248 s/scroll_adjustements/scroll_adjustments/
249 s/scroll_adjustments/set_scroll_adjustments/g
251 Tue Dec 1 22:45:58 1998 Lars Hamann <lars@gtk.org>
253 * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
255 * gtk/gtkclist.c (gtk_clist_row_move): new public function.
256 emit a row_move signal
257 (real_row_move): move source_row to dest_row
258 (gtk_clist_swap_rows): use gtk_clist_row_move calls.
259 (gtk_clist_columns_autosize): resize all columns to their optimal
261 * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
263 * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
265 Tue Dec 1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
269 * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
270 Separate vars for each, for granularity.
272 Tue Dec 1 02:19:54 1998 Tim Janik <timj@gtk.org>
274 * gtk/gtkenums.h: fixed a stupid error of mine about the run type
277 1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
279 * {gdk,gtk}/*.c: Make read-only data structures "static const" to
280 allow them to be shared, mainly including (but not limited to) the
281 GtkTypeInfo structures for each class.
283 * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
285 Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
288 Surround debug variable with #ifdef to silence gcc.
290 * gtk/gtknotebook.c (gtk_notebook_reorder_child):
291 Added initializer to quiet gcc warning.
292 Added assertion to check for null pointer deref.
294 Mon Nov 30 10:11:29 1998 Tim Janik <timj@gtk.org>
296 * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
297 system specific includes.
299 * gtk/gtksignal.c: asured that stop and restart emissions are also
300 checked and processed for not connected objects. fixed up restart
301 emission administration. invoke emission hooks after emission, hooks
302 are not supposed to muck around with the current emission, and
303 may also not cause emission restarts. fixed up stop emission
306 Mon Nov 30 06:20:36 1998 Tim Janik <timj@gtk.org>
308 * gtk/testgtk.c: added an event watcher for enter/leave based on
309 signal emission hooks.
311 * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
312 GTK_RUN_NO_HOOKS signal.
315 * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
316 to a signal with gtk_signal_add_emission_hook or
317 gtk_signal_add_emission_hook_full, and can be removed again with
318 gtk_signal_remove_emission_hook.
320 * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
321 an appropriate mask for signal runtypes for a long time now.
322 added GTK_RUN_NO_HOOKS value, which is used to flag signals
323 that do not allow the running of signal hooks.
325 1998-11-26 Michael Krause <m.krause@tu-harburg.de>
327 * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
328 argument a gint: switch_page signal delivers valid page numbers
331 Sun Nov 29 06:12:01 1998 Tim Janik <timj@gtk.org>
333 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment):
336 * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
337 check, people must use gtk_type_init().
338 fixed up type allocation for foreign fundamentals.
341 * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
342 for internal use by containers, that want to assign specific composite
343 names to their composite children.
344 added gtk_widget_get_composite_name() which will return a newly
345 allocated string, containing the composite name of a widget. valid
346 composite names can only be retrived from widgets that have a parent
347 assigned and are flagged as GTK_COMPOSITE_CHILD.
349 * gtk/gtkcontainer.h:
350 * gtk/gtkcontainer.c: added a new function
351 gtk_container_child_default_composite_name() which will return a
352 newly allocated string, holding the composite name of a containers
353 child. a default implementation is provided which will compose the
354 composite name out of the widgets type and its sequential children
355 id. this implementation can be overidden through a new class function
358 Sat Nov 28 10:57:59 1998 Owen Taylor <otaylor@redhat.com>
360 * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
361 expose_event handler - we had two expose_event
364 Sat Nov 28 03:13:42 1998 Tim Janik <timj@gtk.org>
366 * gtk/gtkscrolledwindow.h:
367 * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
368 it inherits from GtkBin now.
370 * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
372 (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
373 added check so a child gets only drawn if it's visible.
376 * gtk/gtkwidget.c: removed gtk_widget_draw_children().
379 * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
382 * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
383 added internal function gtk_widget_reset_shapes() from gtkstyle.c.
386 * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
387 argument, changed callers.
389 * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
390 it will issue a warning now.
392 * gtk/gtkcompat.h: new file to #define aliases for historic
395 * changed 8 function names for consistency and provided aliases to keep
396 source compatibility in gtkcompat.h:
397 (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
398 (gtk_container_set_border_width): renamed from gtk_container_border_width
399 (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
400 (gtk_packer_configure): renamed from gtk_packer_set_child_packing
401 (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
402 (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
403 (gtk_scale_get_value_width): renamed from gtk_scale_value_width
404 (gtk_window_set_position): renamed from gtk_window_position
406 * renamed a few recently added funtions for consistency:
407 (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
408 (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
409 (gtk_progress_configure): renamed from gtk_progress_reconfigure.
411 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
413 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
414 check for existing viewport first, and don't add one if there
417 Sat Nov 28 00:06:49 1998 Tim Janik <timj@gtk.org>
420 * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
421 gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
422 and gtk_widget_unlock_accelerators.
425 * gtk/gtklayout.c: implemented incremental freezing facility.
428 * gtk/gtktext.c: implemented incremental freezing facility.
431 * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
435 deprecated gtk_entry_adjust_scroll().
437 * random GtkType, macro and indentation fixes.
439 Fri Nov 27 22:50:15 1998 Tim Janik <timj@gtk.org>
442 * gtk/gtkclist.c: implemented incremental freezing facility, added
443 a new class member (*refresh)() which takes over the thaw
444 functionality. the clist FROZEN flag got removed on the way.
445 * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
446 and incremental freezing.
448 * gtk/gtkcalendar.c: implemented incremental freezing facility.
450 Fri Nov 27 11:41:27 1998 Raph Levien <raph@gimp.org>
452 * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
453 it still includes the core pointer in gdk_input_devices even
454 if the XInput extension is not present in the X server.
456 Fri Nov 27 12:17:15 1998 Owen Taylor <otaylor@redhat.com>
458 * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
459 get the source widget of a drag.
461 * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
462 to restrict certain targets to the same widget or to
463 the same application.
465 * gtk/testdnd.c: Test gtk_drag_get_source_widget().
467 Thu Nov 26 19:11:46 1998 Lars Hamann <lars@gtk.org>
469 * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
470 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
471 instead of GTK_TYPE_POINTER in signal definitions.
472 (patch from James Henstridge <james@daa.com.au>)
474 Thu Nov 26 18:48:44 1998 Lars Hamann <lars@gtk.org>
476 * gtk/gtkclist.c (set_cell_contents)
477 * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
478 if auto.resize == TRUE
480 * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
481 don't draw tab, if show_tabs == FALSE
482 (bug reports from Alexis Mikhailov / Dave Cole)
483 (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
484 the focus rectangle, not the hole tab.
486 Thu Nov 26 03:18:08 1998 Tim Janik <timj@gtk.org>
491 * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
492 Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
494 * gtk/maketypes.awk: changed underline substitution, so we get
495 GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
496 * gtk/makeenums.pl: likewise.
497 * gtk/gtkctree.c: adapted type names accordingly.
499 Tue Nov 24 11:31:06 1998 Owen Taylor <otaylor@redhat.com>
501 * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
503 * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
504 some code duplication.
506 * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
507 and child widgets when scrolling greater than 32k pixels.
509 * testgtk.c: Modified layout test to test scrolling over
512 Tue Nov 24 11:11:05 1998 Owen Taylor <otaylor@redhat.com>
514 * gtk/gtklayout.[ch]: Fixed up copyright message.
516 * gdk/gdkrgb.c (DM): Make the dither matrix constant
519 * gtk/gtkdnd.c: Make cursor bitmaps const.
521 * gdk/gdk.h gdk/gdkpixmap.c: Added const to
522 gdk_pixmap/bitmap_create_from_data.
524 Tue Nov 24 07:46:09 1998 Tim Janik <timj@gtk.org>
526 * docs/Changes-1.2.txt: added a section on scrolled windows and
529 1998-11-24 Andrew T. Veliath <andrewtv@usa.net>
531 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
532 buttons when setting relief for button items.
533 (gtk_toolbar_set_button_relief): Same.
535 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
537 * gdk/Makefile.am, gtk/Makefile.am:
538 Removed DEFS "+=" mess that breaks recent automakes.
539 INCLUDES is the correct way to add to CFLAGS from Makefile.am.
541 * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
542 gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
543 gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
545 Include "config.h" instead of "../config.h".
546 Now that DEFS works again, automake will automatically pass us
547 the location of config.h in -I.
549 Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
551 * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
552 gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
554 Added layout widget for scrolling arbitrarily big areas.
555 Added plug/socket widgets for interprocess embedding.
557 These widgets still, at some point, need to be
558 made more pure in their use of GDK, as opposed
561 * gtk/testgtk.c: Added test for layout widget.
563 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
565 * gtk/gtkclist.c: (gtk_clist_swap_rows): Bugfix from
566 Brandon Long <blong@fiction.net> - do the right thing with first
567 and last, which are the absolute values of row arguments row1
570 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
572 * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
573 default adjustment (from 0 to 100) instead. I'm not sure if this
574 is the correct level for the fix, but gtk_progress_bar_new()'s
575 original default behavior is restored.
577 1998-11-23 Martin Baulig <martin@home-of-linux.org>
579 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
580 we can check for latest GTK features.
582 1998-11-23 Havoc Pennington <hp@pobox.com>
584 * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
585 (gtk_toolbar_insert_element): When setting relief, also affect
588 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
590 * gtk/gtkobject.h: remove extraneous comma
592 Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
594 * gtk/gtkcontainer.c:
595 (gtk_container_add_with_args):
596 (gtk_container_addv):
597 (gtk_container_add): removed assertements for constructed containers
598 again, since this essentially breaks the "child" arg.
600 * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
601 reference count, we don't need to reference toplevels that already have
604 * gtk/gtkscrolledwindow.c: check for the composites existance in
605 _forall since we might not be already constructed.
607 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
609 * Released GTK+ 1.1.5
611 * configure.in: require GLib 1.1.5
613 Mon Nov 23 03:21:17 1998 Tim Janik <timj@gtk.org>
615 * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
617 (gtk_text_finalize): only unref the current_font if we have
620 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
627 docs/gtk-config.1: Version incremented to 1.1.5
629 Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
631 * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
632 ::text_yalign, ::activity_mode.
634 * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
635 ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
637 (gtk_progress_bar_new):
638 (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
639 (gtk_progress_bar_construct): deprecated.
641 * gtk/gtkvscrollbar.c:
642 (gtk_vscrollbar_draw_step_back):
643 (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
644 gtk_paint_arrow, to be consistent with hscrollbar.
647 added construct args ::hadjustment, ::vadjustment.
648 added args ::line_wrap, ::word_wrap.
649 (gtk_text_class_init): added scroll_adjustments signal.
650 (gtk_text_new): use gtk_widget_new.
651 (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
652 so we don't screw the reference counts and don't leave signals connected.
653 (gtk_text_destroy): disconnect adjustments signals.
654 (gtk_text_finalize): unref adjustments.
656 * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
657 added args ::indent, ::spacing, ::show_stub, ::reorderable,
658 ::use_drag_icons, ::line_style and ::expander_style.
659 (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
662 * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
664 removed ::vadjustment and ::hadjustment args, introduced
665 ::scroll_adjustments signal.
666 added ::shadow_type, ::selection_mode and ::row_height args.
667 added n_columns construct arg.
668 (gtk_clist_construct): call gtk_object_constructed().
669 (gtk_clist_set_row_height): if height is passed as 0,
670 revert to automatic height calculation.
671 (gtk_clist_destroy): before unrefing the adjustments, disconnect our
674 Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
676 * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
678 (gtk_widget_destroy): assert that we only destroy constructed widgets.
680 * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
681 to identify args that may only be used for construction.
682 GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
684 * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
685 at the end if the object is not fully constructed.
686 (gtk_object_newv): likewise.
687 (gtk_object_destroy): assert that we only destroy constructed objects.
688 (gtk_object_init): setup GTK_CONSTRUCTED from the
690 (gtk_object_default_construct): new function to complete default
691 construction of an object by applying missing construtor args with
692 default values of 0, 0.0 or NULL.
693 (gtk_object_constructed): new function to mark an object as being
694 constructed (used from within constructors).
696 * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
697 so it is immediatedly available for the caller.
699 * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
700 the object initilizer (GtkObjectInitFunc takes a second arg now, the
701 real klass), and asure that object initializers may temporarily alter
704 Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
706 * gtk/testgtk.c: change all occourances of gtk_container_add (
707 scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
708 for widget!=(clist, ctree, text, viewport).
711 (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
712 to add children to the scrolled window.
714 * gtk/gtkscrolledwindow.h:
715 * gtk/gtkscrolledwindow.c:
716 changed scrolled_window->viewport to scrolled_window->child, and use
717 gtk_widget_scroll_adjustements() to set the scroll adjustments for the
718 widget, we do not create an additional viewport anymore.
719 added ::hadjustment and ::vadjustment constructor args.
720 (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
721 (gtk_scrolled_window_set_hadjustment):
722 (gtk_scrolled_window_set_vadjustment): new functions that superceed
723 gtk_scrolled_window_construct.
724 (gtk_scrolled_window_construct): deprecated this function.
726 * gtk/gtkhscrollbar.c:
727 * gtk/gtkvscrollbar.c:
730 support a constructor arg "::adjustment", and use gtk_widget_new() for
733 * gtk/gtkrange.c: added ::update_policy arg.
734 (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
735 a default adjustment so this function can be used for derived widgets
736 that depend on the adjustment's existance.
737 (gtk_range_destroy): disconnect the adjustment signal, so we don't
738 get called after we got destroyed, we don't destroy the adjustment
739 in here, because it might have been provided from another widget.
741 * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
742 (gtk_viewport_destroy): same as gtk_range_destroy.
744 * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
747 * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
748 gboolean, indicating whether this widget supports activation.
749 added gtk_widget_scroll_adjustements() to set the scrolling
750 adjustments of a widget.
752 Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
754 * gtk/gtkoptionmenu.c:
755 (gtk_option_menu_remove_contents):
756 (gtk_option_menu_update_contents): removed
757 gtk_container_[un]block_resize() pairs.
760 * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
761 be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
764 * *.c: made deprecated functions issue a message:
765 gtk_clist_set_border, gtk_container_block_resize,
766 gtk_container_unblock_resize, gtk_container_need_resize,
767 gtk_object_class_add_user_signal, gtk_spin_button_construct,
768 gtk_scrolled_window_construct.
769 removed non-functional functions:
770 gtk_container_disable_resize, gtk_container_enable_resize,
771 gtk_clist_set_policy.
773 Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
775 * gtk/gtkbox.c (gtk_box_init):
776 * gtk/gtkdrawingarea.c (gtk_drawing_area_init):
777 * gtk/gtkeventbox.c (gtk_event_box_init):
778 * gtk/gtkfixed.c (gtk_fixed_init):
779 * gtk/gtkframe.c (gtk_frame_init):
780 * gtk/gtkhandlebox.c (gtk_handle_box_init):
781 * gtk/gtkpacker.c (gtk_packer_init):
782 * gtk/gtkmisc.c (gtk_misc_init):
783 * gtk/gtkpreview.c (gtk_preview_init):
784 * gtk/gtkprogress.c (gtk_progress_init):
785 * gtk/gtkprogressbar.c (gtk_progress_bar_init):
786 * gtk/gtkseparator.c (gtk_separator_init):
787 * gtk/gtktable.c (gtk_table_init):
788 * gtk/gtkviewport.c (gtk_viewport_init):
789 * gtk/gtkalignment.c (gtk_alignment_init):
790 removed setting of the GTK_BASIC flag.
794 removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
796 * miscellaneous GtkType and macro fixups.
798 Sat Nov 21 18:53:13 1998 Owen Taylor <otaylor@redhat.com>
800 * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
801 Fixed so it at least works with window managers other
802 than Enlightenment, though it probably needs to be
805 1998-11-21 Andrew T. Veliath <andrewtv@usa.net>
807 * gtk/gtkhandlebox.[ch]: Add shadow_type and
808 gtk_handle_box_set_shadow_type function (plus a
809 GtkHandleBox::shadow arg) to allow configuration of shadow in the
812 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
814 * gtk/gtkcalendar.c: Fix for marking days from
815 Dan Reish <dreish@izzy.net>.
817 Thu Nov 19 00:15:27 1998 Lars Hamann <lars@gtk.org>
819 * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
820 in row_list. (from Samuel Solon <ssolon@usa.net>)
822 * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
823 (gtk_clist_get_column_widget): return column widget
825 Wed Nov 18 11:54:57 1998 Owen Taylor <otaylor@redhat.com>
827 * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
828 that are sent to a toplevel but are not within the
831 * gdk/gdkdnd.c gdk/gdk.h: Added support for a
832 XdndProxy atom which proxies the drag to another window.
834 1998-11-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
836 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
837 that it is not needed.
839 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
840 * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
841 function to correctly determine gdk window position relative to
842 its "root window" - contains check for an Enlightenment
844 * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
845 gdk_window_get_deskrelative_origin to get the origin of dragged
846 handleboxes correctly. Now it works correctly with E.
848 Tue Nov 17 1998 Tuomas Lukka <lukka@iki.fi>
850 * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
851 getting types even though we were not using real type names,
852 just the index. This caused random crashes when more than
853 256 types were defined.
855 1998-11-17 Martin Baulig <martin@home-of-linux.org>
857 * gtk/genmarshal.pl: Put output files in the current directory
858 and not in the $(srcdir) since the VPATH is ignored for built
861 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
864 * gtk/Makefile.am: check for unchanged autogenerated files, so
865 we don't rebuild everything just for adding a new function
867 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
870 gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
871 code thanks to GNOME stock by Eckehard Berns. New function
872 gtk_pixmap_set_build_insensitive to provide ability to turn
875 Tue Nov 17 00:06:29 1998 Lars Hamann <lars@gtk.org>
877 * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
878 new guints : tab_hborder, tab_vborder; marked tab_border deprecated
879 (struct _GtkNotebookPage): new flags : expand, fill, pack
881 * gtk/gtknotebook.h/c
882 (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
884 (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
885 (gtk_notebook_set_tab_hborder): new function. set tab_hborder
886 (gtk_notebook_set_tab_vborder): new function. set tab_vborder
887 (gtk_notebook_query_tab_label): new function. get tab_label widget.
888 (gtk_notebook_set_tab_label): new function. set tab_label widget.
889 (gtk_notebook_set_tab_label_text): new function. set tab_label text.
890 (gtk_notebook_query_menu_label): new function. get tab_label widget.
891 (gtk_notebook_set_menu_label): new function. set tab_label widget.
892 (gtk_notebook_set_menu_label_text): new function. set tab_label text.
893 (gtk_notebook_set_tab_label_packing): new function. set tab_label
894 fill, expand, fill_type
895 (gtk_notebook_query_tab_label_packing): new function. get tab_label
896 fill, expand, fill_type
898 (gtk_notebook_real_page_position): return logic page number
899 (gtk_notebook_search_page) search next/prev logic page
900 (gtk_notebook_update_labels): set logic page number.
901 (gtk_notebook_page_compare): renamed gtk_notebook_find_page
902 (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
903 CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
904 (gtk_notebook_button_press) (gtk_notebook_key_press)
905 (gtk_notebook_focus) (gtk_notebook_pages_allocate)
906 (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
907 use gtk_notebook_search_page
908 (gtk_notebook_page_allocate): fixed allocation bug
909 (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
910 (gtk_notebook_init): unset GTK_NO_WINDOW flag
911 (gtk_notebook_size_request): check whether page->child is visible.
912 changes due to tab h/vborder, homogeneous tabs
913 (gtk_notebook_paint): don't draw invisible tabs
914 (gtk_notebook_switch_page): calculate page_num if it's less than 0
915 (gtk_notebook_append_*) (gtk_notebook_prepend_*)
916 (gtk_notebook_insert_page): removed sanity checks
918 * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
920 Mon Nov 16 15:10:33 1998 Owen Taylor <otaylor@redhat.com>
922 * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
923 (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
925 * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
926 broken. (GtkWidget's default unmap handler should work fine).
927 Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
929 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
931 * gtk/gtkmenubar.[ch]: added shadow_type setting and
932 gtk_menu_bar_set_shadow_type function to allow shadow
933 configurability for menubars
935 * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
938 Mon Nov 16 00:17:53 1998 Tim Janik <timj@gtk.org>
940 * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
941 class creation and parent class' object initializer.
943 1998-11-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
945 * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
946 have assigned it to the window -- there is no point in keeping it around.
947 (gtk_paned_unrealize): No need to destroy the cursor here.
949 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
952 Fri Nov 13 11:22:38 1998 Owen Taylor <otaylor@redhat.com>
954 * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
955 (gtk-blizzard-981005-0.
956 Christopher Blizzard <blizzard@applied-theory.com)
958 * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
959 gdk_pixmap_foreign_new to gdkx.h.
961 Fri Nov 13 16:06:48 1998 Owen Taylor <otaylor@redhat.com>
963 * gtk/Makefile.am: Added rules to generate an empty
964 GTK+ theme called "Default" upon installation.
966 * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
967 of fonts and fontsets.
968 (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
970 * gtk/gtkmain.c: Change test to detect glibc's
971 utf8 based mb* functions to be more specific.
973 * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
976 Fri Nov 13 16:43:36 1998 Lars Hamann <lars@gtk.org>
978 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
980 (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
981 event_window if draw_indicator is set
982 (gtk_toggle_button_set_mode):
984 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
986 * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
987 ensure proper type (SunPro cc complains)
989 * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
991 * gtk/gtktogglebutton.c: use our own draw method so we get proper
992 redraws on active state
994 Thu Nov 12 00:26:13 1998 Lars Hamann <lars@gtk.org>
996 * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
999 * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
1002 Wed Nov 11 19:54:58 1998 Lars Hamann <lars@gtk.org>
1004 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
1005 (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
1006 added ARG_WINDOW_PLACEMENT
1008 * gtk/gtkclist.c (size_allocate_columns): resize column if column
1009 button > column width and auto_resize is set
1010 (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
1011 consider column button width of auto resized columns
1012 (gtk_clist_parent_set): removed
1014 * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
1015 (auto_resize_columns): auto_resize all columns
1016 (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
1017 (column_auto_resize): respect column button width of auto resized
1020 1998-11-10 Martin Baulig <baulig@merkur.uni-trier.de>
1022 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
1023 we can check for latest GTK features.
1025 Mon Nov 9 00:39:20 1998 Lars Hamann <lars@gtk.org>
1027 * gtk/gtkenums.h : new enum GtkCornerType
1028 * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
1030 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
1031 new method to set window_placement.
1032 (gtk_scrolled_window_viewport_allocate)
1033 (gtk_scrolled_window_size_allocate): few changes due to
1035 * gtk/testgtk.c (remove_selection): fixed while loop.
1037 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
1039 * gtk/gtkclist.c: check if column[i].button is valid before calling
1040 gtk_widget_intersect on it in gtk_clist_draw
1042 * gtk/gtkdnd.c: removed unused variable empty_bits
1044 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
1046 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
1047 a boolean (thanks to Elrond for noticing this)
1049 1998-11-07 Jay Cox <jaycox@earthlink.net>
1051 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
1052 * gdk/gdkxid.c: declare xid_ht static
1053 * examples/*/Makefile: get the link ordering right.
1055 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
1057 * gtk/gtkclist.c (gtk_clist_realize): Set background of
1058 title button window to GTK_STATE_NORMAL instead of
1059 GTK_STATE_SELECTED to avoid ugly flicker.
1061 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
1063 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
1064 if adjustments are NULL and list size has changed
1065 (gtk_clist_size_request): return real list requsition,
1066 if adjustments are NULL.
1067 (size_allocate_columns): use button->requisition.with, if column
1069 (list_requisition_width): new function. return full list width.
1070 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
1071 auto create adjustments.
1072 (gtk_clist_motion) (move_vertical) (move_horizontal):
1073 check adjustment != NULL.
1075 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
1077 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
1078 a clear/redraw, not just a redraw, so the focus
1079 gets undrawn properly.
1081 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
1082 Chain to gtk_widget_unrealize() instead of duplicating
1085 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
1087 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
1088 last vestiges of old DND.
1090 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
1092 * gtk/gtkentry.c: Restored inner border to entries,
1093 erase cursors to background image.
1095 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
1097 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
1098 it was identical to paint_flat_box().
1100 * gtk/gtkstyle.c: Coding style fixups.
1102 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
1105 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
1106 Change 'side' for paint_[box/shadow]_gap and paint_extension
1107 to be GtkPositionType instead of a random int.
1109 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
1110 "frame" as detail - an aspectframe should draw identical
1113 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
1115 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
1116 from combine_child_shapes().
1118 * gdk/gdkwindow.c: Merge propagate_shapes() and
1119 propagate_combine_shapes() to remove code duplication.
1121 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
1123 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
1124 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
1125 So allocate some mem if it's not already done.
1127 * clist scrollbar merges from HEAD
1129 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
1131 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
1133 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
1134 of 0x80000000, so we stay within the bounds of a postive signed
1135 int (it broke some compilers)
1137 * gtk/gtkmenushell.c
1138 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
1139 when some of the menuitems are hidden
1141 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
1144 * gtk/gtkwidget.c: add a dummy continue after the line label
1145 next_rect, since some compilers don't like label: }
1147 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
1149 * Okay, so we need the X11R6 keysyms so programs don't have to
1150 worry about them. They don't conflict anyway. Reverted the #ifdef
1153 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
1154 special rule for them (X-derived-headers)
1156 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
1158 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
1159 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
1160 portable, and we really shouldn't be using awk anyway.
1163 * makekeysyms.awk: bye bye
1165 * gtk/gtkaccelgroup.c
1168 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
1170 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
1172 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
1173 and gdkkeysyms.h. Remove those files from CVS.
1175 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
1177 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
1178 of the USE_XIM #ifdef
1180 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1181 even with --include-deps. Slightly different from timj's fix, to avoid
1182 circular dependency with gtkmarshal.c
1187 * gtk/gtkfontsel.[ch]
1190 * gtk/gtkobject.[ch]
1191 * gtk/testgtk.c: merges from HEAD
1194 * gtk/gtkradiomenuitem.c
1195 * gtk/gtktreeitem.c: cleanups
1197 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
1199 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
1201 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
1203 * configure.in: AIX has libpthreads, to make sure you can have
1204 more than one thread. Also add -D_THREAD_SAFE, and reorder
1205 configure.in so CFLAGS doesn't get clobbered when we actually
1208 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
1211 * gtk/testdnd.c: removed unused variable "buf"
1213 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
1215 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
1216 remove_link(), not remove()
1218 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
1220 * gdk/gdkrgb.c: use glib endian stuff
1222 * configure.in: don't need to check for endianness anymore
1224 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
1226 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
1228 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
1229 all toplevel widgets, not toplevel windows. (I.e.,
1230 plugs should be reset)
1232 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
1233 _do_ need to notify the other toplevels - by the time
1234 the get the client messages, the RC file dates will
1237 * gtk/gtkcontainer.h: Added a function call to list
1238 every toplevel widget.
1240 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
1241 Don't send client messages to _every_ window on display!
1243 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
1245 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
1246 when dragging across widgets, only in drags
1249 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
1251 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
1252 Emit "drag_end" signal at end of drag.
1254 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
1256 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
1257 for "gtk-embedded" data currently set by
1258 GtkSocket, and use that to forward client message
1259 on to embedded windows. Only reset our own toplevel -
1260 the others will handle themselves. (Now that
1261 GtkMenus live in GtkWindows)
1263 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
1265 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
1266 client window finding code so that it works with
1267 WM's other than fvwm.
1269 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
1271 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
1272 the "GtkDrawWindow" class, which is a descendent
1273 of the Window class which leaves its background alone.
1274 Essentially, a toplevel drawing area, though it does
1275 allow adding a child.
1277 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
1279 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
1280 merging RC styles. Report new share/themes path for
1281 themes directory. Deref theme engines when appropriate.
1283 * gtk/gtkclist.c: Set all backgrounds in _style_set().
1284 Make sure that pixel for xor_gc is never 0.
1286 * gtk/gtkctree.c: Choose colors for plus/minus more
1287 carefully, in a hopefully style-independent fashion.
1288 (Still needs a bit more work)
1290 * gtk/gtkwidget.c: Don't send expose events to widgets
1291 which are about to be resized and redrawn. (Needs a
1294 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
1295 drawing on tabs for newly allocated, un-sized
1296 pages - we'll get the size wrong.
1298 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
1300 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
1301 up stupidities in last commit.
1303 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
1305 * gtk/gtkwidget.c: When handling queued resizes, account
1306 for handleboxes, where the widget heirarchy is different
1307 than the window heirarchy by just queueing a resize on
1308 the entire handlebox if the detached child is changed.
1310 - Remove widgets from the redraw queue when reparenting,
1311 even if not unrealizing. We queue a resize/redraw in
1314 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
1315 * gtk/gtkstyle.c: added check to see if the widget has been shaped
1316 byt the app via gtk_widget_shape_combine_mask and if it has does
1317 not reset the shape on theme change.
1319 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1321 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1322 want to stat the entries (like /afs), and assume everything in
1323 those directories is a subdirectory.
1325 - When following a path, try to open components even when
1326 we don't find them in their parent's directory to
1327 support automounters.
1329 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
1331 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
1332 now at least compiles again.
1334 * gdk/gdk.c (gdk_event_translate): Don't pass events
1335 on destroyed widgets to the gdk_input layer.
1337 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
1339 * gtk/gtkthemes.c: Use g_module instead of dlopen()
1341 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
1343 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
1344 if we've changed widgets since the expose event
1347 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
1349 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
1350 to restore approximate bin compatibility with the
1351 non-themes branch. (This does break bin compat
1352 within the themes branch.)
1354 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
1356 * gtk/gtklabel.c (gtk_label_set): Eliminate a
1357 gdk_window_clear_area() that snuck in with the
1358 menu underlines merge.
1360 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
1362 * gtk/gtktext.c: Fixed some remaining background drawing,
1363 merges from main branch, cleanups.
1365 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
1367 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
1368 dereference NULL focus tab.
1370 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
1371 functions since we need to both show/hide and
1372 queue a redraw. (There's some duplication of drawing here,
1373 we probably should only be queuing a redraw on the
1374 "value" portion of the scale.)
1376 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
1378 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
1379 into the theme-drawing framework. We do this by making them,
1380 like check/radio-buttons, no-window widgets with subwindows. We
1381 then move the value by calling gtk_widget_queue_clear() and only
1382 redraw the value in our draw() / expose() handler. A virtual
1383 function clear_background is added which queues a clear on the
1384 "background" portion of the widget.
1386 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
1388 * gtk/gtktext.c (mark_bg_gc): Make background colors work
1389 again. (We can't always paint the background with a
1390 paint() function - only do that for selected text)
1392 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
1394 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
1395 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
1397 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
1398 the themes can't be built as part of the same build since
1399 they depend on gdk_imlib.
1401 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
1403 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
1406 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
1409 - Upgrade to libtool-1.2b + patch to add shared library dependencies
1410 for Linux. (Needs to be extended to other platforms where they
1413 - Check for -ldl so this branch should build on all platforms, though
1414 themes will work on all platforms they could work on.
1416 - Use -version and -release simultaneously: sonames stay as they are
1417 in the current scheme, but -lgtk-1.1 changes to -lgtk.
1419 - Added in extra -l flags to library LDFLAGS so we get shared library
1420 dependencies against X libs and -ldl. (But not libgtk against
1421 libgdk or libglib yet, since dependencies against uninstalled
1422 libraries aren't portable)
1424 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
1425 * gtkrc.c - added api calls to find module and theme paths from gtk.
1426 nuked gtk_install_prefix global.
1428 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1429 * fixed gtk_install_prefix global.
1431 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
1432 * added gtk_install_prefix global const variabel to find where gtk is
1435 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1436 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
1439 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1440 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
1442 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
1443 * Fixed minor problem in gtkhandlebox.c with drawing, and some
1444 notebook stuff. Also pixmap theme is now "clean" again.
1446 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
1447 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
1448 queued area resizing once more.
1450 Mon Aug 10 23:09:30 EDT 1998
1451 * Added a few drawing fixes for notebook and other widgets. finished
1452 pixmap theme up to the level that can be supported so far. (need to
1453 add path discovery 9ie where is the rc fiel from - add to pixmap
1454 path so we can get theimages from there too). then we can package
1455 themes. After that need to add to theme seartch path stuff in users
1458 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
1460 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
1461 drawing area, draw in an expose handler.
1463 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
1466 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
1468 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
1469 creation of GC's so that they will be set before
1470 they are used for map events (why are they used there?)
1472 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
1473 be queued in multiple times in the queue.
1475 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
1477 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
1478 clip rects (or do anything) for shadow_none.
1480 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
1482 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
1483 Yes, it was needed. draw() and expose() are _not_
1486 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
1487 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
1489 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1490 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
1491 more baby oooh yeah more more MORE YES YES.
1493 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1494 * hopefully fixed problem wiht togglebuttons acting like
1495 radiobuttons in gtktogglebutton.c
1497 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1498 * fixed another drawing buglet in the frame drawing code (actually
1499 in the clearing code but anyway in gtkstyle.c)
1501 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
1502 * Fixed warning from colorsel widget...
1504 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
1505 * Fixed defautl drawing code to no longer clobber the original style
1506 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
1509 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
1511 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
1513 * gtk/gtktooltips.c: Pass a widget (the window) to the
1514 drawing function instead of the GtkTooltips.
1516 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
1518 * gdk/gdkwindow.c: Abstract out checking for shape
1519 extension into a function.
1521 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
1522 Remove extra callls to gtk_window_draw().
1524 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
1526 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
1528 * themes/th_main.c: Moved messages around so they are
1529 printed before destroying strings.
1531 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
1533 * gdk/gdk.c: Fairly simple implementation of expose compression.
1534 (No GraphicsExpose compression yet, always compress
1535 with the equivalent of XtCompressMultiple - no compression
1536 of Expose events across non-Expose events)
1538 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
1539 Find rectangle bounding two rectangles.
1541 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
1542 in gdk_default_draw_shadow()
1544 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
1545 * Fixed drawing functions to handle switching themes on the fly
1546 gracefully and look decent.
1548 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
1549 * Added all the theme drawing code to all widgets, fixed up minor
1550 nigglies in some widgets when it comes to themes, seem to be
1551 running into some funky behavior with clipping rects in GC's. Too
1552 many files to list here. (all files that now use gtk_paint_* are
1555 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
1557 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
1558 Set up the demo theme so it is loaded from the RC file.
1560 * themes/th_draw.c: Alleviate the hardcoded paths a wee
1561 bit. (use $HOME/themes/)
1563 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
1564 the RC file via dlopen()
1566 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
1568 Internal handling of styles and RC styles pretty much
1569 completely reworked for Theme work.
1572 - Added routines for virtualization of RcStyle and Style handling.
1573 - Temporary "sample" inline theme-engine. (Does nothing
1574 but print out a few messages.
1577 - Made GtkRcStyle public, added flags to tell if particular
1578 colors have been set.
1579 - RC Styles are "transparent", and the final style for
1580 a widget is the composition of all matching styles
1581 - Added pointer to GtkThemeEngine, and gpointer engine_data
1582 to RC style and style.
1583 - Parse "engine" keyword, load the appropriate theme engine
1584 and call the engine's parser.
1587 - Keep a GtkRcStyle * in styles created from Rc Styles.
1588 - Load up images from RC file at style attachment time.
1589 - Call ->engine->foo() at appropriate times.
1590 - Don't use a GCache. All incarnations for a style are
1591 just linked together in a list, depend on the RC style
1592 code to find the existing copy.
1594 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
1596 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
1597 of partial areas. This can be done either relative
1598 to the existing windows (gtk_widget_queue_clear[_area]())
1599 or relative to the future allocation of the widget
1600 (gtk_widget_queue_draw[_area]).
1602 The initial implementation is pretty braindead, but
1605 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
1606 in favor of gtk_widget_queue_clear().
1608 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
1609 flags in favor of gtk_widget_queue_clear()
1611 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
1613 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
1614 handling of partially clipped areas.
1616 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
1618 * gtk/gtkclist.h (struct _GtkCListClass)
1619 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1621 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
1623 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
1624 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
1626 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
1627 "hadjustment" & "vadjustment"
1628 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
1629 set/get_arg functions
1630 (gtk_clist_construct): don't create/adjust scrollbars.
1631 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
1632 to set h/vadjustments
1633 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
1634 to query h/vadjustments
1635 (create_scrollbars): removed.
1636 (create_adjustments): replacement for create_scrollbars
1637 (gtk_clist_new): call gtk_clist_new_with_titles
1638 (gtk_clist_new_with_titles): don't warn on titles == NULL
1639 (move_horizontal): use CLAMP instead
1640 (gtk_clist_set_policy): deprecated method.
1641 use gtk_scrolled_window_set_policy instead.
1642 (vadjustment_value_changed): use clist->vadj.
1643 (adjust_scrollbars): renamed to adjust_adjustments
1644 (adjust_adjustments): former adjust_scrollbars
1645 (gtk_clist_destroy): unref adjustments
1646 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
1647 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
1648 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
1649 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
1650 (gtk_clist_set_row_height) (real_resize_column):
1651 call adjust_adjustments
1652 (gtk_clist_moveto): return if clist has no adjustments yet.
1653 (gtk_clist_parent_set): new GtkWidget::parent_set function.
1654 Autogenerate h/vadjustments if needed.
1655 (move_horizontal) (move_vertical): some cleanups
1657 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
1658 call only gtk_viewport_set_h/vadjustment and let these functions
1660 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
1661 generate a new adjustment if needed
1663 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
1664 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
1666 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1667 queue_resize if visibility of scrollbars changes
1668 (gtk_scrolled_window_remove): only call container_remove with
1669 scrolled_window->viewport automatically if viewport was autogenerated
1670 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
1671 auto create a viewport only if widget does not take h/vadjustments.
1672 (gtk_scrolled_window_construct): don't generate a viewport
1674 (gtk_scrolled_window_forall): call callback with viewport in any case
1675 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
1677 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
1678 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
1682 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
1683 in conjunction with clists/ctrees
1685 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
1686 in conjunction with clists
1688 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
1689 in conjunction with clists
1691 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
1693 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
1694 (gtk_ctree_remove_node): select focus_row if needed
1695 (cell_size_request): only get pixmap size if pixmap != NULL
1697 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
1699 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
1700 GTK_IS_WIDGET (widget):
1702 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
1704 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
1705 focus_row after a remove_row call.
1707 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
1709 * gtk/gtkoptionmenu.c
1710 * gtk/gtkmenushell.c: make option menus work when some of the
1711 menuitems are hidden - previously, option menu would popup too
1714 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
1716 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
1718 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
1720 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
1722 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
1723 (GDK_WLIBS): New variable. Lists extra libraries needed to use
1725 * gtk-config.in (--libs): List $GDK_WLIBS, too.
1727 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1729 * Released GTK+ 1.1.3
1735 * docs/gtk-config.1: updated for v1.1.3
1739 * docs/Makefile.am: Includes new 'make release' as well as
1740 'make sanity'. Also handles html and text creation from html,
1741 and puts them into the distribution
1743 * docs/Makefile.sgml: removed, similar functionality is now in
1744 the Makefile.am file
1746 * docs/.cvsignore: ignore html and text directories
1747 * docs/glib.texi: removed (now in glib dist)
1749 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
1751 * gtk/gtklist.c (gtk_list_remove_items_internal):
1752 free undo_un/selection, unselect list_item before disconnect
1754 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
1756 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
1757 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
1758 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
1759 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
1760 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
1761 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
1762 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
1763 new functions. These functions are signal connected to inserted
1764 list_items, to handle key bindings and GtkItem::de/select/toggle
1767 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
1768 gtk_object_class_add_signals call.
1769 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
1770 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
1771 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
1772 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
1773 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
1774 removed. These functions are handled via connected
1775 gtk_list_signal_* functions now
1777 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
1779 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1780 even with --include-deps:
1781 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
1783 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
1785 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
1786 gtk_object_data_set_destroy to fit the gtkobject.h API.
1788 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
1791 Added support for an extra 'base' filter which an application can
1792 set to restrict the fonts available to the user (e.g. a terminal
1793 program only wants the user to be able to select fixed-width fonts).
1794 The type of font (bitmap/scalable/scaled bitmap) is now
1795 also a part of the filter, so that an application can
1796 request that only scalable fonts are shown.
1797 There are new functions to set the base & user filters.
1798 I've also stopped the up/down key press signals getting
1799 to the clists since the font selection widget handles
1800 them itself. It acted a bit strangely before.
1802 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
1804 * gtk/gtkmain.c (gtk_init): support an environment variable
1805 GTK_MODULES= which takes a colon sperated list of module names
1806 automatically loaded at gtk_init() startup.
1808 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
1810 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1812 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
1814 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
1817 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
1819 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
1822 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
1824 * gtk/gtkfilesel.h: GtkType and macro fixups
1825 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
1826 for the file selection widget to try a completion on (set the
1829 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
1831 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
1832 slight speed improvement and lessens code duplication.
1834 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
1836 * gtk/gtkdnd.c: Always send "drag_leave" to dests
1837 without GTK_DEST_DEFAULT_MOTION.
1839 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
1841 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
1842 on destroyed windows so we clear the XID table properly.
1843 Finish up restructure of return value handling that
1844 was half-done before.
1846 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
1848 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
1849 the window tree more comprehensively, so that we find
1850 client windows hidden under non-toplevels.
1852 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
1854 * gtk/gtkselection.c (gtk_selection_data_set):
1855 Maintain the null-termintation guarantee, even when
1856 data = NULL, length = 0. (Warn on data = NULL,
1859 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
1861 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
1862 into function prototype for drag_data_received.
1864 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
1866 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1868 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
1870 * gtk/gtkclist.c: rearranged some functions
1871 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
1873 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
1874 (gtk_clist_set_border): deprecated function, use
1875 gtk_clist_set_shadow_type instead.
1876 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
1877 (adjust_scrollbars): some cleanups
1878 (select_row) (unselect_row): removed. replaced by equivalent
1879 gtk_signal_emit calls
1880 (add_style_data): removed, use gtk_clist_style_set instead
1881 (gtk_clist_style_set): fill in size data, after style was set.
1882 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
1883 (gtk_clist_set_cell_style): auto_resize columns if needed
1884 (column_auto_resize): resize column if needed for auto_resize
1885 (real_clear): disable auto_resize while list destroy
1886 (resize_column): removed
1888 * gtk/gtkctree.c : (gtk_ctree_remove_node)
1889 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
1890 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
1891 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
1892 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
1893 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
1894 auto_resize columns if needed
1895 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
1896 (real_clear): disable auto_resize while processing the tree
1898 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
1901 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
1903 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
1904 typo - look for right atom on transfer failures.
1906 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
1908 * gtk/gtkwidget.c gtkmarshal.list: Change signal
1909 for drag_data_get to match the use that was being
1910 made of it everywhere else...
1912 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
1914 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
1915 mechanism, that is used for the DND messages.
1917 Removed all the old DND code.
1919 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
1920 get the visual of a given colormap.
1922 * gtk/gtkcolorsel.c: Conversion to new DND, drag
1925 * gdk/gdk.h gdk/gdkdnd.c: The low-level
1926 X oriented portions of drag and drop protocols.
1927 Sending and receiving client messages, and navigating
1930 * gdk/gdkimage.c: added a gdk_flush() when destroying
1931 SHM images to hopefully make it more likely that
1932 X will gracefully handle the segment being destroyed.
1934 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
1935 DND debugging flags.
1937 * gtk/gtkeditable.[ch]: Updates for the selection handling
1940 * gtk/gtkselection.[ch]: Added GtkTargetList, a
1941 refcounted data structure for keeping track of lists
1942 of GdkAtom + information. Removed selection_handler_add
1943 in favor of a "drag_data_get" signal.
1945 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
1946 dependent) parts of the DND protocols, display of drag icons,
1947 drag-under highlighting, and the "default handlers".
1949 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
1950 windows that are used for reliable pointer grabs and
1951 selection handling in the DND code.
1953 * gtk/testdnd.c: New test program for new DND. (Old
1954 DND tests in testgtk still need to be converted.)
1956 * gtk/testselection.c: Use the new selection API.
1958 * docs/dnd_internals: Start at describing how
1959 all the new code works inside.
1961 * docs/Changes-1.2.txt: New file describing source-incompatible
1962 changes in GTK+-1.2.
1964 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
1966 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
1967 the right list node.
1969 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
1970 to the XID table so we can receive events on it.
1972 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
1974 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
1975 to get the timestamp from a generic event.
1977 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
1979 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
1980 that safely adds additional events to a widget's event
1981 mask, even if the widget has previously been realized.
1982 (We can do this, but not remove events from the event
1985 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
1987 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
1988 for AnyPropertyType.
1990 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
1992 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
1995 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
1997 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
2000 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
2002 * gdk/gdk.c (gdk_event_translate): Removed printing
2003 of unknown window lookup warnings. (Made it
2004 a GDK_NOTE) - they happen in many circumstances.
2006 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
2008 * Call XFilterEvent() on events we get for unknown
2009 windows, since it may be the window Xlib uses to
2010 communicate with the IM.
2011 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
2013 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2015 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2018 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
2020 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
2021 message for return_value + GTK_RUN_FIRST.
2023 1998-10-18 Martin Baulig <martin@home-of-linux.org>
2025 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
2026 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
2028 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
2030 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
2031 styles of inserted row
2032 (change_style): change style of focus_row
2034 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
2035 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
2036 to set/get row/cell styles.
2037 (gtk_clist_realize): attach row and cell style, allocate row colors.
2038 (gtk_clist_unrealize): detach row and cell styles.
2039 (get_cell_style): new function. get correct cell style.
2040 (draw_cell_pixmap): new function.
2041 (draw_row): draw cells with row or cell styles.
2042 (row_new): set cell and row styles to NULL.
2043 (row_delete): detach & unref cell and row styles.
2045 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
2046 new functions to attach/detach styles and allocate colors.
2047 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
2048 styles of invisible nodes.
2049 (draw_cell_pixmap): new function.
2050 (get_cell_style): new function. get correct cell style.
2051 (gtk_ctree_draw_expander): new function. draw tree expander.
2052 (gtk_ctree_draw_lines): new function.draw tree lines.
2053 (draw_row): draw cells with row or cell styles.
2054 (row_new): set cell and row styles to NULL.
2055 (row_delete): detach & unref cell and row styles.
2056 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
2057 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
2058 Analogons of GtkCList functions
2059 (gtk_ctree_set_spacing): new function. set spacing between
2060 tree expander and cell contents
2061 (gtk_ctree_set_expander_style): new function. set expander style
2063 (ctree_is_hot_spot): few changes due to draw_row modifications.
2065 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
2067 * gtk/gtkcombo.c: try completion on MOD1-TAB.
2068 Handle case when the combo->list is empty.
2070 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
2072 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
2073 handlers that have not yet been disconnected (finally managed to
2074 trigger the gtk_signal_handler_unref() paranoid warning).
2076 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
2078 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
2079 width and height which is -1 and not -2.
2081 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
2084 * autogen.sh: we need libtool 1.2b now
2086 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
2088 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
2089 and bottom attach arguments as mandatory and readjust the table size
2090 and opposing edge accordingly if required. this way the order in which
2091 the arguments are set doesn't matter.
2093 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
2095 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
2096 message to print out parent class name correctly.
2098 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
2102 removed functions gtk_object_set_data_destroy and
2103 gtk_object_set_data_destroy_by_id.
2104 added functions gtk_object_remove_no_notify and
2105 gtk_object_remove_no_notify_by_id which will remove a certain data
2106 portion without invokation of its destroy notifier, this should only
2107 be used in very controled circumstances.
2109 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
2111 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
2112 size_allocate_title_buttons call
2113 (gtk_clist_realize): changed initial column.window position
2115 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
2117 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
2119 * gtk/gtkctree.c (create_xor_gc): removed
2120 (gtk_ctree_button_press): set correct line_attributes for
2121 clist->xor_gc on drag start
2122 (gtk_ctree_button_release): reset clist->xor_gc
2124 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
2127 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
2128 which were in place to fixup emacs' cc-mode indentation.
2129 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
2130 proper way to achive this and doesn't produce problems for
2131 stupid pragma-related compiler bugs. ;)
2133 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
2135 * gtk/gtkclist.h: new signal GtkCList::resize_column.
2136 * gtk/gtkclist.c (draw_row): don't draw invisible columns
2137 (size_allocate_title_buttons) (size_allocate_columns):
2138 skip invisible columns
2139 (new_column_width): take min/max_width into account
2140 (gtk_clist_button_release) (gtk_clist_motion):
2141 changes due to changed new_column_width function
2142 (LIST_WIDTH): changed define to inline function.
2143 (real_resize_column): class function for resize_column signal
2144 (gtk_clist_motion): fixed autoscrolling for column resizes
2145 (gtk_clist_set_column_visibility): don't hide last visible column,
2146 changed visible arg to gboolean
2147 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
2148 new functions : set min/max width of a column
2149 (gtk_clist_set_column_resizeable): new function : enable/disable
2150 column resize operations by mouse
2152 * gtk/gtkctree.c (draw_row): don't draw invisible columns
2153 (ctree_is_hot_spot): return FALSE if tree_column is invisible
2154 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
2155 tree_column is invisible
2156 (gtk_ctree_find_all_by_row_data)
2157 (gtk_ctree_find_all_by_row_data_custom): new function from
2158 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
2159 GtkCTreeNodes with row->data == data.
2161 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
2163 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
2164 memory (Martin Pool <mbp@wistful.humbug.org.au>).
2166 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
2168 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
2169 should have been guint32. Thanks to Tristan Colgate for finding it.
2171 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2173 * gtk/gtkcalendar.h:
2174 gtk/gtkcalendar.c: More changes:
2175 - The day with focus is now seperated from the day selected
2176 - The day with focus has the xor's line around it
2177 - The selected day is now standard selected style
2178 - The week names and week numbers are now also drawn
2180 - Space now selects the day which has focus
2182 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2184 * gtk/gtkcalendar.h:
2185 gtk/gtkcalendar.c: Some significant changes, including:
2186 - No longer draw focus around entire widget, only around
2187 the day which has focus
2188 - Draw relief around entire widget like originally planned
2189 - Show header and day names by default
2190 - Move data private to the widget out of GtkCalendar struct
2191 and only point to it with a gpointer
2192 - Remove some old unused variables from GtkCalendar struct
2194 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
2196 * docs/gtk_tut.sgml: update I've had sat around:
2197 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
2198 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
2199 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
2201 1998-10-01 Martin Baulig <martin@home-of-linux.org>
2203 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
2205 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
2206 Makes it possible to individually show and hide columns.
2207 (size_allocate_columns): Adapted to keep track of hidden columns.
2208 (size_allocate_title_buttons): Likewise.
2210 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
2212 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
2213 fundamental types, collect an argument of the type returned from
2214 gtk_type_get_varargs_type(). removed the first macro argument which
2215 was just the same as the fundamental type of the *arg passed to
2217 * gtk/gtkarg.c (gtk_args_collect):
2218 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
2220 * gtk/gtktypeutils.h:
2221 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
2222 gtk_type_get_varargs_type() to set and query the varargs collect
2223 type used for a fundamental type, registered outside of Gtk.
2225 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
2226 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
2229 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
2230 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
2233 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
2235 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
2236 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
2237 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
2239 (real_tree_expand) (real_tree_collapse):
2240 don't expand/collapse a leaf
2242 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
2244 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
2245 segfault when looking up a non-existant value name (reported by
2246 Pablo <pcj+gtk@primenet.com>).
2248 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
2250 * gtk/gtkclist.h (gtk_clist_prepend):
2251 * gtk/gtkclist.c (gtk_clist_prepend): new function.
2252 (gtk_clist_insert): added g_return_val_if_fail()
2253 statements. accept a row parameter < 0 or > clist->rows to indicate
2255 (real_clear): first clean up all internal pointers and lists (e.g.
2256 clist->row_list or clist->rows), then delete the distinct rows. this
2257 is required because of destroy notifiers, we need to have all internal
2258 structures updated and be reentrant.
2260 * gtk/gtkcalendar.h:
2261 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
2262 GtkCalendarClass signal methods.
2263 GtkType and macro fixups, put `void' into () prototypes, avoid C++
2264 style comments, indentation fixes, fixed some g_return_if_fail()
2266 (gtk_calendar_paint_header):
2267 (gtk_calendar_paint_day_names):
2268 (gtk_calendar_paint_week_numbers):
2269 (gtk_calendar_paint_main): made these static functions.
2270 (gtk_calendar_select_month):
2271 (gtk_calendar_select_day):
2272 (gtk_calendar_mark_day):
2273 (gtk_calendar_unmark_day):
2274 (gtk_calendar_get_date): signedness corrections, use guints
2276 (gtk_calendar_size_request): removed unused variables.
2278 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
2280 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
2281 widgets in the ->widgets_by_action list that have a callback
2282 defined (not only those with a callback_action!=0).
2284 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2286 * gtk/gtkcalendar.h:
2288 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
2290 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2292 * gtk/gtkcalendar.h:
2294 examples/calendar: Added gtkcalendar widget and demo
2296 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
2298 * gtk/gtkclist.c (gtk_clist_sort):
2300 (gtk_clist_unselect_all):
2301 (gtk_clist_select_all): adde g_return_if_fail() statements.
2303 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
2305 * configure.in: set binary age and interface age to 0.
2307 * gtk/gtkspinbutton.h:
2308 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
2309 gtk_spin_button_configure. gtk_spin_button_construct is still defined
2310 as an alias for gtk_spin_button_configure for source compatibility,
2311 but actuall use is deprecated.
2312 typeness corrections, i.e. gint->gboolean and gint->guint.
2313 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
2314 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
2315 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
2316 GtkSpinButton::adjustment, GtkSpinButton::digits and
2317 GtkSpinButton::climb_rate.
2318 GtkType and macro fixups.
2320 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
2322 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
2323 the *real* geometry position of a window, taken possible window
2324 manager offsets into account.
2325 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
2326 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
2327 it does fail though for amiwm which adds windows to a pseudo root
2328 window, and for icewm by a small offset because it defines the
2329 geometry position whithin its border.
2331 * gtk/testgtk.c: added "saved position" test to figure how
2332 gdk_window_get_root_origin() interacts with window managers (repopup
2333 this window to figure ;).
2335 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
2337 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
2342 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
2343 existing code was buggy in letting ->ref_count==0 pass through and
2344 then failing the living_objs_ht assertion).
2346 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
2347 pixtext fields (Roman Pozlevich <roma@botik.ru>).
2349 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2351 * Released GTK+ 1.1.2
2353 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
2355 * gtk/Makefile.am: use $(PERL) instead of perl
2356 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
2357 also much faster to render.
2359 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
2361 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
2362 the required memory block, rather than allocating it newly from
2363 scratch and doing a full-blown block copy on it.
2365 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
2367 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
2368 binary age 0, interface age 0.
2370 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
2372 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
2374 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
2377 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
2379 * HACKING: indent other than GNU indent should be OK
2382 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
2383 instead of piping through indent. If indent wasn't
2384 found in ./configure don't bother indenting at
2387 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
2389 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
2391 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
2393 * gtk/Makefile.am: use $(AWK) instead of awk
2395 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
2397 * gtk/Makefile.am (gdk_headers):
2398 Remove references to $(top_srcdir).
2399 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
2400 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
2402 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
2404 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
2405 GData*object_data to cure compiler warnings.
2407 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
2411 * mkinstalldirs: updated to latest automake version
2413 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
2415 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
2416 (gtkinclude_HEADERS): ... here.
2417 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
2419 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
2421 * HACKING: added GNU indent, as it is now required to successfully
2422 build gtk+. Should this be detected in autoconf, possibly?
2424 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
2426 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
2427 change library versioning scheme to drop LT_RELEASE
2428 from the -l line, while keeping it in the soname.
2430 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
2432 * configure.in Makefile.in: define a MAINT-like variable REBUILD
2433 which is set if Perl and awk are found, and autogenerated sources
2434 can be rebuilt. Remove the auto-generated sources from
2437 Add dependencies so that the autogenerated sources are
2438 rebuilt if the files they depend on change.
2439 (This unfortunately currently results in the entire
2440 gtk/ directory being rebuilt when any header changes.
2441 Moving all enums to gtkenums.h would fix this.)
2443 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
2445 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
2446 gtk_object_set_data_destroy_by_id functions to set the destroy
2447 function pointer for an existing data portion.
2449 * gtk/gtkobject.c: removed the GtkObjectData implementation and
2450 made all gtk_object_*data* functions use the GLib equivalents.
2452 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
2454 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
2455 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
2456 (widget != NULL), otherwise radio button insertion will not work
2457 -- the widget argument is NULL for the first radio button in the
2460 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
2462 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
2463 of g_new to malloc(), added back in the one place where
2464 it actually mattered. #include <stdlib.h>.
2466 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
2468 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
2470 * gtk/gtkfilesel.c: Keep a list of directories in which we never
2471 want to stat the entries (like /afs), and assume everything in
2472 those directories is a subdirectory.
2474 - When following a path, try to open components even when
2475 we don't find them in their parent's directory to
2476 support automounters.
2478 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
2480 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
2481 a new size from the WM if we asked for the same size
2482 before and our request was rejected.
2484 * gtk/gtkwindow.c (gtk_window_configure_event): If
2485 in response to a request, we get a configure event
2486 with unchanged dimensions, send a synthetic expose
2487 since ForgetGravity won't expose our window.
2489 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
2491 * gtk/gtktext.c (adjust_adj): Change the way we
2492 set the adjustments on resize so that it tries to
2493 keep the beginning of the text in approximately
2496 Removed assertion that the above change made invalid.
2498 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
2500 * gtk/gtktext.c: - Save first_cut_pixels when switching
2501 sizes, so that if we switch to the _same_ size,
2502 we don't move lines around.
2504 - Make sure that the text area always has a size of at
2505 least 1x1, then do all computations when realized.
2507 - When fetching lines in recompute_geometry, make
2508 sure we fetch enough lines to cover the screen.
2510 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2512 * gdk/gdkimage.c: changed g_new()s to malloc()s and
2513 g_free()s to free()s to avoid mixing g_new()s with
2514 free()s. X itself uses free() on some of the
2517 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
2519 * gtkfilesel.c: Maintain a list of directories like
2520 /afs we know contain only directories, and avoid
2521 stat'ing files in those directories. (Because
2522 stat'ing all files in /afs is extremely expensive)
2524 To support automounters, try to open directories,
2525 even if we couldn't find them when reading their
2528 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
2530 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
2531 to allow the same gtk.m4 to work for 1.0.x and
2534 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
2536 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
2537 to set/unset the selectable flag of a single row.
2538 (gtk_clist_get_selectable): new function
2539 to get the state of the selectable flag
2541 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
2542 (gtk_ctree_node_get_selectable): clist analogons
2544 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
2546 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
2549 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
2550 bugs in the 4bit gray cases.
2552 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
2554 * configure.in: added -posix check for NeXTStep
2556 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
2557 a unique buffer for each thread.
2559 * docs/gtk-config.1: clarified copyright
2561 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
2563 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
2565 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
2567 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
2570 * ltconfig: use GLib's ltconfig which honours lcc.
2572 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
2574 * configure.in: comment the -std1 check and save LIBS properly
2576 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2578 * gtk/testrgb.c: #include <stdlib.h>
2580 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
2582 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
2583 When the pointer is grabbed on an input window,
2584 either explicitely, or through press-grab, and
2585 then grabbed on a non-input window, ungrab the
2588 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
2590 * gtk/gtktypeutils.h: don't include any gdk headers.
2591 added structure definitions for GtkTypeObject and GtkTypeClass,
2592 which cover the very basic fields of GtkObject and GtkObjectClass,
2593 which are actually used by the type system.
2595 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
2596 we only refer to our own structures. improved class inheritance
2597 sanity checking a bit.
2599 * gtk/gtkobject.h: placed appropriate comments at the beginnings
2600 of the GtkObject and GtkObjectClass structures, which explain
2601 their relationship to GtkTypeObject and GtkTypeClass.
2603 * gtk/gtktypeutils.h:
2605 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
2606 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
2607 gtkobject.h to gtktypeutils.h.
2611 removed gtk_object_check_cast() and gtk_object_check_class_cast()
2612 functions. to keep source compatibility, we can provide macro aliases
2613 for the corresponding gtk_type_* functions. but then again, people
2614 shouldn't have been using these functions anyways since they were part
2615 of Gtk's internal API.
2617 * gtk/gtktypeutils.h:
2618 * gtk/gtktypeutils.c:
2619 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
2620 functions to check GtkTypeObject and GtkTypeClass types.
2622 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
2625 * gtk/gtkctree.c: `const' fixups.
2628 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
2630 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
2631 if it is passed as NULL.
2633 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
2635 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
2636 big-endian cases. Added a 4bpp packed gray mode (somewhat
2637 incorrectly hardwired to MSB), which should take care of
2640 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
2642 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
2643 GtkSIgnalQuery leak.
2645 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
2647 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
2648 GTK_MENU_DIR_CHILD: check for the existance of
2649 menu_shell->active_menu_item before accessing its child.
2651 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
2652 don't, make a default selection.
2654 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
2656 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
2657 the children with _forall for sensitivity changes and with
2658 _foreach on pure state changes. this fixes a lot of the
2659 old inclusions of internal widgets into _foreach calls.
2661 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
2662 do the work. don't walk the subtrees of first level children.
2664 * gtk/gtktreeitem.c: provide a _forall implementation,
2665 which walks the subtrees as well for include_internals.
2667 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
2668 the submenus as well for include_internals.
2670 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
2671 implemented gtk_scrolled_window_forall, which will iterate over
2672 the viewport and the scrollbars for gtk_container_forall or
2673 iterate over the viewports children for gtk_container_foreach.
2679 * gtk/gtkmenushell.c:
2685 * gtk/gtknotebook.c:
2686 removed the old gtk_*_foreach functions and provided gtk_*_forall.
2688 * gtk/gtknotebook.c:
2689 (gtk_notebook_real_switch_page): expose tabs.
2690 (gtk_notebook_page_num): new function to return the page number
2691 of a distinct child.
2692 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
2693 under some circumstances.
2695 * gtk/gtktreeitem.c:
2696 (gtk_real_tree_item_select):
2697 (gtk_real_tree_item_deselect): major fixes.
2698 some general fixups wrt queue_redraw, and tree items not being
2701 * gtk/gtklistitem.c:
2702 (gtk_real_list_item_select):
2703 (gtk_real_list_item_deselect):
2704 (gtk_real_list_item_toggle):
2705 removed unneccessary queue_redraw calls.
2707 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
2709 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
2710 automatically popup the menu on space bar.
2712 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
2714 * gtk/gtkcontainer.h:
2715 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
2716 method), which acts similar to gtk_container_foreach(), but iterates
2717 over internal children. the GtkContainer::foreach signal vanished in
2718 favour of a new class method ->forall() that optionally includes
2721 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
2722 but a _forall implementation, since all child widgets we have are
2724 (column_button_create): set the parent window prior
2725 to gtk_widget_set_parent().
2728 exchanged all calls to gtk_container_foreach() with
2729 gtk_container_forall().
2732 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
2733 the GtkWidget::composite_child argument. to have a widget created
2734 with the flag initially, two new functions got added to wrap a widgets
2736 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
2738 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
2740 * gtk/gtktooltips.h:
2741 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
2742 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
2743 prior to the first tip being set.
2744 don't put an extra reference on the window, since it is a toplevel,
2745 it wont get destroyed from anywhere else.
2747 * overall macro and GtkType fixups.
2749 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
2751 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
2752 constructs by more forgiving ones. (Does anyone else feel like
2753 the color selector need rewriting?).
2755 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2757 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2760 * gtk/gtkmenu.c: Modified reference counting so
2761 that the reference count from the toplevel that
2762 the menu creates to the menu is invisible to the
2765 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
2767 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
2768 conversion selection logic, so Suns and other big-endian
2769 machines should get faster conv routines. This is also the
2770 point where 4bpp gray and 1bpp are checked in, although I
2771 wouldn't be surprised if 1bpp is a little buggy. This is
2772 synchronized with the 0.0.7 release of GdkRgb.
2775 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
2776 appropriate change to the Makefile.am
2778 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
2780 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
2781 which is good for images that scroll (makes the dither patterns
2784 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
2787 (gdk_colormap_new) (gdk_colormap_get_system):
2788 quell some warnings with g_hash_table_new
2790 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
2791 when we're done with it
2793 * gtk/itemfactory.c:
2794 (gtk_item_factory_from_path):
2795 (gtk_item_factory_create_item): free some strings
2798 (gtk_label_finalize): free label->pattern when done
2799 (gtk_label_parse_uline): null terminate pattern string, delete
2800 some duplicated code
2802 * gtk/testthreads.c: add #include <unistd.h> for sleep()
2804 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
2806 * gtk/gtktext.c (recompute_geometry): Make sure the
2807 mark we pass to line start is the beginning of a
2808 real line, not a wrapped one.
2810 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
2812 * gtk/gtktext.c: Reference count the fonts used in
2815 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
2816 freeing functions to be more consistent, and more
2817 convenient; leave the old names in for backwards compatibility.
2819 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
2820 allocations in pseudo-color colormaps to greatly reduce
2821 calls to XAllocColor. Keep a per-colormap hashtable to
2822 speed up finding if there is an already-allocated matching
2825 * gdk/gdkcolor.c: Don't just match read the system colormap
2826 when the colormap is created, but synchronize our copy
2827 with the system colormap periodically.
2829 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
2830 Change XIM constants names to match GDK conventions
2832 * gtk/testinput.c: Allow the drawing area to get the focus.
2834 * gtk/testgtk.c: Change around the Text test to demonstrates
2835 multiple fonts, use more colors.
2837 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
2838 so they work after a widget is unrealized.
2840 * gtk/gtktext.[ch]: Remove the requirement that the text
2841 widget be realized before adding text (!) Allocate colors
2842 ourself, instead of requiring the caller allocate them.
2843 Allow changing styles to work properly by keeping track
2844 of the values for a certain property are default or
2847 * gtk/gtkmenu.h: Added some comments.
2849 * gtk/gtkentry.c: Changes to match XIM constants.
2851 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
2852 for adding keyed data to drawables. (Uses g_dataset
2855 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
2856 when creating an XPM - store them as user data for the GdkPixmap,
2857 so we don't leak colors when we create pixmaps from XPM's.
2859 Allocate memory for color information in large blocks instead of
2860 as many little pieces.
2862 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
2864 * gdk/gdkrgb.c: removed some unused variables
2867 * gtk/gtkmain.c: #if 0'd out some unused code
2869 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
2871 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
2879 * gtk/gtkcontainer.h:
2880 * gtk/gtkcontainer.c:
2885 (gtk_container_add_with_args):
2886 (gtk_container_child_set):
2887 begin the parameter elipsis (...) after the first argument name. this
2888 change is source compatible, since it was always required, even as NULL.
2890 (gtk_object_args_collect):
2891 (gtk_container_child_args_collect):
2892 changed prototypes to pass first_arg_name, also, pass va_list variable
2893 by value (portability concerns). callers changed.
2895 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
2896 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
2897 can't pass va_list variables by reference for portability reasons.
2899 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
2901 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
2902 get_visual calls, so that it gets implicitly initialized.
2904 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
2905 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
2906 such as GtkCTree function name changes
2908 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
2911 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
2912 binary version check, returning a static string for error descriptions,
2915 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
2917 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
2918 computed our geometry yet, and if not, ignore the request.
2920 * gtk/gtktext.c (correct_cache_insert): Fiddled around
2921 some more. All the bug-test codes seem to work at once
2922 now. (fingers crossed...)
2924 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
2926 * gdk/gdkrgb.c: silly visual fixes
2928 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
2931 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
2933 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
2934 anything if the event's window is not the bin window.
2935 (gtk_handle_box_motion): Likewise.
2937 1998-08-19 Raph Levien <raph@gimp.org>
2939 * gtk/testgtk.c (create_color_preview): pushed the colormap and
2940 visual so it would work better with GdkRgb.
2942 1998-08-19 Raph Levien <raph@gimp.org>
2944 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
2945 4bpp static_color mode (for vga displays). Also fixed a '64' value
2946 in the dither matrix, which was causing one pixel out of 16k to be
2949 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
2950 most of the contents. This is an API change - any apps that relied
2951 on the internal structure of GtkPreview will need some change -
2952 most notably in the use of reserved colors. The Gimp needed
2953 changes in this regard.
2955 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
2957 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
2958 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
2959 --g-fatal-warnings), noticed by miguel.
2961 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
2963 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
2971 * gtk/gtkitemfactory.c:
2972 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
2974 * gtk/gtkselection.c:
2978 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
2980 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
2982 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
2984 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
2985 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
2986 in case of show_tabs == NULL
2988 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
2990 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
2991 to --g-fatal-warnings again. this option now causes log levels of
2992 WARNING and CRITICAL to abort().
3001 * gtk/gtktypeutils.c:
3007 * gtk/gtkselection.c:
3010 * gtk/gtktreeitem.c:
3011 did a global search&replace to substitute g_print() calls with
3012 g_message(). libraries shouldn't use printf(), g_print() or
3013 g_printerr() at all.
3014 a bunch of the replacements should probably be wrapped into the
3015 G{D|T}K_NOTE() macros, so they are special cased for debugging
3016 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
3019 * gdk/gdkdnd.c: added copyright notice.
3021 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
3023 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
3024 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
3025 running a PII 233. It's synced with the 0.0.5 release of
3028 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
3031 (struct _GtkCListClass): new class methods:
3032 (sort_list) (insert_row) (remove_row) (set_cell_contents)
3035 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3036 removed and replaced by (set_cell_contents)
3037 (set_cell_contents): function for class method set_cell_contents
3038 (real_insert_row): function for class method insert_row
3039 (real_remoce_row): function for class method remove_row
3040 (real_sort_list): function for class method sort_list
3041 (default_compare): fix to avoid problems with cell types != CELL_TEXT
3044 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
3045 (gtk_ctree_node_is_visible): new function to return visibility state
3047 (gtk_ctree_show_stub): new function to set visibility of root stub
3050 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
3051 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
3052 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
3053 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
3054 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
3055 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
3056 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
3057 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
3058 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
3059 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
3060 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
3061 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
3062 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
3063 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
3064 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
3065 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
3066 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
3067 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
3068 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
3071 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3072 removed and replaced by (set_cell_contents)
3073 (set_cell_contents): function for class method set_cell_contents
3074 (real_insert_row): function for class method insert_row
3075 (real_remoce_row): function for class method remove_row
3076 (real_sort_list): function for class method sort_list
3077 (default_compare): removed. CTree now also compares two GtkCTreeRows
3078 instead of two GtkCTreeNodes.
3079 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
3081 (real_tree_expand) (real_tree_collapse): fix for refcounting of
3083 (set_node_info): call gtk_ctree_node_set_pixtext instead of
3084 manipulating the row itself
3086 * gtk/testgtk.c: use renamed functions of GtkCTree.
3087 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
3090 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
3092 * gtk/gtkmain.c: removed gtk_input_add_interp.
3094 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
3096 (gtk_editable_get_event_time): fix default: case.
3098 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
3100 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
3103 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
3106 * various minor compilation cleanups, such as bogus commas in
3107 enums and similar things.
3109 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
3111 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
3114 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3116 * NEWS: updated for 1.1.2
3117 * gtk+.spec: version = 1.1.2
3119 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
3121 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
3122 times. changed --gtk-with-module to --gtk-module at owen's request.
3124 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
3126 * gtk/gtkmain.c (gtk_init): feature a new commandline option
3127 --gtk-with-module=<module> that allows additional loading and
3128 initialization of modules (e.g. GLE).
3130 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
3132 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
3133 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
3135 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
3136 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
3137 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
3138 different *-fatal-* arguments now. this needs to be revised and
3139 compressed to a reasonable amount of arguments.
3141 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
3143 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
3144 "--g-fatal-warnings" causes fatal warnings in GLib,
3145 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
3146 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
3148 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
3149 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
3153 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
3154 since automake doesn't support per target _CFLAGS yet.
3156 * configure.in: require GLib 1.1.3.
3158 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
3160 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
3161 to set a callback to test if a node in drag can be dropped onto
3162 it's currrent location.
3163 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
3164 to change the pointer when a drag destination is not allowed.
3166 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
3168 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
3169 speeds up the 565_d case by about 25% total. Thanks Ray!
3171 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
3173 * Changed GtkSignalFunc back to () from (void). (again!)
3175 * Added file README.cvs-commits
3177 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
3179 * docs/gtk_tut.sgml:
3180 - Tidy up of the menufactory example from
3181 Andy Kahn <kahn@zk3.dec.com>
3182 - New section on Range Widgets from
3183 David Huggins-Daines <bn711@freenet.carleton.ca>
3184 - Started a new section on 'Advanced Event and Signal
3185 Handling' - used an email from Owen.
3186 - New appendix on Gdk Event Types
3187 - Added the tictactoe full example code to the
3188 'Code Examples' appendix
3190 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
3192 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
3193 to calculate all the metrics at once of a string, including
3194 things which weren't calculated before.
3196 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
3197 MenuItem type, that when put as the first thing in a
3198 menu, makes the menu tearoff. Currently drawn as a
3201 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
3202 "hide_on_activate" to the MenuItem class structure to allow
3203 check and radio buttons to be changed with <Space> without
3206 * gtk/gtkitemfactory.c:
3207 - Create a AccelGroup for each MenuShell we create.
3208 - If an '_' appears before a character 'c' in the path,
3209 then make 'c' an accelerator in the menu's accel group,
3210 and if the menuitem is menubar <alt>C an accelerator
3211 in the itemfactory's accel group. Double '__' inserts
3214 * gtk/gtklabel.[ch]: Add support for a pattern arg -
3215 which is a string. If an '_' appears in this string,
3216 the corresponding position in the label is underlined.
3218 Add gtk_label_parse_uline() convenience function which
3219 takes a string with embedded underlines, sets the
3220 pattern and label, and returns the accelerator keyval.
3222 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
3223 Instead, they create a GtkWindow and add themselves
3224 to that. (When torn off, another new feature, they
3225 create another GtkWindow to hold the torn off menu)
3227 New function gtk_menu_set_tearoff_state()
3229 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
3230 Added action signals for keyboard navigation of menus.
3232 * gtk/gtkmenushell.c: Key press handler which activates
3233 bindings for navigation, and accelerators, for handling
3234 underline accelerators. Exported functions to select
3235 and activate menu items in a menushell.
3237 * gtk/testgtk.c: Added a new "Item Factory" test which
3238 tests GtkItemFactory and the new keyboard navigation
3241 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
3243 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
3244 external functions have been called. also relookup nodes after
3245 this function has been invoked.
3247 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
3249 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
3250 beginning of Text when creating the Text widget.
3252 * gtk/testgtk.c: Grab the focus on the text widget so
3253 as to test out the above.
3255 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
3257 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
3258 ::changed is a notification signal and should have no default
3259 handler. A complete redraw of the Text widget does _not_ need to
3260 be done on every text insertion.
3262 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
3263 (gtk-abilleira-072198-patch)
3265 * gtk/gtkwindow.[ch]:
3266 Add gtk_window_set_modal() which sets a flag; when
3267 set the window does a gtk_grab_add() when the window
3268 is shown, and a gtk_grab_remove() when the window
3271 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
3272 that case will run "Create Dir","Delete File" and "Rename File"
3273 dialogs as modal too.
3275 * gtk/testgtk.c: Added a button with an example of creating modal
3276 dialog boxes. Including file selection and color selection standard
3279 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
3281 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
3282 Removed CAN_FOCUS by default from scrollbars, button
3283 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
3284 (Scrollbar definitely good change, toolbar bit more questionable)
3286 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
3288 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
3291 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
3293 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
3294 added all logical operations to gc->function.
3296 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
3298 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
3299 gtk_widget_size_allocate instead of gtk_widget_queue_resize
3300 if the visibility state of a scrollbar changes.
3302 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
3304 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
3306 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
3308 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
3309 gtk_clist_merge and gtk_clist_mergesort. :)
3311 1998-08-06 Martin Baulig <martin@home-of-linux.org>
3313 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
3314 `mergesort' -> `my_mergesort'.
3316 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
3318 * gtk/gtkenums.h: new enum GtkSortType.
3322 Added sorting capabilities to GtkCList. New APIs :
3323 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
3324 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
3325 New internal functions : default_compare, merge, mergesort.
3327 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
3329 (gtk_clist_insert): Modified to handle gtk_clist_append and the
3330 auto sort flag. Changed the return value from void to gint to
3331 return the row number where the element was actually inserted.
3333 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
3337 Removed the auto_sort flag, replaced ctree->node_compare with
3338 clist->compare all over the place, modified default_compare to
3339 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
3340 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
3342 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
3343 sorting. The lists can be sorted by a column by clicking the
3344 corresponding title button.
3346 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3348 * Released GTK+ 1.1.1
3350 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
3354 (gtk_ctree_find): changed to return a gboolean
3355 (gtk_ctree_insert_gnode): new function for recursive insertion of a
3357 (gtk_ctree_real_select_recursive): fix for extended selection
3358 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
3359 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
3361 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
3363 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
3364 GLib version 1.1.1 is now required at minimum.
3366 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
3367 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
3369 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
3371 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
3372 cursor before (possibly) deleting the cursor's text
3375 * gtk/gtktext.c (correct_cache_delete): More attempts
3376 to clean the line-start cache up after inserting
3377 a property. Among other things, make sure to
3378 fix up text->current_line, since it is used to
3379 refetch the changed lines.
3381 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
3383 * gtk/gtktable.[ch]: Empty rows/columns of the table
3384 should not have been marked as being able to shrink.
3385 (Fixes problem with shrinking scrollbarless GIMP canvases)
3387 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3389 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
3390 function to find a row by its data pointer using a custom
3391 comparison function.
3393 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
3395 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
3396 this fixes a bug when the whole widget is made non-sesitive
3397 the buttons weren't redrawn
3399 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
3401 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
3402 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
3403 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
3405 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
3407 * gdk/gdkwindow.c (gdk_window_reparent): Change
3408 window_private->parent pointer when reparenting.
3410 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
3412 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
3413 with the standalone release.
3415 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
3417 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
3418 (gtk_clist_button_release) (new_column_width): Few fixes for
3419 column resize. Store resize column in clist->drag_pos.
3421 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
3425 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
3426 to GtkCTreeNode *node.
3428 * gtk/gtklist.h : added extended selection mode and auto scrolling.
3429 (struct _GtkList): removed unneeded variables timer, button,
3430 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
3431 Added new variables undo_selection, undo_unselection, last_focus_child,
3432 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
3433 drag_selection, add_mode.
3436 (gtk_list_extend_selection), (gtk_list_start_selection),
3437 (gtk_list_end_selection), (gtk_list_select_all),
3438 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
3439 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
3440 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
3441 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
3444 (gtk_list_enter_notify): removed, because auto scrolling now works
3445 with gtk_list_motion_notify
3447 New functions, needed for auto scrolling :
3448 (gtk_list_motion_notify) (gtk_list_move_focus_child)
3450 New functions for extended selection support :
3451 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
3452 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
3453 (gtk_list_focus_lost)
3455 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
3456 function to support auto scrolling, and avoid out-of-sync errors in
3457 case auf GTK_SELECTION_BROWSE
3458 (gtk_list_focus): modified gtk_container_focus function to avoid out
3459 off sync errors in case auf GTK_SELECTION_EXTENDED
3462 * gtk/gtklistitem.c :
3463 New signal functions for key binding support :
3464 (toggle_focus_row), (select_all), (list_item), (unselect_all)
3465 (list_item), (undo_selection), (start_selection), (end_selection)
3466 (extend_selection), (scroll_horizontal), (scroll_vertical),
3468 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
3469 GDK_KEY_RELEASE_MASK
3470 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
3473 (gtk_combo_popup_button_press): grab pointer for combo->list
3474 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
3475 (gtk_combo_list_key_press): take care of which child HAS_GRAB
3476 (gtk_comb_init): don't connect combo->button with button_release_event
3478 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
3480 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
3482 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
3484 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
3485 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
3486 with horizontal and vertical autoscrolling.
3488 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3490 * gtk/docs/man: new directory
3491 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
3493 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
3495 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
3498 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
3500 * docs/gtk_tut.sgml: GtkTree section from
3501 David Huggins-Daines <bn711@freenet.carleton.ca>,
3502 add a GtkText widget example
3503 * examples/text/* example/tree/* : new examples for the
3504 GtkTree and GtkText widgets
3505 * docs/gtk_tut.sgml: added an appendix to hold complete code
3506 examples that aren't in a full form elsewhere in the
3507 tutorial (e.g. scribble)
3509 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3511 * Released GTK+ 1.1.0
3513 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
3515 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
3516 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
3518 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
3520 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
3521 values are looked up.
3523 * gtk/gtktypeutils.h:
3524 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
3525 gtk_type_enums_find_value to lookup enum values.
3528 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
3529 GtkCTreeExpansionType. fixed signal creations to pass the enum
3530 types not just the base type GTK_TYPE_ENUM.
3533 * gtk/gtkclist.c: fixed signal creations to pass the real enum
3534 types not just the base type GTK_TYPE_ENUM.
3536 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
3539 Began cleanup, e.g. use gtk_widget_show_all instead of many
3540 gtk_widget_show's. Completely rewrote the button box sample
3541 (only one window now). Removed "miscellaneous" button.
3543 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
3545 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
3546 Fixed wrong allocation for GTK_BUTTONBOX_END.
3547 (allocation->x => allocation->y)
3549 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
3551 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
3552 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
3554 * gtk/gtkctree.c (real_tree_select): added check to avoid double
3556 (gtk_ctree_button_press)
3557 (gtk_ctree_button_release): fix for pointer grab
3559 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
3561 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
3562 Fixed initialization problem - dirty memory could cause problems.
3563 Also checked that bitmapped fonts can be scaled when showing the
3566 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
3568 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
3569 (gtk_ctree_sort_recursive): test for node != NULL
3570 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
3571 (gtk_ctree_last) : added sanity checks
3572 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
3574 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
3576 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
3578 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
3580 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
3582 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
3584 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
3585 to check out binding priorities. someone should really write
3586 gtkrc-mode for emacs.
3588 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
3589 * gtk/testgtk.c (main): and move it here ;). this test says something
3590 on release of C-9. (this works only if the mouse pointer is on a
3591 spinbutton and there is no focus widget).
3595 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
3596 gtk_rc_parse_priority to parse path priority types.
3598 feature binding parsing.
3600 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
3602 * gtk/gtkbindings.h:
3603 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
3604 feature binding parsing in rc files.
3605 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
3606 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
3607 order the bindings with lowest priority first.
3609 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
3611 * gdk/gdkrgb.c: actually builds and runs properly on big
3612 endian machines now, because we #include config.h. Also
3613 fixed up a compile error in the WORDS_BIGENDIAN case in
3614 gdk_rgb_convert_565_gray. I made the fix by looking at
3615 patterns in the other code; Raph can you verify this?
3617 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
3620 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
3622 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
3623 (tree_toggle_expansion) (real_select/unselect_row)
3624 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
3626 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
3628 * gtk/gtktext.c (new_text_property): We free things from
3629 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
3631 * Fix up line start cache when splitting a property
3634 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
3636 * gtk/gtkwidget.c: restauration => restoration
3638 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
3640 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
3641 hasn't been created yet, don't do the lookup.
3643 1998-07-20 Raph Levien <raph@acm.org>
3645 * gdk/gdkrgb.c: More cleanups in the config process.
3647 1998-07-20 Raph Levien <raph@acm.org>
3649 * gdkrgb.c: Fixed minor config bug preventing big-endian
3650 architectures from working.
3652 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
3654 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
3655 activity indicator. It is settable now as a fraction of the
3656 total width/height using gtk_progress_bar_set_activity_blocks.
3657 Renamed gtk_progress_bar_set_number_of_blocks to
3658 gtk_progress_bar_set_discrete_blocks.
3660 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
3662 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
3663 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
3664 tree to specified depth
3665 (gtk_ctree_expand_to_depth): expand tree to specified depth
3666 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
3668 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
3670 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
3671 of GTK_CLIST_ADD_MOD
3672 * gtk/testgtk.c (add1000_clist): changed pixmap
3674 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
3677 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
3679 * gtk/gtktypeutils.h:
3680 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
3682 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
3684 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
3685 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
3686 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
3688 (gtk_notebook_reorder_child): new funktion to change position of a
3690 (gtk_notebook_draw_arrow): draw left/right arrow with
3691 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
3693 * gtk/gtkstyle.c (gtk_default_draw_arrow):
3694 added GTK_SHADOW_ETCHED_IN/OUT
3696 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
3698 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
3699 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
3700 Introduced generic GtkProgress widget. Derived GtkProgressBar from
3701 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
3703 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
3705 * gtk/gtktypeutils.h
3706 * gtk/gtkitemfactory.h: explicitly specify void in prototype
3708 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
3710 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
3713 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
3715 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
3716 sropped the approach of copying all signal specific data into a
3717 GtkHandlerInfo structure. we rather keep the signal data on the stack
3718 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
3719 avoids multiple lookups of the signal pointer and works savely together
3720 with destroy notifiers of handlers.
3722 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
3723 someone destroys the entry on the ::activate signal.
3725 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
3727 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
3728 instead of ypad (typo).
3729 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
3730 border around the allocation).
3731 (gtk_arrow_init): the static requisition needs to be setup in this
3732 function rather than gtk_widget_new(), so arrow creation works without
3733 the gtk_arrow_new() constructing.
3734 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
3736 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
3737 implementation for GtkWidget::size_request, so size requisition for
3738 simple statically sized widgets like GtkArrow works.
3740 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
3742 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
3743 prepend -I@libdir@/glib/include anymore, since glib-config handles
3744 it; --libs strips out redundant -L<path>'s properly (there was
3745 code in there to do it before, but it didn't work)
3747 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
3749 * gtk/gtknotebook.h:
3750 * gtk/gtknotebook.c: signdness corrections all ove the place.
3751 implementation of object arguments: GtkNotebook::enable_popup,
3752 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
3753 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
3754 begun implementation of child args, we have GtkNotebook::tab_label, but
3755 GtkNotebook::menu_label and GtkNotebook::position still lack the
3757 (gtk_notebook_remove_page):
3758 (gtk_notebook_current_page): allow negative indices (-1) as alias for
3762 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
3763 arguments GtkEntry::max_length and GtkEntry::visibility.
3764 (gtk_entry_adjust_scroll): queue a redraw.
3766 * gtk/gtkeditable.h:
3767 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
3768 object arguments GtkEditable::text_position and GtkEditable::editable.
3769 new (action) signal GtkEditable::set_editable.
3770 provide a default handler for GtkEditable::changed that queues a redraw.
3773 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
3776 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
3778 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
3779 case of drag_target == NULL
3780 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
3781 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
3782 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
3783 gtk_dir_selection_file_button): fix due to changes in clist's
3786 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
3789 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
3790 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
3791 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
3792 to be gint16s rather than guint16s, since that's what the code expected
3793 (for a long time actually).
3795 * gtk/gtkviewport.c:
3796 added support for object arguments: GtkViewport::shadow_type,
3797 GtkViewport::vadjustment and GtkViewport::hadjustment.
3798 (gtk_viewport_add): chain gtk_bin_add.
3800 * gtk/gtkscrolledwindow.c:
3801 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
3802 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
3804 * gtk/gtkadjustment.h:
3805 * gtk/gtkadjustment.c:
3810 * gtk/gtkscrolledwindow.h:
3811 * gtk/gtkscrolledwindow.c:
3812 * gtk/gtkviewport.h:
3813 * gtk/gtkviewport.c:
3814 GtkType and macro fixups.
3816 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
3820 Added focus handling, horizontal and vertical autoscrolling,
3821 extended Selection Mode, key bindings
3822 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
3823 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
3824 Removed gtk_ctree_clear.
3828 Added focus handling, horizontal and vertical autoscrolling,
3829 extended Selection Mode, key bindings
3831 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
3833 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
3834 source tree. For more information on GdkRgb, please see:
3835 http://www.levien.com/gdkrgb/
3837 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
3838 bothers me slightly that the feature is in gdk, and this file is
3839 in gtk, but it's probably ok.
3841 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
3844 * gdk/gdkrgb.h: Added this module.
3846 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
3848 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
3850 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
3852 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
3853 to this function. it needs to relookup the signal multiple times.
3854 this fixes spurious segfaults that could show up with signal intensive
3855 code, when classes are created during a pending emission (which is
3858 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
3860 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
3861 child if it isn't a label.
3863 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
3866 * gtk/gtkseparator.h:
3867 * gtk/gtkhseparator.h:
3868 * gtk/gtkvseparator.h: macro and GtkType fixups.
3870 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
3872 * gtk/testgtk.c (create_cursors): display the current cursor name.
3874 * gtk/gtktypeutils.h:
3875 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
3876 the fundamental type definition. the GtkArg union now only covers
3877 the required storage types for argument values. adapted the GTK_VALUE_*
3878 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
3880 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
3881 code, fixed int/float collection. fixed a bug in the sanity checking
3882 code for GtkObjects.
3884 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
3885 argument collection code.
3887 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
3888 macros when distinguishing the return type.
3890 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
3892 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
3893 is not NULL before trying to g_list_remove the child. A patch
3894 from Michael Lausch.
3896 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
3898 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
3899 collection (always casted to doubles upon argument passing).
3901 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
3903 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
3904 object_init_func for derived objects with the object's ->klass field
3905 still pointing to the corresponding base class, otherwise overridden
3906 class functions could get called with partly-initialized objects.
3907 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
3909 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
3913 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
3915 * gtk/gtkcontainer.h:
3916 * gtk/gtkcontainer.c:
3917 (gtk_container_child_arg_get_info): new function which wraps
3920 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
3922 * gtk/gtkcontainer.c:
3923 (gtk_container_arg_get):
3924 (gtk_container_arg_set):
3926 (gtk_object_arg_set):
3927 (gtk_object_arg_get):
3928 strictly check for the associated get/set arg functions. if an
3929 arg is readable or writable, the associated class functions *must*
3932 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
3934 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
3935 padding into account if there is an accelerator.
3937 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
3939 * gtk/gtkcontainer.c:
3940 (gtk_container_add_with_args): collect the arguments with
3941 gtk_container_child_args_collect, not through gtk_object_args_collect.
3942 (gtk_container_child_set): likewise.
3944 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
3946 * gtk/gtktypeutils.h:
3947 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
3948 which is derived from GTK_TYPE_STRING.
3950 * gtk/gtkbindings.c: reworked the argument type handling.
3952 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3954 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
3955 so that it seems to allow normal operation in those modes,
3956 although you will only see black (GIMP toolbar now pops up,
3957 just don't create a new image and GIMP now works in 4 bit.)
3959 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3961 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
3962 array, which was too low (?)
3964 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
3966 * gtk/gtkcontainer.h:
3967 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
3968 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
3969 we now export a new function gtk_container_child_args_collect().
3970 for consistency with the object arguments, a few functions got renamed:
3971 gtk_container_child_arg_get -> gtk_container_child_get,
3972 gtk_container_child_arg_set -> gtk_container_child_set,
3973 gtk_container_child_arg_getv -> gtk_container_child_getv,
3974 gtk_container_child_arg_setv -> gtk_container_child_setv,
3975 gtk_container_add_with_argv -> gtk_container_addv.
3976 note, gtk_container_add_with_args() remained, because its equivalent
3977 would be gtk_container_add(,, ...) which would break all existing code.
3978 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
3979 we expect the `arg_name' argument to be a const static string now.
3980 (gtk_container_get_child_arg_type): function removed.
3982 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
3984 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
3985 this is a static inline function that collects command line arguments
3986 from a va_list. this file can just be included in all places that
3987 need this functionality.
3990 * gtk/gtkarg.c: new files which implement most of the argument
3991 handling stuff from gtkobject.c. also collected a few more
3992 gtk_arg_* utility functions from else places.
3995 * gtk/gtkobject.c: moved most of the argument handling code into
3996 gtkarg.c. we now export gtk_object_args_collect() as a non-public
3997 method with a blind va_list pointer.
3998 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
3999 const static string now.
4000 (gtk_object_get_arg_type): function got removed.
4004 (gtk_widget_new): adaptions for gtk_object_args_collect().
4006 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
4007 fundamental type name so as to have a valid prefix, e.g. "bool"->
4008 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
4009 though that should probably be something like GtkNone since the
4010 type itself is called GTK_TYPE_NONE.
4011 even the internal type names need to avoid name clashes and must live
4012 in their own namespace, several code portions rely on that.
4013 we should relly have typedefs such as typedef gchar* GtkString; so the
4014 fundamental type names can be used for code dumpers just like with all
4017 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
4019 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
4020 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
4021 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
4023 (gtk_button_paint): set the background for prelighted buttons with
4024 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
4025 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
4026 the shadow type (otherwise we get strange shadows for coloured buttons).
4027 (gtk_button_set_relief): queue a redraw after changing
4029 (gtk_button_class_init):
4030 (gtk_button_set_arg):
4031 (gtk_button_get_arg): added object argument "GtkButton::relief".
4033 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
4035 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
4038 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
4039 GTK_BIN (button)->child to button->child to keep source compatibility.
4041 * gtk/gtkoptionmenu.c:
4043 * gtkcheckbutton.c: don't refer to button->child, but
4044 GTK_BIN (button)->child instead.
4046 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
4048 * docs/gtkfaq.sgml: update anon CVS info
4050 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
4052 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
4056 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
4059 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
4061 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
4062 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
4064 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
4066 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
4068 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
4071 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
4073 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
4074 error that prevented signal to entry addition for signals with
4077 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
4079 * ltconfig: fix for properly detecting shared lib support on
4080 SunPro cc (taken from libtool 1.2.a)
4082 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
4084 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
4086 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
4088 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
4089 rc set pattern is favoured, this is needed for overriding of style
4090 patterns with subsequently parsed rc files.
4092 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
4094 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
4097 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
4099 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
4101 (gtk_accelerator_name): add "<Release>" to the accelerator name if
4104 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
4107 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
4108 default handler for key-release events, which checks for activation
4109 of GDK_RELEASE_MASK key bindings.
4111 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
4113 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
4115 * gtk/gtkarrow.h: GtkType and macro fixups.
4116 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
4117 "GtkArrow::shadow_type".
4119 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
4121 * gtk/gtkalignment.h:
4122 * gtk/gtkbin.h: GtkType and macro fixups.
4124 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
4125 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
4126 GtkAlignment::xscale, GtkAlignment::yscale.
4128 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
4130 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
4131 fucntions from all parent types upon class initialization.
4133 * gtk/gtkcontainer.c:
4134 (gtk_container_get_type): announce gtk_container_base_class_init to
4136 (gtk_container_base_class_init): new function to feature base class
4138 (gtk_container_get_child_arg):
4139 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
4140 and set_child_arg methods of the class indicated through the argument
4144 (gtk_object_base_class_init): new function to feature base class
4146 (gtk_object_init_type): announce gtk_object_base_class_init to the type
4148 (gtk_object_class_init): setup the get_arg and set_arg pointers for
4151 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
4152 instead of bothering the type system with this.
4154 * gtk/gtkaccellabel.c:
4156 * gtk/gtkradiobutton.c:
4158 * gtk/gtktogglebutton.c:
4159 * gtk/gtktipsquery.c:
4166 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
4167 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
4168 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
4169 arg functions to take a GtkObject argument.
4171 gtk/gtkadjustment.c:
4174 gtk/gtkaspectframe.c:
4177 gtk/gtkcheckbutton.c:
4178 gtk/gtkcheckmenuitem.c:
4186 gtk/gtkdrawingarea.c:
4200 gtk/gtkhscrollbar.c:
4201 gtk/gtkhseparator.c:
4203 gtk/gtkinputdialog.c:
4205 gtk/gtkitemfactory.c:
4213 gtk/gtkoptionmenu.c:
4217 gtk/gtkprogressbar.c:
4218 gtk/gtkradiomenuitem.c:
4223 gtk/gtkscrolledwindow.c:
4225 gtk/gtkspinbutton.c:
4238 gtk/gtkvscrollbar.c:
4239 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
4240 match the modified GtkTypeInfo structure.
4242 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
4244 * gtk/testgtk.c: use rand() instead of random() for portability
4246 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
4250 * gdk/gdk.c: use native Xlib XConvertCase if it's available
4252 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
4254 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
4255 XConvertCase() functionality from X11R6 on X11R5 systems.
4257 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
4259 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
4260 gdk_string_height, gdk_char_height to retrieve the exact
4263 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
4265 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
4266 by Stefan Mars <mars@lysator.liu.se>
4267 * examples/clist/clist.c examples/clist/Makefile: example code
4268 for GtkCList widget from the Tutorial
4270 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
4272 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
4273 if the container is not visible, we might be a toplevel! this holds
4274 for all other base container implementations as well, that are
4275 candidates to derive toplevels from. in general the resizing code will
4276 care about visibility itself.
4277 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
4278 * gtk/gtkbox.c (gtk_box_remove): likewise.
4280 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
4281 gtk_window_set_hints(), since we haven't calculated the new position
4284 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
4285 *mask are alway initialized in a sane way, regardless of the return
4288 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
4290 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
4291 to gtk_container_child_arg_setv, but takes a variable argument list.
4292 new function gtk_container_get_child_arg_type, which is needed by
4293 gtk_object_collect_args.
4295 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
4296 take a function pointer to figure the argument type.
4297 adapted callers to pass gtk_object_get_arg_type.
4298 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
4299 gtk_object_get_arg_type..
4303 (gtk_packer_reorder_child): new function to change the packing order
4305 (gtk_packer_size_request):
4306 (gtk_packer_size_allocate): take container->border_width into acount.
4308 * gtk/gtkpacker.c: implemented widget arguments:
4309 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
4310 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
4311 implemented child arguments:
4312 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
4313 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
4314 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
4315 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
4317 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
4320 * gtk/gtkeventbox.h:
4321 * gtk/gtkeventbox.c: GtkType and macro fixups.
4323 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
4324 sensitivity of an entry.
4326 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
4327 for insensitive base and text.
4329 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
4330 widget state dependent.
4331 (gtk_entry_style_set): likewise.
4332 (gtk_entry_state_changed): set background color on state changes.
4333 (gtk_entry_draw_text): for non selected text, use state dependent
4336 * gtk/gtktogglebutton.c: support for widget arguments
4337 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
4339 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
4341 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
4342 code for 1.0.x-like parameters. Changed internal interface of
4343 gtk_spin_button_real_spin. Several fixes to avoid emission of
4344 "value_changed" where possible.
4346 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
4348 * gtk-boxed.defs: s/GkWidget/GtkWidget/
4350 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
4352 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
4353 to select the resize_mode for the idle-labels container.
4356 * gtk/gtkframe.c: GtkType and macro corrections.
4358 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
4359 support widget argument "GtkRadioButton::group".
4361 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
4363 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
4364 unconditionally if resize_mode has changed.
4366 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
4367 GTK_RESIZE_QUEUE on the scrolled window.
4368 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
4370 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
4372 * gtk/gtkcontainer.h:
4373 * gtk/gtkcontainer.c:
4374 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
4375 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
4376 (gtk_container_queue_resize): new function to queue a container for
4377 a *size* reallocation (doesn't affect its position, and thus its
4378 parent is left untouched usually).
4379 (gtk_container_get_resize_container): new function to retrive the next
4380 most resize container which is not itself queued for a resize.
4381 (gtk_container_idle_sizer): new function to carefully process the
4382 container_resize_queue since it can change during invokation of
4383 gtk_container_check_resize().
4384 (gtk_container_resize_children): total rework of this function to
4385 properly handle resize containers. makes a lot of assumptions whitch
4386 are stated in the comments.
4388 * gtk/gtkcontainer.c:
4389 (gtk_container_real_check_resize): only requeue ourselves if we are not
4391 (gtk_container_clear_resize_widgets): care for automatic deletion of our
4392 resize_widgets list on size_allocate through a handler connection.
4394 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
4395 focus and default widget of a window, so to take the burden from
4396 gtk_widget_unparent.
4398 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
4399 to be clever, but actually messed up the resize_children logic and
4400 caused unneccessary allocations on its whole branch. besides this,
4401 it messed up the display by not invoking a redraw after the allocation.
4403 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
4404 that it is the child again that is queued for a resize.
4405 (gtk_table_attach): likewise.
4406 (gtk_table_remove): likewise.
4408 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4410 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
4411 gtk_entry_adjust_scroll. Required if you change the cursor
4412 position and want to sync it up with your code (Midnight Commander
4413 gtk front end needs this).
4415 * gtk/gtktable.c: Deal with tables that have size 0, 0.
4417 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
4419 * examples/README.1ST: new file to explain how the
4420 code examples should be extracted from the tutorial.
4422 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
4424 * gtk/gtkctree.c (draw_row): added new "line style"
4425 GTK_CTREE_LINES_TABBED
4426 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
4427 search the glist pointer of an GtkCTreeRow
4429 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
4431 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
4432 from, and clean up, the dependencies. Generate to intermediate
4433 files to prevent problems with Ctrl-C.
4435 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
4437 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
4439 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
4440 - Bug fix for precision problem causing occasional double emission
4441 of "value_changed" signal (hopefully works now).
4442 - API change (should be binary compatible) :
4443 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
4444 Modified cursor example appropriately.
4445 To spin by something other than step_/page_increment, use
4446 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
4447 - Made GTK_SHADOW_NONE the default. ;)
4448 - Fixed casting of GtkAdjustment* to GtkWidget* in
4449 gtk_spin_button_value_changed.
4451 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
4453 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
4454 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
4455 resize widget list before queuing the container for a new reize.
4456 (gtk_container_need_resize): changed return value to FALSE, since this
4457 used to indicate that no further resizes are needed.
4458 (gtk_container_set_arg):
4459 (gtk_container_get_arg):
4460 (gtk_container_class_init): implemented GtkContainer::resize_mode
4463 (gtk_container_resize_children): when we walk up the tree of a resize
4464 widget we need to stop if we are the current parent.
4466 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
4467 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
4468 (gtk_widget_hide_all): retrive the toplevel widget from via
4469 gtk_widget_get_resize_container().
4471 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
4473 * gtk/gtklist.c (gtk_list_button_press): Only respond
4474 to selection with button 1. This allows context-sensitive
4475 menus to work correctly.
4477 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
4479 * gtk/gtkaccelgroup.c:
4480 * gtk/gtkbindings.c:
4481 * gtk/gtkcontainer.c:
4482 * gtk/gtkitemfactory.c:
4485 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
4486 g_quark_from_static_string calls to save memory.
4488 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
4489 function _after_ the new data has been setup.
4490 minor changes to object data functions to feature the GQuark type.
4492 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
4494 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
4497 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
4499 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
4500 to be more readable perl, to spit out stuff that looks
4501 more like readable C, and to pipe output through indent
4502 so output looks a lot like readable C. No functional
4505 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
4507 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
4508 necessary when switching to a masked pixmap. (Based on a patch
4509 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
4511 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
4513 * gtk/gtkeditable.[ch]: Added action signals for keyboard
4514 bindings. (move_cursor, kill_word, etc, etc, etc).
4516 removed the time argument from
4517 gtk_editable_cut/copy/paste_clipboard (source but not
4518 binary incompatible...) Instead get time from
4519 gtk_get_current_event ().
4521 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
4524 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
4526 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
4528 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
4529 parent class to GtkNotebookClass when splitting the widget in
4530 two. Also updated some comments.
4532 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
4533 button without a font selected.
4535 Fixed bug in set_font_name - I hadn't updated the code to
4536 search for the style in the font_style clist - it was
4537 still assuming the style row was equal to its index,
4538 but it isn't any more.
4540 Changed 'Reset' button on filter page to 'Clear Filter'.
4541 Deleted old code relating to the old 'Filter Fonts' toggle
4542 Updated some comments.
4543 Cleared 'Actual Fontname' if no font is set.
4545 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
4546 destroying the GtkFontSelection instead of the
4547 GtkFontSelectionDialog.
4549 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
4551 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
4552 flag to make all warnings fatal errors.
4554 * gtk/testthreads.c: moved <pthreads.h> include inside
4557 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
4559 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
4560 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
4562 - Added new function gtk_container_set_resize_mode() for
4563 fine-grained control of where resize-queueing is done.
4565 - Removed GtkContainer::need_resize and GtkWindow::move_resize
4566 - Added GtkContainer::check_resize to replace need_resize.
4568 - Added function gtk_container_check_resize() to trigger
4569 queued resizes, and gtk_container_resize_children() to
4570 Figure which children need to be size-allocated. (logic
4571 moved from gtkwindow.c)
4573 - Reorganized code in gtkwindow.c
4575 - Set the resize-mode for viewports so that resizes within
4576 a viewport don't propagate out of it.
4578 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
4580 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
4582 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
4583 g_return_val_if_fail, because the function *does* return a value.
4585 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
4587 * gtk/gtkaccellabel.h:
4588 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
4589 request the size of the accelerator portion of an accel label.
4590 (gtk_accel_label_size_request): don't request for the accelerators size.
4591 (gtk_accel_label_expose_event): only draw the accelerator if we got
4594 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
4595 width from children.
4597 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
4598 object (after removal has been requested) check if there is still an
4599 accelerator remaining to avoid adding two accelerators on an object.
4600 this can happen for locked accelerators (or accelerator-frozen widgets).
4601 (gtk_menu_size_request): feature childrens accelerator width in size
4604 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
4605 gtk_widget_freeze_accelerators() for dynamically created menu items.
4608 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
4609 which will return a handler_id > 0 if the specified function is pending
4613 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
4614 a signal handler function to stop accelerator addition.
4615 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
4616 which will prevent (undo) any accelerators from being added to or
4617 removed from a widget.
4619 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
4621 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
4622 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
4623 acceleration, new API gtk_spin_button_set_snap_to_ticks.
4625 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
4628 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
4629 the current GdkWindow the pointer is on if there is any.
4631 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
4632 and one column, so we don't construction logic at all. changed a few
4633 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
4636 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
4637 portion, added an additional check for parent != widget.
4639 * more GtkType and macro fixups.
4641 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4643 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
4644 "clip" parameter, which is the clipping rectangle to use. This
4645 eliminates the extremely annoying flicker when exposing parts of
4648 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
4650 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
4653 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
4655 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
4656 != 0 on the argument.
4659 * gtk/gtktable.c: new function gtk_table_resize() which allowes
4660 shrinking and expanding of tables. implementation of widget arguments
4661 and child arguments. many signedness corrections.
4663 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
4665 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
4666 not only the child, otherwise we might end up taking away other
4667 childrens space after the resize.
4669 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
4670 an unknown menu path from any source, that path must always be flagged
4671 as "modified", since we don't really know whether it has its default
4676 * gtk/gtknotebook.c:
4677 * gtk/gtkmenushell.c:
4681 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
4684 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
4685 arguments. implemented child arguments.
4687 * more GtkType and macro fixups.
4689 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
4691 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
4693 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
4694 and gtk_clist_get_hadjustment.
4696 * gtk/gtkcontainer.c:
4697 implementation of children arguments, new class member functions
4698 (child_type), (get_child_arg) and (set_child_arg) plus a new field
4700 (gtk_container_child_type): new function which returns the type of a
4701 child that the container expects for its next addition.
4702 (gtk_container_add_child_arg_type): new function to introduce a new
4703 child argument at class creation time.
4704 (gtk_container_query_child_args): new function to query all child
4705 arguments that are supported by a container class.
4706 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
4708 (gtk_container_child_arg_setv): new function to set a child argument for
4709 a certain container and child combination.
4710 (gtk_container_add_with_args):
4711 (gtk_container_add_with_argv): new functions to feature addition of a
4712 new child in combination with the setting of certain child arguments.
4714 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
4715 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
4716 this should really be done through class cretion hooks some day.
4718 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
4722 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
4723 follow the gtk convention for lower case variable names (important
4724 for language wrappers and widget arguments), and made them guint : 16.
4726 * examples/packer/pack.c: adaptions for the case converted GtkPacker
4729 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
4731 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
4732 change the character pair for single line comments.
4733 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
4734 GtkItemFactoryClass.
4735 (gtk_item_factory_parse_rc_string): likewise.
4737 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
4739 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
4740 lists from the klass structure to a static structure
4741 in gtkfontsel.c; cleans up global the namespace.
4743 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
4745 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
4746 bug with /*< skip >*/ and remove warning.
4748 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
4750 * gtk/Makefile.am: Made the gtkmarshal.* generation
4751 rules maintainer-only.
4753 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
4755 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
4756 gtk/Makefile.am gtk/makenums.pl
4758 Removed out the G_ENUM/FLAGS mechanism in favor
4759 of a perl script that parses the standard headers
4760 (with occasional /*< nick=foo >*/ style overrides)
4761 and extracts the enumerations.
4763 gtk/maketypes.awk: Small improvments to the
4764 translation of names. (Avoid splitting gc into
4767 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
4769 * gtk/gtk.h gtk/gtkfontsel.[ch]:
4770 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
4772 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
4775 - Restored gtk_entry_adjust_scroll to static
4776 - Changed text positioning code so that we always
4777 display as large a portion of the text as possible.
4779 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
4781 * gtk/gtktext.c (gtk_text_finalize): Free internal
4782 structures of text widget. Also, unreference pixmaps
4785 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
4787 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
4788 3.3.1 bug workaround to number keys starting at 1.
4790 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
4792 * docs/gtk_tut.sgml: Fixed urls for complete example
4793 source for scribble+widget-writing examples.
4795 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
4797 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
4798 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
4799 specs of the form c #abcdef [ more keys ] properly.
4801 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
4803 * gtkspinbutton.h gtkspinbutton.c testgtk.c
4804 (gtk_spin_button_set_shadow_type):
4805 New API to set the shadow type of the arrow panel.
4807 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
4809 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
4810 code for drawing the child in two places at once. Unfortunately,
4811 not only does it not work anymore (because reparenting has
4812 been fixed), but it also triggers reparent/expose loops
4815 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
4816 an unecessary unrealize.
4818 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
4820 * gdk/gdkwindow.c (gdk_window_reparent): Update the
4821 old and new parents' child window lists properly.
4823 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
4826 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
4827 and GtkSideType, to be consistent with the rest of Gtk's enum
4828 definitions. wrapped the enum definitions with the G_ eunm wrappers.
4829 spelled out the GTK_ANCHOR_* enum values, since single letters don't
4830 work out corectly as nick-names (left the old values as aliases).
4831 some signdness corrections (border-width, spacing), could stand more.
4833 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4835 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
4838 * examples/packer/pack.c, examples/packer/Makefile: Added
4841 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
4843 * gtk/gtktext.c (remove_cache_line): Fixed broken
4846 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
4847 Check bounds before deleting.
4849 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
4851 * autogen.sh: Support ACLOCAL_FLAGS
4853 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
4855 * gtk-config.in: Added missing quotes.
4857 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
4859 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
4861 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
4863 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
4864 G_COMPILED_WITH_DEBUGGING.
4866 * configure.in (fd_set): Explain check better.
4868 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
4869 the version from which gtk+'s libtool forked. Needed for people
4870 who use post-1.2 alphas of libtool.
4872 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
4874 * glib/* Moved to glib module
4876 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
4877 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
4879 configuration changes for the above:
4881 - Use AM_PATH_GLIB by default to find glib; also accept
4882 a --with-glib option for using an uninstalled glib.
4884 - Put --enable-debug information into config.h so
4885 that we rebuild when it changes. (was in glibconfig.h)
4887 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
4889 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
4891 * gtk/gtknotebook.h (struct _GtkNotebookClass):
4892 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
4893 added missing argument (according to Joseph Coleman's bug report)
4895 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
4896 function to fix notebook focus handling
4898 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
4900 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
4901 glib/gutils.c glib/testglib.c glib/gdataset.c
4902 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
4903 gtk/gtktext.c gtk/gtkbindings.c:
4905 renamed g_const_pointer => gconstpointer
4907 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
4909 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
4910 invoked with (NULL, NULL); (this worked sometime ago).
4912 * gtk/gtktypeutils.h:
4913 * gtk/gtktypeutils.c: enum and flags type creation can now be done
4914 through gtk_type_register_enum() and gtk_type_register_flags(),
4915 which allow to specify the enum value arrays directly.
4916 the NULL terminated value arrays can be retrived through
4917 gtk_type_enum_get_values() and gtk_type_flags_get_values();
4918 (gtk_type_children_types): new function to query derived types.
4920 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
4922 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4923 environment to genmarshal.pl.
4924 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
4925 rule), and removed it where not needed (in the dependencies).
4927 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
4929 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
4931 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
4932 was just g_direct_hash.
4934 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
4936 * configure.in: x_libs=, not $x_libs=. Enough said.
4937 (Case only hit for --disable-xshm)
4939 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
4941 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
4942 when testing for X libraries, don't replace them. Because
4943 the user might have specified the path to the X libraries
4944 themself before running configure.
4946 * examples/**.c: Changed all gpointer * to gpointer
4948 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4950 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
4951 fleur_cursor field. Now the cursor is created/destroyed on demand
4952 by the routines that need it.
4954 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
4955 (gtk_handle_box_motion): The fleur cursor is created and destroyed
4958 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
4960 * gtk/gtktypeutils.h:
4961 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
4962 gtk_enum_set_values to gtk_type_enum_get_values and
4963 gtk_type_enum_set_values respectively, since they are actually type
4966 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
4969 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
4971 * gtk/gtkselection.h:
4972 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
4973 gtk_selection_data_free.
4975 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
4976 for "selection_received", which was completely bogus.
4977 * other fixups to gtk_signal_new() calls all over the place.
4979 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
4980 * gtk/gtktypebuiltins_vars.c: type variable implementations.
4981 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
4983 * gtk/gtktypebuiltins_evals.c: enum value arrays.
4984 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
4986 * gtk/gtk.defs: generated file with scheme syntax for type definitions
4987 of gtk and gdk structures and enums.
4988 * gtk/gtktypeutils.h:
4989 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
4990 macros anymore (this fixes binary incompatibility with new enum
4993 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
4994 key bindings for this widget.
4995 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
4999 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
5000 again. new functions gtk_object_class_user_signal_new () and
5001 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
5002 flag on the signal creation.
5004 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
5006 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
5008 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
5014 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
5016 * reworked enum value array generation code. gtk.defs is a generated
5019 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
5021 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
5022 check menu items in the compatibility code (this required me to remove
5023 the "<check>" part from the menu item name, grrr).
5025 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
5027 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
5028 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
5030 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
5032 * gtk/gtkitemfactory.h:
5033 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
5034 additions to the dumping code to feature GtkPatternSpec.
5035 even found a bug to fix in the original code ;)
5037 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
5039 * gtk/gtkitemfactory.c: support different types of callbacks, to
5040 maintain existing code.
5042 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
5044 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
5046 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
5047 this should eventually be done by gentypeinfo.el somewhen.
5048 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
5050 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
5051 enum values of an enum type.
5059 brought enum/flags definitions in sync, added a few more enum
5060 definitions for bindings and pattern matching.
5062 * some more macro and GtkType fixups in various places.
5064 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
5065 as a key-release modifier for the binding system.
5067 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
5069 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
5070 was a stale list pointer that is already present in GtkMenuShell.
5072 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
5073 GtkMenuShell::selection_done which is emitted after the menu shell
5074 poped down again and all possible menu items have been activated.
5076 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
5078 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
5079 before activation of the menuitem, so the menu is actually taken off the
5080 screen prior to any menu item activation.
5082 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
5086 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
5087 the emission of the "add-accelerator" signal on a widget. this is
5088 usefull to prevent accelerator installation on certain widgets.
5090 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
5091 labels left justified, by setting their alignment. stop accelerator
5092 installation for the menu items, since we use dynamic menus.
5094 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
5096 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
5097 should *really* use GtkItemFactory. this is only for preserving source
5098 compatibility where possible, use of GtkMenuFactory is deprecated as of
5101 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
5102 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
5103 missed this possibility when i added gtk_object_class_add_user_signal
5106 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
5108 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
5110 * gtk/gtkaccelgroup.h:
5111 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
5113 * gtk/gtkaccellabel.h:
5114 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
5115 display of the accelerators associated with a certain widget.
5117 * gtk/gtkitemfactory.h:
5118 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
5119 parsing and accelerator handling.
5121 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
5123 (gtk_menu_map): removed the allocation code.
5124 (gtk_menu_size_allocate): care for redrawing of children and resize
5125 our widget->window correctly.
5126 (gtk_menu_key_press): feature the new accelerator groups.
5128 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
5129 submenu if neccessary.
5131 * gtk/gtkmenuitem.c:
5132 * gtk/gtkcheckmenuitem.c:
5133 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
5137 (gdk_keyval_from_name):
5138 (gdk_keyval_name): new functions for keyval<->key-name associations.
5139 (gdk_keyval_to_upper):
5140 (gdk_keyval_to_lower):
5141 (gdk_keyval_is_upper):
5142 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
5143 regards to their cases.
5145 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
5147 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
5148 widget's class path.
5149 (gtk_widget_path): new function to calculate a widget's name path.
5151 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
5152 pattern matching, features reversed pattern matches.
5154 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
5156 * examples/extract.sh, examples/extract.awk:
5157 New files to automagically extract code examples from the
5160 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
5162 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
5163 * gtk/gtkcontainer.c (gtk_container_focus_move):
5164 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
5166 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
5168 * docs/gtk_tut.sgml: minor changes to support auto
5169 extraction of example code
5171 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
5173 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
5174 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
5176 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
5178 * docs/gtk_tut.sgml:
5179 - new section on Events
5180 - change all delete_event callbacks to include
5181 a GdkEvent parameter
5182 - clean up the formatting
5184 * examples - helloworld.c, helloworld2.c, notebook.c,
5185 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
5186 rulers.c, table.c, wheelbarrow.c: change all delete_event
5187 callbacks to include a GdkEvent parameter.
5189 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
5191 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
5192 field of crossing events.
5193 (struct _GdkEventCrossing): Added the following fields: time, x,
5194 y, x_root, y_root, mode, focus, state.
5196 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
5197 crossing event structure.
5199 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
5200 changes to the crossing event structure.
5202 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
5204 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
5206 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
5208 * docs/gtk_tut.sgml:
5209 - GtkTooltips, update to current API
5210 - change all 'gpointer *data' to 'gpointer data'
5211 - other minor changes
5213 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
5215 * configure.in (LDFLAGS): Bomb out with a moderately
5216 helpful message if detection of X libraries fails.
5218 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
5221 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
5222 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
5224 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
5225 gtk/gtksignal.c gtk/gtktext.c:
5227 Fixups for warnings from adding const to type of GHashFunc,
5230 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
5231 ansi-warnings fixups.
5233 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
5235 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
5236 Locate child at (border_width,border_width), not
5237 (2*border_width,2*border_width). [ The border is _outside_
5240 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
5241 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
5243 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
5245 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
5248 1998-05-22 <sopwith@redhat.com>
5250 * gtk/gtkeventbox.c: Pass size_allocate on to the child
5251 regardless of whether it is visible or not. Also
5252 locate child at (border_width,border_width), not (0,0)
5254 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
5256 * gtk/gtkhandlebox.c: Added style_set handler.
5258 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
5259 [ From: Chris Lahey <clahey@umich.edu> ]
5261 * gtk/gtkeditable.c, gtk/gtkeditable.h,
5262 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
5263 and set_position functions to get and set the cursor position.
5265 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
5266 signal status. Make GtkText do user-controlled insertion
5267 and deletion through the Editable widget so that these
5268 signals are properly emitted.
5270 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
5271 display asterisks instead of empty space when visible = FALSE)
5273 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
5275 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
5278 1998-05-21 <sopwith@redhat.com>
5280 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
5281 custom routine for loading images specified in gtkrc's.
5283 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
5285 * configure.in: Use pthread_attr_init() as a test function,
5286 since most of the rest of -lpthread is macros on DU4.
5288 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
5290 * gtk/gtkcombo.c: implemented completion in the entry.
5292 1998-05-18 <sopwith@moebuis.labs.redhat.com>
5294 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
5296 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
5298 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
5299 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
5300 to be of runtype GTK_RUN_LAST.
5302 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
5305 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
5308 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
5310 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
5311 text retrived from GtkEntry. only intercept the Tab key if there
5312 was some text to complete.
5314 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
5316 Basic thread-awareness:
5318 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
5320 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
5321 gdk_threads_[init/enter/leave] for applications, plus
5322 gdk_threads_wake to wake the mainloop thread out of
5325 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
5327 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
5329 * gtk/testgtk.c (list_clear): Account for the fact
5330 that gtk_list_clear_items is not inclusive. (Clears
5333 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
5335 * gdk/gdk.c: include gdkkeysyms.h always
5338 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
5340 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
5341 the visibility_notify_event method and changed method order.
5343 1998-05-14 <sopwith@moebuis.labs.redhat.com>
5345 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
5347 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
5349 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
5350 from Olli Helenius <ollhel@batman.jytol.fi>.
5352 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
5354 (gtk_type_set_chunk_alloc): new function to allow allocation of new
5355 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
5358 * gtk/gtkobject.c (gtk_object_finalize): free an object through
5361 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
5363 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
5364 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
5366 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
5368 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
5369 GPOINTER_TO_UINT fixes.
5371 * gtk/gtksignal.c: Include <string.h> for memset.
5373 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
5374 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
5376 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
5377 Cleanups, comments and the ability to have rulers with
5378 a reversed direction.
5380 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
5382 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
5383 that Sopwith missed when changing stat => lstat.
5385 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
5387 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
5388 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
5389 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
5391 * gdk/gdk.c: Print sizeof() results
5392 as g_print("%ld", (glong)sizeof(foo)), to deal with
5393 sizeof() being long on Alpha's.
5395 * gtk/testgtk.c: include <string.h> for strlen
5397 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
5398 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
5400 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
5401 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
5403 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
5405 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
5406 (From: Christopher James Lahey <clahey@umich.edu>)
5408 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
5411 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
5412 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
5413 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
5414 the default relief for the toolbars buttons. Added an
5415 toggle for the toolbar test in testgtk.c.
5417 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
5419 * docs/gtk-config.1: Rewritten and hopefully improved.
5421 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
5424 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
5426 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
5428 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
5429 GtkPreview's visual and colormap, otherwise things can BadMatch.
5431 * gtk/testgtk.c (create_color_preview):
5432 (create_gray_preview): Removed pushing/popping of visual/colormap
5433 now that GtkPreview does things correctly.
5435 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
5436 (gtk_color_selection_draw_wheel): Pick the style from the correct
5437 place (the colorsel->wheel_area widget) so that the GCs will match
5438 with where we are going to paint to.
5440 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
5441 of visual/colormap now that GtkColorSelection does things the
5444 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
5446 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
5447 previously unused window->need_resize flag to mark if a window's
5448 descendents changed size while the window was not visible. In this
5449 case, when the window becomes visible, we reallocate everything,
5450 since we didn't keep track of what actually changed.
5452 (Fixes bug where changing the popdown strings of a
5453 combo to something of the same length caused them to
5454 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
5456 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
5458 [security audit by Alan Cox]
5460 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
5461 exceed maximum assumed size.
5463 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
5464 not exceed maximum assumed size.
5465 (gtk_menu_factory_remove): likewise.
5466 (gtk_menu_factory_find_recurse): likewise.
5468 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
5470 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
5471 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
5472 redrawn if that is still neccessary. don't allow queueing of already
5474 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
5475 widgets which are in the queue can be destroyed safely, handle
5476 requeueing properly.
5477 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
5478 widgets which are in the queue can be destroyed/unrealized safely.
5480 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
5482 * gtkfaq.sgml: add question on multi-threading,
5485 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
5487 * configure.in (cflags_set): preserve automake CFLAGS.
5489 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
5490 and libgdk-1.1.la. this means we need to change certain portions of
5491 the Makefile.am on major/minor version bumps.
5493 * ltmain.sh: the -release option is not required anymore.
5495 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
5496 of the first argument to be of type GtkObject. unconditionally compile
5497 this function. removed __GNUC__ dependancy of the gtk_object_ref and
5498 gtk_object_unref macro wrappers for this function.
5500 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
5504 (gtk_object_data_try_key):
5505 (gtk_object_data_force_id): these are now macros substituting the old
5506 functions. we just use the corresponding g_dataset_* functions for
5507 key->id associations. (this is to assure unique key<->id associations).
5509 1998-05-10 Stefan Jeske <stefan@gtk.org>
5511 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
5514 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
5516 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
5518 * configure.in (LIBS): Try to figure out if this
5519 is Digital Unix and we need -std1 to get the
5522 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
5524 * docs/gtk_tut_it.sgml: update of Italian tutorial
5525 translation from Daniele Canazza <dcanazz@tin.it>
5527 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
5529 * gtk/gtkfeatures.h.in: new file used as template for
5530 * gtk/gtkfeatures.h: new file to define macros indicating newly
5531 introduced features, such as GTK_HAVE_SIGNAL_INIT.
5534 (gtk_signal_emitv_by_name):
5536 new functions to emit signals with an already provided parameter set.
5537 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
5538 (gtk_signal_real_emit): prototype changes, so this functions always
5539 gets its parameters and signal structure as arguments.
5540 (gtk_signal_emit): provide the signal structure and parameter list for
5541 gtk_signal_real_emit.
5542 (gtk_signal_emit_by_name): likewise.
5544 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
5546 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
5547 signal connections through unsetting GTK_CONNECTED.
5548 (gtk_signal_handler_insert): reflect the presence of signal connections
5549 through setting GTK_CONNECTED.
5550 (gtk_signal_real_emit): only check for handler emissions if the object
5551 has the GTK_CONNECTED flag set.
5552 (gtk_signal_handler_pending): don't check for pending handlers if the
5553 GTK_CONNECTED flag is not set for this object.
5555 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
5556 a GtkObject has signal handler connections.
5558 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
5559 set for this object call gtk_signal_handlers_destroy().
5561 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
5562 multiple processing of macro args.
5564 * gtk/gtktypeutils.c:
5567 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
5569 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
5571 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
5572 draw-queue when we are done.
5574 (gtk_widget_queue_draw/_queu_resize): Always return
5575 FALSE and avoid having two idles at the same time.
5577 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
5579 * gtk/gtktext.c: Various fixes to make sure cache
5580 lines are freed if line_start_cache doesn't point to the
5581 beginning of the cache.
5583 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
5585 * style_set improvements for GtkText and GtkEntry
5587 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
5589 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
5592 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
5594 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
5595 data chunks through a global object data structure list. unlink
5596 object data before invoking its destroy function.
5597 (gtk_object_finalize): slight modification to allow usage of object
5598 data during object finalization.
5600 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
5602 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
5603 signal names, e.g. "signal-name" is now an alias for "signal_name".
5604 (gtk_signal_handler_new): allocate handlers through a global handler
5605 structure list, that's faster than memchunks.
5606 (gtk_emission_new): allocate emissions through a global emission
5607 structure list, that's faster than memchunks.
5609 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
5611 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
5613 * ltmain.sh: added a new commandline flag -postfix similar to -release,
5614 but will immediately change the library name.
5617 * gtk/Makefile.am: specify -postfix and -version-info
5619 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
5620 GTK_BINARY_AGE. calculate LT_* variables for libtool.
5622 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
5624 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
5625 background (fg_set -> bg_set confusion).
5627 1998-05-06 Stefan Jeske <stefan@gtk.org>
5629 * gtk/testgtk.c (unselect_all): Removed code that caused an
5632 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
5634 * gtk/gtksignal.c: reimplemented the signal storage system to use a
5635 linear array rather than a hash table.
5636 be carefull *not* to keep any GtkSignal pointers across invokations
5637 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
5638 general code cleanups, made all allocations through memchunks.
5639 (gtk_signal_lookup): we now do the lookup of signals through a key_id
5640 for the signal names to avoid multiple hashing of the signal name on
5641 lookups for the several hirarchy levels of an object.
5643 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
5645 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
5646 to speed things up and remove code duplication.
5648 Reintegrated buffer overflow patches, and added
5649 some extra paranoia.
5651 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
5653 * gdk/gdk.c (gdk_event_translate): A guint * was
5654 being passed where X expected a Keysym *, and
5655 keysyms are long's on Alpha Linux. This was causing
5656 segfaults in Xlib, apparently because of alignment.
5657 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
5659 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
5661 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
5662 set GDK_EXPOSURE_MASK for DrawingAreas
5664 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
5666 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
5667 (superceded by RC file reparsing capabilities)
5669 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
5670 events. (Shouldn't be sent to the InputOnly leader, which
5671 it is now by gdk_event_send_clientmessage_toall
5673 * gtk/testgtk.c: Added extra button to rcfiles test
5674 to send out _GDK_READ_RCFILES events.
5676 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
5678 * gtk/gtkselection.c (gtk_selection_clear): Fixed
5679 reversed conditionals that caused segfault on some
5682 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
5684 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
5685 cast to GTK_OBJECT for gtk_object_ref.
5687 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
5689 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
5690 checking for signal initialization in gtksignal.c.
5692 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
5693 a long debugging period ;)
5695 1998-05-05 Stefan Jeske <stefan@gtk.org>
5697 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
5698 New function to wrap XSetDashes; modified gtkctree.c to use it.
5700 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
5702 * configure.in: Added $x_libs in the other_libraries field in the
5703 check for XShapeCombineMask.
5705 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
5707 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
5709 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
5710 linear array rather than a hash table. it actually speeded up testgtk
5711 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
5712 pointers across invokations of gtk_type_node_next_and_invalidate() and
5713 therefore gtk_type_unique()!
5715 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
5716 inheritance of a class pointer.
5717 (GTK_OBJECT): modifications for speedups.
5718 (GTK_IS_OBJECT): likewise.
5719 (GTK_OBJECT_CLASS): likewise.
5720 (suggested by owen).
5722 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
5724 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
5726 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
5727 since its derivation changed 4 month ago ;(. showed up with the unique
5728 type name checking code in gtk_type_unique().
5730 * random guint->GtkType and macro fixups.
5732 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
5734 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
5735 Configure events that would result in a negative
5738 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
5740 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
5741 "glibconfig.h" and another about writing another IRC
5744 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
5746 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
5747 parameters to log are doubles. Digital Unix apparently
5748 is missing the argument in its prototype.
5750 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
5752 * gtk/gtklabel.c (gtk_label_state_changed): Don't
5753 force a clear until the widget is actually on
5756 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
5758 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
5759 to make this consistent with the gtk-1-0 tree.
5761 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
5763 * configure.in acheader.h gdk/gdkwindow.c
5764 Check for Shape extension both on the client and server
5765 side. (And, more importantly, check for the shape extension
5766 so we may include -lXext even when compiling with --disable-xshm)
5768 Don't set override_redirect on all shaped windows. It isn't
5771 * gdk/gdkwindow.c: Set ->colormap to NULL for root
5772 and foreign windows. Use this to check if we
5773 need to get the colormap from X.
5775 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
5777 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
5778 between the default and the button always in GTK_STATE_NORMAL.
5780 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
5783 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
5785 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
5786 Fix a buffer overflow on pixmaps that claim to have
5787 more than 31 characters per pixel.
5789 (gdk_pixmap_read_string): Don't wrap around strings longer
5790 than half of address space ;-)
5792 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
5793 that were used for printing integers.
5800 int foo (void) { ... }
5802 Even where there were proper prototypes elsewhere.
5804 * gdk/gxid.c (handle_claim_device): Some extra checks.
5805 It isn't safe against being fed bad X id's, but at
5806 least it should be safe against deleting all your
5809 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
5811 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
5812 to set the adjustments value when there is no current emission.
5813 [ Removed by mutual agreement owt 5/3/1998 ]
5815 * gtk/gtksignal.c: added new functions to retrive the number of
5816 existing emissions for a certain signal.
5817 (gtk_signal_n_emissions): new function.
5818 (gtk_signal_n_emissions_by_name): new function.
5820 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
5822 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
5823 set the current focus_child of a container, does proper referencing and
5824 adjusts the vadjustment/hadjustment associated with the focus widget.
5826 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
5827 containers via gtk_container_set_focus_child.
5829 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
5832 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
5833 child since not every child removal goes through this function (this
5834 showed up after gtk_container_set_focus_child() started to reference the
5835 focus_child of a container).
5837 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
5838 of a container from gtk_container_remove into this place.
5840 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
5842 * gtk/gtksignal.c: added new functions to operate on intermediate
5843 function pointers. implemented incremental blocking.
5844 (gtk_signal_disconnect_by_func): new function.
5845 (gtk_signal_handler_block_by_func): new function.
5846 (gtk_signal_handler_unblock_by_func): new function
5848 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
5850 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5851 Always show the scrollbars when the policy is
5852 GTK_POLICY_ALWAYS...
5854 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
5856 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
5857 "value_changed" if we really passed a new value.
5858 (gtk_adjustment_changed): new function to emit the "changed" signal.
5859 (gtk_adjustment_set_value): new function to emit the "value_changed"
5862 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
5864 * gtk/gtkcombo.c: Further changes to the way the window
5865 is popped up so that it will be compatible with
5866 auto-scrolling in the future.
5868 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
5870 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
5871 the combo-list is empty since that will cause the combo to operate
5872 on a non existing GtkList window.
5873 (gtk_combo_get_pos): provide the combo list with a usfull default
5875 (gtk_combo_popup_button_press): grab the focus.
5876 (gtk_combo_activate): grab the focus.
5878 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
5880 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
5881 function to reset the RC styles for a heirarchy
5883 Clear the window background if necessary in
5884 gtk_window_style_set.
5886 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
5887 rereads all previously read RC files.
5889 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
5890 (Should it just be called gdk_get_toplevels?)
5892 * gtk/testgtk.c: New test to reload RC files.
5894 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
5897 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
5898 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
5899 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
5900 the GTK_ prefix (this solution involved less changes in the
5901 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
5902 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
5903 from lars & stefan to support the derivation of GtkCtree.
5907 initial import of a tree widget derived from gtkclist, courtesy
5908 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
5911 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
5913 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
5915 (gtk_list_insert_items):
5916 (gtk_list_remove_items_internal):
5917 (gtk_list_clear_items):
5918 remove a possible pointer grab, we might get thrown into a loop
5920 (gtk_list_button_press): grab the pointer *before* selecting the child,
5921 because selection of items may cause the lists children to change,
5922 resulting in a grab release.
5923 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
5925 (gtk_list_shutdown): remove all children from the list.
5926 (gtk_real_list_unselect_child):
5927 (gtk_real_list_select_child): *always* put our internal structures into
5928 sane state *before* signal emisions (i.e. list->selection updates prior
5929 to gtk_list_item_[de]select() calls).
5931 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
5932 focused child walks out of the window.
5933 removed CAN_FOCUS for the combo arrow's button since it doesn't react
5934 to keyboard events ("clicked" connection is missing).
5936 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
5938 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
5939 getting colormap for FOREIGN windows to go along with
5940 Raster's fix for visuals.
5945 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
5947 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5948 Check to catch the case when the viewport fits in either
5949 direction or both, instead of flip-flopping infinitely.
5951 Only show/hide the scrollbars once at the end.
5953 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
5955 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
5956 Include the scrollbars in the foreach call.
5957 (gtk-fortier-980405-0.patch;
5958 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
5961 really should also include its tabs, but that might cause
5962 problems for programs if they
5964 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
5966 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
5967 resize if the size actually changed.
5968 (gtk-johannes-980414-0.patch ;
5969 johannes@nada.kth.se (Johannes Keukelaar) )
5971 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5973 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5974 ltmain.sh ltconfig config.sub config.guess:
5976 Reverted back to libtool-1.2 (plus minor patches) so as not to
5977 force the issue for everyone else.
5979 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5981 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5982 Updated to libtool 1.2a.
5984 * gtk/gtkclist.c: Draw the in-between lines with style->base
5985 instead of style->white.
5987 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5989 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
5990 Cache the colormap and children of a window locally
5991 instead of fetching them from the server when needed.
5992 Huge performance difference for creating/destroying
5995 * gtk/gtkstyle.c: Find the depth from the cached
5996 visual, instead of asking the server.
5998 * gtk.m4: Distribute the new version which tries to
5999 figure out what went wrong and give helpful error
6002 * ltmain.sh ltconfig config.sub config.sh:
6003 Updated to libtool 1.2a
6005 * gtk/gtktext.c: Fixed a bug where the drawn level
6006 was being messed up when the text was scrolled
6009 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
6011 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
6012 the filesystem under you (fix from Josh)
6014 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
6016 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
6017 if the viewport already exists before iterating over it, maybe we
6018 haven't been constructed yet.
6020 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
6022 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
6023 the GtkBin widget already has a child.
6025 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
6026 check that child->parent == NULL;
6028 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
6030 * gtk/gtkselection.c (gtk_selection_clear): Only return
6031 FALSE when the clear event is been rejected, not when
6032 widget has already lost the selection. (Which should
6033 only happen when we are setting the selection to another
6036 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
6038 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
6040 Removed the "check visibility after gtk_widget_unparent" bug
6041 in hopefully the last three places.
6043 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
6045 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
6048 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
6050 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
6051 for CAN_FOCUS widgets.
6053 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
6054 adjustments for the table.
6055 (create_list): feature automatic adjustment of the scrolled window to
6056 always contain the focused child.
6057 (create_main_window): keep the focussed button always inside of the
6060 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
6061 adjustments, to contain the allocation of the currently focused child.
6062 (gtk_container_set_focus_hadjustment): new functin to set the
6063 horizontal focus adjustment.
6064 (gtk_container_set_focus_vadjustment): new functin to set the vertical
6067 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
6068 clamp the currents adjustment page into a specific range.
6070 * random GtkType fixups for gtk_*_get_type() functions.
6072 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
6074 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
6075 Account for the fact that gtk_tree_item_remove_subtree
6076 will be called recursively.
6078 Handle removing a collapsed subtree.
6080 (From Andy Dustman <adustman@comstar.net>)
6082 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
6083 root tree when removing items from a non-previously
6086 * gtk/testgtk.c: Added a remove_subtree button.
6088 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
6090 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
6091 before object removing data. This change fixes a bug where
6092 removing the last weak references would cause it to be
6095 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
6097 * gdk/Makefile.am: Removed mostly useless dependency that
6098 was causing problems for SGI's make, when used with
6099 the 'make dist' form of GTK+. (Dependency caused dependencies
6100 to be redone when BUILT_SOURCES changed)
6102 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
6104 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
6107 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
6108 to gtkitem.c so dragging can also work in lists.
6110 * gtk/gtklist.[ch]: Track child enter events and use
6111 those to allow dragging the selection.
6113 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
6115 * gtk/gtktext.c: Try enabling background pixmaps for editable text
6116 widgets. There is a bit of flashing, but not too bad. If you
6117 don't want the flashing, you can always not set a background
6120 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
6122 * gtk/gtktext.c: Fixed a bug where the drawn level
6123 was being messed up when the text was scrolled
6126 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
6128 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
6129 bug: There is no need to set the ExposureMask in the XGrabPointer
6130 (this caused DnD programs to crash).
6132 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
6134 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
6135 field to be of type guint.
6136 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
6138 (gtk_accelerator_table_install): keep a per object list of accelerator
6139 tables that refer to this object.
6140 (gtk_accelerator_table_remove): remove the accelerator table from the
6142 (gtk_accelerator_table_clean): warn if there are any object references
6143 left in an accelerator table upon destruction.
6144 (gtk_accelerator_tables_delete): new function to delete object
6145 references from the accelerator tables associated with this object.
6147 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
6148 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
6149 of an accelerator can be prevented by gtk_signal_emit_stop().
6150 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
6151 so there are no stale pointers in accelerator tables left.
6153 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
6155 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
6156 visible before we unparent it.
6158 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
6160 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
6161 running_timeouts list with the tmp_list link itself, not with a new
6162 GList structure pointing to our link. that would fill up memory and
6163 causes the GList.data fields of the running_timeouts list to point to
6164 GList structures and not GtkTimeoutFunction structures which is a
6166 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
6169 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
6171 * gtk/gtkradiomenuitem.h:
6172 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
6173 ala gtk_radio_button_set_group.
6174 (gtk_radio_menu_item_init): assure that we always have at least a group
6175 that points to self.
6177 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
6178 added g_return_if_fail() statements.
6179 (gtk_radio_button_init): assure that we always have at least a group
6180 that points to self.
6182 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
6184 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
6186 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
6188 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
6189 (Damon Chaplin), which i got wrong when applying Damon's patch the last
6192 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
6194 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
6195 that when we are running with a non-installed colormap,
6196 in 8-bit pseudo-color, we actually are using the system
6197 visual. (Fixes *Bad Match* errors on Digital Unix machines
6198 with multiple 8-bit pseudo-color visuals)
6200 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
6202 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
6203 by whoever thought that randomly changing ints to unsigned int
6204 without reviewing the code was a good idea. It is, btw not
6205 mentioned in the ChangeLog as usual, but I know it was not Elliot
6206 the culprit this time.
6208 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
6210 * Released GTK+ 1.0.0