1. 16 Jul, 1998 1 commit
    • Tim Janik's avatar
      handle negative values similar to gtk_widget_set_uposition(). that is: · af24aef7
      Tim Janik authored
      Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkwidget.h:
              * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
              similar to gtk_widget_set_uposition(). that is: -1=unspecified,
              -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
              to be gint16s rather than guint16s, since that's what the code expected
              (for a long time actually).
      
              * gtk/gtkviewport.c:
              added support for object arguments: GtkViewport::shadow_type,
              GtkViewport::vadjustment and GtkViewport::hadjustment.
              (gtk_viewport_add): chain gtk_bin_add.
      
              * gtk/gtkscrolledwindow.c:
              added support for object argument: GtkScrolledWindow::hscrollbar_policy,
              GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
      
              * gtk/gtkadjustment.h:
              * gtk/gtkadjustment.c:
              * gtk/gtkctree.h:
              * gtk/gtkclist.h:
              * gtk/gtkctree.c:
              * gtk/gtkclist.c:
              * gtk/gtkscrolledwindow.h:
              * gtk/gtkscrolledwindow.c:
              * gtk/gtkviewport.h:
              * gtk/gtkviewport.c:
              GtkType and macro fixups.
      af24aef7
  2. 14 Jul, 1998 1 commit
    • Tim Janik's avatar
      display the current cursor name. · da355fee
      Tim Janik authored
      Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/testgtk.c (create_cursors): display the current cursor name.
      
              * gtk/gtktypeutils.h:
              * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
              the fundamental type definition. the GtkArg union now only covers
              the required storage types for argument values. adapted the GTK_VALUE_*
              macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
      
              * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
              code, fixed int/float collection. fixed a bug in the sanity checking
              code for GtkObjects.
      
              * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
              argument collection code.
      
              * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
              macros when distinguishing the return type.
      da355fee
  3. 08 Jul, 1998 1 commit
    • Tim Janik's avatar
      handle GTK_RELIEF_HALF, which was introduced to keep either · 9b4d9046
      Tim Janik authored
      Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
              keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
              to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
              (GTK_RELIEF_HALF).
              (gtk_button_paint): set the background for prelighted buttons with
              GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
              (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
              the shadow type (otherwise we get strange shadows for coloured buttons).
              (gtk_button_set_relief): queue a redraw after changing
              the relief.
              (gtk_button_class_init):
              (gtk_button_set_arg):
              (gtk_button_get_arg): added object argument "GtkButton::relief".
      
              * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
      9b4d9046
  4. 30 Jun, 1998 1 commit
  5. 24 Jun, 1998 2 commits
    • Tim Janik's avatar
      added a frame with radio buttons to select the resize_mode for the · dbce6083
      Tim Janik authored
      Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
              to select the resize_mode for the idle-labels container.
      
              * gtk/gtkframe.h:
              * gtk/gtkframe.c: GtkType and macro corrections.
      
              * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
              support radio grouping.
      
      Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
              unconditionally if resize_mode has changed.
      
              * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
              GTK_RESIZE_QUEUE on the scrolled window.
              (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
      
      Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.h:
              * gtk/gtkcontainer.c:
              (GTK_IS_RESIZE_CONTAINER): new macro to find out if
              a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
              (gtk_container_queue_resize): new function to queue a container for
              a *size* reallocation (doesn't affect its position, and thus its
              parent is left untouched usually).
              (gtk_container_get_resize_container): new function to retrive the next
              most resize container which is not itself queued for a resize.
              (gtk_container_idle_sizer): new function to carefully process the
              container_resize_queue since it can change during invokation of
              gtk_container_check_resize().
              (gtk_container_resize_children): total rework of this function to
              properly handle resize containers. makes a lot of assumptions whitch
              are stated in the comments.
      
              * gtk/gtkcontainer.c:
              (gtk_container_real_check_resize): only requeue ourselves if we are not
              a resize container.
              (gtk_container_clear_resize_widgets): care for automatic deletion of our
              resize_widgets list on size_allocate through a handler connection.
      
              * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
              focus and default widget of a window, so to take the burden from
              gtk_widget_unparent.
      
              * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
              to be clever, but actually messed up the resize_children logic and
              caused unneccessary allocations on its whole branch. besides this,
              it messed up the display by not invoking a redraw after the allocation.
      
              * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
              that it is the child again that is queued for a resize.
              (gtk_table_attach): likewise.
              (gtk_table_remove): likewise.
      dbce6083
    • Manish Singh's avatar
      s/GkWidget/GtkWidget/ · 00362c03
      Manish Singh authored
      -Yosh
      00362c03
  6. 19 Jun, 1998 2 commits
    • Tim Janik's avatar
      fail silently for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, · 5c68ecbc
      Tim Janik authored
      Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
              for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
              resize widget list before queuing the container for a new reize.
              (gtk_container_need_resize): changed return value to FALSE, since this
              used to indicate that no further resizes are needed.
              (gtk_container_set_arg):
              (gtk_container_get_arg):
              (gtk_container_class_init): implemented GtkContainer::resize_mode
              argument.
      
              (gtk_container_resize_children): when we walk up the tree of a resize
              widget we need to stop if we are the current parent.
      
              * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
              GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
              (gtk_widget_hide_all): retrive the toplevel widget from via
              gtk_widget_get_resize_container().
      5c68ecbc
    • Owen Taylor's avatar
      Remove --g-fatal-warnings flag from argv. · 913831b2
      Owen Taylor authored
      Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
      	  from argv.
      
      Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/genmarshal.pl: Modified to be more idiomatic Perl,
      	  to be more readable perl, to spit out stuff that looks
      	  more like readable C, and to pipe output through indent
      	  so output looks a lot like readable C. No functional
      	  changes.
      
      Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
      	  necessary when switching to a masked pixmap. (Based on a patch
      	  from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
      
      Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkeditable.[ch]: Added action signals for keyboard
         	  bindings. (move_cursor, kill_word, etc, etc, etc).
      
                removed the time argument from
      	  gtk_editable_cut/copy/paste_clipboard (source but not
                binary incompatible...) Instead get time from
      	  gtk_get_current_event ().
      
      	* gtk/gtktext.c gtk/gtkentry.c: Support the new editable
      	  signals.
      
      Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
      
      	Patches from Damon Chaplin <DAChaplin@email.msn.com>:
      
              gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
      	     parent class to GtkNotebookClass when splitting the widget in
      	     two.  Also updated some comments.
      
              gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
                     button without a font selected.
      
                   Fixed bug in set_font_name - I hadn't updated the code to
                     search for the style in the font_style clist - it was
                     still assuming the style row was equal to its index,
                     but it isn't any more.
      
                   Changed 'Reset' button on filter page to 'Clear Filter'.
                   Deleted old code relating to the old 'Filter Fonts' toggle
                   Updated some comments.
                   Cleared 'Actual Fontname' if no font is set.
      
              gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
      	     destroying the GtkFontSelection instead of the
                   GtkFontSelectionDialog.
      
      Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
      	  flag to make all warnings fatal errors.
      
      	* gtk/testthreads.c: moved <pthreads.h> include inside
      	  #ifdef USE_PTHREADS
      
      Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
      	  gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
      
      	- Added new function gtk_container_set_resize_mode() for
      	  fine-grained control of where resize-queueing is done.
      
      	- Removed GtkContainer::need_resize and GtkWindow::move_resize
      	- Added GtkContainer::check_resize to replace need_resize.
      
      	- Added function gtk_container_check_resize() to trigger
      	  queued resizes, and gtk_container_resize_children() to
      	  Figure which children need to be size-allocated. (logic
      	  moved from gtkwindow.c)
      
      	- Reorganized code in gtkwindow.c
      
      	- Set the resize-mode for viewports so that resizes within
      	  a viewport don't propagate out of it.
      913831b2
  7. 18 Jun, 1998 1 commit
    • Tim Janik's avatar
      yeppers, accelerator changes to fix the gimp. commit message dedicated to · f83d57e9
      Tim Janik authored
      
      yeppers, accelerator changes to fix the gimp.
      commit message dedicated to sopwith ;)
      
      Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkaccellabel.h:
              * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
              request the size of the accelerator portion of an accel label.
              (gtk_accel_label_size_request): don't request for the accelerators size.
              (gtk_accel_label_expose_event): only draw the accelerator if we got
              enough extra space.
      
              * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
              width from children.
      
              * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
              object (after removal has been requested) check if there is still an
              accelerator remaining to avoid adding two accelerators on an object.
              this can happen for locked accelerators (or accelerator-frozen widgets).
              (gtk_menu_size_request): feature childrens accelerator width in size
              requests.
      
              * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
              gtk_widget_freeze_accelerators() for dynamically created menu items.
      
              * gtk/gtksignal.h:
              * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
              which will return a handler_id > 0 if the specified function is pending
              for `signal_id'.
      
              * gtk/gtkwidget.h:
              * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
              a signal handler function to stop accelerator addition.
              added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
              which will prevent (undo) any accelerators from being added to or
              removed from a widget.
      f83d57e9
  8. 16 Jun, 1998 2 commits
    • Tim Janik's avatar
      boy! did i really modify that many files? · 742d0190
      Tim Janik authored
      anyways, here go the child args and a lot of cleanups ;)
      you wouldn't want me to put the ChangeLog entry in here, would you?
      742d0190
    • Owen Taylor's avatar
      Moved font lists from the klass structure to a static structure in · d36df18d
      Owen Taylor authored
      Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
      	lists from the klass structure to a static structure
      	in gtkfontsel.c; cleans up global the namespace.
      
      Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/makeenums.pl (parse_entries): Fix (untriggered)
      	bug with /*< skip >*/ and remove warning.
      d36df18d
  9. 15 Jun, 1998 1 commit
    • Owen Taylor's avatar
      gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h gtk/Makefile.am gtk/makenums.pl · 48a9f44f
      Owen Taylor authored
      Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
      	  gtk/Makefile.am gtk/makenums.pl
      
      	Removed out the G_ENUM/FLAGS mechanism in favor
      	of a perl script that parses the standard headers
      	(with occasional /*< nick=foo >*/ style overrides)
      	and extracts the enumerations.
      
      	  gtk/maketypes.awk: Small improvments to the
      	  translation of names. (Avoid splitting gc into
      	  g_c_.)
      
      Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/Makefile.am gtk/gtk.h gtk/gtkfontsel.[ch] gtk/testgtk.c:
      	Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget,
              and a simple example for testgtk.
      
      Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkentry.c:
      	- Restored gtk_entry_adjust_scroll to static
      	- Changed text positioning code so that we always
      	  display as large a portion of the text as possible.
      
      Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtktext.c (gtk_text_finalize): Free internal
      	structures of text widget. Also, unreference pixmaps
      	when unrealizing.
      
      Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdkinputcommon.h (gdk_input_device_new): Change
      	3.3.1 bug workaround to number keys starting at 1.
      
      Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* docs/gtk_tut.sgml: Fixed urls for complete example
      	source for scribble+widget-writing examples.
      48a9f44f
  10. 12 Jun, 1998 1 commit
    • Tim Janik's avatar
      renamed enum GtkAnchor and GtkSide to GtkAnchorType and GtkSideType, to be · 1dc1b050
      Tim Janik authored
      Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkpacker.h:
              * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
              and GtkSideType, to be consistent with the rest of Gtk's enum
              definitions. wrapped the enum definitions with the G_ eunm wrappers.
              spelled out the GTK_ANCHOR_* enum values, since single letters don't
              work out corectly as nick-names (left the old values as aliases).
              some signdness corrections (border-width, spacing), could stand more.
      1dc1b050
  11. 09 Jun, 1998 1 commit
    • Tim Janik's avatar
      new functions gtk_selection_data_copy and gtk_selection_data_free. · a21d063e
      Tim Janik authored
      Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkselection.h:
              * gtk/gtkselection.c: new functions gtk_selection_data_copy and
              gtk_selection_data_free.
      
              * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
              for "selection_received", which was completely bogus.
              * other fixups to gtk_signal_new() calls all over the place.
      
              * gtk/gtktypebuiltins.h: types as variables (formerly macros).
              * gtk/gtktypebuiltins_vars.c: type variable implementations.
              * gtk/gtktypebuiltins_ids.c: array entries for builtin type
              declarations.
              * gtk/gtktypebuiltins_evals.c: enum value arrays.
              * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
              gtk.defs.
              * gtk/gtk.defs: generated file with scheme syntax for type definitions
              of gtk and gdk structures and enums.
              * gtk/gtktypeutils.h:
              * gtk/gtktypeutils.c: reworked type ids, so they are variables not
              macros anymore (this fixes binary incompatibility with new enum
              definitions).
      
              * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
              key bindings for this widget.
              * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
              handler.
      
              * gtk/gtkobject.h:
              * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
              again. new functions gtk_object_class_user_signal_new () and
              gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
              flag on the signal creation.
      Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
      a21d063e
  12. 08 Jun, 1998 1 commit
    • Tim Janik's avatar
      wrapped enum definitions with glib macros. · 207eecc4
      Tim Janik authored
      Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
      
              * gdk/gdkprivate.h:
              * gdk/gdktypes.h:
              * gtk/gtkprivate.h:
              * gtk/gtkwidget.h:
              * gtk/gtkobject.h: wrapped enum definitions with glib macros.
      
              * reworked enum value array generation code. gtk.defs is a generated
              file now.
      207eecc4
  13. 07 Jun, 1998 1 commit
    • Tim Janik's avatar
      fixed an assertment. · a391196b
      Tim Janik authored
      Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
      
              * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
              this should eventually be done by gentypeinfo.el somewhen.
              * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
      
              * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
              enum values of an enum type.
      
              * gtk/gtk.defs:
              * gtk/gtkcurve.h:
              * gtk/gtkobject.h:
              * gtk/gtkprivate.h:
              * gtk/gtkwidget.h:
              * gtk/gtkenums.h:
              brought enum/flags definitions in sync, added a few more enum
              definitions for bindings and pattern matching.
      
              * some more macro and GtkType fixups in various places.
      
              * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
              as a key-release modifier for the binding system.
      
      Fri Jun  5 06:06:06 1998  Tim Janik  <timj@g...
      a391196b
  14. 14 May, 1998 1 commit
    • Tim Janik's avatar
      typedef gint gboolean; this is needed to provide portability with · 004f0982
      Tim Janik authored
      Thu May 14 04:14:12 1998  Tim Janik  <timj@gtk.org>
      
              * glib.h: typedef gint gboolean;
              this is needed to provide portability with big-endian platforms (e.g.
              try sizeof(bool) for c++ on big-endians - it's 4).
              this is also needed to maintain some_union.d_gint==some_union.d_gboolean.
              plus, gint to gboolean casts and vice versa need to be possible without
              loss.
      
      Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
              freeing types.
              (gtk_type_set_chunk_alloc): new function to allow allocation of new
              types from a mem_chunk of certain size (n_chunks==0 indicates allocation
              thorugh g_malloc).
      
              * gtk/gtkobject.c (gtk_object_finalize): free an object through
              gtk_type_free().
      
              * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
              GtkButtons to 16.
              * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
              * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
      004f0982
  15. 07 May, 1998 1 commit
    • Tim Janik's avatar
      postfix -lg* libraries with LT_RELEASE. · 39ff37dc
      Tim Janik authored
      Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
      
              * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
      
              * ltmain.sh: added a new commandline flag -postfix similar to -release,
              but will immediately change the library name.
      
              * gdk/Makefile.am:
              * gtk/Makefile.am: specify -postfix and -version-info
      
              * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
              GTK_BINARY_AGE. calculate LT_* variables for libtool.
      39ff37dc
  16. 06 May, 1998 1 commit
    • Tim Janik's avatar
      reimplemented the signal storage system to use a linear array rather than · 518a8a9c
      Tim Janik authored
      Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.c: reimplemented the signal storage system to use a
              linear array rather than a hash table.
              be carefull *not* to keep any GtkSignal pointers across invokations
              of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
              general code cleanups, made all allocations through memchunks.
              (gtk_signal_lookup): we now do the lookup of signals through a key_id
              for the signal names to avoid multiple hashing of the signal name on
              lookups for the several hirarchy levels of an object.
      
      Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
              checking for signal initialization in gtksignal.c.
      
              * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
              a long debugging period ;)
      
      Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
              gtk_type_is_a().
              * gtk/gtktypeutils.c: reimplemented the type storage system to use a
              linear array rather than a hash table. it actually speeded up testgtk
              for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
              pointers across invokations of gtk_type_node_next_and_invalidate() and
              therefore gtk_type_unique()!
      
              * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
              inheritance of a class pointer.
              (GTK_OBJECT): modifications for speedups.
              (GTK_IS_OBJECT): likewise.
              (GTK_OBJECT_CLASS): likewise.
              (suggested by owen).
      
              * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
      
              * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
      
              * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
              since its derivation changed 4 month ago ;(. showed up with the unique
              type name checking code in gtk_type_unique().
      
              * random guint->GtkType and macro fixups.
      518a8a9c
  17. 17 Jan, 1998 1 commit
    • Owen Taylor's avatar
      Take putback events into account · 44364802
      Owen Taylor authored
      * 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.
      44364802
  18. 18 Dec, 1997 1 commit
  19. 24 Nov, 1997 1 commit