1 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
3 * HACKING: indent other than GNU indent should be OK
6 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
7 instead of piping through indent. If indent wasn't
8 found in ./configure don't bother indenting at
11 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
13 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
15 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
17 * gtk/Makefile.am: use $(AWK) instead of awk
19 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
21 * gtk/Makefile.am (gdk_headers):
22 Remove references to $(top_srcdir).
23 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
24 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
26 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
28 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
29 GData*object_data to cure compiler warnings.
31 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
35 * mkinstalldirs: updated to latest automake version
37 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
39 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
40 (gtkinclude_HEADERS): ... here.
41 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
43 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
45 * HACKING: added GNU indent, as it is now required to successfully
46 build gtk+. Should this be detected in autoconf, possibly?
48 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
50 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
51 change library versioning scheme to drop LT_RELEASE
52 from the -l line, while keeping it in the soname.
54 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
56 * configure.in Makefile.in: define a MAINT-like variable REBUILD
57 which is set if Perl and awk are found, and autogenerated sources
58 can be rebuilt. Remove the auto-generated sources from
61 Add dependencies so that the autogenerated sources are
62 rebuilt if the files they depend on change.
63 (This unfortunately currently results in the entire
64 gtk/ directory being rebuilt when any header changes.
65 Moving all enums to gtkenums.h would fix this.)
67 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
69 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
70 gtk_object_set_data_destroy_by_id functions to set the destroy
71 function pointer for an existing data portion.
73 * gtk/gtkobject.c: removed the GtkObjectData implementation and
74 made all gtk_object_*data* functions use the GLib equivalents.
76 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
78 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
79 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
80 (widget != NULL), otherwise radio button insertion will not work
81 -- the widget argument is NULL for the first radio button in the
84 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
86 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
87 of g_new to malloc(), added back in the one place where
88 it actually mattered. #include <stdlib.h>.
90 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
92 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
94 * gtk/gtkfilesel.c: Keep a list of directories in which we never
95 want to stat the entries (like /afs), and assume everything in
96 those directories is a subdirectory.
98 - When following a path, try to open components even when
99 we don't find them in their parent's directory to
100 support automounters.
102 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
104 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
105 a new size from the WM if we asked for the same size
106 before and our request was rejected.
108 * gtk/gtkwindow.c (gtk_window_configure_event): If
109 in response to a request, we get a configure event
110 with unchanged dimensions, send a synthetic expose
111 since ForgetGravity won't expose our window.
113 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
115 * gtk/gtktext.c (adjust_adj): Change the way we
116 set the adjustments on resize so that it tries to
117 keep the beginning of the text in approximately
120 Removed assertion that the above change made invalid.
122 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
124 * gtk/gtktext.c: - Save first_cut_pixels when switching
125 sizes, so that if we switch to the _same_ size,
126 we don't move lines around.
128 - Make sure that the text area always has a size of at
129 least 1x1, then do all computations when realized.
131 - When fetching lines in recompute_geometry, make
132 sure we fetch enough lines to cover the screen.
134 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
136 * gdk/gdkimage.c: changed g_new()s to malloc()s and
137 g_free()s to free()s to avoid mixing g_new()s with
138 free()s. X itself uses free() on some of the
141 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
143 * gtkfilesel.c: Maintain a list of directories like
144 /afs we know contain only directories, and avoid
145 stat'ing files in those directories. (Because
146 stat'ing all files in /afs is extremely expensive)
148 To support automounters, try to open directories,
149 even if we couldn't find them when reading their
152 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
154 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
155 to allow the same gtk.m4 to work for 1.0.x and
158 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
160 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
161 to set/unset the selectable flag of a single row.
162 (gtk_clist_get_selectable): new function
163 to get the state of the selectable flag
165 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
166 (gtk_ctree_node_get_selectable): clist analogons
168 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
170 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
173 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
174 bugs in the 4bit gray cases.
176 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
178 * configure.in: added -posix check for NeXTStep
180 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
181 a unique buffer for each thread.
183 * docs/gtk-config.1: clarified copyright
185 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
187 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
189 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
191 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
194 * ltconfig: use GLib's ltconfig which honours lcc.
196 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
198 * configure.in: comment the -std1 check and save LIBS properly
200 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
202 * gtk/testrgb.c: #include <stdlib.h>
204 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
206 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
207 When the pointer is grabbed on an input window,
208 either explicitely, or through press-grab, and
209 then grabbed on a non-input window, ungrab the
212 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
214 * gtk/gtktypeutils.h: don't include any gdk headers.
215 added structure definitions for GtkTypeObject and GtkTypeClass,
216 which cover the very basic fields of GtkObject and GtkObjectClass,
217 which are actually used by the type system.
219 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
220 we only refer to our own structures. improved class inheritance
221 sanity checking a bit.
223 * gtk/gtkobject.h: placed appropriate comments at the beginnings
224 of the GtkObject and GtkObjectClass structures, which explain
225 their relationship to GtkTypeObject and GtkTypeClass.
227 * gtk/gtktypeutils.h:
229 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
230 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
231 gtkobject.h to gtktypeutils.h.
235 removed gtk_object_check_cast() and gtk_object_check_class_cast()
236 functions. to keep source compatibility, we can provide macro aliases
237 for the corresponding gtk_type_* functions. but then again, people
238 shouldn't have been using these functions anyways since they were part
239 of Gtk's internal API.
241 * gtk/gtktypeutils.h:
242 * gtk/gtktypeutils.c:
243 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
244 functions to check GtkTypeObject and GtkTypeClass types.
246 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
249 * gtk/gtkctree.c: `const' fixups.
252 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
254 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
255 if it is passed as NULL.
257 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
259 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
260 big-endian cases. Added a 4bpp packed gray mode (somewhat
261 incorrectly hardwired to MSB), which should take care of
264 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
266 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
269 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
271 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
272 GTK_MENU_DIR_CHILD: check for the existance of
273 menu_shell->active_menu_item before accessing its child.
275 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
276 don't, make a default selection.
278 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
280 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
281 the children with _forall for sensitivity changes and with
282 _foreach on pure state changes. this fixes a lot of the
283 old inclusions of internal widgets into _foreach calls.
285 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
286 do the work. don't walk the subtrees of first level children.
288 * gtk/gtktreeitem.c: provide a _forall implementation,
289 which walks the subtrees as well for include_internals.
291 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
292 the submenus as well for include_internals.
294 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
295 implemented gtk_scrolled_window_forall, which will iterate over
296 the viewport and the scrollbars for gtk_container_forall or
297 iterate over the viewports children for gtk_container_foreach.
303 * gtk/gtkmenushell.c:
310 removed the old gtk_*_foreach functions and provided gtk_*_forall.
313 (gtk_notebook_real_switch_page): expose tabs.
314 (gtk_notebook_page_num): new function to return the page number
316 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
317 under some circumstances.
320 (gtk_real_tree_item_select):
321 (gtk_real_tree_item_deselect): major fixes.
322 some general fixups wrt queue_redraw, and tree items not being
326 (gtk_real_list_item_select):
327 (gtk_real_list_item_deselect):
328 (gtk_real_list_item_toggle):
329 removed unneccessary queue_redraw calls.
331 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
333 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
334 automatically popup the menu on space bar.
336 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
338 * gtk/gtkcontainer.h:
339 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
340 method), which acts similar to gtk_container_foreach(), but iterates
341 over internal children. the GtkContainer::foreach signal vanished in
342 favour of a new class method ->forall() that optionally includes
345 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
346 but a _forall implementation, since all child widgets we have are
348 (column_button_create): set the parent window prior
349 to gtk_widget_set_parent().
352 exchanged all calls to gtk_container_foreach() with
353 gtk_container_forall().
356 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
357 the GtkWidget::composite_child argument. to have a widget created
358 with the flag initially, two new functions got added to wrap a widgets
360 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
362 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
365 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
366 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
367 prior to the first tip being set.
368 don't put an extra reference on the window, since it is a toplevel,
369 it wont get destroyed from anywhere else.
371 * overall macro and GtkType fixups.
373 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
375 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
376 constructs by more forgiving ones. (Does anyone else feel like
377 the color selector need rewriting?).
379 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
381 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
384 * gtk/gtkmenu.c: Modified reference counting so
385 that the reference count from the toplevel that
386 the menu creates to the menu is invisible to the
389 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
391 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
392 conversion selection logic, so Suns and other big-endian
393 machines should get faster conv routines. This is also the
394 point where 4bpp gray and 1bpp are checked in, although I
395 wouldn't be surprised if 1bpp is a little buggy. This is
396 synchronized with the 0.0.7 release of GdkRgb.
399 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
400 appropriate change to the Makefile.am
402 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
404 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
405 which is good for images that scroll (makes the dither patterns
408 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
411 (gdk_colormap_new) (gdk_colormap_get_system):
412 quell some warnings with g_hash_table_new
414 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
415 when we're done with it
418 (gtk_item_factory_from_path):
419 (gtk_item_factory_create_item): free some strings
422 (gtk_label_finalize): free label->pattern when done
423 (gtk_label_parse_uline): null terminate pattern string, delete
426 * gtk/testthreads.c: add #include <unistd.h> for sleep()
428 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
430 * gtk/gtktext.c (recompute_geometry): Make sure the
431 mark we pass to line start is the beginning of a
432 real line, not a wrapped one.
434 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
436 * gtk/gtktext.c: Reference count the fonts used in
439 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
440 freeing functions to be more consistent, and more
441 convenient; leave the old names in for backwards compatibility.
443 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
444 allocations in pseudo-color colormaps to greatly reduce
445 calls to XAllocColor. Keep a per-colormap hashtable to
446 speed up finding if there is an already-allocated matching
449 * gdk/gdkcolor.c: Don't just match read the system colormap
450 when the colormap is created, but synchronize our copy
451 with the system colormap periodically.
453 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
454 Change XIM constants names to match GDK conventions
456 * gtk/testinput.c: Allow the drawing area to get the focus.
458 * gtk/testgtk.c: Change around the Text test to demonstrates
459 multiple fonts, use more colors.
461 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
462 so they work after a widget is unrealized.
464 * gtk/gtktext.[ch]: Remove the requirement that the text
465 widget be realized before adding text (!) Allocate colors
466 ourself, instead of requiring the caller allocate them.
467 Allow changing styles to work properly by keeping track
468 of the values for a certain property are default or
471 * gtk/gtkmenu.h: Added some comments.
473 * gtk/gtkentry.c: Changes to match XIM constants.
475 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
476 for adding keyed data to drawables. (Uses g_dataset
479 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
480 when creating an XPM - store them as user data for the GdkPixmap,
481 so we don't leak colors when we create pixmaps from XPM's.
483 Allocate memory for color information in large blocks instead of
484 as many little pieces.
486 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
488 * gdk/gdkrgb.c: removed some unused variables
491 * gtk/gtkmain.c: #if 0'd out some unused code
493 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
495 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
503 * gtk/gtkcontainer.h:
504 * gtk/gtkcontainer.c:
509 (gtk_container_add_with_args):
510 (gtk_container_child_set):
511 begin the parameter elipsis (...) after the first argument name. this
512 change is source compatible, since it was always required, even as NULL.
514 (gtk_object_args_collect):
515 (gtk_container_child_args_collect):
516 changed prototypes to pass first_arg_name, also, pass va_list variable
517 by value (portability concerns). callers changed.
519 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
520 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
521 can't pass va_list variables by reference for portability reasons.
523 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
525 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
526 get_visual calls, so that it gets implicitly initialized.
528 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
529 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
530 such as GtkCTree function name changes
532 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
535 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
536 binary version check, returning a static string for error descriptions,
539 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
541 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
542 computed our geometry yet, and if not, ignore the request.
544 * gtk/gtktext.c (correct_cache_insert): Fiddled around
545 some more. All the bug-test codes seem to work at once
546 now. (fingers crossed...)
548 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
550 * gdk/gdkrgb.c: silly visual fixes
552 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
555 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
557 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
558 anything if the event's window is not the bin window.
559 (gtk_handle_box_motion): Likewise.
561 1998-08-19 Raph Levien <raph@gimp.org>
563 * gtk/testgtk.c (create_color_preview): pushed the colormap and
564 visual so it would work better with GdkRgb.
566 1998-08-19 Raph Levien <raph@gimp.org>
568 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
569 4bpp static_color mode (for vga displays). Also fixed a '64' value
570 in the dither matrix, which was causing one pixel out of 16k to be
573 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
574 most of the contents. This is an API change - any apps that relied
575 on the internal structure of GtkPreview will need some change -
576 most notably in the use of reserved colors. The Gimp needed
577 changes in this regard.
579 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
581 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
582 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
583 --g-fatal-warnings), noticed by miguel.
585 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
587 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
595 * gtk/gtkitemfactory.c:
596 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
598 * gtk/gtkselection.c:
602 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
604 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
606 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
608 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
609 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
610 in case of show_tabs == NULL
612 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
614 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
615 to --g-fatal-warnings again. this option now causes log levels of
616 WARNING and CRITICAL to abort().
625 * gtk/gtktypeutils.c:
631 * gtk/gtkselection.c:
635 did a global search&replace to substitute g_print() calls with
636 g_message(). libraries shouldn't use printf(), g_print() or
638 a bunch of the replacements should probably be wrapped into the
639 G{D|T}K_NOTE() macros, so they are special cased for debugging
640 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
643 * gdk/gdkdnd.c: added copyright notice.
645 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
647 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
648 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
649 running a PII 233. It's synced with the 0.0.5 release of
652 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
655 (struct _GtkCListClass): new class methods:
656 (sort_list) (insert_row) (remove_row) (set_cell_contents)
659 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
660 removed and replaced by (set_cell_contents)
661 (set_cell_contents): function for class method set_cell_contents
662 (real_insert_row): function for class method insert_row
663 (real_remoce_row): function for class method remove_row
664 (real_sort_list): function for class method sort_list
665 (default_compare): fix to avoid problems with cell types != CELL_TEXT
668 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
669 (gtk_ctree_node_is_visible): new function to return visibility state
671 (gtk_ctree_show_stub): new function to set visibility of root stub
674 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
675 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
676 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
677 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
678 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
679 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
680 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
681 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
682 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
683 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
684 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
685 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
686 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
687 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
688 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
689 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
690 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
691 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
692 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
695 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
696 removed and replaced by (set_cell_contents)
697 (set_cell_contents): function for class method set_cell_contents
698 (real_insert_row): function for class method insert_row
699 (real_remoce_row): function for class method remove_row
700 (real_sort_list): function for class method sort_list
701 (default_compare): removed. CTree now also compares two GtkCTreeRows
702 instead of two GtkCTreeNodes.
703 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
705 (real_tree_expand) (real_tree_collapse): fix for refcounting of
707 (set_node_info): call gtk_ctree_node_set_pixtext instead of
708 manipulating the row itself
710 * gtk/testgtk.c: use renamed functions of GtkCTree.
711 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
714 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
716 * gtk/gtkmain.c: removed gtk_input_add_interp.
718 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
720 (gtk_editable_get_event_time): fix default: case.
722 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
724 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
727 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
730 * various minor compilation cleanups, such as bogus commas in
731 enums and similar things.
733 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
735 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
738 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
740 * NEWS: updated for 1.1.2
741 * gtk+.spec: version = 1.1.2
743 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
745 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
746 times. changed --gtk-with-module to --gtk-module at owen's request.
748 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
750 * gtk/gtkmain.c (gtk_init): feature a new commandline option
751 --gtk-with-module=<module> that allows additional loading and
752 initialization of modules (e.g. GLE).
754 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
756 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
757 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
759 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
760 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
761 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
762 different *-fatal-* arguments now. this needs to be revised and
763 compressed to a reasonable amount of arguments.
765 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
767 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
768 "--g-fatal-warnings" causes fatal warnings in GLib,
769 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
770 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
772 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
773 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
777 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
778 since automake doesn't support per target _CFLAGS yet.
780 * configure.in: require GLib 1.1.3.
782 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
784 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
785 to set a callback to test if a node in drag can be dropped onto
786 it's currrent location.
787 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
788 to change the pointer when a drag destination is not allowed.
790 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
792 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
793 speeds up the 565_d case by about 25% total. Thanks Ray!
795 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
797 * Changed GtkSignalFunc back to () from (void). (again!)
799 * Added file README.cvs-commits
801 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
804 - Tidy up of the menufactory example from
805 Andy Kahn <kahn@zk3.dec.com>
806 - New section on Range Widgets from
807 David Huggins-Daines <bn711@freenet.carleton.ca>
808 - Started a new section on 'Advanced Event and Signal
809 Handling' - used an email from Owen.
810 - New appendix on Gdk Event Types
811 - Added the tictactoe full example code to the
812 'Code Examples' appendix
814 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
816 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
817 to calculate all the metrics at once of a string, including
818 things which weren't calculated before.
820 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
821 MenuItem type, that when put as the first thing in a
822 menu, makes the menu tearoff. Currently drawn as a
825 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
826 "hide_on_activate" to the MenuItem class structure to allow
827 check and radio buttons to be changed with <Space> without
830 * gtk/gtkitemfactory.c:
831 - Create a AccelGroup for each MenuShell we create.
832 - If an '_' appears before a character 'c' in the path,
833 then make 'c' an accelerator in the menu's accel group,
834 and if the menuitem is menubar <alt>C an accelerator
835 in the itemfactory's accel group. Double '__' inserts
838 * gtk/gtklabel.[ch]: Add support for a pattern arg -
839 which is a string. If an '_' appears in this string,
840 the corresponding position in the label is underlined.
842 Add gtk_label_parse_uline() convenience function which
843 takes a string with embedded underlines, sets the
844 pattern and label, and returns the accelerator keyval.
846 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
847 Instead, they create a GtkWindow and add themselves
848 to that. (When torn off, another new feature, they
849 create another GtkWindow to hold the torn off menu)
851 New function gtk_menu_set_tearoff_state()
853 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
854 Added action signals for keyboard navigation of menus.
856 * gtk/gtkmenushell.c: Key press handler which activates
857 bindings for navigation, and accelerators, for handling
858 underline accelerators. Exported functions to select
859 and activate menu items in a menushell.
861 * gtk/testgtk.c: Added a new "Item Factory" test which
862 tests GtkItemFactory and the new keyboard navigation
865 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
867 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
868 external functions have been called. also relookup nodes after
869 this function has been invoked.
871 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
873 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
874 beginning of Text when creating the Text widget.
876 * gtk/testgtk.c: Grab the focus on the text widget so
877 as to test out the above.
879 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
881 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
882 ::changed is a notification signal and should have no default
883 handler. A complete redraw of the Text widget does _not_ need to
884 be done on every text insertion.
886 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
887 (gtk-abilleira-072198-patch)
889 * gtk/gtkwindow.[ch]:
890 Add gtk_window_set_modal() which sets a flag; when
891 set the window does a gtk_grab_add() when the window
892 is shown, and a gtk_grab_remove() when the window
895 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
896 that case will run "Create Dir","Delete File" and "Rename File"
897 dialogs as modal too.
899 * gtk/testgtk.c: Added a button with an example of creating modal
900 dialog boxes. Including file selection and color selection standard
903 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
905 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
906 Removed CAN_FOCUS by default from scrollbars, button
907 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
908 (Scrollbar definitely good change, toolbar bit more questionable)
910 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
912 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
915 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
917 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
918 added all logical operations to gc->function.
920 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
922 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
923 gtk_widget_size_allocate instead of gtk_widget_queue_resize
924 if the visibility state of a scrollbar changes.
926 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
928 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
930 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
932 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
933 gtk_clist_merge and gtk_clist_mergesort. :)
935 1998-08-06 Martin Baulig <martin@home-of-linux.org>
937 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
938 `mergesort' -> `my_mergesort'.
940 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
942 * gtk/gtkenums.h: new enum GtkSortType.
946 Added sorting capabilities to GtkCList. New APIs :
947 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
948 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
949 New internal functions : default_compare, merge, mergesort.
951 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
953 (gtk_clist_insert): Modified to handle gtk_clist_append and the
954 auto sort flag. Changed the return value from void to gint to
955 return the row number where the element was actually inserted.
957 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
961 Removed the auto_sort flag, replaced ctree->node_compare with
962 clist->compare all over the place, modified default_compare to
963 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
964 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
966 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
967 sorting. The lists can be sorted by a column by clicking the
968 corresponding title button.
970 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
972 * Released GTK+ 1.1.1
974 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
978 (gtk_ctree_find): changed to return a gboolean
979 (gtk_ctree_insert_gnode): new function for recursive insertion of a
981 (gtk_ctree_real_select_recursive): fix for extended selection
982 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
983 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
985 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
987 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
988 GLib version 1.1.1 is now required at minimum.
990 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
991 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
993 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
995 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
996 cursor before (possibly) deleting the cursor's text
999 * gtk/gtktext.c (correct_cache_delete): More attempts
1000 to clean the line-start cache up after inserting
1001 a property. Among other things, make sure to
1002 fix up text->current_line, since it is used to
1003 refetch the changed lines.
1005 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
1007 * gtk/gtktable.[ch]: Empty rows/columns of the table
1008 should not have been marked as being able to shrink.
1009 (Fixes problem with shrinking scrollbarless GIMP canvases)
1011 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
1013 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
1014 function to find a row by its data pointer using a custom
1015 comparison function.
1017 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
1019 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
1020 this fixes a bug when the whole widget is made non-sesitive
1021 the buttons weren't redrawn
1023 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
1025 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
1026 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
1027 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
1029 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
1031 * gdk/gdkwindow.c (gdk_window_reparent): Change
1032 window_private->parent pointer when reparenting.
1034 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
1036 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
1037 with the standalone release.
1039 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
1041 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
1042 (gtk_clist_button_release) (new_column_width): Few fixes for
1043 column resize. Store resize column in clist->drag_pos.
1045 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
1049 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
1050 to GtkCTreeNode *node.
1052 * gtk/gtklist.h : added extended selection mode and auto scrolling.
1053 (struct _GtkList): removed unneeded variables timer, button,
1054 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
1055 Added new variables undo_selection, undo_unselection, last_focus_child,
1056 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
1057 drag_selection, add_mode.
1060 (gtk_list_extend_selection), (gtk_list_start_selection),
1061 (gtk_list_end_selection), (gtk_list_select_all),
1062 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
1063 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
1064 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
1065 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
1068 (gtk_list_enter_notify): removed, because auto scrolling now works
1069 with gtk_list_motion_notify
1071 New functions, needed for auto scrolling :
1072 (gtk_list_motion_notify) (gtk_list_move_focus_child)
1074 New functions for extended selection support :
1075 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
1076 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
1077 (gtk_list_focus_lost)
1079 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
1080 function to support auto scrolling, and avoid out-of-sync errors in
1081 case auf GTK_SELECTION_BROWSE
1082 (gtk_list_focus): modified gtk_container_focus function to avoid out
1083 off sync errors in case auf GTK_SELECTION_EXTENDED
1086 * gtk/gtklistitem.c :
1087 New signal functions for key binding support :
1088 (toggle_focus_row), (select_all), (list_item), (unselect_all)
1089 (list_item), (undo_selection), (start_selection), (end_selection)
1090 (extend_selection), (scroll_horizontal), (scroll_vertical),
1092 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
1093 GDK_KEY_RELEASE_MASK
1094 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
1097 (gtk_combo_popup_button_press): grab pointer for combo->list
1098 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
1099 (gtk_combo_list_key_press): take care of which child HAS_GRAB
1100 (gtk_comb_init): don't connect combo->button with button_release_event
1102 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
1104 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
1106 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
1108 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
1109 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
1110 with horizontal and vertical autoscrolling.
1112 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1114 * gtk/docs/man: new directory
1115 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
1117 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
1119 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
1122 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
1124 * docs/gtk_tut.sgml: GtkTree section from
1125 David Huggins-Daines <bn711@freenet.carleton.ca>,
1126 add a GtkText widget example
1127 * examples/text/* example/tree/* : new examples for the
1128 GtkTree and GtkText widgets
1129 * docs/gtk_tut.sgml: added an appendix to hold complete code
1130 examples that aren't in a full form elsewhere in the
1131 tutorial (e.g. scribble)
1133 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1135 * Released GTK+ 1.1.0
1137 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
1139 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
1140 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
1142 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
1144 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
1145 values are looked up.
1147 * gtk/gtktypeutils.h:
1148 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
1149 gtk_type_enums_find_value to lookup enum values.
1152 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
1153 GtkCTreeExpansionType. fixed signal creations to pass the enum
1154 types not just the base type GTK_TYPE_ENUM.
1157 * gtk/gtkclist.c: fixed signal creations to pass the real enum
1158 types not just the base type GTK_TYPE_ENUM.
1160 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
1163 Began cleanup, e.g. use gtk_widget_show_all instead of many
1164 gtk_widget_show's. Completely rewrote the button box sample
1165 (only one window now). Removed "miscellaneous" button.
1167 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
1169 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
1170 Fixed wrong allocation for GTK_BUTTONBOX_END.
1171 (allocation->x => allocation->y)
1173 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
1175 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
1176 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
1178 * gtk/gtkctree.c (real_tree_select): added check to avoid double
1180 (gtk_ctree_button_press)
1181 (gtk_ctree_button_release): fix for pointer grab
1183 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
1185 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
1186 Fixed initialization problem - dirty memory could cause problems.
1187 Also checked that bitmapped fonts can be scaled when showing the
1190 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
1192 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
1193 (gtk_ctree_sort_recursive): test for node != NULL
1194 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
1195 (gtk_ctree_last) : added sanity checks
1196 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
1198 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
1200 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
1202 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
1204 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
1206 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
1208 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
1209 to check out binding priorities. someone should really write
1210 gtkrc-mode for emacs.
1212 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
1213 * gtk/testgtk.c (main): and move it here ;). this test says something
1214 on release of C-9. (this works only if the mouse pointer is on a
1215 spinbutton and there is no focus widget).
1219 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
1220 gtk_rc_parse_priority to parse path priority types.
1222 feature binding parsing.
1224 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
1226 * gtk/gtkbindings.h:
1227 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
1228 feature binding parsing in rc files.
1229 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
1230 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
1231 order the bindings with lowest priority first.
1233 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
1235 * gdk/gdkrgb.c: actually builds and runs properly on big
1236 endian machines now, because we #include config.h. Also
1237 fixed up a compile error in the WORDS_BIGENDIAN case in
1238 gdk_rgb_convert_565_gray. I made the fix by looking at
1239 patterns in the other code; Raph can you verify this?
1241 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
1244 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
1246 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
1247 (tree_toggle_expansion) (real_select/unselect_row)
1248 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
1250 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
1252 * gtk/gtktext.c (new_text_property): We free things from
1253 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
1255 * Fix up line start cache when splitting a property
1258 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
1260 * gtk/gtkwidget.c: restauration => restoration
1262 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
1264 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
1265 hasn't been created yet, don't do the lookup.
1267 1998-07-20 Raph Levien <raph@acm.org>
1269 * gdk/gdkrgb.c: More cleanups in the config process.
1271 1998-07-20 Raph Levien <raph@acm.org>
1273 * gdkrgb.c: Fixed minor config bug preventing big-endian
1274 architectures from working.
1276 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
1278 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
1279 activity indicator. It is settable now as a fraction of the
1280 total width/height using gtk_progress_bar_set_activity_blocks.
1281 Renamed gtk_progress_bar_set_number_of_blocks to
1282 gtk_progress_bar_set_discrete_blocks.
1284 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
1286 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
1287 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
1288 tree to specified depth
1289 (gtk_ctree_expand_to_depth): expand tree to specified depth
1290 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
1292 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
1294 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
1295 of GTK_CLIST_ADD_MOD
1296 * gtk/testgtk.c (add1000_clist): changed pixmap
1298 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
1301 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
1303 * gtk/gtktypeutils.h:
1304 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
1306 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
1308 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
1309 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
1310 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
1312 (gtk_notebook_reorder_child): new funktion to change position of a
1314 (gtk_notebook_draw_arrow): draw left/right arrow with
1315 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
1317 * gtk/gtkstyle.c (gtk_default_draw_arrow):
1318 added GTK_SHADOW_ETCHED_IN/OUT
1320 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
1322 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
1323 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
1324 Introduced generic GtkProgress widget. Derived GtkProgressBar from
1325 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
1327 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
1329 * gtk/gtktypeutils.h
1330 * gtk/gtkitemfactory.h: explicitly specify void in prototype
1332 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
1334 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
1337 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
1339 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
1340 sropped the approach of copying all signal specific data into a
1341 GtkHandlerInfo structure. we rather keep the signal data on the stack
1342 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
1343 avoids multiple lookups of the signal pointer and works savely together
1344 with destroy notifiers of handlers.
1346 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
1347 someone destroys the entry on the ::activate signal.
1349 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
1351 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
1352 instead of ypad (typo).
1353 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
1354 border around the allocation).
1355 (gtk_arrow_init): the static requisition needs to be setup in this
1356 function rather than gtk_widget_new(), so arrow creation works without
1357 the gtk_arrow_new() constructing.
1358 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
1360 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
1361 implementation for GtkWidget::size_request, so size requisition for
1362 simple statically sized widgets like GtkArrow works.
1364 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
1366 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
1367 prepend -I@libdir@/glib/include anymore, since glib-config handles
1368 it; --libs strips out redundant -L<path>'s properly (there was
1369 code in there to do it before, but it didn't work)
1371 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
1373 * gtk/gtknotebook.h:
1374 * gtk/gtknotebook.c: signdness corrections all ove the place.
1375 implementation of object arguments: GtkNotebook::enable_popup,
1376 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
1377 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
1378 begun implementation of child args, we have GtkNotebook::tab_label, but
1379 GtkNotebook::menu_label and GtkNotebook::position still lack the
1381 (gtk_notebook_remove_page):
1382 (gtk_notebook_current_page): allow negative indices (-1) as alias for
1386 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
1387 arguments GtkEntry::max_length and GtkEntry::visibility.
1388 (gtk_entry_adjust_scroll): queue a redraw.
1390 * gtk/gtkeditable.h:
1391 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
1392 object arguments GtkEditable::text_position and GtkEditable::editable.
1393 new (action) signal GtkEditable::set_editable.
1394 provide a default handler for GtkEditable::changed that queues a redraw.
1397 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
1400 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
1402 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
1403 case of drag_target == NULL
1404 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
1405 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
1406 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
1407 gtk_dir_selection_file_button): fix due to changes in clist's
1410 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
1413 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
1414 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
1415 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
1416 to be gint16s rather than guint16s, since that's what the code expected
1417 (for a long time actually).
1419 * gtk/gtkviewport.c:
1420 added support for object arguments: GtkViewport::shadow_type,
1421 GtkViewport::vadjustment and GtkViewport::hadjustment.
1422 (gtk_viewport_add): chain gtk_bin_add.
1424 * gtk/gtkscrolledwindow.c:
1425 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
1426 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
1428 * gtk/gtkadjustment.h:
1429 * gtk/gtkadjustment.c:
1434 * gtk/gtkscrolledwindow.h:
1435 * gtk/gtkscrolledwindow.c:
1436 * gtk/gtkviewport.h:
1437 * gtk/gtkviewport.c:
1438 GtkType and macro fixups.
1440 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
1444 Added focus handling, horizontal and vertical autoscrolling,
1445 extended Selection Mode, key bindings
1446 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
1447 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
1448 Removed gtk_ctree_clear.
1452 Added focus handling, horizontal and vertical autoscrolling,
1453 extended Selection Mode, key bindings
1455 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
1457 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
1458 source tree. For more information on GdkRgb, please see:
1459 http://www.levien.com/gdkrgb/
1461 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
1462 bothers me slightly that the feature is in gdk, and this file is
1463 in gtk, but it's probably ok.
1465 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
1468 * gdk/gdkrgb.h: Added this module.
1470 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
1472 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
1474 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
1476 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
1477 to this function. it needs to relookup the signal multiple times.
1478 this fixes spurious segfaults that could show up with signal intensive
1479 code, when classes are created during a pending emission (which is
1482 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
1484 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
1485 child if it isn't a label.
1487 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
1490 * gtk/gtkseparator.h:
1491 * gtk/gtkhseparator.h:
1492 * gtk/gtkvseparator.h: macro and GtkType fixups.
1494 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
1496 * gtk/testgtk.c (create_cursors): display the current cursor name.
1498 * gtk/gtktypeutils.h:
1499 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
1500 the fundamental type definition. the GtkArg union now only covers
1501 the required storage types for argument values. adapted the GTK_VALUE_*
1502 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
1504 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
1505 code, fixed int/float collection. fixed a bug in the sanity checking
1506 code for GtkObjects.
1508 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
1509 argument collection code.
1511 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
1512 macros when distinguishing the return type.
1514 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
1516 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
1517 is not NULL before trying to g_list_remove the child. A patch
1518 from Michael Lausch.
1520 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
1522 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
1523 collection (always casted to doubles upon argument passing).
1525 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
1527 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
1528 object_init_func for derived objects with the object's ->klass field
1529 still pointing to the corresponding base class, otherwise overridden
1530 class functions could get called with partly-initialized objects.
1531 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
1533 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
1537 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
1539 * gtk/gtkcontainer.h:
1540 * gtk/gtkcontainer.c:
1541 (gtk_container_child_arg_get_info): new function which wraps
1544 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
1546 * gtk/gtkcontainer.c:
1547 (gtk_container_arg_get):
1548 (gtk_container_arg_set):
1550 (gtk_object_arg_set):
1551 (gtk_object_arg_get):
1552 strictly check for the associated get/set arg functions. if an
1553 arg is readable or writable, the associated class functions *must*
1556 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
1558 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
1559 padding into account if there is an accelerator.
1561 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
1563 * gtk/gtkcontainer.c:
1564 (gtk_container_add_with_args): collect the arguments with
1565 gtk_container_child_args_collect, not through gtk_object_args_collect.
1566 (gtk_container_child_set): likewise.
1568 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
1570 * gtk/gtktypeutils.h:
1571 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
1572 which is derived from GTK_TYPE_STRING.
1574 * gtk/gtkbindings.c: reworked the argument type handling.
1576 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1578 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
1579 so that it seems to allow normal operation in those modes,
1580 although you will only see black (GIMP toolbar now pops up,
1581 just don't create a new image and GIMP now works in 4 bit.)
1583 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1585 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
1586 array, which was too low (?)
1588 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
1590 * gtk/gtkcontainer.h:
1591 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
1592 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
1593 we now export a new function gtk_container_child_args_collect().
1594 for consistency with the object arguments, a few functions got renamed:
1595 gtk_container_child_arg_get -> gtk_container_child_get,
1596 gtk_container_child_arg_set -> gtk_container_child_set,
1597 gtk_container_child_arg_getv -> gtk_container_child_getv,
1598 gtk_container_child_arg_setv -> gtk_container_child_setv,
1599 gtk_container_add_with_argv -> gtk_container_addv.
1600 note, gtk_container_add_with_args() remained, because its equivalent
1601 would be gtk_container_add(,, ...) which would break all existing code.
1602 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
1603 we expect the `arg_name' argument to be a const static string now.
1604 (gtk_container_get_child_arg_type): function removed.
1606 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
1608 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
1609 this is a static inline function that collects command line arguments
1610 from a va_list. this file can just be included in all places that
1611 need this functionality.
1614 * gtk/gtkarg.c: new files which implement most of the argument
1615 handling stuff from gtkobject.c. also collected a few more
1616 gtk_arg_* utility functions from else places.
1619 * gtk/gtkobject.c: moved most of the argument handling code into
1620 gtkarg.c. we now export gtk_object_args_collect() as a non-public
1621 method with a blind va_list pointer.
1622 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
1623 const static string now.
1624 (gtk_object_get_arg_type): function got removed.
1628 (gtk_widget_new): adaptions for gtk_object_args_collect().
1630 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
1631 fundamental type name so as to have a valid prefix, e.g. "bool"->
1632 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
1633 though that should probably be something like GtkNone since the
1634 type itself is called GTK_TYPE_NONE.
1635 even the internal type names need to avoid name clashes and must live
1636 in their own namespace, several code portions rely on that.
1637 we should relly have typedefs such as typedef gchar* GtkString; so the
1638 fundamental type names can be used for code dumpers just like with all
1641 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
1643 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
1644 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
1645 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
1647 (gtk_button_paint): set the background for prelighted buttons with
1648 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
1649 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
1650 the shadow type (otherwise we get strange shadows for coloured buttons).
1651 (gtk_button_set_relief): queue a redraw after changing
1653 (gtk_button_class_init):
1654 (gtk_button_set_arg):
1655 (gtk_button_get_arg): added object argument "GtkButton::relief".
1657 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
1659 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
1662 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
1663 GTK_BIN (button)->child to button->child to keep source compatibility.
1665 * gtk/gtkoptionmenu.c:
1667 * gtkcheckbutton.c: don't refer to button->child, but
1668 GTK_BIN (button)->child instead.
1670 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
1672 * docs/gtkfaq.sgml: update anon CVS info
1674 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
1676 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
1680 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
1683 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
1685 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
1686 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
1688 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
1690 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
1692 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
1695 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
1697 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
1698 error that prevented signal to entry addition for signals with
1701 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
1703 * ltconfig: fix for properly detecting shared lib support on
1704 SunPro cc (taken from libtool 1.2.a)
1706 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
1708 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
1710 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
1712 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
1713 rc set pattern is favoured, this is needed for overriding of style
1714 patterns with subsequently parsed rc files.
1716 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
1718 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
1721 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
1723 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
1725 (gtk_accelerator_name): add "<Release>" to the accelerator name if
1728 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
1731 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
1732 default handler for key-release events, which checks for activation
1733 of GDK_RELEASE_MASK key bindings.
1735 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
1737 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
1739 * gtk/gtkarrow.h: GtkType and macro fixups.
1740 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
1741 "GtkArrow::shadow_type".
1743 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
1745 * gtk/gtkalignment.h:
1746 * gtk/gtkbin.h: GtkType and macro fixups.
1748 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
1749 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
1750 GtkAlignment::xscale, GtkAlignment::yscale.
1752 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
1754 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
1755 fucntions from all parent types upon class initialization.
1757 * gtk/gtkcontainer.c:
1758 (gtk_container_get_type): announce gtk_container_base_class_init to
1760 (gtk_container_base_class_init): new function to feature base class
1762 (gtk_container_get_child_arg):
1763 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
1764 and set_child_arg methods of the class indicated through the argument
1768 (gtk_object_base_class_init): new function to feature base class
1770 (gtk_object_init_type): announce gtk_object_base_class_init to the type
1772 (gtk_object_class_init): setup the get_arg and set_arg pointers for
1775 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
1776 instead of bothering the type system with this.
1778 * gtk/gtkaccellabel.c:
1780 * gtk/gtkradiobutton.c:
1782 * gtk/gtktogglebutton.c:
1783 * gtk/gtktipsquery.c:
1790 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
1791 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
1792 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
1793 arg functions to take a GtkObject argument.
1795 gtk/gtkadjustment.c:
1798 gtk/gtkaspectframe.c:
1801 gtk/gtkcheckbutton.c:
1802 gtk/gtkcheckmenuitem.c:
1810 gtk/gtkdrawingarea.c:
1824 gtk/gtkhscrollbar.c:
1825 gtk/gtkhseparator.c:
1827 gtk/gtkinputdialog.c:
1829 gtk/gtkitemfactory.c:
1837 gtk/gtkoptionmenu.c:
1841 gtk/gtkprogressbar.c:
1842 gtk/gtkradiomenuitem.c:
1847 gtk/gtkscrolledwindow.c:
1849 gtk/gtkspinbutton.c:
1862 gtk/gtkvscrollbar.c:
1863 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
1864 match the modified GtkTypeInfo structure.
1866 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
1868 * gtk/testgtk.c: use rand() instead of random() for portability
1870 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
1874 * gdk/gdk.c: use native Xlib XConvertCase if it's available
1876 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
1878 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
1879 XConvertCase() functionality from X11R6 on X11R5 systems.
1881 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
1883 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
1884 gdk_string_height, gdk_char_height to retrieve the exact
1887 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
1889 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
1890 by Stefan Mars <mars@lysator.liu.se>
1891 * examples/clist/clist.c examples/clist/Makefile: example code
1892 for GtkCList widget from the Tutorial
1894 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
1896 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
1897 if the container is not visible, we might be a toplevel! this holds
1898 for all other base container implementations as well, that are
1899 candidates to derive toplevels from. in general the resizing code will
1900 care about visibility itself.
1901 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
1902 * gtk/gtkbox.c (gtk_box_remove): likewise.
1904 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
1905 gtk_window_set_hints(), since we haven't calculated the new position
1908 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
1909 *mask are alway initialized in a sane way, regardless of the return
1912 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
1914 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
1915 to gtk_container_child_arg_setv, but takes a variable argument list.
1916 new function gtk_container_get_child_arg_type, which is needed by
1917 gtk_object_collect_args.
1919 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
1920 take a function pointer to figure the argument type.
1921 adapted callers to pass gtk_object_get_arg_type.
1922 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
1923 gtk_object_get_arg_type..
1927 (gtk_packer_reorder_child): new function to change the packing order
1929 (gtk_packer_size_request):
1930 (gtk_packer_size_allocate): take container->border_width into acount.
1932 * gtk/gtkpacker.c: implemented widget arguments:
1933 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
1934 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
1935 implemented child arguments:
1936 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
1937 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
1938 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
1939 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
1941 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
1944 * gtk/gtkeventbox.h:
1945 * gtk/gtkeventbox.c: GtkType and macro fixups.
1947 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
1948 sensitivity of an entry.
1950 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
1951 for insensitive base and text.
1953 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
1954 widget state dependent.
1955 (gtk_entry_style_set): likewise.
1956 (gtk_entry_state_changed): set background color on state changes.
1957 (gtk_entry_draw_text): for non selected text, use state dependent
1960 * gtk/gtktogglebutton.c: support for widget arguments
1961 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
1963 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
1965 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
1966 code for 1.0.x-like parameters. Changed internal interface of
1967 gtk_spin_button_real_spin. Several fixes to avoid emission of
1968 "value_changed" where possible.
1970 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
1972 * gtk-boxed.defs: s/GkWidget/GtkWidget/
1974 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
1976 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
1977 to select the resize_mode for the idle-labels container.
1980 * gtk/gtkframe.c: GtkType and macro corrections.
1982 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
1983 support widget argument "GtkRadioButton::group".
1985 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
1987 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
1988 unconditionally if resize_mode has changed.
1990 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
1991 GTK_RESIZE_QUEUE on the scrolled window.
1992 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
1994 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
1996 * gtk/gtkcontainer.h:
1997 * gtk/gtkcontainer.c:
1998 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
1999 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
2000 (gtk_container_queue_resize): new function to queue a container for
2001 a *size* reallocation (doesn't affect its position, and thus its
2002 parent is left untouched usually).
2003 (gtk_container_get_resize_container): new function to retrive the next
2004 most resize container which is not itself queued for a resize.
2005 (gtk_container_idle_sizer): new function to carefully process the
2006 container_resize_queue since it can change during invokation of
2007 gtk_container_check_resize().
2008 (gtk_container_resize_children): total rework of this function to
2009 properly handle resize containers. makes a lot of assumptions whitch
2010 are stated in the comments.
2012 * gtk/gtkcontainer.c:
2013 (gtk_container_real_check_resize): only requeue ourselves if we are not
2015 (gtk_container_clear_resize_widgets): care for automatic deletion of our
2016 resize_widgets list on size_allocate through a handler connection.
2018 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
2019 focus and default widget of a window, so to take the burden from
2020 gtk_widget_unparent.
2022 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
2023 to be clever, but actually messed up the resize_children logic and
2024 caused unneccessary allocations on its whole branch. besides this,
2025 it messed up the display by not invoking a redraw after the allocation.
2027 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
2028 that it is the child again that is queued for a resize.
2029 (gtk_table_attach): likewise.
2030 (gtk_table_remove): likewise.
2032 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
2034 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
2035 gtk_entry_adjust_scroll. Required if you change the cursor
2036 position and want to sync it up with your code (Midnight Commander
2037 gtk front end needs this).
2039 * gtk/gtktable.c: Deal with tables that have size 0, 0.
2041 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
2043 * examples/README.1ST: new file to explain how the
2044 code examples should be extracted from the tutorial.
2046 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
2048 * gtk/gtkctree.c (draw_row): added new "line style"
2049 GTK_CTREE_LINES_TABBED
2050 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
2051 search the glist pointer of an GtkCTreeRow
2053 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
2055 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
2056 from, and clean up, the dependencies. Generate to intermediate
2057 files to prevent problems with Ctrl-C.
2059 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
2061 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
2063 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
2064 - Bug fix for precision problem causing occasional double emission
2065 of "value_changed" signal (hopefully works now).
2066 - API change (should be binary compatible) :
2067 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
2068 Modified cursor example appropriately.
2069 To spin by something other than step_/page_increment, use
2070 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
2071 - Made GTK_SHADOW_NONE the default. ;)
2072 - Fixed casting of GtkAdjustment* to GtkWidget* in
2073 gtk_spin_button_value_changed.
2075 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
2077 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
2078 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
2079 resize widget list before queuing the container for a new reize.
2080 (gtk_container_need_resize): changed return value to FALSE, since this
2081 used to indicate that no further resizes are needed.
2082 (gtk_container_set_arg):
2083 (gtk_container_get_arg):
2084 (gtk_container_class_init): implemented GtkContainer::resize_mode
2087 (gtk_container_resize_children): when we walk up the tree of a resize
2088 widget we need to stop if we are the current parent.
2090 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
2091 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
2092 (gtk_widget_hide_all): retrive the toplevel widget from via
2093 gtk_widget_get_resize_container().
2095 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
2097 * gtk/gtklist.c (gtk_list_button_press): Only respond
2098 to selection with button 1. This allows context-sensitive
2099 menus to work correctly.
2101 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
2103 * gtk/gtkaccelgroup.c:
2104 * gtk/gtkbindings.c:
2105 * gtk/gtkcontainer.c:
2106 * gtk/gtkitemfactory.c:
2109 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
2110 g_quark_from_static_string calls to save memory.
2112 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
2113 function _after_ the new data has been setup.
2114 minor changes to object data functions to feature the GQuark type.
2116 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
2118 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
2121 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
2123 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
2124 to be more readable perl, to spit out stuff that looks
2125 more like readable C, and to pipe output through indent
2126 so output looks a lot like readable C. No functional
2129 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
2131 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
2132 necessary when switching to a masked pixmap. (Based on a patch
2133 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
2135 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
2137 * gtk/gtkeditable.[ch]: Added action signals for keyboard
2138 bindings. (move_cursor, kill_word, etc, etc, etc).
2140 removed the time argument from
2141 gtk_editable_cut/copy/paste_clipboard (source but not
2142 binary incompatible...) Instead get time from
2143 gtk_get_current_event ().
2145 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
2148 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
2150 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
2152 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
2153 parent class to GtkNotebookClass when splitting the widget in
2154 two. Also updated some comments.
2156 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
2157 button without a font selected.
2159 Fixed bug in set_font_name - I hadn't updated the code to
2160 search for the style in the font_style clist - it was
2161 still assuming the style row was equal to its index,
2162 but it isn't any more.
2164 Changed 'Reset' button on filter page to 'Clear Filter'.
2165 Deleted old code relating to the old 'Filter Fonts' toggle
2166 Updated some comments.
2167 Cleared 'Actual Fontname' if no font is set.
2169 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
2170 destroying the GtkFontSelection instead of the
2171 GtkFontSelectionDialog.
2173 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
2175 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
2176 flag to make all warnings fatal errors.
2178 * gtk/testthreads.c: moved <pthreads.h> include inside
2181 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
2183 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
2184 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
2186 - Added new function gtk_container_set_resize_mode() for
2187 fine-grained control of where resize-queueing is done.
2189 - Removed GtkContainer::need_resize and GtkWindow::move_resize
2190 - Added GtkContainer::check_resize to replace need_resize.
2192 - Added function gtk_container_check_resize() to trigger
2193 queued resizes, and gtk_container_resize_children() to
2194 Figure which children need to be size-allocated. (logic
2195 moved from gtkwindow.c)
2197 - Reorganized code in gtkwindow.c
2199 - Set the resize-mode for viewports so that resizes within
2200 a viewport don't propagate out of it.
2202 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
2204 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
2206 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
2207 g_return_val_if_fail, because the function *does* return a value.
2209 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
2211 * gtk/gtkaccellabel.h:
2212 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
2213 request the size of the accelerator portion of an accel label.
2214 (gtk_accel_label_size_request): don't request for the accelerators size.
2215 (gtk_accel_label_expose_event): only draw the accelerator if we got
2218 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
2219 width from children.
2221 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
2222 object (after removal has been requested) check if there is still an
2223 accelerator remaining to avoid adding two accelerators on an object.
2224 this can happen for locked accelerators (or accelerator-frozen widgets).
2225 (gtk_menu_size_request): feature childrens accelerator width in size
2228 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
2229 gtk_widget_freeze_accelerators() for dynamically created menu items.
2232 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
2233 which will return a handler_id > 0 if the specified function is pending
2237 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
2238 a signal handler function to stop accelerator addition.
2239 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
2240 which will prevent (undo) any accelerators from being added to or
2241 removed from a widget.
2243 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
2245 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
2246 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
2247 acceleration, new API gtk_spin_button_set_snap_to_ticks.
2249 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
2252 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
2253 the current GdkWindow the pointer is on if there is any.
2255 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
2256 and one column, so we don't construction logic at all. changed a few
2257 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
2260 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
2261 portion, added an additional check for parent != widget.
2263 * more GtkType and macro fixups.
2265 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
2267 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
2268 "clip" parameter, which is the clipping rectangle to use. This
2269 eliminates the extremely annoying flicker when exposing parts of
2272 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
2274 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
2277 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
2279 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
2280 != 0 on the argument.
2283 * gtk/gtktable.c: new function gtk_table_resize() which allowes
2284 shrinking and expanding of tables. implementation of widget arguments
2285 and child arguments. many signedness corrections.
2287 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
2289 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
2290 not only the child, otherwise we might end up taking away other
2291 childrens space after the resize.
2293 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
2294 an unknown menu path from any source, that path must always be flagged
2295 as "modified", since we don't really know whether it has its default
2300 * gtk/gtknotebook.c:
2301 * gtk/gtkmenushell.c:
2305 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
2308 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
2309 arguments. implemented child arguments.
2311 * more GtkType and macro fixups.
2313 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
2315 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
2317 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
2318 and gtk_clist_get_hadjustment.
2320 * gtk/gtkcontainer.c:
2321 implementation of children arguments, new class member functions
2322 (child_type), (get_child_arg) and (set_child_arg) plus a new field
2324 (gtk_container_child_type): new function which returns the type of a
2325 child that the container expects for its next addition.
2326 (gtk_container_add_child_arg_type): new function to introduce a new
2327 child argument at class creation time.
2328 (gtk_container_query_child_args): new function to query all child
2329 arguments that are supported by a container class.
2330 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
2332 (gtk_container_child_arg_setv): new function to set a child argument for
2333 a certain container and child combination.
2334 (gtk_container_add_with_args):
2335 (gtk_container_add_with_argv): new functions to feature addition of a
2336 new child in combination with the setting of certain child arguments.
2338 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
2339 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
2340 this should really be done through class cretion hooks some day.
2342 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
2346 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
2347 follow the gtk convention for lower case variable names (important
2348 for language wrappers and widget arguments), and made them guint : 16.
2350 * examples/packer/pack.c: adaptions for the case converted GtkPacker
2353 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
2355 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
2356 change the character pair for single line comments.
2357 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
2358 GtkItemFactoryClass.
2359 (gtk_item_factory_parse_rc_string): likewise.
2361 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
2363 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
2364 lists from the klass structure to a static structure
2365 in gtkfontsel.c; cleans up global the namespace.
2367 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
2369 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
2370 bug with /*< skip >*/ and remove warning.
2372 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
2374 * gtk/Makefile.am: Made the gtkmarshal.* generation
2375 rules maintainer-only.
2377 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
2379 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
2380 gtk/Makefile.am gtk/makenums.pl
2382 Removed out the G_ENUM/FLAGS mechanism in favor
2383 of a perl script that parses the standard headers
2384 (with occasional /*< nick=foo >*/ style overrides)
2385 and extracts the enumerations.
2387 gtk/maketypes.awk: Small improvments to the
2388 translation of names. (Avoid splitting gc into
2391 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
2393 * gtk/gtk.h gtk/gtkfontsel.[ch]:
2394 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
2396 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
2399 - Restored gtk_entry_adjust_scroll to static
2400 - Changed text positioning code so that we always
2401 display as large a portion of the text as possible.
2403 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
2405 * gtk/gtktext.c (gtk_text_finalize): Free internal
2406 structures of text widget. Also, unreference pixmaps
2409 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
2411 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
2412 3.3.1 bug workaround to number keys starting at 1.
2414 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
2416 * docs/gtk_tut.sgml: Fixed urls for complete example
2417 source for scribble+widget-writing examples.
2419 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
2421 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
2422 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
2423 specs of the form c #abcdef [ more keys ] properly.
2425 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
2427 * gtkspinbutton.h gtkspinbutton.c testgtk.c
2428 (gtk_spin_button_set_shadow_type):
2429 New API to set the shadow type of the arrow panel.
2431 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
2433 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
2434 code for drawing the child in two places at once. Unfortunately,
2435 not only does it not work anymore (because reparenting has
2436 been fixed), but it also triggers reparent/expose loops
2439 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
2440 an unecessary unrealize.
2442 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
2444 * gdk/gdkwindow.c (gdk_window_reparent): Update the
2445 old and new parents' child window lists properly.
2447 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
2450 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
2451 and GtkSideType, to be consistent with the rest of Gtk's enum
2452 definitions. wrapped the enum definitions with the G_ eunm wrappers.
2453 spelled out the GTK_ANCHOR_* enum values, since single letters don't
2454 work out corectly as nick-names (left the old values as aliases).
2455 some signdness corrections (border-width, spacing), could stand more.
2457 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2459 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
2462 * examples/packer/pack.c, examples/packer/Makefile: Added
2465 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
2467 * gtk/gtktext.c (remove_cache_line): Fixed broken
2470 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
2471 Check bounds before deleting.
2473 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
2475 * autogen.sh: Support ACLOCAL_FLAGS
2477 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
2479 * gtk-config.in: Added missing quotes.
2481 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
2483 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
2485 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
2487 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
2488 G_COMPILED_WITH_DEBUGGING.
2490 * configure.in (fd_set): Explain check better.
2492 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
2493 the version from which gtk+'s libtool forked. Needed for people
2494 who use post-1.2 alphas of libtool.
2496 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
2498 * glib/* Moved to glib module
2500 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
2501 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
2503 configuration changes for the above:
2505 - Use AM_PATH_GLIB by default to find glib; also accept
2506 a --with-glib option for using an uninstalled glib.
2508 - Put --enable-debug information into config.h so
2509 that we rebuild when it changes. (was in glibconfig.h)
2511 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
2513 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
2515 * gtk/gtknotebook.h (struct _GtkNotebookClass):
2516 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
2517 added missing argument (according to Joseph Coleman's bug report)
2519 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
2520 function to fix notebook focus handling
2522 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
2524 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
2525 glib/gutils.c glib/testglib.c glib/gdataset.c
2526 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
2527 gtk/gtktext.c gtk/gtkbindings.c:
2529 renamed g_const_pointer => gconstpointer
2531 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
2533 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
2534 invoked with (NULL, NULL); (this worked sometime ago).
2536 * gtk/gtktypeutils.h:
2537 * gtk/gtktypeutils.c: enum and flags type creation can now be done
2538 through gtk_type_register_enum() and gtk_type_register_flags(),
2539 which allow to specify the enum value arrays directly.
2540 the NULL terminated value arrays can be retrived through
2541 gtk_type_enum_get_values() and gtk_type_flags_get_values();
2542 (gtk_type_children_types): new function to query derived types.
2544 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
2546 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
2547 environment to genmarshal.pl.
2548 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
2549 rule), and removed it where not needed (in the dependencies).
2551 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
2553 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
2555 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
2556 was just g_direct_hash.
2558 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
2560 * configure.in: x_libs=, not $x_libs=. Enough said.
2561 (Case only hit for --disable-xshm)
2563 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
2565 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
2566 when testing for X libraries, don't replace them. Because
2567 the user might have specified the path to the X libraries
2568 themself before running configure.
2570 * examples/**.c: Changed all gpointer * to gpointer
2572 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
2574 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
2575 fleur_cursor field. Now the cursor is created/destroyed on demand
2576 by the routines that need it.
2578 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
2579 (gtk_handle_box_motion): The fleur cursor is created and destroyed
2582 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
2584 * gtk/gtktypeutils.h:
2585 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
2586 gtk_enum_set_values to gtk_type_enum_get_values and
2587 gtk_type_enum_set_values respectively, since they are actually type
2590 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
2593 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
2595 * gtk/gtkselection.h:
2596 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
2597 gtk_selection_data_free.
2599 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
2600 for "selection_received", which was completely bogus.
2601 * other fixups to gtk_signal_new() calls all over the place.
2603 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
2604 * gtk/gtktypebuiltins_vars.c: type variable implementations.
2605 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
2607 * gtk/gtktypebuiltins_evals.c: enum value arrays.
2608 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
2610 * gtk/gtk.defs: generated file with scheme syntax for type definitions
2611 of gtk and gdk structures and enums.
2612 * gtk/gtktypeutils.h:
2613 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
2614 macros anymore (this fixes binary incompatibility with new enum
2617 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
2618 key bindings for this widget.
2619 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
2623 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
2624 again. new functions gtk_object_class_user_signal_new () and
2625 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
2626 flag on the signal creation.
2628 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
2630 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
2632 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
2638 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
2640 * reworked enum value array generation code. gtk.defs is a generated
2643 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
2645 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
2646 check menu items in the compatibility code (this required me to remove
2647 the "<check>" part from the menu item name, grrr).
2649 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
2651 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
2652 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
2654 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
2656 * gtk/gtkitemfactory.h:
2657 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
2658 additions to the dumping code to feature GtkPatternSpec.
2659 even found a bug to fix in the original code ;)
2661 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
2663 * gtk/gtkitemfactory.c: support different types of callbacks, to
2664 maintain existing code.
2666 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
2668 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
2670 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
2671 this should eventually be done by gentypeinfo.el somewhen.
2672 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
2674 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
2675 enum values of an enum type.
2683 brought enum/flags definitions in sync, added a few more enum
2684 definitions for bindings and pattern matching.
2686 * some more macro and GtkType fixups in various places.
2688 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
2689 as a key-release modifier for the binding system.
2691 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
2693 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
2694 was a stale list pointer that is already present in GtkMenuShell.
2696 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
2697 GtkMenuShell::selection_done which is emitted after the menu shell
2698 poped down again and all possible menu items have been activated.
2700 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
2702 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
2703 before activation of the menuitem, so the menu is actually taken off the
2704 screen prior to any menu item activation.
2706 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
2710 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
2711 the emission of the "add-accelerator" signal on a widget. this is
2712 usefull to prevent accelerator installation on certain widgets.
2714 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
2715 labels left justified, by setting their alignment. stop accelerator
2716 installation for the menu items, since we use dynamic menus.
2718 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
2720 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
2721 should *really* use GtkItemFactory. this is only for preserving source
2722 compatibility where possible, use of GtkMenuFactory is deprecated as of
2725 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
2726 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
2727 missed this possibility when i added gtk_object_class_add_user_signal
2730 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
2732 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
2734 * gtk/gtkaccelgroup.h:
2735 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
2737 * gtk/gtkaccellabel.h:
2738 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
2739 display of the accelerators associated with a certain widget.
2741 * gtk/gtkitemfactory.h:
2742 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
2743 parsing and accelerator handling.
2745 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
2747 (gtk_menu_map): removed the allocation code.
2748 (gtk_menu_size_allocate): care for redrawing of children and resize
2749 our widget->window correctly.
2750 (gtk_menu_key_press): feature the new accelerator groups.
2752 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
2753 submenu if neccessary.
2755 * gtk/gtkmenuitem.c:
2756 * gtk/gtkcheckmenuitem.c:
2757 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
2761 (gdk_keyval_from_name):
2762 (gdk_keyval_name): new functions for keyval<->key-name associations.
2763 (gdk_keyval_to_upper):
2764 (gdk_keyval_to_lower):
2765 (gdk_keyval_is_upper):
2766 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
2767 regards to their cases.
2769 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
2771 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
2772 widget's class path.
2773 (gtk_widget_path): new function to calculate a widget's name path.
2775 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
2776 pattern matching, features reversed pattern matches.
2778 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
2780 * examples/extract.sh, examples/extract.awk:
2781 New files to automagically extract code examples from the
2784 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
2786 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
2787 * gtk/gtkcontainer.c (gtk_container_focus_move):
2788 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
2790 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
2792 * docs/gtk_tut.sgml: minor changes to support auto
2793 extraction of example code
2795 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
2797 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
2798 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
2800 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
2802 * docs/gtk_tut.sgml:
2803 - new section on Events
2804 - change all delete_event callbacks to include
2805 a GdkEvent parameter
2806 - clean up the formatting
2808 * examples - helloworld.c, helloworld2.c, notebook.c,
2809 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
2810 rulers.c, table.c, wheelbarrow.c: change all delete_event
2811 callbacks to include a GdkEvent parameter.
2813 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
2815 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
2816 field of crossing events.
2817 (struct _GdkEventCrossing): Added the following fields: time, x,
2818 y, x_root, y_root, mode, focus, state.
2820 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
2821 crossing event structure.
2823 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
2824 changes to the crossing event structure.
2826 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
2828 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
2830 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
2832 * docs/gtk_tut.sgml:
2833 - GtkTooltips, update to current API
2834 - change all 'gpointer *data' to 'gpointer data'
2835 - other minor changes
2837 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
2839 * configure.in (LDFLAGS): Bomb out with a moderately
2840 helpful message if detection of X libraries fails.
2842 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
2845 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
2846 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
2848 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
2849 gtk/gtksignal.c gtk/gtktext.c:
2851 Fixups for warnings from adding const to type of GHashFunc,
2854 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
2855 ansi-warnings fixups.
2857 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
2859 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
2860 Locate child at (border_width,border_width), not
2861 (2*border_width,2*border_width). [ The border is _outside_
2864 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
2865 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
2867 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
2869 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
2872 1998-05-22 <sopwith@redhat.com>
2874 * gtk/gtkeventbox.c: Pass size_allocate on to the child
2875 regardless of whether it is visible or not. Also
2876 locate child at (border_width,border_width), not (0,0)
2878 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
2880 * gtk/gtkhandlebox.c: Added style_set handler.
2882 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
2883 [ From: Chris Lahey <clahey@umich.edu> ]
2885 * gtk/gtkeditable.c, gtk/gtkeditable.h,
2886 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
2887 and set_position functions to get and set the cursor position.
2889 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
2890 signal status. Make GtkText do user-controlled insertion
2891 and deletion through the Editable widget so that these
2892 signals are properly emitted.
2894 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
2895 display asterisks instead of empty space when visible = FALSE)
2897 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
2899 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
2902 1998-05-21 <sopwith@redhat.com>
2904 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
2905 custom routine for loading images specified in gtkrc's.
2907 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
2909 * configure.in: Use pthread_attr_init() as a test function,
2910 since most of the rest of -lpthread is macros on DU4.
2912 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
2914 * gtk/gtkcombo.c: implemented completion in the entry.
2916 1998-05-18 <sopwith@moebuis.labs.redhat.com>
2918 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
2920 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
2922 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
2923 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
2924 to be of runtype GTK_RUN_LAST.
2926 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
2929 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
2932 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
2934 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
2935 text retrived from GtkEntry. only intercept the Tab key if there
2936 was some text to complete.
2938 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
2940 Basic thread-awareness:
2942 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
2944 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
2945 gdk_threads_[init/enter/leave] for applications, plus
2946 gdk_threads_wake to wake the mainloop thread out of
2949 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
2951 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
2953 * gtk/testgtk.c (list_clear): Account for the fact
2954 that gtk_list_clear_items is not inclusive. (Clears
2957 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
2959 * gdk/gdk.c: include gdkkeysyms.h always
2962 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
2964 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
2965 the visibility_notify_event method and changed method order.
2967 1998-05-14 <sopwith@moebuis.labs.redhat.com>
2969 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
2971 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
2973 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
2974 from Olli Helenius <ollhel@batman.jytol.fi>.
2976 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
2978 (gtk_type_set_chunk_alloc): new function to allow allocation of new
2979 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
2982 * gtk/gtkobject.c (gtk_object_finalize): free an object through
2985 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
2987 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
2988 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
2990 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
2992 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
2993 GPOINTER_TO_UINT fixes.
2995 * gtk/gtksignal.c: Include <string.h> for memset.
2997 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
2998 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
3000 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
3001 Cleanups, comments and the ability to have rulers with
3002 a reversed direction.
3004 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
3006 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
3007 that Sopwith missed when changing stat => lstat.
3009 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
3011 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
3012 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
3013 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
3015 * gdk/gdk.c: Print sizeof() results
3016 as g_print("%ld", (glong)sizeof(foo)), to deal with
3017 sizeof() being long on Alpha's.
3019 * gtk/testgtk.c: include <string.h> for strlen
3021 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
3022 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
3024 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
3025 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
3027 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
3029 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
3030 (From: Christopher James Lahey <clahey@umich.edu>)
3032 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
3035 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
3036 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
3037 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
3038 the default relief for the toolbars buttons. Added an
3039 toggle for the toolbar test in testgtk.c.
3041 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
3043 * docs/gtk-config.1: Rewritten and hopefully improved.
3045 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
3048 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
3050 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
3052 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
3053 GtkPreview's visual and colormap, otherwise things can BadMatch.
3055 * gtk/testgtk.c (create_color_preview):
3056 (create_gray_preview): Removed pushing/popping of visual/colormap
3057 now that GtkPreview does things correctly.
3059 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
3060 (gtk_color_selection_draw_wheel): Pick the style from the correct
3061 place (the colorsel->wheel_area widget) so that the GCs will match
3062 with where we are going to paint to.
3064 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
3065 of visual/colormap now that GtkColorSelection does things the
3068 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
3070 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
3071 previously unused window->need_resize flag to mark if a window's
3072 descendents changed size while the window was not visible. In this
3073 case, when the window becomes visible, we reallocate everything,
3074 since we didn't keep track of what actually changed.
3076 (Fixes bug where changing the popdown strings of a
3077 combo to something of the same length caused them to
3078 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
3080 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
3082 [security audit by Alan Cox]
3084 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
3085 exceed maximum assumed size.
3087 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
3088 not exceed maximum assumed size.
3089 (gtk_menu_factory_remove): likewise.
3090 (gtk_menu_factory_find_recurse): likewise.
3092 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
3094 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
3095 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
3096 redrawn if that is still neccessary. don't allow queueing of already
3098 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
3099 widgets which are in the queue can be destroyed safely, handle
3100 requeueing properly.
3101 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
3102 widgets which are in the queue can be destroyed/unrealized safely.
3104 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
3106 * gtkfaq.sgml: add question on multi-threading,
3109 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
3111 * configure.in (cflags_set): preserve automake CFLAGS.
3113 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
3114 and libgdk-1.1.la. this means we need to change certain portions of
3115 the Makefile.am on major/minor version bumps.
3117 * ltmain.sh: the -release option is not required anymore.
3119 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
3120 of the first argument to be of type GtkObject. unconditionally compile
3121 this function. removed __GNUC__ dependancy of the gtk_object_ref and
3122 gtk_object_unref macro wrappers for this function.
3124 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
3128 (gtk_object_data_try_key):
3129 (gtk_object_data_force_id): these are now macros substituting the old
3130 functions. we just use the corresponding g_dataset_* functions for
3131 key->id associations. (this is to assure unique key<->id associations).
3133 1998-05-10 Stefan Jeske <stefan@gtk.org>
3135 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
3138 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
3140 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
3142 * configure.in (LIBS): Try to figure out if this
3143 is Digital Unix and we need -std1 to get the
3146 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
3148 * docs/gtk_tut_it.sgml: update of Italian tutorial
3149 translation from Daniele Canazza <dcanazz@tin.it>
3151 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
3153 * gtk/gtkfeatures.h.in: new file used as template for
3154 * gtk/gtkfeatures.h: new file to define macros indicating newly
3155 introduced features, such as GTK_HAVE_SIGNAL_INIT.
3158 (gtk_signal_emitv_by_name):
3160 new functions to emit signals with an already provided parameter set.
3161 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
3162 (gtk_signal_real_emit): prototype changes, so this functions always
3163 gets its parameters and signal structure as arguments.
3164 (gtk_signal_emit): provide the signal structure and parameter list for
3165 gtk_signal_real_emit.
3166 (gtk_signal_emit_by_name): likewise.
3168 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
3170 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
3171 signal connections through unsetting GTK_CONNECTED.
3172 (gtk_signal_handler_insert): reflect the presence of signal connections
3173 through setting GTK_CONNECTED.
3174 (gtk_signal_real_emit): only check for handler emissions if the object
3175 has the GTK_CONNECTED flag set.
3176 (gtk_signal_handler_pending): don't check for pending handlers if the
3177 GTK_CONNECTED flag is not set for this object.
3179 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
3180 a GtkObject has signal handler connections.
3182 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
3183 set for this object call gtk_signal_handlers_destroy().
3185 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
3186 multiple processing of macro args.
3188 * gtk/gtktypeutils.c:
3191 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
3193 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
3195 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
3196 draw-queue when we are done.
3198 (gtk_widget_queue_draw/_queu_resize): Always return
3199 FALSE and avoid having two idles at the same time.
3201 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
3203 * gtk/gtktext.c: Various fixes to make sure cache
3204 lines are freed if line_start_cache doesn't point to the
3205 beginning of the cache.
3207 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
3209 * style_set improvements for GtkText and GtkEntry
3211 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
3213 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
3216 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
3218 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
3219 data chunks through a global object data structure list. unlink
3220 object data before invoking its destroy function.
3221 (gtk_object_finalize): slight modification to allow usage of object
3222 data during object finalization.
3224 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
3226 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
3227 signal names, e.g. "signal-name" is now an alias for "signal_name".
3228 (gtk_signal_handler_new): allocate handlers through a global handler
3229 structure list, that's faster than memchunks.
3230 (gtk_emission_new): allocate emissions through a global emission
3231 structure list, that's faster than memchunks.
3233 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
3235 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
3237 * ltmain.sh: added a new commandline flag -postfix similar to -release,
3238 but will immediately change the library name.
3241 * gtk/Makefile.am: specify -postfix and -version-info
3243 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
3244 GTK_BINARY_AGE. calculate LT_* variables for libtool.
3246 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
3248 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
3249 background (fg_set -> bg_set confusion).
3251 1998-05-06 Stefan Jeske <stefan@gtk.org>
3253 * gtk/testgtk.c (unselect_all): Removed code that caused an
3256 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
3258 * gtk/gtksignal.c: reimplemented the signal storage system to use a
3259 linear array rather than a hash table.
3260 be carefull *not* to keep any GtkSignal pointers across invokations
3261 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
3262 general code cleanups, made all allocations through memchunks.
3263 (gtk_signal_lookup): we now do the lookup of signals through a key_id
3264 for the signal names to avoid multiple hashing of the signal name on
3265 lookups for the several hirarchy levels of an object.
3267 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
3269 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
3270 to speed things up and remove code duplication.
3272 Reintegrated buffer overflow patches, and added
3273 some extra paranoia.
3275 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
3277 * gdk/gdk.c (gdk_event_translate): A guint * was
3278 being passed where X expected a Keysym *, and
3279 keysyms are long's on Alpha Linux. This was causing
3280 segfaults in Xlib, apparently because of alignment.
3281 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
3283 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
3285 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
3286 set GDK_EXPOSURE_MASK for DrawingAreas
3288 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
3290 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
3291 (superceded by RC file reparsing capabilities)
3293 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
3294 events. (Shouldn't be sent to the InputOnly leader, which
3295 it is now by gdk_event_send_clientmessage_toall
3297 * gtk/testgtk.c: Added extra button to rcfiles test
3298 to send out _GDK_READ_RCFILES events.
3300 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
3302 * gtk/gtkselection.c (gtk_selection_clear): Fixed
3303 reversed conditionals that caused segfault on some
3306 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
3308 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
3309 cast to GTK_OBJECT for gtk_object_ref.
3311 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
3313 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
3314 checking for signal initialization in gtksignal.c.
3316 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
3317 a long debugging period ;)
3319 1998-05-05 Stefan Jeske <stefan@gtk.org>
3321 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
3322 New function to wrap XSetDashes; modified gtkctree.c to use it.
3324 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
3326 * configure.in: Added $x_libs in the other_libraries field in the
3327 check for XShapeCombineMask.
3329 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
3331 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
3333 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
3334 linear array rather than a hash table. it actually speeded up testgtk
3335 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
3336 pointers across invokations of gtk_type_node_next_and_invalidate() and
3337 therefore gtk_type_unique()!
3339 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
3340 inheritance of a class pointer.
3341 (GTK_OBJECT): modifications for speedups.
3342 (GTK_IS_OBJECT): likewise.
3343 (GTK_OBJECT_CLASS): likewise.
3344 (suggested by owen).
3346 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
3348 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
3350 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
3351 since its derivation changed 4 month ago ;(. showed up with the unique
3352 type name checking code in gtk_type_unique().
3354 * random guint->GtkType and macro fixups.
3356 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
3358 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
3359 Configure events that would result in a negative
3362 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
3364 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
3365 "glibconfig.h" and another about writing another IRC
3368 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
3370 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
3371 parameters to log are doubles. Digital Unix apparently
3372 is missing the argument in its prototype.
3374 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
3376 * gtk/gtklabel.c (gtk_label_state_changed): Don't
3377 force a clear until the widget is actually on
3380 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
3382 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
3383 to make this consistent with the gtk-1-0 tree.
3385 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
3387 * configure.in acheader.h gdk/gdkwindow.c
3388 Check for Shape extension both on the client and server
3389 side. (And, more importantly, check for the shape extension
3390 so we may include -lXext even when compiling with --disable-xshm)
3392 Don't set override_redirect on all shaped windows. It isn't
3395 * gdk/gdkwindow.c: Set ->colormap to NULL for root
3396 and foreign windows. Use this to check if we
3397 need to get the colormap from X.
3399 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
3401 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
3402 between the default and the button always in GTK_STATE_NORMAL.
3404 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
3407 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
3409 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
3410 Fix a buffer overflow on pixmaps that claim to have
3411 more than 31 characters per pixel.
3413 (gdk_pixmap_read_string): Don't wrap around strings longer
3414 than half of address space ;-)
3416 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
3417 that were used for printing integers.
3424 int foo (void) { ... }
3426 Even where there were proper prototypes elsewhere.
3428 * gdk/gxid.c (handle_claim_device): Some extra checks.
3429 It isn't safe against being fed bad X id's, but at
3430 least it should be safe against deleting all your
3433 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
3435 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
3436 to set the adjustments value when there is no current emission.
3437 [ Removed by mutual agreement owt 5/3/1998 ]
3439 * gtk/gtksignal.c: added new functions to retrive the number of
3440 existing emissions for a certain signal.
3441 (gtk_signal_n_emissions): new function.
3442 (gtk_signal_n_emissions_by_name): new function.
3444 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
3446 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
3447 set the current focus_child of a container, does proper referencing and
3448 adjusts the vadjustment/hadjustment associated with the focus widget.
3450 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
3451 containers via gtk_container_set_focus_child.
3453 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
3456 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
3457 child since not every child removal goes through this function (this
3458 showed up after gtk_container_set_focus_child() started to reference the
3459 focus_child of a container).
3461 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
3462 of a container from gtk_container_remove into this place.
3464 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
3466 * gtk/gtksignal.c: added new functions to operate on intermediate
3467 function pointers. implemented incremental blocking.
3468 (gtk_signal_disconnect_by_func): new function.
3469 (gtk_signal_handler_block_by_func): new function.
3470 (gtk_signal_handler_unblock_by_func): new function
3472 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
3474 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
3475 Always show the scrollbars when the policy is
3476 GTK_POLICY_ALWAYS...
3478 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
3480 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
3481 "value_changed" if we really passed a new value.
3482 (gtk_adjustment_changed): new function to emit the "changed" signal.
3483 (gtk_adjustment_set_value): new function to emit the "value_changed"
3486 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
3488 * gtk/gtkcombo.c: Further changes to the way the window
3489 is popped up so that it will be compatible with
3490 auto-scrolling in the future.
3492 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
3494 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
3495 the combo-list is empty since that will cause the combo to operate
3496 on a non existing GtkList window.
3497 (gtk_combo_get_pos): provide the combo list with a usfull default
3499 (gtk_combo_popup_button_press): grab the focus.
3500 (gtk_combo_activate): grab the focus.
3502 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
3504 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
3505 function to reset the RC styles for a heirarchy
3507 Clear the window background if necessary in
3508 gtk_window_style_set.
3510 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
3511 rereads all previously read RC files.
3513 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
3514 (Should it just be called gdk_get_toplevels?)
3516 * gtk/testgtk.c: New test to reload RC files.
3518 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
3521 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
3522 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
3523 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
3524 the GTK_ prefix (this solution involved less changes in the
3525 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
3526 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
3527 from lars & stefan to support the derivation of GtkCtree.
3531 initial import of a tree widget derived from gtkclist, courtesy
3532 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
3535 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
3537 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
3539 (gtk_list_insert_items):
3540 (gtk_list_remove_items_internal):
3541 (gtk_list_clear_items):
3542 remove a possible pointer grab, we might get thrown into a loop
3544 (gtk_list_button_press): grab the pointer *before* selecting the child,
3545 because selection of items may cause the lists children to change,
3546 resulting in a grab release.
3547 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
3549 (gtk_list_shutdown): remove all children from the list.
3550 (gtk_real_list_unselect_child):
3551 (gtk_real_list_select_child): *always* put our internal structures into
3552 sane state *before* signal emisions (i.e. list->selection updates prior
3553 to gtk_list_item_[de]select() calls).
3555 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
3556 focused child walks out of the window.
3557 removed CAN_FOCUS for the combo arrow's button since it doesn't react
3558 to keyboard events ("clicked" connection is missing).
3560 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
3562 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
3563 getting colormap for FOREIGN windows to go along with
3564 Raster's fix for visuals.
3569 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
3571 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
3572 Check to catch the case when the viewport fits in either
3573 direction or both, instead of flip-flopping infinitely.
3575 Only show/hide the scrollbars once at the end.
3577 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
3579 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
3580 Include the scrollbars in the foreach call.
3581 (gtk-fortier-980405-0.patch;
3582 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
3585 really should also include its tabs, but that might cause
3586 problems for programs if they
3588 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
3590 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
3591 resize if the size actually changed.
3592 (gtk-johannes-980414-0.patch ;
3593 johannes@nada.kth.se (Johannes Keukelaar) )
3595 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
3597 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3598 ltmain.sh ltconfig config.sub config.guess:
3600 Reverted back to libtool-1.2 (plus minor patches) so as not to
3601 force the issue for everyone else.
3603 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
3605 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3606 Updated to libtool 1.2a.
3608 * gtk/gtkclist.c: Draw the in-between lines with style->base
3609 instead of style->white.
3611 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
3613 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
3614 Cache the colormap and children of a window locally
3615 instead of fetching them from the server when needed.
3616 Huge performance difference for creating/destroying
3619 * gtk/gtkstyle.c: Find the depth from the cached
3620 visual, instead of asking the server.
3622 * gtk.m4: Distribute the new version which tries to
3623 figure out what went wrong and give helpful error
3626 * ltmain.sh ltconfig config.sub config.sh:
3627 Updated to libtool 1.2a
3629 * gtk/gtktext.c: Fixed a bug where the drawn level
3630 was being messed up when the text was scrolled
3633 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
3635 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
3636 the filesystem under you (fix from Josh)
3638 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
3640 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
3641 if the viewport already exists before iterating over it, maybe we
3642 haven't been constructed yet.
3644 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
3646 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
3647 the GtkBin widget already has a child.
3649 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
3650 check that child->parent == NULL;
3652 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
3654 * gtk/gtkselection.c (gtk_selection_clear): Only return
3655 FALSE when the clear event is been rejected, not when
3656 widget has already lost the selection. (Which should
3657 only happen when we are setting the selection to another
3660 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
3662 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
3664 Removed the "check visibility after gtk_widget_unparent" bug
3665 in hopefully the last three places.
3667 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
3669 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
3672 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
3674 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
3675 for CAN_FOCUS widgets.
3677 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
3678 adjustments for the table.
3679 (create_list): feature automatic adjustment of the scrolled window to
3680 always contain the focused child.
3681 (create_main_window): keep the focussed button always inside of the
3684 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
3685 adjustments, to contain the allocation of the currently focused child.
3686 (gtk_container_set_focus_hadjustment): new functin to set the
3687 horizontal focus adjustment.
3688 (gtk_container_set_focus_vadjustment): new functin to set the vertical
3691 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
3692 clamp the currents adjustment page into a specific range.
3694 * random GtkType fixups for gtk_*_get_type() functions.
3696 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
3698 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
3699 Account for the fact that gtk_tree_item_remove_subtree
3700 will be called recursively.
3702 Handle removing a collapsed subtree.
3704 (From Andy Dustman <adustman@comstar.net>)
3706 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
3707 root tree when removing items from a non-previously
3710 * gtk/testgtk.c: Added a remove_subtree button.
3712 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
3714 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
3715 before object removing data. This change fixes a bug where
3716 removing the last weak references would cause it to be
3719 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
3721 * gdk/Makefile.am: Removed mostly useless dependency that
3722 was causing problems for SGI's make, when used with
3723 the 'make dist' form of GTK+. (Dependency caused dependencies
3724 to be redone when BUILT_SOURCES changed)
3726 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
3728 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
3731 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
3732 to gtkitem.c so dragging can also work in lists.
3734 * gtk/gtklist.[ch]: Track child enter events and use
3735 those to allow dragging the selection.
3737 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
3739 * gtk/gtktext.c: Try enabling background pixmaps for editable text
3740 widgets. There is a bit of flashing, but not too bad. If you
3741 don't want the flashing, you can always not set a background
3744 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
3746 * gtk/gtktext.c: Fixed a bug where the drawn level
3747 was being messed up when the text was scrolled
3750 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
3752 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
3753 bug: There is no need to set the ExposureMask in the XGrabPointer
3754 (this caused DnD programs to crash).
3756 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
3758 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
3759 field to be of type guint.
3760 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
3762 (gtk_accelerator_table_install): keep a per object list of accelerator
3763 tables that refer to this object.
3764 (gtk_accelerator_table_remove): remove the accelerator table from the
3766 (gtk_accelerator_table_clean): warn if there are any object references
3767 left in an accelerator table upon destruction.
3768 (gtk_accelerator_tables_delete): new function to delete object
3769 references from the accelerator tables associated with this object.
3771 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
3772 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
3773 of an accelerator can be prevented by gtk_signal_emit_stop().
3774 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
3775 so there are no stale pointers in accelerator tables left.
3777 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
3779 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
3780 visible before we unparent it.
3782 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
3784 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
3785 running_timeouts list with the tmp_list link itself, not with a new
3786 GList structure pointing to our link. that would fill up memory and
3787 causes the GList.data fields of the running_timeouts list to point to
3788 GList structures and not GtkTimeoutFunction structures which is a
3790 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
3793 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
3795 * gtk/gtkradiomenuitem.h:
3796 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
3797 ala gtk_radio_button_set_group.
3798 (gtk_radio_menu_item_init): assure that we always have at least a group
3799 that points to self.
3801 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
3802 added g_return_if_fail() statements.
3803 (gtk_radio_button_init): assure that we always have at least a group
3804 that points to self.
3806 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
3808 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
3810 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
3812 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
3813 (Damon Chaplin), which i got wrong when applying Damon's patch the last
3816 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
3818 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
3819 that when we are running with a non-installed colormap,
3820 in 8-bit pseudo-color, we actually are using the system
3821 visual. (Fixes *Bad Match* errors on Digital Unix machines
3822 with multiple 8-bit pseudo-color visuals)
3824 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
3826 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
3827 by whoever thought that randomly changing ints to unsigned int
3828 without reviewing the code was a good idea. It is, btw not
3829 mentioned in the ChangeLog as usual, but I know it was not Elliot
3830 the culprit this time.
3832 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3834 * Released GTK+ 1.0.0