Commit Graph

375 Commits

Author SHA1 Message Date
Tim Janik
0ef453b82c present the argument access masks on their announcement.
Thu Feb 19 06:56:52 1998  Tim Janik  <timj@gimp.org>

        * gtkbox.c:
        * gtkbutton.c:
        * gtkcontainer.c:
        * gtkframe.c:
        * gtklabel.c:
        * gtkobject.c:
        * gtkwidget.c:
        * gtkwindow.c:
        present the argument access masks on their announcement.

        * gtk/gtkobject.h:
        * gtk/gtkobject.c:
        (gtk_object_add_arg_type): take an additional argument describing
        the access mask of the new arg. this can be of GTK_ARG_READABLE,
        GTK_ARG_WRITABLE or GTK_ARG_READWRITE (the latter is an alias for
        the two previous ones).
        (gtk_object_query_args): provide an access_mask array if desired.

        * gtk/gtkwidget.c (gtk_widget_real_realize):
        realized the assumtion that widget is a NO_WINDOW widget
        in actuall code.

        * gtkwindow.c:
        slight changes to gtk_window_configure_event that will make
        the resizing behaviour a little less odd.
        sigh, for some (buggy) reason, there are still container resizes
        triggered by manual resizing to very small window sizes.
        the cointainer resizes will cause gtk_real_window_move_resize to
        be invoked, which makes the app look like it wants to fight the users
        resizing action. ;(
1998-02-19 07:18:42 +00:00
Owen Taylor
a4b322cccc missed one. 1998-02-19 06:21:49 +00:00
Owen Taylor
fc7e845c8f configure.in gdk/gdk.[ch] gdk/gdkcc.c gdk/gdkglobals.c
Thu Feb 19 01:11:48 1998  Owen Taylor  <owt1@cornell.edu>

	* configure.in         gdk/gdk.[ch]         gdk/gdkcc.c
	  gdk/gdkglobals.c     gdk/gdkinputcommon.h gdk/gdkprivate.h
	  gdk/gdkvisual.c      glib/configure.in    glib/glib.h
	  glib/gutils.c        gtk/Makefile.am      gtk/gtkmain.c
	  gtk/gtkobject.[ch]   gtk/gtkdebug.h       docs/debugging.txt

	New system for controlling debugging:

	* --enable-debug=[no/yes/minimum]
	* G_DISABLE_ASSERT and G_DISABLE_CHECKS for glib
	* G_NO_CHECK_CASTS to control cast checking
	* G_ENABLE_DEBUG enables run time checking which controls:
	    Object tracing
	    Showing events
	    Miscellaneous g_print's in GDK
	  And is controlled by --gdk-debug/GDK_DEBUG, --gtk-debug/GTK_DEBUG
        * debug_level and show_events are gone from GTK

	See docs/debugging.txt for details.

	And some fixups to the configure.in's so '-g' can be
	overriden on the command line for --enable-debug
1998-02-19 06:21:27 +00:00
Tim Janik
3d4cc2f904 applied gtk-hamann_jeske-980218-0.patch.gz, a patch from Lars Hamann and
Thu Feb 19 05:40:51 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtknotebook.h:
        * gtk/gtknotebook.c:
        applied gtk-hamann_jeske-980218-0.patch.gz, a patch from
        Lars Hamann and Stefan Jeske which introduces major
        usability improvements.
        fixed bugs are:
        - container border_width>0 does now work correctly for show_tabs==TRUE
          and for tab_pos=GTK_POS_BOTTOM/GTK_POS_RIGHT.
        - toggleing visibility of the tab labels works now.
        - emission of GtkNotebook:switch_page and all page changes
        also the signature for the GtkNotebook:switch_page signal changed,
        callbacks should now look like:
        gint notebook_switch_page (GtkWidget *widget,   GtkNotebookPage *page,
                                   gint       page_num, gpointer         data);
1998-02-19 05:13:46 +00:00
Jay Painter
8923d60dba CList signal revert (right back at you! *ouch*) 1998-02-19 02:59:55 +00:00
Jay Painter
9ad922290c A couple of compiler warning fixes, GtkCList signal changes, changed
fileselect to work with new CList signals, and enhanced testgtk's clist
example to show pixmaps and signal results. -Jay Painter
1998-02-18 10:03:54 +00:00
Tim Janik
7e3692b99f new signal GtkWidget::set_parent. this signal will be emitted once a
Wed Feb 18 04:38:24 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c:
          new signal GtkWidget::set_parent. this signal will be emitted once a
          widget gets a new/no parent assigned (i.e. from gtk_widget_unparent
          and gtk_widget_set_parent).
1998-02-18 04:09:13 +00:00
Tim Janik
83e3008d35 new functions gtk_tooltips_data_get and gtk_tooltips_set_tip,
Wed Feb 18 02:58:50 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtktooltips.h:
          new functions gtk_tooltips_data_get and
          gtk_tooltips_set_tip, gtk_tooltips_set_tips is discouraged now.
        (_GtkTooltips): removed some fields that were never used.
          changed boolean fields to one bit size, to pack together with
          the delay field.
        (_GtkTooltipsData): added tip_private, renamed tips_text to
          tip_text.
        * gtk/gtktooltips.c:
          (gtk_tooltips_data_get): new function to retrive the
          _GtkTooltipsData structure of a widget.
        (gtk_tooltips_set_tip): new function for more extensible tooltips
          settings than gtk_tooltips_set_tips which is discuraged now.
          removed a bug that caused a stale object_data key to a
          _GtkTooltipsData structure.
          removed a bug that caused tips falsly to come up for a grab widget
          on widgets where events were grabbed from.
1998-02-18 02:40:08 +00:00
Federico Mena Quintero
1410a8a003 Added some missing newlines on debug messages.
1998-02-17  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdk/gdkcc.c: Added some missing newlines on debug messages.
1998-02-17 20:13:43 +00:00
rhlabs
825aa9501b Make g_slist_insert_sorted() always insert.
-Marc
1998-02-17 18:52:52 +00:00
Tim Janik
b5cb66dc35 invoke gtk_entry_grow_text already in this place, so the application will
Tue Feb 17 05:41:31 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkentry.c (gtk_entry_init): invoke gtk_entry_grow_text already
          in this place, so the application will never see entry->text==NULL.
          (see also ChangeLog entry from Tue Feb 11 1997 on this).


also i added some blurb about recent changes to the NEWS file,
and updated the TODO.
1998-02-17 08:32:55 +00:00
Tim Janik
a303493882 applied patch to fix draw_indicator behaviour from Lars Hamann and Stefan
Tue Feb 17 05:41:31 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkcheckbutton.c:
        * gtk/gtkradiobutton.c:
        * gtk/gtktogglebutton.c:
          applied patch to fix draw_indicator behaviour from Lars Hamann
          and Stefan Jeske.

        * gtk/gtkmain.h:
        * gtk/gtkmain.c (gtk_grab_get_current): new function
          that returns the current grab widget or NULL.

        * gdk/gdkwindow.c (gdk_window_shape_combine_mask): remove
          shape mask if mask==NULL (provided by Stefan Wille).
1998-02-17 06:03:40 +00:00
Owen Taylor
9f96d18eb1 From Patrice Fortier <Patrice.Fortier@aquarel.fr>
Tue Feb 17 00:06:26 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkpaned.c, gtk/gtk[hv]paned.c: (gtk-fortier-980215-0)
	  From Patrice Fortier <Patrice.Fortier@aquarel.fr>

	  Add a widget->window for paned windows, so they
	  can be reparented properly.
1998-02-17 05:07:51 +00:00
Owen Taylor
7b399a225c From Patrice Fortier <Patrice.Fortier@aquarel.fr>
Mon Feb 16 23:47:09 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkviewport.c: (gtk-fortier-980130-0)
	  From Patrice Fortier <Patrice.Fortier@aquarel.fr>

	  Eliminate some extra expose events for viewports.
	  (To be conservative, I set the user's event mask for
	   both widget->window, and viewport->bin_window  -owt)
1998-02-17 04:48:50 +00:00
Owen Taylor
d91da80871 Make timeout and idle insertion code use g_list_insert_sorted().
Mon Feb 16 23:12:14 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkmain.c: Make timeout and idle insertion code
	  use g_list_insert_sorted().
1998-02-17 04:39:47 +00:00
Owen Taylor
04c520bad9 Changed function so elements are always inserted, even if they compare
Mon Feb 16 23:05:06 1998  Owen Taylor  <owt1@cornell.edu>

	* glist.c (g_list_insert_sorted): Changed function
	  so elements are always inserted, even if they compare
	  equal with another.
1998-02-17 04:03:56 +00:00
Tim Janik
afcc0ad3b2 \n 1998-02-17 02:19:30 +00:00
Owen Taylor
27575aa216 Use gtk_signal_default_marshaller, for expand/collapse signals.
Mon Feb 16 17:35:17 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtktreeitem.c: Use gtk_signal_default_marshaller,
	  for expand/collapse signals.
1998-02-16 22:34:30 +00:00
Elliot Lee
fa10f1361f D&D fixes 1998-02-16 22:04:52 +00:00
Tim Janik
a589338a7f gtkmain forgot a return value.
few fixes with resizing behaviour and non opaque moves
where configure events would exceed te number of calls
to gdk_window_resize.
-timj
1998-02-14 05:37:53 +00:00
Owen Taylor
623f7d9772 Fixed some incorrect information. 1998-02-13 23:00:54 +00:00
Tim Janik
3c7f5af2a5 check for clist !REALIZED. (draw_rows): bail out if the widget isn't
Fri Feb 13 19:08:51 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkclist.c (check_exposures): check for clist !REALIZED.
        (draw_rows): bail out if the widget isn't drawable.
        (hadjustment_value_changed):
        (vadjustment_value_changed): bail out if clist isn't drawable.

        * gdk/gdk.c (graphics_expose_predicate): check for private != NULL.
        (gdk_event_get_graphics_expose): check for window != NULL.
1998-02-13 18:41:18 +00:00
Owen Taylor
c3fc26bb9d Realize window before creating xpm so it gets the right colormap/visual,
Fri Feb 13 00:33:26 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/testgtk.c (shape_create_icon): Realize window before
	  creating xpm so it gets the right colormap/visual,
	  instead of the default one.
1998-02-13 05:33:17 +00:00
Owen Taylor
041983a776 Change style->white to style->base[] where appropriate. Change the default
* gtk/gtkentry.c gtk/gtkinputdialog.c gtk/gtklist.c
	  gtk/gtklistitem.c gtktree.c gtk/gtktreeitem.c testgtkrc:

	  Change style->white to style->base[] where appropriate.
	  Change the default style to make this apparent. (Yes, it's
	  ugly... it can be removed later)
1998-02-13 05:26:33 +00:00
Owen Taylor
888470ee29 gtk/gtksignal.[ch] gtk/gtkmain.[ch] gtk/gtkcontainer.[ch]
Thu Feb 12 23:59:49 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtksignal.[ch] gtk/gtkmain.[ch] gtk/gtkcontainer.[ch]
	  gtk/gtkselection.[ch] gdk/gdk.[ch] gtktypeutils.h

 	  Replaced all _interp functions with _full functions.
	  (_interp functions left in for compatibility until 0.99.5).
	  Difference: _full functions take _both_ a C-language callback and a
	  marshaller, and simply ignore the C-language callback
	  if the marshaller is present. This allows the destroy notification
	  to be used without marshalling.

	  gtk_selection_add_handler[_full]() regularized to agree
	  with other callbacks.

	  Also, added gtk_input_add_full() to the header file.
	  (gtk_input_add_interp() was never there)

	* gtk/gtkmain.[ch] gtk/gtkwidget.c: Idle functions are now prioritized.
	  Added new function gtk_idle_add_priority to create
	  an idle with a specified priority (default is zero)
	  constants #defined - GTK_PRIORITY_[HIGH/INTERNAL/DEFAULT/LOW]
	  (redraws, resizes run at GTK_PRIORITY_INTERNAL)

	* gtk/gtkentry.c gtk/testselection.c: changes to keep up with change
  	  to gtkselection.c.
1998-02-13 05:19:06 +00:00
Owen Taylor
dd07df15c1 Add a DestroyNotify field, and gtk_object_set_data_full() to match.
Tue Feb 10 15:01:44 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkobject.c gtk/gtkobject.h: Add a DestroyNotify
	field, and gtk_object_set_data_full() to match.

	* gtk/gtkobject.c (gtk_object_finalize): ObjectData structures
	were being added to a free list, then forgotten about. Just
	rely on GMemChunk instead.
1998-02-13 05:11:16 +00:00
Owen Taylor
39e26262a5 change logged. 1998-02-13 03:47:43 +00:00
Owen Taylor
c43a50fe36 removed deprecated g_string_equal and g_string_hash.
Thu Feb 12 22:48:11 1998  Owen Taylor  <owt1@cornell.edu>

	* gstring.c glib.h: removed deprecated g_string_equal
	  and g_string_hash.
1998-02-13 03:47:25 +00:00
Federico Mena Quintero
9dee8ee4e4 Fixed unrealize handler to comply with the documentation (which mentions
2018-02-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkclist.c:
	* gtk/gtkentry.c:
	* gtk/gtkfixed.c:
	* gtk/gtkhandlebox.c:
	* gtk/gtknotebook.c:
	* gtk/gtkpaned.c:
	* gtk/gtkpreview.c:
	* gtk/gtkrange.c:
	* gtk/gtkruler.c:
	* gtk/gtktext.c:
	* gtk/gtkviewport.c:
	Fixed unrealize handler to comply with the
	documentation (which mentions the right thing to do).
1998-02-12 03:02:14 +00:00
Owen Taylor
31a238b6b6 Spelling fixups and minor changes. 1998-02-12 02:40:30 +00:00
Tim Janik
c305397fca small fixup, so that the clist doesn't draw if it is
not realized.
-timj
1998-02-11 05:07:36 +00:00
Manish Singh
f747f3b2cd Really minor cosmetic fix that just niggled me. :P
-Yosh
1998-02-11 01:08:42 +00:00
Tim Janik
ed848ac41e backed out the section "Gnits to care about". new file, kinda developers
Wed Feb 11 00:18:31 1998  Tim Janik  <timj@gimp.org>

        * docs/refcounting.txt: backed out the section "Gnits to care about".
        * docs/developers.txt: new file, kinda developers FAQ.
1998-02-11 00:40:20 +00:00
Tim Janik
2090cc650c new function gtk_signal_handler_pending() returning the id of the next
Wed Feb 11 00:18:31 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtksignal.h:
        * gtk/gtksignal.c: new function gtk_signal_handler_pending() returning
          the id of the next handler pending for that signal or 0.
          put struct GtkHandler back into gtksignal.c along with
          gtk_signal_get_handlers.
1998-02-10 23:49:15 +00:00
Owen Taylor
13179d42a0 Add check to see if the C library's iswalnum can actually be used. (Not
Tue Feb 10 13:04:36 1998  Owen Taylor  <owt1@cornell.edu>

	* configure.in: Add check to see if the C library's
	  iswalnum can actually be used. (Not true for
	  Linux libc-5.4.38)
1998-02-10 18:18:19 +00:00
Tim Janik
6898536a02 ok, there have been several severe bugs in the signal handler referencing
Tue Feb 10 07:12:07 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtksignal.h:
        * gtk/gtksignal.c:
        ok, there have been several severe bugs in the signal handler
        referencing and ->next connection stuff. these bugs caused
        invokations of handlers that are disconnected and - worse -
        destroyed already. invokation of *destroyd* handlers mean:
        anything can be executed , because the handler structure can just
        as well be realocated.
        at the cost of an extra ->prev field per handler we should have a
        reasonable stable system now, because of the various places that
        can cause a handler to be disconnected (*any* handler invokation can
        cause *any* or *all* handlers to be disconnected, there is no way
        around a doubly linked list, actually handler disconnection has never
        worked correctly because of this.
        handlers are connected together via a *doubly* linked list now, and it
        is *not* valid to remove a handler out of this list untill all its
        references have been droped, i.e. handler->ref_count==0.
        to prevent emissions of disconnected but still referenced handlers,
        disconnected handlers are simply marked as blocked and get an id of 0
        which is an invalid signal handler id.
        the handler->id has been changed to have 28 significant bits (using
        alignment gaps), since 65536 (old range: guint16) signal connections
        (as a total) can easily be reached by complex applications.
        this whole handler thingy is at least as tedious as writing doubly
        linked list implementations ;)
1998-02-10 06:53:08 +00:00
Owen Taylor
f98686da85 Check for the RESIZE_NEEDED flag and remove the widget from the list.
Mon Feb  9 23:08:16 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkwidget.c (gtk_widget_unparent): Check for
	  the RESIZE_NEEDED flag and remove the widget from the list.
	  Remove the check from gtk_widget_destroy (no longer needed).

	* Unrealize widget _before_ calling "destroy" signal, and
	  unset VISIBLE flag.

	* Unrealize child widgets _after_ unrealizing parent to improve
	  visual appearance.
1998-02-10 04:17:10 +00:00
Miguel de Icaza
6246db9288 no longer a private routine; gtksignal.h: export gtk_signal_get_handlers
Mon Feb  9 16:42:21 1998  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gtk/gtksignal.c (gtk_signal_get_handlers): no longer a private
	routine;
	gtksignal.h: export gtk_signal_get_handlers and GtkHandlers type.
1998-02-09 22:44:34 +00:00
Tim Janik
38fac1be63 new fundtion to return the widget that the menu is attached to.
Sun Feb  8 07:06:54 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkmenu.c (gtk_menu_get_attach_widget): new fundtion to return
          the widget that the menu is attached to.
1998-02-08 19:00:01 +00:00
Jay Painter
7a3af96d84 New API functions: gtk_clist_get_cell_type gtk_clist_get_text
New API functions:
  gtk_clist_get_cell_type
  gtk_clist_get_text
  gtk_clist_get_pixmap
  gtk_clist_get_pixtext
  gtk_clist_find_row_from_data
1998-02-08 07:55:11 +00:00
Owen Taylor
289f6a38fe use a mask of 0xffffffff instead of 0xffff, since there are 22 flags
Sat Feb  7 11:33:08 1998  Owen Taylor  <owt1@cornell.edu>

	* gdk/gdkgc.c (gdk_gc_copy): use a mask of 0xffffffff
	  instead of 0xffff, since there are 22 flags currently
	  defined. (From: Jon Trowbridge <trow@emccta.com>)

	  Changed to something better. ~((~1) << GCLastBit)
		   (From: from Daniel Stephens <daniel@cheeseplant.org>)
1998-02-07 17:07:14 +00:00
Owen Taylor
e105a87144 added some additional consts in appropriate places to remove a warning
Sat Feb  7 11:48:09 1998  Owen Taylor  <owt1@cornell.edu>

	* gstring.c gutils.c: added some additional consts in
	  appropriate places to remove a warning
1998-02-07 16:48:03 +00:00
Owen Taylor
c763748dd1 use a mask of 0xffffffff instead of 0xffff, since there are 22 flags
Sat Feb  7 11:33:08 1998  Owen Taylor  <owt1@cornell.edu>

	* gdk/gdkgc.c (gdk_gc_copy): use a mask of 0xffffffff
	  instead of 0xffff, since there are 22 flags currently
	  defined. (From: Jon Trowbridge <trow@emccta.com>)
1998-02-07 16:34:40 +00:00
Owen Taylor
75cd57b6cb include <ctype.h> for tolower()
Sat Feb  7 11:15:54 1998  Owen Taylor  <owt1@cornell.edu>

	* gutils.c: include <ctype.h> for tolower()
1998-02-07 16:14:13 +00:00
Tom Tromey
dca018206e Here's a small patch that corrects a prototype in gtkvpaned.h.
From: Tom Tromey <tromey@creche.cygnus.com>
Here's a small patch that corrects a prototype in gtkvpaned.h.

                                        -owt
1998-02-07 16:10:01 +00:00
Tim Janik
89107cb751 clean ups. -timj
clean ups.
-timj
1998-02-07 04:59:23 +00:00
Tim Janik
edad08addd don't wipe out window_private's x and y coordinates if the configure
Sat Feb  7 02:29:01 1998  Tim Janik  <timj@gimp.org>

        * gdk/gdk.c (gdk_event_translate): don't wipe out window_private's x
          and y coordinates if the configure notify is only about resizing,
          query the correct origin instead.
1998-02-07 02:26:09 +00:00
Jay Painter
5b597c65c7 A little cosmetic cleanup 1998-02-05 08:40:06 +00:00
scott
d3c3333735 Menufactory now refs&sinks its children.
--sg
1998-02-05 04:10:43 +00:00
Tim Janik
9258a7aecb new function to perform the same actions as gtk_list_remove_items, but
Thu Feb  5 02:13:08 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtklist.h:
        * gtk/gtklist.c (gtk_list_remove_items_no_unref): new function
          to perform the same actions as gtk_list_remove_items, but
          supply the removed widgets with an additional reference count.

        * gtk/gtkmain.c (gtk_main_iteration_do): ignore events
          with event_widget == NULL, since they are bogus events
          from destroyed GdkWindows, exept for the case where
          event->type==GDK_PROPERTY_NOTIFY. Always handle expired
          timeout functions when returning from this function.

        * gtk/gtkwidget.c (gtk_widget_event): ignore GDK_EXPOSE events
          if event->window == NULL. Also, if this function couldn't handle
          the event for any reason (including failing assumptions), make
          the return value to look as if the event had been handled to
          avoid further processing (and warnings).

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: remove gtk_widget_sink, because there is
          no point in providing such a function.

        * gdk/gdk.c (gdk_init): changed options `-name' and `-class'
          to `--name' and `--class', because the old names would
          confuse getopt(). these arguments have been introduced in the
          changes from gtk+970916 to gtk+970925 without a ChangeLog entry,
          changing argument names is painful, it would be nice if people
          would care about compatibility and consistency in the first place!
1998-02-05 03:53:41 +00:00