1 1998-12-08 Andrew T. Veliath <andrewtv@usa.net>
3 * gtk/testgtk.c: Functions to test the toolbar space style.
5 * gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
6 GtkToolbarChild to hold allocation. Set default space style to
7 GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
9 (gtk_toolbar_paint_space_line): New function; paints the separator
10 line, using "toolbar" as the detail.
11 (gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
12 style is set to SPACE_LINE.
13 (gtk_toolbar_size_allocate): Store space allocations.
14 (gtk_toolbar_insert_element): If we are a space, allocate and
15 initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
16 (gtk_toolbar_set_space_style): New function.
18 * gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
19 and LINE. Add prototype for gtk_toolbar_set_space_style.
21 Mon Dec 7 16:03:55 1998 Owen Taylor <otaylor@redhat.com>
23 * gtk/gtkthemes.h: Remove random unnecessary includes
26 1998-12-07 Damon Chaplin <DAChaplin@msn.com>
28 * gtk/gtkfontsel.c (gtk_font_selection_select_best_style): made sure
29 we only try to match styles which are currently shown.
31 (gtk_font_selection_init): set the notebook tabs homogeneous and set
32 the border, so we don't need to set the size explicitly (bad for i18n).
33 Used the clist auto-resize feature for the font and style lists on the
34 main page and all the filters. Used padding for the 'Reset Filter'
35 button instead of spaces around it (bad for i18n).
37 (gtk_font_selection_find_font): when searching for
38 a font, if we can't match both the family and foundry, we return any
39 font where just the family matches. (The foundry can even be '*'.)
41 (gtk_font_selection_show_available_styles):
42 (gtk_font_selection_realize_list): don't set the style clist row
43 colours (for the charset rows) until the clist is realized, since we
44 use the clist style's insensitive colours.
46 Mon Dec 7 13:38:06 1998 Owen Taylor <otaylor@redhat.com>
48 * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
49 _after_ doing XShmAttach. This should work everywhere,
50 and avoid the need for signal handlers or configure
53 Thu Dec 3 19:58:45 1998 Owen Taylor <otaylor@redhat.com>
55 * gtk/gtkinputdialog.c: Use _add_with_viewport() for
56 scrolled window contents.
58 1998-12-07 Federico Mena Quintero <federico@nuclecu.unam.mx>
60 * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
61 field in the structure.
63 Mon Dec 7 15:15:06 GMT 1998 Tony Gale <gale@gtk.org>
65 * docs/gtk_tut.sgml: Start mass update for GTK 1.1
66 * examples/extract.sh: Look for the best version of awk
67 * examples/extract.awk: Fix FD leak
68 * example/base: minimal example from Tutorial
70 Mon Dec 7 01:29:27 1998 Owen Taylor <otaylor@gtk.org>
72 * gtk/gtkwindow.c: New functions
73 gtk_window_set_transient_for() - set up a "transient for" relationship.
74 gtk_window_set_default_size() - set the initial size of a window
75 distinct from its minimum size.
76 gtk_window_set_geometry_hints() - Allow the user to set
77 minimum, maximum sizes, aspect rations, and gridded geometry,
78 possibly all with respect to a subwidget of the window.
79 These interfaces are still a wee bit experimental.
81 * gdk/gdk.c: Added gdk_window_set_transient_for(),
82 gdk_window_set_geometry_hints(), and gdk_window_set_role().
84 * gdk/gdktypes.h: Added new types for find-grained specification
87 * gtk/testgtk.c: Various changes to tests to test the
90 * gtk/gtkfontsel.c: Squash a few 'const' warnings.
92 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
93 call to gtk_style_set_background() to prevent egregious
96 Mon Dec 7 03:52:01 1998 Tim Janik <timj@gtk.org>
98 * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
99 signals, don't pass the data pointer twice, but swap it with the
100 object pointer (proposed on Nov 30 1998 on gtk-devel-list).
102 Mon Dec 7 03:08:39 1998 Tim Janik <timj@gtk.org>
104 * gtk/gtktypeutils.h:
105 * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
106 internal type info data to the user. if such functionality is required
107 we should provide wrapping accessors, ala gtk_signal_query(). also the
108 GtkTypeInfo structures are dynamically allocated memory portions, so
109 only the type system is really allowed to access that stuff.
111 * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
112 since it destroys the possibility to implement automatic marshaller
113 lookups some day, and it also disables third party code's ability to
114 connect to any signal.
116 Mon Dec 7 01:32:18 1998 Tim Janik <timj@gtk.org>
118 * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
119 Tab key on the entry. the focus shouldn't get lost even if completion
120 is attempted from an empty entry, since an empty entry string does
121 indeed have a valid completion meaning (complete all).
122 (gtk_file_selection_init): cast the gchar array parameter in calls to
123 gtk_clist_new_with_titles() to quit compiler warnings.
124 (check_dir): the no_stat_dirs struct must not be const, since we do
125 indeed modify its contents.
127 * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
132 changed emission allocation, so we don't use a doubly linked list
133 but link ourselfs (singly linked).
134 changed emission hooks, they get the emision parameters passed as
135 well now and are emitted during the actuall signal emission (after
136 the RUN_FIRST class method, but prior to RUN_FIRST handlers).
137 the existing restrictions do still apply to signal emission hooks,
138 i.e. an emission may not be stopped or restarted from an emission hook.
139 due to possibly huge perfomance impacts, frequent use of emision hooks
140 is also not recommended.
141 (gtk_signal_next_and_invalidate): added an
142 assertments which explicits what the code assumes anyways: a
143 maximum amount of 65535 signals.
145 * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
146 gtk_container_foreach_full() should be used instead.
149 deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
150 we provide _full variants.
152 * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
153 gtk_signal_connect_full() for long enough now.
155 1998-12-06 Marius Vollmer <mvo@zagadka.ping.de>
157 * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
158 (gtk_signal_connect_by_type): Allow only no_marshal handlers to
159 connect to signals with a NULL marshaller.
161 * gtk/gtktypeutils.c (gtk_type_get_info): New.
162 gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
164 Sun Dec 6 14:27:35 1998 Stefan Jeske <stefan@gtk.org>
166 * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
167 arrows if wrap == FALSE and interval borders are reached.
169 Sat Dec 5 21:07:09 1998 Owen Taylor <otaylor@gtk.org>
171 * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
172 long-standing typo in aspect ratio computation code.
173 (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
175 Fri Dec 4 01:20:06 1998 Lars Hamann <lars@gtk.org>
177 * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
178 valid row numbers only
179 (toggle_row): check if clist_row != NULL
181 Fri Dec 4 00:50:12 1998 Lars Hamann <lars@gtk.org>
183 * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
186 (gtk_clist_set_column_visibility)
187 (gtk_clist_column_titles_active)
188 (gtk_clist_column_titles_active)
189 (gtk_clist_column_title_passive)
190 (gtk_clist_column_title_active): few additional tests whether
191 column->button != NULL
193 Thu Dec 3 16:49:18 1998 Owen Taylor <otaylor@redhat.com>
195 * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
196 from 10 seconds, so it doesn't abort while users
197 have an ACTION_ASK menu up.
199 * gtk/gtkdnd.c: Hide the icon window between sending a a
200 drop event to the destination and displaying the
201 snapback animation, so that it doesn't hang around
204 Thu Dec 3 16:37:42 1998 Owen Taylor <otaylor@redhat.com>
206 * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
207 for the foreground of cells for CLists in the insensitive
208 state, instead of GTK_STATE_PRELIGHT.
210 Thu Dec 3 06:20:59 1998 Tim Janik <timj@gtk.org>
212 * gtk/gtkwindow.c: moved checks upon focus setting from
213 gtk_window_real_set_focus to gtk_window_set_focus, so we don't
214 emit the signal if unneccessary.
216 * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
217 containers when grabbing focus on a new widget. this is based on
218 a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
220 * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
221 flag, so we take the buttons into consideration upon the next focus
224 * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
227 Wed Dec 2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
229 * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
230 enhancement for true-color displays.
236 docs/gtk-config.1: up to version 1.1.6
238 Wed Dec 2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
240 * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
241 we release it this time
243 Wed Dec 2 01:39:02 1998 Tim Janik <timj@gtk.org>
246 * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
248 * incremented version number to 1.1.6 and made Gtk
249 dependant on GLib 1.1.6.
251 * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
252 from guint16 to gint16, since sizes bigger than 32767 are not supported
253 anyways, and aritmethics with intermediate negative values are possible
256 Tue Dec 1 00:00:04 1998 Tim Janik <timj@gtk.org>
258 * gtk/gtkscrolledwindow.c:
259 implementation of GTK_POLICY_NEVER functionality, added rationales
260 on the policy and size requisition handling at the top.
261 (gtk_scrolled_window_size_request):
262 we assume a default minimum for our child's width and height
263 if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
264 specified the dimension explicitely.
265 (gtk_scrolled_window_size_allocate):
266 do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
268 * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
269 size we require (including the child).
272 (gtk_clist_size_request): report the real size required.
274 * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
276 * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
277 need to be a static variable.
279 Mon Nov 30 22:41:25 1998 Tim Janik <timj@gtk.org>
291 * gtk/gtkscrolledwindow.h:
292 * gtk/gtkscrolledwindow.c:
293 s/scroll_adjustements/scroll_adjustments/
294 s/scroll_adjustments/set_scroll_adjustments/g
296 Tue Dec 1 22:45:58 1998 Lars Hamann <lars@gtk.org>
298 * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
300 * gtk/gtkclist.c (gtk_clist_row_move): new public function.
301 emit a row_move signal
302 (real_row_move): move source_row to dest_row
303 (gtk_clist_swap_rows): use gtk_clist_row_move calls.
304 (gtk_clist_columns_autosize): resize all columns to their optimal
306 * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
308 * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
310 Tue Dec 1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
314 * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
315 Separate vars for each, for granularity.
317 Tue Dec 1 02:19:54 1998 Tim Janik <timj@gtk.org>
319 * gtk/gtkenums.h: fixed a stupid error of mine about the run type
322 1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
324 * {gdk,gtk}/*.c: Make read-only data structures "static const" to
325 allow them to be shared, mainly including (but not limited to) the
326 GtkTypeInfo structures for each class.
328 * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
330 Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
333 Surround debug variable with #ifdef to silence gcc.
335 * gtk/gtknotebook.c (gtk_notebook_reorder_child):
336 Added initializer to quiet gcc warning.
337 Added assertion to check for null pointer deref.
339 Mon Nov 30 10:11:29 1998 Tim Janik <timj@gtk.org>
341 * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
342 system specific includes.
344 * gtk/gtksignal.c: asured that stop and restart emissions are also
345 checked and processed for not connected objects. fixed up restart
346 emission administration. invoke emission hooks after emission, hooks
347 are not supposed to muck around with the current emission, and
348 may also not cause emission restarts. fixed up stop emission
351 Mon Nov 30 06:20:36 1998 Tim Janik <timj@gtk.org>
353 * gtk/testgtk.c: added an event watcher for enter/leave based on
354 signal emission hooks.
356 * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
357 GTK_RUN_NO_HOOKS signal.
360 * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
361 to a signal with gtk_signal_add_emission_hook or
362 gtk_signal_add_emission_hook_full, and can be removed again with
363 gtk_signal_remove_emission_hook.
365 * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
366 an appropriate mask for signal runtypes for a long time now.
367 added GTK_RUN_NO_HOOKS value, which is used to flag signals
368 that do not allow the running of signal hooks.
370 1998-11-26 Michael Krause <m.krause@tu-harburg.de>
372 * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
373 argument a gint: switch_page signal delivers valid page numbers
376 Sun Nov 29 06:12:01 1998 Tim Janik <timj@gtk.org>
378 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment):
381 * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
382 check, people must use gtk_type_init().
383 fixed up type allocation for foreign fundamentals.
386 * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
387 for internal use by containers, that want to assign specific composite
388 names to their composite children.
389 added gtk_widget_get_composite_name() which will return a newly
390 allocated string, containing the composite name of a widget. valid
391 composite names can only be retrived from widgets that have a parent
392 assigned and are flagged as GTK_COMPOSITE_CHILD.
394 * gtk/gtkcontainer.h:
395 * gtk/gtkcontainer.c: added a new function
396 gtk_container_child_default_composite_name() which will return a
397 newly allocated string, holding the composite name of a containers
398 child. a default implementation is provided which will compose the
399 composite name out of the widgets type and its sequential children
400 id. this implementation can be overidden through a new class function
403 Sat Nov 28 10:57:59 1998 Owen Taylor <otaylor@redhat.com>
405 * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
406 expose_event handler - we had two expose_event
409 Sat Nov 28 03:13:42 1998 Tim Janik <timj@gtk.org>
411 * gtk/gtkscrolledwindow.h:
412 * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
413 it inherits from GtkBin now.
415 * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
417 (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
418 added check so a child gets only drawn if it's visible.
421 * gtk/gtkwidget.c: removed gtk_widget_draw_children().
424 * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
427 * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
428 added internal function gtk_widget_reset_shapes() from gtkstyle.c.
431 * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
432 argument, changed callers.
434 * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
435 it will issue a warning now.
437 * gtk/gtkcompat.h: new file to #define aliases for historic
440 * changed 8 function names for consistency and provided aliases to keep
441 source compatibility in gtkcompat.h:
442 (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
443 (gtk_container_set_border_width): renamed from gtk_container_border_width
444 (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
445 (gtk_packer_configure): renamed from gtk_packer_set_child_packing
446 (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
447 (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
448 (gtk_scale_get_value_width): renamed from gtk_scale_value_width
449 (gtk_window_set_position): renamed from gtk_window_position
451 * renamed a few recently added funtions for consistency:
452 (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
453 (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
454 (gtk_progress_configure): renamed from gtk_progress_reconfigure.
456 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
458 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
459 check for existing viewport first, and don't add one if there
462 Sat Nov 28 00:06:49 1998 Tim Janik <timj@gtk.org>
465 * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
466 gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
467 and gtk_widget_unlock_accelerators.
470 * gtk/gtklayout.c: implemented incremental freezing facility.
473 * gtk/gtktext.c: implemented incremental freezing facility.
476 * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
480 deprecated gtk_entry_adjust_scroll().
482 * random GtkType, macro and indentation fixes.
484 Fri Nov 27 22:50:15 1998 Tim Janik <timj@gtk.org>
487 * gtk/gtkclist.c: implemented incremental freezing facility, added
488 a new class member (*refresh)() which takes over the thaw
489 functionality. the clist FROZEN flag got removed on the way.
490 * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
491 and incremental freezing.
493 * gtk/gtkcalendar.c: implemented incremental freezing facility.
495 Fri Nov 27 11:41:27 1998 Raph Levien <raph@gimp.org>
497 * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
498 it still includes the core pointer in gdk_input_devices even
499 if the XInput extension is not present in the X server.
501 Fri Nov 27 12:17:15 1998 Owen Taylor <otaylor@redhat.com>
503 * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
504 get the source widget of a drag.
506 * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
507 to restrict certain targets to the same widget or to
508 the same application.
510 * gtk/testdnd.c: Test gtk_drag_get_source_widget().
512 Thu Nov 26 19:11:46 1998 Lars Hamann <lars@gtk.org>
514 * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
515 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
516 instead of GTK_TYPE_POINTER in signal definitions.
517 (patch from James Henstridge <james@daa.com.au>)
519 Thu Nov 26 18:48:44 1998 Lars Hamann <lars@gtk.org>
521 * gtk/gtkclist.c (set_cell_contents)
522 * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
523 if auto.resize == TRUE
525 * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
526 don't draw tab, if show_tabs == FALSE
527 (bug reports from Alexis Mikhailov / Dave Cole)
528 (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
529 the focus rectangle, not the hole tab.
531 Thu Nov 26 03:18:08 1998 Tim Janik <timj@gtk.org>
536 * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
537 Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
539 * gtk/maketypes.awk: changed underline substitution, so we get
540 GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
541 * gtk/makeenums.pl: likewise.
542 * gtk/gtkctree.c: adapted type names accordingly.
544 Tue Nov 24 11:31:06 1998 Owen Taylor <otaylor@redhat.com>
546 * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
548 * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
549 some code duplication.
551 * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
552 and child widgets when scrolling greater than 32k pixels.
554 * testgtk.c: Modified layout test to test scrolling over
557 Tue Nov 24 11:11:05 1998 Owen Taylor <otaylor@redhat.com>
559 * gtk/gtklayout.[ch]: Fixed up copyright message.
561 * gdk/gdkrgb.c (DM): Make the dither matrix constant
564 * gtk/gtkdnd.c: Make cursor bitmaps const.
566 * gdk/gdk.h gdk/gdkpixmap.c: Added const to
567 gdk_pixmap/bitmap_create_from_data.
569 Tue Nov 24 07:46:09 1998 Tim Janik <timj@gtk.org>
571 * docs/Changes-1.2.txt: added a section on scrolled windows and
574 1998-11-24 Andrew T. Veliath <andrewtv@usa.net>
576 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
577 buttons when setting relief for button items.
578 (gtk_toolbar_set_button_relief): Same.
580 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
582 * gdk/Makefile.am, gtk/Makefile.am:
583 Removed DEFS "+=" mess that breaks recent automakes.
584 INCLUDES is the correct way to add to CFLAGS from Makefile.am.
586 * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
587 gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
588 gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
590 Include "config.h" instead of "../config.h".
591 Now that DEFS works again, automake will automatically pass us
592 the location of config.h in -I.
594 Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
596 * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
597 gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
599 Added layout widget for scrolling arbitrarily big areas.
600 Added plug/socket widgets for interprocess embedding.
602 These widgets still, at some point, need to be
603 made more pure in their use of GDK, as opposed
606 * gtk/testgtk.c: Added test for layout widget.
608 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
610 * gtk/gtkclist.c: (gtk_clist_swap_rows): Bugfix from
611 Brandon Long <blong@fiction.net> - do the right thing with first
612 and last, which are the absolute values of row arguments row1
615 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
617 * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
618 default adjustment (from 0 to 100) instead. I'm not sure if this
619 is the correct level for the fix, but gtk_progress_bar_new()'s
620 original default behavior is restored.
622 1998-11-23 Martin Baulig <martin@home-of-linux.org>
624 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
625 we can check for latest GTK features.
627 1998-11-23 Havoc Pennington <hp@pobox.com>
629 * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
630 (gtk_toolbar_insert_element): When setting relief, also affect
633 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
635 * gtk/gtkobject.h: remove extraneous comma
637 Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
639 * gtk/gtkcontainer.c:
640 (gtk_container_add_with_args):
641 (gtk_container_addv):
642 (gtk_container_add): removed assertements for constructed containers
643 again, since this essentially breaks the "child" arg.
645 * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
646 reference count, we don't need to reference toplevels that already have
649 * gtk/gtkscrolledwindow.c: check for the composites existance in
650 _forall since we might not be already constructed.
652 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
654 * Released GTK+ 1.1.5
656 * configure.in: require GLib 1.1.5
658 Mon Nov 23 03:21:17 1998 Tim Janik <timj@gtk.org>
660 * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
662 (gtk_text_finalize): only unref the current_font if we have
665 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
672 docs/gtk-config.1: Version incremented to 1.1.5
674 Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
676 * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
677 ::text_yalign, ::activity_mode.
679 * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
680 ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
682 (gtk_progress_bar_new):
683 (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
684 (gtk_progress_bar_construct): deprecated.
686 * gtk/gtkvscrollbar.c:
687 (gtk_vscrollbar_draw_step_back):
688 (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
689 gtk_paint_arrow, to be consistent with hscrollbar.
692 added construct args ::hadjustment, ::vadjustment.
693 added args ::line_wrap, ::word_wrap.
694 (gtk_text_class_init): added scroll_adjustments signal.
695 (gtk_text_new): use gtk_widget_new.
696 (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
697 so we don't screw the reference counts and don't leave signals connected.
698 (gtk_text_destroy): disconnect adjustments signals.
699 (gtk_text_finalize): unref adjustments.
701 * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
702 added args ::indent, ::spacing, ::show_stub, ::reorderable,
703 ::use_drag_icons, ::line_style and ::expander_style.
704 (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
707 * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
709 removed ::vadjustment and ::hadjustment args, introduced
710 ::scroll_adjustments signal.
711 added ::shadow_type, ::selection_mode and ::row_height args.
712 added n_columns construct arg.
713 (gtk_clist_construct): call gtk_object_constructed().
714 (gtk_clist_set_row_height): if height is passed as 0,
715 revert to automatic height calculation.
716 (gtk_clist_destroy): before unrefing the adjustments, disconnect our
719 Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
721 * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
723 (gtk_widget_destroy): assert that we only destroy constructed widgets.
725 * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
726 to identify args that may only be used for construction.
727 GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
729 * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
730 at the end if the object is not fully constructed.
731 (gtk_object_newv): likewise.
732 (gtk_object_destroy): assert that we only destroy constructed objects.
733 (gtk_object_init): setup GTK_CONSTRUCTED from the
735 (gtk_object_default_construct): new function to complete default
736 construction of an object by applying missing construtor args with
737 default values of 0, 0.0 or NULL.
738 (gtk_object_constructed): new function to mark an object as being
739 constructed (used from within constructors).
741 * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
742 so it is immediatedly available for the caller.
744 * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
745 the object initilizer (GtkObjectInitFunc takes a second arg now, the
746 real klass), and asure that object initializers may temporarily alter
749 Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
751 * gtk/testgtk.c: change all occourances of gtk_container_add (
752 scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
753 for widget!=(clist, ctree, text, viewport).
756 (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
757 to add children to the scrolled window.
759 * gtk/gtkscrolledwindow.h:
760 * gtk/gtkscrolledwindow.c:
761 changed scrolled_window->viewport to scrolled_window->child, and use
762 gtk_widget_scroll_adjustements() to set the scroll adjustments for the
763 widget, we do not create an additional viewport anymore.
764 added ::hadjustment and ::vadjustment constructor args.
765 (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
766 (gtk_scrolled_window_set_hadjustment):
767 (gtk_scrolled_window_set_vadjustment): new functions that superceed
768 gtk_scrolled_window_construct.
769 (gtk_scrolled_window_construct): deprecated this function.
771 * gtk/gtkhscrollbar.c:
772 * gtk/gtkvscrollbar.c:
775 support a constructor arg "::adjustment", and use gtk_widget_new() for
778 * gtk/gtkrange.c: added ::update_policy arg.
779 (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
780 a default adjustment so this function can be used for derived widgets
781 that depend on the adjustment's existance.
782 (gtk_range_destroy): disconnect the adjustment signal, so we don't
783 get called after we got destroyed, we don't destroy the adjustment
784 in here, because it might have been provided from another widget.
786 * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
787 (gtk_viewport_destroy): same as gtk_range_destroy.
789 * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
792 * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
793 gboolean, indicating whether this widget supports activation.
794 added gtk_widget_scroll_adjustements() to set the scrolling
795 adjustments of a widget.
797 Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
799 * gtk/gtkoptionmenu.c:
800 (gtk_option_menu_remove_contents):
801 (gtk_option_menu_update_contents): removed
802 gtk_container_[un]block_resize() pairs.
805 * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
806 be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
809 * *.c: made deprecated functions issue a message:
810 gtk_clist_set_border, gtk_container_block_resize,
811 gtk_container_unblock_resize, gtk_container_need_resize,
812 gtk_object_class_add_user_signal, gtk_spin_button_construct,
813 gtk_scrolled_window_construct.
814 removed non-functional functions:
815 gtk_container_disable_resize, gtk_container_enable_resize,
816 gtk_clist_set_policy.
818 Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
820 * gtk/gtkbox.c (gtk_box_init):
821 * gtk/gtkdrawingarea.c (gtk_drawing_area_init):
822 * gtk/gtkeventbox.c (gtk_event_box_init):
823 * gtk/gtkfixed.c (gtk_fixed_init):
824 * gtk/gtkframe.c (gtk_frame_init):
825 * gtk/gtkhandlebox.c (gtk_handle_box_init):
826 * gtk/gtkpacker.c (gtk_packer_init):
827 * gtk/gtkmisc.c (gtk_misc_init):
828 * gtk/gtkpreview.c (gtk_preview_init):
829 * gtk/gtkprogress.c (gtk_progress_init):
830 * gtk/gtkprogressbar.c (gtk_progress_bar_init):
831 * gtk/gtkseparator.c (gtk_separator_init):
832 * gtk/gtktable.c (gtk_table_init):
833 * gtk/gtkviewport.c (gtk_viewport_init):
834 * gtk/gtkalignment.c (gtk_alignment_init):
835 removed setting of the GTK_BASIC flag.
839 removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
841 * miscellaneous GtkType and macro fixups.
843 Sat Nov 21 18:53:13 1998 Owen Taylor <otaylor@redhat.com>
845 * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
846 Fixed so it at least works with window managers other
847 than Enlightenment, though it probably needs to be
850 1998-11-21 Andrew T. Veliath <andrewtv@usa.net>
852 * gtk/gtkhandlebox.[ch]: Add shadow_type and
853 gtk_handle_box_set_shadow_type function (plus a
854 GtkHandleBox::shadow arg) to allow configuration of shadow in the
857 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
859 * gtk/gtkcalendar.c: Fix for marking days from
860 Dan Reish <dreish@izzy.net>.
862 Thu Nov 19 00:15:27 1998 Lars Hamann <lars@gtk.org>
864 * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
865 in row_list. (from Samuel Solon <ssolon@usa.net>)
867 * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
868 (gtk_clist_get_column_widget): return column widget
870 Wed Nov 18 11:54:57 1998 Owen Taylor <otaylor@redhat.com>
872 * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
873 that are sent to a toplevel but are not within the
876 * gdk/gdkdnd.c gdk/gdk.h: Added support for a
877 XdndProxy atom which proxies the drag to another window.
879 1998-11-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
881 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
882 that it is not needed.
884 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
885 * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
886 function to correctly determine gdk window position relative to
887 its "root window" - contains check for an Enlightenment
889 * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
890 gdk_window_get_deskrelative_origin to get the origin of dragged
891 handleboxes correctly. Now it works correctly with E.
893 Tue Nov 17 1998 Tuomas Lukka <lukka@iki.fi>
895 * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
896 getting types even though we were not using real type names,
897 just the index. This caused random crashes when more than
898 256 types were defined.
900 1998-11-17 Martin Baulig <martin@home-of-linux.org>
902 * gtk/genmarshal.pl: Put output files in the current directory
903 and not in the $(srcdir) since the VPATH is ignored for built
906 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
909 * gtk/Makefile.am: check for unchanged autogenerated files, so
910 we don't rebuild everything just for adding a new function
912 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
915 gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
916 code thanks to GNOME stock by Eckehard Berns. New function
917 gtk_pixmap_set_build_insensitive to provide ability to turn
920 Tue Nov 17 00:06:29 1998 Lars Hamann <lars@gtk.org>
922 * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
923 new guints : tab_hborder, tab_vborder; marked tab_border deprecated
924 (struct _GtkNotebookPage): new flags : expand, fill, pack
926 * gtk/gtknotebook.h/c
927 (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
929 (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
930 (gtk_notebook_set_tab_hborder): new function. set tab_hborder
931 (gtk_notebook_set_tab_vborder): new function. set tab_vborder
932 (gtk_notebook_query_tab_label): new function. get tab_label widget.
933 (gtk_notebook_set_tab_label): new function. set tab_label widget.
934 (gtk_notebook_set_tab_label_text): new function. set tab_label text.
935 (gtk_notebook_query_menu_label): new function. get tab_label widget.
936 (gtk_notebook_set_menu_label): new function. set tab_label widget.
937 (gtk_notebook_set_menu_label_text): new function. set tab_label text.
938 (gtk_notebook_set_tab_label_packing): new function. set tab_label
939 fill, expand, fill_type
940 (gtk_notebook_query_tab_label_packing): new function. get tab_label
941 fill, expand, fill_type
943 (gtk_notebook_real_page_position): return logic page number
944 (gtk_notebook_search_page) search next/prev logic page
945 (gtk_notebook_update_labels): set logic page number.
946 (gtk_notebook_page_compare): renamed gtk_notebook_find_page
947 (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
948 CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
949 (gtk_notebook_button_press) (gtk_notebook_key_press)
950 (gtk_notebook_focus) (gtk_notebook_pages_allocate)
951 (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
952 use gtk_notebook_search_page
953 (gtk_notebook_page_allocate): fixed allocation bug
954 (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
955 (gtk_notebook_init): unset GTK_NO_WINDOW flag
956 (gtk_notebook_size_request): check whether page->child is visible.
957 changes due to tab h/vborder, homogeneous tabs
958 (gtk_notebook_paint): don't draw invisible tabs
959 (gtk_notebook_switch_page): calculate page_num if it's less than 0
960 (gtk_notebook_append_*) (gtk_notebook_prepend_*)
961 (gtk_notebook_insert_page): removed sanity checks
963 * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
965 Mon Nov 16 15:10:33 1998 Owen Taylor <otaylor@redhat.com>
967 * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
968 (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
970 * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
971 broken. (GtkWidget's default unmap handler should work fine).
972 Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
974 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
976 * gtk/gtkmenubar.[ch]: added shadow_type setting and
977 gtk_menu_bar_set_shadow_type function to allow shadow
978 configurability for menubars
980 * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
983 Mon Nov 16 00:17:53 1998 Tim Janik <timj@gtk.org>
985 * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
986 class creation and parent class' object initializer.
988 1998-11-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
990 * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
991 have assigned it to the window -- there is no point in keeping it around.
992 (gtk_paned_unrealize): No need to destroy the cursor here.
994 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
997 Fri Nov 13 11:22:38 1998 Owen Taylor <otaylor@redhat.com>
999 * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
1000 (gtk-blizzard-981005-0.
1001 Christopher Blizzard <blizzard@applied-theory.com)
1003 * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
1004 gdk_pixmap_foreign_new to gdkx.h.
1006 Fri Nov 13 16:06:48 1998 Owen Taylor <otaylor@redhat.com>
1008 * gtk/Makefile.am: Added rules to generate an empty
1009 GTK+ theme called "Default" upon installation.
1011 * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
1012 of fonts and fontsets.
1013 (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
1015 * gtk/gtkmain.c: Change test to detect glibc's
1016 utf8 based mb* functions to be more specific.
1018 * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
1021 Fri Nov 13 16:43:36 1998 Lars Hamann <lars@gtk.org>
1023 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
1025 (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
1026 event_window if draw_indicator is set
1027 (gtk_toggle_button_set_mode):
1029 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
1031 * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
1032 ensure proper type (SunPro cc complains)
1034 * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
1036 * gtk/gtktogglebutton.c: use our own draw method so we get proper
1037 redraws on active state
1039 Thu Nov 12 00:26:13 1998 Lars Hamann <lars@gtk.org>
1041 * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
1044 * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
1047 Wed Nov 11 19:54:58 1998 Lars Hamann <lars@gtk.org>
1049 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
1050 (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
1051 added ARG_WINDOW_PLACEMENT
1053 * gtk/gtkclist.c (size_allocate_columns): resize column if column
1054 button > column width and auto_resize is set
1055 (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
1056 consider column button width of auto resized columns
1057 (gtk_clist_parent_set): removed
1059 * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
1060 (auto_resize_columns): auto_resize all columns
1061 (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
1062 (column_auto_resize): respect column button width of auto resized
1065 1998-11-10 Martin Baulig <baulig@merkur.uni-trier.de>
1067 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
1068 we can check for latest GTK features.
1070 Mon Nov 9 00:39:20 1998 Lars Hamann <lars@gtk.org>
1072 * gtk/gtkenums.h : new enum GtkCornerType
1073 * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
1075 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
1076 new method to set window_placement.
1077 (gtk_scrolled_window_viewport_allocate)
1078 (gtk_scrolled_window_size_allocate): few changes due to
1080 * gtk/testgtk.c (remove_selection): fixed while loop.
1082 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
1084 * gtk/gtkclist.c: check if column[i].button is valid before calling
1085 gtk_widget_intersect on it in gtk_clist_draw
1087 * gtk/gtkdnd.c: removed unused variable empty_bits
1089 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
1091 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
1092 a boolean (thanks to Elrond for noticing this)
1094 1998-11-07 Jay Cox <jaycox@earthlink.net>
1096 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
1097 * gdk/gdkxid.c: declare xid_ht static
1098 * examples/*/Makefile: get the link ordering right.
1100 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
1102 * gtk/gtkclist.c (gtk_clist_realize): Set background of
1103 title button window to GTK_STATE_NORMAL instead of
1104 GTK_STATE_SELECTED to avoid ugly flicker.
1106 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
1108 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
1109 if adjustments are NULL and list size has changed
1110 (gtk_clist_size_request): return real list requsition,
1111 if adjustments are NULL.
1112 (size_allocate_columns): use button->requisition.with, if column
1114 (list_requisition_width): new function. return full list width.
1115 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
1116 auto create adjustments.
1117 (gtk_clist_motion) (move_vertical) (move_horizontal):
1118 check adjustment != NULL.
1120 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
1122 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
1123 a clear/redraw, not just a redraw, so the focus
1124 gets undrawn properly.
1126 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
1127 Chain to gtk_widget_unrealize() instead of duplicating
1130 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
1132 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
1133 last vestiges of old DND.
1135 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
1137 * gtk/gtkentry.c: Restored inner border to entries,
1138 erase cursors to background image.
1140 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
1142 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
1143 it was identical to paint_flat_box().
1145 * gtk/gtkstyle.c: Coding style fixups.
1147 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
1150 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
1151 Change 'side' for paint_[box/shadow]_gap and paint_extension
1152 to be GtkPositionType instead of a random int.
1154 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
1155 "frame" as detail - an aspectframe should draw identical
1158 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
1160 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
1161 from combine_child_shapes().
1163 * gdk/gdkwindow.c: Merge propagate_shapes() and
1164 propagate_combine_shapes() to remove code duplication.
1166 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
1168 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
1169 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
1170 So allocate some mem if it's not already done.
1172 * clist scrollbar merges from HEAD
1174 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
1176 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
1178 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
1179 of 0x80000000, so we stay within the bounds of a postive signed
1180 int (it broke some compilers)
1182 * gtk/gtkmenushell.c
1183 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
1184 when some of the menuitems are hidden
1186 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
1189 * gtk/gtkwidget.c: add a dummy continue after the line label
1190 next_rect, since some compilers don't like label: }
1192 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
1194 * Okay, so we need the X11R6 keysyms so programs don't have to
1195 worry about them. They don't conflict anyway. Reverted the #ifdef
1198 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
1199 special rule for them (X-derived-headers)
1201 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
1203 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
1204 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
1205 portable, and we really shouldn't be using awk anyway.
1208 * makekeysyms.awk: bye bye
1210 * gtk/gtkaccelgroup.c
1213 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
1215 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
1217 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
1218 and gdkkeysyms.h. Remove those files from CVS.
1220 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
1222 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
1223 of the USE_XIM #ifdef
1225 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1226 even with --include-deps. Slightly different from timj's fix, to avoid
1227 circular dependency with gtkmarshal.c
1232 * gtk/gtkfontsel.[ch]
1235 * gtk/gtkobject.[ch]
1236 * gtk/testgtk.c: merges from HEAD
1239 * gtk/gtkradiomenuitem.c
1240 * gtk/gtktreeitem.c: cleanups
1242 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
1244 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
1246 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
1248 * configure.in: AIX has libpthreads, to make sure you can have
1249 more than one thread. Also add -D_THREAD_SAFE, and reorder
1250 configure.in so CFLAGS doesn't get clobbered when we actually
1253 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
1256 * gtk/testdnd.c: removed unused variable "buf"
1258 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
1260 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
1261 remove_link(), not remove()
1263 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
1265 * gdk/gdkrgb.c: use glib endian stuff
1267 * configure.in: don't need to check for endianness anymore
1269 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
1271 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
1273 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
1274 all toplevel widgets, not toplevel windows. (I.e.,
1275 plugs should be reset)
1277 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
1278 _do_ need to notify the other toplevels - by the time
1279 the get the client messages, the RC file dates will
1282 * gtk/gtkcontainer.h: Added a function call to list
1283 every toplevel widget.
1285 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
1286 Don't send client messages to _every_ window on display!
1288 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
1290 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
1291 when dragging across widgets, only in drags
1294 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
1296 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
1297 Emit "drag_end" signal at end of drag.
1299 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
1301 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
1302 for "gtk-embedded" data currently set by
1303 GtkSocket, and use that to forward client message
1304 on to embedded windows. Only reset our own toplevel -
1305 the others will handle themselves. (Now that
1306 GtkMenus live in GtkWindows)
1308 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
1310 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
1311 client window finding code so that it works with
1312 WM's other than fvwm.
1314 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
1316 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
1317 the "GtkDrawWindow" class, which is a descendent
1318 of the Window class which leaves its background alone.
1319 Essentially, a toplevel drawing area, though it does
1320 allow adding a child.
1322 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
1324 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
1325 merging RC styles. Report new share/themes path for
1326 themes directory. Deref theme engines when appropriate.
1328 * gtk/gtkclist.c: Set all backgrounds in _style_set().
1329 Make sure that pixel for xor_gc is never 0.
1331 * gtk/gtkctree.c: Choose colors for plus/minus more
1332 carefully, in a hopefully style-independent fashion.
1333 (Still needs a bit more work)
1335 * gtk/gtkwidget.c: Don't send expose events to widgets
1336 which are about to be resized and redrawn. (Needs a
1339 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
1340 drawing on tabs for newly allocated, un-sized
1341 pages - we'll get the size wrong.
1343 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
1345 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
1346 up stupidities in last commit.
1348 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
1350 * gtk/gtkwidget.c: When handling queued resizes, account
1351 for handleboxes, where the widget heirarchy is different
1352 than the window heirarchy by just queueing a resize on
1353 the entire handlebox if the detached child is changed.
1355 - Remove widgets from the redraw queue when reparenting,
1356 even if not unrealizing. We queue a resize/redraw in
1359 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
1360 * gtk/gtkstyle.c: added check to see if the widget has been shaped
1361 byt the app via gtk_widget_shape_combine_mask and if it has does
1362 not reset the shape on theme change.
1364 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1366 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1367 want to stat the entries (like /afs), and assume everything in
1368 those directories is a subdirectory.
1370 - When following a path, try to open components even when
1371 we don't find them in their parent's directory to
1372 support automounters.
1374 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
1376 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
1377 now at least compiles again.
1379 * gdk/gdk.c (gdk_event_translate): Don't pass events
1380 on destroyed widgets to the gdk_input layer.
1382 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
1384 * gtk/gtkthemes.c: Use g_module instead of dlopen()
1386 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
1388 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
1389 if we've changed widgets since the expose event
1392 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
1394 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
1395 to restore approximate bin compatibility with the
1396 non-themes branch. (This does break bin compat
1397 within the themes branch.)
1399 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
1401 * gtk/gtklabel.c (gtk_label_set): Eliminate a
1402 gdk_window_clear_area() that snuck in with the
1403 menu underlines merge.
1405 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
1407 * gtk/gtktext.c: Fixed some remaining background drawing,
1408 merges from main branch, cleanups.
1410 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
1412 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
1413 dereference NULL focus tab.
1415 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
1416 functions since we need to both show/hide and
1417 queue a redraw. (There's some duplication of drawing here,
1418 we probably should only be queuing a redraw on the
1419 "value" portion of the scale.)
1421 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
1423 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
1424 into the theme-drawing framework. We do this by making them,
1425 like check/radio-buttons, no-window widgets with subwindows. We
1426 then move the value by calling gtk_widget_queue_clear() and only
1427 redraw the value in our draw() / expose() handler. A virtual
1428 function clear_background is added which queues a clear on the
1429 "background" portion of the widget.
1431 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
1433 * gtk/gtktext.c (mark_bg_gc): Make background colors work
1434 again. (We can't always paint the background with a
1435 paint() function - only do that for selected text)
1437 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
1439 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
1440 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
1442 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
1443 the themes can't be built as part of the same build since
1444 they depend on gdk_imlib.
1446 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
1448 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
1451 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
1454 - Upgrade to libtool-1.2b + patch to add shared library dependencies
1455 for Linux. (Needs to be extended to other platforms where they
1458 - Check for -ldl so this branch should build on all platforms, though
1459 themes will work on all platforms they could work on.
1461 - Use -version and -release simultaneously: sonames stay as they are
1462 in the current scheme, but -lgtk-1.1 changes to -lgtk.
1464 - Added in extra -l flags to library LDFLAGS so we get shared library
1465 dependencies against X libs and -ldl. (But not libgtk against
1466 libgdk or libglib yet, since dependencies against uninstalled
1467 libraries aren't portable)
1469 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
1470 * gtkrc.c - added api calls to find module and theme paths from gtk.
1471 nuked gtk_install_prefix global.
1473 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1474 * fixed gtk_install_prefix global.
1476 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
1477 * added gtk_install_prefix global const variabel to find where gtk is
1480 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1481 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
1484 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1485 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
1487 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
1488 * Fixed minor problem in gtkhandlebox.c with drawing, and some
1489 notebook stuff. Also pixmap theme is now "clean" again.
1491 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
1492 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
1493 queued area resizing once more.
1495 Mon Aug 10 23:09:30 EDT 1998
1496 * Added a few drawing fixes for notebook and other widgets. finished
1497 pixmap theme up to the level that can be supported so far. (need to
1498 add path discovery 9ie where is the rc fiel from - add to pixmap
1499 path so we can get theimages from there too). then we can package
1500 themes. After that need to add to theme seartch path stuff in users
1503 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
1505 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
1506 drawing area, draw in an expose handler.
1508 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
1511 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
1513 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
1514 creation of GC's so that they will be set before
1515 they are used for map events (why are they used there?)
1517 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
1518 be queued in multiple times in the queue.
1520 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
1522 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
1523 clip rects (or do anything) for shadow_none.
1525 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
1527 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
1528 Yes, it was needed. draw() and expose() are _not_
1531 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
1532 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
1534 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1535 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
1536 more baby oooh yeah more more MORE YES YES.
1538 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1539 * hopefully fixed problem wiht togglebuttons acting like
1540 radiobuttons in gtktogglebutton.c
1542 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1543 * fixed another drawing buglet in the frame drawing code (actually
1544 in the clearing code but anyway in gtkstyle.c)
1546 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
1547 * Fixed warning from colorsel widget...
1549 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
1550 * Fixed defautl drawing code to no longer clobber the original style
1551 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
1554 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
1556 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
1558 * gtk/gtktooltips.c: Pass a widget (the window) to the
1559 drawing function instead of the GtkTooltips.
1561 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
1563 * gdk/gdkwindow.c: Abstract out checking for shape
1564 extension into a function.
1566 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
1567 Remove extra callls to gtk_window_draw().
1569 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
1571 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
1573 * themes/th_main.c: Moved messages around so they are
1574 printed before destroying strings.
1576 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
1578 * gdk/gdk.c: Fairly simple implementation of expose compression.
1579 (No GraphicsExpose compression yet, always compress
1580 with the equivalent of XtCompressMultiple - no compression
1581 of Expose events across non-Expose events)
1583 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
1584 Find rectangle bounding two rectangles.
1586 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
1587 in gdk_default_draw_shadow()
1589 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
1590 * Fixed drawing functions to handle switching themes on the fly
1591 gracefully and look decent.
1593 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
1594 * Added all the theme drawing code to all widgets, fixed up minor
1595 nigglies in some widgets when it comes to themes, seem to be
1596 running into some funky behavior with clipping rects in GC's. Too
1597 many files to list here. (all files that now use gtk_paint_* are
1600 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
1602 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
1603 Set up the demo theme so it is loaded from the RC file.
1605 * themes/th_draw.c: Alleviate the hardcoded paths a wee
1606 bit. (use $HOME/themes/)
1608 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
1609 the RC file via dlopen()
1611 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
1613 Internal handling of styles and RC styles pretty much
1614 completely reworked for Theme work.
1617 - Added routines for virtualization of RcStyle and Style handling.
1618 - Temporary "sample" inline theme-engine. (Does nothing
1619 but print out a few messages.
1622 - Made GtkRcStyle public, added flags to tell if particular
1623 colors have been set.
1624 - RC Styles are "transparent", and the final style for
1625 a widget is the composition of all matching styles
1626 - Added pointer to GtkThemeEngine, and gpointer engine_data
1627 to RC style and style.
1628 - Parse "engine" keyword, load the appropriate theme engine
1629 and call the engine's parser.
1632 - Keep a GtkRcStyle * in styles created from Rc Styles.
1633 - Load up images from RC file at style attachment time.
1634 - Call ->engine->foo() at appropriate times.
1635 - Don't use a GCache. All incarnations for a style are
1636 just linked together in a list, depend on the RC style
1637 code to find the existing copy.
1639 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
1641 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
1642 of partial areas. This can be done either relative
1643 to the existing windows (gtk_widget_queue_clear[_area]())
1644 or relative to the future allocation of the widget
1645 (gtk_widget_queue_draw[_area]).
1647 The initial implementation is pretty braindead, but
1650 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
1651 in favor of gtk_widget_queue_clear().
1653 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
1654 flags in favor of gtk_widget_queue_clear()
1656 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
1658 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
1659 handling of partially clipped areas.
1661 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
1663 * gtk/gtkclist.h (struct _GtkCListClass)
1664 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1666 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
1668 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
1669 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
1671 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
1672 "hadjustment" & "vadjustment"
1673 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
1674 set/get_arg functions
1675 (gtk_clist_construct): don't create/adjust scrollbars.
1676 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
1677 to set h/vadjustments
1678 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
1679 to query h/vadjustments
1680 (create_scrollbars): removed.
1681 (create_adjustments): replacement for create_scrollbars
1682 (gtk_clist_new): call gtk_clist_new_with_titles
1683 (gtk_clist_new_with_titles): don't warn on titles == NULL
1684 (move_horizontal): use CLAMP instead
1685 (gtk_clist_set_policy): deprecated method.
1686 use gtk_scrolled_window_set_policy instead.
1687 (vadjustment_value_changed): use clist->vadj.
1688 (adjust_scrollbars): renamed to adjust_adjustments
1689 (adjust_adjustments): former adjust_scrollbars
1690 (gtk_clist_destroy): unref adjustments
1691 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
1692 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
1693 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
1694 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
1695 (gtk_clist_set_row_height) (real_resize_column):
1696 call adjust_adjustments
1697 (gtk_clist_moveto): return if clist has no adjustments yet.
1698 (gtk_clist_parent_set): new GtkWidget::parent_set function.
1699 Autogenerate h/vadjustments if needed.
1700 (move_horizontal) (move_vertical): some cleanups
1702 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
1703 call only gtk_viewport_set_h/vadjustment and let these functions
1705 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
1706 generate a new adjustment if needed
1708 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
1709 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
1711 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1712 queue_resize if visibility of scrollbars changes
1713 (gtk_scrolled_window_remove): only call container_remove with
1714 scrolled_window->viewport automatically if viewport was autogenerated
1715 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
1716 auto create a viewport only if widget does not take h/vadjustments.
1717 (gtk_scrolled_window_construct): don't generate a viewport
1719 (gtk_scrolled_window_forall): call callback with viewport in any case
1720 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
1722 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
1723 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
1727 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
1728 in conjunction with clists/ctrees
1730 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
1731 in conjunction with clists
1733 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
1734 in conjunction with clists
1736 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
1738 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
1739 (gtk_ctree_remove_node): select focus_row if needed
1740 (cell_size_request): only get pixmap size if pixmap != NULL
1742 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
1744 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
1745 GTK_IS_WIDGET (widget):
1747 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
1749 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
1750 focus_row after a remove_row call.
1752 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
1754 * gtk/gtkoptionmenu.c
1755 * gtk/gtkmenushell.c: make option menus work when some of the
1756 menuitems are hidden - previously, option menu would popup too
1759 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
1761 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
1763 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
1765 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
1767 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
1768 (GDK_WLIBS): New variable. Lists extra libraries needed to use
1770 * gtk-config.in (--libs): List $GDK_WLIBS, too.
1772 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1774 * Released GTK+ 1.1.3
1780 * docs/gtk-config.1: updated for v1.1.3
1784 * docs/Makefile.am: Includes new 'make release' as well as
1785 'make sanity'. Also handles html and text creation from html,
1786 and puts them into the distribution
1788 * docs/Makefile.sgml: removed, similar functionality is now in
1789 the Makefile.am file
1791 * docs/.cvsignore: ignore html and text directories
1792 * docs/glib.texi: removed (now in glib dist)
1794 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
1796 * gtk/gtklist.c (gtk_list_remove_items_internal):
1797 free undo_un/selection, unselect list_item before disconnect
1799 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
1801 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
1802 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
1803 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
1804 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
1805 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
1806 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
1807 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
1808 new functions. These functions are signal connected to inserted
1809 list_items, to handle key bindings and GtkItem::de/select/toggle
1812 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
1813 gtk_object_class_add_signals call.
1814 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
1815 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
1816 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
1817 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
1818 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
1819 removed. These functions are handled via connected
1820 gtk_list_signal_* functions now
1822 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
1824 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1825 even with --include-deps:
1826 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
1828 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
1830 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
1831 gtk_object_data_set_destroy to fit the gtkobject.h API.
1833 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
1836 Added support for an extra 'base' filter which an application can
1837 set to restrict the fonts available to the user (e.g. a terminal
1838 program only wants the user to be able to select fixed-width fonts).
1839 The type of font (bitmap/scalable/scaled bitmap) is now
1840 also a part of the filter, so that an application can
1841 request that only scalable fonts are shown.
1842 There are new functions to set the base & user filters.
1843 I've also stopped the up/down key press signals getting
1844 to the clists since the font selection widget handles
1845 them itself. It acted a bit strangely before.
1847 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
1849 * gtk/gtkmain.c (gtk_init): support an environment variable
1850 GTK_MODULES= which takes a colon sperated list of module names
1851 automatically loaded at gtk_init() startup.
1853 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
1855 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1857 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
1859 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
1862 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
1864 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
1867 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
1869 * gtk/gtkfilesel.h: GtkType and macro fixups
1870 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
1871 for the file selection widget to try a completion on (set the
1874 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
1876 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
1877 slight speed improvement and lessens code duplication.
1879 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
1881 * gtk/gtkdnd.c: Always send "drag_leave" to dests
1882 without GTK_DEST_DEFAULT_MOTION.
1884 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
1886 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
1887 on destroyed windows so we clear the XID table properly.
1888 Finish up restructure of return value handling that
1889 was half-done before.
1891 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
1893 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
1894 the window tree more comprehensively, so that we find
1895 client windows hidden under non-toplevels.
1897 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
1899 * gtk/gtkselection.c (gtk_selection_data_set):
1900 Maintain the null-termintation guarantee, even when
1901 data = NULL, length = 0. (Warn on data = NULL,
1904 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
1906 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
1907 into function prototype for drag_data_received.
1909 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
1911 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1913 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
1915 * gtk/gtkclist.c: rearranged some functions
1916 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
1918 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
1919 (gtk_clist_set_border): deprecated function, use
1920 gtk_clist_set_shadow_type instead.
1921 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
1922 (adjust_scrollbars): some cleanups
1923 (select_row) (unselect_row): removed. replaced by equivalent
1924 gtk_signal_emit calls
1925 (add_style_data): removed, use gtk_clist_style_set instead
1926 (gtk_clist_style_set): fill in size data, after style was set.
1927 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
1928 (gtk_clist_set_cell_style): auto_resize columns if needed
1929 (column_auto_resize): resize column if needed for auto_resize
1930 (real_clear): disable auto_resize while list destroy
1931 (resize_column): removed
1933 * gtk/gtkctree.c : (gtk_ctree_remove_node)
1934 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
1935 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
1936 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
1937 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
1938 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
1939 auto_resize columns if needed
1940 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
1941 (real_clear): disable auto_resize while processing the tree
1943 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
1946 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
1948 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
1949 typo - look for right atom on transfer failures.
1951 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
1953 * gtk/gtkwidget.c gtkmarshal.list: Change signal
1954 for drag_data_get to match the use that was being
1955 made of it everywhere else...
1957 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
1959 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
1960 mechanism, that is used for the DND messages.
1962 Removed all the old DND code.
1964 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
1965 get the visual of a given colormap.
1967 * gtk/gtkcolorsel.c: Conversion to new DND, drag
1970 * gdk/gdk.h gdk/gdkdnd.c: The low-level
1971 X oriented portions of drag and drop protocols.
1972 Sending and receiving client messages, and navigating
1975 * gdk/gdkimage.c: added a gdk_flush() when destroying
1976 SHM images to hopefully make it more likely that
1977 X will gracefully handle the segment being destroyed.
1979 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
1980 DND debugging flags.
1982 * gtk/gtkeditable.[ch]: Updates for the selection handling
1985 * gtk/gtkselection.[ch]: Added GtkTargetList, a
1986 refcounted data structure for keeping track of lists
1987 of GdkAtom + information. Removed selection_handler_add
1988 in favor of a "drag_data_get" signal.
1990 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
1991 dependent) parts of the DND protocols, display of drag icons,
1992 drag-under highlighting, and the "default handlers".
1994 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
1995 windows that are used for reliable pointer grabs and
1996 selection handling in the DND code.
1998 * gtk/testdnd.c: New test program for new DND. (Old
1999 DND tests in testgtk still need to be converted.)
2001 * gtk/testselection.c: Use the new selection API.
2003 * docs/dnd_internals: Start at describing how
2004 all the new code works inside.
2006 * docs/Changes-1.2.txt: New file describing source-incompatible
2007 changes in GTK+-1.2.
2009 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
2011 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
2012 the right list node.
2014 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
2015 to the XID table so we can receive events on it.
2017 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
2019 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
2020 to get the timestamp from a generic event.
2022 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
2024 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
2025 that safely adds additional events to a widget's event
2026 mask, even if the widget has previously been realized.
2027 (We can do this, but not remove events from the event
2030 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
2032 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
2033 for AnyPropertyType.
2035 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
2037 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
2040 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
2042 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
2045 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
2047 * gdk/gdk.c (gdk_event_translate): Removed printing
2048 of unknown window lookup warnings. (Made it
2049 a GDK_NOTE) - they happen in many circumstances.
2051 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
2053 * Call XFilterEvent() on events we get for unknown
2054 windows, since it may be the window Xlib uses to
2055 communicate with the IM.
2056 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
2058 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2060 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2063 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
2065 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
2066 message for return_value + GTK_RUN_FIRST.
2068 1998-10-18 Martin Baulig <martin@home-of-linux.org>
2070 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
2071 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
2073 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
2075 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
2076 styles of inserted row
2077 (change_style): change style of focus_row
2079 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
2080 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
2081 to set/get row/cell styles.
2082 (gtk_clist_realize): attach row and cell style, allocate row colors.
2083 (gtk_clist_unrealize): detach row and cell styles.
2084 (get_cell_style): new function. get correct cell style.
2085 (draw_cell_pixmap): new function.
2086 (draw_row): draw cells with row or cell styles.
2087 (row_new): set cell and row styles to NULL.
2088 (row_delete): detach & unref cell and row styles.
2090 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
2091 new functions to attach/detach styles and allocate colors.
2092 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
2093 styles of invisible nodes.
2094 (draw_cell_pixmap): new function.
2095 (get_cell_style): new function. get correct cell style.
2096 (gtk_ctree_draw_expander): new function. draw tree expander.
2097 (gtk_ctree_draw_lines): new function.draw tree lines.
2098 (draw_row): draw cells with row or cell styles.
2099 (row_new): set cell and row styles to NULL.
2100 (row_delete): detach & unref cell and row styles.
2101 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
2102 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
2103 Analogons of GtkCList functions
2104 (gtk_ctree_set_spacing): new function. set spacing between
2105 tree expander and cell contents
2106 (gtk_ctree_set_expander_style): new function. set expander style
2108 (ctree_is_hot_spot): few changes due to draw_row modifications.
2110 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
2112 * gtk/gtkcombo.c: try completion on MOD1-TAB.
2113 Handle case when the combo->list is empty.
2115 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
2117 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
2118 handlers that have not yet been disconnected (finally managed to
2119 trigger the gtk_signal_handler_unref() paranoid warning).
2121 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
2123 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
2124 width and height which is -1 and not -2.
2126 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
2129 * autogen.sh: we need libtool 1.2b now
2131 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
2133 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
2134 and bottom attach arguments as mandatory and readjust the table size
2135 and opposing edge accordingly if required. this way the order in which
2136 the arguments are set doesn't matter.
2138 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
2140 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
2141 message to print out parent class name correctly.
2143 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
2147 removed functions gtk_object_set_data_destroy and
2148 gtk_object_set_data_destroy_by_id.
2149 added functions gtk_object_remove_no_notify and
2150 gtk_object_remove_no_notify_by_id which will remove a certain data
2151 portion without invokation of its destroy notifier, this should only
2152 be used in very controled circumstances.
2154 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
2156 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
2157 size_allocate_title_buttons call
2158 (gtk_clist_realize): changed initial column.window position
2160 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
2162 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
2164 * gtk/gtkctree.c (create_xor_gc): removed
2165 (gtk_ctree_button_press): set correct line_attributes for
2166 clist->xor_gc on drag start
2167 (gtk_ctree_button_release): reset clist->xor_gc
2169 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
2172 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
2173 which were in place to fixup emacs' cc-mode indentation.
2174 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
2175 proper way to achive this and doesn't produce problems for
2176 stupid pragma-related compiler bugs. ;)
2178 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
2180 * gtk/gtkclist.h: new signal GtkCList::resize_column.
2181 * gtk/gtkclist.c (draw_row): don't draw invisible columns
2182 (size_allocate_title_buttons) (size_allocate_columns):
2183 skip invisible columns
2184 (new_column_width): take min/max_width into account
2185 (gtk_clist_button_release) (gtk_clist_motion):
2186 changes due to changed new_column_width function
2187 (LIST_WIDTH): changed define to inline function.
2188 (real_resize_column): class function for resize_column signal
2189 (gtk_clist_motion): fixed autoscrolling for column resizes
2190 (gtk_clist_set_column_visibility): don't hide last visible column,
2191 changed visible arg to gboolean
2192 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
2193 new functions : set min/max width of a column
2194 (gtk_clist_set_column_resizeable): new function : enable/disable
2195 column resize operations by mouse
2197 * gtk/gtkctree.c (draw_row): don't draw invisible columns
2198 (ctree_is_hot_spot): return FALSE if tree_column is invisible
2199 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
2200 tree_column is invisible
2201 (gtk_ctree_find_all_by_row_data)
2202 (gtk_ctree_find_all_by_row_data_custom): new function from
2203 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
2204 GtkCTreeNodes with row->data == data.
2206 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
2208 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
2209 memory (Martin Pool <mbp@wistful.humbug.org.au>).
2211 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
2213 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
2214 should have been guint32. Thanks to Tristan Colgate for finding it.
2216 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2218 * gtk/gtkcalendar.h:
2219 gtk/gtkcalendar.c: More changes:
2220 - The day with focus is now seperated from the day selected
2221 - The day with focus has the xor's line around it
2222 - The selected day is now standard selected style
2223 - The week names and week numbers are now also drawn
2225 - Space now selects the day which has focus
2227 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2229 * gtk/gtkcalendar.h:
2230 gtk/gtkcalendar.c: Some significant changes, including:
2231 - No longer draw focus around entire widget, only around
2232 the day which has focus
2233 - Draw relief around entire widget like originally planned
2234 - Show header and day names by default
2235 - Move data private to the widget out of GtkCalendar struct
2236 and only point to it with a gpointer
2237 - Remove some old unused variables from GtkCalendar struct
2239 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
2241 * docs/gtk_tut.sgml: update I've had sat around:
2242 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
2243 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
2244 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
2246 1998-10-01 Martin Baulig <martin@home-of-linux.org>
2248 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
2250 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
2251 Makes it possible to individually show and hide columns.
2252 (size_allocate_columns): Adapted to keep track of hidden columns.
2253 (size_allocate_title_buttons): Likewise.
2255 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
2257 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
2258 fundamental types, collect an argument of the type returned from
2259 gtk_type_get_varargs_type(). removed the first macro argument which
2260 was just the same as the fundamental type of the *arg passed to
2262 * gtk/gtkarg.c (gtk_args_collect):
2263 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
2265 * gtk/gtktypeutils.h:
2266 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
2267 gtk_type_get_varargs_type() to set and query the varargs collect
2268 type used for a fundamental type, registered outside of Gtk.
2270 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
2271 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
2274 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
2275 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
2278 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
2280 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
2281 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
2282 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
2284 (real_tree_expand) (real_tree_collapse):
2285 don't expand/collapse a leaf
2287 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
2289 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
2290 segfault when looking up a non-existant value name (reported by
2291 Pablo <pcj+gtk@primenet.com>).
2293 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
2295 * gtk/gtkclist.h (gtk_clist_prepend):
2296 * gtk/gtkclist.c (gtk_clist_prepend): new function.
2297 (gtk_clist_insert): added g_return_val_if_fail()
2298 statements. accept a row parameter < 0 or > clist->rows to indicate
2300 (real_clear): first clean up all internal pointers and lists (e.g.
2301 clist->row_list or clist->rows), then delete the distinct rows. this
2302 is required because of destroy notifiers, we need to have all internal
2303 structures updated and be reentrant.
2305 * gtk/gtkcalendar.h:
2306 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
2307 GtkCalendarClass signal methods.
2308 GtkType and macro fixups, put `void' into () prototypes, avoid C++
2309 style comments, indentation fixes, fixed some g_return_if_fail()
2311 (gtk_calendar_paint_header):
2312 (gtk_calendar_paint_day_names):
2313 (gtk_calendar_paint_week_numbers):
2314 (gtk_calendar_paint_main): made these static functions.
2315 (gtk_calendar_select_month):
2316 (gtk_calendar_select_day):
2317 (gtk_calendar_mark_day):
2318 (gtk_calendar_unmark_day):
2319 (gtk_calendar_get_date): signedness corrections, use guints
2321 (gtk_calendar_size_request): removed unused variables.
2323 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
2325 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
2326 widgets in the ->widgets_by_action list that have a callback
2327 defined (not only those with a callback_action!=0).
2329 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2331 * gtk/gtkcalendar.h:
2333 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
2335 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2337 * gtk/gtkcalendar.h:
2339 examples/calendar: Added gtkcalendar widget and demo
2341 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
2343 * gtk/gtkclist.c (gtk_clist_sort):
2345 (gtk_clist_unselect_all):
2346 (gtk_clist_select_all): adde g_return_if_fail() statements.
2348 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
2350 * configure.in: set binary age and interface age to 0.
2352 * gtk/gtkspinbutton.h:
2353 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
2354 gtk_spin_button_configure. gtk_spin_button_construct is still defined
2355 as an alias for gtk_spin_button_configure for source compatibility,
2356 but actuall use is deprecated.
2357 typeness corrections, i.e. gint->gboolean and gint->guint.
2358 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
2359 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
2360 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
2361 GtkSpinButton::adjustment, GtkSpinButton::digits and
2362 GtkSpinButton::climb_rate.
2363 GtkType and macro fixups.
2365 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
2367 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
2368 the *real* geometry position of a window, taken possible window
2369 manager offsets into account.
2370 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
2371 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
2372 it does fail though for amiwm which adds windows to a pseudo root
2373 window, and for icewm by a small offset because it defines the
2374 geometry position whithin its border.
2376 * gtk/testgtk.c: added "saved position" test to figure how
2377 gdk_window_get_root_origin() interacts with window managers (repopup
2378 this window to figure ;).
2380 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
2382 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
2387 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
2388 existing code was buggy in letting ->ref_count==0 pass through and
2389 then failing the living_objs_ht assertion).
2391 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
2392 pixtext fields (Roman Pozlevich <roma@botik.ru>).
2394 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2396 * Released GTK+ 1.1.2
2398 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
2400 * gtk/Makefile.am: use $(PERL) instead of perl
2401 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
2402 also much faster to render.
2404 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
2406 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
2407 the required memory block, rather than allocating it newly from
2408 scratch and doing a full-blown block copy on it.
2410 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
2412 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
2413 binary age 0, interface age 0.
2415 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
2417 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
2419 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
2422 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
2424 * HACKING: indent other than GNU indent should be OK
2427 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
2428 instead of piping through indent. If indent wasn't
2429 found in ./configure don't bother indenting at
2432 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
2434 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
2436 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
2438 * gtk/Makefile.am: use $(AWK) instead of awk
2440 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
2442 * gtk/Makefile.am (gdk_headers):
2443 Remove references to $(top_srcdir).
2444 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
2445 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
2447 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
2449 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
2450 GData*object_data to cure compiler warnings.
2452 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
2456 * mkinstalldirs: updated to latest automake version
2458 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
2460 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
2461 (gtkinclude_HEADERS): ... here.
2462 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
2464 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
2466 * HACKING: added GNU indent, as it is now required to successfully
2467 build gtk+. Should this be detected in autoconf, possibly?
2469 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
2471 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
2472 change library versioning scheme to drop LT_RELEASE
2473 from the -l line, while keeping it in the soname.
2475 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
2477 * configure.in Makefile.in: define a MAINT-like variable REBUILD
2478 which is set if Perl and awk are found, and autogenerated sources
2479 can be rebuilt. Remove the auto-generated sources from
2482 Add dependencies so that the autogenerated sources are
2483 rebuilt if the files they depend on change.
2484 (This unfortunately currently results in the entire
2485 gtk/ directory being rebuilt when any header changes.
2486 Moving all enums to gtkenums.h would fix this.)
2488 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
2490 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
2491 gtk_object_set_data_destroy_by_id functions to set the destroy
2492 function pointer for an existing data portion.
2494 * gtk/gtkobject.c: removed the GtkObjectData implementation and
2495 made all gtk_object_*data* functions use the GLib equivalents.
2497 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
2499 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
2500 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
2501 (widget != NULL), otherwise radio button insertion will not work
2502 -- the widget argument is NULL for the first radio button in the
2505 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
2507 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
2508 of g_new to malloc(), added back in the one place where
2509 it actually mattered. #include <stdlib.h>.
2511 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
2513 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
2515 * gtk/gtkfilesel.c: Keep a list of directories in which we never
2516 want to stat the entries (like /afs), and assume everything in
2517 those directories is a subdirectory.
2519 - When following a path, try to open components even when
2520 we don't find them in their parent's directory to
2521 support automounters.
2523 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
2525 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
2526 a new size from the WM if we asked for the same size
2527 before and our request was rejected.
2529 * gtk/gtkwindow.c (gtk_window_configure_event): If
2530 in response to a request, we get a configure event
2531 with unchanged dimensions, send a synthetic expose
2532 since ForgetGravity won't expose our window.
2534 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
2536 * gtk/gtktext.c (adjust_adj): Change the way we
2537 set the adjustments on resize so that it tries to
2538 keep the beginning of the text in approximately
2541 Removed assertion that the above change made invalid.
2543 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
2545 * gtk/gtktext.c: - Save first_cut_pixels when switching
2546 sizes, so that if we switch to the _same_ size,
2547 we don't move lines around.
2549 - Make sure that the text area always has a size of at
2550 least 1x1, then do all computations when realized.
2552 - When fetching lines in recompute_geometry, make
2553 sure we fetch enough lines to cover the screen.
2555 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2557 * gdk/gdkimage.c: changed g_new()s to malloc()s and
2558 g_free()s to free()s to avoid mixing g_new()s with
2559 free()s. X itself uses free() on some of the
2562 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
2564 * gtkfilesel.c: Maintain a list of directories like
2565 /afs we know contain only directories, and avoid
2566 stat'ing files in those directories. (Because
2567 stat'ing all files in /afs is extremely expensive)
2569 To support automounters, try to open directories,
2570 even if we couldn't find them when reading their
2573 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
2575 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
2576 to allow the same gtk.m4 to work for 1.0.x and
2579 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
2581 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
2582 to set/unset the selectable flag of a single row.
2583 (gtk_clist_get_selectable): new function
2584 to get the state of the selectable flag
2586 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
2587 (gtk_ctree_node_get_selectable): clist analogons
2589 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
2591 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
2594 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
2595 bugs in the 4bit gray cases.
2597 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
2599 * configure.in: added -posix check for NeXTStep
2601 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
2602 a unique buffer for each thread.
2604 * docs/gtk-config.1: clarified copyright
2606 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
2608 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
2610 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
2612 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
2615 * ltconfig: use GLib's ltconfig which honours lcc.
2617 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
2619 * configure.in: comment the -std1 check and save LIBS properly
2621 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2623 * gtk/testrgb.c: #include <stdlib.h>
2625 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
2627 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
2628 When the pointer is grabbed on an input window,
2629 either explicitely, or through press-grab, and
2630 then grabbed on a non-input window, ungrab the
2633 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
2635 * gtk/gtktypeutils.h: don't include any gdk headers.
2636 added structure definitions for GtkTypeObject and GtkTypeClass,
2637 which cover the very basic fields of GtkObject and GtkObjectClass,
2638 which are actually used by the type system.
2640 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
2641 we only refer to our own structures. improved class inheritance
2642 sanity checking a bit.
2644 * gtk/gtkobject.h: placed appropriate comments at the beginnings
2645 of the GtkObject and GtkObjectClass structures, which explain
2646 their relationship to GtkTypeObject and GtkTypeClass.
2648 * gtk/gtktypeutils.h:
2650 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
2651 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
2652 gtkobject.h to gtktypeutils.h.
2656 removed gtk_object_check_cast() and gtk_object_check_class_cast()
2657 functions. to keep source compatibility, we can provide macro aliases
2658 for the corresponding gtk_type_* functions. but then again, people
2659 shouldn't have been using these functions anyways since they were part
2660 of Gtk's internal API.
2662 * gtk/gtktypeutils.h:
2663 * gtk/gtktypeutils.c:
2664 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
2665 functions to check GtkTypeObject and GtkTypeClass types.
2667 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
2670 * gtk/gtkctree.c: `const' fixups.
2673 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
2675 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
2676 if it is passed as NULL.
2678 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
2680 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
2681 big-endian cases. Added a 4bpp packed gray mode (somewhat
2682 incorrectly hardwired to MSB), which should take care of
2685 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
2687 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
2688 GtkSIgnalQuery leak.
2690 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
2692 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
2693 GTK_MENU_DIR_CHILD: check for the existance of
2694 menu_shell->active_menu_item before accessing its child.
2696 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
2697 don't, make a default selection.
2699 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
2701 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
2702 the children with _forall for sensitivity changes and with
2703 _foreach on pure state changes. this fixes a lot of the
2704 old inclusions of internal widgets into _foreach calls.
2706 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
2707 do the work. don't walk the subtrees of first level children.
2709 * gtk/gtktreeitem.c: provide a _forall implementation,
2710 which walks the subtrees as well for include_internals.
2712 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
2713 the submenus as well for include_internals.
2715 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
2716 implemented gtk_scrolled_window_forall, which will iterate over
2717 the viewport and the scrollbars for gtk_container_forall or
2718 iterate over the viewports children for gtk_container_foreach.
2724 * gtk/gtkmenushell.c:
2730 * gtk/gtknotebook.c:
2731 removed the old gtk_*_foreach functions and provided gtk_*_forall.
2733 * gtk/gtknotebook.c:
2734 (gtk_notebook_real_switch_page): expose tabs.
2735 (gtk_notebook_page_num): new function to return the page number
2736 of a distinct child.
2737 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
2738 under some circumstances.
2740 * gtk/gtktreeitem.c:
2741 (gtk_real_tree_item_select):
2742 (gtk_real_tree_item_deselect): major fixes.
2743 some general fixups wrt queue_redraw, and tree items not being
2746 * gtk/gtklistitem.c:
2747 (gtk_real_list_item_select):
2748 (gtk_real_list_item_deselect):
2749 (gtk_real_list_item_toggle):
2750 removed unneccessary queue_redraw calls.
2752 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
2754 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
2755 automatically popup the menu on space bar.
2757 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
2759 * gtk/gtkcontainer.h:
2760 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
2761 method), which acts similar to gtk_container_foreach(), but iterates
2762 over internal children. the GtkContainer::foreach signal vanished in
2763 favour of a new class method ->forall() that optionally includes
2766 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
2767 but a _forall implementation, since all child widgets we have are
2769 (column_button_create): set the parent window prior
2770 to gtk_widget_set_parent().
2773 exchanged all calls to gtk_container_foreach() with
2774 gtk_container_forall().
2777 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
2778 the GtkWidget::composite_child argument. to have a widget created
2779 with the flag initially, two new functions got added to wrap a widgets
2781 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
2783 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
2785 * gtk/gtktooltips.h:
2786 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
2787 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
2788 prior to the first tip being set.
2789 don't put an extra reference on the window, since it is a toplevel,
2790 it wont get destroyed from anywhere else.
2792 * overall macro and GtkType fixups.
2794 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
2796 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
2797 constructs by more forgiving ones. (Does anyone else feel like
2798 the color selector need rewriting?).
2800 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2802 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2805 * gtk/gtkmenu.c: Modified reference counting so
2806 that the reference count from the toplevel that
2807 the menu creates to the menu is invisible to the
2810 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
2812 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
2813 conversion selection logic, so Suns and other big-endian
2814 machines should get faster conv routines. This is also the
2815 point where 4bpp gray and 1bpp are checked in, although I
2816 wouldn't be surprised if 1bpp is a little buggy. This is
2817 synchronized with the 0.0.7 release of GdkRgb.
2820 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
2821 appropriate change to the Makefile.am
2823 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
2825 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
2826 which is good for images that scroll (makes the dither patterns
2829 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
2832 (gdk_colormap_new) (gdk_colormap_get_system):
2833 quell some warnings with g_hash_table_new
2835 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
2836 when we're done with it
2838 * gtk/itemfactory.c:
2839 (gtk_item_factory_from_path):
2840 (gtk_item_factory_create_item): free some strings
2843 (gtk_label_finalize): free label->pattern when done
2844 (gtk_label_parse_uline): null terminate pattern string, delete
2845 some duplicated code
2847 * gtk/testthreads.c: add #include <unistd.h> for sleep()
2849 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
2851 * gtk/gtktext.c (recompute_geometry): Make sure the
2852 mark we pass to line start is the beginning of a
2853 real line, not a wrapped one.
2855 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
2857 * gtk/gtktext.c: Reference count the fonts used in
2860 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
2861 freeing functions to be more consistent, and more
2862 convenient; leave the old names in for backwards compatibility.
2864 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
2865 allocations in pseudo-color colormaps to greatly reduce
2866 calls to XAllocColor. Keep a per-colormap hashtable to
2867 speed up finding if there is an already-allocated matching
2870 * gdk/gdkcolor.c: Don't just match read the system colormap
2871 when the colormap is created, but synchronize our copy
2872 with the system colormap periodically.
2874 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
2875 Change XIM constants names to match GDK conventions
2877 * gtk/testinput.c: Allow the drawing area to get the focus.
2879 * gtk/testgtk.c: Change around the Text test to demonstrates
2880 multiple fonts, use more colors.
2882 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
2883 so they work after a widget is unrealized.
2885 * gtk/gtktext.[ch]: Remove the requirement that the text
2886 widget be realized before adding text (!) Allocate colors
2887 ourself, instead of requiring the caller allocate them.
2888 Allow changing styles to work properly by keeping track
2889 of the values for a certain property are default or
2892 * gtk/gtkmenu.h: Added some comments.
2894 * gtk/gtkentry.c: Changes to match XIM constants.
2896 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
2897 for adding keyed data to drawables. (Uses g_dataset
2900 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
2901 when creating an XPM - store them as user data for the GdkPixmap,
2902 so we don't leak colors when we create pixmaps from XPM's.
2904 Allocate memory for color information in large blocks instead of
2905 as many little pieces.
2907 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
2909 * gdk/gdkrgb.c: removed some unused variables
2912 * gtk/gtkmain.c: #if 0'd out some unused code
2914 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
2916 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
2924 * gtk/gtkcontainer.h:
2925 * gtk/gtkcontainer.c:
2930 (gtk_container_add_with_args):
2931 (gtk_container_child_set):
2932 begin the parameter elipsis (...) after the first argument name. this
2933 change is source compatible, since it was always required, even as NULL.
2935 (gtk_object_args_collect):
2936 (gtk_container_child_args_collect):
2937 changed prototypes to pass first_arg_name, also, pass va_list variable
2938 by value (portability concerns). callers changed.
2940 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
2941 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
2942 can't pass va_list variables by reference for portability reasons.
2944 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
2946 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
2947 get_visual calls, so that it gets implicitly initialized.
2949 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
2950 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
2951 such as GtkCTree function name changes
2953 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
2956 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
2957 binary version check, returning a static string for error descriptions,
2960 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
2962 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
2963 computed our geometry yet, and if not, ignore the request.
2965 * gtk/gtktext.c (correct_cache_insert): Fiddled around
2966 some more. All the bug-test codes seem to work at once
2967 now. (fingers crossed...)
2969 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
2971 * gdk/gdkrgb.c: silly visual fixes
2973 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
2976 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
2978 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
2979 anything if the event's window is not the bin window.
2980 (gtk_handle_box_motion): Likewise.
2982 1998-08-19 Raph Levien <raph@gimp.org>
2984 * gtk/testgtk.c (create_color_preview): pushed the colormap and
2985 visual so it would work better with GdkRgb.
2987 1998-08-19 Raph Levien <raph@gimp.org>
2989 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
2990 4bpp static_color mode (for vga displays). Also fixed a '64' value
2991 in the dither matrix, which was causing one pixel out of 16k to be
2994 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
2995 most of the contents. This is an API change - any apps that relied
2996 on the internal structure of GtkPreview will need some change -
2997 most notably in the use of reserved colors. The Gimp needed
2998 changes in this regard.
3000 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
3002 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
3003 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
3004 --g-fatal-warnings), noticed by miguel.
3006 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
3008 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
3016 * gtk/gtkitemfactory.c:
3017 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
3019 * gtk/gtkselection.c:
3023 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
3025 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
3027 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
3029 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
3030 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
3031 in case of show_tabs == NULL
3033 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
3035 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
3036 to --g-fatal-warnings again. this option now causes log levels of
3037 WARNING and CRITICAL to abort().
3046 * gtk/gtktypeutils.c:
3052 * gtk/gtkselection.c:
3055 * gtk/gtktreeitem.c:
3056 did a global search&replace to substitute g_print() calls with
3057 g_message(). libraries shouldn't use printf(), g_print() or
3058 g_printerr() at all.
3059 a bunch of the replacements should probably be wrapped into the
3060 G{D|T}K_NOTE() macros, so they are special cased for debugging
3061 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
3064 * gdk/gdkdnd.c: added copyright notice.
3066 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
3068 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
3069 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
3070 running a PII 233. It's synced with the 0.0.5 release of
3073 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
3076 (struct _GtkCListClass): new class methods:
3077 (sort_list) (insert_row) (remove_row) (set_cell_contents)
3080 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3081 removed and replaced by (set_cell_contents)
3082 (set_cell_contents): function for class method set_cell_contents
3083 (real_insert_row): function for class method insert_row
3084 (real_remoce_row): function for class method remove_row
3085 (real_sort_list): function for class method sort_list
3086 (default_compare): fix to avoid problems with cell types != CELL_TEXT
3089 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
3090 (gtk_ctree_node_is_visible): new function to return visibility state
3092 (gtk_ctree_show_stub): new function to set visibility of root stub
3095 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
3096 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
3097 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
3098 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
3099 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
3100 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
3101 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
3102 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
3103 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
3104 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
3105 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
3106 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
3107 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
3108 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
3109 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
3110 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
3111 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
3112 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
3113 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
3116 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3117 removed and replaced by (set_cell_contents)
3118 (set_cell_contents): function for class method set_cell_contents
3119 (real_insert_row): function for class method insert_row
3120 (real_remoce_row): function for class method remove_row
3121 (real_sort_list): function for class method sort_list
3122 (default_compare): removed. CTree now also compares two GtkCTreeRows
3123 instead of two GtkCTreeNodes.
3124 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
3126 (real_tree_expand) (real_tree_collapse): fix for refcounting of
3128 (set_node_info): call gtk_ctree_node_set_pixtext instead of
3129 manipulating the row itself
3131 * gtk/testgtk.c: use renamed functions of GtkCTree.
3132 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
3135 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
3137 * gtk/gtkmain.c: removed gtk_input_add_interp.
3139 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
3141 (gtk_editable_get_event_time): fix default: case.
3143 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
3145 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
3148 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
3151 * various minor compilation cleanups, such as bogus commas in
3152 enums and similar things.
3154 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
3156 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
3159 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3161 * NEWS: updated for 1.1.2
3162 * gtk+.spec: version = 1.1.2
3164 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
3166 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
3167 times. changed --gtk-with-module to --gtk-module at owen's request.
3169 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
3171 * gtk/gtkmain.c (gtk_init): feature a new commandline option
3172 --gtk-with-module=<module> that allows additional loading and
3173 initialization of modules (e.g. GLE).
3175 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
3177 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
3178 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
3180 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
3181 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
3182 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
3183 different *-fatal-* arguments now. this needs to be revised and
3184 compressed to a reasonable amount of arguments.
3186 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
3188 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
3189 "--g-fatal-warnings" causes fatal warnings in GLib,
3190 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
3191 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
3193 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
3194 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
3198 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
3199 since automake doesn't support per target _CFLAGS yet.
3201 * configure.in: require GLib 1.1.3.
3203 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
3205 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
3206 to set a callback to test if a node in drag can be dropped onto
3207 it's currrent location.
3208 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
3209 to change the pointer when a drag destination is not allowed.
3211 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
3213 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
3214 speeds up the 565_d case by about 25% total. Thanks Ray!
3216 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
3218 * Changed GtkSignalFunc back to () from (void). (again!)
3220 * Added file README.cvs-commits
3222 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
3224 * docs/gtk_tut.sgml:
3225 - Tidy up of the menufactory example from
3226 Andy Kahn <kahn@zk3.dec.com>
3227 - New section on Range Widgets from
3228 David Huggins-Daines <bn711@freenet.carleton.ca>
3229 - Started a new section on 'Advanced Event and Signal
3230 Handling' - used an email from Owen.
3231 - New appendix on Gdk Event Types
3232 - Added the tictactoe full example code to the
3233 'Code Examples' appendix
3235 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
3237 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
3238 to calculate all the metrics at once of a string, including
3239 things which weren't calculated before.
3241 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
3242 MenuItem type, that when put as the first thing in a
3243 menu, makes the menu tearoff. Currently drawn as a
3246 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
3247 "hide_on_activate" to the MenuItem class structure to allow
3248 check and radio buttons to be changed with <Space> without
3251 * gtk/gtkitemfactory.c:
3252 - Create a AccelGroup for each MenuShell we create.
3253 - If an '_' appears before a character 'c' in the path,
3254 then make 'c' an accelerator in the menu's accel group,
3255 and if the menuitem is menubar <alt>C an accelerator
3256 in the itemfactory's accel group. Double '__' inserts
3259 * gtk/gtklabel.[ch]: Add support for a pattern arg -
3260 which is a string. If an '_' appears in this string,
3261 the corresponding position in the label is underlined.
3263 Add gtk_label_parse_uline() convenience function which
3264 takes a string with embedded underlines, sets the
3265 pattern and label, and returns the accelerator keyval.
3267 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
3268 Instead, they create a GtkWindow and add themselves
3269 to that. (When torn off, another new feature, they
3270 create another GtkWindow to hold the torn off menu)
3272 New function gtk_menu_set_tearoff_state()
3274 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
3275 Added action signals for keyboard navigation of menus.
3277 * gtk/gtkmenushell.c: Key press handler which activates
3278 bindings for navigation, and accelerators, for handling
3279 underline accelerators. Exported functions to select
3280 and activate menu items in a menushell.
3282 * gtk/testgtk.c: Added a new "Item Factory" test which
3283 tests GtkItemFactory and the new keyboard navigation
3286 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
3288 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
3289 external functions have been called. also relookup nodes after
3290 this function has been invoked.
3292 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
3294 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
3295 beginning of Text when creating the Text widget.
3297 * gtk/testgtk.c: Grab the focus on the text widget so
3298 as to test out the above.
3300 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
3302 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
3303 ::changed is a notification signal and should have no default
3304 handler. A complete redraw of the Text widget does _not_ need to
3305 be done on every text insertion.
3307 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
3308 (gtk-abilleira-072198-patch)
3310 * gtk/gtkwindow.[ch]:
3311 Add gtk_window_set_modal() which sets a flag; when
3312 set the window does a gtk_grab_add() when the window
3313 is shown, and a gtk_grab_remove() when the window
3316 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
3317 that case will run "Create Dir","Delete File" and "Rename File"
3318 dialogs as modal too.
3320 * gtk/testgtk.c: Added a button with an example of creating modal
3321 dialog boxes. Including file selection and color selection standard
3324 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
3326 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
3327 Removed CAN_FOCUS by default from scrollbars, button
3328 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
3329 (Scrollbar definitely good change, toolbar bit more questionable)
3331 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
3333 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
3336 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
3338 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
3339 added all logical operations to gc->function.
3341 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
3343 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
3344 gtk_widget_size_allocate instead of gtk_widget_queue_resize
3345 if the visibility state of a scrollbar changes.
3347 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
3349 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
3351 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
3353 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
3354 gtk_clist_merge and gtk_clist_mergesort. :)
3356 1998-08-06 Martin Baulig <martin@home-of-linux.org>
3358 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
3359 `mergesort' -> `my_mergesort'.
3361 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
3363 * gtk/gtkenums.h: new enum GtkSortType.
3367 Added sorting capabilities to GtkCList. New APIs :
3368 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
3369 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
3370 New internal functions : default_compare, merge, mergesort.
3372 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
3374 (gtk_clist_insert): Modified to handle gtk_clist_append and the
3375 auto sort flag. Changed the return value from void to gint to
3376 return the row number where the element was actually inserted.
3378 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
3382 Removed the auto_sort flag, replaced ctree->node_compare with
3383 clist->compare all over the place, modified default_compare to
3384 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
3385 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
3387 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
3388 sorting. The lists can be sorted by a column by clicking the
3389 corresponding title button.
3391 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3393 * Released GTK+ 1.1.1
3395 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
3399 (gtk_ctree_find): changed to return a gboolean
3400 (gtk_ctree_insert_gnode): new function for recursive insertion of a
3402 (gtk_ctree_real_select_recursive): fix for extended selection
3403 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
3404 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
3406 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
3408 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
3409 GLib version 1.1.1 is now required at minimum.
3411 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
3412 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
3414 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
3416 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
3417 cursor before (possibly) deleting the cursor's text
3420 * gtk/gtktext.c (correct_cache_delete): More attempts
3421 to clean the line-start cache up after inserting
3422 a property. Among other things, make sure to
3423 fix up text->current_line, since it is used to
3424 refetch the changed lines.
3426 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
3428 * gtk/gtktable.[ch]: Empty rows/columns of the table
3429 should not have been marked as being able to shrink.
3430 (Fixes problem with shrinking scrollbarless GIMP canvases)
3432 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3434 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
3435 function to find a row by its data pointer using a custom
3436 comparison function.
3438 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
3440 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
3441 this fixes a bug when the whole widget is made non-sesitive
3442 the buttons weren't redrawn
3444 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
3446 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
3447 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
3448 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
3450 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
3452 * gdk/gdkwindow.c (gdk_window_reparent): Change
3453 window_private->parent pointer when reparenting.
3455 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
3457 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
3458 with the standalone release.
3460 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
3462 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
3463 (gtk_clist_button_release) (new_column_width): Few fixes for
3464 column resize. Store resize column in clist->drag_pos.
3466 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
3470 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
3471 to GtkCTreeNode *node.
3473 * gtk/gtklist.h : added extended selection mode and auto scrolling.
3474 (struct _GtkList): removed unneeded variables timer, button,
3475 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
3476 Added new variables undo_selection, undo_unselection, last_focus_child,
3477 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
3478 drag_selection, add_mode.
3481 (gtk_list_extend_selection), (gtk_list_start_selection),
3482 (gtk_list_end_selection), (gtk_list_select_all),
3483 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
3484 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
3485 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
3486 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
3489 (gtk_list_enter_notify): removed, because auto scrolling now works
3490 with gtk_list_motion_notify
3492 New functions, needed for auto scrolling :
3493 (gtk_list_motion_notify) (gtk_list_move_focus_child)
3495 New functions for extended selection support :
3496 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
3497 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
3498 (gtk_list_focus_lost)
3500 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
3501 function to support auto scrolling, and avoid out-of-sync errors in
3502 case auf GTK_SELECTION_BROWSE
3503 (gtk_list_focus): modified gtk_container_focus function to avoid out
3504 off sync errors in case auf GTK_SELECTION_EXTENDED
3507 * gtk/gtklistitem.c :
3508 New signal functions for key binding support :
3509 (toggle_focus_row), (select_all), (list_item), (unselect_all)
3510 (list_item), (undo_selection), (start_selection), (end_selection)
3511 (extend_selection), (scroll_horizontal), (scroll_vertical),
3513 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
3514 GDK_KEY_RELEASE_MASK
3515 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
3518 (gtk_combo_popup_button_press): grab pointer for combo->list
3519 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
3520 (gtk_combo_list_key_press): take care of which child HAS_GRAB
3521 (gtk_comb_init): don't connect combo->button with button_release_event
3523 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
3525 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
3527 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
3529 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
3530 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
3531 with horizontal and vertical autoscrolling.
3533 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3535 * gtk/docs/man: new directory
3536 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
3538 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
3540 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
3543 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
3545 * docs/gtk_tut.sgml: GtkTree section from
3546 David Huggins-Daines <bn711@freenet.carleton.ca>,
3547 add a GtkText widget example
3548 * examples/text/* example/tree/* : new examples for the
3549 GtkTree and GtkText widgets
3550 * docs/gtk_tut.sgml: added an appendix to hold complete code
3551 examples that aren't in a full form elsewhere in the
3552 tutorial (e.g. scribble)
3554 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3556 * Released GTK+ 1.1.0
3558 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
3560 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
3561 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
3563 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
3565 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
3566 values are looked up.
3568 * gtk/gtktypeutils.h:
3569 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
3570 gtk_type_enums_find_value to lookup enum values.
3573 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
3574 GtkCTreeExpansionType. fixed signal creations to pass the enum
3575 types not just the base type GTK_TYPE_ENUM.
3578 * gtk/gtkclist.c: fixed signal creations to pass the real enum
3579 types not just the base type GTK_TYPE_ENUM.
3581 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
3584 Began cleanup, e.g. use gtk_widget_show_all instead of many
3585 gtk_widget_show's. Completely rewrote the button box sample
3586 (only one window now). Removed "miscellaneous" button.
3588 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
3590 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
3591 Fixed wrong allocation for GTK_BUTTONBOX_END.
3592 (allocation->x => allocation->y)
3594 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
3596 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
3597 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
3599 * gtk/gtkctree.c (real_tree_select): added check to avoid double
3601 (gtk_ctree_button_press)
3602 (gtk_ctree_button_release): fix for pointer grab
3604 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
3606 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
3607 Fixed initialization problem - dirty memory could cause problems.
3608 Also checked that bitmapped fonts can be scaled when showing the
3611 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
3613 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
3614 (gtk_ctree_sort_recursive): test for node != NULL
3615 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
3616 (gtk_ctree_last) : added sanity checks
3617 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
3619 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
3621 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
3623 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
3625 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
3627 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
3629 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
3630 to check out binding priorities. someone should really write
3631 gtkrc-mode for emacs.
3633 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
3634 * gtk/testgtk.c (main): and move it here ;). this test says something
3635 on release of C-9. (this works only if the mouse pointer is on a
3636 spinbutton and there is no focus widget).
3640 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
3641 gtk_rc_parse_priority to parse path priority types.
3643 feature binding parsing.
3645 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
3647 * gtk/gtkbindings.h:
3648 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
3649 feature binding parsing in rc files.
3650 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
3651 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
3652 order the bindings with lowest priority first.
3654 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
3656 * gdk/gdkrgb.c: actually builds and runs properly on big
3657 endian machines now, because we #include config.h. Also
3658 fixed up a compile error in the WORDS_BIGENDIAN case in
3659 gdk_rgb_convert_565_gray. I made the fix by looking at
3660 patterns in the other code; Raph can you verify this?
3662 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
3665 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
3667 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
3668 (tree_toggle_expansion) (real_select/unselect_row)
3669 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
3671 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
3673 * gtk/gtktext.c (new_text_property): We free things from
3674 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
3676 * Fix up line start cache when splitting a property
3679 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
3681 * gtk/gtkwidget.c: restauration => restoration
3683 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
3685 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
3686 hasn't been created yet, don't do the lookup.
3688 1998-07-20 Raph Levien <raph@acm.org>
3690 * gdk/gdkrgb.c: More cleanups in the config process.
3692 1998-07-20 Raph Levien <raph@acm.org>
3694 * gdkrgb.c: Fixed minor config bug preventing big-endian
3695 architectures from working.
3697 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
3699 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
3700 activity indicator. It is settable now as a fraction of the
3701 total width/height using gtk_progress_bar_set_activity_blocks.
3702 Renamed gtk_progress_bar_set_number_of_blocks to
3703 gtk_progress_bar_set_discrete_blocks.
3705 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
3707 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
3708 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
3709 tree to specified depth
3710 (gtk_ctree_expand_to_depth): expand tree to specified depth
3711 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
3713 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
3715 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
3716 of GTK_CLIST_ADD_MOD
3717 * gtk/testgtk.c (add1000_clist): changed pixmap
3719 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
3722 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
3724 * gtk/gtktypeutils.h:
3725 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
3727 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
3729 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
3730 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
3731 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
3733 (gtk_notebook_reorder_child): new funktion to change position of a
3735 (gtk_notebook_draw_arrow): draw left/right arrow with
3736 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
3738 * gtk/gtkstyle.c (gtk_default_draw_arrow):
3739 added GTK_SHADOW_ETCHED_IN/OUT
3741 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
3743 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
3744 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
3745 Introduced generic GtkProgress widget. Derived GtkProgressBar from
3746 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
3748 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
3750 * gtk/gtktypeutils.h
3751 * gtk/gtkitemfactory.h: explicitly specify void in prototype
3753 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
3755 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
3758 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
3760 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
3761 sropped the approach of copying all signal specific data into a
3762 GtkHandlerInfo structure. we rather keep the signal data on the stack
3763 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
3764 avoids multiple lookups of the signal pointer and works savely together
3765 with destroy notifiers of handlers.
3767 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
3768 someone destroys the entry on the ::activate signal.
3770 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
3772 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
3773 instead of ypad (typo).
3774 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
3775 border around the allocation).
3776 (gtk_arrow_init): the static requisition needs to be setup in this
3777 function rather than gtk_widget_new(), so arrow creation works without
3778 the gtk_arrow_new() constructing.
3779 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
3781 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
3782 implementation for GtkWidget::size_request, so size requisition for
3783 simple statically sized widgets like GtkArrow works.
3785 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
3787 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
3788 prepend -I@libdir@/glib/include anymore, since glib-config handles
3789 it; --libs strips out redundant -L<path>'s properly (there was
3790 code in there to do it before, but it didn't work)
3792 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
3794 * gtk/gtknotebook.h:
3795 * gtk/gtknotebook.c: signdness corrections all ove the place.
3796 implementation of object arguments: GtkNotebook::enable_popup,
3797 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
3798 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
3799 begun implementation of child args, we have GtkNotebook::tab_label, but
3800 GtkNotebook::menu_label and GtkNotebook::position still lack the
3802 (gtk_notebook_remove_page):
3803 (gtk_notebook_current_page): allow negative indices (-1) as alias for
3807 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
3808 arguments GtkEntry::max_length and GtkEntry::visibility.
3809 (gtk_entry_adjust_scroll): queue a redraw.
3811 * gtk/gtkeditable.h:
3812 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
3813 object arguments GtkEditable::text_position and GtkEditable::editable.
3814 new (action) signal GtkEditable::set_editable.
3815 provide a default handler for GtkEditable::changed that queues a redraw.
3818 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
3821 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
3823 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
3824 case of drag_target == NULL
3825 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
3826 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
3827 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
3828 gtk_dir_selection_file_button): fix due to changes in clist's
3831 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
3834 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
3835 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
3836 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
3837 to be gint16s rather than guint16s, since that's what the code expected
3838 (for a long time actually).
3840 * gtk/gtkviewport.c:
3841 added support for object arguments: GtkViewport::shadow_type,
3842 GtkViewport::vadjustment and GtkViewport::hadjustment.
3843 (gtk_viewport_add): chain gtk_bin_add.
3845 * gtk/gtkscrolledwindow.c:
3846 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
3847 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
3849 * gtk/gtkadjustment.h:
3850 * gtk/gtkadjustment.c:
3855 * gtk/gtkscrolledwindow.h:
3856 * gtk/gtkscrolledwindow.c:
3857 * gtk/gtkviewport.h:
3858 * gtk/gtkviewport.c:
3859 GtkType and macro fixups.
3861 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
3865 Added focus handling, horizontal and vertical autoscrolling,
3866 extended Selection Mode, key bindings
3867 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
3868 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
3869 Removed gtk_ctree_clear.
3873 Added focus handling, horizontal and vertical autoscrolling,
3874 extended Selection Mode, key bindings
3876 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
3878 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
3879 source tree. For more information on GdkRgb, please see:
3880 http://www.levien.com/gdkrgb/
3882 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
3883 bothers me slightly that the feature is in gdk, and this file is
3884 in gtk, but it's probably ok.
3886 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
3889 * gdk/gdkrgb.h: Added this module.
3891 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
3893 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
3895 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
3897 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
3898 to this function. it needs to relookup the signal multiple times.
3899 this fixes spurious segfaults that could show up with signal intensive
3900 code, when classes are created during a pending emission (which is
3903 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
3905 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
3906 child if it isn't a label.
3908 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
3911 * gtk/gtkseparator.h:
3912 * gtk/gtkhseparator.h:
3913 * gtk/gtkvseparator.h: macro and GtkType fixups.
3915 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
3917 * gtk/testgtk.c (create_cursors): display the current cursor name.
3919 * gtk/gtktypeutils.h:
3920 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
3921 the fundamental type definition. the GtkArg union now only covers
3922 the required storage types for argument values. adapted the GTK_VALUE_*
3923 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
3925 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
3926 code, fixed int/float collection. fixed a bug in the sanity checking
3927 code for GtkObjects.
3929 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
3930 argument collection code.
3932 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
3933 macros when distinguishing the return type.
3935 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
3937 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
3938 is not NULL before trying to g_list_remove the child. A patch
3939 from Michael Lausch.
3941 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
3943 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
3944 collection (always casted to doubles upon argument passing).
3946 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
3948 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
3949 object_init_func for derived objects with the object's ->klass field
3950 still pointing to the corresponding base class, otherwise overridden
3951 class functions could get called with partly-initialized objects.
3952 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
3954 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
3958 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
3960 * gtk/gtkcontainer.h:
3961 * gtk/gtkcontainer.c:
3962 (gtk_container_child_arg_get_info): new function which wraps
3965 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
3967 * gtk/gtkcontainer.c:
3968 (gtk_container_arg_get):
3969 (gtk_container_arg_set):
3971 (gtk_object_arg_set):
3972 (gtk_object_arg_get):
3973 strictly check for the associated get/set arg functions. if an
3974 arg is readable or writable, the associated class functions *must*
3977 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
3979 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
3980 padding into account if there is an accelerator.
3982 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
3984 * gtk/gtkcontainer.c:
3985 (gtk_container_add_with_args): collect the arguments with
3986 gtk_container_child_args_collect, not through gtk_object_args_collect.
3987 (gtk_container_child_set): likewise.
3989 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
3991 * gtk/gtktypeutils.h:
3992 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
3993 which is derived from GTK_TYPE_STRING.
3995 * gtk/gtkbindings.c: reworked the argument type handling.
3997 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3999 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
4000 so that it seems to allow normal operation in those modes,
4001 although you will only see black (GIMP toolbar now pops up,
4002 just don't create a new image and GIMP now works in 4 bit.)
4004 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4006 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
4007 array, which was too low (?)
4009 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
4011 * gtk/gtkcontainer.h:
4012 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
4013 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
4014 we now export a new function gtk_container_child_args_collect().
4015 for consistency with the object arguments, a few functions got renamed:
4016 gtk_container_child_arg_get -> gtk_container_child_get,
4017 gtk_container_child_arg_set -> gtk_container_child_set,
4018 gtk_container_child_arg_getv -> gtk_container_child_getv,
4019 gtk_container_child_arg_setv -> gtk_container_child_setv,
4020 gtk_container_add_with_argv -> gtk_container_addv.
4021 note, gtk_container_add_with_args() remained, because its equivalent
4022 would be gtk_container_add(,, ...) which would break all existing code.
4023 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
4024 we expect the `arg_name' argument to be a const static string now.
4025 (gtk_container_get_child_arg_type): function removed.
4027 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
4029 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
4030 this is a static inline function that collects command line arguments
4031 from a va_list. this file can just be included in all places that
4032 need this functionality.
4035 * gtk/gtkarg.c: new files which implement most of the argument
4036 handling stuff from gtkobject.c. also collected a few more
4037 gtk_arg_* utility functions from else places.
4040 * gtk/gtkobject.c: moved most of the argument handling code into
4041 gtkarg.c. we now export gtk_object_args_collect() as a non-public
4042 method with a blind va_list pointer.
4043 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
4044 const static string now.
4045 (gtk_object_get_arg_type): function got removed.
4049 (gtk_widget_new): adaptions for gtk_object_args_collect().
4051 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
4052 fundamental type name so as to have a valid prefix, e.g. "bool"->
4053 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
4054 though that should probably be something like GtkNone since the
4055 type itself is called GTK_TYPE_NONE.
4056 even the internal type names need to avoid name clashes and must live
4057 in their own namespace, several code portions rely on that.
4058 we should relly have typedefs such as typedef gchar* GtkString; so the
4059 fundamental type names can be used for code dumpers just like with all
4062 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
4064 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
4065 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
4066 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
4068 (gtk_button_paint): set the background for prelighted buttons with
4069 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
4070 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
4071 the shadow type (otherwise we get strange shadows for coloured buttons).
4072 (gtk_button_set_relief): queue a redraw after changing
4074 (gtk_button_class_init):
4075 (gtk_button_set_arg):
4076 (gtk_button_get_arg): added object argument "GtkButton::relief".
4078 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
4080 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
4083 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
4084 GTK_BIN (button)->child to button->child to keep source compatibility.
4086 * gtk/gtkoptionmenu.c:
4088 * gtkcheckbutton.c: don't refer to button->child, but
4089 GTK_BIN (button)->child instead.
4091 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
4093 * docs/gtkfaq.sgml: update anon CVS info
4095 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
4097 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
4101 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
4104 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
4106 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
4107 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
4109 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
4111 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
4113 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
4116 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
4118 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
4119 error that prevented signal to entry addition for signals with
4122 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
4124 * ltconfig: fix for properly detecting shared lib support on
4125 SunPro cc (taken from libtool 1.2.a)
4127 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
4129 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
4131 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
4133 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
4134 rc set pattern is favoured, this is needed for overriding of style
4135 patterns with subsequently parsed rc files.
4137 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
4139 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
4142 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
4144 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
4146 (gtk_accelerator_name): add "<Release>" to the accelerator name if
4149 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
4152 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
4153 default handler for key-release events, which checks for activation
4154 of GDK_RELEASE_MASK key bindings.
4156 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
4158 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
4160 * gtk/gtkarrow.h: GtkType and macro fixups.
4161 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
4162 "GtkArrow::shadow_type".
4164 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
4166 * gtk/gtkalignment.h:
4167 * gtk/gtkbin.h: GtkType and macro fixups.
4169 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
4170 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
4171 GtkAlignment::xscale, GtkAlignment::yscale.
4173 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
4175 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
4176 fucntions from all parent types upon class initialization.
4178 * gtk/gtkcontainer.c:
4179 (gtk_container_get_type): announce gtk_container_base_class_init to
4181 (gtk_container_base_class_init): new function to feature base class
4183 (gtk_container_get_child_arg):
4184 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
4185 and set_child_arg methods of the class indicated through the argument
4189 (gtk_object_base_class_init): new function to feature base class
4191 (gtk_object_init_type): announce gtk_object_base_class_init to the type
4193 (gtk_object_class_init): setup the get_arg and set_arg pointers for
4196 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
4197 instead of bothering the type system with this.
4199 * gtk/gtkaccellabel.c:
4201 * gtk/gtkradiobutton.c:
4203 * gtk/gtktogglebutton.c:
4204 * gtk/gtktipsquery.c:
4211 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
4212 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
4213 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
4214 arg functions to take a GtkObject argument.
4216 gtk/gtkadjustment.c:
4219 gtk/gtkaspectframe.c:
4222 gtk/gtkcheckbutton.c:
4223 gtk/gtkcheckmenuitem.c:
4231 gtk/gtkdrawingarea.c:
4245 gtk/gtkhscrollbar.c:
4246 gtk/gtkhseparator.c:
4248 gtk/gtkinputdialog.c:
4250 gtk/gtkitemfactory.c:
4258 gtk/gtkoptionmenu.c:
4262 gtk/gtkprogressbar.c:
4263 gtk/gtkradiomenuitem.c:
4268 gtk/gtkscrolledwindow.c:
4270 gtk/gtkspinbutton.c:
4283 gtk/gtkvscrollbar.c:
4284 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
4285 match the modified GtkTypeInfo structure.
4287 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
4289 * gtk/testgtk.c: use rand() instead of random() for portability
4291 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
4295 * gdk/gdk.c: use native Xlib XConvertCase if it's available
4297 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
4299 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
4300 XConvertCase() functionality from X11R6 on X11R5 systems.
4302 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
4304 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
4305 gdk_string_height, gdk_char_height to retrieve the exact
4308 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
4310 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
4311 by Stefan Mars <mars@lysator.liu.se>
4312 * examples/clist/clist.c examples/clist/Makefile: example code
4313 for GtkCList widget from the Tutorial
4315 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
4317 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
4318 if the container is not visible, we might be a toplevel! this holds
4319 for all other base container implementations as well, that are
4320 candidates to derive toplevels from. in general the resizing code will
4321 care about visibility itself.
4322 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
4323 * gtk/gtkbox.c (gtk_box_remove): likewise.
4325 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
4326 gtk_window_set_hints(), since we haven't calculated the new position
4329 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
4330 *mask are alway initialized in a sane way, regardless of the return
4333 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
4335 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
4336 to gtk_container_child_arg_setv, but takes a variable argument list.
4337 new function gtk_container_get_child_arg_type, which is needed by
4338 gtk_object_collect_args.
4340 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
4341 take a function pointer to figure the argument type.
4342 adapted callers to pass gtk_object_get_arg_type.
4343 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
4344 gtk_object_get_arg_type..
4348 (gtk_packer_reorder_child): new function to change the packing order
4350 (gtk_packer_size_request):
4351 (gtk_packer_size_allocate): take container->border_width into acount.
4353 * gtk/gtkpacker.c: implemented widget arguments:
4354 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
4355 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
4356 implemented child arguments:
4357 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
4358 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
4359 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
4360 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
4362 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
4365 * gtk/gtkeventbox.h:
4366 * gtk/gtkeventbox.c: GtkType and macro fixups.
4368 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
4369 sensitivity of an entry.
4371 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
4372 for insensitive base and text.
4374 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
4375 widget state dependent.
4376 (gtk_entry_style_set): likewise.
4377 (gtk_entry_state_changed): set background color on state changes.
4378 (gtk_entry_draw_text): for non selected text, use state dependent
4381 * gtk/gtktogglebutton.c: support for widget arguments
4382 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
4384 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
4386 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
4387 code for 1.0.x-like parameters. Changed internal interface of
4388 gtk_spin_button_real_spin. Several fixes to avoid emission of
4389 "value_changed" where possible.
4391 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
4393 * gtk-boxed.defs: s/GkWidget/GtkWidget/
4395 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
4397 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
4398 to select the resize_mode for the idle-labels container.
4401 * gtk/gtkframe.c: GtkType and macro corrections.
4403 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
4404 support widget argument "GtkRadioButton::group".
4406 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
4408 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
4409 unconditionally if resize_mode has changed.
4411 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
4412 GTK_RESIZE_QUEUE on the scrolled window.
4413 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
4415 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
4417 * gtk/gtkcontainer.h:
4418 * gtk/gtkcontainer.c:
4419 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
4420 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
4421 (gtk_container_queue_resize): new function to queue a container for
4422 a *size* reallocation (doesn't affect its position, and thus its
4423 parent is left untouched usually).
4424 (gtk_container_get_resize_container): new function to retrive the next
4425 most resize container which is not itself queued for a resize.
4426 (gtk_container_idle_sizer): new function to carefully process the
4427 container_resize_queue since it can change during invokation of
4428 gtk_container_check_resize().
4429 (gtk_container_resize_children): total rework of this function to
4430 properly handle resize containers. makes a lot of assumptions whitch
4431 are stated in the comments.
4433 * gtk/gtkcontainer.c:
4434 (gtk_container_real_check_resize): only requeue ourselves if we are not
4436 (gtk_container_clear_resize_widgets): care for automatic deletion of our
4437 resize_widgets list on size_allocate through a handler connection.
4439 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
4440 focus and default widget of a window, so to take the burden from
4441 gtk_widget_unparent.
4443 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
4444 to be clever, but actually messed up the resize_children logic and
4445 caused unneccessary allocations on its whole branch. besides this,
4446 it messed up the display by not invoking a redraw after the allocation.
4448 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
4449 that it is the child again that is queued for a resize.
4450 (gtk_table_attach): likewise.
4451 (gtk_table_remove): likewise.
4453 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4455 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
4456 gtk_entry_adjust_scroll. Required if you change the cursor
4457 position and want to sync it up with your code (Midnight Commander
4458 gtk front end needs this).
4460 * gtk/gtktable.c: Deal with tables that have size 0, 0.
4462 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
4464 * examples/README.1ST: new file to explain how the
4465 code examples should be extracted from the tutorial.
4467 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
4469 * gtk/gtkctree.c (draw_row): added new "line style"
4470 GTK_CTREE_LINES_TABBED
4471 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
4472 search the glist pointer of an GtkCTreeRow
4474 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
4476 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
4477 from, and clean up, the dependencies. Generate to intermediate
4478 files to prevent problems with Ctrl-C.
4480 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
4482 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
4484 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
4485 - Bug fix for precision problem causing occasional double emission
4486 of "value_changed" signal (hopefully works now).
4487 - API change (should be binary compatible) :
4488 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
4489 Modified cursor example appropriately.
4490 To spin by something other than step_/page_increment, use
4491 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
4492 - Made GTK_SHADOW_NONE the default. ;)
4493 - Fixed casting of GtkAdjustment* to GtkWidget* in
4494 gtk_spin_button_value_changed.
4496 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
4498 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
4499 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
4500 resize widget list before queuing the container for a new reize.
4501 (gtk_container_need_resize): changed return value to FALSE, since this
4502 used to indicate that no further resizes are needed.
4503 (gtk_container_set_arg):
4504 (gtk_container_get_arg):
4505 (gtk_container_class_init): implemented GtkContainer::resize_mode
4508 (gtk_container_resize_children): when we walk up the tree of a resize
4509 widget we need to stop if we are the current parent.
4511 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
4512 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
4513 (gtk_widget_hide_all): retrive the toplevel widget from via
4514 gtk_widget_get_resize_container().
4516 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
4518 * gtk/gtklist.c (gtk_list_button_press): Only respond
4519 to selection with button 1. This allows context-sensitive
4520 menus to work correctly.
4522 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
4524 * gtk/gtkaccelgroup.c:
4525 * gtk/gtkbindings.c:
4526 * gtk/gtkcontainer.c:
4527 * gtk/gtkitemfactory.c:
4530 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
4531 g_quark_from_static_string calls to save memory.
4533 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
4534 function _after_ the new data has been setup.
4535 minor changes to object data functions to feature the GQuark type.
4537 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
4539 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
4542 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
4544 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
4545 to be more readable perl, to spit out stuff that looks
4546 more like readable C, and to pipe output through indent
4547 so output looks a lot like readable C. No functional
4550 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
4552 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
4553 necessary when switching to a masked pixmap. (Based on a patch
4554 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
4556 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
4558 * gtk/gtkeditable.[ch]: Added action signals for keyboard
4559 bindings. (move_cursor, kill_word, etc, etc, etc).
4561 removed the time argument from
4562 gtk_editable_cut/copy/paste_clipboard (source but not
4563 binary incompatible...) Instead get time from
4564 gtk_get_current_event ().
4566 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
4569 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
4571 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
4573 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
4574 parent class to GtkNotebookClass when splitting the widget in
4575 two. Also updated some comments.
4577 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
4578 button without a font selected.
4580 Fixed bug in set_font_name - I hadn't updated the code to
4581 search for the style in the font_style clist - it was
4582 still assuming the style row was equal to its index,
4583 but it isn't any more.
4585 Changed 'Reset' button on filter page to 'Clear Filter'.
4586 Deleted old code relating to the old 'Filter Fonts' toggle
4587 Updated some comments.
4588 Cleared 'Actual Fontname' if no font is set.
4590 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
4591 destroying the GtkFontSelection instead of the
4592 GtkFontSelectionDialog.
4594 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
4596 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
4597 flag to make all warnings fatal errors.
4599 * gtk/testthreads.c: moved <pthreads.h> include inside
4602 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
4604 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
4605 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
4607 - Added new function gtk_container_set_resize_mode() for
4608 fine-grained control of where resize-queueing is done.
4610 - Removed GtkContainer::need_resize and GtkWindow::move_resize
4611 - Added GtkContainer::check_resize to replace need_resize.
4613 - Added function gtk_container_check_resize() to trigger
4614 queued resizes, and gtk_container_resize_children() to
4615 Figure which children need to be size-allocated. (logic
4616 moved from gtkwindow.c)
4618 - Reorganized code in gtkwindow.c
4620 - Set the resize-mode for viewports so that resizes within
4621 a viewport don't propagate out of it.
4623 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
4625 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
4627 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
4628 g_return_val_if_fail, because the function *does* return a value.
4630 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
4632 * gtk/gtkaccellabel.h:
4633 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
4634 request the size of the accelerator portion of an accel label.
4635 (gtk_accel_label_size_request): don't request for the accelerators size.
4636 (gtk_accel_label_expose_event): only draw the accelerator if we got
4639 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
4640 width from children.
4642 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
4643 object (after removal has been requested) check if there is still an
4644 accelerator remaining to avoid adding two accelerators on an object.
4645 this can happen for locked accelerators (or accelerator-frozen widgets).
4646 (gtk_menu_size_request): feature childrens accelerator width in size
4649 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
4650 gtk_widget_freeze_accelerators() for dynamically created menu items.
4653 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
4654 which will return a handler_id > 0 if the specified function is pending
4658 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
4659 a signal handler function to stop accelerator addition.
4660 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
4661 which will prevent (undo) any accelerators from being added to or
4662 removed from a widget.
4664 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
4666 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
4667 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
4668 acceleration, new API gtk_spin_button_set_snap_to_ticks.
4670 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
4673 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
4674 the current GdkWindow the pointer is on if there is any.
4676 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
4677 and one column, so we don't construction logic at all. changed a few
4678 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
4681 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
4682 portion, added an additional check for parent != widget.
4684 * more GtkType and macro fixups.
4686 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4688 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
4689 "clip" parameter, which is the clipping rectangle to use. This
4690 eliminates the extremely annoying flicker when exposing parts of
4693 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
4695 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
4698 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
4700 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
4701 != 0 on the argument.
4704 * gtk/gtktable.c: new function gtk_table_resize() which allowes
4705 shrinking and expanding of tables. implementation of widget arguments
4706 and child arguments. many signedness corrections.
4708 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
4710 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
4711 not only the child, otherwise we might end up taking away other
4712 childrens space after the resize.
4714 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
4715 an unknown menu path from any source, that path must always be flagged
4716 as "modified", since we don't really know whether it has its default
4721 * gtk/gtknotebook.c:
4722 * gtk/gtkmenushell.c:
4726 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
4729 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
4730 arguments. implemented child arguments.
4732 * more GtkType and macro fixups.
4734 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
4736 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
4738 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
4739 and gtk_clist_get_hadjustment.
4741 * gtk/gtkcontainer.c:
4742 implementation of children arguments, new class member functions
4743 (child_type), (get_child_arg) and (set_child_arg) plus a new field
4745 (gtk_container_child_type): new function which returns the type of a
4746 child that the container expects for its next addition.
4747 (gtk_container_add_child_arg_type): new function to introduce a new
4748 child argument at class creation time.
4749 (gtk_container_query_child_args): new function to query all child
4750 arguments that are supported by a container class.
4751 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
4753 (gtk_container_child_arg_setv): new function to set a child argument for
4754 a certain container and child combination.
4755 (gtk_container_add_with_args):
4756 (gtk_container_add_with_argv): new functions to feature addition of a
4757 new child in combination with the setting of certain child arguments.
4759 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
4760 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
4761 this should really be done through class cretion hooks some day.
4763 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
4767 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
4768 follow the gtk convention for lower case variable names (important
4769 for language wrappers and widget arguments), and made them guint : 16.
4771 * examples/packer/pack.c: adaptions for the case converted GtkPacker
4774 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
4776 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
4777 change the character pair for single line comments.
4778 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
4779 GtkItemFactoryClass.
4780 (gtk_item_factory_parse_rc_string): likewise.
4782 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
4784 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
4785 lists from the klass structure to a static structure
4786 in gtkfontsel.c; cleans up global the namespace.
4788 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
4790 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
4791 bug with /*< skip >*/ and remove warning.
4793 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
4795 * gtk/Makefile.am: Made the gtkmarshal.* generation
4796 rules maintainer-only.
4798 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
4800 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
4801 gtk/Makefile.am gtk/makenums.pl
4803 Removed out the G_ENUM/FLAGS mechanism in favor
4804 of a perl script that parses the standard headers
4805 (with occasional /*< nick=foo >*/ style overrides)
4806 and extracts the enumerations.
4808 gtk/maketypes.awk: Small improvments to the
4809 translation of names. (Avoid splitting gc into
4812 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
4814 * gtk/gtk.h gtk/gtkfontsel.[ch]:
4815 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
4817 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
4820 - Restored gtk_entry_adjust_scroll to static
4821 - Changed text positioning code so that we always
4822 display as large a portion of the text as possible.
4824 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
4826 * gtk/gtktext.c (gtk_text_finalize): Free internal
4827 structures of text widget. Also, unreference pixmaps
4830 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
4832 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
4833 3.3.1 bug workaround to number keys starting at 1.
4835 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
4837 * docs/gtk_tut.sgml: Fixed urls for complete example
4838 source for scribble+widget-writing examples.
4840 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
4842 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
4843 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
4844 specs of the form c #abcdef [ more keys ] properly.
4846 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
4848 * gtkspinbutton.h gtkspinbutton.c testgtk.c
4849 (gtk_spin_button_set_shadow_type):
4850 New API to set the shadow type of the arrow panel.
4852 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
4854 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
4855 code for drawing the child in two places at once. Unfortunately,
4856 not only does it not work anymore (because reparenting has
4857 been fixed), but it also triggers reparent/expose loops
4860 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
4861 an unecessary unrealize.
4863 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
4865 * gdk/gdkwindow.c (gdk_window_reparent): Update the
4866 old and new parents' child window lists properly.
4868 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
4871 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
4872 and GtkSideType, to be consistent with the rest of Gtk's enum
4873 definitions. wrapped the enum definitions with the G_ eunm wrappers.
4874 spelled out the GTK_ANCHOR_* enum values, since single letters don't
4875 work out corectly as nick-names (left the old values as aliases).
4876 some signdness corrections (border-width, spacing), could stand more.
4878 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4880 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
4883 * examples/packer/pack.c, examples/packer/Makefile: Added
4886 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
4888 * gtk/gtktext.c (remove_cache_line): Fixed broken
4891 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
4892 Check bounds before deleting.
4894 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
4896 * autogen.sh: Support ACLOCAL_FLAGS
4898 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
4900 * gtk-config.in: Added missing quotes.
4902 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
4904 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
4906 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
4908 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
4909 G_COMPILED_WITH_DEBUGGING.
4911 * configure.in (fd_set): Explain check better.
4913 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
4914 the version from which gtk+'s libtool forked. Needed for people
4915 who use post-1.2 alphas of libtool.
4917 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
4919 * glib/* Moved to glib module
4921 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
4922 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
4924 configuration changes for the above:
4926 - Use AM_PATH_GLIB by default to find glib; also accept
4927 a --with-glib option for using an uninstalled glib.
4929 - Put --enable-debug information into config.h so
4930 that we rebuild when it changes. (was in glibconfig.h)
4932 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
4934 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
4936 * gtk/gtknotebook.h (struct _GtkNotebookClass):
4937 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
4938 added missing argument (according to Joseph Coleman's bug report)
4940 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
4941 function to fix notebook focus handling
4943 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
4945 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
4946 glib/gutils.c glib/testglib.c glib/gdataset.c
4947 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
4948 gtk/gtktext.c gtk/gtkbindings.c:
4950 renamed g_const_pointer => gconstpointer
4952 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
4954 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
4955 invoked with (NULL, NULL); (this worked sometime ago).
4957 * gtk/gtktypeutils.h:
4958 * gtk/gtktypeutils.c: enum and flags type creation can now be done
4959 through gtk_type_register_enum() and gtk_type_register_flags(),
4960 which allow to specify the enum value arrays directly.
4961 the NULL terminated value arrays can be retrived through
4962 gtk_type_enum_get_values() and gtk_type_flags_get_values();
4963 (gtk_type_children_types): new function to query derived types.
4965 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
4967 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4968 environment to genmarshal.pl.
4969 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
4970 rule), and removed it where not needed (in the dependencies).
4972 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
4974 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
4976 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
4977 was just g_direct_hash.
4979 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
4981 * configure.in: x_libs=, not $x_libs=. Enough said.
4982 (Case only hit for --disable-xshm)
4984 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
4986 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
4987 when testing for X libraries, don't replace them. Because
4988 the user might have specified the path to the X libraries
4989 themself before running configure.
4991 * examples/**.c: Changed all gpointer * to gpointer
4993 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4995 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
4996 fleur_cursor field. Now the cursor is created/destroyed on demand
4997 by the routines that need it.
4999 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
5000 (gtk_handle_box_motion): The fleur cursor is created and destroyed
5003 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
5005 * gtk/gtktypeutils.h:
5006 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
5007 gtk_enum_set_values to gtk_type_enum_get_values and
5008 gtk_type_enum_set_values respectively, since they are actually type
5011 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
5014 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
5016 * gtk/gtkselection.h:
5017 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
5018 gtk_selection_data_free.
5020 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
5021 for "selection_received", which was completely bogus.
5022 * other fixups to gtk_signal_new() calls all over the place.
5024 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
5025 * gtk/gtktypebuiltins_vars.c: type variable implementations.
5026 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
5028 * gtk/gtktypebuiltins_evals.c: enum value arrays.
5029 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
5031 * gtk/gtk.defs: generated file with scheme syntax for type definitions
5032 of gtk and gdk structures and enums.
5033 * gtk/gtktypeutils.h:
5034 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
5035 macros anymore (this fixes binary incompatibility with new enum
5038 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
5039 key bindings for this widget.
5040 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
5044 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
5045 again. new functions gtk_object_class_user_signal_new () and
5046 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
5047 flag on the signal creation.
5049 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
5051 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
5053 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
5059 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
5061 * reworked enum value array generation code. gtk.defs is a generated
5064 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
5066 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
5067 check menu items in the compatibility code (this required me to remove
5068 the "<check>" part from the menu item name, grrr).
5070 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
5072 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
5073 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
5075 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
5077 * gtk/gtkitemfactory.h:
5078 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
5079 additions to the dumping code to feature GtkPatternSpec.
5080 even found a bug to fix in the original code ;)
5082 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
5084 * gtk/gtkitemfactory.c: support different types of callbacks, to
5085 maintain existing code.
5087 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
5089 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
5091 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
5092 this should eventually be done by gentypeinfo.el somewhen.
5093 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
5095 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
5096 enum values of an enum type.
5104 brought enum/flags definitions in sync, added a few more enum
5105 definitions for bindings and pattern matching.
5107 * some more macro and GtkType fixups in various places.
5109 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
5110 as a key-release modifier for the binding system.
5112 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
5114 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
5115 was a stale list pointer that is already present in GtkMenuShell.
5117 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
5118 GtkMenuShell::selection_done which is emitted after the menu shell
5119 poped down again and all possible menu items have been activated.
5121 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
5123 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
5124 before activation of the menuitem, so the menu is actually taken off the
5125 screen prior to any menu item activation.
5127 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
5131 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
5132 the emission of the "add-accelerator" signal on a widget. this is
5133 usefull to prevent accelerator installation on certain widgets.
5135 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
5136 labels left justified, by setting their alignment. stop accelerator
5137 installation for the menu items, since we use dynamic menus.
5139 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
5141 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
5142 should *really* use GtkItemFactory. this is only for preserving source
5143 compatibility where possible, use of GtkMenuFactory is deprecated as of
5146 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
5147 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
5148 missed this possibility when i added gtk_object_class_add_user_signal
5151 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
5153 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
5155 * gtk/gtkaccelgroup.h:
5156 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
5158 * gtk/gtkaccellabel.h:
5159 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
5160 display of the accelerators associated with a certain widget.
5162 * gtk/gtkitemfactory.h:
5163 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
5164 parsing and accelerator handling.
5166 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
5168 (gtk_menu_map): removed the allocation code.
5169 (gtk_menu_size_allocate): care for redrawing of children and resize
5170 our widget->window correctly.
5171 (gtk_menu_key_press): feature the new accelerator groups.
5173 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
5174 submenu if neccessary.
5176 * gtk/gtkmenuitem.c:
5177 * gtk/gtkcheckmenuitem.c:
5178 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
5182 (gdk_keyval_from_name):
5183 (gdk_keyval_name): new functions for keyval<->key-name associations.
5184 (gdk_keyval_to_upper):
5185 (gdk_keyval_to_lower):
5186 (gdk_keyval_is_upper):
5187 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
5188 regards to their cases.
5190 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
5192 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
5193 widget's class path.
5194 (gtk_widget_path): new function to calculate a widget's name path.
5196 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
5197 pattern matching, features reversed pattern matches.
5199 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
5201 * examples/extract.sh, examples/extract.awk:
5202 New files to automagically extract code examples from the
5205 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
5207 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
5208 * gtk/gtkcontainer.c (gtk_container_focus_move):
5209 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
5211 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
5213 * docs/gtk_tut.sgml: minor changes to support auto
5214 extraction of example code
5216 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
5218 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
5219 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
5221 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
5223 * docs/gtk_tut.sgml:
5224 - new section on Events
5225 - change all delete_event callbacks to include
5226 a GdkEvent parameter
5227 - clean up the formatting
5229 * examples - helloworld.c, helloworld2.c, notebook.c,
5230 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
5231 rulers.c, table.c, wheelbarrow.c: change all delete_event
5232 callbacks to include a GdkEvent parameter.
5234 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
5236 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
5237 field of crossing events.
5238 (struct _GdkEventCrossing): Added the following fields: time, x,
5239 y, x_root, y_root, mode, focus, state.
5241 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
5242 crossing event structure.
5244 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
5245 changes to the crossing event structure.
5247 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
5249 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
5251 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
5253 * docs/gtk_tut.sgml:
5254 - GtkTooltips, update to current API
5255 - change all 'gpointer *data' to 'gpointer data'
5256 - other minor changes
5258 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
5260 * configure.in (LDFLAGS): Bomb out with a moderately
5261 helpful message if detection of X libraries fails.
5263 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
5266 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
5267 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
5269 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
5270 gtk/gtksignal.c gtk/gtktext.c:
5272 Fixups for warnings from adding const to type of GHashFunc,
5275 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
5276 ansi-warnings fixups.
5278 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
5280 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
5281 Locate child at (border_width,border_width), not
5282 (2*border_width,2*border_width). [ The border is _outside_
5285 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
5286 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
5288 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
5290 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
5293 1998-05-22 <sopwith@redhat.com>
5295 * gtk/gtkeventbox.c: Pass size_allocate on to the child
5296 regardless of whether it is visible or not. Also
5297 locate child at (border_width,border_width), not (0,0)
5299 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
5301 * gtk/gtkhandlebox.c: Added style_set handler.
5303 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
5304 [ From: Chris Lahey <clahey@umich.edu> ]
5306 * gtk/gtkeditable.c, gtk/gtkeditable.h,
5307 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
5308 and set_position functions to get and set the cursor position.
5310 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
5311 signal status. Make GtkText do user-controlled insertion
5312 and deletion through the Editable widget so that these
5313 signals are properly emitted.
5315 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
5316 display asterisks instead of empty space when visible = FALSE)
5318 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
5320 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
5323 1998-05-21 <sopwith@redhat.com>
5325 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
5326 custom routine for loading images specified in gtkrc's.
5328 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
5330 * configure.in: Use pthread_attr_init() as a test function,
5331 since most of the rest of -lpthread is macros on DU4.
5333 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
5335 * gtk/gtkcombo.c: implemented completion in the entry.
5337 1998-05-18 <sopwith@moebuis.labs.redhat.com>
5339 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
5341 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
5343 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
5344 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
5345 to be of runtype GTK_RUN_LAST.
5347 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
5350 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
5353 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
5355 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
5356 text retrived from GtkEntry. only intercept the Tab key if there
5357 was some text to complete.
5359 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
5361 Basic thread-awareness:
5363 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
5365 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
5366 gdk_threads_[init/enter/leave] for applications, plus
5367 gdk_threads_wake to wake the mainloop thread out of
5370 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
5372 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
5374 * gtk/testgtk.c (list_clear): Account for the fact
5375 that gtk_list_clear_items is not inclusive. (Clears
5378 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
5380 * gdk/gdk.c: include gdkkeysyms.h always
5383 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
5385 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
5386 the visibility_notify_event method and changed method order.
5388 1998-05-14 <sopwith@moebuis.labs.redhat.com>
5390 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
5392 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
5394 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
5395 from Olli Helenius <ollhel@batman.jytol.fi>.
5397 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
5399 (gtk_type_set_chunk_alloc): new function to allow allocation of new
5400 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
5403 * gtk/gtkobject.c (gtk_object_finalize): free an object through
5406 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
5408 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
5409 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
5411 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
5413 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
5414 GPOINTER_TO_UINT fixes.
5416 * gtk/gtksignal.c: Include <string.h> for memset.
5418 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
5419 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
5421 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
5422 Cleanups, comments and the ability to have rulers with
5423 a reversed direction.
5425 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
5427 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
5428 that Sopwith missed when changing stat => lstat.
5430 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
5432 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
5433 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
5434 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
5436 * gdk/gdk.c: Print sizeof() results
5437 as g_print("%ld", (glong)sizeof(foo)), to deal with
5438 sizeof() being long on Alpha's.
5440 * gtk/testgtk.c: include <string.h> for strlen
5442 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
5443 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
5445 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
5446 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
5448 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
5450 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
5451 (From: Christopher James Lahey <clahey@umich.edu>)
5453 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
5456 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
5457 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
5458 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
5459 the default relief for the toolbars buttons. Added an
5460 toggle for the toolbar test in testgtk.c.
5462 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
5464 * docs/gtk-config.1: Rewritten and hopefully improved.
5466 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
5469 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
5471 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
5473 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
5474 GtkPreview's visual and colormap, otherwise things can BadMatch.
5476 * gtk/testgtk.c (create_color_preview):
5477 (create_gray_preview): Removed pushing/popping of visual/colormap
5478 now that GtkPreview does things correctly.
5480 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
5481 (gtk_color_selection_draw_wheel): Pick the style from the correct
5482 place (the colorsel->wheel_area widget) so that the GCs will match
5483 with where we are going to paint to.
5485 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
5486 of visual/colormap now that GtkColorSelection does things the
5489 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
5491 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
5492 previously unused window->need_resize flag to mark if a window's
5493 descendents changed size while the window was not visible. In this
5494 case, when the window becomes visible, we reallocate everything,
5495 since we didn't keep track of what actually changed.
5497 (Fixes bug where changing the popdown strings of a
5498 combo to something of the same length caused them to
5499 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
5501 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
5503 [security audit by Alan Cox]
5505 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
5506 exceed maximum assumed size.
5508 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
5509 not exceed maximum assumed size.
5510 (gtk_menu_factory_remove): likewise.
5511 (gtk_menu_factory_find_recurse): likewise.
5513 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
5515 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
5516 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
5517 redrawn if that is still neccessary. don't allow queueing of already
5519 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
5520 widgets which are in the queue can be destroyed safely, handle
5521 requeueing properly.
5522 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
5523 widgets which are in the queue can be destroyed/unrealized safely.
5525 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
5527 * gtkfaq.sgml: add question on multi-threading,
5530 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
5532 * configure.in (cflags_set): preserve automake CFLAGS.
5534 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
5535 and libgdk-1.1.la. this means we need to change certain portions of
5536 the Makefile.am on major/minor version bumps.
5538 * ltmain.sh: the -release option is not required anymore.
5540 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
5541 of the first argument to be of type GtkObject. unconditionally compile
5542 this function. removed __GNUC__ dependancy of the gtk_object_ref and
5543 gtk_object_unref macro wrappers for this function.
5545 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
5549 (gtk_object_data_try_key):
5550 (gtk_object_data_force_id): these are now macros substituting the old
5551 functions. we just use the corresponding g_dataset_* functions for
5552 key->id associations. (this is to assure unique key<->id associations).
5554 1998-05-10 Stefan Jeske <stefan@gtk.org>
5556 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
5559 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
5561 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
5563 * configure.in (LIBS): Try to figure out if this
5564 is Digital Unix and we need -std1 to get the
5567 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
5569 * docs/gtk_tut_it.sgml: update of Italian tutorial
5570 translation from Daniele Canazza <dcanazz@tin.it>
5572 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
5574 * gtk/gtkfeatures.h.in: new file used as template for
5575 * gtk/gtkfeatures.h: new file to define macros indicating newly
5576 introduced features, such as GTK_HAVE_SIGNAL_INIT.
5579 (gtk_signal_emitv_by_name):
5581 new functions to emit signals with an already provided parameter set.
5582 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
5583 (gtk_signal_real_emit): prototype changes, so this functions always
5584 gets its parameters and signal structure as arguments.
5585 (gtk_signal_emit): provide the signal structure and parameter list for
5586 gtk_signal_real_emit.
5587 (gtk_signal_emit_by_name): likewise.
5589 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
5591 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
5592 signal connections through unsetting GTK_CONNECTED.
5593 (gtk_signal_handler_insert): reflect the presence of signal connections
5594 through setting GTK_CONNECTED.
5595 (gtk_signal_real_emit): only check for handler emissions if the object
5596 has the GTK_CONNECTED flag set.
5597 (gtk_signal_handler_pending): don't check for pending handlers if the
5598 GTK_CONNECTED flag is not set for this object.
5600 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
5601 a GtkObject has signal handler connections.
5603 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
5604 set for this object call gtk_signal_handlers_destroy().
5606 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
5607 multiple processing of macro args.
5609 * gtk/gtktypeutils.c:
5612 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
5614 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
5616 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
5617 draw-queue when we are done.
5619 (gtk_widget_queue_draw/_queu_resize): Always return
5620 FALSE and avoid having two idles at the same time.
5622 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
5624 * gtk/gtktext.c: Various fixes to make sure cache
5625 lines are freed if line_start_cache doesn't point to the
5626 beginning of the cache.
5628 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
5630 * style_set improvements for GtkText and GtkEntry
5632 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
5634 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
5637 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
5639 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
5640 data chunks through a global object data structure list. unlink
5641 object data before invoking its destroy function.
5642 (gtk_object_finalize): slight modification to allow usage of object
5643 data during object finalization.
5645 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
5647 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
5648 signal names, e.g. "signal-name" is now an alias for "signal_name".
5649 (gtk_signal_handler_new): allocate handlers through a global handler
5650 structure list, that's faster than memchunks.
5651 (gtk_emission_new): allocate emissions through a global emission
5652 structure list, that's faster than memchunks.
5654 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
5656 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
5658 * ltmain.sh: added a new commandline flag -postfix similar to -release,
5659 but will immediately change the library name.
5662 * gtk/Makefile.am: specify -postfix and -version-info
5664 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
5665 GTK_BINARY_AGE. calculate LT_* variables for libtool.
5667 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
5669 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
5670 background (fg_set -> bg_set confusion).
5672 1998-05-06 Stefan Jeske <stefan@gtk.org>
5674 * gtk/testgtk.c (unselect_all): Removed code that caused an
5677 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
5679 * gtk/gtksignal.c: reimplemented the signal storage system to use a
5680 linear array rather than a hash table.
5681 be carefull *not* to keep any GtkSignal pointers across invokations
5682 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
5683 general code cleanups, made all allocations through memchunks.
5684 (gtk_signal_lookup): we now do the lookup of signals through a key_id
5685 for the signal names to avoid multiple hashing of the signal name on
5686 lookups for the several hirarchy levels of an object.
5688 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
5690 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
5691 to speed things up and remove code duplication.
5693 Reintegrated buffer overflow patches, and added
5694 some extra paranoia.
5696 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
5698 * gdk/gdk.c (gdk_event_translate): A guint * was
5699 being passed where X expected a Keysym *, and
5700 keysyms are long's on Alpha Linux. This was causing
5701 segfaults in Xlib, apparently because of alignment.
5702 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
5704 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
5706 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
5707 set GDK_EXPOSURE_MASK for DrawingAreas
5709 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
5711 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
5712 (superceded by RC file reparsing capabilities)
5714 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
5715 events. (Shouldn't be sent to the InputOnly leader, which
5716 it is now by gdk_event_send_clientmessage_toall
5718 * gtk/testgtk.c: Added extra button to rcfiles test
5719 to send out _GDK_READ_RCFILES events.
5721 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
5723 * gtk/gtkselection.c (gtk_selection_clear): Fixed
5724 reversed conditionals that caused segfault on some
5727 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
5729 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
5730 cast to GTK_OBJECT for gtk_object_ref.
5732 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
5734 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
5735 checking for signal initialization in gtksignal.c.
5737 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
5738 a long debugging period ;)
5740 1998-05-05 Stefan Jeske <stefan@gtk.org>
5742 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
5743 New function to wrap XSetDashes; modified gtkctree.c to use it.
5745 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
5747 * configure.in: Added $x_libs in the other_libraries field in the
5748 check for XShapeCombineMask.
5750 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
5752 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
5754 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
5755 linear array rather than a hash table. it actually speeded up testgtk
5756 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
5757 pointers across invokations of gtk_type_node_next_and_invalidate() and
5758 therefore gtk_type_unique()!
5760 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
5761 inheritance of a class pointer.
5762 (GTK_OBJECT): modifications for speedups.
5763 (GTK_IS_OBJECT): likewise.
5764 (GTK_OBJECT_CLASS): likewise.
5765 (suggested by owen).
5767 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
5769 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
5771 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
5772 since its derivation changed 4 month ago ;(. showed up with the unique
5773 type name checking code in gtk_type_unique().
5775 * random guint->GtkType and macro fixups.
5777 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
5779 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
5780 Configure events that would result in a negative
5783 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
5785 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
5786 "glibconfig.h" and another about writing another IRC
5789 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
5791 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
5792 parameters to log are doubles. Digital Unix apparently
5793 is missing the argument in its prototype.
5795 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
5797 * gtk/gtklabel.c (gtk_label_state_changed): Don't
5798 force a clear until the widget is actually on
5801 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
5803 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
5804 to make this consistent with the gtk-1-0 tree.
5806 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
5808 * configure.in acheader.h gdk/gdkwindow.c
5809 Check for Shape extension both on the client and server
5810 side. (And, more importantly, check for the shape extension
5811 so we may include -lXext even when compiling with --disable-xshm)
5813 Don't set override_redirect on all shaped windows. It isn't
5816 * gdk/gdkwindow.c: Set ->colormap to NULL for root
5817 and foreign windows. Use this to check if we
5818 need to get the colormap from X.
5820 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
5822 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
5823 between the default and the button always in GTK_STATE_NORMAL.
5825 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
5828 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
5830 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
5831 Fix a buffer overflow on pixmaps that claim to have
5832 more than 31 characters per pixel.
5834 (gdk_pixmap_read_string): Don't wrap around strings longer
5835 than half of address space ;-)
5837 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
5838 that were used for printing integers.
5845 int foo (void) { ... }
5847 Even where there were proper prototypes elsewhere.
5849 * gdk/gxid.c (handle_claim_device): Some extra checks.
5850 It isn't safe against being fed bad X id's, but at
5851 least it should be safe against deleting all your
5854 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
5856 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
5857 to set the adjustments value when there is no current emission.
5858 [ Removed by mutual agreement owt 5/3/1998 ]
5860 * gtk/gtksignal.c: added new functions to retrive the number of
5861 existing emissions for a certain signal.
5862 (gtk_signal_n_emissions): new function.
5863 (gtk_signal_n_emissions_by_name): new function.
5865 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
5867 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
5868 set the current focus_child of a container, does proper referencing and
5869 adjusts the vadjustment/hadjustment associated with the focus widget.
5871 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
5872 containers via gtk_container_set_focus_child.
5874 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
5877 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
5878 child since not every child removal goes through this function (this
5879 showed up after gtk_container_set_focus_child() started to reference the
5880 focus_child of a container).
5882 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
5883 of a container from gtk_container_remove into this place.
5885 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
5887 * gtk/gtksignal.c: added new functions to operate on intermediate
5888 function pointers. implemented incremental blocking.
5889 (gtk_signal_disconnect_by_func): new function.
5890 (gtk_signal_handler_block_by_func): new function.
5891 (gtk_signal_handler_unblock_by_func): new function
5893 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
5895 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5896 Always show the scrollbars when the policy is
5897 GTK_POLICY_ALWAYS...
5899 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
5901 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
5902 "value_changed" if we really passed a new value.
5903 (gtk_adjustment_changed): new function to emit the "changed" signal.
5904 (gtk_adjustment_set_value): new function to emit the "value_changed"
5907 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
5909 * gtk/gtkcombo.c: Further changes to the way the window
5910 is popped up so that it will be compatible with
5911 auto-scrolling in the future.
5913 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
5915 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
5916 the combo-list is empty since that will cause the combo to operate
5917 on a non existing GtkList window.
5918 (gtk_combo_get_pos): provide the combo list with a usfull default
5920 (gtk_combo_popup_button_press): grab the focus.
5921 (gtk_combo_activate): grab the focus.
5923 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
5925 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
5926 function to reset the RC styles for a heirarchy
5928 Clear the window background if necessary in
5929 gtk_window_style_set.
5931 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
5932 rereads all previously read RC files.
5934 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
5935 (Should it just be called gdk_get_toplevels?)
5937 * gtk/testgtk.c: New test to reload RC files.
5939 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
5942 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
5943 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
5944 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
5945 the GTK_ prefix (this solution involved less changes in the
5946 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
5947 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
5948 from lars & stefan to support the derivation of GtkCtree.
5952 initial import of a tree widget derived from gtkclist, courtesy
5953 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
5956 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
5958 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
5960 (gtk_list_insert_items):
5961 (gtk_list_remove_items_internal):
5962 (gtk_list_clear_items):
5963 remove a possible pointer grab, we might get thrown into a loop
5965 (gtk_list_button_press): grab the pointer *before* selecting the child,
5966 because selection of items may cause the lists children to change,
5967 resulting in a grab release.
5968 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
5970 (gtk_list_shutdown): remove all children from the list.
5971 (gtk_real_list_unselect_child):
5972 (gtk_real_list_select_child): *always* put our internal structures into
5973 sane state *before* signal emisions (i.e. list->selection updates prior
5974 to gtk_list_item_[de]select() calls).
5976 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
5977 focused child walks out of the window.
5978 removed CAN_FOCUS for the combo arrow's button since it doesn't react
5979 to keyboard events ("clicked" connection is missing).
5981 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
5983 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
5984 getting colormap for FOREIGN windows to go along with
5985 Raster's fix for visuals.
5990 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
5992 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5993 Check to catch the case when the viewport fits in either
5994 direction or both, instead of flip-flopping infinitely.
5996 Only show/hide the scrollbars once at the end.
5998 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
6000 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
6001 Include the scrollbars in the foreach call.
6002 (gtk-fortier-980405-0.patch;
6003 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
6006 really should also include its tabs, but that might cause
6007 problems for programs if they
6009 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
6011 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
6012 resize if the size actually changed.
6013 (gtk-johannes-980414-0.patch ;
6014 johannes@nada.kth.se (Johannes Keukelaar) )
6016 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
6018 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6019 ltmain.sh ltconfig config.sub config.guess:
6021 Reverted back to libtool-1.2 (plus minor patches) so as not to
6022 force the issue for everyone else.
6024 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
6026 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6027 Updated to libtool 1.2a.
6029 * gtk/gtkclist.c: Draw the in-between lines with style->base
6030 instead of style->white.
6032 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
6034 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
6035 Cache the colormap and children of a window locally
6036 instead of fetching them from the server when needed.
6037 Huge performance difference for creating/destroying
6040 * gtk/gtkstyle.c: Find the depth from the cached
6041 visual, instead of asking the server.
6043 * gtk.m4: Distribute the new version which tries to
6044 figure out what went wrong and give helpful error
6047 * ltmain.sh ltconfig config.sub config.sh:
6048 Updated to libtool 1.2a
6050 * gtk/gtktext.c: Fixed a bug where the drawn level
6051 was being messed up when the text was scrolled
6054 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
6056 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
6057 the filesystem under you (fix from Josh)
6059 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
6061 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
6062 if the viewport already exists before iterating over it, maybe we
6063 haven't been constructed yet.
6065 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
6067 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
6068 the GtkBin widget already has a child.
6070 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
6071 check that child->parent == NULL;
6073 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
6075 * gtk/gtkselection.c (gtk_selection_clear): Only return
6076 FALSE when the clear event is been rejected, not when
6077 widget has already lost the selection. (Which should
6078 only happen when we are setting the selection to another
6081 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
6083 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
6085 Removed the "check visibility after gtk_widget_unparent" bug
6086 in hopefully the last three places.
6088 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
6090 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
6093 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
6095 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
6096 for CAN_FOCUS widgets.
6098 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
6099 adjustments for the table.
6100 (create_list): feature automatic adjustment of the scrolled window to
6101 always contain the focused child.
6102 (create_main_window): keep the focussed button always inside of the
6105 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
6106 adjustments, to contain the allocation of the currently focused child.
6107 (gtk_container_set_focus_hadjustment): new functin to set the
6108 horizontal focus adjustment.
6109 (gtk_container_set_focus_vadjustment): new functin to set the vertical
6112 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
6113 clamp the currents adjustment page into a specific range.
6115 * random GtkType fixups for gtk_*_get_type() functions.
6117 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
6119 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
6120 Account for the fact that gtk_tree_item_remove_subtree
6121 will be called recursively.
6123 Handle removing a collapsed subtree.
6125 (From Andy Dustman <adustman@comstar.net>)
6127 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
6128 root tree when removing items from a non-previously
6131 * gtk/testgtk.c: Added a remove_subtree button.
6133 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
6135 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
6136 before object removing data. This change fixes a bug where
6137 removing the last weak references would cause it to be
6140 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
6142 * gdk/Makefile.am: Removed mostly useless dependency that
6143 was causing problems for SGI's make, when used with
6144 the 'make dist' form of GTK+. (Dependency caused dependencies
6145 to be redone when BUILT_SOURCES changed)
6147 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
6149 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
6152 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
6153 to gtkitem.c so dragging can also work in lists.
6155 * gtk/gtklist.[ch]: Track child enter events and use
6156 those to allow dragging the selection.
6158 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
6160 * gtk/gtktext.c: Try enabling background pixmaps for editable text
6161 widgets. There is a bit of flashing, but not too bad. If you
6162 don't want the flashing, you can always not set a background
6165 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
6167 * gtk/gtktext.c: Fixed a bug where the drawn level
6168 was being messed up when the text was scrolled
6171 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
6173 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
6174 bug: There is no need to set the ExposureMask in the XGrabPointer
6175 (this caused DnD programs to crash).
6177 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
6179 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
6180 field to be of type guint.
6181 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
6183 (gtk_accelerator_table_install): keep a per object list of accelerator
6184 tables that refer to this object.
6185 (gtk_accelerator_table_remove): remove the accelerator table from the
6187 (gtk_accelerator_table_clean): warn if there are any object references
6188 left in an accelerator table upon destruction.
6189 (gtk_accelerator_tables_delete): new function to delete object
6190 references from the accelerator tables associated with this object.
6192 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
6193 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
6194 of an accelerator can be prevented by gtk_signal_emit_stop().
6195 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
6196 so there are no stale pointers in accelerator tables left.
6198 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
6200 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
6201 visible before we unparent it.
6203 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
6205 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
6206 running_timeouts list with the tmp_list link itself, not with a new
6207 GList structure pointing to our link. that would fill up memory and
6208 causes the GList.data fields of the running_timeouts list to point to
6209 GList structures and not GtkTimeoutFunction structures which is a
6211 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
6214 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
6216 * gtk/gtkradiomenuitem.h:
6217 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
6218 ala gtk_radio_button_set_group.
6219 (gtk_radio_menu_item_init): assure that we always have at least a group
6220 that points to self.
6222 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
6223 added g_return_if_fail() statements.
6224 (gtk_radio_button_init): assure that we always have at least a group
6225 that points to self.
6227 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
6229 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
6231 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
6233 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
6234 (Damon Chaplin), which i got wrong when applying Damon's patch the last
6237 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
6239 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
6240 that when we are running with a non-installed colormap,
6241 in 8-bit pseudo-color, we actually are using the system
6242 visual. (Fixes *Bad Match* errors on Digital Unix machines
6243 with multiple 8-bit pseudo-color visuals)
6245 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
6247 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
6248 by whoever thought that randomly changing ints to unsigned int
6249 without reviewing the code was a good idea. It is, btw not
6250 mentioned in the ChangeLog as usual, but I know it was not Elliot
6251 the culprit this time.
6253 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
6255 * Released GTK+ 1.0.0