1. 22 Jul, 1998 1 commit
    • Tim Janik's avatar
      introduce testbindings on C-1 for buttons, to check out binding · 8c56db61
      Tim Janik authored
      Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
              to check out binding priorities. someone should really write
              gtkrc-mode for emacs.
      
              * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
              * gtk/testgtk.c (main): and move it here ;). this test says something
              on release of C-9. (this works only if the mouse pointer is on a
              spinbutton and there is no focus widget).
      
              * gtk/gtkrc.h:
              * gtk/gtkrc.c:
              export gtk_rc_parse_color, gtk_rc_parse_state and a new function
              gtk_rc_parse_priority to parse path priority types.
              export rc tokens.
              feature binding parsing.
      
      Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkbindings.h:
              * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
              feature binding parsing in rc files.
              * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
              * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
              order the bindings with lowest priority first.
      8c56db61
  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. 10 Jul, 1998 1 commit
  4. 09 Jul, 1998 1 commit
    • Tim Janik's avatar
      deleted most of the argument handling code, since that is now implemented · 347efc33
      Tim Janik authored
      Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtkcontainer.h:
      	* gtk/gtkcontainer.c: deleted most of the argument handling code, since
      	that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
      	we now export a new function gtk_container_child_args_collect().
      	for consistency with the object arguments, a few functions got renamed:
      	gtk_container_child_arg_get -> gtk_container_child_get,
      	gtk_container_child_arg_set -> gtk_container_child_set,
      	gtk_container_child_arg_getv -> gtk_container_child_getv,
      	gtk_container_child_arg_setv -> gtk_container_child_setv,
      	gtk_container_add_with_argv -> gtk_container_addv.
      	note, gtk_container_add_with_args() remained, because its equivalent
      	would be gtk_container_add(,, ...) which would break all existing code.
      	(gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
      	we expect the `arg_name' argument to be a const static string now.
      	(gtk_container_get_child_arg_type): function removed.
      
      Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
      
      	* gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
      	this is a static inline function that collects command line arguments
      	from a va_list. this file can just be included in all places that
      	need this functionality.
      
      	* gtk/gtkarg.h:
      	* gtk/gtkarg.c: new files which implement most of the argument
      	handling stuff from gtkobject.c. also collected a few more
      	gtk_arg_* utility functions from else places.
      
      	* gtk/gtkobject.h:
      	* gtk/gtkobject.c: moved most of the argument handling code into
       	gtkarg.c. we now export gtk_object_args_collect() as a non-public
      	method with a blind va_list pointer.
      	(gtk_object_add_arg_type): the `arg_name' argument is required to be a
      	const static string now.
      	(gtk_object_get_arg_type): function got removed.
      
      	* gtk/gtkwidget.c:
      	(gtk_widget_set):
      	(gtk_widget_new): adaptions for gtk_object_args_collect().
      
      	* gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
       	fundamental type name so as to have a valid prefix, e.g. "bool"->
      	"gboolean", "string"->"GtkString" and somesuch, left "void" as is,
      	though that should probably be something like GtkNone since the
      	type itself is called GTK_TYPE_NONE.
      	even the internal type names need to avoid name clashes and must live
      	in their own namespace, several code portions rely on that.
      	we should relly have typedefs such as typedef gchar* GtkString; so the
      	fundamental type names can be used for code dumpers just like with all
      	the Gtk/Gdk types.
      347efc33
  5. 01 Jul, 1998 1 commit
    • Tim Janik's avatar
      temporary implementation of action signal "debug_msg" · 2e8e686c
      Tim Janik authored
      Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkwidget.h:
              * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
      
              * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
              error that prevented signal to entry addition for signals with
              parameters.
      2e8e686c
  6. 30 Jun, 1998 1 commit
    • Tim Janik's avatar
      ok, this enables the possibility for key-release bindings. · 80b0b3ea
      Tim Janik authored
      but nearly no widget really cares to set GDK_KEY_RELEASE_MASK,
      which needs to be enabled in order for release bindings to work.
      
      Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
              modifier as well.
              (gtk_accelerator_name): add "<Release>" to the accelerator name if
              neccessary.
      
              * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
              account.
      
              * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
              default handler for key-release events, which checks for activation
              of GDK_RELEASE_MASK key bindings.
      
              * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
      80b0b3ea
  7. 19 Jun, 1998 1 commit
    • Tim Janik's avatar
      replaced some gtk_object_data_force_id with g_quark_from_static_string · 3c90c2cd
      Tim Janik authored
      Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkaccelgroup.c:
              * gtk/gtkbindings.c:
              * gtk/gtkcontainer.c:
              * gtk/gtkitemfactory.c:
              * gtk/gtkobject.c:
              * gtk/gtksignal.c:
              * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
              g_quark_from_static_string calls to save memory.
      
              * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
              function _after_ the new data has been setup.
              minor changes to object data functions to feature the GQuark type.
      3c90c2cd
  8. 14 Jun, 1998 2 commits
  9. 10 Jun, 1998 2 commits
  10. 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
  11. 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@gtk.org>
      
              * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
              was a stale list pointer that is already present in GtkMenuShell.
      
              * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
              GtkMenuShell::selection_done which is emitted after the menu shell
              poped down again and all possible menu items have been activated.
      
      Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
              before activation of the menuitem, so the menu is actually taken off the
              screen prior to any menu item activation.
      
              * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
              for NULL nodes.
      
              * gtk/gtkwidget.h:
              * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
              the emission of the "add-accelerator" signal on a widget. this is
              usefull to prevent accelerator installation on certain widgets.
      
              * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
              labels left justified, by setting their alignment. stop accelerator
              installation for the menu items, since we use dynamic menus.
      
      Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
              should *really* use GtkItemFactory. this is only for preserving source
              compatibility where possible, use of GtkMenuFactory is deprecated as of
              now.
      
              * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
              to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
              missed this possibility when i added gtk_object_class_add_user_signal
              in late january.
      
              * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
      
      Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkaccelgroup.h:
              * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
      
              * gtk/gtkaccellabel.h:
              * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
              display of the accelerators associated with a certain widget.
      
              * gtk/gtkitemfactory.h:
              * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
              parsing and accelerator handling.
      
              * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
              positioning a menu.
              (gtk_menu_map): removed the allocation code.
              (gtk_menu_size_allocate): care for redrawing of children and resize
              our widget->window correctly.
              (gtk_menu_key_press): feature the new accelerator groups.
      
              * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
              submenu if neccessary.
      
              * gtk/gtkmenuitem.c:
              * gtk/gtkcheckmenuitem.c:
              * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
              function variants.
      
              * gdk/gdk.c:
              (gdk_keyval_from_name):
              (gdk_keyval_name): new functions for keyval<->key-name associations.
              (gdk_keyval_to_upper):
              (gdk_keyval_to_lower):
              (gdk_keyval_is_upper):
              (gdk_keyval_is_lower): new functions to check/translate keyvalues with
              regards to their cases.
      
      Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
              widget's class path.
              (gtk_widget_path): new function to calculate a widget's name path.
      
              * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
              pattern matching, features reversed pattern matches.
      a391196b