1 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
3 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
6 * gtk/gtkmenu.c: Modified reference counting so
7 that the reference count from the toplevel that
8 the menu creates to the menu is invisible to the
11 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
13 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
14 conversion selection logic, so Suns and other big-endian
15 machines should get faster conv routines. This is also the
16 point where 4bpp gray and 1bpp are checked in, although I
17 wouldn't be surprised if 1bpp is a little buggy. This is
18 synchronized with the 0.0.7 release of GdkRgb.
21 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
22 appropriate change to the Makefile.am
24 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
26 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
27 which is good for images that scroll (makes the dither patterns
30 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
33 (gdk_colormap_new) (gdk_colormap_get_system):
34 quell some warnings with g_hash_table_new
36 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
37 when we're done with it
40 (gtk_item_factory_from_path):
41 (gtk_item_factory_create_item): free some strings
44 (gtk_label_finalize): free label->pattern when done
45 (gtk_label_parse_uline): null terminate pattern string, delete
48 * gtk/testthreads.c: add #include <unistd.h> for sleep()
50 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
52 * gtk/gtktext.c (recompute_geometry): Make sure the
53 mark we pass to line start is the beginning of a
54 real line, not a wrapped one.
56 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
58 * gtk/gtktext.c: Reference count the fonts used in
61 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
62 freeing functions to be more consistent, and more
63 convenient; leave the old names in for backwards compatibility.
65 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
66 allocations in pseudo-color colormaps to greatly reduce
67 calls to XAllocColor. Keep a per-colormap hashtable to
68 speed up finding if there is an already-allocated matching
71 * gdk/gdkcolor.c: Don't just match read the system colormap
72 when the colormap is created, but synchronize our copy
73 with the system colormap periodically.
75 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
76 Change XIM constants names to match GDK conventions
78 * gtk/testinput.c: Allow the drawing area to get the focus.
80 * gtk/testgtk.c: Change around the Text test to demonstrates
81 multiple fonts, use more colors.
83 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
84 so they work after a widget is unrealized.
86 * gtk/gtktext.[ch]: Remove the requirement that the text
87 widget be realized before adding text (!) Allocate colors
88 ourself, instead of requiring the caller allocate them.
89 Allow changing styles to work properly by keeping track
90 of the values for a certain property are default or
93 * gtk/gtkmenu.h: Added some comments.
95 * gtk/gtkentry.c: Changes to match XIM constants.
97 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
98 for adding keyed data to drawables. (Uses g_dataset
101 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
102 when creating an XPM - store them as user data for the GdkPixmap,
103 so we don't leak colors when we create pixmaps from XPM's.
105 Allocate memory for color information in large blocks instead of
106 as many little pieces.
108 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
110 * gdk/gdkrgb.c: removed some unused variables
113 * gtk/gtkmain.c: #if 0'd out some unused code
115 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
117 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
125 * gtk/gtkcontainer.h:
126 * gtk/gtkcontainer.c:
131 (gtk_container_add_with_args):
132 (gtk_container_child_set):
133 begin the parameter elipsis (...) after the first argument name. this
134 change is source compatible, since it was always required, even as NULL.
136 (gtk_object_args_collect):
137 (gtk_container_child_args_collect):
138 changed prototypes to pass first_arg_name, also, pass va_list variable
139 by value (portability concerns). callers changed.
141 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
142 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
143 can't pass va_list variables by reference for portability reasons.
145 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
147 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
148 get_visual calls, so that it gets implicitly initialized.
150 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
151 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
152 such as GtkCTree function name changes
154 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
157 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
158 binary version check, returning a static string for error descriptions,
161 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
163 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
164 computed our geometry yet, and if not, ignore the request.
166 * gtk/gtktext.c (correct_cache_insert): Fiddled around
167 some more. All the bug-test codes seem to work at once
168 now. (fingers crossed...)
170 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
172 * gdk/gdkrgb.c: silly visual fixes
174 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
177 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
179 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
180 anything if the event's window is not the bin window.
181 (gtk_handle_box_motion): Likewise.
183 1998-08-19 Raph Levien <raph@gimp.org>
185 * gtk/testgtk.c (create_color_preview): pushed the colormap and
186 visual so it would work better with GdkRgb.
188 1998-08-19 Raph Levien <raph@gimp.org>
190 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
191 4bpp static_color mode (for vga displays). Also fixed a '64' value
192 in the dither matrix, which was causing one pixel out of 16k to be
195 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
196 most of the contents. This is an API change - any apps that relied
197 on the internal structure of GtkPreview will need some change -
198 most notably in the use of reserved colors. The Gimp needed
199 changes in this regard.
201 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
203 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
204 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
205 --g-fatal-warnings), noticed by miguel.
207 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
209 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
217 * gtk/gtkitemfactory.c:
218 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
220 * gtk/gtkselection.c:
224 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
226 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
228 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
230 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
231 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
232 in case of show_tabs == NULL
234 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
236 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
237 to --g-fatal-warnings again. this option now causes log levels of
238 WARNING and CRITICAL to abort().
247 * gtk/gtktypeutils.c:
253 * gtk/gtkselection.c:
257 did a global search&replace to substitute g_print() calls with
258 g_message(). libraries shouldn't use printf(), g_print() or
260 a bunch of the replacements should probably be wrapped into the
261 G{D|T}K_NOTE() macros, so they are special cased for debugging
262 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
265 * gdk/gdkdnd.c: added copyright notice.
267 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
269 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
270 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
271 running a PII 233. It's synced with the 0.0.5 release of
274 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
277 (struct _GtkCListClass): new class methods:
278 (sort_list) (insert_row) (remove_row) (set_cell_contents)
281 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
282 removed and replaced by (set_cell_contents)
283 (set_cell_contents): function for class method set_cell_contents
284 (real_insert_row): function for class method insert_row
285 (real_remoce_row): function for class method remove_row
286 (real_sort_list): function for class method sort_list
287 (default_compare): fix to avoid problems with cell types != CELL_TEXT
290 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
291 (gtk_ctree_node_is_visible): new function to return visibility state
293 (gtk_ctree_show_stub): new function to set visibility of root stub
296 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
297 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
298 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
299 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
300 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
301 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
302 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
303 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
304 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
305 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
306 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
307 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
308 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
309 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
310 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
311 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
312 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
313 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
314 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
317 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
318 removed and replaced by (set_cell_contents)
319 (set_cell_contents): function for class method set_cell_contents
320 (real_insert_row): function for class method insert_row
321 (real_remoce_row): function for class method remove_row
322 (real_sort_list): function for class method sort_list
323 (default_compare): removed. CTree now also compares two GtkCTreeRows
324 instead of two GtkCTreeNodes.
325 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
327 (real_tree_expand) (real_tree_collapse): fix for refcounting of
329 (set_node_info): call gtk_ctree_node_set_pixtext instead of
330 manipulating the row itself
332 * gtk/testgtk.c: use renamed functions of GtkCTree.
333 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
336 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
338 * gtk/gtkmain.c: removed gtk_input_add_interp.
340 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
342 (gtk_editable_get_event_time): fix default: case.
344 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
346 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
349 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
352 * various minor compilation cleanups, such as bogus commas in
353 enums and similar things.
355 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
357 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
360 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
362 * NEWS: updated for 1.1.2
363 * gtk+.spec: version = 1.1.2
365 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
367 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
368 times. changed --gtk-with-module to --gtk-module at owen's request.
370 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
372 * gtk/gtkmain.c (gtk_init): feature a new commandline option
373 --gtk-with-module=<module> that allows additional loading and
374 initialization of modules (e.g. GLE).
376 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
378 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
379 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
381 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
382 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
383 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
384 different *-fatal-* arguments now. this needs to be revised and
385 compressed to a reasonable amount of arguments.
387 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
389 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
390 "--g-fatal-warnings" causes fatal warnings in GLib,
391 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
392 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
394 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
395 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
399 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
400 since automake doesn't support per target _CFLAGS yet.
402 * configure.in: require GLib 1.1.3.
404 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
406 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
407 to set a callback to test if a node in drag can be dropped onto
408 it's currrent location.
409 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
410 to change the pointer when a drag destination is not allowed.
412 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
414 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
415 speeds up the 565_d case by about 25% total. Thanks Ray!
417 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
419 * Changed GtkSignalFunc back to () from (void). (again!)
421 * Added file README.cvs-commits
423 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
426 - Tidy up of the menufactory example from
427 Andy Kahn <kahn@zk3.dec.com>
428 - New section on Range Widgets from
429 David Huggins-Daines <bn711@freenet.carleton.ca>
430 - Started a new section on 'Advanced Event and Signal
431 Handling' - used an email from Owen.
432 - New appendix on Gdk Event Types
433 - Added the tictactoe full example code to the
434 'Code Examples' appendix
436 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
438 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
439 to calculate all the metrics at once of a string, including
440 things which weren't calculated before.
442 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
443 MenuItem type, that when put as the first thing in a
444 menu, makes the menu tearoff. Currently drawn as a
447 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
448 "hide_on_activate" to the MenuItem class structure to allow
449 check and radio buttons to be changed with <Space> without
452 * gtk/gtkitemfactory.c:
453 - Create a AccelGroup for each MenuShell we create.
454 - If an '_' appears before a character 'c' in the path,
455 then make 'c' an accelerator in the menu's accel group,
456 and if the menuitem is menubar <alt>C an accelerator
457 in the itemfactory's accel group. Double '__' inserts
460 * gtk/gtklabel.[ch]: Add support for a pattern arg -
461 which is a string. If an '_' appears in this string,
462 the corresponding position in the label is underlined.
464 Add gtk_label_parse_uline() convenience function which
465 takes a string with embedded underlines, sets the
466 pattern and label, and returns the accelerator keyval.
468 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
469 Instead, they create a GtkWindow and add themselves
470 to that. (When torn off, another new feature, they
471 create another GtkWindow to hold the torn off menu)
473 New function gtk_menu_set_tearoff_state()
475 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
476 Added action signals for keyboard navigation of menus.
478 * gtk/gtkmenushell.c: Key press handler which activates
479 bindings for navigation, and accelerators, for handling
480 underline accelerators. Exported functions to select
481 and activate menu items in a menushell.
483 * gtk/testgtk.c: Added a new "Item Factory" test which
484 tests GtkItemFactory and the new keyboard navigation
487 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
489 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
490 external functions have been called. also relookup nodes after
491 this function has been invoked.
493 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
495 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
496 beginning of Text when creating the Text widget.
498 * gtk/testgtk.c: Grab the focus on the text widget so
499 as to test out the above.
501 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
503 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
504 ::changed is a notification signal and should have no default
505 handler. A complete redraw of the Text widget does _not_ need to
506 be done on every text insertion.
508 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
509 (gtk-abilleira-072198-patch)
511 * gtk/gtkwindow.[ch]:
512 Add gtk_window_set_modal() which sets a flag; when
513 set the window does a gtk_grab_add() when the window
514 is shown, and a gtk_grab_remove() when the window
517 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
518 that case will run "Create Dir","Delete File" and "Rename File"
519 dialogs as modal too.
521 * gtk/testgtk.c: Added a button with an example of creating modal
522 dialog boxes. Including file selection and color selection standard
525 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
527 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
528 Removed CAN_FOCUS by default from scrollbars, button
529 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
530 (Scrollbar definitely good change, toolbar bit more questionable)
532 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
534 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
537 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
539 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
540 added all logical operations to gc->function.
542 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
544 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
545 gtk_widget_size_allocate instead of gtk_widget_queue_resize
546 if the visibility state of a scrollbar changes.
548 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
550 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
552 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
554 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
555 gtk_clist_merge and gtk_clist_mergesort. :)
557 1998-08-06 Martin Baulig <martin@home-of-linux.org>
559 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
560 `mergesort' -> `my_mergesort'.
562 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
564 * gtk/gtkenums.h: new enum GtkSortType.
568 Added sorting capabilities to GtkCList. New APIs :
569 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
570 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
571 New internal functions : default_compare, merge, mergesort.
573 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
575 (gtk_clist_insert): Modified to handle gtk_clist_append and the
576 auto sort flag. Changed the return value from void to gint to
577 return the row number where the element was actually inserted.
579 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
583 Removed the auto_sort flag, replaced ctree->node_compare with
584 clist->compare all over the place, modified default_compare to
585 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
586 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
588 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
589 sorting. The lists can be sorted by a column by clicking the
590 corresponding title button.
592 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
594 * Released GTK+ 1.1.1
596 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
600 (gtk_ctree_find): changed to return a gboolean
601 (gtk_ctree_insert_gnode): new function for recursive insertion of a
603 (gtk_ctree_real_select_recursive): fix for extended selection
604 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
605 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
607 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
609 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
610 GLib version 1.1.1 is now required at minimum.
612 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
613 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
615 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
617 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
618 cursor before (possibly) deleting the cursor's text
621 * gtk/gtktext.c (correct_cache_delete): More attempts
622 to clean the line-start cache up after inserting
623 a property. Among other things, make sure to
624 fix up text->current_line, since it is used to
625 refetch the changed lines.
627 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
629 * gtk/gtktable.[ch]: Empty rows/columns of the table
630 should not have been marked as being able to shrink.
631 (Fixes problem with shrinking scrollbarless GIMP canvases)
633 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
635 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
636 function to find a row by its data pointer using a custom
639 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
641 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
642 this fixes a bug when the whole widget is made non-sesitive
643 the buttons weren't redrawn
645 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
647 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
648 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
649 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
651 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
653 * gdk/gdkwindow.c (gdk_window_reparent): Change
654 window_private->parent pointer when reparenting.
656 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
658 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
659 with the standalone release.
661 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
663 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
664 (gtk_clist_button_release) (new_column_width): Few fixes for
665 column resize. Store resize column in clist->drag_pos.
667 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
671 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
672 to GtkCTreeNode *node.
674 * gtk/gtklist.h : added extended selection mode and auto scrolling.
675 (struct _GtkList): removed unneeded variables timer, button,
676 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
677 Added new variables undo_selection, undo_unselection, last_focus_child,
678 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
679 drag_selection, add_mode.
682 (gtk_list_extend_selection), (gtk_list_start_selection),
683 (gtk_list_end_selection), (gtk_list_select_all),
684 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
685 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
686 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
687 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
690 (gtk_list_enter_notify): removed, because auto scrolling now works
691 with gtk_list_motion_notify
693 New functions, needed for auto scrolling :
694 (gtk_list_motion_notify) (gtk_list_move_focus_child)
696 New functions for extended selection support :
697 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
698 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
699 (gtk_list_focus_lost)
701 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
702 function to support auto scrolling, and avoid out-of-sync errors in
703 case auf GTK_SELECTION_BROWSE
704 (gtk_list_focus): modified gtk_container_focus function to avoid out
705 off sync errors in case auf GTK_SELECTION_EXTENDED
708 * gtk/gtklistitem.c :
709 New signal functions for key binding support :
710 (toggle_focus_row), (select_all), (list_item), (unselect_all)
711 (list_item), (undo_selection), (start_selection), (end_selection)
712 (extend_selection), (scroll_horizontal), (scroll_vertical),
714 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
716 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
719 (gtk_combo_popup_button_press): grab pointer for combo->list
720 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
721 (gtk_combo_list_key_press): take care of which child HAS_GRAB
722 (gtk_comb_init): don't connect combo->button with button_release_event
724 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
726 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
728 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
730 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
731 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
732 with horizontal and vertical autoscrolling.
734 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
736 * gtk/docs/man: new directory
737 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
739 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
741 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
744 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
746 * docs/gtk_tut.sgml: GtkTree section from
747 David Huggins-Daines <bn711@freenet.carleton.ca>,
748 add a GtkText widget example
749 * examples/text/* example/tree/* : new examples for the
750 GtkTree and GtkText widgets
751 * docs/gtk_tut.sgml: added an appendix to hold complete code
752 examples that aren't in a full form elsewhere in the
753 tutorial (e.g. scribble)
755 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
757 * Released GTK+ 1.1.0
759 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
761 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
762 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
764 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
766 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
767 values are looked up.
769 * gtk/gtktypeutils.h:
770 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
771 gtk_type_enums_find_value to lookup enum values.
774 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
775 GtkCTreeExpansionType. fixed signal creations to pass the enum
776 types not just the base type GTK_TYPE_ENUM.
779 * gtk/gtkclist.c: fixed signal creations to pass the real enum
780 types not just the base type GTK_TYPE_ENUM.
782 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
785 Began cleanup, e.g. use gtk_widget_show_all instead of many
786 gtk_widget_show's. Completely rewrote the button box sample
787 (only one window now). Removed "miscellaneous" button.
789 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
791 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
792 Fixed wrong allocation for GTK_BUTTONBOX_END.
793 (allocation->x => allocation->y)
795 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
797 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
798 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
800 * gtk/gtkctree.c (real_tree_select): added check to avoid double
802 (gtk_ctree_button_press)
803 (gtk_ctree_button_release): fix for pointer grab
805 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
807 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
808 Fixed initialization problem - dirty memory could cause problems.
809 Also checked that bitmapped fonts can be scaled when showing the
812 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
814 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
815 (gtk_ctree_sort_recursive): test for node != NULL
816 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
817 (gtk_ctree_last) : added sanity checks
818 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
820 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
822 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
824 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
826 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
828 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
830 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
831 to check out binding priorities. someone should really write
832 gtkrc-mode for emacs.
834 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
835 * gtk/testgtk.c (main): and move it here ;). this test says something
836 on release of C-9. (this works only if the mouse pointer is on a
837 spinbutton and there is no focus widget).
841 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
842 gtk_rc_parse_priority to parse path priority types.
844 feature binding parsing.
846 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
849 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
850 feature binding parsing in rc files.
851 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
852 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
853 order the bindings with lowest priority first.
855 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
857 * gdk/gdkrgb.c: actually builds and runs properly on big
858 endian machines now, because we #include config.h. Also
859 fixed up a compile error in the WORDS_BIGENDIAN case in
860 gdk_rgb_convert_565_gray. I made the fix by looking at
861 patterns in the other code; Raph can you verify this?
863 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
866 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
868 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
869 (tree_toggle_expansion) (real_select/unselect_row)
870 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
872 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
874 * gtk/gtktext.c (new_text_property): We free things from
875 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
877 * Fix up line start cache when splitting a property
880 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
882 * gtk/gtkwidget.c: restauration => restoration
884 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
886 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
887 hasn't been created yet, don't do the lookup.
889 1998-07-20 Raph Levien <raph@acm.org>
891 * gdk/gdkrgb.c: More cleanups in the config process.
893 1998-07-20 Raph Levien <raph@acm.org>
895 * gdkrgb.c: Fixed minor config bug preventing big-endian
896 architectures from working.
898 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
900 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
901 activity indicator. It is settable now as a fraction of the
902 total width/height using gtk_progress_bar_set_activity_blocks.
903 Renamed gtk_progress_bar_set_number_of_blocks to
904 gtk_progress_bar_set_discrete_blocks.
906 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
908 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
909 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
910 tree to specified depth
911 (gtk_ctree_expand_to_depth): expand tree to specified depth
912 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
914 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
916 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
918 * gtk/testgtk.c (add1000_clist): changed pixmap
920 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
923 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
925 * gtk/gtktypeutils.h:
926 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
928 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
930 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
931 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
932 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
934 (gtk_notebook_reorder_child): new funktion to change position of a
936 (gtk_notebook_draw_arrow): draw left/right arrow with
937 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
939 * gtk/gtkstyle.c (gtk_default_draw_arrow):
940 added GTK_SHADOW_ETCHED_IN/OUT
942 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
944 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
945 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
946 Introduced generic GtkProgress widget. Derived GtkProgressBar from
947 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
949 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
952 * gtk/gtkitemfactory.h: explicitly specify void in prototype
954 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
956 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
959 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
961 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
962 sropped the approach of copying all signal specific data into a
963 GtkHandlerInfo structure. we rather keep the signal data on the stack
964 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
965 avoids multiple lookups of the signal pointer and works savely together
966 with destroy notifiers of handlers.
968 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
969 someone destroys the entry on the ::activate signal.
971 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
973 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
974 instead of ypad (typo).
975 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
976 border around the allocation).
977 (gtk_arrow_init): the static requisition needs to be setup in this
978 function rather than gtk_widget_new(), so arrow creation works without
979 the gtk_arrow_new() constructing.
980 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
982 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
983 implementation for GtkWidget::size_request, so size requisition for
984 simple statically sized widgets like GtkArrow works.
986 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
988 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
989 prepend -I@libdir@/glib/include anymore, since glib-config handles
990 it; --libs strips out redundant -L<path>'s properly (there was
991 code in there to do it before, but it didn't work)
993 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
996 * gtk/gtknotebook.c: signdness corrections all ove the place.
997 implementation of object arguments: GtkNotebook::enable_popup,
998 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
999 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
1000 begun implementation of child args, we have GtkNotebook::tab_label, but
1001 GtkNotebook::menu_label and GtkNotebook::position still lack the
1003 (gtk_notebook_remove_page):
1004 (gtk_notebook_current_page): allow negative indices (-1) as alias for
1008 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
1009 arguments GtkEntry::max_length and GtkEntry::visibility.
1010 (gtk_entry_adjust_scroll): queue a redraw.
1012 * gtk/gtkeditable.h:
1013 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
1014 object arguments GtkEditable::text_position and GtkEditable::editable.
1015 new (action) signal GtkEditable::set_editable.
1016 provide a default handler for GtkEditable::changed that queues a redraw.
1019 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
1022 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
1024 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
1025 case of drag_target == NULL
1026 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
1027 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
1028 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
1029 gtk_dir_selection_file_button): fix due to changes in clist's
1032 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
1035 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
1036 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
1037 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
1038 to be gint16s rather than guint16s, since that's what the code expected
1039 (for a long time actually).
1041 * gtk/gtkviewport.c:
1042 added support for object arguments: GtkViewport::shadow_type,
1043 GtkViewport::vadjustment and GtkViewport::hadjustment.
1044 (gtk_viewport_add): chain gtk_bin_add.
1046 * gtk/gtkscrolledwindow.c:
1047 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
1048 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
1050 * gtk/gtkadjustment.h:
1051 * gtk/gtkadjustment.c:
1056 * gtk/gtkscrolledwindow.h:
1057 * gtk/gtkscrolledwindow.c:
1058 * gtk/gtkviewport.h:
1059 * gtk/gtkviewport.c:
1060 GtkType and macro fixups.
1062 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
1066 Added focus handling, horizontal and vertical autoscrolling,
1067 extended Selection Mode, key bindings
1068 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
1069 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
1070 Removed gtk_ctree_clear.
1074 Added focus handling, horizontal and vertical autoscrolling,
1075 extended Selection Mode, key bindings
1077 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
1079 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
1080 source tree. For more information on GdkRgb, please see:
1081 http://www.levien.com/gdkrgb/
1083 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
1084 bothers me slightly that the feature is in gdk, and this file is
1085 in gtk, but it's probably ok.
1087 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
1090 * gdk/gdkrgb.h: Added this module.
1092 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
1094 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
1096 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
1098 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
1099 to this function. it needs to relookup the signal multiple times.
1100 this fixes spurious segfaults that could show up with signal intensive
1101 code, when classes are created during a pending emission (which is
1104 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
1106 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
1107 child if it isn't a label.
1109 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
1112 * gtk/gtkseparator.h:
1113 * gtk/gtkhseparator.h:
1114 * gtk/gtkvseparator.h: macro and GtkType fixups.
1116 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
1118 * gtk/testgtk.c (create_cursors): display the current cursor name.
1120 * gtk/gtktypeutils.h:
1121 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
1122 the fundamental type definition. the GtkArg union now only covers
1123 the required storage types for argument values. adapted the GTK_VALUE_*
1124 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
1126 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
1127 code, fixed int/float collection. fixed a bug in the sanity checking
1128 code for GtkObjects.
1130 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
1131 argument collection code.
1133 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
1134 macros when distinguishing the return type.
1136 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
1138 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
1139 is not NULL before trying to g_list_remove the child. A patch
1140 from Michael Lausch.
1142 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
1144 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
1145 collection (always casted to doubles upon argument passing).
1147 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
1149 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
1150 object_init_func for derived objects with the object's ->klass field
1151 still pointing to the corresponding base class, otherwise overridden
1152 class functions could get called with partly-initialized objects.
1153 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
1155 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
1159 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
1161 * gtk/gtkcontainer.h:
1162 * gtk/gtkcontainer.c:
1163 (gtk_container_child_arg_get_info): new function which wraps
1166 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
1168 * gtk/gtkcontainer.c:
1169 (gtk_container_arg_get):
1170 (gtk_container_arg_set):
1172 (gtk_object_arg_set):
1173 (gtk_object_arg_get):
1174 strictly check for the associated get/set arg functions. if an
1175 arg is readable or writable, the associated class functions *must*
1178 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
1180 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
1181 padding into account if there is an accelerator.
1183 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
1185 * gtk/gtkcontainer.c:
1186 (gtk_container_add_with_args): collect the arguments with
1187 gtk_container_child_args_collect, not through gtk_object_args_collect.
1188 (gtk_container_child_set): likewise.
1190 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
1192 * gtk/gtktypeutils.h:
1193 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
1194 which is derived from GTK_TYPE_STRING.
1196 * gtk/gtkbindings.c: reworked the argument type handling.
1198 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1200 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
1201 so that it seems to allow normal operation in those modes,
1202 although you will only see black (GIMP toolbar now pops up,
1203 just don't create a new image and GIMP now works in 4 bit.)
1205 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1207 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
1208 array, which was too low (?)
1210 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
1212 * gtk/gtkcontainer.h:
1213 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
1214 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
1215 we now export a new function gtk_container_child_args_collect().
1216 for consistency with the object arguments, a few functions got renamed:
1217 gtk_container_child_arg_get -> gtk_container_child_get,
1218 gtk_container_child_arg_set -> gtk_container_child_set,
1219 gtk_container_child_arg_getv -> gtk_container_child_getv,
1220 gtk_container_child_arg_setv -> gtk_container_child_setv,
1221 gtk_container_add_with_argv -> gtk_container_addv.
1222 note, gtk_container_add_with_args() remained, because its equivalent
1223 would be gtk_container_add(,, ...) which would break all existing code.
1224 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
1225 we expect the `arg_name' argument to be a const static string now.
1226 (gtk_container_get_child_arg_type): function removed.
1228 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
1230 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
1231 this is a static inline function that collects command line arguments
1232 from a va_list. this file can just be included in all places that
1233 need this functionality.
1236 * gtk/gtkarg.c: new files which implement most of the argument
1237 handling stuff from gtkobject.c. also collected a few more
1238 gtk_arg_* utility functions from else places.
1241 * gtk/gtkobject.c: moved most of the argument handling code into
1242 gtkarg.c. we now export gtk_object_args_collect() as a non-public
1243 method with a blind va_list pointer.
1244 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
1245 const static string now.
1246 (gtk_object_get_arg_type): function got removed.
1250 (gtk_widget_new): adaptions for gtk_object_args_collect().
1252 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
1253 fundamental type name so as to have a valid prefix, e.g. "bool"->
1254 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
1255 though that should probably be something like GtkNone since the
1256 type itself is called GTK_TYPE_NONE.
1257 even the internal type names need to avoid name clashes and must live
1258 in their own namespace, several code portions rely on that.
1259 we should relly have typedefs such as typedef gchar* GtkString; so the
1260 fundamental type names can be used for code dumpers just like with all
1263 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
1265 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
1266 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
1267 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
1269 (gtk_button_paint): set the background for prelighted buttons with
1270 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
1271 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
1272 the shadow type (otherwise we get strange shadows for coloured buttons).
1273 (gtk_button_set_relief): queue a redraw after changing
1275 (gtk_button_class_init):
1276 (gtk_button_set_arg):
1277 (gtk_button_get_arg): added object argument "GtkButton::relief".
1279 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
1281 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
1284 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
1285 GTK_BIN (button)->child to button->child to keep source compatibility.
1287 * gtk/gtkoptionmenu.c:
1289 * gtkcheckbutton.c: don't refer to button->child, but
1290 GTK_BIN (button)->child instead.
1292 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
1294 * docs/gtkfaq.sgml: update anon CVS info
1296 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
1298 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
1302 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
1305 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
1307 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
1308 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
1310 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
1312 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
1314 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
1317 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
1319 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
1320 error that prevented signal to entry addition for signals with
1323 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
1325 * ltconfig: fix for properly detecting shared lib support on
1326 SunPro cc (taken from libtool 1.2.a)
1328 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
1330 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
1332 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
1334 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
1335 rc set pattern is favoured, this is needed for overriding of style
1336 patterns with subsequently parsed rc files.
1338 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
1340 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
1343 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
1345 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
1347 (gtk_accelerator_name): add "<Release>" to the accelerator name if
1350 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
1353 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
1354 default handler for key-release events, which checks for activation
1355 of GDK_RELEASE_MASK key bindings.
1357 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
1359 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
1361 * gtk/gtkarrow.h: GtkType and macro fixups.
1362 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
1363 "GtkArrow::shadow_type".
1365 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
1367 * gtk/gtkalignment.h:
1368 * gtk/gtkbin.h: GtkType and macro fixups.
1370 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
1371 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
1372 GtkAlignment::xscale, GtkAlignment::yscale.
1374 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
1376 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
1377 fucntions from all parent types upon class initialization.
1379 * gtk/gtkcontainer.c:
1380 (gtk_container_get_type): announce gtk_container_base_class_init to
1382 (gtk_container_base_class_init): new function to feature base class
1384 (gtk_container_get_child_arg):
1385 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
1386 and set_child_arg methods of the class indicated through the argument
1390 (gtk_object_base_class_init): new function to feature base class
1392 (gtk_object_init_type): announce gtk_object_base_class_init to the type
1394 (gtk_object_class_init): setup the get_arg and set_arg pointers for
1397 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
1398 instead of bothering the type system with this.
1400 * gtk/gtkaccellabel.c:
1402 * gtk/gtkradiobutton.c:
1404 * gtk/gtktogglebutton.c:
1405 * gtk/gtktipsquery.c:
1412 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
1413 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
1414 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
1415 arg functions to take a GtkObject argument.
1417 gtk/gtkadjustment.c:
1420 gtk/gtkaspectframe.c:
1423 gtk/gtkcheckbutton.c:
1424 gtk/gtkcheckmenuitem.c:
1432 gtk/gtkdrawingarea.c:
1446 gtk/gtkhscrollbar.c:
1447 gtk/gtkhseparator.c:
1449 gtk/gtkinputdialog.c:
1451 gtk/gtkitemfactory.c:
1459 gtk/gtkoptionmenu.c:
1463 gtk/gtkprogressbar.c:
1464 gtk/gtkradiomenuitem.c:
1469 gtk/gtkscrolledwindow.c:
1471 gtk/gtkspinbutton.c:
1484 gtk/gtkvscrollbar.c:
1485 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
1486 match the modified GtkTypeInfo structure.
1488 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
1490 * gtk/testgtk.c: use rand() instead of random() for portability
1492 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
1496 * gdk/gdk.c: use native Xlib XConvertCase if it's available
1498 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
1500 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
1501 XConvertCase() functionality from X11R6 on X11R5 systems.
1503 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
1505 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
1506 gdk_string_height, gdk_char_height to retrieve the exact
1509 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
1511 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
1512 by Stefan Mars <mars@lysator.liu.se>
1513 * examples/clist/clist.c examples/clist/Makefile: example code
1514 for GtkCList widget from the Tutorial
1516 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
1518 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
1519 if the container is not visible, we might be a toplevel! this holds
1520 for all other base container implementations as well, that are
1521 candidates to derive toplevels from. in general the resizing code will
1522 care about visibility itself.
1523 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
1524 * gtk/gtkbox.c (gtk_box_remove): likewise.
1526 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
1527 gtk_window_set_hints(), since we haven't calculated the new position
1530 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
1531 *mask are alway initialized in a sane way, regardless of the return
1534 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
1536 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
1537 to gtk_container_child_arg_setv, but takes a variable argument list.
1538 new function gtk_container_get_child_arg_type, which is needed by
1539 gtk_object_collect_args.
1541 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
1542 take a function pointer to figure the argument type.
1543 adapted callers to pass gtk_object_get_arg_type.
1544 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
1545 gtk_object_get_arg_type..
1549 (gtk_packer_reorder_child): new function to change the packing order
1551 (gtk_packer_size_request):
1552 (gtk_packer_size_allocate): take container->border_width into acount.
1554 * gtk/gtkpacker.c: implemented widget arguments:
1555 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
1556 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
1557 implemented child arguments:
1558 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
1559 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
1560 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
1561 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
1563 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
1566 * gtk/gtkeventbox.h:
1567 * gtk/gtkeventbox.c: GtkType and macro fixups.
1569 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
1570 sensitivity of an entry.
1572 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
1573 for insensitive base and text.
1575 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
1576 widget state dependent.
1577 (gtk_entry_style_set): likewise.
1578 (gtk_entry_state_changed): set background color on state changes.
1579 (gtk_entry_draw_text): for non selected text, use state dependent
1582 * gtk/gtktogglebutton.c: support for widget arguments
1583 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
1585 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
1587 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
1588 code for 1.0.x-like parameters. Changed internal interface of
1589 gtk_spin_button_real_spin. Several fixes to avoid emission of
1590 "value_changed" where possible.
1592 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
1594 * gtk-boxed.defs: s/GkWidget/GtkWidget/
1596 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
1598 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
1599 to select the resize_mode for the idle-labels container.
1602 * gtk/gtkframe.c: GtkType and macro corrections.
1604 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
1605 support widget argument "GtkRadioButton::group".
1607 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
1609 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
1610 unconditionally if resize_mode has changed.
1612 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
1613 GTK_RESIZE_QUEUE on the scrolled window.
1614 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
1616 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
1618 * gtk/gtkcontainer.h:
1619 * gtk/gtkcontainer.c:
1620 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
1621 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
1622 (gtk_container_queue_resize): new function to queue a container for
1623 a *size* reallocation (doesn't affect its position, and thus its
1624 parent is left untouched usually).
1625 (gtk_container_get_resize_container): new function to retrive the next
1626 most resize container which is not itself queued for a resize.
1627 (gtk_container_idle_sizer): new function to carefully process the
1628 container_resize_queue since it can change during invokation of
1629 gtk_container_check_resize().
1630 (gtk_container_resize_children): total rework of this function to
1631 properly handle resize containers. makes a lot of assumptions whitch
1632 are stated in the comments.
1634 * gtk/gtkcontainer.c:
1635 (gtk_container_real_check_resize): only requeue ourselves if we are not
1637 (gtk_container_clear_resize_widgets): care for automatic deletion of our
1638 resize_widgets list on size_allocate through a handler connection.
1640 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
1641 focus and default widget of a window, so to take the burden from
1642 gtk_widget_unparent.
1644 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
1645 to be clever, but actually messed up the resize_children logic and
1646 caused unneccessary allocations on its whole branch. besides this,
1647 it messed up the display by not invoking a redraw after the allocation.
1649 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
1650 that it is the child again that is queued for a resize.
1651 (gtk_table_attach): likewise.
1652 (gtk_table_remove): likewise.
1654 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
1656 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
1657 gtk_entry_adjust_scroll. Required if you change the cursor
1658 position and want to sync it up with your code (Midnight Commander
1659 gtk front end needs this).
1661 * gtk/gtktable.c: Deal with tables that have size 0, 0.
1663 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
1665 * examples/README.1ST: new file to explain how the
1666 code examples should be extracted from the tutorial.
1668 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
1670 * gtk/gtkctree.c (draw_row): added new "line style"
1671 GTK_CTREE_LINES_TABBED
1672 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
1673 search the glist pointer of an GtkCTreeRow
1675 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
1677 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
1678 from, and clean up, the dependencies. Generate to intermediate
1679 files to prevent problems with Ctrl-C.
1681 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
1683 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
1685 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
1686 - Bug fix for precision problem causing occasional double emission
1687 of "value_changed" signal (hopefully works now).
1688 - API change (should be binary compatible) :
1689 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
1690 Modified cursor example appropriately.
1691 To spin by something other than step_/page_increment, use
1692 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
1693 - Made GTK_SHADOW_NONE the default. ;)
1694 - Fixed casting of GtkAdjustment* to GtkWidget* in
1695 gtk_spin_button_value_changed.
1697 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
1699 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
1700 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
1701 resize widget list before queuing the container for a new reize.
1702 (gtk_container_need_resize): changed return value to FALSE, since this
1703 used to indicate that no further resizes are needed.
1704 (gtk_container_set_arg):
1705 (gtk_container_get_arg):
1706 (gtk_container_class_init): implemented GtkContainer::resize_mode
1709 (gtk_container_resize_children): when we walk up the tree of a resize
1710 widget we need to stop if we are the current parent.
1712 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
1713 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
1714 (gtk_widget_hide_all): retrive the toplevel widget from via
1715 gtk_widget_get_resize_container().
1717 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
1719 * gtk/gtklist.c (gtk_list_button_press): Only respond
1720 to selection with button 1. This allows context-sensitive
1721 menus to work correctly.
1723 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
1725 * gtk/gtkaccelgroup.c:
1726 * gtk/gtkbindings.c:
1727 * gtk/gtkcontainer.c:
1728 * gtk/gtkitemfactory.c:
1731 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
1732 g_quark_from_static_string calls to save memory.
1734 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
1735 function _after_ the new data has been setup.
1736 minor changes to object data functions to feature the GQuark type.
1738 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
1740 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
1743 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
1745 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
1746 to be more readable perl, to spit out stuff that looks
1747 more like readable C, and to pipe output through indent
1748 so output looks a lot like readable C. No functional
1751 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
1753 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
1754 necessary when switching to a masked pixmap. (Based on a patch
1755 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
1757 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
1759 * gtk/gtkeditable.[ch]: Added action signals for keyboard
1760 bindings. (move_cursor, kill_word, etc, etc, etc).
1762 removed the time argument from
1763 gtk_editable_cut/copy/paste_clipboard (source but not
1764 binary incompatible...) Instead get time from
1765 gtk_get_current_event ().
1767 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
1770 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
1772 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
1774 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
1775 parent class to GtkNotebookClass when splitting the widget in
1776 two. Also updated some comments.
1778 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
1779 button without a font selected.
1781 Fixed bug in set_font_name - I hadn't updated the code to
1782 search for the style in the font_style clist - it was
1783 still assuming the style row was equal to its index,
1784 but it isn't any more.
1786 Changed 'Reset' button on filter page to 'Clear Filter'.
1787 Deleted old code relating to the old 'Filter Fonts' toggle
1788 Updated some comments.
1789 Cleared 'Actual Fontname' if no font is set.
1791 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
1792 destroying the GtkFontSelection instead of the
1793 GtkFontSelectionDialog.
1795 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
1797 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
1798 flag to make all warnings fatal errors.
1800 * gtk/testthreads.c: moved <pthreads.h> include inside
1803 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
1805 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
1806 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
1808 - Added new function gtk_container_set_resize_mode() for
1809 fine-grained control of where resize-queueing is done.
1811 - Removed GtkContainer::need_resize and GtkWindow::move_resize
1812 - Added GtkContainer::check_resize to replace need_resize.
1814 - Added function gtk_container_check_resize() to trigger
1815 queued resizes, and gtk_container_resize_children() to
1816 Figure which children need to be size-allocated. (logic
1817 moved from gtkwindow.c)
1819 - Reorganized code in gtkwindow.c
1821 - Set the resize-mode for viewports so that resizes within
1822 a viewport don't propagate out of it.
1824 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
1826 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
1828 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
1829 g_return_val_if_fail, because the function *does* return a value.
1831 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
1833 * gtk/gtkaccellabel.h:
1834 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
1835 request the size of the accelerator portion of an accel label.
1836 (gtk_accel_label_size_request): don't request for the accelerators size.
1837 (gtk_accel_label_expose_event): only draw the accelerator if we got
1840 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
1841 width from children.
1843 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
1844 object (after removal has been requested) check if there is still an
1845 accelerator remaining to avoid adding two accelerators on an object.
1846 this can happen for locked accelerators (or accelerator-frozen widgets).
1847 (gtk_menu_size_request): feature childrens accelerator width in size
1850 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
1851 gtk_widget_freeze_accelerators() for dynamically created menu items.
1854 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
1855 which will return a handler_id > 0 if the specified function is pending
1859 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
1860 a signal handler function to stop accelerator addition.
1861 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
1862 which will prevent (undo) any accelerators from being added to or
1863 removed from a widget.
1865 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
1867 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
1868 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
1869 acceleration, new API gtk_spin_button_set_snap_to_ticks.
1871 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
1874 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
1875 the current GdkWindow the pointer is on if there is any.
1877 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
1878 and one column, so we don't construction logic at all. changed a few
1879 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
1882 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
1883 portion, added an additional check for parent != widget.
1885 * more GtkType and macro fixups.
1887 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
1889 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
1890 "clip" parameter, which is the clipping rectangle to use. This
1891 eliminates the extremely annoying flicker when exposing parts of
1894 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
1896 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
1899 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
1901 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
1902 != 0 on the argument.
1905 * gtk/gtktable.c: new function gtk_table_resize() which allowes
1906 shrinking and expanding of tables. implementation of widget arguments
1907 and child arguments. many signedness corrections.
1909 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
1911 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
1912 not only the child, otherwise we might end up taking away other
1913 childrens space after the resize.
1915 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
1916 an unknown menu path from any source, that path must always be flagged
1917 as "modified", since we don't really know whether it has its default
1922 * gtk/gtknotebook.c:
1923 * gtk/gtkmenushell.c:
1927 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
1930 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
1931 arguments. implemented child arguments.
1933 * more GtkType and macro fixups.
1935 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
1937 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
1939 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
1940 and gtk_clist_get_hadjustment.
1942 * gtk/gtkcontainer.c:
1943 implementation of children arguments, new class member functions
1944 (child_type), (get_child_arg) and (set_child_arg) plus a new field
1946 (gtk_container_child_type): new function which returns the type of a
1947 child that the container expects for its next addition.
1948 (gtk_container_add_child_arg_type): new function to introduce a new
1949 child argument at class creation time.
1950 (gtk_container_query_child_args): new function to query all child
1951 arguments that are supported by a container class.
1952 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
1954 (gtk_container_child_arg_setv): new function to set a child argument for
1955 a certain container and child combination.
1956 (gtk_container_add_with_args):
1957 (gtk_container_add_with_argv): new functions to feature addition of a
1958 new child in combination with the setting of certain child arguments.
1960 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
1961 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
1962 this should really be done through class cretion hooks some day.
1964 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
1968 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
1969 follow the gtk convention for lower case variable names (important
1970 for language wrappers and widget arguments), and made them guint : 16.
1972 * examples/packer/pack.c: adaptions for the case converted GtkPacker
1975 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
1977 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
1978 change the character pair for single line comments.
1979 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
1980 GtkItemFactoryClass.
1981 (gtk_item_factory_parse_rc_string): likewise.
1983 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
1985 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
1986 lists from the klass structure to a static structure
1987 in gtkfontsel.c; cleans up global the namespace.
1989 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
1991 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
1992 bug with /*< skip >*/ and remove warning.
1994 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
1996 * gtk/Makefile.am: Made the gtkmarshal.* generation
1997 rules maintainer-only.
1999 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
2001 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
2002 gtk/Makefile.am gtk/makenums.pl
2004 Removed out the G_ENUM/FLAGS mechanism in favor
2005 of a perl script that parses the standard headers
2006 (with occasional /*< nick=foo >*/ style overrides)
2007 and extracts the enumerations.
2009 gtk/maketypes.awk: Small improvments to the
2010 translation of names. (Avoid splitting gc into
2013 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
2015 * gtk/gtk.h gtk/gtkfontsel.[ch]:
2016 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
2018 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
2021 - Restored gtk_entry_adjust_scroll to static
2022 - Changed text positioning code so that we always
2023 display as large a portion of the text as possible.
2025 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
2027 * gtk/gtktext.c (gtk_text_finalize): Free internal
2028 structures of text widget. Also, unreference pixmaps
2031 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
2033 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
2034 3.3.1 bug workaround to number keys starting at 1.
2036 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
2038 * docs/gtk_tut.sgml: Fixed urls for complete example
2039 source for scribble+widget-writing examples.
2041 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
2043 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
2044 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
2045 specs of the form c #abcdef [ more keys ] properly.
2047 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
2049 * gtkspinbutton.h gtkspinbutton.c testgtk.c
2050 (gtk_spin_button_set_shadow_type):
2051 New API to set the shadow type of the arrow panel.
2053 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
2055 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
2056 code for drawing the child in two places at once. Unfortunately,
2057 not only does it not work anymore (because reparenting has
2058 been fixed), but it also triggers reparent/expose loops
2061 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
2062 an unecessary unrealize.
2064 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
2066 * gdk/gdkwindow.c (gdk_window_reparent): Update the
2067 old and new parents' child window lists properly.
2069 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
2072 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
2073 and GtkSideType, to be consistent with the rest of Gtk's enum
2074 definitions. wrapped the enum definitions with the G_ eunm wrappers.
2075 spelled out the GTK_ANCHOR_* enum values, since single letters don't
2076 work out corectly as nick-names (left the old values as aliases).
2077 some signdness corrections (border-width, spacing), could stand more.
2079 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2081 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
2084 * examples/packer/pack.c, examples/packer/Makefile: Added
2087 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
2089 * gtk/gtktext.c (remove_cache_line): Fixed broken
2092 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
2093 Check bounds before deleting.
2095 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
2097 * autogen.sh: Support ACLOCAL_FLAGS
2099 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
2101 * gtk-config.in: Added missing quotes.
2103 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
2105 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
2107 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
2109 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
2110 G_COMPILED_WITH_DEBUGGING.
2112 * configure.in (fd_set): Explain check better.
2114 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
2115 the version from which gtk+'s libtool forked. Needed for people
2116 who use post-1.2 alphas of libtool.
2118 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
2120 * glib/* Moved to glib module
2122 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
2123 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
2125 configuration changes for the above:
2127 - Use AM_PATH_GLIB by default to find glib; also accept
2128 a --with-glib option for using an uninstalled glib.
2130 - Put --enable-debug information into config.h so
2131 that we rebuild when it changes. (was in glibconfig.h)
2133 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
2135 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
2137 * gtk/gtknotebook.h (struct _GtkNotebookClass):
2138 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
2139 added missing argument (according to Joseph Coleman's bug report)
2141 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
2142 function to fix notebook focus handling
2144 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
2146 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
2147 glib/gutils.c glib/testglib.c glib/gdataset.c
2148 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
2149 gtk/gtktext.c gtk/gtkbindings.c:
2151 renamed g_const_pointer => gconstpointer
2153 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
2155 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
2156 invoked with (NULL, NULL); (this worked sometime ago).
2158 * gtk/gtktypeutils.h:
2159 * gtk/gtktypeutils.c: enum and flags type creation can now be done
2160 through gtk_type_register_enum() and gtk_type_register_flags(),
2161 which allow to specify the enum value arrays directly.
2162 the NULL terminated value arrays can be retrived through
2163 gtk_type_enum_get_values() and gtk_type_flags_get_values();
2164 (gtk_type_children_types): new function to query derived types.
2166 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
2168 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
2169 environment to genmarshal.pl.
2170 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
2171 rule), and removed it where not needed (in the dependencies).
2173 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
2175 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
2177 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
2178 was just g_direct_hash.
2180 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
2182 * configure.in: x_libs=, not $x_libs=. Enough said.
2183 (Case only hit for --disable-xshm)
2185 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
2187 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
2188 when testing for X libraries, don't replace them. Because
2189 the user might have specified the path to the X libraries
2190 themself before running configure.
2192 * examples/**.c: Changed all gpointer * to gpointer
2194 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
2196 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
2197 fleur_cursor field. Now the cursor is created/destroyed on demand
2198 by the routines that need it.
2200 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
2201 (gtk_handle_box_motion): The fleur cursor is created and destroyed
2204 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
2206 * gtk/gtktypeutils.h:
2207 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
2208 gtk_enum_set_values to gtk_type_enum_get_values and
2209 gtk_type_enum_set_values respectively, since they are actually type
2212 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
2215 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
2217 * gtk/gtkselection.h:
2218 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
2219 gtk_selection_data_free.
2221 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
2222 for "selection_received", which was completely bogus.
2223 * other fixups to gtk_signal_new() calls all over the place.
2225 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
2226 * gtk/gtktypebuiltins_vars.c: type variable implementations.
2227 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
2229 * gtk/gtktypebuiltins_evals.c: enum value arrays.
2230 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
2232 * gtk/gtk.defs: generated file with scheme syntax for type definitions
2233 of gtk and gdk structures and enums.
2234 * gtk/gtktypeutils.h:
2235 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
2236 macros anymore (this fixes binary incompatibility with new enum
2239 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
2240 key bindings for this widget.
2241 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
2245 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
2246 again. new functions gtk_object_class_user_signal_new () and
2247 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
2248 flag on the signal creation.
2250 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
2252 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
2254 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
2260 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
2262 * reworked enum value array generation code. gtk.defs is a generated
2265 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
2267 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
2268 check menu items in the compatibility code (this required me to remove
2269 the "<check>" part from the menu item name, grrr).
2271 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
2273 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
2274 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
2276 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
2278 * gtk/gtkitemfactory.h:
2279 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
2280 additions to the dumping code to feature GtkPatternSpec.
2281 even found a bug to fix in the original code ;)
2283 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
2285 * gtk/gtkitemfactory.c: support different types of callbacks, to
2286 maintain existing code.
2288 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
2290 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
2292 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
2293 this should eventually be done by gentypeinfo.el somewhen.
2294 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
2296 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
2297 enum values of an enum type.
2305 brought enum/flags definitions in sync, added a few more enum
2306 definitions for bindings and pattern matching.
2308 * some more macro and GtkType fixups in various places.
2310 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
2311 as a key-release modifier for the binding system.
2313 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
2315 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
2316 was a stale list pointer that is already present in GtkMenuShell.
2318 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
2319 GtkMenuShell::selection_done which is emitted after the menu shell
2320 poped down again and all possible menu items have been activated.
2322 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
2324 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
2325 before activation of the menuitem, so the menu is actually taken off the
2326 screen prior to any menu item activation.
2328 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
2332 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
2333 the emission of the "add-accelerator" signal on a widget. this is
2334 usefull to prevent accelerator installation on certain widgets.
2336 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
2337 labels left justified, by setting their alignment. stop accelerator
2338 installation for the menu items, since we use dynamic menus.
2340 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
2342 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
2343 should *really* use GtkItemFactory. this is only for preserving source
2344 compatibility where possible, use of GtkMenuFactory is deprecated as of
2347 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
2348 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
2349 missed this possibility when i added gtk_object_class_add_user_signal
2352 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
2354 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
2356 * gtk/gtkaccelgroup.h:
2357 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
2359 * gtk/gtkaccellabel.h:
2360 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
2361 display of the accelerators associated with a certain widget.
2363 * gtk/gtkitemfactory.h:
2364 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
2365 parsing and accelerator handling.
2367 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
2369 (gtk_menu_map): removed the allocation code.
2370 (gtk_menu_size_allocate): care for redrawing of children and resize
2371 our widget->window correctly.
2372 (gtk_menu_key_press): feature the new accelerator groups.
2374 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
2375 submenu if neccessary.
2377 * gtk/gtkmenuitem.c:
2378 * gtk/gtkcheckmenuitem.c:
2379 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
2383 (gdk_keyval_from_name):
2384 (gdk_keyval_name): new functions for keyval<->key-name associations.
2385 (gdk_keyval_to_upper):
2386 (gdk_keyval_to_lower):
2387 (gdk_keyval_is_upper):
2388 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
2389 regards to their cases.
2391 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
2393 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
2394 widget's class path.
2395 (gtk_widget_path): new function to calculate a widget's name path.
2397 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
2398 pattern matching, features reversed pattern matches.
2400 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
2402 * examples/extract.sh, examples/extract.awk:
2403 New files to automagically extract code examples from the
2406 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
2408 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
2409 * gtk/gtkcontainer.c (gtk_container_focus_move):
2410 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
2412 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
2414 * docs/gtk_tut.sgml: minor changes to support auto
2415 extraction of example code
2417 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
2419 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
2420 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
2422 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
2424 * docs/gtk_tut.sgml:
2425 - new section on Events
2426 - change all delete_event callbacks to include
2427 a GdkEvent parameter
2428 - clean up the formatting
2430 * examples - helloworld.c, helloworld2.c, notebook.c,
2431 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
2432 rulers.c, table.c, wheelbarrow.c: change all delete_event
2433 callbacks to include a GdkEvent parameter.
2435 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
2437 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
2438 field of crossing events.
2439 (struct _GdkEventCrossing): Added the following fields: time, x,
2440 y, x_root, y_root, mode, focus, state.
2442 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
2443 crossing event structure.
2445 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
2446 changes to the crossing event structure.
2448 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
2450 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
2452 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
2454 * docs/gtk_tut.sgml:
2455 - GtkTooltips, update to current API
2456 - change all 'gpointer *data' to 'gpointer data'
2457 - other minor changes
2459 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
2461 * configure.in (LDFLAGS): Bomb out with a moderately
2462 helpful message if detection of X libraries fails.
2464 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
2467 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
2468 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
2470 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
2471 gtk/gtksignal.c gtk/gtktext.c:
2473 Fixups for warnings from adding const to type of GHashFunc,
2476 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
2477 ansi-warnings fixups.
2479 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
2481 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
2482 Locate child at (border_width,border_width), not
2483 (2*border_width,2*border_width). [ The border is _outside_
2486 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
2487 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
2489 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
2491 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
2494 1998-05-22 <sopwith@redhat.com>
2496 * gtk/gtkeventbox.c: Pass size_allocate on to the child
2497 regardless of whether it is visible or not. Also
2498 locate child at (border_width,border_width), not (0,0)
2500 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
2502 * gtk/gtkhandlebox.c: Added style_set handler.
2504 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
2505 [ From: Chris Lahey <clahey@umich.edu> ]
2507 * gtk/gtkeditable.c, gtk/gtkeditable.h,
2508 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
2509 and set_position functions to get and set the cursor position.
2511 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
2512 signal status. Make GtkText do user-controlled insertion
2513 and deletion through the Editable widget so that these
2514 signals are properly emitted.
2516 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
2517 display asterisks instead of empty space when visible = FALSE)
2519 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
2521 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
2524 1998-05-21 <sopwith@redhat.com>
2526 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
2527 custom routine for loading images specified in gtkrc's.
2529 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
2531 * configure.in: Use pthread_attr_init() as a test function,
2532 since most of the rest of -lpthread is macros on DU4.
2534 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
2536 * gtk/gtkcombo.c: implemented completion in the entry.
2538 1998-05-18 <sopwith@moebuis.labs.redhat.com>
2540 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
2542 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
2544 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
2545 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
2546 to be of runtype GTK_RUN_LAST.
2548 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
2551 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
2554 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
2556 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
2557 text retrived from GtkEntry. only intercept the Tab key if there
2558 was some text to complete.
2560 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
2562 Basic thread-awareness:
2564 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
2566 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
2567 gdk_threads_[init/enter/leave] for applications, plus
2568 gdk_threads_wake to wake the mainloop thread out of
2571 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
2573 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
2575 * gtk/testgtk.c (list_clear): Account for the fact
2576 that gtk_list_clear_items is not inclusive. (Clears
2579 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
2581 * gdk/gdk.c: include gdkkeysyms.h always
2584 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
2586 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
2587 the visibility_notify_event method and changed method order.
2589 1998-05-14 <sopwith@moebuis.labs.redhat.com>
2591 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
2593 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
2595 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
2596 from Olli Helenius <ollhel@batman.jytol.fi>.
2598 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
2600 (gtk_type_set_chunk_alloc): new function to allow allocation of new
2601 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
2604 * gtk/gtkobject.c (gtk_object_finalize): free an object through
2607 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
2609 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
2610 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
2612 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
2614 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
2615 GPOINTER_TO_UINT fixes.
2617 * gtk/gtksignal.c: Include <string.h> for memset.
2619 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
2620 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
2622 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
2623 Cleanups, comments and the ability to have rulers with
2624 a reversed direction.
2626 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
2628 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
2629 that Sopwith missed when changing stat => lstat.
2631 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
2633 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
2634 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
2635 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
2637 * gdk/gdk.c: Print sizeof() results
2638 as g_print("%ld", (glong)sizeof(foo)), to deal with
2639 sizeof() being long on Alpha's.
2641 * gtk/testgtk.c: include <string.h> for strlen
2643 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
2644 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
2646 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
2647 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
2649 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
2651 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
2652 (From: Christopher James Lahey <clahey@umich.edu>)
2654 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
2657 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
2658 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
2659 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
2660 the default relief for the toolbars buttons. Added an
2661 toggle for the toolbar test in testgtk.c.
2663 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
2665 * docs/gtk-config.1: Rewritten and hopefully improved.
2667 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
2670 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
2672 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
2674 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
2675 GtkPreview's visual and colormap, otherwise things can BadMatch.
2677 * gtk/testgtk.c (create_color_preview):
2678 (create_gray_preview): Removed pushing/popping of visual/colormap
2679 now that GtkPreview does things correctly.
2681 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
2682 (gtk_color_selection_draw_wheel): Pick the style from the correct
2683 place (the colorsel->wheel_area widget) so that the GCs will match
2684 with where we are going to paint to.
2686 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
2687 of visual/colormap now that GtkColorSelection does things the
2690 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
2692 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
2693 previously unused window->need_resize flag to mark if a window's
2694 descendents changed size while the window was not visible. In this
2695 case, when the window becomes visible, we reallocate everything,
2696 since we didn't keep track of what actually changed.
2698 (Fixes bug where changing the popdown strings of a
2699 combo to something of the same length caused them to
2700 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
2702 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
2704 [security audit by Alan Cox]
2706 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
2707 exceed maximum assumed size.
2709 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
2710 not exceed maximum assumed size.
2711 (gtk_menu_factory_remove): likewise.
2712 (gtk_menu_factory_find_recurse): likewise.
2714 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
2716 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
2717 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
2718 redrawn if that is still neccessary. don't allow queueing of already
2720 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
2721 widgets which are in the queue can be destroyed safely, handle
2722 requeueing properly.
2723 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
2724 widgets which are in the queue can be destroyed/unrealized safely.
2726 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
2728 * gtkfaq.sgml: add question on multi-threading,
2731 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
2733 * configure.in (cflags_set): preserve automake CFLAGS.
2735 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
2736 and libgdk-1.1.la. this means we need to change certain portions of
2737 the Makefile.am on major/minor version bumps.
2739 * ltmain.sh: the -release option is not required anymore.
2741 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
2742 of the first argument to be of type GtkObject. unconditionally compile
2743 this function. removed __GNUC__ dependancy of the gtk_object_ref and
2744 gtk_object_unref macro wrappers for this function.
2746 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
2750 (gtk_object_data_try_key):
2751 (gtk_object_data_force_id): these are now macros substituting the old
2752 functions. we just use the corresponding g_dataset_* functions for
2753 key->id associations. (this is to assure unique key<->id associations).
2755 1998-05-10 Stefan Jeske <stefan@gtk.org>
2757 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
2760 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
2762 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
2764 * configure.in (LIBS): Try to figure out if this
2765 is Digital Unix and we need -std1 to get the
2768 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
2770 * docs/gtk_tut_it.sgml: update of Italian tutorial
2771 translation from Daniele Canazza <dcanazz@tin.it>
2773 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
2775 * gtk/gtkfeatures.h.in: new file used as template for
2776 * gtk/gtkfeatures.h: new file to define macros indicating newly
2777 introduced features, such as GTK_HAVE_SIGNAL_INIT.
2780 (gtk_signal_emitv_by_name):
2782 new functions to emit signals with an already provided parameter set.
2783 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
2784 (gtk_signal_real_emit): prototype changes, so this functions always
2785 gets its parameters and signal structure as arguments.
2786 (gtk_signal_emit): provide the signal structure and parameter list for
2787 gtk_signal_real_emit.
2788 (gtk_signal_emit_by_name): likewise.
2790 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
2792 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
2793 signal connections through unsetting GTK_CONNECTED.
2794 (gtk_signal_handler_insert): reflect the presence of signal connections
2795 through setting GTK_CONNECTED.
2796 (gtk_signal_real_emit): only check for handler emissions if the object
2797 has the GTK_CONNECTED flag set.
2798 (gtk_signal_handler_pending): don't check for pending handlers if the
2799 GTK_CONNECTED flag is not set for this object.
2801 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
2802 a GtkObject has signal handler connections.
2804 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
2805 set for this object call gtk_signal_handlers_destroy().
2807 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
2808 multiple processing of macro args.
2810 * gtk/gtktypeutils.c:
2813 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
2815 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
2817 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
2818 draw-queue when we are done.
2820 (gtk_widget_queue_draw/_queu_resize): Always return
2821 FALSE and avoid having two idles at the same time.
2823 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
2825 * gtk/gtktext.c: Various fixes to make sure cache
2826 lines are freed if line_start_cache doesn't point to the
2827 beginning of the cache.
2829 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
2831 * style_set improvements for GtkText and GtkEntry
2833 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
2835 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
2838 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
2840 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
2841 data chunks through a global object data structure list. unlink
2842 object data before invoking its destroy function.
2843 (gtk_object_finalize): slight modification to allow usage of object
2844 data during object finalization.
2846 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
2848 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
2849 signal names, e.g. "signal-name" is now an alias for "signal_name".
2850 (gtk_signal_handler_new): allocate handlers through a global handler
2851 structure list, that's faster than memchunks.
2852 (gtk_emission_new): allocate emissions through a global emission
2853 structure list, that's faster than memchunks.
2855 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
2857 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
2859 * ltmain.sh: added a new commandline flag -postfix similar to -release,
2860 but will immediately change the library name.
2863 * gtk/Makefile.am: specify -postfix and -version-info
2865 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
2866 GTK_BINARY_AGE. calculate LT_* variables for libtool.
2868 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
2870 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
2871 background (fg_set -> bg_set confusion).
2873 1998-05-06 Stefan Jeske <stefan@gtk.org>
2875 * gtk/testgtk.c (unselect_all): Removed code that caused an
2878 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
2880 * gtk/gtksignal.c: reimplemented the signal storage system to use a
2881 linear array rather than a hash table.
2882 be carefull *not* to keep any GtkSignal pointers across invokations
2883 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
2884 general code cleanups, made all allocations through memchunks.
2885 (gtk_signal_lookup): we now do the lookup of signals through a key_id
2886 for the signal names to avoid multiple hashing of the signal name on
2887 lookups for the several hirarchy levels of an object.
2889 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
2891 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
2892 to speed things up and remove code duplication.
2894 Reintegrated buffer overflow patches, and added
2895 some extra paranoia.
2897 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
2899 * gdk/gdk.c (gdk_event_translate): A guint * was
2900 being passed where X expected a Keysym *, and
2901 keysyms are long's on Alpha Linux. This was causing
2902 segfaults in Xlib, apparently because of alignment.
2903 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
2905 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
2907 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
2908 set GDK_EXPOSURE_MASK for DrawingAreas
2910 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
2912 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
2913 (superceded by RC file reparsing capabilities)
2915 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
2916 events. (Shouldn't be sent to the InputOnly leader, which
2917 it is now by gdk_event_send_clientmessage_toall
2919 * gtk/testgtk.c: Added extra button to rcfiles test
2920 to send out _GDK_READ_RCFILES events.
2922 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
2924 * gtk/gtkselection.c (gtk_selection_clear): Fixed
2925 reversed conditionals that caused segfault on some
2928 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
2930 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
2931 cast to GTK_OBJECT for gtk_object_ref.
2933 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
2935 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
2936 checking for signal initialization in gtksignal.c.
2938 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
2939 a long debugging period ;)
2941 1998-05-05 Stefan Jeske <stefan@gtk.org>
2943 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
2944 New function to wrap XSetDashes; modified gtkctree.c to use it.
2946 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
2948 * configure.in: Added $x_libs in the other_libraries field in the
2949 check for XShapeCombineMask.
2951 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
2953 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
2955 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
2956 linear array rather than a hash table. it actually speeded up testgtk
2957 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
2958 pointers across invokations of gtk_type_node_next_and_invalidate() and
2959 therefore gtk_type_unique()!
2961 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
2962 inheritance of a class pointer.
2963 (GTK_OBJECT): modifications for speedups.
2964 (GTK_IS_OBJECT): likewise.
2965 (GTK_OBJECT_CLASS): likewise.
2966 (suggested by owen).
2968 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
2970 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
2972 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
2973 since its derivation changed 4 month ago ;(. showed up with the unique
2974 type name checking code in gtk_type_unique().
2976 * random guint->GtkType and macro fixups.
2978 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
2980 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
2981 Configure events that would result in a negative
2984 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
2986 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
2987 "glibconfig.h" and another about writing another IRC
2990 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
2992 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
2993 parameters to log are doubles. Digital Unix apparently
2994 is missing the argument in its prototype.
2996 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
2998 * gtk/gtklabel.c (gtk_label_state_changed): Don't
2999 force a clear until the widget is actually on
3002 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
3004 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
3005 to make this consistent with the gtk-1-0 tree.
3007 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
3009 * configure.in acheader.h gdk/gdkwindow.c
3010 Check for Shape extension both on the client and server
3011 side. (And, more importantly, check for the shape extension
3012 so we may include -lXext even when compiling with --disable-xshm)
3014 Don't set override_redirect on all shaped windows. It isn't
3017 * gdk/gdkwindow.c: Set ->colormap to NULL for root
3018 and foreign windows. Use this to check if we
3019 need to get the colormap from X.
3021 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
3023 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
3024 between the default and the button always in GTK_STATE_NORMAL.
3026 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
3029 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
3031 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
3032 Fix a buffer overflow on pixmaps that claim to have
3033 more than 31 characters per pixel.
3035 (gdk_pixmap_read_string): Don't wrap around strings longer
3036 than half of address space ;-)
3038 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
3039 that were used for printing integers.
3046 int foo (void) { ... }
3048 Even where there were proper prototypes elsewhere.
3050 * gdk/gxid.c (handle_claim_device): Some extra checks.
3051 It isn't safe against being fed bad X id's, but at
3052 least it should be safe against deleting all your
3055 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
3057 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
3058 to set the adjustments value when there is no current emission.
3059 [ Removed by mutual agreement owt 5/3/1998 ]
3061 * gtk/gtksignal.c: added new functions to retrive the number of
3062 existing emissions for a certain signal.
3063 (gtk_signal_n_emissions): new function.
3064 (gtk_signal_n_emissions_by_name): new function.
3066 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
3068 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
3069 set the current focus_child of a container, does proper referencing and
3070 adjusts the vadjustment/hadjustment associated with the focus widget.
3072 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
3073 containers via gtk_container_set_focus_child.
3075 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
3078 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
3079 child since not every child removal goes through this function (this
3080 showed up after gtk_container_set_focus_child() started to reference the
3081 focus_child of a container).
3083 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
3084 of a container from gtk_container_remove into this place.
3086 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
3088 * gtk/gtksignal.c: added new functions to operate on intermediate
3089 function pointers. implemented incremental blocking.
3090 (gtk_signal_disconnect_by_func): new function.
3091 (gtk_signal_handler_block_by_func): new function.
3092 (gtk_signal_handler_unblock_by_func): new function
3094 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
3096 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
3097 Always show the scrollbars when the policy is
3098 GTK_POLICY_ALWAYS...
3100 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
3102 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
3103 "value_changed" if we really passed a new value.
3104 (gtk_adjustment_changed): new function to emit the "changed" signal.
3105 (gtk_adjustment_set_value): new function to emit the "value_changed"
3108 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
3110 * gtk/gtkcombo.c: Further changes to the way the window
3111 is popped up so that it will be compatible with
3112 auto-scrolling in the future.
3114 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
3116 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
3117 the combo-list is empty since that will cause the combo to operate
3118 on a non existing GtkList window.
3119 (gtk_combo_get_pos): provide the combo list with a usfull default
3121 (gtk_combo_popup_button_press): grab the focus.
3122 (gtk_combo_activate): grab the focus.
3124 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
3126 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
3127 function to reset the RC styles for a heirarchy
3129 Clear the window background if necessary in
3130 gtk_window_style_set.
3132 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
3133 rereads all previously read RC files.
3135 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
3136 (Should it just be called gdk_get_toplevels?)
3138 * gtk/testgtk.c: New test to reload RC files.
3140 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
3143 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
3144 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
3145 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
3146 the GTK_ prefix (this solution involved less changes in the
3147 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
3148 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
3149 from lars & stefan to support the derivation of GtkCtree.
3153 initial import of a tree widget derived from gtkclist, courtesy
3154 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
3157 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
3159 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
3161 (gtk_list_insert_items):
3162 (gtk_list_remove_items_internal):
3163 (gtk_list_clear_items):
3164 remove a possible pointer grab, we might get thrown into a loop
3166 (gtk_list_button_press): grab the pointer *before* selecting the child,
3167 because selection of items may cause the lists children to change,
3168 resulting in a grab release.
3169 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
3171 (gtk_list_shutdown): remove all children from the list.
3172 (gtk_real_list_unselect_child):
3173 (gtk_real_list_select_child): *always* put our internal structures into
3174 sane state *before* signal emisions (i.e. list->selection updates prior
3175 to gtk_list_item_[de]select() calls).
3177 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
3178 focused child walks out of the window.
3179 removed CAN_FOCUS for the combo arrow's button since it doesn't react
3180 to keyboard events ("clicked" connection is missing).
3182 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
3184 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
3185 getting colormap for FOREIGN windows to go along with
3186 Raster's fix for visuals.
3191 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
3193 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
3194 Check to catch the case when the viewport fits in either
3195 direction or both, instead of flip-flopping infinitely.
3197 Only show/hide the scrollbars once at the end.
3199 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
3201 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
3202 Include the scrollbars in the foreach call.
3203 (gtk-fortier-980405-0.patch;
3204 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
3207 really should also include its tabs, but that might cause
3208 problems for programs if they
3210 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
3212 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
3213 resize if the size actually changed.
3214 (gtk-johannes-980414-0.patch ;
3215 johannes@nada.kth.se (Johannes Keukelaar) )
3217 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
3219 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3220 ltmain.sh ltconfig config.sub config.guess:
3222 Reverted back to libtool-1.2 (plus minor patches) so as not to
3223 force the issue for everyone else.
3225 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
3227 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3228 Updated to libtool 1.2a.
3230 * gtk/gtkclist.c: Draw the in-between lines with style->base
3231 instead of style->white.
3233 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
3235 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
3236 Cache the colormap and children of a window locally
3237 instead of fetching them from the server when needed.
3238 Huge performance difference for creating/destroying
3241 * gtk/gtkstyle.c: Find the depth from the cached
3242 visual, instead of asking the server.
3244 * gtk.m4: Distribute the new version which tries to
3245 figure out what went wrong and give helpful error
3248 * ltmain.sh ltconfig config.sub config.sh:
3249 Updated to libtool 1.2a
3251 * gtk/gtktext.c: Fixed a bug where the drawn level
3252 was being messed up when the text was scrolled
3255 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
3257 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
3258 the filesystem under you (fix from Josh)
3260 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
3262 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
3263 if the viewport already exists before iterating over it, maybe we
3264 haven't been constructed yet.
3266 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
3268 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
3269 the GtkBin widget already has a child.
3271 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
3272 check that child->parent == NULL;
3274 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
3276 * gtk/gtkselection.c (gtk_selection_clear): Only return
3277 FALSE when the clear event is been rejected, not when
3278 widget has already lost the selection. (Which should
3279 only happen when we are setting the selection to another
3282 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
3284 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
3286 Removed the "check visibility after gtk_widget_unparent" bug
3287 in hopefully the last three places.
3289 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
3291 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
3294 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
3296 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
3297 for CAN_FOCUS widgets.
3299 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
3300 adjustments for the table.
3301 (create_list): feature automatic adjustment of the scrolled window to
3302 always contain the focused child.
3303 (create_main_window): keep the focussed button always inside of the
3306 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
3307 adjustments, to contain the allocation of the currently focused child.
3308 (gtk_container_set_focus_hadjustment): new functin to set the
3309 horizontal focus adjustment.
3310 (gtk_container_set_focus_vadjustment): new functin to set the vertical
3313 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
3314 clamp the currents adjustment page into a specific range.
3316 * random GtkType fixups for gtk_*_get_type() functions.
3318 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
3320 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
3321 Account for the fact that gtk_tree_item_remove_subtree
3322 will be called recursively.
3324 Handle removing a collapsed subtree.
3326 (From Andy Dustman <adustman@comstar.net>)
3328 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
3329 root tree when removing items from a non-previously
3332 * gtk/testgtk.c: Added a remove_subtree button.
3334 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
3336 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
3337 before object removing data. This change fixes a bug where
3338 removing the last weak references would cause it to be
3341 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
3343 * gdk/Makefile.am: Removed mostly useless dependency that
3344 was causing problems for SGI's make, when used with
3345 the 'make dist' form of GTK+. (Dependency caused dependencies
3346 to be redone when BUILT_SOURCES changed)
3348 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
3350 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
3353 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
3354 to gtkitem.c so dragging can also work in lists.
3356 * gtk/gtklist.[ch]: Track child enter events and use
3357 those to allow dragging the selection.
3359 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
3361 * gtk/gtktext.c: Try enabling background pixmaps for editable text
3362 widgets. There is a bit of flashing, but not too bad. If you
3363 don't want the flashing, you can always not set a background
3366 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
3368 * gtk/gtktext.c: Fixed a bug where the drawn level
3369 was being messed up when the text was scrolled
3372 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
3374 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
3375 bug: There is no need to set the ExposureMask in the XGrabPointer
3376 (this caused DnD programs to crash).
3378 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
3380 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
3381 field to be of type guint.
3382 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
3384 (gtk_accelerator_table_install): keep a per object list of accelerator
3385 tables that refer to this object.
3386 (gtk_accelerator_table_remove): remove the accelerator table from the
3388 (gtk_accelerator_table_clean): warn if there are any object references
3389 left in an accelerator table upon destruction.
3390 (gtk_accelerator_tables_delete): new function to delete object
3391 references from the accelerator tables associated with this object.
3393 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
3394 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
3395 of an accelerator can be prevented by gtk_signal_emit_stop().
3396 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
3397 so there are no stale pointers in accelerator tables left.
3399 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
3401 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
3402 visible before we unparent it.
3404 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
3406 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
3407 running_timeouts list with the tmp_list link itself, not with a new
3408 GList structure pointing to our link. that would fill up memory and
3409 causes the GList.data fields of the running_timeouts list to point to
3410 GList structures and not GtkTimeoutFunction structures which is a
3412 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
3415 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
3417 * gtk/gtkradiomenuitem.h:
3418 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
3419 ala gtk_radio_button_set_group.
3420 (gtk_radio_menu_item_init): assure that we always have at least a group
3421 that points to self.
3423 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
3424 added g_return_if_fail() statements.
3425 (gtk_radio_button_init): assure that we always have at least a group
3426 that points to self.
3428 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
3430 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
3432 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
3434 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
3435 (Damon Chaplin), which i got wrong when applying Damon's patch the last
3438 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
3440 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
3441 that when we are running with a non-installed colormap,
3442 in 8-bit pseudo-color, we actually are using the system
3443 visual. (Fixes *Bad Match* errors on Digital Unix machines
3444 with multiple 8-bit pseudo-color visuals)
3446 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
3448 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
3449 by whoever thought that randomly changing ints to unsigned int
3450 without reviewing the code was a good idea. It is, btw not
3451 mentioned in the ChangeLog as usual, but I know it was not Elliot
3452 the culprit this time.
3454 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3456 * Released GTK+ 1.0.0