1 Tue Dec 8 18:02:57 GMT 1998 Tony Gale <gale@gtk.org>
3 * examples/Makefile: simple top level Makefile that invokes all
4 the sub-directory Makefiles.
6 1998-12-08 Andrew T. Veliath <andrewtv@usa.net>
8 * gtk/testgtk.c: Functions to test the toolbar space style.
10 * gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
11 GtkToolbarChild to hold allocation. Set default space style to
12 GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
14 (gtk_toolbar_paint_space_line): New function; paints the separator
15 line, using "toolbar" as the detail.
16 (gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
17 style is set to SPACE_LINE.
18 (gtk_toolbar_size_allocate): Store space allocations.
19 (gtk_toolbar_insert_element): If we are a space, allocate and
20 initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
21 (gtk_toolbar_set_space_style): New function.
23 * gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
24 and LINE. Add prototype for gtk_toolbar_set_space_style.
26 Mon Dec 7 16:03:55 1998 Owen Taylor <otaylor@redhat.com>
28 * gtk/gtkthemes.h: Remove random unnecessary includes
31 1998-12-07 Damon Chaplin <DAChaplin@msn.com>
33 * gtk/gtkfontsel.c (gtk_font_selection_select_best_style): made sure
34 we only try to match styles which are currently shown.
36 (gtk_font_selection_init): set the notebook tabs homogeneous and set
37 the border, so we don't need to set the size explicitly (bad for i18n).
38 Used the clist auto-resize feature for the font and style lists on the
39 main page and all the filters. Used padding for the 'Reset Filter'
40 button instead of spaces around it (bad for i18n).
42 (gtk_font_selection_find_font): when searching for
43 a font, if we can't match both the family and foundry, we return any
44 font where just the family matches. (The foundry can even be '*'.)
46 (gtk_font_selection_show_available_styles):
47 (gtk_font_selection_realize_list): don't set the style clist row
48 colours (for the charset rows) until the clist is realized, since we
49 use the clist style's insensitive colours.
51 Mon Dec 7 13:38:06 1998 Owen Taylor <otaylor@redhat.com>
53 * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
54 _after_ doing XShmAttach. This should work everywhere,
55 and avoid the need for signal handlers or configure
58 Thu Dec 3 19:58:45 1998 Owen Taylor <otaylor@redhat.com>
60 * gtk/gtkinputdialog.c: Use _add_with_viewport() for
61 scrolled window contents.
63 1998-12-07 Federico Mena Quintero <federico@nuclecu.unam.mx>
65 * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
66 field in the structure.
68 Mon Dec 7 15:15:06 GMT 1998 Tony Gale <gale@gtk.org>
70 * docs/gtk_tut.sgml: Start mass update for GTK 1.1
71 * examples/extract.sh: Look for the best version of awk
72 * examples/extract.awk: Fix FD leak
73 * example/base: minimal example from Tutorial
75 Mon Dec 7 01:29:27 1998 Owen Taylor <otaylor@gtk.org>
77 * gtk/gtkwindow.c: New functions
78 gtk_window_set_transient_for() - set up a "transient for" relationship.
79 gtk_window_set_default_size() - set the initial size of a window
80 distinct from its minimum size.
81 gtk_window_set_geometry_hints() - Allow the user to set
82 minimum, maximum sizes, aspect rations, and gridded geometry,
83 possibly all with respect to a subwidget of the window.
84 These interfaces are still a wee bit experimental.
86 * gdk/gdk.c: Added gdk_window_set_transient_for(),
87 gdk_window_set_geometry_hints(), and gdk_window_set_role().
89 * gdk/gdktypes.h: Added new types for find-grained specification
92 * gtk/testgtk.c: Various changes to tests to test the
95 * gtk/gtkfontsel.c: Squash a few 'const' warnings.
97 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
98 call to gtk_style_set_background() to prevent egregious
101 Mon Dec 7 03:52:01 1998 Tim Janik <timj@gtk.org>
103 * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
104 signals, don't pass the data pointer twice, but swap it with the
105 object pointer (proposed on Nov 30 1998 on gtk-devel-list).
107 Mon Dec 7 03:08:39 1998 Tim Janik <timj@gtk.org>
109 * gtk/gtktypeutils.h:
110 * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
111 internal type info data to the user. if such functionality is required
112 we should provide wrapping accessors, ala gtk_signal_query(). also the
113 GtkTypeInfo structures are dynamically allocated memory portions, so
114 only the type system is really allowed to access that stuff.
116 * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
117 since it destroys the possibility to implement automatic marshaller
118 lookups some day, and it also disables third party code's ability to
119 connect to any signal.
121 Mon Dec 7 01:32:18 1998 Tim Janik <timj@gtk.org>
123 * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
124 Tab key on the entry. the focus shouldn't get lost even if completion
125 is attempted from an empty entry, since an empty entry string does
126 indeed have a valid completion meaning (complete all).
127 (gtk_file_selection_init): cast the gchar array parameter in calls to
128 gtk_clist_new_with_titles() to quit compiler warnings.
129 (check_dir): the no_stat_dirs struct must not be const, since we do
130 indeed modify its contents.
132 * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
137 changed emission allocation, so we don't use a doubly linked list
138 but link ourselfs (singly linked).
139 changed emission hooks, they get the emision parameters passed as
140 well now and are emitted during the actuall signal emission (after
141 the RUN_FIRST class method, but prior to RUN_FIRST handlers).
142 the existing restrictions do still apply to signal emission hooks,
143 i.e. an emission may not be stopped or restarted from an emission hook.
144 due to possibly huge perfomance impacts, frequent use of emision hooks
145 is also not recommended.
146 (gtk_signal_next_and_invalidate): added an
147 assertments which explicits what the code assumes anyways: a
148 maximum amount of 65535 signals.
150 * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
151 gtk_container_foreach_full() should be used instead.
154 deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
155 we provide _full variants.
157 * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
158 gtk_signal_connect_full() for long enough now.
160 1998-12-06 Marius Vollmer <mvo@zagadka.ping.de>
162 * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
163 (gtk_signal_connect_by_type): Allow only no_marshal handlers to
164 connect to signals with a NULL marshaller.
166 * gtk/gtktypeutils.c (gtk_type_get_info): New.
167 gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
169 Sun Dec 6 14:27:35 1998 Stefan Jeske <stefan@gtk.org>
171 * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
172 arrows if wrap == FALSE and interval borders are reached.
174 Sat Dec 5 21:07:09 1998 Owen Taylor <otaylor@gtk.org>
176 * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
177 long-standing typo in aspect ratio computation code.
178 (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
180 Fri Dec 4 01:20:06 1998 Lars Hamann <lars@gtk.org>
182 * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
183 valid row numbers only
184 (toggle_row): check if clist_row != NULL
186 Fri Dec 4 00:50:12 1998 Lars Hamann <lars@gtk.org>
188 * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
191 (gtk_clist_set_column_visibility)
192 (gtk_clist_column_titles_active)
193 (gtk_clist_column_titles_active)
194 (gtk_clist_column_title_passive)
195 (gtk_clist_column_title_active): few additional tests whether
196 column->button != NULL
198 Thu Dec 3 16:49:18 1998 Owen Taylor <otaylor@redhat.com>
200 * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
201 from 10 seconds, so it doesn't abort while users
202 have an ACTION_ASK menu up.
204 * gtk/gtkdnd.c: Hide the icon window between sending a a
205 drop event to the destination and displaying the
206 snapback animation, so that it doesn't hang around
209 Thu Dec 3 16:37:42 1998 Owen Taylor <otaylor@redhat.com>
211 * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
212 for the foreground of cells for CLists in the insensitive
213 state, instead of GTK_STATE_PRELIGHT.
215 Thu Dec 3 06:20:59 1998 Tim Janik <timj@gtk.org>
217 * gtk/gtkwindow.c: moved checks upon focus setting from
218 gtk_window_real_set_focus to gtk_window_set_focus, so we don't
219 emit the signal if unneccessary.
221 * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
222 containers when grabbing focus on a new widget. this is based on
223 a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
225 * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
226 flag, so we take the buttons into consideration upon the next focus
229 * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
232 Wed Dec 2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
234 * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
235 enhancement for true-color displays.
241 docs/gtk-config.1: up to version 1.1.6
243 Wed Dec 2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
245 * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
246 we release it this time
248 Wed Dec 2 01:39:02 1998 Tim Janik <timj@gtk.org>
251 * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
253 * incremented version number to 1.1.6 and made Gtk
254 dependant on GLib 1.1.6.
256 * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
257 from guint16 to gint16, since sizes bigger than 32767 are not supported
258 anyways, and aritmethics with intermediate negative values are possible
261 Tue Dec 1 00:00:04 1998 Tim Janik <timj@gtk.org>
263 * gtk/gtkscrolledwindow.c:
264 implementation of GTK_POLICY_NEVER functionality, added rationales
265 on the policy and size requisition handling at the top.
266 (gtk_scrolled_window_size_request):
267 we assume a default minimum for our child's width and height
268 if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
269 specified the dimension explicitely.
270 (gtk_scrolled_window_size_allocate):
271 do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
273 * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
274 size we require (including the child).
277 (gtk_clist_size_request): report the real size required.
279 * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
281 * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
282 need to be a static variable.
284 Mon Nov 30 22:41:25 1998 Tim Janik <timj@gtk.org>
296 * gtk/gtkscrolledwindow.h:
297 * gtk/gtkscrolledwindow.c:
298 s/scroll_adjustements/scroll_adjustments/
299 s/scroll_adjustments/set_scroll_adjustments/g
301 Tue Dec 1 22:45:58 1998 Lars Hamann <lars@gtk.org>
303 * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
305 * gtk/gtkclist.c (gtk_clist_row_move): new public function.
306 emit a row_move signal
307 (real_row_move): move source_row to dest_row
308 (gtk_clist_swap_rows): use gtk_clist_row_move calls.
309 (gtk_clist_columns_autosize): resize all columns to their optimal
311 * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
313 * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
315 Tue Dec 1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
319 * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
320 Separate vars for each, for granularity.
322 Tue Dec 1 02:19:54 1998 Tim Janik <timj@gtk.org>
324 * gtk/gtkenums.h: fixed a stupid error of mine about the run type
327 1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
329 * {gdk,gtk}/*.c: Make read-only data structures "static const" to
330 allow them to be shared, mainly including (but not limited to) the
331 GtkTypeInfo structures for each class.
333 * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
335 Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
338 Surround debug variable with #ifdef to silence gcc.
340 * gtk/gtknotebook.c (gtk_notebook_reorder_child):
341 Added initializer to quiet gcc warning.
342 Added assertion to check for null pointer deref.
344 Mon Nov 30 10:11:29 1998 Tim Janik <timj@gtk.org>
346 * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
347 system specific includes.
349 * gtk/gtksignal.c: asured that stop and restart emissions are also
350 checked and processed for not connected objects. fixed up restart
351 emission administration. invoke emission hooks after emission, hooks
352 are not supposed to muck around with the current emission, and
353 may also not cause emission restarts. fixed up stop emission
356 Mon Nov 30 06:20:36 1998 Tim Janik <timj@gtk.org>
358 * gtk/testgtk.c: added an event watcher for enter/leave based on
359 signal emission hooks.
361 * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
362 GTK_RUN_NO_HOOKS signal.
365 * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
366 to a signal with gtk_signal_add_emission_hook or
367 gtk_signal_add_emission_hook_full, and can be removed again with
368 gtk_signal_remove_emission_hook.
370 * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
371 an appropriate mask for signal runtypes for a long time now.
372 added GTK_RUN_NO_HOOKS value, which is used to flag signals
373 that do not allow the running of signal hooks.
375 1998-11-26 Michael Krause <m.krause@tu-harburg.de>
377 * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
378 argument a gint: switch_page signal delivers valid page numbers
381 Sun Nov 29 06:12:01 1998 Tim Janik <timj@gtk.org>
383 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment):
386 * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
387 check, people must use gtk_type_init().
388 fixed up type allocation for foreign fundamentals.
391 * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
392 for internal use by containers, that want to assign specific composite
393 names to their composite children.
394 added gtk_widget_get_composite_name() which will return a newly
395 allocated string, containing the composite name of a widget. valid
396 composite names can only be retrived from widgets that have a parent
397 assigned and are flagged as GTK_COMPOSITE_CHILD.
399 * gtk/gtkcontainer.h:
400 * gtk/gtkcontainer.c: added a new function
401 gtk_container_child_default_composite_name() which will return a
402 newly allocated string, holding the composite name of a containers
403 child. a default implementation is provided which will compose the
404 composite name out of the widgets type and its sequential children
405 id. this implementation can be overidden through a new class function
408 Sat Nov 28 10:57:59 1998 Owen Taylor <otaylor@redhat.com>
410 * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
411 expose_event handler - we had two expose_event
414 Sat Nov 28 03:13:42 1998 Tim Janik <timj@gtk.org>
416 * gtk/gtkscrolledwindow.h:
417 * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
418 it inherits from GtkBin now.
420 * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
422 (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
423 added check so a child gets only drawn if it's visible.
426 * gtk/gtkwidget.c: removed gtk_widget_draw_children().
429 * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
432 * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
433 added internal function gtk_widget_reset_shapes() from gtkstyle.c.
436 * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
437 argument, changed callers.
439 * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
440 it will issue a warning now.
442 * gtk/gtkcompat.h: new file to #define aliases for historic
445 * changed 8 function names for consistency and provided aliases to keep
446 source compatibility in gtkcompat.h:
447 (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
448 (gtk_container_set_border_width): renamed from gtk_container_border_width
449 (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
450 (gtk_packer_configure): renamed from gtk_packer_set_child_packing
451 (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
452 (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
453 (gtk_scale_get_value_width): renamed from gtk_scale_value_width
454 (gtk_window_set_position): renamed from gtk_window_position
456 * renamed a few recently added funtions for consistency:
457 (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
458 (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
459 (gtk_progress_configure): renamed from gtk_progress_reconfigure.
461 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
463 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
464 check for existing viewport first, and don't add one if there
467 Sat Nov 28 00:06:49 1998 Tim Janik <timj@gtk.org>
470 * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
471 gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
472 and gtk_widget_unlock_accelerators.
475 * gtk/gtklayout.c: implemented incremental freezing facility.
478 * gtk/gtktext.c: implemented incremental freezing facility.
481 * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
485 deprecated gtk_entry_adjust_scroll().
487 * random GtkType, macro and indentation fixes.
489 Fri Nov 27 22:50:15 1998 Tim Janik <timj@gtk.org>
492 * gtk/gtkclist.c: implemented incremental freezing facility, added
493 a new class member (*refresh)() which takes over the thaw
494 functionality. the clist FROZEN flag got removed on the way.
495 * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
496 and incremental freezing.
498 * gtk/gtkcalendar.c: implemented incremental freezing facility.
500 Fri Nov 27 11:41:27 1998 Raph Levien <raph@gimp.org>
502 * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
503 it still includes the core pointer in gdk_input_devices even
504 if the XInput extension is not present in the X server.
506 Fri Nov 27 12:17:15 1998 Owen Taylor <otaylor@redhat.com>
508 * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
509 get the source widget of a drag.
511 * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
512 to restrict certain targets to the same widget or to
513 the same application.
515 * gtk/testdnd.c: Test gtk_drag_get_source_widget().
517 Thu Nov 26 19:11:46 1998 Lars Hamann <lars@gtk.org>
519 * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
520 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
521 instead of GTK_TYPE_POINTER in signal definitions.
522 (patch from James Henstridge <james@daa.com.au>)
524 Thu Nov 26 18:48:44 1998 Lars Hamann <lars@gtk.org>
526 * gtk/gtkclist.c (set_cell_contents)
527 * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
528 if auto.resize == TRUE
530 * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
531 don't draw tab, if show_tabs == FALSE
532 (bug reports from Alexis Mikhailov / Dave Cole)
533 (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
534 the focus rectangle, not the hole tab.
536 Thu Nov 26 03:18:08 1998 Tim Janik <timj@gtk.org>
541 * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
542 Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
544 * gtk/maketypes.awk: changed underline substitution, so we get
545 GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
546 * gtk/makeenums.pl: likewise.
547 * gtk/gtkctree.c: adapted type names accordingly.
549 Tue Nov 24 11:31:06 1998 Owen Taylor <otaylor@redhat.com>
551 * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
553 * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
554 some code duplication.
556 * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
557 and child widgets when scrolling greater than 32k pixels.
559 * testgtk.c: Modified layout test to test scrolling over
562 Tue Nov 24 11:11:05 1998 Owen Taylor <otaylor@redhat.com>
564 * gtk/gtklayout.[ch]: Fixed up copyright message.
566 * gdk/gdkrgb.c (DM): Make the dither matrix constant
569 * gtk/gtkdnd.c: Make cursor bitmaps const.
571 * gdk/gdk.h gdk/gdkpixmap.c: Added const to
572 gdk_pixmap/bitmap_create_from_data.
574 Tue Nov 24 07:46:09 1998 Tim Janik <timj@gtk.org>
576 * docs/Changes-1.2.txt: added a section on scrolled windows and
579 1998-11-24 Andrew T. Veliath <andrewtv@usa.net>
581 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
582 buttons when setting relief for button items.
583 (gtk_toolbar_set_button_relief): Same.
585 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
587 * gdk/Makefile.am, gtk/Makefile.am:
588 Removed DEFS "+=" mess that breaks recent automakes.
589 INCLUDES is the correct way to add to CFLAGS from Makefile.am.
591 * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
592 gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
593 gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
595 Include "config.h" instead of "../config.h".
596 Now that DEFS works again, automake will automatically pass us
597 the location of config.h in -I.
599 Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
601 * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
602 gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
604 Added layout widget for scrolling arbitrarily big areas.
605 Added plug/socket widgets for interprocess embedding.
607 These widgets still, at some point, need to be
608 made more pure in their use of GDK, as opposed
611 * gtk/testgtk.c: Added test for layout widget.
613 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
615 * gtk/gtkclist.c: (gtk_clist_swap_rows): Bugfix from
616 Brandon Long <blong@fiction.net> - do the right thing with first
617 and last, which are the absolute values of row arguments row1
620 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
622 * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
623 default adjustment (from 0 to 100) instead. I'm not sure if this
624 is the correct level for the fix, but gtk_progress_bar_new()'s
625 original default behavior is restored.
627 1998-11-23 Martin Baulig <martin@home-of-linux.org>
629 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
630 we can check for latest GTK features.
632 1998-11-23 Havoc Pennington <hp@pobox.com>
634 * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
635 (gtk_toolbar_insert_element): When setting relief, also affect
638 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
640 * gtk/gtkobject.h: remove extraneous comma
642 Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
644 * gtk/gtkcontainer.c:
645 (gtk_container_add_with_args):
646 (gtk_container_addv):
647 (gtk_container_add): removed assertements for constructed containers
648 again, since this essentially breaks the "child" arg.
650 * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
651 reference count, we don't need to reference toplevels that already have
654 * gtk/gtkscrolledwindow.c: check for the composites existance in
655 _forall since we might not be already constructed.
657 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
659 * Released GTK+ 1.1.5
661 * configure.in: require GLib 1.1.5
663 Mon Nov 23 03:21:17 1998 Tim Janik <timj@gtk.org>
665 * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
667 (gtk_text_finalize): only unref the current_font if we have
670 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
677 docs/gtk-config.1: Version incremented to 1.1.5
679 Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
681 * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
682 ::text_yalign, ::activity_mode.
684 * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
685 ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
687 (gtk_progress_bar_new):
688 (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
689 (gtk_progress_bar_construct): deprecated.
691 * gtk/gtkvscrollbar.c:
692 (gtk_vscrollbar_draw_step_back):
693 (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
694 gtk_paint_arrow, to be consistent with hscrollbar.
697 added construct args ::hadjustment, ::vadjustment.
698 added args ::line_wrap, ::word_wrap.
699 (gtk_text_class_init): added scroll_adjustments signal.
700 (gtk_text_new): use gtk_widget_new.
701 (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
702 so we don't screw the reference counts and don't leave signals connected.
703 (gtk_text_destroy): disconnect adjustments signals.
704 (gtk_text_finalize): unref adjustments.
706 * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
707 added args ::indent, ::spacing, ::show_stub, ::reorderable,
708 ::use_drag_icons, ::line_style and ::expander_style.
709 (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
712 * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
714 removed ::vadjustment and ::hadjustment args, introduced
715 ::scroll_adjustments signal.
716 added ::shadow_type, ::selection_mode and ::row_height args.
717 added n_columns construct arg.
718 (gtk_clist_construct): call gtk_object_constructed().
719 (gtk_clist_set_row_height): if height is passed as 0,
720 revert to automatic height calculation.
721 (gtk_clist_destroy): before unrefing the adjustments, disconnect our
724 Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
726 * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
728 (gtk_widget_destroy): assert that we only destroy constructed widgets.
730 * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
731 to identify args that may only be used for construction.
732 GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
734 * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
735 at the end if the object is not fully constructed.
736 (gtk_object_newv): likewise.
737 (gtk_object_destroy): assert that we only destroy constructed objects.
738 (gtk_object_init): setup GTK_CONSTRUCTED from the
740 (gtk_object_default_construct): new function to complete default
741 construction of an object by applying missing construtor args with
742 default values of 0, 0.0 or NULL.
743 (gtk_object_constructed): new function to mark an object as being
744 constructed (used from within constructors).
746 * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
747 so it is immediatedly available for the caller.
749 * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
750 the object initilizer (GtkObjectInitFunc takes a second arg now, the
751 real klass), and asure that object initializers may temporarily alter
754 Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
756 * gtk/testgtk.c: change all occourances of gtk_container_add (
757 scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
758 for widget!=(clist, ctree, text, viewport).
761 (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
762 to add children to the scrolled window.
764 * gtk/gtkscrolledwindow.h:
765 * gtk/gtkscrolledwindow.c:
766 changed scrolled_window->viewport to scrolled_window->child, and use
767 gtk_widget_scroll_adjustements() to set the scroll adjustments for the
768 widget, we do not create an additional viewport anymore.
769 added ::hadjustment and ::vadjustment constructor args.
770 (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
771 (gtk_scrolled_window_set_hadjustment):
772 (gtk_scrolled_window_set_vadjustment): new functions that superceed
773 gtk_scrolled_window_construct.
774 (gtk_scrolled_window_construct): deprecated this function.
776 * gtk/gtkhscrollbar.c:
777 * gtk/gtkvscrollbar.c:
780 support a constructor arg "::adjustment", and use gtk_widget_new() for
783 * gtk/gtkrange.c: added ::update_policy arg.
784 (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
785 a default adjustment so this function can be used for derived widgets
786 that depend on the adjustment's existance.
787 (gtk_range_destroy): disconnect the adjustment signal, so we don't
788 get called after we got destroyed, we don't destroy the adjustment
789 in here, because it might have been provided from another widget.
791 * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
792 (gtk_viewport_destroy): same as gtk_range_destroy.
794 * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
797 * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
798 gboolean, indicating whether this widget supports activation.
799 added gtk_widget_scroll_adjustements() to set the scrolling
800 adjustments of a widget.
802 Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
804 * gtk/gtkoptionmenu.c:
805 (gtk_option_menu_remove_contents):
806 (gtk_option_menu_update_contents): removed
807 gtk_container_[un]block_resize() pairs.
810 * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
811 be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
814 * *.c: made deprecated functions issue a message:
815 gtk_clist_set_border, gtk_container_block_resize,
816 gtk_container_unblock_resize, gtk_container_need_resize,
817 gtk_object_class_add_user_signal, gtk_spin_button_construct,
818 gtk_scrolled_window_construct.
819 removed non-functional functions:
820 gtk_container_disable_resize, gtk_container_enable_resize,
821 gtk_clist_set_policy.
823 Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
825 * gtk/gtkbox.c (gtk_box_init):
826 * gtk/gtkdrawingarea.c (gtk_drawing_area_init):
827 * gtk/gtkeventbox.c (gtk_event_box_init):
828 * gtk/gtkfixed.c (gtk_fixed_init):
829 * gtk/gtkframe.c (gtk_frame_init):
830 * gtk/gtkhandlebox.c (gtk_handle_box_init):
831 * gtk/gtkpacker.c (gtk_packer_init):
832 * gtk/gtkmisc.c (gtk_misc_init):
833 * gtk/gtkpreview.c (gtk_preview_init):
834 * gtk/gtkprogress.c (gtk_progress_init):
835 * gtk/gtkprogressbar.c (gtk_progress_bar_init):
836 * gtk/gtkseparator.c (gtk_separator_init):
837 * gtk/gtktable.c (gtk_table_init):
838 * gtk/gtkviewport.c (gtk_viewport_init):
839 * gtk/gtkalignment.c (gtk_alignment_init):
840 removed setting of the GTK_BASIC flag.
844 removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
846 * miscellaneous GtkType and macro fixups.
848 Sat Nov 21 18:53:13 1998 Owen Taylor <otaylor@redhat.com>
850 * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
851 Fixed so it at least works with window managers other
852 than Enlightenment, though it probably needs to be
855 1998-11-21 Andrew T. Veliath <andrewtv@usa.net>
857 * gtk/gtkhandlebox.[ch]: Add shadow_type and
858 gtk_handle_box_set_shadow_type function (plus a
859 GtkHandleBox::shadow arg) to allow configuration of shadow in the
862 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
864 * gtk/gtkcalendar.c: Fix for marking days from
865 Dan Reish <dreish@izzy.net>.
867 Thu Nov 19 00:15:27 1998 Lars Hamann <lars@gtk.org>
869 * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
870 in row_list. (from Samuel Solon <ssolon@usa.net>)
872 * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
873 (gtk_clist_get_column_widget): return column widget
875 Wed Nov 18 11:54:57 1998 Owen Taylor <otaylor@redhat.com>
877 * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
878 that are sent to a toplevel but are not within the
881 * gdk/gdkdnd.c gdk/gdk.h: Added support for a
882 XdndProxy atom which proxies the drag to another window.
884 1998-11-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
886 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
887 that it is not needed.
889 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
890 * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
891 function to correctly determine gdk window position relative to
892 its "root window" - contains check for an Enlightenment
894 * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
895 gdk_window_get_deskrelative_origin to get the origin of dragged
896 handleboxes correctly. Now it works correctly with E.
898 Tue Nov 17 1998 Tuomas Lukka <lukka@iki.fi>
900 * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
901 getting types even though we were not using real type names,
902 just the index. This caused random crashes when more than
903 256 types were defined.
905 1998-11-17 Martin Baulig <martin@home-of-linux.org>
907 * gtk/genmarshal.pl: Put output files in the current directory
908 and not in the $(srcdir) since the VPATH is ignored for built
911 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
914 * gtk/Makefile.am: check for unchanged autogenerated files, so
915 we don't rebuild everything just for adding a new function
917 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
920 gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
921 code thanks to GNOME stock by Eckehard Berns. New function
922 gtk_pixmap_set_build_insensitive to provide ability to turn
925 Tue Nov 17 00:06:29 1998 Lars Hamann <lars@gtk.org>
927 * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
928 new guints : tab_hborder, tab_vborder; marked tab_border deprecated
929 (struct _GtkNotebookPage): new flags : expand, fill, pack
931 * gtk/gtknotebook.h/c
932 (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
934 (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
935 (gtk_notebook_set_tab_hborder): new function. set tab_hborder
936 (gtk_notebook_set_tab_vborder): new function. set tab_vborder
937 (gtk_notebook_query_tab_label): new function. get tab_label widget.
938 (gtk_notebook_set_tab_label): new function. set tab_label widget.
939 (gtk_notebook_set_tab_label_text): new function. set tab_label text.
940 (gtk_notebook_query_menu_label): new function. get tab_label widget.
941 (gtk_notebook_set_menu_label): new function. set tab_label widget.
942 (gtk_notebook_set_menu_label_text): new function. set tab_label text.
943 (gtk_notebook_set_tab_label_packing): new function. set tab_label
944 fill, expand, fill_type
945 (gtk_notebook_query_tab_label_packing): new function. get tab_label
946 fill, expand, fill_type
948 (gtk_notebook_real_page_position): return logic page number
949 (gtk_notebook_search_page) search next/prev logic page
950 (gtk_notebook_update_labels): set logic page number.
951 (gtk_notebook_page_compare): renamed gtk_notebook_find_page
952 (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
953 CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
954 (gtk_notebook_button_press) (gtk_notebook_key_press)
955 (gtk_notebook_focus) (gtk_notebook_pages_allocate)
956 (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
957 use gtk_notebook_search_page
958 (gtk_notebook_page_allocate): fixed allocation bug
959 (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
960 (gtk_notebook_init): unset GTK_NO_WINDOW flag
961 (gtk_notebook_size_request): check whether page->child is visible.
962 changes due to tab h/vborder, homogeneous tabs
963 (gtk_notebook_paint): don't draw invisible tabs
964 (gtk_notebook_switch_page): calculate page_num if it's less than 0
965 (gtk_notebook_append_*) (gtk_notebook_prepend_*)
966 (gtk_notebook_insert_page): removed sanity checks
968 * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
970 Mon Nov 16 15:10:33 1998 Owen Taylor <otaylor@redhat.com>
972 * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
973 (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
975 * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
976 broken. (GtkWidget's default unmap handler should work fine).
977 Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
979 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
981 * gtk/gtkmenubar.[ch]: added shadow_type setting and
982 gtk_menu_bar_set_shadow_type function to allow shadow
983 configurability for menubars
985 * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
988 Mon Nov 16 00:17:53 1998 Tim Janik <timj@gtk.org>
990 * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
991 class creation and parent class' object initializer.
993 1998-11-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
995 * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
996 have assigned it to the window -- there is no point in keeping it around.
997 (gtk_paned_unrealize): No need to destroy the cursor here.
999 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
1002 Fri Nov 13 11:22:38 1998 Owen Taylor <otaylor@redhat.com>
1004 * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
1005 (gtk-blizzard-981005-0.
1006 Christopher Blizzard <blizzard@applied-theory.com)
1008 * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
1009 gdk_pixmap_foreign_new to gdkx.h.
1011 Fri Nov 13 16:06:48 1998 Owen Taylor <otaylor@redhat.com>
1013 * gtk/Makefile.am: Added rules to generate an empty
1014 GTK+ theme called "Default" upon installation.
1016 * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
1017 of fonts and fontsets.
1018 (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
1020 * gtk/gtkmain.c: Change test to detect glibc's
1021 utf8 based mb* functions to be more specific.
1023 * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
1026 Fri Nov 13 16:43:36 1998 Lars Hamann <lars@gtk.org>
1028 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
1030 (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
1031 event_window if draw_indicator is set
1032 (gtk_toggle_button_set_mode):
1034 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
1036 * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
1037 ensure proper type (SunPro cc complains)
1039 * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
1041 * gtk/gtktogglebutton.c: use our own draw method so we get proper
1042 redraws on active state
1044 Thu Nov 12 00:26:13 1998 Lars Hamann <lars@gtk.org>
1046 * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
1049 * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
1052 Wed Nov 11 19:54:58 1998 Lars Hamann <lars@gtk.org>
1054 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
1055 (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
1056 added ARG_WINDOW_PLACEMENT
1058 * gtk/gtkclist.c (size_allocate_columns): resize column if column
1059 button > column width and auto_resize is set
1060 (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
1061 consider column button width of auto resized columns
1062 (gtk_clist_parent_set): removed
1064 * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
1065 (auto_resize_columns): auto_resize all columns
1066 (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
1067 (column_auto_resize): respect column button width of auto resized
1070 1998-11-10 Martin Baulig <baulig@merkur.uni-trier.de>
1072 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
1073 we can check for latest GTK features.
1075 Mon Nov 9 00:39:20 1998 Lars Hamann <lars@gtk.org>
1077 * gtk/gtkenums.h : new enum GtkCornerType
1078 * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
1080 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
1081 new method to set window_placement.
1082 (gtk_scrolled_window_viewport_allocate)
1083 (gtk_scrolled_window_size_allocate): few changes due to
1085 * gtk/testgtk.c (remove_selection): fixed while loop.
1087 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
1089 * gtk/gtkclist.c: check if column[i].button is valid before calling
1090 gtk_widget_intersect on it in gtk_clist_draw
1092 * gtk/gtkdnd.c: removed unused variable empty_bits
1094 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
1096 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
1097 a boolean (thanks to Elrond for noticing this)
1099 1998-11-07 Jay Cox <jaycox@earthlink.net>
1101 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
1102 * gdk/gdkxid.c: declare xid_ht static
1103 * examples/*/Makefile: get the link ordering right.
1105 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
1107 * gtk/gtkclist.c (gtk_clist_realize): Set background of
1108 title button window to GTK_STATE_NORMAL instead of
1109 GTK_STATE_SELECTED to avoid ugly flicker.
1111 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
1113 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
1114 if adjustments are NULL and list size has changed
1115 (gtk_clist_size_request): return real list requsition,
1116 if adjustments are NULL.
1117 (size_allocate_columns): use button->requisition.with, if column
1119 (list_requisition_width): new function. return full list width.
1120 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
1121 auto create adjustments.
1122 (gtk_clist_motion) (move_vertical) (move_horizontal):
1123 check adjustment != NULL.
1125 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
1127 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
1128 a clear/redraw, not just a redraw, so the focus
1129 gets undrawn properly.
1131 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
1132 Chain to gtk_widget_unrealize() instead of duplicating
1135 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
1137 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
1138 last vestiges of old DND.
1140 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
1142 * gtk/gtkentry.c: Restored inner border to entries,
1143 erase cursors to background image.
1145 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
1147 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
1148 it was identical to paint_flat_box().
1150 * gtk/gtkstyle.c: Coding style fixups.
1152 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
1155 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
1156 Change 'side' for paint_[box/shadow]_gap and paint_extension
1157 to be GtkPositionType instead of a random int.
1159 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
1160 "frame" as detail - an aspectframe should draw identical
1163 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
1165 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
1166 from combine_child_shapes().
1168 * gdk/gdkwindow.c: Merge propagate_shapes() and
1169 propagate_combine_shapes() to remove code duplication.
1171 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
1173 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
1174 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
1175 So allocate some mem if it's not already done.
1177 * clist scrollbar merges from HEAD
1179 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
1181 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
1183 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
1184 of 0x80000000, so we stay within the bounds of a postive signed
1185 int (it broke some compilers)
1187 * gtk/gtkmenushell.c
1188 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
1189 when some of the menuitems are hidden
1191 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
1194 * gtk/gtkwidget.c: add a dummy continue after the line label
1195 next_rect, since some compilers don't like label: }
1197 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
1199 * Okay, so we need the X11R6 keysyms so programs don't have to
1200 worry about them. They don't conflict anyway. Reverted the #ifdef
1203 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
1204 special rule for them (X-derived-headers)
1206 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
1208 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
1209 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
1210 portable, and we really shouldn't be using awk anyway.
1213 * makekeysyms.awk: bye bye
1215 * gtk/gtkaccelgroup.c
1218 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
1220 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
1222 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
1223 and gdkkeysyms.h. Remove those files from CVS.
1225 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
1227 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
1228 of the USE_XIM #ifdef
1230 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1231 even with --include-deps. Slightly different from timj's fix, to avoid
1232 circular dependency with gtkmarshal.c
1237 * gtk/gtkfontsel.[ch]
1240 * gtk/gtkobject.[ch]
1241 * gtk/testgtk.c: merges from HEAD
1244 * gtk/gtkradiomenuitem.c
1245 * gtk/gtktreeitem.c: cleanups
1247 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
1249 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
1251 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
1253 * configure.in: AIX has libpthreads, to make sure you can have
1254 more than one thread. Also add -D_THREAD_SAFE, and reorder
1255 configure.in so CFLAGS doesn't get clobbered when we actually
1258 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
1261 * gtk/testdnd.c: removed unused variable "buf"
1263 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
1265 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
1266 remove_link(), not remove()
1268 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
1270 * gdk/gdkrgb.c: use glib endian stuff
1272 * configure.in: don't need to check for endianness anymore
1274 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
1276 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
1278 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
1279 all toplevel widgets, not toplevel windows. (I.e.,
1280 plugs should be reset)
1282 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
1283 _do_ need to notify the other toplevels - by the time
1284 the get the client messages, the RC file dates will
1287 * gtk/gtkcontainer.h: Added a function call to list
1288 every toplevel widget.
1290 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
1291 Don't send client messages to _every_ window on display!
1293 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
1295 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
1296 when dragging across widgets, only in drags
1299 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
1301 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
1302 Emit "drag_end" signal at end of drag.
1304 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
1306 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
1307 for "gtk-embedded" data currently set by
1308 GtkSocket, and use that to forward client message
1309 on to embedded windows. Only reset our own toplevel -
1310 the others will handle themselves. (Now that
1311 GtkMenus live in GtkWindows)
1313 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
1315 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
1316 client window finding code so that it works with
1317 WM's other than fvwm.
1319 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
1321 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
1322 the "GtkDrawWindow" class, which is a descendent
1323 of the Window class which leaves its background alone.
1324 Essentially, a toplevel drawing area, though it does
1325 allow adding a child.
1327 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
1329 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
1330 merging RC styles. Report new share/themes path for
1331 themes directory. Deref theme engines when appropriate.
1333 * gtk/gtkclist.c: Set all backgrounds in _style_set().
1334 Make sure that pixel for xor_gc is never 0.
1336 * gtk/gtkctree.c: Choose colors for plus/minus more
1337 carefully, in a hopefully style-independent fashion.
1338 (Still needs a bit more work)
1340 * gtk/gtkwidget.c: Don't send expose events to widgets
1341 which are about to be resized and redrawn. (Needs a
1344 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
1345 drawing on tabs for newly allocated, un-sized
1346 pages - we'll get the size wrong.
1348 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
1350 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
1351 up stupidities in last commit.
1353 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
1355 * gtk/gtkwidget.c: When handling queued resizes, account
1356 for handleboxes, where the widget heirarchy is different
1357 than the window heirarchy by just queueing a resize on
1358 the entire handlebox if the detached child is changed.
1360 - Remove widgets from the redraw queue when reparenting,
1361 even if not unrealizing. We queue a resize/redraw in
1364 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
1365 * gtk/gtkstyle.c: added check to see if the widget has been shaped
1366 byt the app via gtk_widget_shape_combine_mask and if it has does
1367 not reset the shape on theme change.
1369 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1371 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1372 want to stat the entries (like /afs), and assume everything in
1373 those directories is a subdirectory.
1375 - When following a path, try to open components even when
1376 we don't find them in their parent's directory to
1377 support automounters.
1379 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
1381 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
1382 now at least compiles again.
1384 * gdk/gdk.c (gdk_event_translate): Don't pass events
1385 on destroyed widgets to the gdk_input layer.
1387 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
1389 * gtk/gtkthemes.c: Use g_module instead of dlopen()
1391 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
1393 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
1394 if we've changed widgets since the expose event
1397 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
1399 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
1400 to restore approximate bin compatibility with the
1401 non-themes branch. (This does break bin compat
1402 within the themes branch.)
1404 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
1406 * gtk/gtklabel.c (gtk_label_set): Eliminate a
1407 gdk_window_clear_area() that snuck in with the
1408 menu underlines merge.
1410 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
1412 * gtk/gtktext.c: Fixed some remaining background drawing,
1413 merges from main branch, cleanups.
1415 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
1417 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
1418 dereference NULL focus tab.
1420 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
1421 functions since we need to both show/hide and
1422 queue a redraw. (There's some duplication of drawing here,
1423 we probably should only be queuing a redraw on the
1424 "value" portion of the scale.)
1426 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
1428 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
1429 into the theme-drawing framework. We do this by making them,
1430 like check/radio-buttons, no-window widgets with subwindows. We
1431 then move the value by calling gtk_widget_queue_clear() and only
1432 redraw the value in our draw() / expose() handler. A virtual
1433 function clear_background is added which queues a clear on the
1434 "background" portion of the widget.
1436 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
1438 * gtk/gtktext.c (mark_bg_gc): Make background colors work
1439 again. (We can't always paint the background with a
1440 paint() function - only do that for selected text)
1442 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
1444 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
1445 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
1447 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
1448 the themes can't be built as part of the same build since
1449 they depend on gdk_imlib.
1451 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
1453 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
1456 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
1459 - Upgrade to libtool-1.2b + patch to add shared library dependencies
1460 for Linux. (Needs to be extended to other platforms where they
1463 - Check for -ldl so this branch should build on all platforms, though
1464 themes will work on all platforms they could work on.
1466 - Use -version and -release simultaneously: sonames stay as they are
1467 in the current scheme, but -lgtk-1.1 changes to -lgtk.
1469 - Added in extra -l flags to library LDFLAGS so we get shared library
1470 dependencies against X libs and -ldl. (But not libgtk against
1471 libgdk or libglib yet, since dependencies against uninstalled
1472 libraries aren't portable)
1474 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
1475 * gtkrc.c - added api calls to find module and theme paths from gtk.
1476 nuked gtk_install_prefix global.
1478 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1479 * fixed gtk_install_prefix global.
1481 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
1482 * added gtk_install_prefix global const variabel to find where gtk is
1485 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1486 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
1489 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1490 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
1492 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
1493 * Fixed minor problem in gtkhandlebox.c with drawing, and some
1494 notebook stuff. Also pixmap theme is now "clean" again.
1496 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
1497 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
1498 queued area resizing once more.
1500 Mon Aug 10 23:09:30 EDT 1998
1501 * Added a few drawing fixes for notebook and other widgets. finished
1502 pixmap theme up to the level that can be supported so far. (need to
1503 add path discovery 9ie where is the rc fiel from - add to pixmap
1504 path so we can get theimages from there too). then we can package
1505 themes. After that need to add to theme seartch path stuff in users
1508 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
1510 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
1511 drawing area, draw in an expose handler.
1513 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
1516 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
1518 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
1519 creation of GC's so that they will be set before
1520 they are used for map events (why are they used there?)
1522 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
1523 be queued in multiple times in the queue.
1525 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
1527 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
1528 clip rects (or do anything) for shadow_none.
1530 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
1532 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
1533 Yes, it was needed. draw() and expose() are _not_
1536 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
1537 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
1539 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1540 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
1541 more baby oooh yeah more more MORE YES YES.
1543 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1544 * hopefully fixed problem wiht togglebuttons acting like
1545 radiobuttons in gtktogglebutton.c
1547 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1548 * fixed another drawing buglet in the frame drawing code (actually
1549 in the clearing code but anyway in gtkstyle.c)
1551 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
1552 * Fixed warning from colorsel widget...
1554 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
1555 * Fixed defautl drawing code to no longer clobber the original style
1556 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
1559 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
1561 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
1563 * gtk/gtktooltips.c: Pass a widget (the window) to the
1564 drawing function instead of the GtkTooltips.
1566 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
1568 * gdk/gdkwindow.c: Abstract out checking for shape
1569 extension into a function.
1571 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
1572 Remove extra callls to gtk_window_draw().
1574 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
1576 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
1578 * themes/th_main.c: Moved messages around so they are
1579 printed before destroying strings.
1581 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
1583 * gdk/gdk.c: Fairly simple implementation of expose compression.
1584 (No GraphicsExpose compression yet, always compress
1585 with the equivalent of XtCompressMultiple - no compression
1586 of Expose events across non-Expose events)
1588 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
1589 Find rectangle bounding two rectangles.
1591 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
1592 in gdk_default_draw_shadow()
1594 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
1595 * Fixed drawing functions to handle switching themes on the fly
1596 gracefully and look decent.
1598 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
1599 * Added all the theme drawing code to all widgets, fixed up minor
1600 nigglies in some widgets when it comes to themes, seem to be
1601 running into some funky behavior with clipping rects in GC's. Too
1602 many files to list here. (all files that now use gtk_paint_* are
1605 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
1607 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
1608 Set up the demo theme so it is loaded from the RC file.
1610 * themes/th_draw.c: Alleviate the hardcoded paths a wee
1611 bit. (use $HOME/themes/)
1613 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
1614 the RC file via dlopen()
1616 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
1618 Internal handling of styles and RC styles pretty much
1619 completely reworked for Theme work.
1622 - Added routines for virtualization of RcStyle and Style handling.
1623 - Temporary "sample" inline theme-engine. (Does nothing
1624 but print out a few messages.
1627 - Made GtkRcStyle public, added flags to tell if particular
1628 colors have been set.
1629 - RC Styles are "transparent", and the final style for
1630 a widget is the composition of all matching styles
1631 - Added pointer to GtkThemeEngine, and gpointer engine_data
1632 to RC style and style.
1633 - Parse "engine" keyword, load the appropriate theme engine
1634 and call the engine's parser.
1637 - Keep a GtkRcStyle * in styles created from Rc Styles.
1638 - Load up images from RC file at style attachment time.
1639 - Call ->engine->foo() at appropriate times.
1640 - Don't use a GCache. All incarnations for a style are
1641 just linked together in a list, depend on the RC style
1642 code to find the existing copy.
1644 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
1646 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
1647 of partial areas. This can be done either relative
1648 to the existing windows (gtk_widget_queue_clear[_area]())
1649 or relative to the future allocation of the widget
1650 (gtk_widget_queue_draw[_area]).
1652 The initial implementation is pretty braindead, but
1655 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
1656 in favor of gtk_widget_queue_clear().
1658 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
1659 flags in favor of gtk_widget_queue_clear()
1661 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
1663 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
1664 handling of partially clipped areas.
1666 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
1668 * gtk/gtkclist.h (struct _GtkCListClass)
1669 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1671 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
1673 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
1674 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
1676 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
1677 "hadjustment" & "vadjustment"
1678 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
1679 set/get_arg functions
1680 (gtk_clist_construct): don't create/adjust scrollbars.
1681 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
1682 to set h/vadjustments
1683 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
1684 to query h/vadjustments
1685 (create_scrollbars): removed.
1686 (create_adjustments): replacement for create_scrollbars
1687 (gtk_clist_new): call gtk_clist_new_with_titles
1688 (gtk_clist_new_with_titles): don't warn on titles == NULL
1689 (move_horizontal): use CLAMP instead
1690 (gtk_clist_set_policy): deprecated method.
1691 use gtk_scrolled_window_set_policy instead.
1692 (vadjustment_value_changed): use clist->vadj.
1693 (adjust_scrollbars): renamed to adjust_adjustments
1694 (adjust_adjustments): former adjust_scrollbars
1695 (gtk_clist_destroy): unref adjustments
1696 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
1697 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
1698 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
1699 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
1700 (gtk_clist_set_row_height) (real_resize_column):
1701 call adjust_adjustments
1702 (gtk_clist_moveto): return if clist has no adjustments yet.
1703 (gtk_clist_parent_set): new GtkWidget::parent_set function.
1704 Autogenerate h/vadjustments if needed.
1705 (move_horizontal) (move_vertical): some cleanups
1707 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
1708 call only gtk_viewport_set_h/vadjustment and let these functions
1710 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
1711 generate a new adjustment if needed
1713 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
1714 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
1716 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1717 queue_resize if visibility of scrollbars changes
1718 (gtk_scrolled_window_remove): only call container_remove with
1719 scrolled_window->viewport automatically if viewport was autogenerated
1720 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
1721 auto create a viewport only if widget does not take h/vadjustments.
1722 (gtk_scrolled_window_construct): don't generate a viewport
1724 (gtk_scrolled_window_forall): call callback with viewport in any case
1725 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
1727 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
1728 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
1732 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
1733 in conjunction with clists/ctrees
1735 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
1736 in conjunction with clists
1738 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
1739 in conjunction with clists
1741 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
1743 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
1744 (gtk_ctree_remove_node): select focus_row if needed
1745 (cell_size_request): only get pixmap size if pixmap != NULL
1747 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
1749 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
1750 GTK_IS_WIDGET (widget):
1752 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
1754 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
1755 focus_row after a remove_row call.
1757 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
1759 * gtk/gtkoptionmenu.c
1760 * gtk/gtkmenushell.c: make option menus work when some of the
1761 menuitems are hidden - previously, option menu would popup too
1764 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
1766 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
1768 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
1770 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
1772 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
1773 (GDK_WLIBS): New variable. Lists extra libraries needed to use
1775 * gtk-config.in (--libs): List $GDK_WLIBS, too.
1777 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1779 * Released GTK+ 1.1.3
1785 * docs/gtk-config.1: updated for v1.1.3
1789 * docs/Makefile.am: Includes new 'make release' as well as
1790 'make sanity'. Also handles html and text creation from html,
1791 and puts them into the distribution
1793 * docs/Makefile.sgml: removed, similar functionality is now in
1794 the Makefile.am file
1796 * docs/.cvsignore: ignore html and text directories
1797 * docs/glib.texi: removed (now in glib dist)
1799 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
1801 * gtk/gtklist.c (gtk_list_remove_items_internal):
1802 free undo_un/selection, unselect list_item before disconnect
1804 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
1806 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
1807 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
1808 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
1809 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
1810 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
1811 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
1812 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
1813 new functions. These functions are signal connected to inserted
1814 list_items, to handle key bindings and GtkItem::de/select/toggle
1817 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
1818 gtk_object_class_add_signals call.
1819 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
1820 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
1821 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
1822 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
1823 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
1824 removed. These functions are handled via connected
1825 gtk_list_signal_* functions now
1827 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
1829 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1830 even with --include-deps:
1831 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
1833 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
1835 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
1836 gtk_object_data_set_destroy to fit the gtkobject.h API.
1838 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
1841 Added support for an extra 'base' filter which an application can
1842 set to restrict the fonts available to the user (e.g. a terminal
1843 program only wants the user to be able to select fixed-width fonts).
1844 The type of font (bitmap/scalable/scaled bitmap) is now
1845 also a part of the filter, so that an application can
1846 request that only scalable fonts are shown.
1847 There are new functions to set the base & user filters.
1848 I've also stopped the up/down key press signals getting
1849 to the clists since the font selection widget handles
1850 them itself. It acted a bit strangely before.
1852 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
1854 * gtk/gtkmain.c (gtk_init): support an environment variable
1855 GTK_MODULES= which takes a colon sperated list of module names
1856 automatically loaded at gtk_init() startup.
1858 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
1860 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1862 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
1864 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
1867 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
1869 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
1872 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
1874 * gtk/gtkfilesel.h: GtkType and macro fixups
1875 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
1876 for the file selection widget to try a completion on (set the
1879 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
1881 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
1882 slight speed improvement and lessens code duplication.
1884 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
1886 * gtk/gtkdnd.c: Always send "drag_leave" to dests
1887 without GTK_DEST_DEFAULT_MOTION.
1889 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
1891 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
1892 on destroyed windows so we clear the XID table properly.
1893 Finish up restructure of return value handling that
1894 was half-done before.
1896 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
1898 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
1899 the window tree more comprehensively, so that we find
1900 client windows hidden under non-toplevels.
1902 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
1904 * gtk/gtkselection.c (gtk_selection_data_set):
1905 Maintain the null-termintation guarantee, even when
1906 data = NULL, length = 0. (Warn on data = NULL,
1909 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
1911 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
1912 into function prototype for drag_data_received.
1914 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
1916 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1918 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
1920 * gtk/gtkclist.c: rearranged some functions
1921 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
1923 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
1924 (gtk_clist_set_border): deprecated function, use
1925 gtk_clist_set_shadow_type instead.
1926 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
1927 (adjust_scrollbars): some cleanups
1928 (select_row) (unselect_row): removed. replaced by equivalent
1929 gtk_signal_emit calls
1930 (add_style_data): removed, use gtk_clist_style_set instead
1931 (gtk_clist_style_set): fill in size data, after style was set.
1932 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
1933 (gtk_clist_set_cell_style): auto_resize columns if needed
1934 (column_auto_resize): resize column if needed for auto_resize
1935 (real_clear): disable auto_resize while list destroy
1936 (resize_column): removed
1938 * gtk/gtkctree.c : (gtk_ctree_remove_node)
1939 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
1940 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
1941 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
1942 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
1943 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
1944 auto_resize columns if needed
1945 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
1946 (real_clear): disable auto_resize while processing the tree
1948 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
1951 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
1953 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
1954 typo - look for right atom on transfer failures.
1956 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
1958 * gtk/gtkwidget.c gtkmarshal.list: Change signal
1959 for drag_data_get to match the use that was being
1960 made of it everywhere else...
1962 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
1964 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
1965 mechanism, that is used for the DND messages.
1967 Removed all the old DND code.
1969 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
1970 get the visual of a given colormap.
1972 * gtk/gtkcolorsel.c: Conversion to new DND, drag
1975 * gdk/gdk.h gdk/gdkdnd.c: The low-level
1976 X oriented portions of drag and drop protocols.
1977 Sending and receiving client messages, and navigating
1980 * gdk/gdkimage.c: added a gdk_flush() when destroying
1981 SHM images to hopefully make it more likely that
1982 X will gracefully handle the segment being destroyed.
1984 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
1985 DND debugging flags.
1987 * gtk/gtkeditable.[ch]: Updates for the selection handling
1990 * gtk/gtkselection.[ch]: Added GtkTargetList, a
1991 refcounted data structure for keeping track of lists
1992 of GdkAtom + information. Removed selection_handler_add
1993 in favor of a "drag_data_get" signal.
1995 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
1996 dependent) parts of the DND protocols, display of drag icons,
1997 drag-under highlighting, and the "default handlers".
1999 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
2000 windows that are used for reliable pointer grabs and
2001 selection handling in the DND code.
2003 * gtk/testdnd.c: New test program for new DND. (Old
2004 DND tests in testgtk still need to be converted.)
2006 * gtk/testselection.c: Use the new selection API.
2008 * docs/dnd_internals: Start at describing how
2009 all the new code works inside.
2011 * docs/Changes-1.2.txt: New file describing source-incompatible
2012 changes in GTK+-1.2.
2014 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
2016 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
2017 the right list node.
2019 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
2020 to the XID table so we can receive events on it.
2022 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
2024 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
2025 to get the timestamp from a generic event.
2027 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
2029 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
2030 that safely adds additional events to a widget's event
2031 mask, even if the widget has previously been realized.
2032 (We can do this, but not remove events from the event
2035 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
2037 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
2038 for AnyPropertyType.
2040 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
2042 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
2045 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
2047 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
2050 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
2052 * gdk/gdk.c (gdk_event_translate): Removed printing
2053 of unknown window lookup warnings. (Made it
2054 a GDK_NOTE) - they happen in many circumstances.
2056 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
2058 * Call XFilterEvent() on events we get for unknown
2059 windows, since it may be the window Xlib uses to
2060 communicate with the IM.
2061 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
2063 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2065 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2068 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
2070 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
2071 message for return_value + GTK_RUN_FIRST.
2073 1998-10-18 Martin Baulig <martin@home-of-linux.org>
2075 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
2076 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
2078 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
2080 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
2081 styles of inserted row
2082 (change_style): change style of focus_row
2084 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
2085 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
2086 to set/get row/cell styles.
2087 (gtk_clist_realize): attach row and cell style, allocate row colors.
2088 (gtk_clist_unrealize): detach row and cell styles.
2089 (get_cell_style): new function. get correct cell style.
2090 (draw_cell_pixmap): new function.
2091 (draw_row): draw cells with row or cell styles.
2092 (row_new): set cell and row styles to NULL.
2093 (row_delete): detach & unref cell and row styles.
2095 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
2096 new functions to attach/detach styles and allocate colors.
2097 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
2098 styles of invisible nodes.
2099 (draw_cell_pixmap): new function.
2100 (get_cell_style): new function. get correct cell style.
2101 (gtk_ctree_draw_expander): new function. draw tree expander.
2102 (gtk_ctree_draw_lines): new function.draw tree lines.
2103 (draw_row): draw cells with row or cell styles.
2104 (row_new): set cell and row styles to NULL.
2105 (row_delete): detach & unref cell and row styles.
2106 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
2107 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
2108 Analogons of GtkCList functions
2109 (gtk_ctree_set_spacing): new function. set spacing between
2110 tree expander and cell contents
2111 (gtk_ctree_set_expander_style): new function. set expander style
2113 (ctree_is_hot_spot): few changes due to draw_row modifications.
2115 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
2117 * gtk/gtkcombo.c: try completion on MOD1-TAB.
2118 Handle case when the combo->list is empty.
2120 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
2122 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
2123 handlers that have not yet been disconnected (finally managed to
2124 trigger the gtk_signal_handler_unref() paranoid warning).
2126 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
2128 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
2129 width and height which is -1 and not -2.
2131 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
2134 * autogen.sh: we need libtool 1.2b now
2136 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
2138 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
2139 and bottom attach arguments as mandatory and readjust the table size
2140 and opposing edge accordingly if required. this way the order in which
2141 the arguments are set doesn't matter.
2143 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
2145 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
2146 message to print out parent class name correctly.
2148 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
2152 removed functions gtk_object_set_data_destroy and
2153 gtk_object_set_data_destroy_by_id.
2154 added functions gtk_object_remove_no_notify and
2155 gtk_object_remove_no_notify_by_id which will remove a certain data
2156 portion without invokation of its destroy notifier, this should only
2157 be used in very controled circumstances.
2159 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
2161 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
2162 size_allocate_title_buttons call
2163 (gtk_clist_realize): changed initial column.window position
2165 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
2167 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
2169 * gtk/gtkctree.c (create_xor_gc): removed
2170 (gtk_ctree_button_press): set correct line_attributes for
2171 clist->xor_gc on drag start
2172 (gtk_ctree_button_release): reset clist->xor_gc
2174 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
2177 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
2178 which were in place to fixup emacs' cc-mode indentation.
2179 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
2180 proper way to achive this and doesn't produce problems for
2181 stupid pragma-related compiler bugs. ;)
2183 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
2185 * gtk/gtkclist.h: new signal GtkCList::resize_column.
2186 * gtk/gtkclist.c (draw_row): don't draw invisible columns
2187 (size_allocate_title_buttons) (size_allocate_columns):
2188 skip invisible columns
2189 (new_column_width): take min/max_width into account
2190 (gtk_clist_button_release) (gtk_clist_motion):
2191 changes due to changed new_column_width function
2192 (LIST_WIDTH): changed define to inline function.
2193 (real_resize_column): class function for resize_column signal
2194 (gtk_clist_motion): fixed autoscrolling for column resizes
2195 (gtk_clist_set_column_visibility): don't hide last visible column,
2196 changed visible arg to gboolean
2197 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
2198 new functions : set min/max width of a column
2199 (gtk_clist_set_column_resizeable): new function : enable/disable
2200 column resize operations by mouse
2202 * gtk/gtkctree.c (draw_row): don't draw invisible columns
2203 (ctree_is_hot_spot): return FALSE if tree_column is invisible
2204 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
2205 tree_column is invisible
2206 (gtk_ctree_find_all_by_row_data)
2207 (gtk_ctree_find_all_by_row_data_custom): new function from
2208 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
2209 GtkCTreeNodes with row->data == data.
2211 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
2213 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
2214 memory (Martin Pool <mbp@wistful.humbug.org.au>).
2216 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
2218 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
2219 should have been guint32. Thanks to Tristan Colgate for finding it.
2221 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2223 * gtk/gtkcalendar.h:
2224 gtk/gtkcalendar.c: More changes:
2225 - The day with focus is now seperated from the day selected
2226 - The day with focus has the xor's line around it
2227 - The selected day is now standard selected style
2228 - The week names and week numbers are now also drawn
2230 - Space now selects the day which has focus
2232 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2234 * gtk/gtkcalendar.h:
2235 gtk/gtkcalendar.c: Some significant changes, including:
2236 - No longer draw focus around entire widget, only around
2237 the day which has focus
2238 - Draw relief around entire widget like originally planned
2239 - Show header and day names by default
2240 - Move data private to the widget out of GtkCalendar struct
2241 and only point to it with a gpointer
2242 - Remove some old unused variables from GtkCalendar struct
2244 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
2246 * docs/gtk_tut.sgml: update I've had sat around:
2247 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
2248 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
2249 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
2251 1998-10-01 Martin Baulig <martin@home-of-linux.org>
2253 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
2255 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
2256 Makes it possible to individually show and hide columns.
2257 (size_allocate_columns): Adapted to keep track of hidden columns.
2258 (size_allocate_title_buttons): Likewise.
2260 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
2262 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
2263 fundamental types, collect an argument of the type returned from
2264 gtk_type_get_varargs_type(). removed the first macro argument which
2265 was just the same as the fundamental type of the *arg passed to
2267 * gtk/gtkarg.c (gtk_args_collect):
2268 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
2270 * gtk/gtktypeutils.h:
2271 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
2272 gtk_type_get_varargs_type() to set and query the varargs collect
2273 type used for a fundamental type, registered outside of Gtk.
2275 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
2276 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
2279 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
2280 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
2283 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
2285 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
2286 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
2287 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
2289 (real_tree_expand) (real_tree_collapse):
2290 don't expand/collapse a leaf
2292 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
2294 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
2295 segfault when looking up a non-existant value name (reported by
2296 Pablo <pcj+gtk@primenet.com>).
2298 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
2300 * gtk/gtkclist.h (gtk_clist_prepend):
2301 * gtk/gtkclist.c (gtk_clist_prepend): new function.
2302 (gtk_clist_insert): added g_return_val_if_fail()
2303 statements. accept a row parameter < 0 or > clist->rows to indicate
2305 (real_clear): first clean up all internal pointers and lists (e.g.
2306 clist->row_list or clist->rows), then delete the distinct rows. this
2307 is required because of destroy notifiers, we need to have all internal
2308 structures updated and be reentrant.
2310 * gtk/gtkcalendar.h:
2311 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
2312 GtkCalendarClass signal methods.
2313 GtkType and macro fixups, put `void' into () prototypes, avoid C++
2314 style comments, indentation fixes, fixed some g_return_if_fail()
2316 (gtk_calendar_paint_header):
2317 (gtk_calendar_paint_day_names):
2318 (gtk_calendar_paint_week_numbers):
2319 (gtk_calendar_paint_main): made these static functions.
2320 (gtk_calendar_select_month):
2321 (gtk_calendar_select_day):
2322 (gtk_calendar_mark_day):
2323 (gtk_calendar_unmark_day):
2324 (gtk_calendar_get_date): signedness corrections, use guints
2326 (gtk_calendar_size_request): removed unused variables.
2328 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
2330 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
2331 widgets in the ->widgets_by_action list that have a callback
2332 defined (not only those with a callback_action!=0).
2334 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2336 * gtk/gtkcalendar.h:
2338 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
2340 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2342 * gtk/gtkcalendar.h:
2344 examples/calendar: Added gtkcalendar widget and demo
2346 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
2348 * gtk/gtkclist.c (gtk_clist_sort):
2350 (gtk_clist_unselect_all):
2351 (gtk_clist_select_all): adde g_return_if_fail() statements.
2353 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
2355 * configure.in: set binary age and interface age to 0.
2357 * gtk/gtkspinbutton.h:
2358 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
2359 gtk_spin_button_configure. gtk_spin_button_construct is still defined
2360 as an alias for gtk_spin_button_configure for source compatibility,
2361 but actuall use is deprecated.
2362 typeness corrections, i.e. gint->gboolean and gint->guint.
2363 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
2364 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
2365 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
2366 GtkSpinButton::adjustment, GtkSpinButton::digits and
2367 GtkSpinButton::climb_rate.
2368 GtkType and macro fixups.
2370 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
2372 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
2373 the *real* geometry position of a window, taken possible window
2374 manager offsets into account.
2375 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
2376 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
2377 it does fail though for amiwm which adds windows to a pseudo root
2378 window, and for icewm by a small offset because it defines the
2379 geometry position whithin its border.
2381 * gtk/testgtk.c: added "saved position" test to figure how
2382 gdk_window_get_root_origin() interacts with window managers (repopup
2383 this window to figure ;).
2385 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
2387 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
2392 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
2393 existing code was buggy in letting ->ref_count==0 pass through and
2394 then failing the living_objs_ht assertion).
2396 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
2397 pixtext fields (Roman Pozlevich <roma@botik.ru>).
2399 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2401 * Released GTK+ 1.1.2
2403 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
2405 * gtk/Makefile.am: use $(PERL) instead of perl
2406 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
2407 also much faster to render.
2409 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
2411 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
2412 the required memory block, rather than allocating it newly from
2413 scratch and doing a full-blown block copy on it.
2415 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
2417 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
2418 binary age 0, interface age 0.
2420 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
2422 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
2424 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
2427 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
2429 * HACKING: indent other than GNU indent should be OK
2432 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
2433 instead of piping through indent. If indent wasn't
2434 found in ./configure don't bother indenting at
2437 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
2439 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
2441 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
2443 * gtk/Makefile.am: use $(AWK) instead of awk
2445 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
2447 * gtk/Makefile.am (gdk_headers):
2448 Remove references to $(top_srcdir).
2449 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
2450 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
2452 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
2454 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
2455 GData*object_data to cure compiler warnings.
2457 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
2461 * mkinstalldirs: updated to latest automake version
2463 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
2465 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
2466 (gtkinclude_HEADERS): ... here.
2467 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
2469 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
2471 * HACKING: added GNU indent, as it is now required to successfully
2472 build gtk+. Should this be detected in autoconf, possibly?
2474 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
2476 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
2477 change library versioning scheme to drop LT_RELEASE
2478 from the -l line, while keeping it in the soname.
2480 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
2482 * configure.in Makefile.in: define a MAINT-like variable REBUILD
2483 which is set if Perl and awk are found, and autogenerated sources
2484 can be rebuilt. Remove the auto-generated sources from
2487 Add dependencies so that the autogenerated sources are
2488 rebuilt if the files they depend on change.
2489 (This unfortunately currently results in the entire
2490 gtk/ directory being rebuilt when any header changes.
2491 Moving all enums to gtkenums.h would fix this.)
2493 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
2495 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
2496 gtk_object_set_data_destroy_by_id functions to set the destroy
2497 function pointer for an existing data portion.
2499 * gtk/gtkobject.c: removed the GtkObjectData implementation and
2500 made all gtk_object_*data* functions use the GLib equivalents.
2502 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
2504 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
2505 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
2506 (widget != NULL), otherwise radio button insertion will not work
2507 -- the widget argument is NULL for the first radio button in the
2510 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
2512 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
2513 of g_new to malloc(), added back in the one place where
2514 it actually mattered. #include <stdlib.h>.
2516 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
2518 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
2520 * gtk/gtkfilesel.c: Keep a list of directories in which we never
2521 want to stat the entries (like /afs), and assume everything in
2522 those directories is a subdirectory.
2524 - When following a path, try to open components even when
2525 we don't find them in their parent's directory to
2526 support automounters.
2528 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
2530 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
2531 a new size from the WM if we asked for the same size
2532 before and our request was rejected.
2534 * gtk/gtkwindow.c (gtk_window_configure_event): If
2535 in response to a request, we get a configure event
2536 with unchanged dimensions, send a synthetic expose
2537 since ForgetGravity won't expose our window.
2539 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
2541 * gtk/gtktext.c (adjust_adj): Change the way we
2542 set the adjustments on resize so that it tries to
2543 keep the beginning of the text in approximately
2546 Removed assertion that the above change made invalid.
2548 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
2550 * gtk/gtktext.c: - Save first_cut_pixels when switching
2551 sizes, so that if we switch to the _same_ size,
2552 we don't move lines around.
2554 - Make sure that the text area always has a size of at
2555 least 1x1, then do all computations when realized.
2557 - When fetching lines in recompute_geometry, make
2558 sure we fetch enough lines to cover the screen.
2560 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2562 * gdk/gdkimage.c: changed g_new()s to malloc()s and
2563 g_free()s to free()s to avoid mixing g_new()s with
2564 free()s. X itself uses free() on some of the
2567 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
2569 * gtkfilesel.c: Maintain a list of directories like
2570 /afs we know contain only directories, and avoid
2571 stat'ing files in those directories. (Because
2572 stat'ing all files in /afs is extremely expensive)
2574 To support automounters, try to open directories,
2575 even if we couldn't find them when reading their
2578 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
2580 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
2581 to allow the same gtk.m4 to work for 1.0.x and
2584 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
2586 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
2587 to set/unset the selectable flag of a single row.
2588 (gtk_clist_get_selectable): new function
2589 to get the state of the selectable flag
2591 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
2592 (gtk_ctree_node_get_selectable): clist analogons
2594 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
2596 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
2599 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
2600 bugs in the 4bit gray cases.
2602 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
2604 * configure.in: added -posix check for NeXTStep
2606 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
2607 a unique buffer for each thread.
2609 * docs/gtk-config.1: clarified copyright
2611 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
2613 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
2615 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
2617 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
2620 * ltconfig: use GLib's ltconfig which honours lcc.
2622 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
2624 * configure.in: comment the -std1 check and save LIBS properly
2626 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2628 * gtk/testrgb.c: #include <stdlib.h>
2630 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
2632 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
2633 When the pointer is grabbed on an input window,
2634 either explicitely, or through press-grab, and
2635 then grabbed on a non-input window, ungrab the
2638 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
2640 * gtk/gtktypeutils.h: don't include any gdk headers.
2641 added structure definitions for GtkTypeObject and GtkTypeClass,
2642 which cover the very basic fields of GtkObject and GtkObjectClass,
2643 which are actually used by the type system.
2645 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
2646 we only refer to our own structures. improved class inheritance
2647 sanity checking a bit.
2649 * gtk/gtkobject.h: placed appropriate comments at the beginnings
2650 of the GtkObject and GtkObjectClass structures, which explain
2651 their relationship to GtkTypeObject and GtkTypeClass.
2653 * gtk/gtktypeutils.h:
2655 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
2656 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
2657 gtkobject.h to gtktypeutils.h.
2661 removed gtk_object_check_cast() and gtk_object_check_class_cast()
2662 functions. to keep source compatibility, we can provide macro aliases
2663 for the corresponding gtk_type_* functions. but then again, people
2664 shouldn't have been using these functions anyways since they were part
2665 of Gtk's internal API.
2667 * gtk/gtktypeutils.h:
2668 * gtk/gtktypeutils.c:
2669 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
2670 functions to check GtkTypeObject and GtkTypeClass types.
2672 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
2675 * gtk/gtkctree.c: `const' fixups.
2678 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
2680 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
2681 if it is passed as NULL.
2683 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
2685 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
2686 big-endian cases. Added a 4bpp packed gray mode (somewhat
2687 incorrectly hardwired to MSB), which should take care of
2690 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
2692 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
2693 GtkSIgnalQuery leak.
2695 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
2697 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
2698 GTK_MENU_DIR_CHILD: check for the existance of
2699 menu_shell->active_menu_item before accessing its child.
2701 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
2702 don't, make a default selection.
2704 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
2706 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
2707 the children with _forall for sensitivity changes and with
2708 _foreach on pure state changes. this fixes a lot of the
2709 old inclusions of internal widgets into _foreach calls.
2711 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
2712 do the work. don't walk the subtrees of first level children.
2714 * gtk/gtktreeitem.c: provide a _forall implementation,
2715 which walks the subtrees as well for include_internals.
2717 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
2718 the submenus as well for include_internals.
2720 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
2721 implemented gtk_scrolled_window_forall, which will iterate over
2722 the viewport and the scrollbars for gtk_container_forall or
2723 iterate over the viewports children for gtk_container_foreach.
2729 * gtk/gtkmenushell.c:
2735 * gtk/gtknotebook.c:
2736 removed the old gtk_*_foreach functions and provided gtk_*_forall.
2738 * gtk/gtknotebook.c:
2739 (gtk_notebook_real_switch_page): expose tabs.
2740 (gtk_notebook_page_num): new function to return the page number
2741 of a distinct child.
2742 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
2743 under some circumstances.
2745 * gtk/gtktreeitem.c:
2746 (gtk_real_tree_item_select):
2747 (gtk_real_tree_item_deselect): major fixes.
2748 some general fixups wrt queue_redraw, and tree items not being
2751 * gtk/gtklistitem.c:
2752 (gtk_real_list_item_select):
2753 (gtk_real_list_item_deselect):
2754 (gtk_real_list_item_toggle):
2755 removed unneccessary queue_redraw calls.
2757 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
2759 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
2760 automatically popup the menu on space bar.
2762 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
2764 * gtk/gtkcontainer.h:
2765 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
2766 method), which acts similar to gtk_container_foreach(), but iterates
2767 over internal children. the GtkContainer::foreach signal vanished in
2768 favour of a new class method ->forall() that optionally includes
2771 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
2772 but a _forall implementation, since all child widgets we have are
2774 (column_button_create): set the parent window prior
2775 to gtk_widget_set_parent().
2778 exchanged all calls to gtk_container_foreach() with
2779 gtk_container_forall().
2782 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
2783 the GtkWidget::composite_child argument. to have a widget created
2784 with the flag initially, two new functions got added to wrap a widgets
2786 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
2788 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
2790 * gtk/gtktooltips.h:
2791 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
2792 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
2793 prior to the first tip being set.
2794 don't put an extra reference on the window, since it is a toplevel,
2795 it wont get destroyed from anywhere else.
2797 * overall macro and GtkType fixups.
2799 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
2801 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
2802 constructs by more forgiving ones. (Does anyone else feel like
2803 the color selector need rewriting?).
2805 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2807 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2810 * gtk/gtkmenu.c: Modified reference counting so
2811 that the reference count from the toplevel that
2812 the menu creates to the menu is invisible to the
2815 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
2817 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
2818 conversion selection logic, so Suns and other big-endian
2819 machines should get faster conv routines. This is also the
2820 point where 4bpp gray and 1bpp are checked in, although I
2821 wouldn't be surprised if 1bpp is a little buggy. This is
2822 synchronized with the 0.0.7 release of GdkRgb.
2825 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
2826 appropriate change to the Makefile.am
2828 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
2830 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
2831 which is good for images that scroll (makes the dither patterns
2834 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
2837 (gdk_colormap_new) (gdk_colormap_get_system):
2838 quell some warnings with g_hash_table_new
2840 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
2841 when we're done with it
2843 * gtk/itemfactory.c:
2844 (gtk_item_factory_from_path):
2845 (gtk_item_factory_create_item): free some strings
2848 (gtk_label_finalize): free label->pattern when done
2849 (gtk_label_parse_uline): null terminate pattern string, delete
2850 some duplicated code
2852 * gtk/testthreads.c: add #include <unistd.h> for sleep()
2854 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
2856 * gtk/gtktext.c (recompute_geometry): Make sure the
2857 mark we pass to line start is the beginning of a
2858 real line, not a wrapped one.
2860 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
2862 * gtk/gtktext.c: Reference count the fonts used in
2865 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
2866 freeing functions to be more consistent, and more
2867 convenient; leave the old names in for backwards compatibility.
2869 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
2870 allocations in pseudo-color colormaps to greatly reduce
2871 calls to XAllocColor. Keep a per-colormap hashtable to
2872 speed up finding if there is an already-allocated matching
2875 * gdk/gdkcolor.c: Don't just match read the system colormap
2876 when the colormap is created, but synchronize our copy
2877 with the system colormap periodically.
2879 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
2880 Change XIM constants names to match GDK conventions
2882 * gtk/testinput.c: Allow the drawing area to get the focus.
2884 * gtk/testgtk.c: Change around the Text test to demonstrates
2885 multiple fonts, use more colors.
2887 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
2888 so they work after a widget is unrealized.
2890 * gtk/gtktext.[ch]: Remove the requirement that the text
2891 widget be realized before adding text (!) Allocate colors
2892 ourself, instead of requiring the caller allocate them.
2893 Allow changing styles to work properly by keeping track
2894 of the values for a certain property are default or
2897 * gtk/gtkmenu.h: Added some comments.
2899 * gtk/gtkentry.c: Changes to match XIM constants.
2901 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
2902 for adding keyed data to drawables. (Uses g_dataset
2905 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
2906 when creating an XPM - store them as user data for the GdkPixmap,
2907 so we don't leak colors when we create pixmaps from XPM's.
2909 Allocate memory for color information in large blocks instead of
2910 as many little pieces.
2912 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
2914 * gdk/gdkrgb.c: removed some unused variables
2917 * gtk/gtkmain.c: #if 0'd out some unused code
2919 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
2921 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
2929 * gtk/gtkcontainer.h:
2930 * gtk/gtkcontainer.c:
2935 (gtk_container_add_with_args):
2936 (gtk_container_child_set):
2937 begin the parameter elipsis (...) after the first argument name. this
2938 change is source compatible, since it was always required, even as NULL.
2940 (gtk_object_args_collect):
2941 (gtk_container_child_args_collect):
2942 changed prototypes to pass first_arg_name, also, pass va_list variable
2943 by value (portability concerns). callers changed.
2945 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
2946 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
2947 can't pass va_list variables by reference for portability reasons.
2949 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
2951 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
2952 get_visual calls, so that it gets implicitly initialized.
2954 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
2955 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
2956 such as GtkCTree function name changes
2958 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
2961 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
2962 binary version check, returning a static string for error descriptions,
2965 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
2967 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
2968 computed our geometry yet, and if not, ignore the request.
2970 * gtk/gtktext.c (correct_cache_insert): Fiddled around
2971 some more. All the bug-test codes seem to work at once
2972 now. (fingers crossed...)
2974 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
2976 * gdk/gdkrgb.c: silly visual fixes
2978 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
2981 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
2983 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
2984 anything if the event's window is not the bin window.
2985 (gtk_handle_box_motion): Likewise.
2987 1998-08-19 Raph Levien <raph@gimp.org>
2989 * gtk/testgtk.c (create_color_preview): pushed the colormap and
2990 visual so it would work better with GdkRgb.
2992 1998-08-19 Raph Levien <raph@gimp.org>
2994 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
2995 4bpp static_color mode (for vga displays). Also fixed a '64' value
2996 in the dither matrix, which was causing one pixel out of 16k to be
2999 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
3000 most of the contents. This is an API change - any apps that relied
3001 on the internal structure of GtkPreview will need some change -
3002 most notably in the use of reserved colors. The Gimp needed
3003 changes in this regard.
3005 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
3007 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
3008 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
3009 --g-fatal-warnings), noticed by miguel.
3011 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
3013 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
3021 * gtk/gtkitemfactory.c:
3022 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
3024 * gtk/gtkselection.c:
3028 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
3030 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
3032 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
3034 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
3035 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
3036 in case of show_tabs == NULL
3038 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
3040 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
3041 to --g-fatal-warnings again. this option now causes log levels of
3042 WARNING and CRITICAL to abort().
3051 * gtk/gtktypeutils.c:
3057 * gtk/gtkselection.c:
3060 * gtk/gtktreeitem.c:
3061 did a global search&replace to substitute g_print() calls with
3062 g_message(). libraries shouldn't use printf(), g_print() or
3063 g_printerr() at all.
3064 a bunch of the replacements should probably be wrapped into the
3065 G{D|T}K_NOTE() macros, so they are special cased for debugging
3066 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
3069 * gdk/gdkdnd.c: added copyright notice.
3071 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
3073 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
3074 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
3075 running a PII 233. It's synced with the 0.0.5 release of
3078 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
3081 (struct _GtkCListClass): new class methods:
3082 (sort_list) (insert_row) (remove_row) (set_cell_contents)
3085 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3086 removed and replaced by (set_cell_contents)
3087 (set_cell_contents): function for class method set_cell_contents
3088 (real_insert_row): function for class method insert_row
3089 (real_remoce_row): function for class method remove_row
3090 (real_sort_list): function for class method sort_list
3091 (default_compare): fix to avoid problems with cell types != CELL_TEXT
3094 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
3095 (gtk_ctree_node_is_visible): new function to return visibility state
3097 (gtk_ctree_show_stub): new function to set visibility of root stub
3100 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
3101 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
3102 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
3103 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
3104 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
3105 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
3106 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
3107 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
3108 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
3109 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
3110 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
3111 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
3112 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
3113 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
3114 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
3115 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
3116 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
3117 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
3118 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
3121 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3122 removed and replaced by (set_cell_contents)
3123 (set_cell_contents): function for class method set_cell_contents
3124 (real_insert_row): function for class method insert_row
3125 (real_remoce_row): function for class method remove_row
3126 (real_sort_list): function for class method sort_list
3127 (default_compare): removed. CTree now also compares two GtkCTreeRows
3128 instead of two GtkCTreeNodes.
3129 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
3131 (real_tree_expand) (real_tree_collapse): fix for refcounting of
3133 (set_node_info): call gtk_ctree_node_set_pixtext instead of
3134 manipulating the row itself
3136 * gtk/testgtk.c: use renamed functions of GtkCTree.
3137 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
3140 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
3142 * gtk/gtkmain.c: removed gtk_input_add_interp.
3144 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
3146 (gtk_editable_get_event_time): fix default: case.
3148 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
3150 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
3153 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
3156 * various minor compilation cleanups, such as bogus commas in
3157 enums and similar things.
3159 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
3161 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
3164 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3166 * NEWS: updated for 1.1.2
3167 * gtk+.spec: version = 1.1.2
3169 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
3171 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
3172 times. changed --gtk-with-module to --gtk-module at owen's request.
3174 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
3176 * gtk/gtkmain.c (gtk_init): feature a new commandline option
3177 --gtk-with-module=<module> that allows additional loading and
3178 initialization of modules (e.g. GLE).
3180 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
3182 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
3183 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
3185 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
3186 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
3187 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
3188 different *-fatal-* arguments now. this needs to be revised and
3189 compressed to a reasonable amount of arguments.
3191 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
3193 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
3194 "--g-fatal-warnings" causes fatal warnings in GLib,
3195 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
3196 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
3198 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
3199 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
3203 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
3204 since automake doesn't support per target _CFLAGS yet.
3206 * configure.in: require GLib 1.1.3.
3208 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
3210 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
3211 to set a callback to test if a node in drag can be dropped onto
3212 it's currrent location.
3213 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
3214 to change the pointer when a drag destination is not allowed.
3216 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
3218 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
3219 speeds up the 565_d case by about 25% total. Thanks Ray!
3221 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
3223 * Changed GtkSignalFunc back to () from (void). (again!)
3225 * Added file README.cvs-commits
3227 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
3229 * docs/gtk_tut.sgml:
3230 - Tidy up of the menufactory example from
3231 Andy Kahn <kahn@zk3.dec.com>
3232 - New section on Range Widgets from
3233 David Huggins-Daines <bn711@freenet.carleton.ca>
3234 - Started a new section on 'Advanced Event and Signal
3235 Handling' - used an email from Owen.
3236 - New appendix on Gdk Event Types
3237 - Added the tictactoe full example code to the
3238 'Code Examples' appendix
3240 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
3242 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
3243 to calculate all the metrics at once of a string, including
3244 things which weren't calculated before.
3246 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
3247 MenuItem type, that when put as the first thing in a
3248 menu, makes the menu tearoff. Currently drawn as a
3251 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
3252 "hide_on_activate" to the MenuItem class structure to allow
3253 check and radio buttons to be changed with <Space> without
3256 * gtk/gtkitemfactory.c:
3257 - Create a AccelGroup for each MenuShell we create.
3258 - If an '_' appears before a character 'c' in the path,
3259 then make 'c' an accelerator in the menu's accel group,
3260 and if the menuitem is menubar <alt>C an accelerator
3261 in the itemfactory's accel group. Double '__' inserts
3264 * gtk/gtklabel.[ch]: Add support for a pattern arg -
3265 which is a string. If an '_' appears in this string,
3266 the corresponding position in the label is underlined.
3268 Add gtk_label_parse_uline() convenience function which
3269 takes a string with embedded underlines, sets the
3270 pattern and label, and returns the accelerator keyval.
3272 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
3273 Instead, they create a GtkWindow and add themselves
3274 to that. (When torn off, another new feature, they
3275 create another GtkWindow to hold the torn off menu)
3277 New function gtk_menu_set_tearoff_state()
3279 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
3280 Added action signals for keyboard navigation of menus.
3282 * gtk/gtkmenushell.c: Key press handler which activates
3283 bindings for navigation, and accelerators, for handling
3284 underline accelerators. Exported functions to select
3285 and activate menu items in a menushell.
3287 * gtk/testgtk.c: Added a new "Item Factory" test which
3288 tests GtkItemFactory and the new keyboard navigation
3291 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
3293 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
3294 external functions have been called. also relookup nodes after
3295 this function has been invoked.
3297 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
3299 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
3300 beginning of Text when creating the Text widget.
3302 * gtk/testgtk.c: Grab the focus on the text widget so
3303 as to test out the above.
3305 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
3307 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
3308 ::changed is a notification signal and should have no default
3309 handler. A complete redraw of the Text widget does _not_ need to
3310 be done on every text insertion.
3312 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
3313 (gtk-abilleira-072198-patch)
3315 * gtk/gtkwindow.[ch]:
3316 Add gtk_window_set_modal() which sets a flag; when
3317 set the window does a gtk_grab_add() when the window
3318 is shown, and a gtk_grab_remove() when the window
3321 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
3322 that case will run "Create Dir","Delete File" and "Rename File"
3323 dialogs as modal too.
3325 * gtk/testgtk.c: Added a button with an example of creating modal
3326 dialog boxes. Including file selection and color selection standard
3329 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
3331 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
3332 Removed CAN_FOCUS by default from scrollbars, button
3333 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
3334 (Scrollbar definitely good change, toolbar bit more questionable)
3336 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
3338 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
3341 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
3343 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
3344 added all logical operations to gc->function.
3346 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
3348 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
3349 gtk_widget_size_allocate instead of gtk_widget_queue_resize
3350 if the visibility state of a scrollbar changes.
3352 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
3354 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
3356 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
3358 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
3359 gtk_clist_merge and gtk_clist_mergesort. :)
3361 1998-08-06 Martin Baulig <martin@home-of-linux.org>
3363 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
3364 `mergesort' -> `my_mergesort'.
3366 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
3368 * gtk/gtkenums.h: new enum GtkSortType.
3372 Added sorting capabilities to GtkCList. New APIs :
3373 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
3374 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
3375 New internal functions : default_compare, merge, mergesort.
3377 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
3379 (gtk_clist_insert): Modified to handle gtk_clist_append and the
3380 auto sort flag. Changed the return value from void to gint to
3381 return the row number where the element was actually inserted.
3383 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
3387 Removed the auto_sort flag, replaced ctree->node_compare with
3388 clist->compare all over the place, modified default_compare to
3389 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
3390 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
3392 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
3393 sorting. The lists can be sorted by a column by clicking the
3394 corresponding title button.
3396 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3398 * Released GTK+ 1.1.1
3400 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
3404 (gtk_ctree_find): changed to return a gboolean
3405 (gtk_ctree_insert_gnode): new function for recursive insertion of a
3407 (gtk_ctree_real_select_recursive): fix for extended selection
3408 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
3409 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
3411 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
3413 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
3414 GLib version 1.1.1 is now required at minimum.
3416 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
3417 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
3419 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
3421 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
3422 cursor before (possibly) deleting the cursor's text
3425 * gtk/gtktext.c (correct_cache_delete): More attempts
3426 to clean the line-start cache up after inserting
3427 a property. Among other things, make sure to
3428 fix up text->current_line, since it is used to
3429 refetch the changed lines.
3431 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
3433 * gtk/gtktable.[ch]: Empty rows/columns of the table
3434 should not have been marked as being able to shrink.
3435 (Fixes problem with shrinking scrollbarless GIMP canvases)
3437 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3439 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
3440 function to find a row by its data pointer using a custom
3441 comparison function.
3443 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
3445 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
3446 this fixes a bug when the whole widget is made non-sesitive
3447 the buttons weren't redrawn
3449 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
3451 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
3452 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
3453 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
3455 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
3457 * gdk/gdkwindow.c (gdk_window_reparent): Change
3458 window_private->parent pointer when reparenting.
3460 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
3462 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
3463 with the standalone release.
3465 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
3467 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
3468 (gtk_clist_button_release) (new_column_width): Few fixes for
3469 column resize. Store resize column in clist->drag_pos.
3471 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
3475 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
3476 to GtkCTreeNode *node.
3478 * gtk/gtklist.h : added extended selection mode and auto scrolling.
3479 (struct _GtkList): removed unneeded variables timer, button,
3480 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
3481 Added new variables undo_selection, undo_unselection, last_focus_child,
3482 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
3483 drag_selection, add_mode.
3486 (gtk_list_extend_selection), (gtk_list_start_selection),
3487 (gtk_list_end_selection), (gtk_list_select_all),
3488 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
3489 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
3490 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
3491 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
3494 (gtk_list_enter_notify): removed, because auto scrolling now works
3495 with gtk_list_motion_notify
3497 New functions, needed for auto scrolling :
3498 (gtk_list_motion_notify) (gtk_list_move_focus_child)
3500 New functions for extended selection support :
3501 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
3502 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
3503 (gtk_list_focus_lost)
3505 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
3506 function to support auto scrolling, and avoid out-of-sync errors in
3507 case auf GTK_SELECTION_BROWSE
3508 (gtk_list_focus): modified gtk_container_focus function to avoid out
3509 off sync errors in case auf GTK_SELECTION_EXTENDED
3512 * gtk/gtklistitem.c :
3513 New signal functions for key binding support :
3514 (toggle_focus_row), (select_all), (list_item), (unselect_all)
3515 (list_item), (undo_selection), (start_selection), (end_selection)
3516 (extend_selection), (scroll_horizontal), (scroll_vertical),
3518 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
3519 GDK_KEY_RELEASE_MASK
3520 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
3523 (gtk_combo_popup_button_press): grab pointer for combo->list
3524 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
3525 (gtk_combo_list_key_press): take care of which child HAS_GRAB
3526 (gtk_comb_init): don't connect combo->button with button_release_event
3528 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
3530 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
3532 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
3534 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
3535 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
3536 with horizontal and vertical autoscrolling.
3538 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3540 * gtk/docs/man: new directory
3541 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
3543 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
3545 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
3548 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
3550 * docs/gtk_tut.sgml: GtkTree section from
3551 David Huggins-Daines <bn711@freenet.carleton.ca>,
3552 add a GtkText widget example
3553 * examples/text/* example/tree/* : new examples for the
3554 GtkTree and GtkText widgets
3555 * docs/gtk_tut.sgml: added an appendix to hold complete code
3556 examples that aren't in a full form elsewhere in the
3557 tutorial (e.g. scribble)
3559 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3561 * Released GTK+ 1.1.0
3563 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
3565 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
3566 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
3568 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
3570 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
3571 values are looked up.
3573 * gtk/gtktypeutils.h:
3574 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
3575 gtk_type_enums_find_value to lookup enum values.
3578 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
3579 GtkCTreeExpansionType. fixed signal creations to pass the enum
3580 types not just the base type GTK_TYPE_ENUM.
3583 * gtk/gtkclist.c: fixed signal creations to pass the real enum
3584 types not just the base type GTK_TYPE_ENUM.
3586 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
3589 Began cleanup, e.g. use gtk_widget_show_all instead of many
3590 gtk_widget_show's. Completely rewrote the button box sample
3591 (only one window now). Removed "miscellaneous" button.
3593 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
3595 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
3596 Fixed wrong allocation for GTK_BUTTONBOX_END.
3597 (allocation->x => allocation->y)
3599 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
3601 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
3602 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
3604 * gtk/gtkctree.c (real_tree_select): added check to avoid double
3606 (gtk_ctree_button_press)
3607 (gtk_ctree_button_release): fix for pointer grab
3609 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
3611 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
3612 Fixed initialization problem - dirty memory could cause problems.
3613 Also checked that bitmapped fonts can be scaled when showing the
3616 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
3618 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
3619 (gtk_ctree_sort_recursive): test for node != NULL
3620 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
3621 (gtk_ctree_last) : added sanity checks
3622 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
3624 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
3626 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
3628 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
3630 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
3632 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
3634 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
3635 to check out binding priorities. someone should really write
3636 gtkrc-mode for emacs.
3638 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
3639 * gtk/testgtk.c (main): and move it here ;). this test says something
3640 on release of C-9. (this works only if the mouse pointer is on a
3641 spinbutton and there is no focus widget).
3645 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
3646 gtk_rc_parse_priority to parse path priority types.
3648 feature binding parsing.
3650 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
3652 * gtk/gtkbindings.h:
3653 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
3654 feature binding parsing in rc files.
3655 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
3656 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
3657 order the bindings with lowest priority first.
3659 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
3661 * gdk/gdkrgb.c: actually builds and runs properly on big
3662 endian machines now, because we #include config.h. Also
3663 fixed up a compile error in the WORDS_BIGENDIAN case in
3664 gdk_rgb_convert_565_gray. I made the fix by looking at
3665 patterns in the other code; Raph can you verify this?
3667 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
3670 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
3672 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
3673 (tree_toggle_expansion) (real_select/unselect_row)
3674 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
3676 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
3678 * gtk/gtktext.c (new_text_property): We free things from
3679 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
3681 * Fix up line start cache when splitting a property
3684 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
3686 * gtk/gtkwidget.c: restauration => restoration
3688 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
3690 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
3691 hasn't been created yet, don't do the lookup.
3693 1998-07-20 Raph Levien <raph@acm.org>
3695 * gdk/gdkrgb.c: More cleanups in the config process.
3697 1998-07-20 Raph Levien <raph@acm.org>
3699 * gdkrgb.c: Fixed minor config bug preventing big-endian
3700 architectures from working.
3702 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
3704 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
3705 activity indicator. It is settable now as a fraction of the
3706 total width/height using gtk_progress_bar_set_activity_blocks.
3707 Renamed gtk_progress_bar_set_number_of_blocks to
3708 gtk_progress_bar_set_discrete_blocks.
3710 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
3712 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
3713 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
3714 tree to specified depth
3715 (gtk_ctree_expand_to_depth): expand tree to specified depth
3716 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
3718 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
3720 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
3721 of GTK_CLIST_ADD_MOD
3722 * gtk/testgtk.c (add1000_clist): changed pixmap
3724 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
3727 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
3729 * gtk/gtktypeutils.h:
3730 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
3732 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
3734 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
3735 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
3736 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
3738 (gtk_notebook_reorder_child): new funktion to change position of a
3740 (gtk_notebook_draw_arrow): draw left/right arrow with
3741 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
3743 * gtk/gtkstyle.c (gtk_default_draw_arrow):
3744 added GTK_SHADOW_ETCHED_IN/OUT
3746 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
3748 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
3749 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
3750 Introduced generic GtkProgress widget. Derived GtkProgressBar from
3751 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
3753 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
3755 * gtk/gtktypeutils.h
3756 * gtk/gtkitemfactory.h: explicitly specify void in prototype
3758 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
3760 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
3763 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
3765 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
3766 sropped the approach of copying all signal specific data into a
3767 GtkHandlerInfo structure. we rather keep the signal data on the stack
3768 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
3769 avoids multiple lookups of the signal pointer and works savely together
3770 with destroy notifiers of handlers.
3772 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
3773 someone destroys the entry on the ::activate signal.
3775 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
3777 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
3778 instead of ypad (typo).
3779 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
3780 border around the allocation).
3781 (gtk_arrow_init): the static requisition needs to be setup in this
3782 function rather than gtk_widget_new(), so arrow creation works without
3783 the gtk_arrow_new() constructing.
3784 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
3786 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
3787 implementation for GtkWidget::size_request, so size requisition for
3788 simple statically sized widgets like GtkArrow works.
3790 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
3792 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
3793 prepend -I@libdir@/glib/include anymore, since glib-config handles
3794 it; --libs strips out redundant -L<path>'s properly (there was
3795 code in there to do it before, but it didn't work)
3797 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
3799 * gtk/gtknotebook.h:
3800 * gtk/gtknotebook.c: signdness corrections all ove the place.
3801 implementation of object arguments: GtkNotebook::enable_popup,
3802 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
3803 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
3804 begun implementation of child args, we have GtkNotebook::tab_label, but
3805 GtkNotebook::menu_label and GtkNotebook::position still lack the
3807 (gtk_notebook_remove_page):
3808 (gtk_notebook_current_page): allow negative indices (-1) as alias for
3812 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
3813 arguments GtkEntry::max_length and GtkEntry::visibility.
3814 (gtk_entry_adjust_scroll): queue a redraw.
3816 * gtk/gtkeditable.h:
3817 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
3818 object arguments GtkEditable::text_position and GtkEditable::editable.
3819 new (action) signal GtkEditable::set_editable.
3820 provide a default handler for GtkEditable::changed that queues a redraw.
3823 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
3826 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
3828 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
3829 case of drag_target == NULL
3830 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
3831 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
3832 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
3833 gtk_dir_selection_file_button): fix due to changes in clist's
3836 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
3839 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
3840 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
3841 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
3842 to be gint16s rather than guint16s, since that's what the code expected
3843 (for a long time actually).
3845 * gtk/gtkviewport.c:
3846 added support for object arguments: GtkViewport::shadow_type,
3847 GtkViewport::vadjustment and GtkViewport::hadjustment.
3848 (gtk_viewport_add): chain gtk_bin_add.
3850 * gtk/gtkscrolledwindow.c:
3851 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
3852 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
3854 * gtk/gtkadjustment.h:
3855 * gtk/gtkadjustment.c:
3860 * gtk/gtkscrolledwindow.h:
3861 * gtk/gtkscrolledwindow.c:
3862 * gtk/gtkviewport.h:
3863 * gtk/gtkviewport.c:
3864 GtkType and macro fixups.
3866 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
3870 Added focus handling, horizontal and vertical autoscrolling,
3871 extended Selection Mode, key bindings
3872 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
3873 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
3874 Removed gtk_ctree_clear.
3878 Added focus handling, horizontal and vertical autoscrolling,
3879 extended Selection Mode, key bindings
3881 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
3883 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
3884 source tree. For more information on GdkRgb, please see:
3885 http://www.levien.com/gdkrgb/
3887 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
3888 bothers me slightly that the feature is in gdk, and this file is
3889 in gtk, but it's probably ok.
3891 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
3894 * gdk/gdkrgb.h: Added this module.
3896 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
3898 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
3900 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
3902 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
3903 to this function. it needs to relookup the signal multiple times.
3904 this fixes spurious segfaults that could show up with signal intensive
3905 code, when classes are created during a pending emission (which is
3908 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
3910 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
3911 child if it isn't a label.
3913 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
3916 * gtk/gtkseparator.h:
3917 * gtk/gtkhseparator.h:
3918 * gtk/gtkvseparator.h: macro and GtkType fixups.
3920 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
3922 * gtk/testgtk.c (create_cursors): display the current cursor name.
3924 * gtk/gtktypeutils.h:
3925 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
3926 the fundamental type definition. the GtkArg union now only covers
3927 the required storage types for argument values. adapted the GTK_VALUE_*
3928 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
3930 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
3931 code, fixed int/float collection. fixed a bug in the sanity checking
3932 code for GtkObjects.
3934 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
3935 argument collection code.
3937 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
3938 macros when distinguishing the return type.
3940 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
3942 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
3943 is not NULL before trying to g_list_remove the child. A patch
3944 from Michael Lausch.
3946 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
3948 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
3949 collection (always casted to doubles upon argument passing).
3951 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
3953 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
3954 object_init_func for derived objects with the object's ->klass field
3955 still pointing to the corresponding base class, otherwise overridden
3956 class functions could get called with partly-initialized objects.
3957 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
3959 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
3963 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
3965 * gtk/gtkcontainer.h:
3966 * gtk/gtkcontainer.c:
3967 (gtk_container_child_arg_get_info): new function which wraps
3970 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
3972 * gtk/gtkcontainer.c:
3973 (gtk_container_arg_get):
3974 (gtk_container_arg_set):
3976 (gtk_object_arg_set):
3977 (gtk_object_arg_get):
3978 strictly check for the associated get/set arg functions. if an
3979 arg is readable or writable, the associated class functions *must*
3982 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
3984 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
3985 padding into account if there is an accelerator.
3987 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
3989 * gtk/gtkcontainer.c:
3990 (gtk_container_add_with_args): collect the arguments with
3991 gtk_container_child_args_collect, not through gtk_object_args_collect.
3992 (gtk_container_child_set): likewise.
3994 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
3996 * gtk/gtktypeutils.h:
3997 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
3998 which is derived from GTK_TYPE_STRING.
4000 * gtk/gtkbindings.c: reworked the argument type handling.
4002 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4004 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
4005 so that it seems to allow normal operation in those modes,
4006 although you will only see black (GIMP toolbar now pops up,
4007 just don't create a new image and GIMP now works in 4 bit.)
4009 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4011 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
4012 array, which was too low (?)
4014 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
4016 * gtk/gtkcontainer.h:
4017 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
4018 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
4019 we now export a new function gtk_container_child_args_collect().
4020 for consistency with the object arguments, a few functions got renamed:
4021 gtk_container_child_arg_get -> gtk_container_child_get,
4022 gtk_container_child_arg_set -> gtk_container_child_set,
4023 gtk_container_child_arg_getv -> gtk_container_child_getv,
4024 gtk_container_child_arg_setv -> gtk_container_child_setv,
4025 gtk_container_add_with_argv -> gtk_container_addv.
4026 note, gtk_container_add_with_args() remained, because its equivalent
4027 would be gtk_container_add(,, ...) which would break all existing code.
4028 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
4029 we expect the `arg_name' argument to be a const static string now.
4030 (gtk_container_get_child_arg_type): function removed.
4032 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
4034 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
4035 this is a static inline function that collects command line arguments
4036 from a va_list. this file can just be included in all places that
4037 need this functionality.
4040 * gtk/gtkarg.c: new files which implement most of the argument
4041 handling stuff from gtkobject.c. also collected a few more
4042 gtk_arg_* utility functions from else places.
4045 * gtk/gtkobject.c: moved most of the argument handling code into
4046 gtkarg.c. we now export gtk_object_args_collect() as a non-public
4047 method with a blind va_list pointer.
4048 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
4049 const static string now.
4050 (gtk_object_get_arg_type): function got removed.
4054 (gtk_widget_new): adaptions for gtk_object_args_collect().
4056 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
4057 fundamental type name so as to have a valid prefix, e.g. "bool"->
4058 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
4059 though that should probably be something like GtkNone since the
4060 type itself is called GTK_TYPE_NONE.
4061 even the internal type names need to avoid name clashes and must live
4062 in their own namespace, several code portions rely on that.
4063 we should relly have typedefs such as typedef gchar* GtkString; so the
4064 fundamental type names can be used for code dumpers just like with all
4067 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
4069 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
4070 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
4071 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
4073 (gtk_button_paint): set the background for prelighted buttons with
4074 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
4075 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
4076 the shadow type (otherwise we get strange shadows for coloured buttons).
4077 (gtk_button_set_relief): queue a redraw after changing
4079 (gtk_button_class_init):
4080 (gtk_button_set_arg):
4081 (gtk_button_get_arg): added object argument "GtkButton::relief".
4083 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
4085 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
4088 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
4089 GTK_BIN (button)->child to button->child to keep source compatibility.
4091 * gtk/gtkoptionmenu.c:
4093 * gtkcheckbutton.c: don't refer to button->child, but
4094 GTK_BIN (button)->child instead.
4096 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
4098 * docs/gtkfaq.sgml: update anon CVS info
4100 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
4102 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
4106 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
4109 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
4111 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
4112 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
4114 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
4116 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
4118 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
4121 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
4123 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
4124 error that prevented signal to entry addition for signals with
4127 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
4129 * ltconfig: fix for properly detecting shared lib support on
4130 SunPro cc (taken from libtool 1.2.a)
4132 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
4134 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
4136 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
4138 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
4139 rc set pattern is favoured, this is needed for overriding of style
4140 patterns with subsequently parsed rc files.
4142 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
4144 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
4147 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
4149 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
4151 (gtk_accelerator_name): add "<Release>" to the accelerator name if
4154 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
4157 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
4158 default handler for key-release events, which checks for activation
4159 of GDK_RELEASE_MASK key bindings.
4161 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
4163 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
4165 * gtk/gtkarrow.h: GtkType and macro fixups.
4166 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
4167 "GtkArrow::shadow_type".
4169 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
4171 * gtk/gtkalignment.h:
4172 * gtk/gtkbin.h: GtkType and macro fixups.
4174 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
4175 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
4176 GtkAlignment::xscale, GtkAlignment::yscale.
4178 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
4180 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
4181 fucntions from all parent types upon class initialization.
4183 * gtk/gtkcontainer.c:
4184 (gtk_container_get_type): announce gtk_container_base_class_init to
4186 (gtk_container_base_class_init): new function to feature base class
4188 (gtk_container_get_child_arg):
4189 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
4190 and set_child_arg methods of the class indicated through the argument
4194 (gtk_object_base_class_init): new function to feature base class
4196 (gtk_object_init_type): announce gtk_object_base_class_init to the type
4198 (gtk_object_class_init): setup the get_arg and set_arg pointers for
4201 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
4202 instead of bothering the type system with this.
4204 * gtk/gtkaccellabel.c:
4206 * gtk/gtkradiobutton.c:
4208 * gtk/gtktogglebutton.c:
4209 * gtk/gtktipsquery.c:
4216 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
4217 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
4218 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
4219 arg functions to take a GtkObject argument.
4221 gtk/gtkadjustment.c:
4224 gtk/gtkaspectframe.c:
4227 gtk/gtkcheckbutton.c:
4228 gtk/gtkcheckmenuitem.c:
4236 gtk/gtkdrawingarea.c:
4250 gtk/gtkhscrollbar.c:
4251 gtk/gtkhseparator.c:
4253 gtk/gtkinputdialog.c:
4255 gtk/gtkitemfactory.c:
4263 gtk/gtkoptionmenu.c:
4267 gtk/gtkprogressbar.c:
4268 gtk/gtkradiomenuitem.c:
4273 gtk/gtkscrolledwindow.c:
4275 gtk/gtkspinbutton.c:
4288 gtk/gtkvscrollbar.c:
4289 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
4290 match the modified GtkTypeInfo structure.
4292 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
4294 * gtk/testgtk.c: use rand() instead of random() for portability
4296 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
4300 * gdk/gdk.c: use native Xlib XConvertCase if it's available
4302 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
4304 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
4305 XConvertCase() functionality from X11R6 on X11R5 systems.
4307 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
4309 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
4310 gdk_string_height, gdk_char_height to retrieve the exact
4313 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
4315 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
4316 by Stefan Mars <mars@lysator.liu.se>
4317 * examples/clist/clist.c examples/clist/Makefile: example code
4318 for GtkCList widget from the Tutorial
4320 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
4322 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
4323 if the container is not visible, we might be a toplevel! this holds
4324 for all other base container implementations as well, that are
4325 candidates to derive toplevels from. in general the resizing code will
4326 care about visibility itself.
4327 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
4328 * gtk/gtkbox.c (gtk_box_remove): likewise.
4330 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
4331 gtk_window_set_hints(), since we haven't calculated the new position
4334 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
4335 *mask are alway initialized in a sane way, regardless of the return
4338 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
4340 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
4341 to gtk_container_child_arg_setv, but takes a variable argument list.
4342 new function gtk_container_get_child_arg_type, which is needed by
4343 gtk_object_collect_args.
4345 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
4346 take a function pointer to figure the argument type.
4347 adapted callers to pass gtk_object_get_arg_type.
4348 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
4349 gtk_object_get_arg_type..
4353 (gtk_packer_reorder_child): new function to change the packing order
4355 (gtk_packer_size_request):
4356 (gtk_packer_size_allocate): take container->border_width into acount.
4358 * gtk/gtkpacker.c: implemented widget arguments:
4359 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
4360 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
4361 implemented child arguments:
4362 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
4363 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
4364 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
4365 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
4367 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
4370 * gtk/gtkeventbox.h:
4371 * gtk/gtkeventbox.c: GtkType and macro fixups.
4373 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
4374 sensitivity of an entry.
4376 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
4377 for insensitive base and text.
4379 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
4380 widget state dependent.
4381 (gtk_entry_style_set): likewise.
4382 (gtk_entry_state_changed): set background color on state changes.
4383 (gtk_entry_draw_text): for non selected text, use state dependent
4386 * gtk/gtktogglebutton.c: support for widget arguments
4387 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
4389 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
4391 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
4392 code for 1.0.x-like parameters. Changed internal interface of
4393 gtk_spin_button_real_spin. Several fixes to avoid emission of
4394 "value_changed" where possible.
4396 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
4398 * gtk-boxed.defs: s/GkWidget/GtkWidget/
4400 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
4402 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
4403 to select the resize_mode for the idle-labels container.
4406 * gtk/gtkframe.c: GtkType and macro corrections.
4408 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
4409 support widget argument "GtkRadioButton::group".
4411 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
4413 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
4414 unconditionally if resize_mode has changed.
4416 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
4417 GTK_RESIZE_QUEUE on the scrolled window.
4418 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
4420 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
4422 * gtk/gtkcontainer.h:
4423 * gtk/gtkcontainer.c:
4424 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
4425 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
4426 (gtk_container_queue_resize): new function to queue a container for
4427 a *size* reallocation (doesn't affect its position, and thus its
4428 parent is left untouched usually).
4429 (gtk_container_get_resize_container): new function to retrive the next
4430 most resize container which is not itself queued for a resize.
4431 (gtk_container_idle_sizer): new function to carefully process the
4432 container_resize_queue since it can change during invokation of
4433 gtk_container_check_resize().
4434 (gtk_container_resize_children): total rework of this function to
4435 properly handle resize containers. makes a lot of assumptions whitch
4436 are stated in the comments.
4438 * gtk/gtkcontainer.c:
4439 (gtk_container_real_check_resize): only requeue ourselves if we are not
4441 (gtk_container_clear_resize_widgets): care for automatic deletion of our
4442 resize_widgets list on size_allocate through a handler connection.
4444 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
4445 focus and default widget of a window, so to take the burden from
4446 gtk_widget_unparent.
4448 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
4449 to be clever, but actually messed up the resize_children logic and
4450 caused unneccessary allocations on its whole branch. besides this,
4451 it messed up the display by not invoking a redraw after the allocation.
4453 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
4454 that it is the child again that is queued for a resize.
4455 (gtk_table_attach): likewise.
4456 (gtk_table_remove): likewise.
4458 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4460 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
4461 gtk_entry_adjust_scroll. Required if you change the cursor
4462 position and want to sync it up with your code (Midnight Commander
4463 gtk front end needs this).
4465 * gtk/gtktable.c: Deal with tables that have size 0, 0.
4467 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
4469 * examples/README.1ST: new file to explain how the
4470 code examples should be extracted from the tutorial.
4472 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
4474 * gtk/gtkctree.c (draw_row): added new "line style"
4475 GTK_CTREE_LINES_TABBED
4476 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
4477 search the glist pointer of an GtkCTreeRow
4479 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
4481 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
4482 from, and clean up, the dependencies. Generate to intermediate
4483 files to prevent problems with Ctrl-C.
4485 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
4487 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
4489 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
4490 - Bug fix for precision problem causing occasional double emission
4491 of "value_changed" signal (hopefully works now).
4492 - API change (should be binary compatible) :
4493 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
4494 Modified cursor example appropriately.
4495 To spin by something other than step_/page_increment, use
4496 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
4497 - Made GTK_SHADOW_NONE the default. ;)
4498 - Fixed casting of GtkAdjustment* to GtkWidget* in
4499 gtk_spin_button_value_changed.
4501 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
4503 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
4504 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
4505 resize widget list before queuing the container for a new reize.
4506 (gtk_container_need_resize): changed return value to FALSE, since this
4507 used to indicate that no further resizes are needed.
4508 (gtk_container_set_arg):
4509 (gtk_container_get_arg):
4510 (gtk_container_class_init): implemented GtkContainer::resize_mode
4513 (gtk_container_resize_children): when we walk up the tree of a resize
4514 widget we need to stop if we are the current parent.
4516 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
4517 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
4518 (gtk_widget_hide_all): retrive the toplevel widget from via
4519 gtk_widget_get_resize_container().
4521 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
4523 * gtk/gtklist.c (gtk_list_button_press): Only respond
4524 to selection with button 1. This allows context-sensitive
4525 menus to work correctly.
4527 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
4529 * gtk/gtkaccelgroup.c:
4530 * gtk/gtkbindings.c:
4531 * gtk/gtkcontainer.c:
4532 * gtk/gtkitemfactory.c:
4535 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
4536 g_quark_from_static_string calls to save memory.
4538 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
4539 function _after_ the new data has been setup.
4540 minor changes to object data functions to feature the GQuark type.
4542 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
4544 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
4547 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
4549 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
4550 to be more readable perl, to spit out stuff that looks
4551 more like readable C, and to pipe output through indent
4552 so output looks a lot like readable C. No functional
4555 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
4557 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
4558 necessary when switching to a masked pixmap. (Based on a patch
4559 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
4561 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
4563 * gtk/gtkeditable.[ch]: Added action signals for keyboard
4564 bindings. (move_cursor, kill_word, etc, etc, etc).
4566 removed the time argument from
4567 gtk_editable_cut/copy/paste_clipboard (source but not
4568 binary incompatible...) Instead get time from
4569 gtk_get_current_event ().
4571 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
4574 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
4576 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
4578 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
4579 parent class to GtkNotebookClass when splitting the widget in
4580 two. Also updated some comments.
4582 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
4583 button without a font selected.
4585 Fixed bug in set_font_name - I hadn't updated the code to
4586 search for the style in the font_style clist - it was
4587 still assuming the style row was equal to its index,
4588 but it isn't any more.
4590 Changed 'Reset' button on filter page to 'Clear Filter'.
4591 Deleted old code relating to the old 'Filter Fonts' toggle
4592 Updated some comments.
4593 Cleared 'Actual Fontname' if no font is set.
4595 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
4596 destroying the GtkFontSelection instead of the
4597 GtkFontSelectionDialog.
4599 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
4601 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
4602 flag to make all warnings fatal errors.
4604 * gtk/testthreads.c: moved <pthreads.h> include inside
4607 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
4609 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
4610 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
4612 - Added new function gtk_container_set_resize_mode() for
4613 fine-grained control of where resize-queueing is done.
4615 - Removed GtkContainer::need_resize and GtkWindow::move_resize
4616 - Added GtkContainer::check_resize to replace need_resize.
4618 - Added function gtk_container_check_resize() to trigger
4619 queued resizes, and gtk_container_resize_children() to
4620 Figure which children need to be size-allocated. (logic
4621 moved from gtkwindow.c)
4623 - Reorganized code in gtkwindow.c
4625 - Set the resize-mode for viewports so that resizes within
4626 a viewport don't propagate out of it.
4628 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
4630 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
4632 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
4633 g_return_val_if_fail, because the function *does* return a value.
4635 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
4637 * gtk/gtkaccellabel.h:
4638 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
4639 request the size of the accelerator portion of an accel label.
4640 (gtk_accel_label_size_request): don't request for the accelerators size.
4641 (gtk_accel_label_expose_event): only draw the accelerator if we got
4644 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
4645 width from children.
4647 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
4648 object (after removal has been requested) check if there is still an
4649 accelerator remaining to avoid adding two accelerators on an object.
4650 this can happen for locked accelerators (or accelerator-frozen widgets).
4651 (gtk_menu_size_request): feature childrens accelerator width in size
4654 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
4655 gtk_widget_freeze_accelerators() for dynamically created menu items.
4658 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
4659 which will return a handler_id > 0 if the specified function is pending
4663 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
4664 a signal handler function to stop accelerator addition.
4665 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
4666 which will prevent (undo) any accelerators from being added to or
4667 removed from a widget.
4669 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
4671 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
4672 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
4673 acceleration, new API gtk_spin_button_set_snap_to_ticks.
4675 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
4678 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
4679 the current GdkWindow the pointer is on if there is any.
4681 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
4682 and one column, so we don't construction logic at all. changed a few
4683 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
4686 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
4687 portion, added an additional check for parent != widget.
4689 * more GtkType and macro fixups.
4691 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4693 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
4694 "clip" parameter, which is the clipping rectangle to use. This
4695 eliminates the extremely annoying flicker when exposing parts of
4698 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
4700 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
4703 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
4705 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
4706 != 0 on the argument.
4709 * gtk/gtktable.c: new function gtk_table_resize() which allowes
4710 shrinking and expanding of tables. implementation of widget arguments
4711 and child arguments. many signedness corrections.
4713 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
4715 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
4716 not only the child, otherwise we might end up taking away other
4717 childrens space after the resize.
4719 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
4720 an unknown menu path from any source, that path must always be flagged
4721 as "modified", since we don't really know whether it has its default
4726 * gtk/gtknotebook.c:
4727 * gtk/gtkmenushell.c:
4731 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
4734 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
4735 arguments. implemented child arguments.
4737 * more GtkType and macro fixups.
4739 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
4741 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
4743 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
4744 and gtk_clist_get_hadjustment.
4746 * gtk/gtkcontainer.c:
4747 implementation of children arguments, new class member functions
4748 (child_type), (get_child_arg) and (set_child_arg) plus a new field
4750 (gtk_container_child_type): new function which returns the type of a
4751 child that the container expects for its next addition.
4752 (gtk_container_add_child_arg_type): new function to introduce a new
4753 child argument at class creation time.
4754 (gtk_container_query_child_args): new function to query all child
4755 arguments that are supported by a container class.
4756 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
4758 (gtk_container_child_arg_setv): new function to set a child argument for
4759 a certain container and child combination.
4760 (gtk_container_add_with_args):
4761 (gtk_container_add_with_argv): new functions to feature addition of a
4762 new child in combination with the setting of certain child arguments.
4764 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
4765 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
4766 this should really be done through class cretion hooks some day.
4768 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
4772 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
4773 follow the gtk convention for lower case variable names (important
4774 for language wrappers and widget arguments), and made them guint : 16.
4776 * examples/packer/pack.c: adaptions for the case converted GtkPacker
4779 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
4781 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
4782 change the character pair for single line comments.
4783 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
4784 GtkItemFactoryClass.
4785 (gtk_item_factory_parse_rc_string): likewise.
4787 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
4789 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
4790 lists from the klass structure to a static structure
4791 in gtkfontsel.c; cleans up global the namespace.
4793 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
4795 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
4796 bug with /*< skip >*/ and remove warning.
4798 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
4800 * gtk/Makefile.am: Made the gtkmarshal.* generation
4801 rules maintainer-only.
4803 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
4805 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
4806 gtk/Makefile.am gtk/makenums.pl
4808 Removed out the G_ENUM/FLAGS mechanism in favor
4809 of a perl script that parses the standard headers
4810 (with occasional /*< nick=foo >*/ style overrides)
4811 and extracts the enumerations.
4813 gtk/maketypes.awk: Small improvments to the
4814 translation of names. (Avoid splitting gc into
4817 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
4819 * gtk/gtk.h gtk/gtkfontsel.[ch]:
4820 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
4822 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
4825 - Restored gtk_entry_adjust_scroll to static
4826 - Changed text positioning code so that we always
4827 display as large a portion of the text as possible.
4829 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
4831 * gtk/gtktext.c (gtk_text_finalize): Free internal
4832 structures of text widget. Also, unreference pixmaps
4835 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
4837 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
4838 3.3.1 bug workaround to number keys starting at 1.
4840 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
4842 * docs/gtk_tut.sgml: Fixed urls for complete example
4843 source for scribble+widget-writing examples.
4845 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
4847 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
4848 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
4849 specs of the form c #abcdef [ more keys ] properly.
4851 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
4853 * gtkspinbutton.h gtkspinbutton.c testgtk.c
4854 (gtk_spin_button_set_shadow_type):
4855 New API to set the shadow type of the arrow panel.
4857 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
4859 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
4860 code for drawing the child in two places at once. Unfortunately,
4861 not only does it not work anymore (because reparenting has
4862 been fixed), but it also triggers reparent/expose loops
4865 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
4866 an unecessary unrealize.
4868 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
4870 * gdk/gdkwindow.c (gdk_window_reparent): Update the
4871 old and new parents' child window lists properly.
4873 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
4876 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
4877 and GtkSideType, to be consistent with the rest of Gtk's enum
4878 definitions. wrapped the enum definitions with the G_ eunm wrappers.
4879 spelled out the GTK_ANCHOR_* enum values, since single letters don't
4880 work out corectly as nick-names (left the old values as aliases).
4881 some signdness corrections (border-width, spacing), could stand more.
4883 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4885 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
4888 * examples/packer/pack.c, examples/packer/Makefile: Added
4891 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
4893 * gtk/gtktext.c (remove_cache_line): Fixed broken
4896 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
4897 Check bounds before deleting.
4899 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
4901 * autogen.sh: Support ACLOCAL_FLAGS
4903 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
4905 * gtk-config.in: Added missing quotes.
4907 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
4909 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
4911 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
4913 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
4914 G_COMPILED_WITH_DEBUGGING.
4916 * configure.in (fd_set): Explain check better.
4918 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
4919 the version from which gtk+'s libtool forked. Needed for people
4920 who use post-1.2 alphas of libtool.
4922 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
4924 * glib/* Moved to glib module
4926 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
4927 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
4929 configuration changes for the above:
4931 - Use AM_PATH_GLIB by default to find glib; also accept
4932 a --with-glib option for using an uninstalled glib.
4934 - Put --enable-debug information into config.h so
4935 that we rebuild when it changes. (was in glibconfig.h)
4937 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
4939 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
4941 * gtk/gtknotebook.h (struct _GtkNotebookClass):
4942 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
4943 added missing argument (according to Joseph Coleman's bug report)
4945 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
4946 function to fix notebook focus handling
4948 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
4950 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
4951 glib/gutils.c glib/testglib.c glib/gdataset.c
4952 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
4953 gtk/gtktext.c gtk/gtkbindings.c:
4955 renamed g_const_pointer => gconstpointer
4957 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
4959 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
4960 invoked with (NULL, NULL); (this worked sometime ago).
4962 * gtk/gtktypeutils.h:
4963 * gtk/gtktypeutils.c: enum and flags type creation can now be done
4964 through gtk_type_register_enum() and gtk_type_register_flags(),
4965 which allow to specify the enum value arrays directly.
4966 the NULL terminated value arrays can be retrived through
4967 gtk_type_enum_get_values() and gtk_type_flags_get_values();
4968 (gtk_type_children_types): new function to query derived types.
4970 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
4972 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4973 environment to genmarshal.pl.
4974 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
4975 rule), and removed it where not needed (in the dependencies).
4977 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
4979 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
4981 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
4982 was just g_direct_hash.
4984 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
4986 * configure.in: x_libs=, not $x_libs=. Enough said.
4987 (Case only hit for --disable-xshm)
4989 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
4991 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
4992 when testing for X libraries, don't replace them. Because
4993 the user might have specified the path to the X libraries
4994 themself before running configure.
4996 * examples/**.c: Changed all gpointer * to gpointer
4998 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
5000 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
5001 fleur_cursor field. Now the cursor is created/destroyed on demand
5002 by the routines that need it.
5004 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
5005 (gtk_handle_box_motion): The fleur cursor is created and destroyed
5008 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
5010 * gtk/gtktypeutils.h:
5011 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
5012 gtk_enum_set_values to gtk_type_enum_get_values and
5013 gtk_type_enum_set_values respectively, since they are actually type
5016 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
5019 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
5021 * gtk/gtkselection.h:
5022 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
5023 gtk_selection_data_free.
5025 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
5026 for "selection_received", which was completely bogus.
5027 * other fixups to gtk_signal_new() calls all over the place.
5029 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
5030 * gtk/gtktypebuiltins_vars.c: type variable implementations.
5031 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
5033 * gtk/gtktypebuiltins_evals.c: enum value arrays.
5034 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
5036 * gtk/gtk.defs: generated file with scheme syntax for type definitions
5037 of gtk and gdk structures and enums.
5038 * gtk/gtktypeutils.h:
5039 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
5040 macros anymore (this fixes binary incompatibility with new enum
5043 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
5044 key bindings for this widget.
5045 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
5049 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
5050 again. new functions gtk_object_class_user_signal_new () and
5051 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
5052 flag on the signal creation.
5054 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
5056 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
5058 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
5064 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
5066 * reworked enum value array generation code. gtk.defs is a generated
5069 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
5071 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
5072 check menu items in the compatibility code (this required me to remove
5073 the "<check>" part from the menu item name, grrr).
5075 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
5077 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
5078 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
5080 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
5082 * gtk/gtkitemfactory.h:
5083 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
5084 additions to the dumping code to feature GtkPatternSpec.
5085 even found a bug to fix in the original code ;)
5087 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
5089 * gtk/gtkitemfactory.c: support different types of callbacks, to
5090 maintain existing code.
5092 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
5094 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
5096 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
5097 this should eventually be done by gentypeinfo.el somewhen.
5098 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
5100 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
5101 enum values of an enum type.
5109 brought enum/flags definitions in sync, added a few more enum
5110 definitions for bindings and pattern matching.
5112 * some more macro and GtkType fixups in various places.
5114 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
5115 as a key-release modifier for the binding system.
5117 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
5119 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
5120 was a stale list pointer that is already present in GtkMenuShell.
5122 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
5123 GtkMenuShell::selection_done which is emitted after the menu shell
5124 poped down again and all possible menu items have been activated.
5126 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
5128 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
5129 before activation of the menuitem, so the menu is actually taken off the
5130 screen prior to any menu item activation.
5132 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
5136 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
5137 the emission of the "add-accelerator" signal on a widget. this is
5138 usefull to prevent accelerator installation on certain widgets.
5140 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
5141 labels left justified, by setting their alignment. stop accelerator
5142 installation for the menu items, since we use dynamic menus.
5144 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
5146 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
5147 should *really* use GtkItemFactory. this is only for preserving source
5148 compatibility where possible, use of GtkMenuFactory is deprecated as of
5151 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
5152 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
5153 missed this possibility when i added gtk_object_class_add_user_signal
5156 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
5158 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
5160 * gtk/gtkaccelgroup.h:
5161 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
5163 * gtk/gtkaccellabel.h:
5164 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
5165 display of the accelerators associated with a certain widget.
5167 * gtk/gtkitemfactory.h:
5168 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
5169 parsing and accelerator handling.
5171 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
5173 (gtk_menu_map): removed the allocation code.
5174 (gtk_menu_size_allocate): care for redrawing of children and resize
5175 our widget->window correctly.
5176 (gtk_menu_key_press): feature the new accelerator groups.
5178 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
5179 submenu if neccessary.
5181 * gtk/gtkmenuitem.c:
5182 * gtk/gtkcheckmenuitem.c:
5183 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
5187 (gdk_keyval_from_name):
5188 (gdk_keyval_name): new functions for keyval<->key-name associations.
5189 (gdk_keyval_to_upper):
5190 (gdk_keyval_to_lower):
5191 (gdk_keyval_is_upper):
5192 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
5193 regards to their cases.
5195 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
5197 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
5198 widget's class path.
5199 (gtk_widget_path): new function to calculate a widget's name path.
5201 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
5202 pattern matching, features reversed pattern matches.
5204 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
5206 * examples/extract.sh, examples/extract.awk:
5207 New files to automagically extract code examples from the
5210 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
5212 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
5213 * gtk/gtkcontainer.c (gtk_container_focus_move):
5214 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
5216 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
5218 * docs/gtk_tut.sgml: minor changes to support auto
5219 extraction of example code
5221 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
5223 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
5224 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
5226 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
5228 * docs/gtk_tut.sgml:
5229 - new section on Events
5230 - change all delete_event callbacks to include
5231 a GdkEvent parameter
5232 - clean up the formatting
5234 * examples - helloworld.c, helloworld2.c, notebook.c,
5235 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
5236 rulers.c, table.c, wheelbarrow.c: change all delete_event
5237 callbacks to include a GdkEvent parameter.
5239 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
5241 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
5242 field of crossing events.
5243 (struct _GdkEventCrossing): Added the following fields: time, x,
5244 y, x_root, y_root, mode, focus, state.
5246 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
5247 crossing event structure.
5249 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
5250 changes to the crossing event structure.
5252 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
5254 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
5256 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
5258 * docs/gtk_tut.sgml:
5259 - GtkTooltips, update to current API
5260 - change all 'gpointer *data' to 'gpointer data'
5261 - other minor changes
5263 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
5265 * configure.in (LDFLAGS): Bomb out with a moderately
5266 helpful message if detection of X libraries fails.
5268 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
5271 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
5272 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
5274 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
5275 gtk/gtksignal.c gtk/gtktext.c:
5277 Fixups for warnings from adding const to type of GHashFunc,
5280 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
5281 ansi-warnings fixups.
5283 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
5285 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
5286 Locate child at (border_width,border_width), not
5287 (2*border_width,2*border_width). [ The border is _outside_
5290 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
5291 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
5293 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
5295 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
5298 1998-05-22 <sopwith@redhat.com>
5300 * gtk/gtkeventbox.c: Pass size_allocate on to the child
5301 regardless of whether it is visible or not. Also
5302 locate child at (border_width,border_width), not (0,0)
5304 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
5306 * gtk/gtkhandlebox.c: Added style_set handler.
5308 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
5309 [ From: Chris Lahey <clahey@umich.edu> ]
5311 * gtk/gtkeditable.c, gtk/gtkeditable.h,
5312 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
5313 and set_position functions to get and set the cursor position.
5315 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
5316 signal status. Make GtkText do user-controlled insertion
5317 and deletion through the Editable widget so that these
5318 signals are properly emitted.
5320 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
5321 display asterisks instead of empty space when visible = FALSE)
5323 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
5325 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
5328 1998-05-21 <sopwith@redhat.com>
5330 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
5331 custom routine for loading images specified in gtkrc's.
5333 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
5335 * configure.in: Use pthread_attr_init() as a test function,
5336 since most of the rest of -lpthread is macros on DU4.
5338 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
5340 * gtk/gtkcombo.c: implemented completion in the entry.
5342 1998-05-18 <sopwith@moebuis.labs.redhat.com>
5344 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
5346 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
5348 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
5349 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
5350 to be of runtype GTK_RUN_LAST.
5352 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
5355 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
5358 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
5360 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
5361 text retrived from GtkEntry. only intercept the Tab key if there
5362 was some text to complete.
5364 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
5366 Basic thread-awareness:
5368 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
5370 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
5371 gdk_threads_[init/enter/leave] for applications, plus
5372 gdk_threads_wake to wake the mainloop thread out of
5375 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
5377 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
5379 * gtk/testgtk.c (list_clear): Account for the fact
5380 that gtk_list_clear_items is not inclusive. (Clears
5383 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
5385 * gdk/gdk.c: include gdkkeysyms.h always
5388 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
5390 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
5391 the visibility_notify_event method and changed method order.
5393 1998-05-14 <sopwith@moebuis.labs.redhat.com>
5395 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
5397 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
5399 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
5400 from Olli Helenius <ollhel@batman.jytol.fi>.
5402 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
5404 (gtk_type_set_chunk_alloc): new function to allow allocation of new
5405 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
5408 * gtk/gtkobject.c (gtk_object_finalize): free an object through
5411 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
5413 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
5414 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
5416 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
5418 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
5419 GPOINTER_TO_UINT fixes.
5421 * gtk/gtksignal.c: Include <string.h> for memset.
5423 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
5424 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
5426 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
5427 Cleanups, comments and the ability to have rulers with
5428 a reversed direction.
5430 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
5432 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
5433 that Sopwith missed when changing stat => lstat.
5435 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
5437 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
5438 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
5439 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
5441 * gdk/gdk.c: Print sizeof() results
5442 as g_print("%ld", (glong)sizeof(foo)), to deal with
5443 sizeof() being long on Alpha's.
5445 * gtk/testgtk.c: include <string.h> for strlen
5447 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
5448 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
5450 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
5451 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
5453 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
5455 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
5456 (From: Christopher James Lahey <clahey@umich.edu>)
5458 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
5461 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
5462 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
5463 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
5464 the default relief for the toolbars buttons. Added an
5465 toggle for the toolbar test in testgtk.c.
5467 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
5469 * docs/gtk-config.1: Rewritten and hopefully improved.
5471 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
5474 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
5476 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
5478 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
5479 GtkPreview's visual and colormap, otherwise things can BadMatch.
5481 * gtk/testgtk.c (create_color_preview):
5482 (create_gray_preview): Removed pushing/popping of visual/colormap
5483 now that GtkPreview does things correctly.
5485 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
5486 (gtk_color_selection_draw_wheel): Pick the style from the correct
5487 place (the colorsel->wheel_area widget) so that the GCs will match
5488 with where we are going to paint to.
5490 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
5491 of visual/colormap now that GtkColorSelection does things the
5494 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
5496 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
5497 previously unused window->need_resize flag to mark if a window's
5498 descendents changed size while the window was not visible. In this
5499 case, when the window becomes visible, we reallocate everything,
5500 since we didn't keep track of what actually changed.
5502 (Fixes bug where changing the popdown strings of a
5503 combo to something of the same length caused them to
5504 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
5506 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
5508 [security audit by Alan Cox]
5510 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
5511 exceed maximum assumed size.
5513 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
5514 not exceed maximum assumed size.
5515 (gtk_menu_factory_remove): likewise.
5516 (gtk_menu_factory_find_recurse): likewise.
5518 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
5520 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
5521 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
5522 redrawn if that is still neccessary. don't allow queueing of already
5524 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
5525 widgets which are in the queue can be destroyed safely, handle
5526 requeueing properly.
5527 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
5528 widgets which are in the queue can be destroyed/unrealized safely.
5530 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
5532 * gtkfaq.sgml: add question on multi-threading,
5535 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
5537 * configure.in (cflags_set): preserve automake CFLAGS.
5539 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
5540 and libgdk-1.1.la. this means we need to change certain portions of
5541 the Makefile.am on major/minor version bumps.
5543 * ltmain.sh: the -release option is not required anymore.
5545 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
5546 of the first argument to be of type GtkObject. unconditionally compile
5547 this function. removed __GNUC__ dependancy of the gtk_object_ref and
5548 gtk_object_unref macro wrappers for this function.
5550 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
5554 (gtk_object_data_try_key):
5555 (gtk_object_data_force_id): these are now macros substituting the old
5556 functions. we just use the corresponding g_dataset_* functions for
5557 key->id associations. (this is to assure unique key<->id associations).
5559 1998-05-10 Stefan Jeske <stefan@gtk.org>
5561 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
5564 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
5566 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
5568 * configure.in (LIBS): Try to figure out if this
5569 is Digital Unix and we need -std1 to get the
5572 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
5574 * docs/gtk_tut_it.sgml: update of Italian tutorial
5575 translation from Daniele Canazza <dcanazz@tin.it>
5577 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
5579 * gtk/gtkfeatures.h.in: new file used as template for
5580 * gtk/gtkfeatures.h: new file to define macros indicating newly
5581 introduced features, such as GTK_HAVE_SIGNAL_INIT.
5584 (gtk_signal_emitv_by_name):
5586 new functions to emit signals with an already provided parameter set.
5587 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
5588 (gtk_signal_real_emit): prototype changes, so this functions always
5589 gets its parameters and signal structure as arguments.
5590 (gtk_signal_emit): provide the signal structure and parameter list for
5591 gtk_signal_real_emit.
5592 (gtk_signal_emit_by_name): likewise.
5594 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
5596 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
5597 signal connections through unsetting GTK_CONNECTED.
5598 (gtk_signal_handler_insert): reflect the presence of signal connections
5599 through setting GTK_CONNECTED.
5600 (gtk_signal_real_emit): only check for handler emissions if the object
5601 has the GTK_CONNECTED flag set.
5602 (gtk_signal_handler_pending): don't check for pending handlers if the
5603 GTK_CONNECTED flag is not set for this object.
5605 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
5606 a GtkObject has signal handler connections.
5608 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
5609 set for this object call gtk_signal_handlers_destroy().
5611 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
5612 multiple processing of macro args.
5614 * gtk/gtktypeutils.c:
5617 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
5619 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
5621 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
5622 draw-queue when we are done.
5624 (gtk_widget_queue_draw/_queu_resize): Always return
5625 FALSE and avoid having two idles at the same time.
5627 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
5629 * gtk/gtktext.c: Various fixes to make sure cache
5630 lines are freed if line_start_cache doesn't point to the
5631 beginning of the cache.
5633 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
5635 * style_set improvements for GtkText and GtkEntry
5637 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
5639 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
5642 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
5644 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
5645 data chunks through a global object data structure list. unlink
5646 object data before invoking its destroy function.
5647 (gtk_object_finalize): slight modification to allow usage of object
5648 data during object finalization.
5650 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
5652 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
5653 signal names, e.g. "signal-name" is now an alias for "signal_name".
5654 (gtk_signal_handler_new): allocate handlers through a global handler
5655 structure list, that's faster than memchunks.
5656 (gtk_emission_new): allocate emissions through a global emission
5657 structure list, that's faster than memchunks.
5659 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
5661 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
5663 * ltmain.sh: added a new commandline flag -postfix similar to -release,
5664 but will immediately change the library name.
5667 * gtk/Makefile.am: specify -postfix and -version-info
5669 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
5670 GTK_BINARY_AGE. calculate LT_* variables for libtool.
5672 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
5674 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
5675 background (fg_set -> bg_set confusion).
5677 1998-05-06 Stefan Jeske <stefan@gtk.org>
5679 * gtk/testgtk.c (unselect_all): Removed code that caused an
5682 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
5684 * gtk/gtksignal.c: reimplemented the signal storage system to use a
5685 linear array rather than a hash table.
5686 be carefull *not* to keep any GtkSignal pointers across invokations
5687 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
5688 general code cleanups, made all allocations through memchunks.
5689 (gtk_signal_lookup): we now do the lookup of signals through a key_id
5690 for the signal names to avoid multiple hashing of the signal name on
5691 lookups for the several hirarchy levels of an object.
5693 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
5695 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
5696 to speed things up and remove code duplication.
5698 Reintegrated buffer overflow patches, and added
5699 some extra paranoia.
5701 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
5703 * gdk/gdk.c (gdk_event_translate): A guint * was
5704 being passed where X expected a Keysym *, and
5705 keysyms are long's on Alpha Linux. This was causing
5706 segfaults in Xlib, apparently because of alignment.
5707 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
5709 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
5711 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
5712 set GDK_EXPOSURE_MASK for DrawingAreas
5714 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
5716 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
5717 (superceded by RC file reparsing capabilities)
5719 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
5720 events. (Shouldn't be sent to the InputOnly leader, which
5721 it is now by gdk_event_send_clientmessage_toall
5723 * gtk/testgtk.c: Added extra button to rcfiles test
5724 to send out _GDK_READ_RCFILES events.
5726 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
5728 * gtk/gtkselection.c (gtk_selection_clear): Fixed
5729 reversed conditionals that caused segfault on some
5732 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
5734 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
5735 cast to GTK_OBJECT for gtk_object_ref.
5737 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
5739 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
5740 checking for signal initialization in gtksignal.c.
5742 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
5743 a long debugging period ;)
5745 1998-05-05 Stefan Jeske <stefan@gtk.org>
5747 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
5748 New function to wrap XSetDashes; modified gtkctree.c to use it.
5750 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
5752 * configure.in: Added $x_libs in the other_libraries field in the
5753 check for XShapeCombineMask.
5755 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
5757 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
5759 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
5760 linear array rather than a hash table. it actually speeded up testgtk
5761 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
5762 pointers across invokations of gtk_type_node_next_and_invalidate() and
5763 therefore gtk_type_unique()!
5765 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
5766 inheritance of a class pointer.
5767 (GTK_OBJECT): modifications for speedups.
5768 (GTK_IS_OBJECT): likewise.
5769 (GTK_OBJECT_CLASS): likewise.
5770 (suggested by owen).
5772 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
5774 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
5776 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
5777 since its derivation changed 4 month ago ;(. showed up with the unique
5778 type name checking code in gtk_type_unique().
5780 * random guint->GtkType and macro fixups.
5782 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
5784 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
5785 Configure events that would result in a negative
5788 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
5790 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
5791 "glibconfig.h" and another about writing another IRC
5794 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
5796 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
5797 parameters to log are doubles. Digital Unix apparently
5798 is missing the argument in its prototype.
5800 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
5802 * gtk/gtklabel.c (gtk_label_state_changed): Don't
5803 force a clear until the widget is actually on
5806 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
5808 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
5809 to make this consistent with the gtk-1-0 tree.
5811 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
5813 * configure.in acheader.h gdk/gdkwindow.c
5814 Check for Shape extension both on the client and server
5815 side. (And, more importantly, check for the shape extension
5816 so we may include -lXext even when compiling with --disable-xshm)
5818 Don't set override_redirect on all shaped windows. It isn't
5821 * gdk/gdkwindow.c: Set ->colormap to NULL for root
5822 and foreign windows. Use this to check if we
5823 need to get the colormap from X.
5825 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
5827 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
5828 between the default and the button always in GTK_STATE_NORMAL.
5830 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
5833 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
5835 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
5836 Fix a buffer overflow on pixmaps that claim to have
5837 more than 31 characters per pixel.
5839 (gdk_pixmap_read_string): Don't wrap around strings longer
5840 than half of address space ;-)
5842 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
5843 that were used for printing integers.
5850 int foo (void) { ... }
5852 Even where there were proper prototypes elsewhere.
5854 * gdk/gxid.c (handle_claim_device): Some extra checks.
5855 It isn't safe against being fed bad X id's, but at
5856 least it should be safe against deleting all your
5859 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
5861 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
5862 to set the adjustments value when there is no current emission.
5863 [ Removed by mutual agreement owt 5/3/1998 ]
5865 * gtk/gtksignal.c: added new functions to retrive the number of
5866 existing emissions for a certain signal.
5867 (gtk_signal_n_emissions): new function.
5868 (gtk_signal_n_emissions_by_name): new function.
5870 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
5872 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
5873 set the current focus_child of a container, does proper referencing and
5874 adjusts the vadjustment/hadjustment associated with the focus widget.
5876 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
5877 containers via gtk_container_set_focus_child.
5879 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
5882 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
5883 child since not every child removal goes through this function (this
5884 showed up after gtk_container_set_focus_child() started to reference the
5885 focus_child of a container).
5887 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
5888 of a container from gtk_container_remove into this place.
5890 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
5892 * gtk/gtksignal.c: added new functions to operate on intermediate
5893 function pointers. implemented incremental blocking.
5894 (gtk_signal_disconnect_by_func): new function.
5895 (gtk_signal_handler_block_by_func): new function.
5896 (gtk_signal_handler_unblock_by_func): new function
5898 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
5900 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5901 Always show the scrollbars when the policy is
5902 GTK_POLICY_ALWAYS...
5904 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
5906 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
5907 "value_changed" if we really passed a new value.
5908 (gtk_adjustment_changed): new function to emit the "changed" signal.
5909 (gtk_adjustment_set_value): new function to emit the "value_changed"
5912 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
5914 * gtk/gtkcombo.c: Further changes to the way the window
5915 is popped up so that it will be compatible with
5916 auto-scrolling in the future.
5918 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
5920 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
5921 the combo-list is empty since that will cause the combo to operate
5922 on a non existing GtkList window.
5923 (gtk_combo_get_pos): provide the combo list with a usfull default
5925 (gtk_combo_popup_button_press): grab the focus.
5926 (gtk_combo_activate): grab the focus.
5928 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
5930 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
5931 function to reset the RC styles for a heirarchy
5933 Clear the window background if necessary in
5934 gtk_window_style_set.
5936 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
5937 rereads all previously read RC files.
5939 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
5940 (Should it just be called gdk_get_toplevels?)
5942 * gtk/testgtk.c: New test to reload RC files.
5944 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
5947 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
5948 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
5949 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
5950 the GTK_ prefix (this solution involved less changes in the
5951 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
5952 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
5953 from lars & stefan to support the derivation of GtkCtree.
5957 initial import of a tree widget derived from gtkclist, courtesy
5958 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
5961 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
5963 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
5965 (gtk_list_insert_items):
5966 (gtk_list_remove_items_internal):
5967 (gtk_list_clear_items):
5968 remove a possible pointer grab, we might get thrown into a loop
5970 (gtk_list_button_press): grab the pointer *before* selecting the child,
5971 because selection of items may cause the lists children to change,
5972 resulting in a grab release.
5973 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
5975 (gtk_list_shutdown): remove all children from the list.
5976 (gtk_real_list_unselect_child):
5977 (gtk_real_list_select_child): *always* put our internal structures into
5978 sane state *before* signal emisions (i.e. list->selection updates prior
5979 to gtk_list_item_[de]select() calls).
5981 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
5982 focused child walks out of the window.
5983 removed CAN_FOCUS for the combo arrow's button since it doesn't react
5984 to keyboard events ("clicked" connection is missing).
5986 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
5988 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
5989 getting colormap for FOREIGN windows to go along with
5990 Raster's fix for visuals.
5995 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
5997 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5998 Check to catch the case when the viewport fits in either
5999 direction or both, instead of flip-flopping infinitely.
6001 Only show/hide the scrollbars once at the end.
6003 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
6005 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
6006 Include the scrollbars in the foreach call.
6007 (gtk-fortier-980405-0.patch;
6008 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
6011 really should also include its tabs, but that might cause
6012 problems for programs if they
6014 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
6016 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
6017 resize if the size actually changed.
6018 (gtk-johannes-980414-0.patch ;
6019 johannes@nada.kth.se (Johannes Keukelaar) )
6021 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
6023 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6024 ltmain.sh ltconfig config.sub config.guess:
6026 Reverted back to libtool-1.2 (plus minor patches) so as not to
6027 force the issue for everyone else.
6029 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
6031 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6032 Updated to libtool 1.2a.
6034 * gtk/gtkclist.c: Draw the in-between lines with style->base
6035 instead of style->white.
6037 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
6039 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
6040 Cache the colormap and children of a window locally
6041 instead of fetching them from the server when needed.
6042 Huge performance difference for creating/destroying
6045 * gtk/gtkstyle.c: Find the depth from the cached
6046 visual, instead of asking the server.
6048 * gtk.m4: Distribute the new version which tries to
6049 figure out what went wrong and give helpful error
6052 * ltmain.sh ltconfig config.sub config.sh:
6053 Updated to libtool 1.2a
6055 * gtk/gtktext.c: Fixed a bug where the drawn level
6056 was being messed up when the text was scrolled
6059 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
6061 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
6062 the filesystem under you (fix from Josh)
6064 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
6066 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
6067 if the viewport already exists before iterating over it, maybe we
6068 haven't been constructed yet.
6070 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
6072 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
6073 the GtkBin widget already has a child.
6075 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
6076 check that child->parent == NULL;
6078 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
6080 * gtk/gtkselection.c (gtk_selection_clear): Only return
6081 FALSE when the clear event is been rejected, not when
6082 widget has already lost the selection. (Which should
6083 only happen when we are setting the selection to another
6086 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
6088 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
6090 Removed the "check visibility after gtk_widget_unparent" bug
6091 in hopefully the last three places.
6093 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
6095 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
6098 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
6100 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
6101 for CAN_FOCUS widgets.
6103 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
6104 adjustments for the table.
6105 (create_list): feature automatic adjustment of the scrolled window to
6106 always contain the focused child.
6107 (create_main_window): keep the focussed button always inside of the
6110 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
6111 adjustments, to contain the allocation of the currently focused child.
6112 (gtk_container_set_focus_hadjustment): new functin to set the
6113 horizontal focus adjustment.
6114 (gtk_container_set_focus_vadjustment): new functin to set the vertical
6117 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
6118 clamp the currents adjustment page into a specific range.
6120 * random GtkType fixups for gtk_*_get_type() functions.
6122 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
6124 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
6125 Account for the fact that gtk_tree_item_remove_subtree
6126 will be called recursively.
6128 Handle removing a collapsed subtree.
6130 (From Andy Dustman <adustman@comstar.net>)
6132 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
6133 root tree when removing items from a non-previously
6136 * gtk/testgtk.c: Added a remove_subtree button.
6138 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
6140 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
6141 before object removing data. This change fixes a bug where
6142 removing the last weak references would cause it to be
6145 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
6147 * gdk/Makefile.am: Removed mostly useless dependency that
6148 was causing problems for SGI's make, when used with
6149 the 'make dist' form of GTK+. (Dependency caused dependencies
6150 to be redone when BUILT_SOURCES changed)
6152 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
6154 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
6157 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
6158 to gtkitem.c so dragging can also work in lists.
6160 * gtk/gtklist.[ch]: Track child enter events and use
6161 those to allow dragging the selection.
6163 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
6165 * gtk/gtktext.c: Try enabling background pixmaps for editable text
6166 widgets. There is a bit of flashing, but not too bad. If you
6167 don't want the flashing, you can always not set a background
6170 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
6172 * gtk/gtktext.c: Fixed a bug where the drawn level
6173 was being messed up when the text was scrolled
6176 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
6178 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
6179 bug: There is no need to set the ExposureMask in the XGrabPointer
6180 (this caused DnD programs to crash).
6182 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
6184 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
6185 field to be of type guint.
6186 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
6188 (gtk_accelerator_table_install): keep a per object list of accelerator
6189 tables that refer to this object.
6190 (gtk_accelerator_table_remove): remove the accelerator table from the
6192 (gtk_accelerator_table_clean): warn if there are any object references
6193 left in an accelerator table upon destruction.
6194 (gtk_accelerator_tables_delete): new function to delete object
6195 references from the accelerator tables associated with this object.
6197 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
6198 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
6199 of an accelerator can be prevented by gtk_signal_emit_stop().
6200 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
6201 so there are no stale pointers in accelerator tables left.
6203 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
6205 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
6206 visible before we unparent it.
6208 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
6210 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
6211 running_timeouts list with the tmp_list link itself, not with a new
6212 GList structure pointing to our link. that would fill up memory and
6213 causes the GList.data fields of the running_timeouts list to point to
6214 GList structures and not GtkTimeoutFunction structures which is a
6216 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
6219 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
6221 * gtk/gtkradiomenuitem.h:
6222 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
6223 ala gtk_radio_button_set_group.
6224 (gtk_radio_menu_item_init): assure that we always have at least a group
6225 that points to self.
6227 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
6228 added g_return_if_fail() statements.
6229 (gtk_radio_button_init): assure that we always have at least a group
6230 that points to self.
6232 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
6234 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
6236 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
6238 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
6239 (Damon Chaplin), which i got wrong when applying Damon's patch the last
6242 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
6244 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
6245 that when we are running with a non-installed colormap,
6246 in 8-bit pseudo-color, we actually are using the system
6247 visual. (Fixes *Bad Match* errors on Digital Unix machines
6248 with multiple 8-bit pseudo-color visuals)
6250 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
6252 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
6253 by whoever thought that randomly changing ints to unsigned int
6254 without reviewing the code was a good idea. It is, btw not
6255 mentioned in the ChangeLog as usual, but I know it was not Elliot
6256 the culprit this time.
6258 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
6260 * Released GTK+ 1.0.0