1 Sat Dec 12 17:18:32 1998 Owen Taylor <otaylor@redhat.com>
3 * gdk/gdkfont.c (gdk_text_extents): Corrections
4 to computation of extents of text from a font set.
5 (from Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
6 and Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>)
8 Fri Dec 11 08:59:12 1998 Owen Taylor <otaylor@redhat.com>
10 * gtk/gtklistitem.c (gtk_list_item_style_set):
11 * gtk/gtklist.c (gtk_list_style_set):
12 Added "style_set" handlers.
14 Fri Dec 11 05:49:30 1998 Owen Taylor <otaylor@redhat.com>
16 * gtk/gtkclist.c (gtk_clist_style_set): Add in a "style_set"
17 handler so that the background of the clist changes
20 Thu Dec 10 22:02:49 CST 1998 Shawn T. Amundson <amundson@gtk.org>
30 docs/gtk-config.1: Version to 1.1.7
32 Thu Dec 10 20:48:19 PST 1998 Manish Singh <yosh@gimp.org>
34 * gtk/gtkclist.c: avoid void pointer math
39 * gtk/gtkvscrollbar.c: removed trailing , from enums
41 * gtk/gtksignal.c: can't use enums as a bitfield type, use guint
43 * gtk/testgtk.c: removed C++ comment added by owenpoo
45 Thu Dec 10 21:48:34 1998 Owen Taylor <otaylor@redhat.com>
47 * gtk/gtkdnd.[ch]: Added gtk_drag_source_unset()
49 Thu Dec 10 20:42:22 1998 Owen Taylor <otaylor@redhat.com>
51 * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Use
52 gdk_window_get_origin() instead of gdk_window_get_position,
53 because get_position is unreliable for plugs.
55 This is a bad hack, maybe we need GDK_WINDOW_PLUG?
57 Thu Dec 10 17:58:49 GMT 1998 Tony Gale <gale@gtk.org>
60 - re-write the GtkProgressBar section to the 1.1 API.
61 - add an Appendix listing all the signals
62 (apologies to TimJ for taking so long in using his hard work
63 in automating the extraction - thanx Tim).
64 * examples/*: bring them all upto the tutorial versions
66 Thu Dec 10 02:21:16 1998 Jeff Garzik <jgarzik@pobox.com>
68 * gtk/testdnd.c: use g_snprintf, eliminate need for string.h
69 * gtk/testrgb.c: include string.h, for strlen
71 Wed Dec 9 17:39:26 1998 Owen Taylor <otaylor@redhat.com>
73 * configure.in: Add a case for success in
74 test for XUnregisterIMInstantiate, to prevent
77 Wed Dec 9 13:06:31 1998 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
79 * gdk/gdkim.c (gdk_ic_new,gdk_ic_{set,get}_attr): Fixed argument
80 list and return type for non-XIM fallback.
82 * configure.in: Only build XIM-support if available.
84 Wed Dec 9 12:23:30 1998 Owen Taylor <otaylor@redhat.com>
86 * gtk/testselection.c (main): Add in missing 'flags'
89 * gdk/gdkproperty.c (gdk_atom_intern): Actually
90 add the atoms to the local cache.
92 Wed Dec 9 04:57:31 PST 1998 Manish Singh <yosh@gimp.org>
94 * gdk/gdkprivate.h: put text after #endif in comment
96 * gdk/gdktypes.h: change whitespace in enum to shut up makeenums.pl
98 * gtk/testdnd.c: #include <string.h>
100 Mon Dec 7 10:27:09 1998 Owen Taylor <otaylor@redhat.com>
102 * gtk/gtkwidget.c: Destroy widgets _after_ propagating unrealize
103 signals through the widget heirarchy. This is unpleasant, as it
104 causes more X traffic, but is necessary, because we have to clean
105 up our Input Contexts before destroying the X windows.
106 (from matsu-981109-0.patch)
108 Mon Dec 7 10:18:18 1998 Owen Taylor <otaylor@redhat.com>
110 Applied gtk-a-higuti-981202-0 :
111 [ a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi) ]
113 * gdk/gdk.h gdk/gdk.c
114 (gdk_mbstowcs): New function. Nearly equals to mbstowcs, but
115 implemented by a combination of Xlib functions, so
116 it works even with X_LOCALE.
117 (gdk_wcstombs): New function.
118 (g_mbtowc): Removed. No longer needed.
120 * gdk/gdk.h gdk/gdkfont.c gdk/gdkdraw.c:
121 Added _wc() variants to gdk_text_width(),
122 gdk_char_width(), gdk_draw_text(),
125 (mblen, mbtowc, wctomb, mbstowcs, wcstombs,
126 wcslen, wcscpy, wcsncpy):
127 Removed. No longer needed.
129 (gdk_iswalnum): New macro.
130 (gdk_iswspace): New macro.
132 (GdkWChar): New typedef.
134 * gtk/gtkentry.h, gtk/gtkentry.c
135 There are many changes according to the change of the
136 internal representation of text, from multibyte string
138 * gtk/gtkprivate.h, gtk/gtkmain.c
139 Removed the variable gtk_use_mb and related codes.
140 * gtk/gtkspinbutton.c
141 Some changes according to the change of type of entry->text.
142 * gtk/gtktext.h, gtk/gtktext.c
143 Changed the internal representation of text. We use GdkWchar
144 if a fontset is supplied. If not, we use guchar to save
147 Tue Dec 1 15:20:39 1998 Owen Taylor <otaylor@redhat.com>
149 * gdk/gdkwindow.c (gdk_window_new): When creating
150 a window with a specified non-system visual, use
153 Mon Nov 30 11:50:13 1998 Owen Taylor <otaylor@redhat.com>
155 * gdk/gdk.c gdk/gdkim.c gdk/gdkprivate.h gdk/gdk.h
156 gdk/gdktypes.h gtk/gtkeditable.c gtk/gtkmain.c
157 gtk/gtkentry.c gtk/gtktext.c:
159 Applied matsu-981109-0
160 [ matsu@arch.comp.kyutech.ac.jp (Takashi Matsuda) ]
162 - Change system of setting input method values
163 from varargs to a structure, similar to GC's
164 or window attributes.
166 - Various fixes to event handling.
170 * gdk/gdkim.c: Split of input method stuff into
171 a separate source file.
173 * Remove GdkIM typedef, change everything from
174 GdkIC to GdkIC * to be consistent with the
177 Wed Dec 9 00:41:41 1998 Owen Taylor <otaylor@redhat.com>
179 * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Allocate
180 correct amount of memory for strings.
182 Tue Dec 8 18:29:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>
184 * Released GTK+ 1.1.6
191 gtk/gtkrc.c: Read in default files.
193 Wed Dec 9 00:49:12 1998 Tim Janik <timj@gtk.org>
195 * gtk/gtktypeutils.h:
196 * gtk/gtktypeutils.c: added gtk_type_query() which returns a newly
197 allocated structure holding certain type specific informations.
198 fixed the big bunch of `discards const' warnings with the
199 initialization of enum/flags values.
201 Tue Dec 8 15:10:17 1998 Owen Taylor <otaylor@redhat.com>
203 * gtk/gtkwindow.c (gtk_window_transient_parent_realized):
204 Fixed order of arguments to gdk_window_transient_for().
206 Tue Dec 8 18:02:57 GMT 1998 Tony Gale <gale@gtk.org>
208 * examples/Makefile: simple top level Makefile that invokes all
209 the sub-directory Makefiles.
211 1998-12-08 Andrew T. Veliath <andrewtv@usa.net>
213 * gtk/testgtk.c: Functions to test the toolbar space style.
215 * gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
216 GtkToolbarChild to hold allocation. Set default space style to
217 GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
219 (gtk_toolbar_paint_space_line): New function; paints the separator
220 line, using "toolbar" as the detail.
221 (gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
222 style is set to SPACE_LINE.
223 (gtk_toolbar_size_allocate): Store space allocations.
224 (gtk_toolbar_insert_element): If we are a space, allocate and
225 initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
226 (gtk_toolbar_set_space_style): New function.
228 * gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
229 and LINE. Add prototype for gtk_toolbar_set_space_style.
231 Mon Dec 7 16:03:55 1998 Owen Taylor <otaylor@redhat.com>
233 * gtk/gtkthemes.h: Remove random unnecessary includes
236 1998-12-07 Damon Chaplin <DAChaplin@msn.com>
238 * gtk/gtkfontsel.c (gtk_font_selection_select_best_style): made sure
239 we only try to match styles which are currently shown.
241 (gtk_font_selection_init): set the notebook tabs homogeneous and set
242 the border, so we don't need to set the size explicitly (bad for i18n).
243 Used the clist auto-resize feature for the font and style lists on the
244 main page and all the filters. Used padding for the 'Reset Filter'
245 button instead of spaces around it (bad for i18n).
247 (gtk_font_selection_find_font): when searching for
248 a font, if we can't match both the family and foundry, we return any
249 font where just the family matches. (The foundry can even be '*'.)
251 (gtk_font_selection_show_available_styles):
252 (gtk_font_selection_realize_list): don't set the style clist row
253 colours (for the charset rows) until the clist is realized, since we
254 use the clist style's insensitive colours.
256 Mon Dec 7 13:38:06 1998 Owen Taylor <otaylor@redhat.com>
258 * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
259 _after_ doing XShmAttach. This should work everywhere,
260 and avoid the need for signal handlers or configure
263 Thu Dec 3 19:58:45 1998 Owen Taylor <otaylor@redhat.com>
265 * gtk/gtkinputdialog.c: Use _add_with_viewport() for
266 scrolled window contents.
268 1998-12-07 Federico Mena Quintero <federico@nuclecu.unam.mx>
270 * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
271 field in the structure.
273 Mon Dec 7 15:15:06 GMT 1998 Tony Gale <gale@gtk.org>
275 * docs/gtk_tut.sgml: Start mass update for GTK 1.1
276 * examples/extract.sh: Look for the best version of awk
277 * examples/extract.awk: Fix FD leak
278 * example/base: minimal example from Tutorial
280 Mon Dec 7 01:29:27 1998 Owen Taylor <otaylor@gtk.org>
282 * gtk/gtkwindow.c: New functions
283 gtk_window_set_transient_for() - set up a "transient for" relationship.
284 gtk_window_set_default_size() - set the initial size of a window
285 distinct from its minimum size.
286 gtk_window_set_geometry_hints() - Allow the user to set
287 minimum, maximum sizes, aspect rations, and gridded geometry,
288 possibly all with respect to a subwidget of the window.
289 These interfaces are still a wee bit experimental.
291 * gdk/gdk.c: Added gdk_window_set_transient_for(),
292 gdk_window_set_geometry_hints(), and gdk_window_set_role().
294 * gdk/gdktypes.h: Added new types for find-grained specification
297 * gtk/testgtk.c: Various changes to tests to test the
300 * gtk/gtkfontsel.c: Squash a few 'const' warnings.
302 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
303 call to gtk_style_set_background() to prevent egregious
306 Mon Dec 7 03:52:01 1998 Tim Janik <timj@gtk.org>
308 * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
309 signals, don't pass the data pointer twice, but swap it with the
310 object pointer (proposed on Nov 30 1998 on gtk-devel-list).
312 Mon Dec 7 03:08:39 1998 Tim Janik <timj@gtk.org>
314 * gtk/gtktypeutils.h:
315 * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
316 internal type info data to the user. if such functionality is required
317 we should provide wrapping accessors, ala gtk_signal_query(). also the
318 GtkTypeInfo structures are dynamically allocated memory portions, so
319 only the type system is really allowed to access that stuff.
321 * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
322 since it destroys the possibility to implement automatic marshaller
323 lookups some day, and it also disables third party code's ability to
324 connect to any signal.
326 Mon Dec 7 01:32:18 1998 Tim Janik <timj@gtk.org>
328 * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
329 Tab key on the entry. the focus shouldn't get lost even if completion
330 is attempted from an empty entry, since an empty entry string does
331 indeed have a valid completion meaning (complete all).
332 (gtk_file_selection_init): cast the gchar array parameter in calls to
333 gtk_clist_new_with_titles() to quit compiler warnings.
334 (check_dir): the no_stat_dirs struct must not be const, since we do
335 indeed modify its contents.
337 * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
342 changed emission allocation, so we don't use a doubly linked list
343 but link ourselfs (singly linked).
344 changed emission hooks, they get the emision parameters passed as
345 well now and are emitted during the actuall signal emission (after
346 the RUN_FIRST class method, but prior to RUN_FIRST handlers).
347 the existing restrictions do still apply to signal emission hooks,
348 i.e. an emission may not be stopped or restarted from an emission hook.
349 due to possibly huge perfomance impacts, frequent use of emision hooks
350 is also not recommended.
351 (gtk_signal_next_and_invalidate): added an
352 assertments which explicits what the code assumes anyways: a
353 maximum amount of 65535 signals.
355 * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
356 gtk_container_foreach_full() should be used instead.
359 deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
360 we provide _full variants.
362 * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
363 gtk_signal_connect_full() for long enough now.
365 1998-12-06 Marius Vollmer <mvo@zagadka.ping.de>
367 * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
368 (gtk_signal_connect_by_type): Allow only no_marshal handlers to
369 connect to signals with a NULL marshaller.
371 * gtk/gtktypeutils.c (gtk_type_get_info): New.
372 gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
374 Sun Dec 6 14:27:35 1998 Stefan Jeske <stefan@gtk.org>
376 * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
377 arrows if wrap == FALSE and interval borders are reached.
379 Sat Dec 5 21:07:09 1998 Owen Taylor <otaylor@gtk.org>
381 * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
382 long-standing typo in aspect ratio computation code.
383 (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
385 Fri Dec 4 01:20:06 1998 Lars Hamann <lars@gtk.org>
387 * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
388 valid row numbers only
389 (toggle_row): check if clist_row != NULL
391 Fri Dec 4 00:50:12 1998 Lars Hamann <lars@gtk.org>
393 * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
396 (gtk_clist_set_column_visibility)
397 (gtk_clist_column_titles_active)
398 (gtk_clist_column_titles_active)
399 (gtk_clist_column_title_passive)
400 (gtk_clist_column_title_active): few additional tests whether
401 column->button != NULL
403 Thu Dec 3 16:49:18 1998 Owen Taylor <otaylor@redhat.com>
405 * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
406 from 10 seconds, so it doesn't abort while users
407 have an ACTION_ASK menu up.
409 * gtk/gtkdnd.c: Hide the icon window between sending a a
410 drop event to the destination and displaying the
411 snapback animation, so that it doesn't hang around
414 Thu Dec 3 16:37:42 1998 Owen Taylor <otaylor@redhat.com>
416 * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
417 for the foreground of cells for CLists in the insensitive
418 state, instead of GTK_STATE_PRELIGHT.
420 Thu Dec 3 06:20:59 1998 Tim Janik <timj@gtk.org>
422 * gtk/gtkwindow.c: moved checks upon focus setting from
423 gtk_window_real_set_focus to gtk_window_set_focus, so we don't
424 emit the signal if unneccessary.
426 * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
427 containers when grabbing focus on a new widget. this is based on
428 a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
430 * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
431 flag, so we take the buttons into consideration upon the next focus
434 * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
437 Wed Dec 2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
439 * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
440 enhancement for true-color displays.
446 docs/gtk-config.1: up to version 1.1.6
448 Wed Dec 2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
450 * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
451 we release it this time
453 Wed Dec 2 01:39:02 1998 Tim Janik <timj@gtk.org>
456 * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
458 * incremented version number to 1.1.6 and made Gtk
459 dependant on GLib 1.1.6.
461 * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
462 from guint16 to gint16, since sizes bigger than 32767 are not supported
463 anyways, and aritmethics with intermediate negative values are possible
466 Tue Dec 1 00:00:04 1998 Tim Janik <timj@gtk.org>
468 * gtk/gtkscrolledwindow.c:
469 implementation of GTK_POLICY_NEVER functionality, added rationales
470 on the policy and size requisition handling at the top.
471 (gtk_scrolled_window_size_request):
472 we assume a default minimum for our child's width and height
473 if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
474 specified the dimension explicitely.
475 (gtk_scrolled_window_size_allocate):
476 do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
478 * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
479 size we require (including the child).
482 (gtk_clist_size_request): report the real size required.
484 * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
486 * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
487 need to be a static variable.
489 Mon Nov 30 22:41:25 1998 Tim Janik <timj@gtk.org>
501 * gtk/gtkscrolledwindow.h:
502 * gtk/gtkscrolledwindow.c:
503 s/scroll_adjustements/scroll_adjustments/
504 s/scroll_adjustments/set_scroll_adjustments/g
506 Tue Dec 1 22:45:58 1998 Lars Hamann <lars@gtk.org>
508 * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
510 * gtk/gtkclist.c (gtk_clist_row_move): new public function.
511 emit a row_move signal
512 (real_row_move): move source_row to dest_row
513 (gtk_clist_swap_rows): use gtk_clist_row_move calls.
514 (gtk_clist_columns_autosize): resize all columns to their optimal
516 * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
518 * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
520 Tue Dec 1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
524 * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
525 Separate vars for each, for granularity.
527 Tue Dec 1 02:19:54 1998 Tim Janik <timj@gtk.org>
529 * gtk/gtkenums.h: fixed a stupid error of mine about the run type
532 1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
534 * {gdk,gtk}/*.c: Make read-only data structures "static const" to
535 allow them to be shared, mainly including (but not limited to) the
536 GtkTypeInfo structures for each class.
538 * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
540 Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
543 Surround debug variable with #ifdef to silence gcc.
545 * gtk/gtknotebook.c (gtk_notebook_reorder_child):
546 Added initializer to quiet gcc warning.
547 Added assertion to check for null pointer deref.
549 Mon Nov 30 10:11:29 1998 Tim Janik <timj@gtk.org>
551 * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
552 system specific includes.
554 * gtk/gtksignal.c: asured that stop and restart emissions are also
555 checked and processed for not connected objects. fixed up restart
556 emission administration. invoke emission hooks after emission, hooks
557 are not supposed to muck around with the current emission, and
558 may also not cause emission restarts. fixed up stop emission
561 Mon Nov 30 06:20:36 1998 Tim Janik <timj@gtk.org>
563 * gtk/testgtk.c: added an event watcher for enter/leave based on
564 signal emission hooks.
566 * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
567 GTK_RUN_NO_HOOKS signal.
570 * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
571 to a signal with gtk_signal_add_emission_hook or
572 gtk_signal_add_emission_hook_full, and can be removed again with
573 gtk_signal_remove_emission_hook.
575 * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
576 an appropriate mask for signal runtypes for a long time now.
577 added GTK_RUN_NO_HOOKS value, which is used to flag signals
578 that do not allow the running of signal hooks.
580 1998-11-26 Michael Krause <m.krause@tu-harburg.de>
582 * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
583 argument a gint: switch_page signal delivers valid page numbers
586 Sun Nov 29 06:12:01 1998 Tim Janik <timj@gtk.org>
588 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment):
591 * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
592 check, people must use gtk_type_init().
593 fixed up type allocation for foreign fundamentals.
596 * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
597 for internal use by containers, that want to assign specific composite
598 names to their composite children.
599 added gtk_widget_get_composite_name() which will return a newly
600 allocated string, containing the composite name of a widget. valid
601 composite names can only be retrived from widgets that have a parent
602 assigned and are flagged as GTK_COMPOSITE_CHILD.
604 * gtk/gtkcontainer.h:
605 * gtk/gtkcontainer.c: added a new function
606 gtk_container_child_default_composite_name() which will return a
607 newly allocated string, holding the composite name of a containers
608 child. a default implementation is provided which will compose the
609 composite name out of the widgets type and its sequential children
610 id. this implementation can be overidden through a new class function
613 Sat Nov 28 10:57:59 1998 Owen Taylor <otaylor@redhat.com>
615 * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
616 expose_event handler - we had two expose_event
619 Sat Nov 28 03:13:42 1998 Tim Janik <timj@gtk.org>
621 * gtk/gtkscrolledwindow.h:
622 * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
623 it inherits from GtkBin now.
625 * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
627 (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
628 added check so a child gets only drawn if it's visible.
631 * gtk/gtkwidget.c: removed gtk_widget_draw_children().
634 * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
637 * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
638 added internal function gtk_widget_reset_shapes() from gtkstyle.c.
641 * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
642 argument, changed callers.
644 * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
645 it will issue a warning now.
647 * gtk/gtkcompat.h: new file to #define aliases for historic
650 * changed 8 function names for consistency and provided aliases to keep
651 source compatibility in gtkcompat.h:
652 (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
653 (gtk_container_set_border_width): renamed from gtk_container_border_width
654 (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
655 (gtk_packer_configure): renamed from gtk_packer_set_child_packing
656 (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
657 (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
658 (gtk_scale_get_value_width): renamed from gtk_scale_value_width
659 (gtk_window_set_position): renamed from gtk_window_position
661 * renamed a few recently added funtions for consistency:
662 (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
663 (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
664 (gtk_progress_configure): renamed from gtk_progress_reconfigure.
666 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
668 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
669 check for existing viewport first, and don't add one if there
672 Sat Nov 28 00:06:49 1998 Tim Janik <timj@gtk.org>
675 * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
676 gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
677 and gtk_widget_unlock_accelerators.
680 * gtk/gtklayout.c: implemented incremental freezing facility.
683 * gtk/gtktext.c: implemented incremental freezing facility.
686 * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
690 deprecated gtk_entry_adjust_scroll().
692 * random GtkType, macro and indentation fixes.
694 Fri Nov 27 22:50:15 1998 Tim Janik <timj@gtk.org>
697 * gtk/gtkclist.c: implemented incremental freezing facility, added
698 a new class member (*refresh)() which takes over the thaw
699 functionality. the clist FROZEN flag got removed on the way.
700 * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
701 and incremental freezing.
703 * gtk/gtkcalendar.c: implemented incremental freezing facility.
705 Fri Nov 27 11:41:27 1998 Raph Levien <raph@gimp.org>
707 * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
708 it still includes the core pointer in gdk_input_devices even
709 if the XInput extension is not present in the X server.
711 Fri Nov 27 12:17:15 1998 Owen Taylor <otaylor@redhat.com>
713 * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
714 get the source widget of a drag.
716 * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
717 to restrict certain targets to the same widget or to
718 the same application.
720 * gtk/testdnd.c: Test gtk_drag_get_source_widget().
722 Thu Nov 26 19:11:46 1998 Lars Hamann <lars@gtk.org>
724 * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
725 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
726 instead of GTK_TYPE_POINTER in signal definitions.
727 (patch from James Henstridge <james@daa.com.au>)
729 Thu Nov 26 18:48:44 1998 Lars Hamann <lars@gtk.org>
731 * gtk/gtkclist.c (set_cell_contents)
732 * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
733 if auto.resize == TRUE
735 * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
736 don't draw tab, if show_tabs == FALSE
737 (bug reports from Alexis Mikhailov / Dave Cole)
738 (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
739 the focus rectangle, not the hole tab.
741 Thu Nov 26 03:18:08 1998 Tim Janik <timj@gtk.org>
746 * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
747 Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
749 * gtk/maketypes.awk: changed underline substitution, so we get
750 GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
751 * gtk/makeenums.pl: likewise.
752 * gtk/gtkctree.c: adapted type names accordingly.
754 Tue Nov 24 11:31:06 1998 Owen Taylor <otaylor@redhat.com>
756 * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
758 * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
759 some code duplication.
761 * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
762 and child widgets when scrolling greater than 32k pixels.
764 * testgtk.c: Modified layout test to test scrolling over
767 Tue Nov 24 11:11:05 1998 Owen Taylor <otaylor@redhat.com>
769 * gtk/gtklayout.[ch]: Fixed up copyright message.
771 * gdk/gdkrgb.c (DM): Make the dither matrix constant
774 * gtk/gtkdnd.c: Make cursor bitmaps const.
776 * gdk/gdk.h gdk/gdkpixmap.c: Added const to
777 gdk_pixmap/bitmap_create_from_data.
779 Tue Nov 24 07:46:09 1998 Tim Janik <timj@gtk.org>
781 * docs/Changes-1.2.txt: added a section on scrolled windows and
784 1998-11-24 Andrew T. Veliath <andrewtv@usa.net>
786 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
787 buttons when setting relief for button items.
788 (gtk_toolbar_set_button_relief): Same.
790 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
792 * gdk/Makefile.am, gtk/Makefile.am:
793 Removed DEFS "+=" mess that breaks recent automakes.
794 INCLUDES is the correct way to add to CFLAGS from Makefile.am.
796 * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
797 gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
798 gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
800 Include "config.h" instead of "../config.h".
801 Now that DEFS works again, automake will automatically pass us
802 the location of config.h in -I.
804 Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
806 * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
807 gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
809 Added layout widget for scrolling arbitrarily big areas.
810 Added plug/socket widgets for interprocess embedding.
812 These widgets still, at some point, need to be
813 made more pure in their use of GDK, as opposed
816 * gtk/testgtk.c: Added test for layout widget.
818 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
820 * gtk/gtkclist.c: (gtk_clist_swap_rows): Bugfix from
821 Brandon Long <blong@fiction.net> - do the right thing with first
822 and last, which are the absolute values of row arguments row1
825 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
827 * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
828 default adjustment (from 0 to 100) instead. I'm not sure if this
829 is the correct level for the fix, but gtk_progress_bar_new()'s
830 original default behavior is restored.
832 1998-11-23 Martin Baulig <martin@home-of-linux.org>
834 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
835 we can check for latest GTK features.
837 1998-11-23 Havoc Pennington <hp@pobox.com>
839 * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
840 (gtk_toolbar_insert_element): When setting relief, also affect
843 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
845 * gtk/gtkobject.h: remove extraneous comma
847 Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
849 * gtk/gtkcontainer.c:
850 (gtk_container_add_with_args):
851 (gtk_container_addv):
852 (gtk_container_add): removed assertements for constructed containers
853 again, since this essentially breaks the "child" arg.
855 * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
856 reference count, we don't need to reference toplevels that already have
859 * gtk/gtkscrolledwindow.c: check for the composites existance in
860 _forall since we might not be already constructed.
862 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
864 * Released GTK+ 1.1.5
866 * configure.in: require GLib 1.1.5
868 Mon Nov 23 03:21:17 1998 Tim Janik <timj@gtk.org>
870 * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
872 (gtk_text_finalize): only unref the current_font if we have
875 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
882 docs/gtk-config.1: Version incremented to 1.1.5
884 Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
886 * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
887 ::text_yalign, ::activity_mode.
889 * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
890 ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
892 (gtk_progress_bar_new):
893 (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
894 (gtk_progress_bar_construct): deprecated.
896 * gtk/gtkvscrollbar.c:
897 (gtk_vscrollbar_draw_step_back):
898 (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
899 gtk_paint_arrow, to be consistent with hscrollbar.
902 added construct args ::hadjustment, ::vadjustment.
903 added args ::line_wrap, ::word_wrap.
904 (gtk_text_class_init): added scroll_adjustments signal.
905 (gtk_text_new): use gtk_widget_new.
906 (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
907 so we don't screw the reference counts and don't leave signals connected.
908 (gtk_text_destroy): disconnect adjustments signals.
909 (gtk_text_finalize): unref adjustments.
911 * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
912 added args ::indent, ::spacing, ::show_stub, ::reorderable,
913 ::use_drag_icons, ::line_style and ::expander_style.
914 (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
917 * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
919 removed ::vadjustment and ::hadjustment args, introduced
920 ::scroll_adjustments signal.
921 added ::shadow_type, ::selection_mode and ::row_height args.
922 added n_columns construct arg.
923 (gtk_clist_construct): call gtk_object_constructed().
924 (gtk_clist_set_row_height): if height is passed as 0,
925 revert to automatic height calculation.
926 (gtk_clist_destroy): before unrefing the adjustments, disconnect our
929 Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
931 * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
933 (gtk_widget_destroy): assert that we only destroy constructed widgets.
935 * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
936 to identify args that may only be used for construction.
937 GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
939 * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
940 at the end if the object is not fully constructed.
941 (gtk_object_newv): likewise.
942 (gtk_object_destroy): assert that we only destroy constructed objects.
943 (gtk_object_init): setup GTK_CONSTRUCTED from the
945 (gtk_object_default_construct): new function to complete default
946 construction of an object by applying missing construtor args with
947 default values of 0, 0.0 or NULL.
948 (gtk_object_constructed): new function to mark an object as being
949 constructed (used from within constructors).
951 * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
952 so it is immediatedly available for the caller.
954 * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
955 the object initilizer (GtkObjectInitFunc takes a second arg now, the
956 real klass), and asure that object initializers may temporarily alter
959 Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
961 * gtk/testgtk.c: change all occourances of gtk_container_add (
962 scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
963 for widget!=(clist, ctree, text, viewport).
966 (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
967 to add children to the scrolled window.
969 * gtk/gtkscrolledwindow.h:
970 * gtk/gtkscrolledwindow.c:
971 changed scrolled_window->viewport to scrolled_window->child, and use
972 gtk_widget_scroll_adjustements() to set the scroll adjustments for the
973 widget, we do not create an additional viewport anymore.
974 added ::hadjustment and ::vadjustment constructor args.
975 (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
976 (gtk_scrolled_window_set_hadjustment):
977 (gtk_scrolled_window_set_vadjustment): new functions that superceed
978 gtk_scrolled_window_construct.
979 (gtk_scrolled_window_construct): deprecated this function.
981 * gtk/gtkhscrollbar.c:
982 * gtk/gtkvscrollbar.c:
985 support a constructor arg "::adjustment", and use gtk_widget_new() for
988 * gtk/gtkrange.c: added ::update_policy arg.
989 (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
990 a default adjustment so this function can be used for derived widgets
991 that depend on the adjustment's existance.
992 (gtk_range_destroy): disconnect the adjustment signal, so we don't
993 get called after we got destroyed, we don't destroy the adjustment
994 in here, because it might have been provided from another widget.
996 * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
997 (gtk_viewport_destroy): same as gtk_range_destroy.
999 * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
1002 * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
1003 gboolean, indicating whether this widget supports activation.
1004 added gtk_widget_scroll_adjustements() to set the scrolling
1005 adjustments of a widget.
1007 Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
1009 * gtk/gtkoptionmenu.c:
1010 (gtk_option_menu_remove_contents):
1011 (gtk_option_menu_update_contents): removed
1012 gtk_container_[un]block_resize() pairs.
1014 * gtk/gtknotebook.h:
1015 * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
1016 be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
1017 wrtie-only argument.
1019 * *.c: made deprecated functions issue a message:
1020 gtk_clist_set_border, gtk_container_block_resize,
1021 gtk_container_unblock_resize, gtk_container_need_resize,
1022 gtk_object_class_add_user_signal, gtk_spin_button_construct,
1023 gtk_scrolled_window_construct.
1024 removed non-functional functions:
1025 gtk_container_disable_resize, gtk_container_enable_resize,
1026 gtk_clist_set_policy.
1028 Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
1030 * gtk/gtkbox.c (gtk_box_init):
1031 * gtk/gtkdrawingarea.c (gtk_drawing_area_init):
1032 * gtk/gtkeventbox.c (gtk_event_box_init):
1033 * gtk/gtkfixed.c (gtk_fixed_init):
1034 * gtk/gtkframe.c (gtk_frame_init):
1035 * gtk/gtkhandlebox.c (gtk_handle_box_init):
1036 * gtk/gtkpacker.c (gtk_packer_init):
1037 * gtk/gtkmisc.c (gtk_misc_init):
1038 * gtk/gtkpreview.c (gtk_preview_init):
1039 * gtk/gtkprogress.c (gtk_progress_init):
1040 * gtk/gtkprogressbar.c (gtk_progress_bar_init):
1041 * gtk/gtkseparator.c (gtk_separator_init):
1042 * gtk/gtktable.c (gtk_table_init):
1043 * gtk/gtkviewport.c (gtk_viewport_init):
1044 * gtk/gtkalignment.c (gtk_alignment_init):
1045 removed setting of the GTK_BASIC flag.
1049 removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
1051 * miscellaneous GtkType and macro fixups.
1053 Sat Nov 21 18:53:13 1998 Owen Taylor <otaylor@redhat.com>
1055 * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
1056 Fixed so it at least works with window managers other
1057 than Enlightenment, though it probably needs to be
1060 1998-11-21 Andrew T. Veliath <andrewtv@usa.net>
1062 * gtk/gtkhandlebox.[ch]: Add shadow_type and
1063 gtk_handle_box_set_shadow_type function (plus a
1064 GtkHandleBox::shadow arg) to allow configuration of shadow in the
1067 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1069 * gtk/gtkcalendar.c: Fix for marking days from
1070 Dan Reish <dreish@izzy.net>.
1072 Thu Nov 19 00:15:27 1998 Lars Hamann <lars@gtk.org>
1074 * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
1075 in row_list. (from Samuel Solon <ssolon@usa.net>)
1077 * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
1078 (gtk_clist_get_column_widget): return column widget
1080 Wed Nov 18 11:54:57 1998 Owen Taylor <otaylor@redhat.com>
1082 * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
1083 that are sent to a toplevel but are not within the
1086 * gdk/gdkdnd.c gdk/gdk.h: Added support for a
1087 XdndProxy atom which proxies the drag to another window.
1089 1998-11-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
1091 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
1092 that it is not needed.
1094 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
1095 * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
1096 function to correctly determine gdk window position relative to
1097 its "root window" - contains check for an Enlightenment
1098 virtual root window.
1099 * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
1100 gdk_window_get_deskrelative_origin to get the origin of dragged
1101 handleboxes correctly. Now it works correctly with E.
1103 Tue Nov 17 1998 Tuomas Lukka <lukka@iki.fi>
1105 * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
1106 getting types even though we were not using real type names,
1107 just the index. This caused random crashes when more than
1108 256 types were defined.
1110 1998-11-17 Martin Baulig <martin@home-of-linux.org>
1112 * gtk/genmarshal.pl: Put output files in the current directory
1113 and not in the $(srcdir) since the VPATH is ignored for built
1116 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
1119 * gtk/Makefile.am: check for unchanged autogenerated files, so
1120 we don't rebuild everything just for adding a new function
1122 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1125 gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
1126 code thanks to GNOME stock by Eckehard Berns. New function
1127 gtk_pixmap_set_build_insensitive to provide ability to turn
1130 Tue Nov 17 00:06:29 1998 Lars Hamann <lars@gtk.org>
1132 * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
1133 new guints : tab_hborder, tab_vborder; marked tab_border deprecated
1134 (struct _GtkNotebookPage): new flags : expand, fill, pack
1136 * gtk/gtknotebook.h/c
1137 (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
1139 (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
1140 (gtk_notebook_set_tab_hborder): new function. set tab_hborder
1141 (gtk_notebook_set_tab_vborder): new function. set tab_vborder
1142 (gtk_notebook_query_tab_label): new function. get tab_label widget.
1143 (gtk_notebook_set_tab_label): new function. set tab_label widget.
1144 (gtk_notebook_set_tab_label_text): new function. set tab_label text.
1145 (gtk_notebook_query_menu_label): new function. get tab_label widget.
1146 (gtk_notebook_set_menu_label): new function. set tab_label widget.
1147 (gtk_notebook_set_menu_label_text): new function. set tab_label text.
1148 (gtk_notebook_set_tab_label_packing): new function. set tab_label
1149 fill, expand, fill_type
1150 (gtk_notebook_query_tab_label_packing): new function. get tab_label
1151 fill, expand, fill_type
1153 (gtk_notebook_real_page_position): return logic page number
1154 (gtk_notebook_search_page) search next/prev logic page
1155 (gtk_notebook_update_labels): set logic page number.
1156 (gtk_notebook_page_compare): renamed gtk_notebook_find_page
1157 (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
1158 CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
1159 (gtk_notebook_button_press) (gtk_notebook_key_press)
1160 (gtk_notebook_focus) (gtk_notebook_pages_allocate)
1161 (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
1162 use gtk_notebook_search_page
1163 (gtk_notebook_page_allocate): fixed allocation bug
1164 (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
1165 (gtk_notebook_init): unset GTK_NO_WINDOW flag
1166 (gtk_notebook_size_request): check whether page->child is visible.
1167 changes due to tab h/vborder, homogeneous tabs
1168 (gtk_notebook_paint): don't draw invisible tabs
1169 (gtk_notebook_switch_page): calculate page_num if it's less than 0
1170 (gtk_notebook_append_*) (gtk_notebook_prepend_*)
1171 (gtk_notebook_insert_page): removed sanity checks
1173 * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
1175 Mon Nov 16 15:10:33 1998 Owen Taylor <otaylor@redhat.com>
1177 * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
1178 (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
1180 * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
1181 broken. (GtkWidget's default unmap handler should work fine).
1182 Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
1184 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
1186 * gtk/gtkmenubar.[ch]: added shadow_type setting and
1187 gtk_menu_bar_set_shadow_type function to allow shadow
1188 configurability for menubars
1190 * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
1193 Mon Nov 16 00:17:53 1998 Tim Janik <timj@gtk.org>
1195 * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
1196 class creation and parent class' object initializer.
1198 1998-11-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
1200 * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
1201 have assigned it to the window -- there is no point in keeping it around.
1202 (gtk_paned_unrealize): No need to destroy the cursor here.
1204 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
1207 Fri Nov 13 11:22:38 1998 Owen Taylor <otaylor@redhat.com>
1209 * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
1210 (gtk-blizzard-981005-0.
1211 Christopher Blizzard <blizzard@applied-theory.com)
1213 * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
1214 gdk_pixmap_foreign_new to gdkx.h.
1216 Fri Nov 13 16:06:48 1998 Owen Taylor <otaylor@redhat.com>
1218 * gtk/Makefile.am: Added rules to generate an empty
1219 GTK+ theme called "Default" upon installation.
1221 * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
1222 of fonts and fontsets.
1223 (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
1225 * gtk/gtkmain.c: Change test to detect glibc's
1226 utf8 based mb* functions to be more specific.
1228 * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
1231 Fri Nov 13 16:43:36 1998 Lars Hamann <lars@gtk.org>
1233 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
1235 (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
1236 event_window if draw_indicator is set
1237 (gtk_toggle_button_set_mode):
1239 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
1241 * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
1242 ensure proper type (SunPro cc complains)
1244 * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
1246 * gtk/gtktogglebutton.c: use our own draw method so we get proper
1247 redraws on active state
1249 Thu Nov 12 00:26:13 1998 Lars Hamann <lars@gtk.org>
1251 * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
1254 * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
1257 Wed Nov 11 19:54:58 1998 Lars Hamann <lars@gtk.org>
1259 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
1260 (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
1261 added ARG_WINDOW_PLACEMENT
1263 * gtk/gtkclist.c (size_allocate_columns): resize column if column
1264 button > column width and auto_resize is set
1265 (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
1266 consider column button width of auto resized columns
1267 (gtk_clist_parent_set): removed
1269 * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
1270 (auto_resize_columns): auto_resize all columns
1271 (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
1272 (column_auto_resize): respect column button width of auto resized
1275 1998-11-10 Martin Baulig <baulig@merkur.uni-trier.de>
1277 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
1278 we can check for latest GTK features.
1280 Mon Nov 9 00:39:20 1998 Lars Hamann <lars@gtk.org>
1282 * gtk/gtkenums.h : new enum GtkCornerType
1283 * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
1285 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
1286 new method to set window_placement.
1287 (gtk_scrolled_window_viewport_allocate)
1288 (gtk_scrolled_window_size_allocate): few changes due to
1290 * gtk/testgtk.c (remove_selection): fixed while loop.
1292 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
1294 * gtk/gtkclist.c: check if column[i].button is valid before calling
1295 gtk_widget_intersect on it in gtk_clist_draw
1297 * gtk/gtkdnd.c: removed unused variable empty_bits
1299 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
1301 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
1302 a boolean (thanks to Elrond for noticing this)
1304 1998-11-07 Jay Cox <jaycox@earthlink.net>
1306 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
1307 * gdk/gdkxid.c: declare xid_ht static
1308 * examples/*/Makefile: get the link ordering right.
1310 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
1312 * gtk/gtkclist.c (gtk_clist_realize): Set background of
1313 title button window to GTK_STATE_NORMAL instead of
1314 GTK_STATE_SELECTED to avoid ugly flicker.
1316 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
1318 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
1319 if adjustments are NULL and list size has changed
1320 (gtk_clist_size_request): return real list requsition,
1321 if adjustments are NULL.
1322 (size_allocate_columns): use button->requisition.with, if column
1324 (list_requisition_width): new function. return full list width.
1325 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
1326 auto create adjustments.
1327 (gtk_clist_motion) (move_vertical) (move_horizontal):
1328 check adjustment != NULL.
1330 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
1332 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
1333 a clear/redraw, not just a redraw, so the focus
1334 gets undrawn properly.
1336 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
1337 Chain to gtk_widget_unrealize() instead of duplicating
1340 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
1342 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
1343 last vestiges of old DND.
1345 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
1347 * gtk/gtkentry.c: Restored inner border to entries,
1348 erase cursors to background image.
1350 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
1352 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
1353 it was identical to paint_flat_box().
1355 * gtk/gtkstyle.c: Coding style fixups.
1357 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
1360 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
1361 Change 'side' for paint_[box/shadow]_gap and paint_extension
1362 to be GtkPositionType instead of a random int.
1364 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
1365 "frame" as detail - an aspectframe should draw identical
1368 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
1370 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
1371 from combine_child_shapes().
1373 * gdk/gdkwindow.c: Merge propagate_shapes() and
1374 propagate_combine_shapes() to remove code duplication.
1376 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
1378 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
1379 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
1380 So allocate some mem if it's not already done.
1382 * clist scrollbar merges from HEAD
1384 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
1386 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
1388 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
1389 of 0x80000000, so we stay within the bounds of a postive signed
1390 int (it broke some compilers)
1392 * gtk/gtkmenushell.c
1393 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
1394 when some of the menuitems are hidden
1396 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
1399 * gtk/gtkwidget.c: add a dummy continue after the line label
1400 next_rect, since some compilers don't like label: }
1402 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
1404 * Okay, so we need the X11R6 keysyms so programs don't have to
1405 worry about them. They don't conflict anyway. Reverted the #ifdef
1408 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
1409 special rule for them (X-derived-headers)
1411 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
1413 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
1414 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
1415 portable, and we really shouldn't be using awk anyway.
1418 * makekeysyms.awk: bye bye
1420 * gtk/gtkaccelgroup.c
1423 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
1425 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
1427 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
1428 and gdkkeysyms.h. Remove those files from CVS.
1430 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
1432 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
1433 of the USE_XIM #ifdef
1435 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1436 even with --include-deps. Slightly different from timj's fix, to avoid
1437 circular dependency with gtkmarshal.c
1442 * gtk/gtkfontsel.[ch]
1445 * gtk/gtkobject.[ch]
1446 * gtk/testgtk.c: merges from HEAD
1449 * gtk/gtkradiomenuitem.c
1450 * gtk/gtktreeitem.c: cleanups
1452 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
1454 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
1456 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
1458 * configure.in: AIX has libpthreads, to make sure you can have
1459 more than one thread. Also add -D_THREAD_SAFE, and reorder
1460 configure.in so CFLAGS doesn't get clobbered when we actually
1463 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
1466 * gtk/testdnd.c: removed unused variable "buf"
1468 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
1470 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
1471 remove_link(), not remove()
1473 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
1475 * gdk/gdkrgb.c: use glib endian stuff
1477 * configure.in: don't need to check for endianness anymore
1479 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
1481 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
1483 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
1484 all toplevel widgets, not toplevel windows. (I.e.,
1485 plugs should be reset)
1487 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
1488 _do_ need to notify the other toplevels - by the time
1489 the get the client messages, the RC file dates will
1492 * gtk/gtkcontainer.h: Added a function call to list
1493 every toplevel widget.
1495 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
1496 Don't send client messages to _every_ window on display!
1498 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
1500 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
1501 when dragging across widgets, only in drags
1504 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
1506 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
1507 Emit "drag_end" signal at end of drag.
1509 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
1511 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
1512 for "gtk-embedded" data currently set by
1513 GtkSocket, and use that to forward client message
1514 on to embedded windows. Only reset our own toplevel -
1515 the others will handle themselves. (Now that
1516 GtkMenus live in GtkWindows)
1518 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
1520 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
1521 client window finding code so that it works with
1522 WM's other than fvwm.
1524 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
1526 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
1527 the "GtkDrawWindow" class, which is a descendent
1528 of the Window class which leaves its background alone.
1529 Essentially, a toplevel drawing area, though it does
1530 allow adding a child.
1532 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
1534 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
1535 merging RC styles. Report new share/themes path for
1536 themes directory. Deref theme engines when appropriate.
1538 * gtk/gtkclist.c: Set all backgrounds in _style_set().
1539 Make sure that pixel for xor_gc is never 0.
1541 * gtk/gtkctree.c: Choose colors for plus/minus more
1542 carefully, in a hopefully style-independent fashion.
1543 (Still needs a bit more work)
1545 * gtk/gtkwidget.c: Don't send expose events to widgets
1546 which are about to be resized and redrawn. (Needs a
1549 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
1550 drawing on tabs for newly allocated, un-sized
1551 pages - we'll get the size wrong.
1553 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
1555 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
1556 up stupidities in last commit.
1558 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
1560 * gtk/gtkwidget.c: When handling queued resizes, account
1561 for handleboxes, where the widget heirarchy is different
1562 than the window heirarchy by just queueing a resize on
1563 the entire handlebox if the detached child is changed.
1565 - Remove widgets from the redraw queue when reparenting,
1566 even if not unrealizing. We queue a resize/redraw in
1569 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
1570 * gtk/gtkstyle.c: added check to see if the widget has been shaped
1571 byt the app via gtk_widget_shape_combine_mask and if it has does
1572 not reset the shape on theme change.
1574 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1576 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1577 want to stat the entries (like /afs), and assume everything in
1578 those directories is a subdirectory.
1580 - When following a path, try to open components even when
1581 we don't find them in their parent's directory to
1582 support automounters.
1584 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
1586 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
1587 now at least compiles again.
1589 * gdk/gdk.c (gdk_event_translate): Don't pass events
1590 on destroyed widgets to the gdk_input layer.
1592 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
1594 * gtk/gtkthemes.c: Use g_module instead of dlopen()
1596 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
1598 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
1599 if we've changed widgets since the expose event
1602 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
1604 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
1605 to restore approximate bin compatibility with the
1606 non-themes branch. (This does break bin compat
1607 within the themes branch.)
1609 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
1611 * gtk/gtklabel.c (gtk_label_set): Eliminate a
1612 gdk_window_clear_area() that snuck in with the
1613 menu underlines merge.
1615 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
1617 * gtk/gtktext.c: Fixed some remaining background drawing,
1618 merges from main branch, cleanups.
1620 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
1622 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
1623 dereference NULL focus tab.
1625 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
1626 functions since we need to both show/hide and
1627 queue a redraw. (There's some duplication of drawing here,
1628 we probably should only be queuing a redraw on the
1629 "value" portion of the scale.)
1631 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
1633 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
1634 into the theme-drawing framework. We do this by making them,
1635 like check/radio-buttons, no-window widgets with subwindows. We
1636 then move the value by calling gtk_widget_queue_clear() and only
1637 redraw the value in our draw() / expose() handler. A virtual
1638 function clear_background is added which queues a clear on the
1639 "background" portion of the widget.
1641 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
1643 * gtk/gtktext.c (mark_bg_gc): Make background colors work
1644 again. (We can't always paint the background with a
1645 paint() function - only do that for selected text)
1647 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
1649 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
1650 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
1652 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
1653 the themes can't be built as part of the same build since
1654 they depend on gdk_imlib.
1656 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
1658 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
1661 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
1664 - Upgrade to libtool-1.2b + patch to add shared library dependencies
1665 for Linux. (Needs to be extended to other platforms where they
1668 - Check for -ldl so this branch should build on all platforms, though
1669 themes will work on all platforms they could work on.
1671 - Use -version and -release simultaneously: sonames stay as they are
1672 in the current scheme, but -lgtk-1.1 changes to -lgtk.
1674 - Added in extra -l flags to library LDFLAGS so we get shared library
1675 dependencies against X libs and -ldl. (But not libgtk against
1676 libgdk or libglib yet, since dependencies against uninstalled
1677 libraries aren't portable)
1679 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
1680 * gtkrc.c - added api calls to find module and theme paths from gtk.
1681 nuked gtk_install_prefix global.
1683 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1684 * fixed gtk_install_prefix global.
1686 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
1687 * added gtk_install_prefix global const variabel to find where gtk is
1690 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1691 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
1694 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1695 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
1697 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
1698 * Fixed minor problem in gtkhandlebox.c with drawing, and some
1699 notebook stuff. Also pixmap theme is now "clean" again.
1701 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
1702 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
1703 queued area resizing once more.
1705 Mon Aug 10 23:09:30 EDT 1998
1706 * Added a few drawing fixes for notebook and other widgets. finished
1707 pixmap theme up to the level that can be supported so far. (need to
1708 add path discovery 9ie where is the rc fiel from - add to pixmap
1709 path so we can get theimages from there too). then we can package
1710 themes. After that need to add to theme seartch path stuff in users
1713 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
1715 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
1716 drawing area, draw in an expose handler.
1718 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
1721 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
1723 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
1724 creation of GC's so that they will be set before
1725 they are used for map events (why are they used there?)
1727 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
1728 be queued in multiple times in the queue.
1730 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
1732 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
1733 clip rects (or do anything) for shadow_none.
1735 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
1737 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
1738 Yes, it was needed. draw() and expose() are _not_
1741 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
1742 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
1744 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1745 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
1746 more baby oooh yeah more more MORE YES YES.
1748 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1749 * hopefully fixed problem wiht togglebuttons acting like
1750 radiobuttons in gtktogglebutton.c
1752 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1753 * fixed another drawing buglet in the frame drawing code (actually
1754 in the clearing code but anyway in gtkstyle.c)
1756 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
1757 * Fixed warning from colorsel widget...
1759 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
1760 * Fixed defautl drawing code to no longer clobber the original style
1761 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
1764 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
1766 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
1768 * gtk/gtktooltips.c: Pass a widget (the window) to the
1769 drawing function instead of the GtkTooltips.
1771 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
1773 * gdk/gdkwindow.c: Abstract out checking for shape
1774 extension into a function.
1776 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
1777 Remove extra callls to gtk_window_draw().
1779 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
1781 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
1783 * themes/th_main.c: Moved messages around so they are
1784 printed before destroying strings.
1786 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
1788 * gdk/gdk.c: Fairly simple implementation of expose compression.
1789 (No GraphicsExpose compression yet, always compress
1790 with the equivalent of XtCompressMultiple - no compression
1791 of Expose events across non-Expose events)
1793 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
1794 Find rectangle bounding two rectangles.
1796 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
1797 in gdk_default_draw_shadow()
1799 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
1800 * Fixed drawing functions to handle switching themes on the fly
1801 gracefully and look decent.
1803 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
1804 * Added all the theme drawing code to all widgets, fixed up minor
1805 nigglies in some widgets when it comes to themes, seem to be
1806 running into some funky behavior with clipping rects in GC's. Too
1807 many files to list here. (all files that now use gtk_paint_* are
1810 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
1812 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
1813 Set up the demo theme so it is loaded from the RC file.
1815 * themes/th_draw.c: Alleviate the hardcoded paths a wee
1816 bit. (use $HOME/themes/)
1818 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
1819 the RC file via dlopen()
1821 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
1823 Internal handling of styles and RC styles pretty much
1824 completely reworked for Theme work.
1827 - Added routines for virtualization of RcStyle and Style handling.
1828 - Temporary "sample" inline theme-engine. (Does nothing
1829 but print out a few messages.
1832 - Made GtkRcStyle public, added flags to tell if particular
1833 colors have been set.
1834 - RC Styles are "transparent", and the final style for
1835 a widget is the composition of all matching styles
1836 - Added pointer to GtkThemeEngine, and gpointer engine_data
1837 to RC style and style.
1838 - Parse "engine" keyword, load the appropriate theme engine
1839 and call the engine's parser.
1842 - Keep a GtkRcStyle * in styles created from Rc Styles.
1843 - Load up images from RC file at style attachment time.
1844 - Call ->engine->foo() at appropriate times.
1845 - Don't use a GCache. All incarnations for a style are
1846 just linked together in a list, depend on the RC style
1847 code to find the existing copy.
1849 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
1851 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
1852 of partial areas. This can be done either relative
1853 to the existing windows (gtk_widget_queue_clear[_area]())
1854 or relative to the future allocation of the widget
1855 (gtk_widget_queue_draw[_area]).
1857 The initial implementation is pretty braindead, but
1860 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
1861 in favor of gtk_widget_queue_clear().
1863 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
1864 flags in favor of gtk_widget_queue_clear()
1866 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
1868 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
1869 handling of partially clipped areas.
1871 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
1873 * gtk/gtkclist.h (struct _GtkCListClass)
1874 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1876 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
1878 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
1879 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
1881 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
1882 "hadjustment" & "vadjustment"
1883 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
1884 set/get_arg functions
1885 (gtk_clist_construct): don't create/adjust scrollbars.
1886 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
1887 to set h/vadjustments
1888 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
1889 to query h/vadjustments
1890 (create_scrollbars): removed.
1891 (create_adjustments): replacement for create_scrollbars
1892 (gtk_clist_new): call gtk_clist_new_with_titles
1893 (gtk_clist_new_with_titles): don't warn on titles == NULL
1894 (move_horizontal): use CLAMP instead
1895 (gtk_clist_set_policy): deprecated method.
1896 use gtk_scrolled_window_set_policy instead.
1897 (vadjustment_value_changed): use clist->vadj.
1898 (adjust_scrollbars): renamed to adjust_adjustments
1899 (adjust_adjustments): former adjust_scrollbars
1900 (gtk_clist_destroy): unref adjustments
1901 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
1902 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
1903 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
1904 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
1905 (gtk_clist_set_row_height) (real_resize_column):
1906 call adjust_adjustments
1907 (gtk_clist_moveto): return if clist has no adjustments yet.
1908 (gtk_clist_parent_set): new GtkWidget::parent_set function.
1909 Autogenerate h/vadjustments if needed.
1910 (move_horizontal) (move_vertical): some cleanups
1912 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
1913 call only gtk_viewport_set_h/vadjustment and let these functions
1915 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
1916 generate a new adjustment if needed
1918 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
1919 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
1921 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1922 queue_resize if visibility of scrollbars changes
1923 (gtk_scrolled_window_remove): only call container_remove with
1924 scrolled_window->viewport automatically if viewport was autogenerated
1925 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
1926 auto create a viewport only if widget does not take h/vadjustments.
1927 (gtk_scrolled_window_construct): don't generate a viewport
1929 (gtk_scrolled_window_forall): call callback with viewport in any case
1930 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
1932 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
1933 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
1937 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
1938 in conjunction with clists/ctrees
1940 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
1941 in conjunction with clists
1943 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
1944 in conjunction with clists
1946 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
1948 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
1949 (gtk_ctree_remove_node): select focus_row if needed
1950 (cell_size_request): only get pixmap size if pixmap != NULL
1952 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
1954 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
1955 GTK_IS_WIDGET (widget):
1957 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
1959 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
1960 focus_row after a remove_row call.
1962 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
1964 * gtk/gtkoptionmenu.c
1965 * gtk/gtkmenushell.c: make option menus work when some of the
1966 menuitems are hidden - previously, option menu would popup too
1969 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
1971 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
1973 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
1975 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
1977 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
1978 (GDK_WLIBS): New variable. Lists extra libraries needed to use
1980 * gtk-config.in (--libs): List $GDK_WLIBS, too.
1982 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1984 * Released GTK+ 1.1.3
1990 * docs/gtk-config.1: updated for v1.1.3
1994 * docs/Makefile.am: Includes new 'make release' as well as
1995 'make sanity'. Also handles html and text creation from html,
1996 and puts them into the distribution
1998 * docs/Makefile.sgml: removed, similar functionality is now in
1999 the Makefile.am file
2001 * docs/.cvsignore: ignore html and text directories
2002 * docs/glib.texi: removed (now in glib dist)
2004 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
2006 * gtk/gtklist.c (gtk_list_remove_items_internal):
2007 free undo_un/selection, unselect list_item before disconnect
2009 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
2011 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
2012 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
2013 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
2014 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
2015 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
2016 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
2017 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
2018 new functions. These functions are signal connected to inserted
2019 list_items, to handle key bindings and GtkItem::de/select/toggle
2022 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
2023 gtk_object_class_add_signals call.
2024 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
2025 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
2026 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
2027 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
2028 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
2029 removed. These functions are handled via connected
2030 gtk_list_signal_* functions now
2032 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
2034 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
2035 even with --include-deps:
2036 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
2038 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
2040 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
2041 gtk_object_data_set_destroy to fit the gtkobject.h API.
2043 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
2046 Added support for an extra 'base' filter which an application can
2047 set to restrict the fonts available to the user (e.g. a terminal
2048 program only wants the user to be able to select fixed-width fonts).
2049 The type of font (bitmap/scalable/scaled bitmap) is now
2050 also a part of the filter, so that an application can
2051 request that only scalable fonts are shown.
2052 There are new functions to set the base & user filters.
2053 I've also stopped the up/down key press signals getting
2054 to the clists since the font selection widget handles
2055 them itself. It acted a bit strangely before.
2057 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
2059 * gtk/gtkmain.c (gtk_init): support an environment variable
2060 GTK_MODULES= which takes a colon sperated list of module names
2061 automatically loaded at gtk_init() startup.
2063 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
2065 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
2067 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
2069 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
2072 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
2074 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
2077 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
2079 * gtk/gtkfilesel.h: GtkType and macro fixups
2080 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
2081 for the file selection widget to try a completion on (set the
2084 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
2086 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
2087 slight speed improvement and lessens code duplication.
2089 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
2091 * gtk/gtkdnd.c: Always send "drag_leave" to dests
2092 without GTK_DEST_DEFAULT_MOTION.
2094 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
2096 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
2097 on destroyed windows so we clear the XID table properly.
2098 Finish up restructure of return value handling that
2099 was half-done before.
2101 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
2103 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
2104 the window tree more comprehensively, so that we find
2105 client windows hidden under non-toplevels.
2107 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
2109 * gtk/gtkselection.c (gtk_selection_data_set):
2110 Maintain the null-termintation guarantee, even when
2111 data = NULL, length = 0. (Warn on data = NULL,
2114 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
2116 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
2117 into function prototype for drag_data_received.
2119 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
2121 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
2123 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
2125 * gtk/gtkclist.c: rearranged some functions
2126 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
2128 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
2129 (gtk_clist_set_border): deprecated function, use
2130 gtk_clist_set_shadow_type instead.
2131 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
2132 (adjust_scrollbars): some cleanups
2133 (select_row) (unselect_row): removed. replaced by equivalent
2134 gtk_signal_emit calls
2135 (add_style_data): removed, use gtk_clist_style_set instead
2136 (gtk_clist_style_set): fill in size data, after style was set.
2137 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
2138 (gtk_clist_set_cell_style): auto_resize columns if needed
2139 (column_auto_resize): resize column if needed for auto_resize
2140 (real_clear): disable auto_resize while list destroy
2141 (resize_column): removed
2143 * gtk/gtkctree.c : (gtk_ctree_remove_node)
2144 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
2145 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
2146 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
2147 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
2148 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
2149 auto_resize columns if needed
2150 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
2151 (real_clear): disable auto_resize while processing the tree
2153 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
2156 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
2158 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
2159 typo - look for right atom on transfer failures.
2161 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
2163 * gtk/gtkwidget.c gtkmarshal.list: Change signal
2164 for drag_data_get to match the use that was being
2165 made of it everywhere else...
2167 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
2169 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
2170 mechanism, that is used for the DND messages.
2172 Removed all the old DND code.
2174 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
2175 get the visual of a given colormap.
2177 * gtk/gtkcolorsel.c: Conversion to new DND, drag
2180 * gdk/gdk.h gdk/gdkdnd.c: The low-level
2181 X oriented portions of drag and drop protocols.
2182 Sending and receiving client messages, and navigating
2185 * gdk/gdkimage.c: added a gdk_flush() when destroying
2186 SHM images to hopefully make it more likely that
2187 X will gracefully handle the segment being destroyed.
2189 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
2190 DND debugging flags.
2192 * gtk/gtkeditable.[ch]: Updates for the selection handling
2195 * gtk/gtkselection.[ch]: Added GtkTargetList, a
2196 refcounted data structure for keeping track of lists
2197 of GdkAtom + information. Removed selection_handler_add
2198 in favor of a "drag_data_get" signal.
2200 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
2201 dependent) parts of the DND protocols, display of drag icons,
2202 drag-under highlighting, and the "default handlers".
2204 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
2205 windows that are used for reliable pointer grabs and
2206 selection handling in the DND code.
2208 * gtk/testdnd.c: New test program for new DND. (Old
2209 DND tests in testgtk still need to be converted.)
2211 * gtk/testselection.c: Use the new selection API.
2213 * docs/dnd_internals: Start at describing how
2214 all the new code works inside.
2216 * docs/Changes-1.2.txt: New file describing source-incompatible
2217 changes in GTK+-1.2.
2219 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
2221 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
2222 the right list node.
2224 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
2225 to the XID table so we can receive events on it.
2227 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
2229 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
2230 to get the timestamp from a generic event.
2232 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
2234 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
2235 that safely adds additional events to a widget's event
2236 mask, even if the widget has previously been realized.
2237 (We can do this, but not remove events from the event
2240 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
2242 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
2243 for AnyPropertyType.
2245 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
2247 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
2250 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
2252 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
2255 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
2257 * gdk/gdk.c (gdk_event_translate): Removed printing
2258 of unknown window lookup warnings. (Made it
2259 a GDK_NOTE) - they happen in many circumstances.
2261 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
2263 * Call XFilterEvent() on events we get for unknown
2264 windows, since it may be the window Xlib uses to
2265 communicate with the IM.
2266 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
2268 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2270 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2273 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
2275 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
2276 message for return_value + GTK_RUN_FIRST.
2278 1998-10-18 Martin Baulig <martin@home-of-linux.org>
2280 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
2281 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
2283 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
2285 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
2286 styles of inserted row
2287 (change_style): change style of focus_row
2289 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
2290 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
2291 to set/get row/cell styles.
2292 (gtk_clist_realize): attach row and cell style, allocate row colors.
2293 (gtk_clist_unrealize): detach row and cell styles.
2294 (get_cell_style): new function. get correct cell style.
2295 (draw_cell_pixmap): new function.
2296 (draw_row): draw cells with row or cell styles.
2297 (row_new): set cell and row styles to NULL.
2298 (row_delete): detach & unref cell and row styles.
2300 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
2301 new functions to attach/detach styles and allocate colors.
2302 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
2303 styles of invisible nodes.
2304 (draw_cell_pixmap): new function.
2305 (get_cell_style): new function. get correct cell style.
2306 (gtk_ctree_draw_expander): new function. draw tree expander.
2307 (gtk_ctree_draw_lines): new function.draw tree lines.
2308 (draw_row): draw cells with row or cell styles.
2309 (row_new): set cell and row styles to NULL.
2310 (row_delete): detach & unref cell and row styles.
2311 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
2312 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
2313 Analogons of GtkCList functions
2314 (gtk_ctree_set_spacing): new function. set spacing between
2315 tree expander and cell contents
2316 (gtk_ctree_set_expander_style): new function. set expander style
2318 (ctree_is_hot_spot): few changes due to draw_row modifications.
2320 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
2322 * gtk/gtkcombo.c: try completion on MOD1-TAB.
2323 Handle case when the combo->list is empty.
2325 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
2327 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
2328 handlers that have not yet been disconnected (finally managed to
2329 trigger the gtk_signal_handler_unref() paranoid warning).
2331 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
2333 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
2334 width and height which is -1 and not -2.
2336 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
2339 * autogen.sh: we need libtool 1.2b now
2341 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
2343 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
2344 and bottom attach arguments as mandatory and readjust the table size
2345 and opposing edge accordingly if required. this way the order in which
2346 the arguments are set doesn't matter.
2348 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
2350 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
2351 message to print out parent class name correctly.
2353 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
2357 removed functions gtk_object_set_data_destroy and
2358 gtk_object_set_data_destroy_by_id.
2359 added functions gtk_object_remove_no_notify and
2360 gtk_object_remove_no_notify_by_id which will remove a certain data
2361 portion without invokation of its destroy notifier, this should only
2362 be used in very controled circumstances.
2364 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
2366 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
2367 size_allocate_title_buttons call
2368 (gtk_clist_realize): changed initial column.window position
2370 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
2372 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
2374 * gtk/gtkctree.c (create_xor_gc): removed
2375 (gtk_ctree_button_press): set correct line_attributes for
2376 clist->xor_gc on drag start
2377 (gtk_ctree_button_release): reset clist->xor_gc
2379 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
2382 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
2383 which were in place to fixup emacs' cc-mode indentation.
2384 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
2385 proper way to achive this and doesn't produce problems for
2386 stupid pragma-related compiler bugs. ;)
2388 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
2390 * gtk/gtkclist.h: new signal GtkCList::resize_column.
2391 * gtk/gtkclist.c (draw_row): don't draw invisible columns
2392 (size_allocate_title_buttons) (size_allocate_columns):
2393 skip invisible columns
2394 (new_column_width): take min/max_width into account
2395 (gtk_clist_button_release) (gtk_clist_motion):
2396 changes due to changed new_column_width function
2397 (LIST_WIDTH): changed define to inline function.
2398 (real_resize_column): class function for resize_column signal
2399 (gtk_clist_motion): fixed autoscrolling for column resizes
2400 (gtk_clist_set_column_visibility): don't hide last visible column,
2401 changed visible arg to gboolean
2402 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
2403 new functions : set min/max width of a column
2404 (gtk_clist_set_column_resizeable): new function : enable/disable
2405 column resize operations by mouse
2407 * gtk/gtkctree.c (draw_row): don't draw invisible columns
2408 (ctree_is_hot_spot): return FALSE if tree_column is invisible
2409 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
2410 tree_column is invisible
2411 (gtk_ctree_find_all_by_row_data)
2412 (gtk_ctree_find_all_by_row_data_custom): new function from
2413 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
2414 GtkCTreeNodes with row->data == data.
2416 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
2418 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
2419 memory (Martin Pool <mbp@wistful.humbug.org.au>).
2421 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
2423 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
2424 should have been guint32. Thanks to Tristan Colgate for finding it.
2426 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2428 * gtk/gtkcalendar.h:
2429 gtk/gtkcalendar.c: More changes:
2430 - The day with focus is now seperated from the day selected
2431 - The day with focus has the xor's line around it
2432 - The selected day is now standard selected style
2433 - The week names and week numbers are now also drawn
2435 - Space now selects the day which has focus
2437 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2439 * gtk/gtkcalendar.h:
2440 gtk/gtkcalendar.c: Some significant changes, including:
2441 - No longer draw focus around entire widget, only around
2442 the day which has focus
2443 - Draw relief around entire widget like originally planned
2444 - Show header and day names by default
2445 - Move data private to the widget out of GtkCalendar struct
2446 and only point to it with a gpointer
2447 - Remove some old unused variables from GtkCalendar struct
2449 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
2451 * docs/gtk_tut.sgml: update I've had sat around:
2452 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
2453 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
2454 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
2456 1998-10-01 Martin Baulig <martin@home-of-linux.org>
2458 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
2460 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
2461 Makes it possible to individually show and hide columns.
2462 (size_allocate_columns): Adapted to keep track of hidden columns.
2463 (size_allocate_title_buttons): Likewise.
2465 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
2467 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
2468 fundamental types, collect an argument of the type returned from
2469 gtk_type_get_varargs_type(). removed the first macro argument which
2470 was just the same as the fundamental type of the *arg passed to
2472 * gtk/gtkarg.c (gtk_args_collect):
2473 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
2475 * gtk/gtktypeutils.h:
2476 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
2477 gtk_type_get_varargs_type() to set and query the varargs collect
2478 type used for a fundamental type, registered outside of Gtk.
2480 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
2481 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
2484 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
2485 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
2488 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
2490 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
2491 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
2492 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
2494 (real_tree_expand) (real_tree_collapse):
2495 don't expand/collapse a leaf
2497 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
2499 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
2500 segfault when looking up a non-existant value name (reported by
2501 Pablo <pcj+gtk@primenet.com>).
2503 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
2505 * gtk/gtkclist.h (gtk_clist_prepend):
2506 * gtk/gtkclist.c (gtk_clist_prepend): new function.
2507 (gtk_clist_insert): added g_return_val_if_fail()
2508 statements. accept a row parameter < 0 or > clist->rows to indicate
2510 (real_clear): first clean up all internal pointers and lists (e.g.
2511 clist->row_list or clist->rows), then delete the distinct rows. this
2512 is required because of destroy notifiers, we need to have all internal
2513 structures updated and be reentrant.
2515 * gtk/gtkcalendar.h:
2516 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
2517 GtkCalendarClass signal methods.
2518 GtkType and macro fixups, put `void' into () prototypes, avoid C++
2519 style comments, indentation fixes, fixed some g_return_if_fail()
2521 (gtk_calendar_paint_header):
2522 (gtk_calendar_paint_day_names):
2523 (gtk_calendar_paint_week_numbers):
2524 (gtk_calendar_paint_main): made these static functions.
2525 (gtk_calendar_select_month):
2526 (gtk_calendar_select_day):
2527 (gtk_calendar_mark_day):
2528 (gtk_calendar_unmark_day):
2529 (gtk_calendar_get_date): signedness corrections, use guints
2531 (gtk_calendar_size_request): removed unused variables.
2533 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
2535 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
2536 widgets in the ->widgets_by_action list that have a callback
2537 defined (not only those with a callback_action!=0).
2539 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2541 * gtk/gtkcalendar.h:
2543 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
2545 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2547 * gtk/gtkcalendar.h:
2549 examples/calendar: Added gtkcalendar widget and demo
2551 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
2553 * gtk/gtkclist.c (gtk_clist_sort):
2555 (gtk_clist_unselect_all):
2556 (gtk_clist_select_all): adde g_return_if_fail() statements.
2558 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
2560 * configure.in: set binary age and interface age to 0.
2562 * gtk/gtkspinbutton.h:
2563 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
2564 gtk_spin_button_configure. gtk_spin_button_construct is still defined
2565 as an alias for gtk_spin_button_configure for source compatibility,
2566 but actuall use is deprecated.
2567 typeness corrections, i.e. gint->gboolean and gint->guint.
2568 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
2569 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
2570 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
2571 GtkSpinButton::adjustment, GtkSpinButton::digits and
2572 GtkSpinButton::climb_rate.
2573 GtkType and macro fixups.
2575 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
2577 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
2578 the *real* geometry position of a window, taken possible window
2579 manager offsets into account.
2580 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
2581 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
2582 it does fail though for amiwm which adds windows to a pseudo root
2583 window, and for icewm by a small offset because it defines the
2584 geometry position whithin its border.
2586 * gtk/testgtk.c: added "saved position" test to figure how
2587 gdk_window_get_root_origin() interacts with window managers (repopup
2588 this window to figure ;).
2590 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
2592 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
2597 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
2598 existing code was buggy in letting ->ref_count==0 pass through and
2599 then failing the living_objs_ht assertion).
2601 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
2602 pixtext fields (Roman Pozlevich <roma@botik.ru>).
2604 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2606 * Released GTK+ 1.1.2
2608 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
2610 * gtk/Makefile.am: use $(PERL) instead of perl
2611 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
2612 also much faster to render.
2614 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
2616 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
2617 the required memory block, rather than allocating it newly from
2618 scratch and doing a full-blown block copy on it.
2620 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
2622 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
2623 binary age 0, interface age 0.
2625 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
2627 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
2629 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
2632 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
2634 * HACKING: indent other than GNU indent should be OK
2637 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
2638 instead of piping through indent. If indent wasn't
2639 found in ./configure don't bother indenting at
2642 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
2644 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
2646 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
2648 * gtk/Makefile.am: use $(AWK) instead of awk
2650 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
2652 * gtk/Makefile.am (gdk_headers):
2653 Remove references to $(top_srcdir).
2654 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
2655 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
2657 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
2659 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
2660 GData*object_data to cure compiler warnings.
2662 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
2666 * mkinstalldirs: updated to latest automake version
2668 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
2670 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
2671 (gtkinclude_HEADERS): ... here.
2672 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
2674 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
2676 * HACKING: added GNU indent, as it is now required to successfully
2677 build gtk+. Should this be detected in autoconf, possibly?
2679 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
2681 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
2682 change library versioning scheme to drop LT_RELEASE
2683 from the -l line, while keeping it in the soname.
2685 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
2687 * configure.in Makefile.in: define a MAINT-like variable REBUILD
2688 which is set if Perl and awk are found, and autogenerated sources
2689 can be rebuilt. Remove the auto-generated sources from
2692 Add dependencies so that the autogenerated sources are
2693 rebuilt if the files they depend on change.
2694 (This unfortunately currently results in the entire
2695 gtk/ directory being rebuilt when any header changes.
2696 Moving all enums to gtkenums.h would fix this.)
2698 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
2700 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
2701 gtk_object_set_data_destroy_by_id functions to set the destroy
2702 function pointer for an existing data portion.
2704 * gtk/gtkobject.c: removed the GtkObjectData implementation and
2705 made all gtk_object_*data* functions use the GLib equivalents.
2707 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
2709 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
2710 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
2711 (widget != NULL), otherwise radio button insertion will not work
2712 -- the widget argument is NULL for the first radio button in the
2715 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
2717 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
2718 of g_new to malloc(), added back in the one place where
2719 it actually mattered. #include <stdlib.h>.
2721 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
2723 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
2725 * gtk/gtkfilesel.c: Keep a list of directories in which we never
2726 want to stat the entries (like /afs), and assume everything in
2727 those directories is a subdirectory.
2729 - When following a path, try to open components even when
2730 we don't find them in their parent's directory to
2731 support automounters.
2733 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
2735 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
2736 a new size from the WM if we asked for the same size
2737 before and our request was rejected.
2739 * gtk/gtkwindow.c (gtk_window_configure_event): If
2740 in response to a request, we get a configure event
2741 with unchanged dimensions, send a synthetic expose
2742 since ForgetGravity won't expose our window.
2744 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
2746 * gtk/gtktext.c (adjust_adj): Change the way we
2747 set the adjustments on resize so that it tries to
2748 keep the beginning of the text in approximately
2751 Removed assertion that the above change made invalid.
2753 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
2755 * gtk/gtktext.c: - Save first_cut_pixels when switching
2756 sizes, so that if we switch to the _same_ size,
2757 we don't move lines around.
2759 - Make sure that the text area always has a size of at
2760 least 1x1, then do all computations when realized.
2762 - When fetching lines in recompute_geometry, make
2763 sure we fetch enough lines to cover the screen.
2765 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2767 * gdk/gdkimage.c: changed g_new()s to malloc()s and
2768 g_free()s to free()s to avoid mixing g_new()s with
2769 free()s. X itself uses free() on some of the
2772 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
2774 * gtkfilesel.c: Maintain a list of directories like
2775 /afs we know contain only directories, and avoid
2776 stat'ing files in those directories. (Because
2777 stat'ing all files in /afs is extremely expensive)
2779 To support automounters, try to open directories,
2780 even if we couldn't find them when reading their
2783 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
2785 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
2786 to allow the same gtk.m4 to work for 1.0.x and
2789 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
2791 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
2792 to set/unset the selectable flag of a single row.
2793 (gtk_clist_get_selectable): new function
2794 to get the state of the selectable flag
2796 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
2797 (gtk_ctree_node_get_selectable): clist analogons
2799 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
2801 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
2804 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
2805 bugs in the 4bit gray cases.
2807 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
2809 * configure.in: added -posix check for NeXTStep
2811 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
2812 a unique buffer for each thread.
2814 * docs/gtk-config.1: clarified copyright
2816 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
2818 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
2820 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
2822 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
2825 * ltconfig: use GLib's ltconfig which honours lcc.
2827 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
2829 * configure.in: comment the -std1 check and save LIBS properly
2831 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2833 * gtk/testrgb.c: #include <stdlib.h>
2835 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
2837 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
2838 When the pointer is grabbed on an input window,
2839 either explicitely, or through press-grab, and
2840 then grabbed on a non-input window, ungrab the
2843 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
2845 * gtk/gtktypeutils.h: don't include any gdk headers.
2846 added structure definitions for GtkTypeObject and GtkTypeClass,
2847 which cover the very basic fields of GtkObject and GtkObjectClass,
2848 which are actually used by the type system.
2850 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
2851 we only refer to our own structures. improved class inheritance
2852 sanity checking a bit.
2854 * gtk/gtkobject.h: placed appropriate comments at the beginnings
2855 of the GtkObject and GtkObjectClass structures, which explain
2856 their relationship to GtkTypeObject and GtkTypeClass.
2858 * gtk/gtktypeutils.h:
2860 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
2861 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
2862 gtkobject.h to gtktypeutils.h.
2866 removed gtk_object_check_cast() and gtk_object_check_class_cast()
2867 functions. to keep source compatibility, we can provide macro aliases
2868 for the corresponding gtk_type_* functions. but then again, people
2869 shouldn't have been using these functions anyways since they were part
2870 of Gtk's internal API.
2872 * gtk/gtktypeutils.h:
2873 * gtk/gtktypeutils.c:
2874 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
2875 functions to check GtkTypeObject and GtkTypeClass types.
2877 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
2880 * gtk/gtkctree.c: `const' fixups.
2883 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
2885 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
2886 if it is passed as NULL.
2888 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
2890 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
2891 big-endian cases. Added a 4bpp packed gray mode (somewhat
2892 incorrectly hardwired to MSB), which should take care of
2895 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
2897 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
2898 GtkSIgnalQuery leak.
2900 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
2902 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
2903 GTK_MENU_DIR_CHILD: check for the existance of
2904 menu_shell->active_menu_item before accessing its child.
2906 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
2907 don't, make a default selection.
2909 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
2911 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
2912 the children with _forall for sensitivity changes and with
2913 _foreach on pure state changes. this fixes a lot of the
2914 old inclusions of internal widgets into _foreach calls.
2916 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
2917 do the work. don't walk the subtrees of first level children.
2919 * gtk/gtktreeitem.c: provide a _forall implementation,
2920 which walks the subtrees as well for include_internals.
2922 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
2923 the submenus as well for include_internals.
2925 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
2926 implemented gtk_scrolled_window_forall, which will iterate over
2927 the viewport and the scrollbars for gtk_container_forall or
2928 iterate over the viewports children for gtk_container_foreach.
2934 * gtk/gtkmenushell.c:
2940 * gtk/gtknotebook.c:
2941 removed the old gtk_*_foreach functions and provided gtk_*_forall.
2943 * gtk/gtknotebook.c:
2944 (gtk_notebook_real_switch_page): expose tabs.
2945 (gtk_notebook_page_num): new function to return the page number
2946 of a distinct child.
2947 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
2948 under some circumstances.
2950 * gtk/gtktreeitem.c:
2951 (gtk_real_tree_item_select):
2952 (gtk_real_tree_item_deselect): major fixes.
2953 some general fixups wrt queue_redraw, and tree items not being
2956 * gtk/gtklistitem.c:
2957 (gtk_real_list_item_select):
2958 (gtk_real_list_item_deselect):
2959 (gtk_real_list_item_toggle):
2960 removed unneccessary queue_redraw calls.
2962 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
2964 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
2965 automatically popup the menu on space bar.
2967 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
2969 * gtk/gtkcontainer.h:
2970 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
2971 method), which acts similar to gtk_container_foreach(), but iterates
2972 over internal children. the GtkContainer::foreach signal vanished in
2973 favour of a new class method ->forall() that optionally includes
2976 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
2977 but a _forall implementation, since all child widgets we have are
2979 (column_button_create): set the parent window prior
2980 to gtk_widget_set_parent().
2983 exchanged all calls to gtk_container_foreach() with
2984 gtk_container_forall().
2987 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
2988 the GtkWidget::composite_child argument. to have a widget created
2989 with the flag initially, two new functions got added to wrap a widgets
2991 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
2993 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
2995 * gtk/gtktooltips.h:
2996 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
2997 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
2998 prior to the first tip being set.
2999 don't put an extra reference on the window, since it is a toplevel,
3000 it wont get destroyed from anywhere else.
3002 * overall macro and GtkType fixups.
3004 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
3006 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
3007 constructs by more forgiving ones. (Does anyone else feel like
3008 the color selector need rewriting?).
3010 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
3012 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
3015 * gtk/gtkmenu.c: Modified reference counting so
3016 that the reference count from the toplevel that
3017 the menu creates to the menu is invisible to the
3020 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
3022 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
3023 conversion selection logic, so Suns and other big-endian
3024 machines should get faster conv routines. This is also the
3025 point where 4bpp gray and 1bpp are checked in, although I
3026 wouldn't be surprised if 1bpp is a little buggy. This is
3027 synchronized with the 0.0.7 release of GdkRgb.
3030 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
3031 appropriate change to the Makefile.am
3033 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
3035 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
3036 which is good for images that scroll (makes the dither patterns
3039 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
3042 (gdk_colormap_new) (gdk_colormap_get_system):
3043 quell some warnings with g_hash_table_new
3045 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
3046 when we're done with it
3048 * gtk/itemfactory.c:
3049 (gtk_item_factory_from_path):
3050 (gtk_item_factory_create_item): free some strings
3053 (gtk_label_finalize): free label->pattern when done
3054 (gtk_label_parse_uline): null terminate pattern string, delete
3055 some duplicated code
3057 * gtk/testthreads.c: add #include <unistd.h> for sleep()
3059 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
3061 * gtk/gtktext.c (recompute_geometry): Make sure the
3062 mark we pass to line start is the beginning of a
3063 real line, not a wrapped one.
3065 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
3067 * gtk/gtktext.c: Reference count the fonts used in
3070 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
3071 freeing functions to be more consistent, and more
3072 convenient; leave the old names in for backwards compatibility.
3074 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
3075 allocations in pseudo-color colormaps to greatly reduce
3076 calls to XAllocColor. Keep a per-colormap hashtable to
3077 speed up finding if there is an already-allocated matching
3080 * gdk/gdkcolor.c: Don't just match read the system colormap
3081 when the colormap is created, but synchronize our copy
3082 with the system colormap periodically.
3084 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
3085 Change XIM constants names to match GDK conventions
3087 * gtk/testinput.c: Allow the drawing area to get the focus.
3089 * gtk/testgtk.c: Change around the Text test to demonstrates
3090 multiple fonts, use more colors.
3092 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
3093 so they work after a widget is unrealized.
3095 * gtk/gtktext.[ch]: Remove the requirement that the text
3096 widget be realized before adding text (!) Allocate colors
3097 ourself, instead of requiring the caller allocate them.
3098 Allow changing styles to work properly by keeping track
3099 of the values for a certain property are default or
3102 * gtk/gtkmenu.h: Added some comments.
3104 * gtk/gtkentry.c: Changes to match XIM constants.
3106 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
3107 for adding keyed data to drawables. (Uses g_dataset
3110 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
3111 when creating an XPM - store them as user data for the GdkPixmap,
3112 so we don't leak colors when we create pixmaps from XPM's.
3114 Allocate memory for color information in large blocks instead of
3115 as many little pieces.
3117 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
3119 * gdk/gdkrgb.c: removed some unused variables
3122 * gtk/gtkmain.c: #if 0'd out some unused code
3124 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
3126 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
3134 * gtk/gtkcontainer.h:
3135 * gtk/gtkcontainer.c:
3140 (gtk_container_add_with_args):
3141 (gtk_container_child_set):
3142 begin the parameter elipsis (...) after the first argument name. this
3143 change is source compatible, since it was always required, even as NULL.
3145 (gtk_object_args_collect):
3146 (gtk_container_child_args_collect):
3147 changed prototypes to pass first_arg_name, also, pass va_list variable
3148 by value (portability concerns). callers changed.
3150 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
3151 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
3152 can't pass va_list variables by reference for portability reasons.
3154 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
3156 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
3157 get_visual calls, so that it gets implicitly initialized.
3159 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
3160 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
3161 such as GtkCTree function name changes
3163 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
3166 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
3167 binary version check, returning a static string for error descriptions,
3170 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
3172 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
3173 computed our geometry yet, and if not, ignore the request.
3175 * gtk/gtktext.c (correct_cache_insert): Fiddled around
3176 some more. All the bug-test codes seem to work at once
3177 now. (fingers crossed...)
3179 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
3181 * gdk/gdkrgb.c: silly visual fixes
3183 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
3186 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
3188 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
3189 anything if the event's window is not the bin window.
3190 (gtk_handle_box_motion): Likewise.
3192 1998-08-19 Raph Levien <raph@gimp.org>
3194 * gtk/testgtk.c (create_color_preview): pushed the colormap and
3195 visual so it would work better with GdkRgb.
3197 1998-08-19 Raph Levien <raph@gimp.org>
3199 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
3200 4bpp static_color mode (for vga displays). Also fixed a '64' value
3201 in the dither matrix, which was causing one pixel out of 16k to be
3204 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
3205 most of the contents. This is an API change - any apps that relied
3206 on the internal structure of GtkPreview will need some change -
3207 most notably in the use of reserved colors. The Gimp needed
3208 changes in this regard.
3210 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
3212 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
3213 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
3214 --g-fatal-warnings), noticed by miguel.
3216 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
3218 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
3226 * gtk/gtkitemfactory.c:
3227 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
3229 * gtk/gtkselection.c:
3233 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
3235 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
3237 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
3239 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
3240 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
3241 in case of show_tabs == NULL
3243 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
3245 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
3246 to --g-fatal-warnings again. this option now causes log levels of
3247 WARNING and CRITICAL to abort().
3256 * gtk/gtktypeutils.c:
3262 * gtk/gtkselection.c:
3265 * gtk/gtktreeitem.c:
3266 did a global search&replace to substitute g_print() calls with
3267 g_message(). libraries shouldn't use printf(), g_print() or
3268 g_printerr() at all.
3269 a bunch of the replacements should probably be wrapped into the
3270 G{D|T}K_NOTE() macros, so they are special cased for debugging
3271 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
3274 * gdk/gdkdnd.c: added copyright notice.
3276 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
3278 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
3279 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
3280 running a PII 233. It's synced with the 0.0.5 release of
3283 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
3286 (struct _GtkCListClass): new class methods:
3287 (sort_list) (insert_row) (remove_row) (set_cell_contents)
3290 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3291 removed and replaced by (set_cell_contents)
3292 (set_cell_contents): function for class method set_cell_contents
3293 (real_insert_row): function for class method insert_row
3294 (real_remoce_row): function for class method remove_row
3295 (real_sort_list): function for class method sort_list
3296 (default_compare): fix to avoid problems with cell types != CELL_TEXT
3299 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
3300 (gtk_ctree_node_is_visible): new function to return visibility state
3302 (gtk_ctree_show_stub): new function to set visibility of root stub
3305 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
3306 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
3307 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
3308 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
3309 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
3310 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
3311 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
3312 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
3313 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
3314 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
3315 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
3316 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
3317 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
3318 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
3319 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
3320 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
3321 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
3322 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
3323 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
3326 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3327 removed and replaced by (set_cell_contents)
3328 (set_cell_contents): function for class method set_cell_contents
3329 (real_insert_row): function for class method insert_row
3330 (real_remoce_row): function for class method remove_row
3331 (real_sort_list): function for class method sort_list
3332 (default_compare): removed. CTree now also compares two GtkCTreeRows
3333 instead of two GtkCTreeNodes.
3334 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
3336 (real_tree_expand) (real_tree_collapse): fix for refcounting of
3338 (set_node_info): call gtk_ctree_node_set_pixtext instead of
3339 manipulating the row itself
3341 * gtk/testgtk.c: use renamed functions of GtkCTree.
3342 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
3345 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
3347 * gtk/gtkmain.c: removed gtk_input_add_interp.
3349 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
3351 (gtk_editable_get_event_time): fix default: case.
3353 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
3355 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
3358 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
3361 * various minor compilation cleanups, such as bogus commas in
3362 enums and similar things.
3364 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
3366 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
3369 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3371 * NEWS: updated for 1.1.2
3372 * gtk+.spec: version = 1.1.2
3374 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
3376 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
3377 times. changed --gtk-with-module to --gtk-module at owen's request.
3379 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
3381 * gtk/gtkmain.c (gtk_init): feature a new commandline option
3382 --gtk-with-module=<module> that allows additional loading and
3383 initialization of modules (e.g. GLE).
3385 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
3387 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
3388 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
3390 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
3391 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
3392 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
3393 different *-fatal-* arguments now. this needs to be revised and
3394 compressed to a reasonable amount of arguments.
3396 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
3398 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
3399 "--g-fatal-warnings" causes fatal warnings in GLib,
3400 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
3401 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
3403 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
3404 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
3408 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
3409 since automake doesn't support per target _CFLAGS yet.
3411 * configure.in: require GLib 1.1.3.
3413 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
3415 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
3416 to set a callback to test if a node in drag can be dropped onto
3417 it's currrent location.
3418 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
3419 to change the pointer when a drag destination is not allowed.
3421 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
3423 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
3424 speeds up the 565_d case by about 25% total. Thanks Ray!
3426 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
3428 * Changed GtkSignalFunc back to () from (void). (again!)
3430 * Added file README.cvs-commits
3432 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
3434 * docs/gtk_tut.sgml:
3435 - Tidy up of the menufactory example from
3436 Andy Kahn <kahn@zk3.dec.com>
3437 - New section on Range Widgets from
3438 David Huggins-Daines <bn711@freenet.carleton.ca>
3439 - Started a new section on 'Advanced Event and Signal
3440 Handling' - used an email from Owen.
3441 - New appendix on Gdk Event Types
3442 - Added the tictactoe full example code to the
3443 'Code Examples' appendix
3445 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
3447 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
3448 to calculate all the metrics at once of a string, including
3449 things which weren't calculated before.
3451 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
3452 MenuItem type, that when put as the first thing in a
3453 menu, makes the menu tearoff. Currently drawn as a
3456 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
3457 "hide_on_activate" to the MenuItem class structure to allow
3458 check and radio buttons to be changed with <Space> without
3461 * gtk/gtkitemfactory.c:
3462 - Create a AccelGroup for each MenuShell we create.
3463 - If an '_' appears before a character 'c' in the path,
3464 then make 'c' an accelerator in the menu's accel group,
3465 and if the menuitem is menubar <alt>C an accelerator
3466 in the itemfactory's accel group. Double '__' inserts
3469 * gtk/gtklabel.[ch]: Add support for a pattern arg -
3470 which is a string. If an '_' appears in this string,
3471 the corresponding position in the label is underlined.
3473 Add gtk_label_parse_uline() convenience function which
3474 takes a string with embedded underlines, sets the
3475 pattern and label, and returns the accelerator keyval.
3477 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
3478 Instead, they create a GtkWindow and add themselves
3479 to that. (When torn off, another new feature, they
3480 create another GtkWindow to hold the torn off menu)
3482 New function gtk_menu_set_tearoff_state()
3484 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
3485 Added action signals for keyboard navigation of menus.
3487 * gtk/gtkmenushell.c: Key press handler which activates
3488 bindings for navigation, and accelerators, for handling
3489 underline accelerators. Exported functions to select
3490 and activate menu items in a menushell.
3492 * gtk/testgtk.c: Added a new "Item Factory" test which
3493 tests GtkItemFactory and the new keyboard navigation
3496 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
3498 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
3499 external functions have been called. also relookup nodes after
3500 this function has been invoked.
3502 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
3504 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
3505 beginning of Text when creating the Text widget.
3507 * gtk/testgtk.c: Grab the focus on the text widget so
3508 as to test out the above.
3510 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
3512 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
3513 ::changed is a notification signal and should have no default
3514 handler. A complete redraw of the Text widget does _not_ need to
3515 be done on every text insertion.
3517 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
3518 (gtk-abilleira-072198-patch)
3520 * gtk/gtkwindow.[ch]:
3521 Add gtk_window_set_modal() which sets a flag; when
3522 set the window does a gtk_grab_add() when the window
3523 is shown, and a gtk_grab_remove() when the window
3526 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
3527 that case will run "Create Dir","Delete File" and "Rename File"
3528 dialogs as modal too.
3530 * gtk/testgtk.c: Added a button with an example of creating modal
3531 dialog boxes. Including file selection and color selection standard
3534 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
3536 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
3537 Removed CAN_FOCUS by default from scrollbars, button
3538 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
3539 (Scrollbar definitely good change, toolbar bit more questionable)
3541 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
3543 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
3546 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
3548 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
3549 added all logical operations to gc->function.
3551 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
3553 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
3554 gtk_widget_size_allocate instead of gtk_widget_queue_resize
3555 if the visibility state of a scrollbar changes.
3557 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
3559 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
3561 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
3563 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
3564 gtk_clist_merge and gtk_clist_mergesort. :)
3566 1998-08-06 Martin Baulig <martin@home-of-linux.org>
3568 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
3569 `mergesort' -> `my_mergesort'.
3571 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
3573 * gtk/gtkenums.h: new enum GtkSortType.
3577 Added sorting capabilities to GtkCList. New APIs :
3578 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
3579 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
3580 New internal functions : default_compare, merge, mergesort.
3582 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
3584 (gtk_clist_insert): Modified to handle gtk_clist_append and the
3585 auto sort flag. Changed the return value from void to gint to
3586 return the row number where the element was actually inserted.
3588 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
3592 Removed the auto_sort flag, replaced ctree->node_compare with
3593 clist->compare all over the place, modified default_compare to
3594 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
3595 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
3597 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
3598 sorting. The lists can be sorted by a column by clicking the
3599 corresponding title button.
3601 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3603 * Released GTK+ 1.1.1
3605 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
3609 (gtk_ctree_find): changed to return a gboolean
3610 (gtk_ctree_insert_gnode): new function for recursive insertion of a
3612 (gtk_ctree_real_select_recursive): fix for extended selection
3613 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
3614 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
3616 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
3618 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
3619 GLib version 1.1.1 is now required at minimum.
3621 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
3622 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
3624 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
3626 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
3627 cursor before (possibly) deleting the cursor's text
3630 * gtk/gtktext.c (correct_cache_delete): More attempts
3631 to clean the line-start cache up after inserting
3632 a property. Among other things, make sure to
3633 fix up text->current_line, since it is used to
3634 refetch the changed lines.
3636 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
3638 * gtk/gtktable.[ch]: Empty rows/columns of the table
3639 should not have been marked as being able to shrink.
3640 (Fixes problem with shrinking scrollbarless GIMP canvases)
3642 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3644 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
3645 function to find a row by its data pointer using a custom
3646 comparison function.
3648 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
3650 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
3651 this fixes a bug when the whole widget is made non-sesitive
3652 the buttons weren't redrawn
3654 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
3656 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
3657 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
3658 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
3660 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
3662 * gdk/gdkwindow.c (gdk_window_reparent): Change
3663 window_private->parent pointer when reparenting.
3665 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
3667 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
3668 with the standalone release.
3670 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
3672 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
3673 (gtk_clist_button_release) (new_column_width): Few fixes for
3674 column resize. Store resize column in clist->drag_pos.
3676 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
3680 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
3681 to GtkCTreeNode *node.
3683 * gtk/gtklist.h : added extended selection mode and auto scrolling.
3684 (struct _GtkList): removed unneeded variables timer, button,
3685 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
3686 Added new variables undo_selection, undo_unselection, last_focus_child,
3687 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
3688 drag_selection, add_mode.
3691 (gtk_list_extend_selection), (gtk_list_start_selection),
3692 (gtk_list_end_selection), (gtk_list_select_all),
3693 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
3694 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
3695 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
3696 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
3699 (gtk_list_enter_notify): removed, because auto scrolling now works
3700 with gtk_list_motion_notify
3702 New functions, needed for auto scrolling :
3703 (gtk_list_motion_notify) (gtk_list_move_focus_child)
3705 New functions for extended selection support :
3706 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
3707 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
3708 (gtk_list_focus_lost)
3710 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
3711 function to support auto scrolling, and avoid out-of-sync errors in
3712 case auf GTK_SELECTION_BROWSE
3713 (gtk_list_focus): modified gtk_container_focus function to avoid out
3714 off sync errors in case auf GTK_SELECTION_EXTENDED
3717 * gtk/gtklistitem.c :
3718 New signal functions for key binding support :
3719 (toggle_focus_row), (select_all), (list_item), (unselect_all)
3720 (list_item), (undo_selection), (start_selection), (end_selection)
3721 (extend_selection), (scroll_horizontal), (scroll_vertical),
3723 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
3724 GDK_KEY_RELEASE_MASK
3725 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
3728 (gtk_combo_popup_button_press): grab pointer for combo->list
3729 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
3730 (gtk_combo_list_key_press): take care of which child HAS_GRAB
3731 (gtk_comb_init): don't connect combo->button with button_release_event
3733 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
3735 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
3737 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
3739 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
3740 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
3741 with horizontal and vertical autoscrolling.
3743 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3745 * gtk/docs/man: new directory
3746 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
3748 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
3750 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
3753 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
3755 * docs/gtk_tut.sgml: GtkTree section from
3756 David Huggins-Daines <bn711@freenet.carleton.ca>,
3757 add a GtkText widget example
3758 * examples/text/* example/tree/* : new examples for the
3759 GtkTree and GtkText widgets
3760 * docs/gtk_tut.sgml: added an appendix to hold complete code
3761 examples that aren't in a full form elsewhere in the
3762 tutorial (e.g. scribble)
3764 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3766 * Released GTK+ 1.1.0
3768 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
3770 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
3771 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
3773 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
3775 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
3776 values are looked up.
3778 * gtk/gtktypeutils.h:
3779 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
3780 gtk_type_enums_find_value to lookup enum values.
3783 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
3784 GtkCTreeExpansionType. fixed signal creations to pass the enum
3785 types not just the base type GTK_TYPE_ENUM.
3788 * gtk/gtkclist.c: fixed signal creations to pass the real enum
3789 types not just the base type GTK_TYPE_ENUM.
3791 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
3794 Began cleanup, e.g. use gtk_widget_show_all instead of many
3795 gtk_widget_show's. Completely rewrote the button box sample
3796 (only one window now). Removed "miscellaneous" button.
3798 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
3800 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
3801 Fixed wrong allocation for GTK_BUTTONBOX_END.
3802 (allocation->x => allocation->y)
3804 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
3806 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
3807 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
3809 * gtk/gtkctree.c (real_tree_select): added check to avoid double
3811 (gtk_ctree_button_press)
3812 (gtk_ctree_button_release): fix for pointer grab
3814 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
3816 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
3817 Fixed initialization problem - dirty memory could cause problems.
3818 Also checked that bitmapped fonts can be scaled when showing the
3821 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
3823 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
3824 (gtk_ctree_sort_recursive): test for node != NULL
3825 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
3826 (gtk_ctree_last) : added sanity checks
3827 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
3829 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
3831 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
3833 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
3835 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
3837 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
3839 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
3840 to check out binding priorities. someone should really write
3841 gtkrc-mode for emacs.
3843 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
3844 * gtk/testgtk.c (main): and move it here ;). this test says something
3845 on release of C-9. (this works only if the mouse pointer is on a
3846 spinbutton and there is no focus widget).
3850 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
3851 gtk_rc_parse_priority to parse path priority types.
3853 feature binding parsing.
3855 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
3857 * gtk/gtkbindings.h:
3858 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
3859 feature binding parsing in rc files.
3860 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
3861 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
3862 order the bindings with lowest priority first.
3864 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
3866 * gdk/gdkrgb.c: actually builds and runs properly on big
3867 endian machines now, because we #include config.h. Also
3868 fixed up a compile error in the WORDS_BIGENDIAN case in
3869 gdk_rgb_convert_565_gray. I made the fix by looking at
3870 patterns in the other code; Raph can you verify this?
3872 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
3875 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
3877 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
3878 (tree_toggle_expansion) (real_select/unselect_row)
3879 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
3881 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
3883 * gtk/gtktext.c (new_text_property): We free things from
3884 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
3886 * Fix up line start cache when splitting a property
3889 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
3891 * gtk/gtkwidget.c: restauration => restoration
3893 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
3895 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
3896 hasn't been created yet, don't do the lookup.
3898 1998-07-20 Raph Levien <raph@acm.org>
3900 * gdk/gdkrgb.c: More cleanups in the config process.
3902 1998-07-20 Raph Levien <raph@acm.org>
3904 * gdkrgb.c: Fixed minor config bug preventing big-endian
3905 architectures from working.
3907 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
3909 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
3910 activity indicator. It is settable now as a fraction of the
3911 total width/height using gtk_progress_bar_set_activity_blocks.
3912 Renamed gtk_progress_bar_set_number_of_blocks to
3913 gtk_progress_bar_set_discrete_blocks.
3915 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
3917 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
3918 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
3919 tree to specified depth
3920 (gtk_ctree_expand_to_depth): expand tree to specified depth
3921 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
3923 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
3925 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
3926 of GTK_CLIST_ADD_MOD
3927 * gtk/testgtk.c (add1000_clist): changed pixmap
3929 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
3932 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
3934 * gtk/gtktypeutils.h:
3935 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
3937 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
3939 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
3940 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
3941 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
3943 (gtk_notebook_reorder_child): new funktion to change position of a
3945 (gtk_notebook_draw_arrow): draw left/right arrow with
3946 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
3948 * gtk/gtkstyle.c (gtk_default_draw_arrow):
3949 added GTK_SHADOW_ETCHED_IN/OUT
3951 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
3953 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
3954 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
3955 Introduced generic GtkProgress widget. Derived GtkProgressBar from
3956 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
3958 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
3960 * gtk/gtktypeutils.h
3961 * gtk/gtkitemfactory.h: explicitly specify void in prototype
3963 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
3965 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
3968 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
3970 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
3971 sropped the approach of copying all signal specific data into a
3972 GtkHandlerInfo structure. we rather keep the signal data on the stack
3973 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
3974 avoids multiple lookups of the signal pointer and works savely together
3975 with destroy notifiers of handlers.
3977 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
3978 someone destroys the entry on the ::activate signal.
3980 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
3982 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
3983 instead of ypad (typo).
3984 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
3985 border around the allocation).
3986 (gtk_arrow_init): the static requisition needs to be setup in this
3987 function rather than gtk_widget_new(), so arrow creation works without
3988 the gtk_arrow_new() constructing.
3989 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
3991 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
3992 implementation for GtkWidget::size_request, so size requisition for
3993 simple statically sized widgets like GtkArrow works.
3995 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
3997 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
3998 prepend -I@libdir@/glib/include anymore, since glib-config handles
3999 it; --libs strips out redundant -L<path>'s properly (there was
4000 code in there to do it before, but it didn't work)
4002 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
4004 * gtk/gtknotebook.h:
4005 * gtk/gtknotebook.c: signdness corrections all ove the place.
4006 implementation of object arguments: GtkNotebook::enable_popup,
4007 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
4008 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
4009 begun implementation of child args, we have GtkNotebook::tab_label, but
4010 GtkNotebook::menu_label and GtkNotebook::position still lack the
4012 (gtk_notebook_remove_page):
4013 (gtk_notebook_current_page): allow negative indices (-1) as alias for
4017 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
4018 arguments GtkEntry::max_length and GtkEntry::visibility.
4019 (gtk_entry_adjust_scroll): queue a redraw.
4021 * gtk/gtkeditable.h:
4022 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
4023 object arguments GtkEditable::text_position and GtkEditable::editable.
4024 new (action) signal GtkEditable::set_editable.
4025 provide a default handler for GtkEditable::changed that queues a redraw.
4028 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
4031 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
4033 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
4034 case of drag_target == NULL
4035 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
4036 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
4037 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
4038 gtk_dir_selection_file_button): fix due to changes in clist's
4041 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
4044 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
4045 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
4046 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
4047 to be gint16s rather than guint16s, since that's what the code expected
4048 (for a long time actually).
4050 * gtk/gtkviewport.c:
4051 added support for object arguments: GtkViewport::shadow_type,
4052 GtkViewport::vadjustment and GtkViewport::hadjustment.
4053 (gtk_viewport_add): chain gtk_bin_add.
4055 * gtk/gtkscrolledwindow.c:
4056 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
4057 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
4059 * gtk/gtkadjustment.h:
4060 * gtk/gtkadjustment.c:
4065 * gtk/gtkscrolledwindow.h:
4066 * gtk/gtkscrolledwindow.c:
4067 * gtk/gtkviewport.h:
4068 * gtk/gtkviewport.c:
4069 GtkType and macro fixups.
4071 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
4075 Added focus handling, horizontal and vertical autoscrolling,
4076 extended Selection Mode, key bindings
4077 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
4078 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
4079 Removed gtk_ctree_clear.
4083 Added focus handling, horizontal and vertical autoscrolling,
4084 extended Selection Mode, key bindings
4086 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
4088 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
4089 source tree. For more information on GdkRgb, please see:
4090 http://www.levien.com/gdkrgb/
4092 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
4093 bothers me slightly that the feature is in gdk, and this file is
4094 in gtk, but it's probably ok.
4096 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
4099 * gdk/gdkrgb.h: Added this module.
4101 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
4103 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
4105 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
4107 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
4108 to this function. it needs to relookup the signal multiple times.
4109 this fixes spurious segfaults that could show up with signal intensive
4110 code, when classes are created during a pending emission (which is
4113 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
4115 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
4116 child if it isn't a label.
4118 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
4121 * gtk/gtkseparator.h:
4122 * gtk/gtkhseparator.h:
4123 * gtk/gtkvseparator.h: macro and GtkType fixups.
4125 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
4127 * gtk/testgtk.c (create_cursors): display the current cursor name.
4129 * gtk/gtktypeutils.h:
4130 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
4131 the fundamental type definition. the GtkArg union now only covers
4132 the required storage types for argument values. adapted the GTK_VALUE_*
4133 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
4135 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
4136 code, fixed int/float collection. fixed a bug in the sanity checking
4137 code for GtkObjects.
4139 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
4140 argument collection code.
4142 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
4143 macros when distinguishing the return type.
4145 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
4147 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
4148 is not NULL before trying to g_list_remove the child. A patch
4149 from Michael Lausch.
4151 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
4153 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
4154 collection (always casted to doubles upon argument passing).
4156 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
4158 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
4159 object_init_func for derived objects with the object's ->klass field
4160 still pointing to the corresponding base class, otherwise overridden
4161 class functions could get called with partly-initialized objects.
4162 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
4164 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
4168 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
4170 * gtk/gtkcontainer.h:
4171 * gtk/gtkcontainer.c:
4172 (gtk_container_child_arg_get_info): new function which wraps
4175 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
4177 * gtk/gtkcontainer.c:
4178 (gtk_container_arg_get):
4179 (gtk_container_arg_set):
4181 (gtk_object_arg_set):
4182 (gtk_object_arg_get):
4183 strictly check for the associated get/set arg functions. if an
4184 arg is readable or writable, the associated class functions *must*
4187 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
4189 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
4190 padding into account if there is an accelerator.
4192 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
4194 * gtk/gtkcontainer.c:
4195 (gtk_container_add_with_args): collect the arguments with
4196 gtk_container_child_args_collect, not through gtk_object_args_collect.
4197 (gtk_container_child_set): likewise.
4199 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
4201 * gtk/gtktypeutils.h:
4202 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
4203 which is derived from GTK_TYPE_STRING.
4205 * gtk/gtkbindings.c: reworked the argument type handling.
4207 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4209 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
4210 so that it seems to allow normal operation in those modes,
4211 although you will only see black (GIMP toolbar now pops up,
4212 just don't create a new image and GIMP now works in 4 bit.)
4214 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4216 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
4217 array, which was too low (?)
4219 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
4221 * gtk/gtkcontainer.h:
4222 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
4223 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
4224 we now export a new function gtk_container_child_args_collect().
4225 for consistency with the object arguments, a few functions got renamed:
4226 gtk_container_child_arg_get -> gtk_container_child_get,
4227 gtk_container_child_arg_set -> gtk_container_child_set,
4228 gtk_container_child_arg_getv -> gtk_container_child_getv,
4229 gtk_container_child_arg_setv -> gtk_container_child_setv,
4230 gtk_container_add_with_argv -> gtk_container_addv.
4231 note, gtk_container_add_with_args() remained, because its equivalent
4232 would be gtk_container_add(,, ...) which would break all existing code.
4233 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
4234 we expect the `arg_name' argument to be a const static string now.
4235 (gtk_container_get_child_arg_type): function removed.
4237 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
4239 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
4240 this is a static inline function that collects command line arguments
4241 from a va_list. this file can just be included in all places that
4242 need this functionality.
4245 * gtk/gtkarg.c: new files which implement most of the argument
4246 handling stuff from gtkobject.c. also collected a few more
4247 gtk_arg_* utility functions from else places.
4250 * gtk/gtkobject.c: moved most of the argument handling code into
4251 gtkarg.c. we now export gtk_object_args_collect() as a non-public
4252 method with a blind va_list pointer.
4253 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
4254 const static string now.
4255 (gtk_object_get_arg_type): function got removed.
4259 (gtk_widget_new): adaptions for gtk_object_args_collect().
4261 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
4262 fundamental type name so as to have a valid prefix, e.g. "bool"->
4263 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
4264 though that should probably be something like GtkNone since the
4265 type itself is called GTK_TYPE_NONE.
4266 even the internal type names need to avoid name clashes and must live
4267 in their own namespace, several code portions rely on that.
4268 we should relly have typedefs such as typedef gchar* GtkString; so the
4269 fundamental type names can be used for code dumpers just like with all
4272 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
4274 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
4275 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
4276 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
4278 (gtk_button_paint): set the background for prelighted buttons with
4279 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
4280 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
4281 the shadow type (otherwise we get strange shadows for coloured buttons).
4282 (gtk_button_set_relief): queue a redraw after changing
4284 (gtk_button_class_init):
4285 (gtk_button_set_arg):
4286 (gtk_button_get_arg): added object argument "GtkButton::relief".
4288 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
4290 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
4293 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
4294 GTK_BIN (button)->child to button->child to keep source compatibility.
4296 * gtk/gtkoptionmenu.c:
4298 * gtkcheckbutton.c: don't refer to button->child, but
4299 GTK_BIN (button)->child instead.
4301 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
4303 * docs/gtkfaq.sgml: update anon CVS info
4305 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
4307 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
4311 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
4314 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
4316 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
4317 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
4319 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
4321 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
4323 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
4326 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
4328 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
4329 error that prevented signal to entry addition for signals with
4332 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
4334 * ltconfig: fix for properly detecting shared lib support on
4335 SunPro cc (taken from libtool 1.2.a)
4337 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
4339 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
4341 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
4343 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
4344 rc set pattern is favoured, this is needed for overriding of style
4345 patterns with subsequently parsed rc files.
4347 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
4349 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
4352 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
4354 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
4356 (gtk_accelerator_name): add "<Release>" to the accelerator name if
4359 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
4362 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
4363 default handler for key-release events, which checks for activation
4364 of GDK_RELEASE_MASK key bindings.
4366 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
4368 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
4370 * gtk/gtkarrow.h: GtkType and macro fixups.
4371 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
4372 "GtkArrow::shadow_type".
4374 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
4376 * gtk/gtkalignment.h:
4377 * gtk/gtkbin.h: GtkType and macro fixups.
4379 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
4380 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
4381 GtkAlignment::xscale, GtkAlignment::yscale.
4383 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
4385 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
4386 fucntions from all parent types upon class initialization.
4388 * gtk/gtkcontainer.c:
4389 (gtk_container_get_type): announce gtk_container_base_class_init to
4391 (gtk_container_base_class_init): new function to feature base class
4393 (gtk_container_get_child_arg):
4394 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
4395 and set_child_arg methods of the class indicated through the argument
4399 (gtk_object_base_class_init): new function to feature base class
4401 (gtk_object_init_type): announce gtk_object_base_class_init to the type
4403 (gtk_object_class_init): setup the get_arg and set_arg pointers for
4406 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
4407 instead of bothering the type system with this.
4409 * gtk/gtkaccellabel.c:
4411 * gtk/gtkradiobutton.c:
4413 * gtk/gtktogglebutton.c:
4414 * gtk/gtktipsquery.c:
4421 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
4422 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
4423 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
4424 arg functions to take a GtkObject argument.
4426 gtk/gtkadjustment.c:
4429 gtk/gtkaspectframe.c:
4432 gtk/gtkcheckbutton.c:
4433 gtk/gtkcheckmenuitem.c:
4441 gtk/gtkdrawingarea.c:
4455 gtk/gtkhscrollbar.c:
4456 gtk/gtkhseparator.c:
4458 gtk/gtkinputdialog.c:
4460 gtk/gtkitemfactory.c:
4468 gtk/gtkoptionmenu.c:
4472 gtk/gtkprogressbar.c:
4473 gtk/gtkradiomenuitem.c:
4478 gtk/gtkscrolledwindow.c:
4480 gtk/gtkspinbutton.c:
4493 gtk/gtkvscrollbar.c:
4494 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
4495 match the modified GtkTypeInfo structure.
4497 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
4499 * gtk/testgtk.c: use rand() instead of random() for portability
4501 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
4505 * gdk/gdk.c: use native Xlib XConvertCase if it's available
4507 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
4509 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
4510 XConvertCase() functionality from X11R6 on X11R5 systems.
4512 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
4514 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
4515 gdk_string_height, gdk_char_height to retrieve the exact
4518 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
4520 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
4521 by Stefan Mars <mars@lysator.liu.se>
4522 * examples/clist/clist.c examples/clist/Makefile: example code
4523 for GtkCList widget from the Tutorial
4525 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
4527 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
4528 if the container is not visible, we might be a toplevel! this holds
4529 for all other base container implementations as well, that are
4530 candidates to derive toplevels from. in general the resizing code will
4531 care about visibility itself.
4532 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
4533 * gtk/gtkbox.c (gtk_box_remove): likewise.
4535 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
4536 gtk_window_set_hints(), since we haven't calculated the new position
4539 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
4540 *mask are alway initialized in a sane way, regardless of the return
4543 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
4545 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
4546 to gtk_container_child_arg_setv, but takes a variable argument list.
4547 new function gtk_container_get_child_arg_type, which is needed by
4548 gtk_object_collect_args.
4550 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
4551 take a function pointer to figure the argument type.
4552 adapted callers to pass gtk_object_get_arg_type.
4553 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
4554 gtk_object_get_arg_type..
4558 (gtk_packer_reorder_child): new function to change the packing order
4560 (gtk_packer_size_request):
4561 (gtk_packer_size_allocate): take container->border_width into acount.
4563 * gtk/gtkpacker.c: implemented widget arguments:
4564 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
4565 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
4566 implemented child arguments:
4567 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
4568 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
4569 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
4570 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
4572 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
4575 * gtk/gtkeventbox.h:
4576 * gtk/gtkeventbox.c: GtkType and macro fixups.
4578 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
4579 sensitivity of an entry.
4581 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
4582 for insensitive base and text.
4584 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
4585 widget state dependent.
4586 (gtk_entry_style_set): likewise.
4587 (gtk_entry_state_changed): set background color on state changes.
4588 (gtk_entry_draw_text): for non selected text, use state dependent
4591 * gtk/gtktogglebutton.c: support for widget arguments
4592 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
4594 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
4596 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
4597 code for 1.0.x-like parameters. Changed internal interface of
4598 gtk_spin_button_real_spin. Several fixes to avoid emission of
4599 "value_changed" where possible.
4601 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
4603 * gtk-boxed.defs: s/GkWidget/GtkWidget/
4605 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
4607 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
4608 to select the resize_mode for the idle-labels container.
4611 * gtk/gtkframe.c: GtkType and macro corrections.
4613 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
4614 support widget argument "GtkRadioButton::group".
4616 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
4618 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
4619 unconditionally if resize_mode has changed.
4621 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
4622 GTK_RESIZE_QUEUE on the scrolled window.
4623 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
4625 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
4627 * gtk/gtkcontainer.h:
4628 * gtk/gtkcontainer.c:
4629 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
4630 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
4631 (gtk_container_queue_resize): new function to queue a container for
4632 a *size* reallocation (doesn't affect its position, and thus its
4633 parent is left untouched usually).
4634 (gtk_container_get_resize_container): new function to retrive the next
4635 most resize container which is not itself queued for a resize.
4636 (gtk_container_idle_sizer): new function to carefully process the
4637 container_resize_queue since it can change during invokation of
4638 gtk_container_check_resize().
4639 (gtk_container_resize_children): total rework of this function to
4640 properly handle resize containers. makes a lot of assumptions whitch
4641 are stated in the comments.
4643 * gtk/gtkcontainer.c:
4644 (gtk_container_real_check_resize): only requeue ourselves if we are not
4646 (gtk_container_clear_resize_widgets): care for automatic deletion of our
4647 resize_widgets list on size_allocate through a handler connection.
4649 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
4650 focus and default widget of a window, so to take the burden from
4651 gtk_widget_unparent.
4653 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
4654 to be clever, but actually messed up the resize_children logic and
4655 caused unneccessary allocations on its whole branch. besides this,
4656 it messed up the display by not invoking a redraw after the allocation.
4658 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
4659 that it is the child again that is queued for a resize.
4660 (gtk_table_attach): likewise.
4661 (gtk_table_remove): likewise.
4663 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4665 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
4666 gtk_entry_adjust_scroll. Required if you change the cursor
4667 position and want to sync it up with your code (Midnight Commander
4668 gtk front end needs this).
4670 * gtk/gtktable.c: Deal with tables that have size 0, 0.
4672 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
4674 * examples/README.1ST: new file to explain how the
4675 code examples should be extracted from the tutorial.
4677 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
4679 * gtk/gtkctree.c (draw_row): added new "line style"
4680 GTK_CTREE_LINES_TABBED
4681 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
4682 search the glist pointer of an GtkCTreeRow
4684 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
4686 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
4687 from, and clean up, the dependencies. Generate to intermediate
4688 files to prevent problems with Ctrl-C.
4690 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
4692 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
4694 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
4695 - Bug fix for precision problem causing occasional double emission
4696 of "value_changed" signal (hopefully works now).
4697 - API change (should be binary compatible) :
4698 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
4699 Modified cursor example appropriately.
4700 To spin by something other than step_/page_increment, use
4701 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
4702 - Made GTK_SHADOW_NONE the default. ;)
4703 - Fixed casting of GtkAdjustment* to GtkWidget* in
4704 gtk_spin_button_value_changed.
4706 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
4708 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
4709 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
4710 resize widget list before queuing the container for a new reize.
4711 (gtk_container_need_resize): changed return value to FALSE, since this
4712 used to indicate that no further resizes are needed.
4713 (gtk_container_set_arg):
4714 (gtk_container_get_arg):
4715 (gtk_container_class_init): implemented GtkContainer::resize_mode
4718 (gtk_container_resize_children): when we walk up the tree of a resize
4719 widget we need to stop if we are the current parent.
4721 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
4722 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
4723 (gtk_widget_hide_all): retrive the toplevel widget from via
4724 gtk_widget_get_resize_container().
4726 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
4728 * gtk/gtklist.c (gtk_list_button_press): Only respond
4729 to selection with button 1. This allows context-sensitive
4730 menus to work correctly.
4732 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
4734 * gtk/gtkaccelgroup.c:
4735 * gtk/gtkbindings.c:
4736 * gtk/gtkcontainer.c:
4737 * gtk/gtkitemfactory.c:
4740 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
4741 g_quark_from_static_string calls to save memory.
4743 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
4744 function _after_ the new data has been setup.
4745 minor changes to object data functions to feature the GQuark type.
4747 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
4749 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
4752 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
4754 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
4755 to be more readable perl, to spit out stuff that looks
4756 more like readable C, and to pipe output through indent
4757 so output looks a lot like readable C. No functional
4760 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
4762 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
4763 necessary when switching to a masked pixmap. (Based on a patch
4764 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
4766 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
4768 * gtk/gtkeditable.[ch]: Added action signals for keyboard
4769 bindings. (move_cursor, kill_word, etc, etc, etc).
4771 removed the time argument from
4772 gtk_editable_cut/copy/paste_clipboard (source but not
4773 binary incompatible...) Instead get time from
4774 gtk_get_current_event ().
4776 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
4779 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
4781 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
4783 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
4784 parent class to GtkNotebookClass when splitting the widget in
4785 two. Also updated some comments.
4787 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
4788 button without a font selected.
4790 Fixed bug in set_font_name - I hadn't updated the code to
4791 search for the style in the font_style clist - it was
4792 still assuming the style row was equal to its index,
4793 but it isn't any more.
4795 Changed 'Reset' button on filter page to 'Clear Filter'.
4796 Deleted old code relating to the old 'Filter Fonts' toggle
4797 Updated some comments.
4798 Cleared 'Actual Fontname' if no font is set.
4800 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
4801 destroying the GtkFontSelection instead of the
4802 GtkFontSelectionDialog.
4804 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
4806 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
4807 flag to make all warnings fatal errors.
4809 * gtk/testthreads.c: moved <pthreads.h> include inside
4812 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
4814 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
4815 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
4817 - Added new function gtk_container_set_resize_mode() for
4818 fine-grained control of where resize-queueing is done.
4820 - Removed GtkContainer::need_resize and GtkWindow::move_resize
4821 - Added GtkContainer::check_resize to replace need_resize.
4823 - Added function gtk_container_check_resize() to trigger
4824 queued resizes, and gtk_container_resize_children() to
4825 Figure which children need to be size-allocated. (logic
4826 moved from gtkwindow.c)
4828 - Reorganized code in gtkwindow.c
4830 - Set the resize-mode for viewports so that resizes within
4831 a viewport don't propagate out of it.
4833 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
4835 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
4837 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
4838 g_return_val_if_fail, because the function *does* return a value.
4840 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
4842 * gtk/gtkaccellabel.h:
4843 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
4844 request the size of the accelerator portion of an accel label.
4845 (gtk_accel_label_size_request): don't request for the accelerators size.
4846 (gtk_accel_label_expose_event): only draw the accelerator if we got
4849 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
4850 width from children.
4852 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
4853 object (after removal has been requested) check if there is still an
4854 accelerator remaining to avoid adding two accelerators on an object.
4855 this can happen for locked accelerators (or accelerator-frozen widgets).
4856 (gtk_menu_size_request): feature childrens accelerator width in size
4859 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
4860 gtk_widget_freeze_accelerators() for dynamically created menu items.
4863 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
4864 which will return a handler_id > 0 if the specified function is pending
4868 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
4869 a signal handler function to stop accelerator addition.
4870 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
4871 which will prevent (undo) any accelerators from being added to or
4872 removed from a widget.
4874 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
4876 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
4877 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
4878 acceleration, new API gtk_spin_button_set_snap_to_ticks.
4880 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
4883 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
4884 the current GdkWindow the pointer is on if there is any.
4886 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
4887 and one column, so we don't construction logic at all. changed a few
4888 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
4891 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
4892 portion, added an additional check for parent != widget.
4894 * more GtkType and macro fixups.
4896 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4898 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
4899 "clip" parameter, which is the clipping rectangle to use. This
4900 eliminates the extremely annoying flicker when exposing parts of
4903 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
4905 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
4908 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
4910 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
4911 != 0 on the argument.
4914 * gtk/gtktable.c: new function gtk_table_resize() which allowes
4915 shrinking and expanding of tables. implementation of widget arguments
4916 and child arguments. many signedness corrections.
4918 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
4920 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
4921 not only the child, otherwise we might end up taking away other
4922 childrens space after the resize.
4924 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
4925 an unknown menu path from any source, that path must always be flagged
4926 as "modified", since we don't really know whether it has its default
4931 * gtk/gtknotebook.c:
4932 * gtk/gtkmenushell.c:
4936 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
4939 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
4940 arguments. implemented child arguments.
4942 * more GtkType and macro fixups.
4944 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
4946 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
4948 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
4949 and gtk_clist_get_hadjustment.
4951 * gtk/gtkcontainer.c:
4952 implementation of children arguments, new class member functions
4953 (child_type), (get_child_arg) and (set_child_arg) plus a new field
4955 (gtk_container_child_type): new function which returns the type of a
4956 child that the container expects for its next addition.
4957 (gtk_container_add_child_arg_type): new function to introduce a new
4958 child argument at class creation time.
4959 (gtk_container_query_child_args): new function to query all child
4960 arguments that are supported by a container class.
4961 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
4963 (gtk_container_child_arg_setv): new function to set a child argument for
4964 a certain container and child combination.
4965 (gtk_container_add_with_args):
4966 (gtk_container_add_with_argv): new functions to feature addition of a
4967 new child in combination with the setting of certain child arguments.
4969 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
4970 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
4971 this should really be done through class cretion hooks some day.
4973 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
4977 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
4978 follow the gtk convention for lower case variable names (important
4979 for language wrappers and widget arguments), and made them guint : 16.
4981 * examples/packer/pack.c: adaptions for the case converted GtkPacker
4984 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
4986 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
4987 change the character pair for single line comments.
4988 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
4989 GtkItemFactoryClass.
4990 (gtk_item_factory_parse_rc_string): likewise.
4992 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
4994 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
4995 lists from the klass structure to a static structure
4996 in gtkfontsel.c; cleans up global the namespace.
4998 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
5000 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
5001 bug with /*< skip >*/ and remove warning.
5003 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
5005 * gtk/Makefile.am: Made the gtkmarshal.* generation
5006 rules maintainer-only.
5008 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
5010 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
5011 gtk/Makefile.am gtk/makenums.pl
5013 Removed out the G_ENUM/FLAGS mechanism in favor
5014 of a perl script that parses the standard headers
5015 (with occasional /*< nick=foo >*/ style overrides)
5016 and extracts the enumerations.
5018 gtk/maketypes.awk: Small improvments to the
5019 translation of names. (Avoid splitting gc into
5022 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
5024 * gtk/gtk.h gtk/gtkfontsel.[ch]:
5025 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
5027 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
5030 - Restored gtk_entry_adjust_scroll to static
5031 - Changed text positioning code so that we always
5032 display as large a portion of the text as possible.
5034 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
5036 * gtk/gtktext.c (gtk_text_finalize): Free internal
5037 structures of text widget. Also, unreference pixmaps
5040 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
5042 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
5043 3.3.1 bug workaround to number keys starting at 1.
5045 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
5047 * docs/gtk_tut.sgml: Fixed urls for complete example
5048 source for scribble+widget-writing examples.
5050 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
5052 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
5053 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
5054 specs of the form c #abcdef [ more keys ] properly.
5056 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
5058 * gtkspinbutton.h gtkspinbutton.c testgtk.c
5059 (gtk_spin_button_set_shadow_type):
5060 New API to set the shadow type of the arrow panel.
5062 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
5064 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
5065 code for drawing the child in two places at once. Unfortunately,
5066 not only does it not work anymore (because reparenting has
5067 been fixed), but it also triggers reparent/expose loops
5070 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
5071 an unecessary unrealize.
5073 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
5075 * gdk/gdkwindow.c (gdk_window_reparent): Update the
5076 old and new parents' child window lists properly.
5078 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
5081 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
5082 and GtkSideType, to be consistent with the rest of Gtk's enum
5083 definitions. wrapped the enum definitions with the G_ eunm wrappers.
5084 spelled out the GTK_ANCHOR_* enum values, since single letters don't
5085 work out corectly as nick-names (left the old values as aliases).
5086 some signdness corrections (border-width, spacing), could stand more.
5088 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5090 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
5093 * examples/packer/pack.c, examples/packer/Makefile: Added
5096 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
5098 * gtk/gtktext.c (remove_cache_line): Fixed broken
5101 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
5102 Check bounds before deleting.
5104 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
5106 * autogen.sh: Support ACLOCAL_FLAGS
5108 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
5110 * gtk-config.in: Added missing quotes.
5112 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
5114 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
5116 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
5118 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
5119 G_COMPILED_WITH_DEBUGGING.
5121 * configure.in (fd_set): Explain check better.
5123 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
5124 the version from which gtk+'s libtool forked. Needed for people
5125 who use post-1.2 alphas of libtool.
5127 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
5129 * glib/* Moved to glib module
5131 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
5132 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
5134 configuration changes for the above:
5136 - Use AM_PATH_GLIB by default to find glib; also accept
5137 a --with-glib option for using an uninstalled glib.
5139 - Put --enable-debug information into config.h so
5140 that we rebuild when it changes. (was in glibconfig.h)
5142 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
5144 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
5146 * gtk/gtknotebook.h (struct _GtkNotebookClass):
5147 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
5148 added missing argument (according to Joseph Coleman's bug report)
5150 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
5151 function to fix notebook focus handling
5153 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
5155 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
5156 glib/gutils.c glib/testglib.c glib/gdataset.c
5157 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
5158 gtk/gtktext.c gtk/gtkbindings.c:
5160 renamed g_const_pointer => gconstpointer
5162 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
5164 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
5165 invoked with (NULL, NULL); (this worked sometime ago).
5167 * gtk/gtktypeutils.h:
5168 * gtk/gtktypeutils.c: enum and flags type creation can now be done
5169 through gtk_type_register_enum() and gtk_type_register_flags(),
5170 which allow to specify the enum value arrays directly.
5171 the NULL terminated value arrays can be retrived through
5172 gtk_type_enum_get_values() and gtk_type_flags_get_values();
5173 (gtk_type_children_types): new function to query derived types.
5175 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
5177 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
5178 environment to genmarshal.pl.
5179 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
5180 rule), and removed it where not needed (in the dependencies).
5182 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
5184 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
5186 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
5187 was just g_direct_hash.
5189 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
5191 * configure.in: x_libs=, not $x_libs=. Enough said.
5192 (Case only hit for --disable-xshm)
5194 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
5196 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
5197 when testing for X libraries, don't replace them. Because
5198 the user might have specified the path to the X libraries
5199 themself before running configure.
5201 * examples/**.c: Changed all gpointer * to gpointer
5203 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
5205 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
5206 fleur_cursor field. Now the cursor is created/destroyed on demand
5207 by the routines that need it.
5209 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
5210 (gtk_handle_box_motion): The fleur cursor is created and destroyed
5213 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
5215 * gtk/gtktypeutils.h:
5216 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
5217 gtk_enum_set_values to gtk_type_enum_get_values and
5218 gtk_type_enum_set_values respectively, since they are actually type
5221 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
5224 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
5226 * gtk/gtkselection.h:
5227 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
5228 gtk_selection_data_free.
5230 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
5231 for "selection_received", which was completely bogus.
5232 * other fixups to gtk_signal_new() calls all over the place.
5234 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
5235 * gtk/gtktypebuiltins_vars.c: type variable implementations.
5236 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
5238 * gtk/gtktypebuiltins_evals.c: enum value arrays.
5239 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
5241 * gtk/gtk.defs: generated file with scheme syntax for type definitions
5242 of gtk and gdk structures and enums.
5243 * gtk/gtktypeutils.h:
5244 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
5245 macros anymore (this fixes binary incompatibility with new enum
5248 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
5249 key bindings for this widget.
5250 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
5254 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
5255 again. new functions gtk_object_class_user_signal_new () and
5256 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
5257 flag on the signal creation.
5259 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
5261 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
5263 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
5269 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
5271 * reworked enum value array generation code. gtk.defs is a generated
5274 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
5276 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
5277 check menu items in the compatibility code (this required me to remove
5278 the "<check>" part from the menu item name, grrr).
5280 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
5282 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
5283 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
5285 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
5287 * gtk/gtkitemfactory.h:
5288 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
5289 additions to the dumping code to feature GtkPatternSpec.
5290 even found a bug to fix in the original code ;)
5292 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
5294 * gtk/gtkitemfactory.c: support different types of callbacks, to
5295 maintain existing code.
5297 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
5299 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
5301 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
5302 this should eventually be done by gentypeinfo.el somewhen.
5303 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
5305 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
5306 enum values of an enum type.
5314 brought enum/flags definitions in sync, added a few more enum
5315 definitions for bindings and pattern matching.
5317 * some more macro and GtkType fixups in various places.
5319 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
5320 as a key-release modifier for the binding system.
5322 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
5324 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
5325 was a stale list pointer that is already present in GtkMenuShell.
5327 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
5328 GtkMenuShell::selection_done which is emitted after the menu shell
5329 poped down again and all possible menu items have been activated.
5331 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
5333 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
5334 before activation of the menuitem, so the menu is actually taken off the
5335 screen prior to any menu item activation.
5337 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
5341 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
5342 the emission of the "add-accelerator" signal on a widget. this is
5343 usefull to prevent accelerator installation on certain widgets.
5345 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
5346 labels left justified, by setting their alignment. stop accelerator
5347 installation for the menu items, since we use dynamic menus.
5349 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
5351 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
5352 should *really* use GtkItemFactory. this is only for preserving source
5353 compatibility where possible, use of GtkMenuFactory is deprecated as of
5356 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
5357 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
5358 missed this possibility when i added gtk_object_class_add_user_signal
5361 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
5363 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
5365 * gtk/gtkaccelgroup.h:
5366 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
5368 * gtk/gtkaccellabel.h:
5369 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
5370 display of the accelerators associated with a certain widget.
5372 * gtk/gtkitemfactory.h:
5373 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
5374 parsing and accelerator handling.
5376 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
5378 (gtk_menu_map): removed the allocation code.
5379 (gtk_menu_size_allocate): care for redrawing of children and resize
5380 our widget->window correctly.
5381 (gtk_menu_key_press): feature the new accelerator groups.
5383 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
5384 submenu if neccessary.
5386 * gtk/gtkmenuitem.c:
5387 * gtk/gtkcheckmenuitem.c:
5388 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
5392 (gdk_keyval_from_name):
5393 (gdk_keyval_name): new functions for keyval<->key-name associations.
5394 (gdk_keyval_to_upper):
5395 (gdk_keyval_to_lower):
5396 (gdk_keyval_is_upper):
5397 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
5398 regards to their cases.
5400 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
5402 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
5403 widget's class path.
5404 (gtk_widget_path): new function to calculate a widget's name path.
5406 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
5407 pattern matching, features reversed pattern matches.
5409 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
5411 * examples/extract.sh, examples/extract.awk:
5412 New files to automagically extract code examples from the
5415 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
5417 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
5418 * gtk/gtkcontainer.c (gtk_container_focus_move):
5419 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
5421 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
5423 * docs/gtk_tut.sgml: minor changes to support auto
5424 extraction of example code
5426 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
5428 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
5429 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
5431 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
5433 * docs/gtk_tut.sgml:
5434 - new section on Events
5435 - change all delete_event callbacks to include
5436 a GdkEvent parameter
5437 - clean up the formatting
5439 * examples - helloworld.c, helloworld2.c, notebook.c,
5440 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
5441 rulers.c, table.c, wheelbarrow.c: change all delete_event
5442 callbacks to include a GdkEvent parameter.
5444 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
5446 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
5447 field of crossing events.
5448 (struct _GdkEventCrossing): Added the following fields: time, x,
5449 y, x_root, y_root, mode, focus, state.
5451 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
5452 crossing event structure.
5454 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
5455 changes to the crossing event structure.
5457 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
5459 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
5461 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
5463 * docs/gtk_tut.sgml:
5464 - GtkTooltips, update to current API
5465 - change all 'gpointer *data' to 'gpointer data'
5466 - other minor changes
5468 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
5470 * configure.in (LDFLAGS): Bomb out with a moderately
5471 helpful message if detection of X libraries fails.
5473 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
5476 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
5477 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
5479 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
5480 gtk/gtksignal.c gtk/gtktext.c:
5482 Fixups for warnings from adding const to type of GHashFunc,
5485 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
5486 ansi-warnings fixups.
5488 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
5490 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
5491 Locate child at (border_width,border_width), not
5492 (2*border_width,2*border_width). [ The border is _outside_
5495 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
5496 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
5498 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
5500 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
5503 1998-05-22 <sopwith@redhat.com>
5505 * gtk/gtkeventbox.c: Pass size_allocate on to the child
5506 regardless of whether it is visible or not. Also
5507 locate child at (border_width,border_width), not (0,0)
5509 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
5511 * gtk/gtkhandlebox.c: Added style_set handler.
5513 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
5514 [ From: Chris Lahey <clahey@umich.edu> ]
5516 * gtk/gtkeditable.c, gtk/gtkeditable.h,
5517 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
5518 and set_position functions to get and set the cursor position.
5520 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
5521 signal status. Make GtkText do user-controlled insertion
5522 and deletion through the Editable widget so that these
5523 signals are properly emitted.
5525 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
5526 display asterisks instead of empty space when visible = FALSE)
5528 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
5530 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
5533 1998-05-21 <sopwith@redhat.com>
5535 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
5536 custom routine for loading images specified in gtkrc's.
5538 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
5540 * configure.in: Use pthread_attr_init() as a test function,
5541 since most of the rest of -lpthread is macros on DU4.
5543 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
5545 * gtk/gtkcombo.c: implemented completion in the entry.
5547 1998-05-18 <sopwith@moebuis.labs.redhat.com>
5549 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
5551 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
5553 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
5554 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
5555 to be of runtype GTK_RUN_LAST.
5557 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
5560 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
5563 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
5565 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
5566 text retrived from GtkEntry. only intercept the Tab key if there
5567 was some text to complete.
5569 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
5571 Basic thread-awareness:
5573 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
5575 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
5576 gdk_threads_[init/enter/leave] for applications, plus
5577 gdk_threads_wake to wake the mainloop thread out of
5580 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
5582 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
5584 * gtk/testgtk.c (list_clear): Account for the fact
5585 that gtk_list_clear_items is not inclusive. (Clears
5588 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
5590 * gdk/gdk.c: include gdkkeysyms.h always
5593 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
5595 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
5596 the visibility_notify_event method and changed method order.
5598 1998-05-14 <sopwith@moebuis.labs.redhat.com>
5600 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
5602 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
5604 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
5605 from Olli Helenius <ollhel@batman.jytol.fi>.
5607 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
5609 (gtk_type_set_chunk_alloc): new function to allow allocation of new
5610 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
5613 * gtk/gtkobject.c (gtk_object_finalize): free an object through
5616 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
5618 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
5619 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
5621 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
5623 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
5624 GPOINTER_TO_UINT fixes.
5626 * gtk/gtksignal.c: Include <string.h> for memset.
5628 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
5629 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
5631 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
5632 Cleanups, comments and the ability to have rulers with
5633 a reversed direction.
5635 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
5637 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
5638 that Sopwith missed when changing stat => lstat.
5640 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
5642 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
5643 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
5644 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
5646 * gdk/gdk.c: Print sizeof() results
5647 as g_print("%ld", (glong)sizeof(foo)), to deal with
5648 sizeof() being long on Alpha's.
5650 * gtk/testgtk.c: include <string.h> for strlen
5652 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
5653 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
5655 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
5656 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
5658 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
5660 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
5661 (From: Christopher James Lahey <clahey@umich.edu>)
5663 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
5666 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
5667 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
5668 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
5669 the default relief for the toolbars buttons. Added an
5670 toggle for the toolbar test in testgtk.c.
5672 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
5674 * docs/gtk-config.1: Rewritten and hopefully improved.
5676 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
5679 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
5681 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
5683 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
5684 GtkPreview's visual and colormap, otherwise things can BadMatch.
5686 * gtk/testgtk.c (create_color_preview):
5687 (create_gray_preview): Removed pushing/popping of visual/colormap
5688 now that GtkPreview does things correctly.
5690 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
5691 (gtk_color_selection_draw_wheel): Pick the style from the correct
5692 place (the colorsel->wheel_area widget) so that the GCs will match
5693 with where we are going to paint to.
5695 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
5696 of visual/colormap now that GtkColorSelection does things the
5699 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
5701 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
5702 previously unused window->need_resize flag to mark if a window's
5703 descendents changed size while the window was not visible. In this
5704 case, when the window becomes visible, we reallocate everything,
5705 since we didn't keep track of what actually changed.
5707 (Fixes bug where changing the popdown strings of a
5708 combo to something of the same length caused them to
5709 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
5711 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
5713 [security audit by Alan Cox]
5715 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
5716 exceed maximum assumed size.
5718 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
5719 not exceed maximum assumed size.
5720 (gtk_menu_factory_remove): likewise.
5721 (gtk_menu_factory_find_recurse): likewise.
5723 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
5725 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
5726 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
5727 redrawn if that is still neccessary. don't allow queueing of already
5729 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
5730 widgets which are in the queue can be destroyed safely, handle
5731 requeueing properly.
5732 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
5733 widgets which are in the queue can be destroyed/unrealized safely.
5735 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
5737 * gtkfaq.sgml: add question on multi-threading,
5740 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
5742 * configure.in (cflags_set): preserve automake CFLAGS.
5744 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
5745 and libgdk-1.1.la. this means we need to change certain portions of
5746 the Makefile.am on major/minor version bumps.
5748 * ltmain.sh: the -release option is not required anymore.
5750 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
5751 of the first argument to be of type GtkObject. unconditionally compile
5752 this function. removed __GNUC__ dependancy of the gtk_object_ref and
5753 gtk_object_unref macro wrappers for this function.
5755 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
5759 (gtk_object_data_try_key):
5760 (gtk_object_data_force_id): these are now macros substituting the old
5761 functions. we just use the corresponding g_dataset_* functions for
5762 key->id associations. (this is to assure unique key<->id associations).
5764 1998-05-10 Stefan Jeske <stefan@gtk.org>
5766 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
5769 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
5771 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
5773 * configure.in (LIBS): Try to figure out if this
5774 is Digital Unix and we need -std1 to get the
5777 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
5779 * docs/gtk_tut_it.sgml: update of Italian tutorial
5780 translation from Daniele Canazza <dcanazz@tin.it>
5782 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
5784 * gtk/gtkfeatures.h.in: new file used as template for
5785 * gtk/gtkfeatures.h: new file to define macros indicating newly
5786 introduced features, such as GTK_HAVE_SIGNAL_INIT.
5789 (gtk_signal_emitv_by_name):
5791 new functions to emit signals with an already provided parameter set.
5792 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
5793 (gtk_signal_real_emit): prototype changes, so this functions always
5794 gets its parameters and signal structure as arguments.
5795 (gtk_signal_emit): provide the signal structure and parameter list for
5796 gtk_signal_real_emit.
5797 (gtk_signal_emit_by_name): likewise.
5799 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
5801 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
5802 signal connections through unsetting GTK_CONNECTED.
5803 (gtk_signal_handler_insert): reflect the presence of signal connections
5804 through setting GTK_CONNECTED.
5805 (gtk_signal_real_emit): only check for handler emissions if the object
5806 has the GTK_CONNECTED flag set.
5807 (gtk_signal_handler_pending): don't check for pending handlers if the
5808 GTK_CONNECTED flag is not set for this object.
5810 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
5811 a GtkObject has signal handler connections.
5813 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
5814 set for this object call gtk_signal_handlers_destroy().
5816 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
5817 multiple processing of macro args.
5819 * gtk/gtktypeutils.c:
5822 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
5824 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
5826 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
5827 draw-queue when we are done.
5829 (gtk_widget_queue_draw/_queu_resize): Always return
5830 FALSE and avoid having two idles at the same time.
5832 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
5834 * gtk/gtktext.c: Various fixes to make sure cache
5835 lines are freed if line_start_cache doesn't point to the
5836 beginning of the cache.
5838 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
5840 * style_set improvements for GtkText and GtkEntry
5842 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
5844 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
5847 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
5849 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
5850 data chunks through a global object data structure list. unlink
5851 object data before invoking its destroy function.
5852 (gtk_object_finalize): slight modification to allow usage of object
5853 data during object finalization.
5855 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
5857 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
5858 signal names, e.g. "signal-name" is now an alias for "signal_name".
5859 (gtk_signal_handler_new): allocate handlers through a global handler
5860 structure list, that's faster than memchunks.
5861 (gtk_emission_new): allocate emissions through a global emission
5862 structure list, that's faster than memchunks.
5864 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
5866 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
5868 * ltmain.sh: added a new commandline flag -postfix similar to -release,
5869 but will immediately change the library name.
5872 * gtk/Makefile.am: specify -postfix and -version-info
5874 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
5875 GTK_BINARY_AGE. calculate LT_* variables for libtool.
5877 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
5879 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
5880 background (fg_set -> bg_set confusion).
5882 1998-05-06 Stefan Jeske <stefan@gtk.org>
5884 * gtk/testgtk.c (unselect_all): Removed code that caused an
5887 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
5889 * gtk/gtksignal.c: reimplemented the signal storage system to use a
5890 linear array rather than a hash table.
5891 be carefull *not* to keep any GtkSignal pointers across invokations
5892 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
5893 general code cleanups, made all allocations through memchunks.
5894 (gtk_signal_lookup): we now do the lookup of signals through a key_id
5895 for the signal names to avoid multiple hashing of the signal name on
5896 lookups for the several hirarchy levels of an object.
5898 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
5900 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
5901 to speed things up and remove code duplication.
5903 Reintegrated buffer overflow patches, and added
5904 some extra paranoia.
5906 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
5908 * gdk/gdk.c (gdk_event_translate): A guint * was
5909 being passed where X expected a Keysym *, and
5910 keysyms are long's on Alpha Linux. This was causing
5911 segfaults in Xlib, apparently because of alignment.
5912 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
5914 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
5916 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
5917 set GDK_EXPOSURE_MASK for DrawingAreas
5919 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
5921 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
5922 (superceded by RC file reparsing capabilities)
5924 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
5925 events. (Shouldn't be sent to the InputOnly leader, which
5926 it is now by gdk_event_send_clientmessage_toall
5928 * gtk/testgtk.c: Added extra button to rcfiles test
5929 to send out _GDK_READ_RCFILES events.
5931 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
5933 * gtk/gtkselection.c (gtk_selection_clear): Fixed
5934 reversed conditionals that caused segfault on some
5937 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
5939 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
5940 cast to GTK_OBJECT for gtk_object_ref.
5942 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
5944 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
5945 checking for signal initialization in gtksignal.c.
5947 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
5948 a long debugging period ;)
5950 1998-05-05 Stefan Jeske <stefan@gtk.org>
5952 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
5953 New function to wrap XSetDashes; modified gtkctree.c to use it.
5955 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
5957 * configure.in: Added $x_libs in the other_libraries field in the
5958 check for XShapeCombineMask.
5960 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
5962 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
5964 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
5965 linear array rather than a hash table. it actually speeded up testgtk
5966 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
5967 pointers across invokations of gtk_type_node_next_and_invalidate() and
5968 therefore gtk_type_unique()!
5970 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
5971 inheritance of a class pointer.
5972 (GTK_OBJECT): modifications for speedups.
5973 (GTK_IS_OBJECT): likewise.
5974 (GTK_OBJECT_CLASS): likewise.
5975 (suggested by owen).
5977 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
5979 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
5981 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
5982 since its derivation changed 4 month ago ;(. showed up with the unique
5983 type name checking code in gtk_type_unique().
5985 * random guint->GtkType and macro fixups.
5987 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
5989 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
5990 Configure events that would result in a negative
5993 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
5995 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
5996 "glibconfig.h" and another about writing another IRC
5999 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
6001 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
6002 parameters to log are doubles. Digital Unix apparently
6003 is missing the argument in its prototype.
6005 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
6007 * gtk/gtklabel.c (gtk_label_state_changed): Don't
6008 force a clear until the widget is actually on
6011 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
6013 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
6014 to make this consistent with the gtk-1-0 tree.
6016 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
6018 * configure.in acheader.h gdk/gdkwindow.c
6019 Check for Shape extension both on the client and server
6020 side. (And, more importantly, check for the shape extension
6021 so we may include -lXext even when compiling with --disable-xshm)
6023 Don't set override_redirect on all shaped windows. It isn't
6026 * gdk/gdkwindow.c: Set ->colormap to NULL for root
6027 and foreign windows. Use this to check if we
6028 need to get the colormap from X.
6030 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
6032 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
6033 between the default and the button always in GTK_STATE_NORMAL.
6035 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
6038 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
6040 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
6041 Fix a buffer overflow on pixmaps that claim to have
6042 more than 31 characters per pixel.
6044 (gdk_pixmap_read_string): Don't wrap around strings longer
6045 than half of address space ;-)
6047 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
6048 that were used for printing integers.
6055 int foo (void) { ... }
6057 Even where there were proper prototypes elsewhere.
6059 * gdk/gxid.c (handle_claim_device): Some extra checks.
6060 It isn't safe against being fed bad X id's, but at
6061 least it should be safe against deleting all your
6064 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
6066 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
6067 to set the adjustments value when there is no current emission.
6068 [ Removed by mutual agreement owt 5/3/1998 ]
6070 * gtk/gtksignal.c: added new functions to retrive the number of
6071 existing emissions for a certain signal.
6072 (gtk_signal_n_emissions): new function.
6073 (gtk_signal_n_emissions_by_name): new function.
6075 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
6077 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
6078 set the current focus_child of a container, does proper referencing and
6079 adjusts the vadjustment/hadjustment associated with the focus widget.
6081 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
6082 containers via gtk_container_set_focus_child.
6084 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
6087 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
6088 child since not every child removal goes through this function (this
6089 showed up after gtk_container_set_focus_child() started to reference the
6090 focus_child of a container).
6092 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
6093 of a container from gtk_container_remove into this place.
6095 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
6097 * gtk/gtksignal.c: added new functions to operate on intermediate
6098 function pointers. implemented incremental blocking.
6099 (gtk_signal_disconnect_by_func): new function.
6100 (gtk_signal_handler_block_by_func): new function.
6101 (gtk_signal_handler_unblock_by_func): new function
6103 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
6105 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
6106 Always show the scrollbars when the policy is
6107 GTK_POLICY_ALWAYS...
6109 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
6111 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
6112 "value_changed" if we really passed a new value.
6113 (gtk_adjustment_changed): new function to emit the "changed" signal.
6114 (gtk_adjustment_set_value): new function to emit the "value_changed"
6117 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
6119 * gtk/gtkcombo.c: Further changes to the way the window
6120 is popped up so that it will be compatible with
6121 auto-scrolling in the future.
6123 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
6125 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
6126 the combo-list is empty since that will cause the combo to operate
6127 on a non existing GtkList window.
6128 (gtk_combo_get_pos): provide the combo list with a usfull default
6130 (gtk_combo_popup_button_press): grab the focus.
6131 (gtk_combo_activate): grab the focus.
6133 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
6135 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
6136 function to reset the RC styles for a heirarchy
6138 Clear the window background if necessary in
6139 gtk_window_style_set.
6141 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
6142 rereads all previously read RC files.
6144 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
6145 (Should it just be called gdk_get_toplevels?)
6147 * gtk/testgtk.c: New test to reload RC files.
6149 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
6152 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
6153 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
6154 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
6155 the GTK_ prefix (this solution involved less changes in the
6156 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
6157 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
6158 from lars & stefan to support the derivation of GtkCtree.
6162 initial import of a tree widget derived from gtkclist, courtesy
6163 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
6166 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
6168 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
6170 (gtk_list_insert_items):
6171 (gtk_list_remove_items_internal):
6172 (gtk_list_clear_items):
6173 remove a possible pointer grab, we might get thrown into a loop
6175 (gtk_list_button_press): grab the pointer *before* selecting the child,
6176 because selection of items may cause the lists children to change,
6177 resulting in a grab release.
6178 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
6180 (gtk_list_shutdown): remove all children from the list.
6181 (gtk_real_list_unselect_child):
6182 (gtk_real_list_select_child): *always* put our internal structures into
6183 sane state *before* signal emisions (i.e. list->selection updates prior
6184 to gtk_list_item_[de]select() calls).
6186 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
6187 focused child walks out of the window.
6188 removed CAN_FOCUS for the combo arrow's button since it doesn't react
6189 to keyboard events ("clicked" connection is missing).
6191 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
6193 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
6194 getting colormap for FOREIGN windows to go along with
6195 Raster's fix for visuals.
6200 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
6202 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
6203 Check to catch the case when the viewport fits in either
6204 direction or both, instead of flip-flopping infinitely.
6206 Only show/hide the scrollbars once at the end.
6208 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
6210 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
6211 Include the scrollbars in the foreach call.
6212 (gtk-fortier-980405-0.patch;
6213 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
6216 really should also include its tabs, but that might cause
6217 problems for programs if they
6219 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
6221 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
6222 resize if the size actually changed.
6223 (gtk-johannes-980414-0.patch ;
6224 johannes@nada.kth.se (Johannes Keukelaar) )
6226 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
6228 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6229 ltmain.sh ltconfig config.sub config.guess:
6231 Reverted back to libtool-1.2 (plus minor patches) so as not to
6232 force the issue for everyone else.
6234 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
6236 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6237 Updated to libtool 1.2a.
6239 * gtk/gtkclist.c: Draw the in-between lines with style->base
6240 instead of style->white.
6242 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
6244 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
6245 Cache the colormap and children of a window locally
6246 instead of fetching them from the server when needed.
6247 Huge performance difference for creating/destroying
6250 * gtk/gtkstyle.c: Find the depth from the cached
6251 visual, instead of asking the server.
6253 * gtk.m4: Distribute the new version which tries to
6254 figure out what went wrong and give helpful error
6257 * ltmain.sh ltconfig config.sub config.sh:
6258 Updated to libtool 1.2a
6260 * gtk/gtktext.c: Fixed a bug where the drawn level
6261 was being messed up when the text was scrolled
6264 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
6266 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
6267 the filesystem under you (fix from Josh)
6269 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
6271 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
6272 if the viewport already exists before iterating over it, maybe we
6273 haven't been constructed yet.
6275 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
6277 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
6278 the GtkBin widget already has a child.
6280 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
6281 check that child->parent == NULL;
6283 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
6285 * gtk/gtkselection.c (gtk_selection_clear): Only return
6286 FALSE when the clear event is been rejected, not when
6287 widget has already lost the selection. (Which should
6288 only happen when we are setting the selection to another
6291 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
6293 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
6295 Removed the "check visibility after gtk_widget_unparent" bug
6296 in hopefully the last three places.
6298 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
6300 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
6303 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
6305 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
6306 for CAN_FOCUS widgets.
6308 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
6309 adjustments for the table.
6310 (create_list): feature automatic adjustment of the scrolled window to
6311 always contain the focused child.
6312 (create_main_window): keep the focussed button always inside of the
6315 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
6316 adjustments, to contain the allocation of the currently focused child.
6317 (gtk_container_set_focus_hadjustment): new functin to set the
6318 horizontal focus adjustment.
6319 (gtk_container_set_focus_vadjustment): new functin to set the vertical
6322 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
6323 clamp the currents adjustment page into a specific range.
6325 * random GtkType fixups for gtk_*_get_type() functions.
6327 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
6329 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
6330 Account for the fact that gtk_tree_item_remove_subtree
6331 will be called recursively.
6333 Handle removing a collapsed subtree.
6335 (From Andy Dustman <adustman@comstar.net>)
6337 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
6338 root tree when removing items from a non-previously
6341 * gtk/testgtk.c: Added a remove_subtree button.
6343 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
6345 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
6346 before object removing data. This change fixes a bug where
6347 removing the last weak references would cause it to be
6350 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
6352 * gdk/Makefile.am: Removed mostly useless dependency that
6353 was causing problems for SGI's make, when used with
6354 the 'make dist' form of GTK+. (Dependency caused dependencies
6355 to be redone when BUILT_SOURCES changed)
6357 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
6359 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
6362 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
6363 to gtkitem.c so dragging can also work in lists.
6365 * gtk/gtklist.[ch]: Track child enter events and use
6366 those to allow dragging the selection.
6368 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
6370 * gtk/gtktext.c: Try enabling background pixmaps for editable text
6371 widgets. There is a bit of flashing, but not too bad. If you
6372 don't want the flashing, you can always not set a background
6375 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
6377 * gtk/gtktext.c: Fixed a bug where the drawn level
6378 was being messed up when the text was scrolled
6381 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
6383 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
6384 bug: There is no need to set the ExposureMask in the XGrabPointer
6385 (this caused DnD programs to crash).
6387 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
6389 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
6390 field to be of type guint.
6391 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
6393 (gtk_accelerator_table_install): keep a per object list of accelerator
6394 tables that refer to this object.
6395 (gtk_accelerator_table_remove): remove the accelerator table from the
6397 (gtk_accelerator_table_clean): warn if there are any object references
6398 left in an accelerator table upon destruction.
6399 (gtk_accelerator_tables_delete): new function to delete object
6400 references from the accelerator tables associated with this object.
6402 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
6403 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
6404 of an accelerator can be prevented by gtk_signal_emit_stop().
6405 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
6406 so there are no stale pointers in accelerator tables left.
6408 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
6410 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
6411 visible before we unparent it.
6413 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
6415 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
6416 running_timeouts list with the tmp_list link itself, not with a new
6417 GList structure pointing to our link. that would fill up memory and
6418 causes the GList.data fields of the running_timeouts list to point to
6419 GList structures and not GtkTimeoutFunction structures which is a
6421 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
6424 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
6426 * gtk/gtkradiomenuitem.h:
6427 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
6428 ala gtk_radio_button_set_group.
6429 (gtk_radio_menu_item_init): assure that we always have at least a group
6430 that points to self.
6432 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
6433 added g_return_if_fail() statements.
6434 (gtk_radio_button_init): assure that we always have at least a group
6435 that points to self.
6437 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
6439 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
6441 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
6443 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
6444 (Damon Chaplin), which i got wrong when applying Damon's patch the last
6447 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
6449 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
6450 that when we are running with a non-installed colormap,
6451 in 8-bit pseudo-color, we actually are using the system
6452 visual. (Fixes *Bad Match* errors on Digital Unix machines
6453 with multiple 8-bit pseudo-color visuals)
6455 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
6457 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
6458 by whoever thought that randomly changing ints to unsigned int
6459 without reviewing the code was a good idea. It is, btw not
6460 mentioned in the ChangeLog as usual, but I know it was not Elliot
6461 the culprit this time.
6463 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
6465 * Released GTK+ 1.0.0