Sun Jan 18 03:57:52 1998 Tim Janik <timj@psynet.net>
* gtk/gtkbox.h:
* gtk/gtkbox.c: new functions gtk_box_reorder_child,
gtk_box_query_child_packing and gtk_box_set_child_packing to
allow modification of the child linkage after the widget tree
is setup.
* gtk/gtkbox.c:
* gtk/gtklabel.c:
* gtk/gtkwindow.c:
* gtk/gtkwidget.c:
* gtk/gtkobject.c: gtk_*_get_arg() and gtk_*_set_arg() fixes
and implementations.
* gdk/gdk.c (gdk_events_pending): Take putback events into
account
* gdk/gdk.c (gdk_event_free): Handle dropdataavaible memory
allocation correctly. (Incompatible change: client must
_not_ fre event->data and event->data_type.)
* gdk/gdk.c (gdk_event_translate): Changed DND dragging
so that we don't ungrab pointer when we reenter window
to prevent extra Enter/Leave effects which had bad
effects.
Changed drag zone handling to not send uncessary
DragEnter events.
Fixed EnterNotify/LeaveNotify handling. (Only pay
attention to events on window, don't specify these
events to XGrabPointer - that isn't valid, and handle
reverse the sense of the handling of LeaveNotify.)
* gdk/gdkwindow.c (gdk_window_remove_filter): Free removed
filter.
* gtk/gtk.defs (GdkFont): gdk_font_free => gdk_font_unref
* gtk/gtkmain.{c,h} (gtk_events_pending): new function - apps
should use this instead of gdk_events_pending.
* gtk/gtkvbbox.h: Fixed a duplication in the headers.
* gtk/testgtk.c (dnd_drop): Don't free the drop data,
it belongs to the event.
Sat Jan 17 13:26:15 CST 1998 Shawn T. Amundson <amundson@gimp.org>
* gtk/gtkentry.[ch]: Applied patch from <lupus@lettere.unipd.it>
which adds gtk_entry_set_max_length function. This was
part of gtk-lupus-970112-0.
* gtk/testgtk.c: Applied gtk-wille-980113-0 which fixes
a problem with a shaped widget keeping grab forever
when double clicked.
* docs/gtk.texi: patch from Gregory McLean <gregm@randomc.com>
to add some on aspect_frame, button_box, and color_selection
widgets
Fri Jan 16 00:36:31 1998 Federico Mena <federico@bananoid.nuclecu.unam.mx>
* gtk/gtkhandlebox.c: Now we use a GtkWindow of type
GTK_WINDOW_DIALOG as a destination for reparenting the child of
the handle box. This solves the problem of having X calls in
Gtk. It also makes the handle box work with KWM, OLVWM, 4Dwm (so
I expect mwm to work as well). I hadn't noticed that previously
it only worked with fvwm and twm.
* gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
real_parent field, as it is never used.
(struct _GtkHandleBox): Added a float_window field. This is a
GtkWindow to where the child is now reparented.
Fri Jan 16 00:36:31 1998 Federico Mena <federico@bananoid.nuclecu.unam.mx>
* gtk/gtkhandlebox.c: Lots of changes all over the place. Now the
widget has two windows. The steady_window stays put in the parent
container, and the widget->window is the one that gets
reparented. Now that window is transient, in compliance with the
ICCCM, instead of an OverrideRedirect window.
We have two windows so that we can properly receive Expose events
for the thin 3D line that marks the place where the handlebox is
docked.
* gtk/gtkhandlebox.h (struct _GtkHandleBox): Added fields for
dragging (mouse position information). Added fleur_cursor so that
we look pretty. Added steady_window field; it is the window that
actually stays on the parent (widget->window is the one that gets
reparented).
Owen, this is the version with the two X calls in gtkhandlebox.c.
I'll do as you say; either we can add new calls to Gdk, or I can
modify the handle box code to use a separate GtkWindow and reparent
the child into that.
- Federico
Thu Jan 15 19:03:19 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gtk/gtkclist.c (gtk_clist_set_column_width): Call
gtk_clist_size_allocate_columns every time the column
configuration changes.
1998-01-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gtk/gtktoolbar.c: (gtk_real_toolbar_style_changed): Fixed
child->icon and child->label == NULL bugs.
* gtk/gtktoolbar.h: Added some new functions:
gtk_toolbar_append_widget()
gtk_toolbar_prepend_widget()
gtk_toolbar_insert_widget()
These let the user insert any kind of widget in the toolbar. Also
changed the gtk_toolbar_*_item() functions to return a
GtkWidget * so that the user can do things with the toolbar buttons.
* gtk/gtktoolbar.c: Now the toolbar supports its own buttons and
arbitrary widgets as well. Geometry management has been changed
accordingly. Added gtk_toolbar_remove() function, so container
functionality should be complete now.
* gtk/testgtk.c (create_toolbar): Added an entry widget to test
the new toolbar.
* Most of these changes are adapted from the
gtk-lupus-970112-0-patch (should be 970112... :-)
I also added Sopwith's changes to gtk_clist_insert so you can pass the title
pointer as a null to insert a blank row. Please make consistant changes
for things like this. -Jay
fault; I wrote them hurriedly before going on vacation, and I never
did any testing. Sorry :-)
Apart from the fix in Gdk, I added the corresponding
"visibility_notify_event" to GtkWidget.
- Federico
today). Next I will make the handle box use a transient window. It should
be done that way, according to the ICCCM. We have to talk to the KDE guys
to use their window manager protocol to let the WM know that we don't want
decoration on our window. This has to be hacked into other WMs, too.
- Federico
* Several portability fixes from Michael Callahan
<callahan@xmission.com> including adding in missing
#includes and adding void in function prototypes.
-Shawn
* gtk/gtkviewport.c: corrects a small resize bug in the
viewport widget. The viewport widget provides a _set_shadow
function to draw its shadows. But if GTK_SHADOW_NONE is sent
to this function, the viewport isn't resized correctly (it's
still considered as a shadowed widget). (gtk-fortier-971213-0)
* gtk/gtknotebook.c: this patch fixes the redraw problems of
notebook tabs, without using gdk_gc_set_clip_rectangle.
(gtk-hamann_jeske-971218-0)
* add gtk_widget_(show/hide)_all (Stefan Wille)
(gtk-wille-301297-0) Patch for testgtk not included
because it did not patch clean.
-Shawn
* gtk/gtkscrolledwindow.c (SCROLLBAR_SPACING): this macro computes
the spacing from klass->scrollbar_spacing now. adapted all functions
that used this macro (based on a patch from Patrice Fortier).
* gtk/gtkscrolledwindow.h (struct _GtkScrolledWindowClass): added
scrollbar_spacing to substitute a define (patch from Patrice Fortier).
-timj
* gtk/gtkrc.h (gtk_rc_parse_string): new function.
* gtk/gtkrc.c: many functions adapted to use GScanner for scanning.
(gtk_rc_parse): use gtk_rc_parse_any for parsing.
(gtk_rc_parse_string): new function to support parsing from
strings, just calls gtk_rc_parse_any.
(gtk_rc_parse_any): new function using GScanner as lexer.
-timj
toolbar inside a GtkHandleBox (inside a GnomeApp container, yet to be
written).
When the toolbar is usable, I will add the proper example to testgtk.c.
- Federico
Corrects a bug in gtk_tree_remove_items and gtk_tree_item_destroy.
Adds the possibility to connect all items by lines. This is the
default now. You can overide this with the function
gtk_tree_set_view_line which take a tree and a boolean.
This tree widget looks way more finished with the lines. Very
nice. Check it out and run gtk/testtree.
-Shawn
There is also another tree widget implementation by
AOSASA Shigeru <aozasa@sakuranet.or.jp>:
ftp://ftp.gimp.org/pub/gtk/contrib/gtk-shige-971216-0.tar.gz
-Shawn
rectangle = NULL, remove clip mask, instead of segfaulting.
gtk/gtknotebook.c: Set clip mask before redrawing, so that
we don't overwrite things outside of exposed areas when
drawing the shadows. (Based on a patch from
Lars Hamann <hamann@braunschweig.netsurf.de> and Stefan Jeske)
-owt
* Change to ltconfig to remove -z text for Solaris x86
* Change to configure stuff so compile works on Solaris x86
* Added gdk/gdkkeysyms.h and gdk/gdkcursors.h back into the tree
-Shawn
* glib_pre1.h:
* glib_pre2.h:
* glib.h: this file now gets concatenated by makeglib_h from
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
created by configure (done by Jay Painter).
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
when used within if (...) g_macro(); else ... conditionals.
Gtk+:
* fixed some compiler errors, because g_return_if_fail() wasn't used
with a trailing semicolon in some places. fixed few other warnings also.
-timj
Cut/copy/paste via the X clipboard.
Generalized extending selection using <Shift> to work with all types
of motion, not just arrow keys.
Don't change length of GtkEntry structure because of USE_XIM
-owt
* gtkfilesel.c: applied jamesa-971010-0 for stability.
* gtkrc.c: applied jamesa-971010-2 for a small optimization.
* gtkcheckmenuitem.h:
* gtkcheckmenuitem.c:
* gtkradiomenuitem.c:
* testgtk.c: applied johannes-971113-0 which adds
gtk_check_menu_item_set_show_toggle() to change the way check
menu items and radio menu items look.
-timj
Takashi Matsuda <matsu@arch.comp.kyutech.ac.jp>
TANAKA Shinya <shinya@race.u-tokyo.ac.jp>
See ChangeLog entries for further details.
Also some small fixes to event handling in gdk/gdk.c; sending
clear events in gtk/gtkselection.c and cut-and-paste in
gtk/gtkentry.c
Some minor improvements to rounding in aspectframes.
Make sure that child allocation is always >= 0
Always trigger size allocation with gtk_widget_queue_resize
to prevent calling size_allocate before allocation done.
gtk/gtkframe.c:
Changed tests for drawability to GTK_WIDGET_DRAWABLE
Always trigger size allocation with gtk_widget_queue_resize
to prevent calling size_allocate before allocation done.
gtk-dairiki-971117-2.patch
gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): When
computing new dimensions of the subwidget, round to nearest
integer rather than truncating.
Mon Nov 24 1997 Jay Painter <jpaint@serv.net>
gtk-dairiki-971117-1.patch
* gtk/gtkvruler.c (gtk_vruler_draw_ticks):
* gtk/gtkhruler.c (gtk_hruler_draw_ticks): Ensure that subticks
always are drawn when they should be (sometimes they were getting
drawn with zero length --- invisible). Also clear rectangle
behind text labels to ensure they don't touch or overlap ticks.
Mon Nov 24 1997 Jay Painter <jpaint@serv.net>
* gtk/gtkaspectframe.c (gtk_aspect_frame_set):
gtk-dairiki-971117-0.patch
Clear window when aspect ratio or alignment is changed.