1. 10 May, 1998 5 commits
    • Stefan Jeske's avatar
      Started documentation of GtkCTree. · cb12593d
      Stefan Jeske authored
      cb12593d
    • Tim Janik's avatar
      218e6199
    • Tim Janik's avatar
    • Tim Janik's avatar
      minor cleanups and merges · 315affdf
      Tim Janik authored
      315affdf
    • Owen Taylor's avatar
      Try to figure out if this is Digital Unix and we need -std1 to get the · f75d8b0c
      Owen Taylor authored
      Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* configure.in (LIBS): Try to figure out if this
      	is Digital Unix and we need -std1 to get the
      	right prototypes.
      
      Sat May  9 20:08:12 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* glib/gmem.c: Experimentally restore GMemChunk
      	to its primeval state - where mem areas are
      	freed incrementally instead of searching the tree
      	every time a mem area is completely empty. Also,
      	always keep one mem chunk around. (Reduced calls
      	to malloc() a lot, but doesn't really improve
      	performance significiantly)
      
      Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
      	draw-queue when we are done.
      
      	(gtk_widget_queue_draw/_queu_resize): Always return
      	FALSE and avoid having two idles at the same time.
      
      Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtktext.c: Various fixes to make sure cache
      	lines are freed if line_start_cache doesn't point to the
      	beginning of the cache.
      
      Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* style_set improvements for GtkText and GtkEntry
      
      Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
      	to speed things up and remove code duplication.
      
      	Reintegrated buffer overflow patches, and added
      	some extra paranoia.
      
      Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdk.c (gdk_event_translate): A guint * was
      	being passed where X expected a Keysym *, and
      	keysyms are long's on Alpha Linux. This was causing
      	segfaults in Xlib, apparently because of alignment.
      	(Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
      
      Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
      	set GDK_EXPOSURE_MASK for DrawingAreas
      
      Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
      	(superceded by RC file reparsing capabilities)
      
      	* gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
      	events. (Shouldn't be sent to the InputOnly leader, which
      	it is now by gdk_event_send_clientmessage_toall
      
      	* gtk/testgtk.c: Added extra button to rcfiles test
      	to send out _GDK_READ_RCFILES events.
      
      Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkselection.c (gtk_selection_clear): Fixed
      	reversed conditionals that caused segfault on some
      	platforms.
      
      Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
      	cast to GTK_OBJECT for gtk_object_ref.
      f75d8b0c
  2. 09 May, 1998 2 commits
    • BST 1998 Tony Gale's avatar
      update of Italian tutorial translation from Daniele Canazza · aab3106a
      BST 1998 Tony Gale authored
      Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
      
              * docs/gtk_tut_it.sgml: update of Italian tutorial
                translation from Daniele Canazza <dcanazz@tin.it>
      aab3106a
    • Tim Janik's avatar
      new file used as template for new file to define macros indicating newly · 9775962a
      Tim Janik authored
      Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkfeatures.h.in: new file used as template for
              * gtk/gtkfeatures.h: new file to define macros indicating newly
              introduced features, such as GTK_HAVE_SIGNAL_INIT.
      
              * gtk/gtksignal.c:
              (gtk_signal_emitv_by_name):
              (gtk_signal_emitv):
              new functions to emit signals with an already provided parameter set.
              (provided by Kenneth Albanowski <kjahds@kjahds.com>).
              (gtk_signal_real_emit): prototype changes, so this functions always
              gets its parameters and signal structure as arguments.
              (gtk_signal_emit): provide the signal structure and parameter list for
              gtk_signal_real_emit.
              (gtk_signal_emit_by_name): likewise.
      9775962a
  3. 08 May, 1998 1 commit
    • Tim Janik's avatar
      reflect the presence of signal connections through unsetting · 142c8483
      Tim Janik authored
      Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
              signal connections through unsetting GTK_CONNECTED.
              (gtk_signal_handler_insert): reflect the presence of signal connections
              through setting GTK_CONNECTED.
              (gtk_signal_real_emit): only check for handler emissions if the object
              has the GTK_CONNECTED flag set.
              (gtk_signal_handler_pending): don't check for pending handlers if the
              GTK_CONNECTED flag is not set for this object.
      
              * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
              a GtkObject has signal handler connections.
      
              * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
              set for this object call gtk_signal_handlers_destroy().
      
              * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
              multiple processing of macro args.
      
              * gtk/gtktypeutils.c:
              * gtk/gtkobject.c:
              * gtk/gtkwidget.c:
              * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
      142c8483
  4. 07 May, 1998 7 commits
    • rhlabs's avatar
      Handle the -1.1 on libraries. · 6e99903a
      rhlabs authored
      Is this really a good idea?  Isn't that what sonames are for?
      
      -Marc
      6e99903a
    • Tim Janik's avatar
      asure that the type system has been initialized. · 1f455e53
      Tim Janik authored
      Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
                      been initialized.
      1f455e53
    • Tim Janik's avatar
      allocate object data chunks through a global object data structure list. · 2934f4f5
      Tim Janik authored
      Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
                      data chunks through a global object data structure list. unlink
                              object data before invoking its destroy function.
                                      (gtk_object_finalize): slight modification to allow usage of object
                                              data during object finalization.
      2934f4f5
    • Tim Janik's avatar
      speedups speedups speedups.... · 8460f393
      Tim Janik authored
      this one is actually noticable on widget destruction.
      
      Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
              signal names, e.g. "signal-name" is now an alias for "signal_name".
              (gtk_signal_handler_new): allocate handlers through a global handler
              structure list, that's faster than memchunks.
              (gtk_emission_new): allocate emissions through a global emission
              structure list, that's faster than memchunks.
      8460f393
    • Tim Janik's avatar
      ooops, fogot this on my last commit... · 8b667441
      Tim Janik authored
      8b667441
    • Tim Janik's avatar
      macros to facilitate the printf/scanf format argument checking of gcc. · 38fc79fc
      Tim Janik authored
      Thu May  7 08:17:28 1998  Tim Janik  <timj@gtk.org>
      
              * glib.h (G_GNUC_PRINTF):
              (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument
              checking of gcc.
      
              * gstring.c: const corrections, string!=NULL checks at function entry.
              (g_string_down): new function for tolower(3) conversion.
              (g_string_up): new function for toupper(3) conversion.
      
              * gutils.c: const corrections.
              (g_strdown): g_string_down() counterpart.
              (g_strup): g_string_up() counterpart.
      
              * gscanner.c (g_scanner_unexp_token):
              (g_scanner_error):
              (g_scanner_warn): new functions to let a scanner put out warnings
              or errors, especially to react on unexpected tokens.
      
              * gslist.c:
              (g_slist_index): find out about about the position of a
              certain data pointer.
              (g_slist_position): find out about about the position of a
              certain node.
      
              * glist.c:
              (g_list_index): find out about about the position of a
              certain data pointer.
      38fc79fc
    • 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
  5. 06 May, 1998 4 commits
    • Federico Mena Quintero's avatar
      Oops, missed this in the last commit. The commit to the stable branch is underway. · 91d31765
      Federico Mena Quintero authored
      1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
      
      	* gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
      	background (fg_set -> bg_set confusion).
      91d31765
    • Arturo Espinosa's avatar
      ChangeLog · 513a06e9
      Arturo Espinosa authored
      513a06e9
    • Stefan Jeske's avatar
      Removed code that caused an endless loop. · 1afc96a7
      Stefan Jeske authored
      	* gtk/testgtk.c (unselect_all): Removed code that caused an
      	endless loop.
      1afc96a7
    • 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
  6. 05 May, 1998 2 commits
  7. 04 May, 1998 5 commits
  8. 03 May, 1998 4 commits
    • Owen Taylor's avatar
      configure.in acheader.h gdk/gdkwindow.c Check for Shape extension both on · 4851efe2
      Owen Taylor authored
      Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* configure.in acheader.h gdk/gdkwindow.c
      	Check for Shape extension both on the client and server
      	side. (And, more importantly, check for the shape extension
      	so we may include -lXext even when compiling with --disable-xshm)
      
      	Don't set override_redirect on all shaped windows. It isn't
      	necessary.
      
      	* gdk/gdkwindow.c: Set ->colormap to NULL for root
      	and foreign windows. Use this to check if we
      	need to get the colormap from X.
      
      Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkbutton.c (gtk_button_paint): Draw the areas
      	between the default and the button always in GTK_STATE_NORMAL.
      
      	* gtk/gtkrange.c (gtk_range_style_set): Added a style_set
      	callback.
      
      Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
      	  Fix a buffer overflow on pixmaps that claim to have
      	  more than 31 characters per pixel.
      
      	  (gdk_pixmap_read_string): Don't wrap around strings longer
       	  than half of address space ;-)
      
      	* gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
      	that were used for printing integers.
      
      	* */* (almost):
      
      	Style: All
      	  int foo () { ... }
      	changed to
      	  int foo (void) { ... }
      
      ^^^^^^^ This is why some many files changed
      
      	Even where there were proper prototypes elsewhere.
      
      	* gdk/gxid.c (handle_claim_device): Some extra checks.
      	It isn't safe against being fed bad X id's, but at
      	least it should be safe against deleting all your
      	files.
      4851efe2
    • Tim Janik's avatar
      hmmmm, corrections? · c0b92323
      Tim Janik authored
      c0b92323
    • Tim Janik's avatar
      new function to set the adjustments value without causing a current · 5c9af6b5
      Tim Janik authored
      Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
                      to set the adjustments value without causing a current emission of
                              "value_changed" to be restarted.
      
                                      * gtk/gtksignal.c: added new functions to retrive the number of
                                              existing emissions for a certain signal.
                                                      (gtk_signal_n_emissions): new function.
                                                              (gtk_signal_n_emissions_by_name): new function.
      5c9af6b5
    • Tim Janik's avatar
      new function to set the current focus_child of a container, does proper · 19bbe055
      Tim Janik authored
      Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
                      set the current focus_child of a container, does proper referencing and
                              adjusts the vadjustment/hadjustment associated with the focus widget.
      
                                      * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
                                              containers via gtk_container_set_focus_child.
      
                                                      * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
                                                              where appropriate.
      
                                                                      * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
                                                                              child since not every child removal goes through this function (this
                                                                                      showed up after gtk_container_set_focus_child() started to reference the
                                                                                              focus_child of a container).
      
                                                                                                      * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
                                                                                                              of a container from gtk_container_remove into this place.
      19bbe055
  9. 02 May, 1998 4 commits
    • Tim Janik's avatar
      added new functions to operate on intermediate function pointers. · 2ca03393
      Tim Janik authored
      Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.c: added new functions to operate on intermediate
                      function pointers. implemented incremental blocking.
                              (gtk_signal_disconnect_by_func): new function.
                                      (gtk_signal_handler_block_by_func): new function.
                                              (gtk_signal_handler_unblock_by_func): new function
      2ca03393
    • Owen Taylor's avatar
      merging owen's bug fix · 864a3863
      Owen Taylor authored
      Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
      
              * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
                      Always show the scrollbars when the policy is
                              GTK_POLICY_ALWAYS...
      864a3863
    • Tim Janik's avatar
      only emit "value_changed" if we really passed a new value. · d466bcb7
      Tim Janik authored
      Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
                      "value_changed" if we really passed a new value.
                              (gtk_adjustment_changed): new function to emit the "changed" signal.
                                      (gtk_adjustment_set_value): new function to emit the "value_changed"
                                              signal.
      d466bcb7
    • Tim Janik's avatar
      do not just return if the combo-list is empty since that will cause the · 998ac310
      Tim Janik authored
      Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
                      the combo-list is empty since that will cause the combo to operate
                              on a non existing GtkList window.
                                      (gtk_combo_get_pos): provide the combo list with a usfull default
                                              height if empty.
                                                      (gtk_combo_popup_button_press): grab the focus.
                                                              (gtk_combo_activate): grab the focus.
      998ac310
  10. 01 May, 1998 6 commits
    • Lars Hamann's avatar
      removed unneeded GtkCTree::draw_lines (gtk_ctree_get_node_info): New · 67c79cda
      Lars Hamann authored
      * gtkctree.[ch]: removed unneeded GtkCTree::draw_lines
      (gtk_ctree_get_node_info): New funtion to get data of ctree row.
      (draw_row): changed drawing order of tree lines, draw triangles
      in case of GTK_CTREE_LINES_NONE.
      67c79cda
    • rhlabs's avatar
      <raster@redhat.com> · c924b9be
      rhlabs authored
      
      
      <raster@redhat.com>
      
      AHA! more bugs in the get_visual and get_colormap stuff.. guarateed to barf
      if the gdk window you are querying is gdk's own gdk_root_window :) Added
      checks to see if this window is infact the root window.... :)
      
      now ee doesnt barf if you set the image as the bg.. :)
      c924b9be
    • Owen Taylor's avatar
      Further changes to the way the window is popped up so that it will be · b0a28fda
      Owen Taylor authored
      Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkcombo.c: Further changes to the way the window
      	is popped up so that it will be compatible with
      	auto-scrolling in the future.
      b0a28fda
    • Owen Taylor's avatar
      New function to reset the RC styles for a heirarchy · de210bbd
      Owen Taylor authored
      Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
      	function to reset the RC styles for a heirarchy
      
              Clear the window background if necessary in
      	gtk_window_style_set.
      
      	* gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
      	rereads all previously read RC files.
      
      	* gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
      	(Should it just be called gdk_get_toplevels?)
      
      	* gtk/testgtk.c: New test to reload RC files.
      de210bbd
    • Tim Janik's avatar
      ctree import · 61554862
      Tim Janik authored
      61554862
    • Tim Janik's avatar
      prefixed all clist flags with GTK_ to avoid name clashes. redefined · befef270
      Tim Janik authored
      Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkclist.h:
                      * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
                              clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
                                      GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
                                              the GTK_ prefix (this solution involved less changes in the
                                                      gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
                                                              the mem_chunk==NULL test in gtk_clist_construct. merged in changes
                                                                      from lars & stefan to support the derivation of GtkCtree.
      
                                                                              * gtkctree.h:
                                                                                      * gtkctree.c:
                                                                                              initial import of a tree widget derived from gtkclist, courtesy
                                                                                                      of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
                                                                                                              it just damn rocks!
      
      
      Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
              for us.
              (gtk_list_insert_items):
              (gtk_list_remove_items_internal):
              (gtk_list_clear_items):
              remove a possible pointer grab, we might get thrown into a loop
              otherwise.
              (gtk_list_button_press): grab the pointer *before* selecting the child,
              because selection of items may cause the lists children to change,
              resulting in a grab release.
              (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
              children.
              (gtk_list_shutdown): remove all children from the list.
              (gtk_real_list_unselect_child):
              (gtk_real_list_select_child): *always* put our internal structures into
              sane state *before* signal emisions (i.e. list->selection updates prior
              to gtk_list_item_[de]select() calls).
      
              * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
              focused child walks out of the window.
              removed CAN_FOCUS for the combo arrow's button since it doesn't react
              to keyboard events ("clicked" connection is missing).
      befef270