1. 22 Oct, 2000 1 commit
    • Tor Lillqvist's avatar
      gtk/makefile.mingw.in Updates. · 5fd61965
      Tor Lillqvist authored
      2000-10-22  Tor Lillqvist  <tml@iki.fi>
      
      	* gtk/makefile.mingw.in
      	* gtk/gtk.def: Updates.
      
      	* gtk/testgtk.c: sleep() is called _sleep in MS's C
      	library.
      
      	* gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
      
      	* gtk/makefile.msc: Remove
      
      	* gtk/makefile.msc.in: New file, like makefile.mingw.in.
      
      	* gtk/Makefile.am: Add it.
      
      	* configure.in: Generate it.
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
      	* gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
      	something even if not implemented, to satisfy picky MSVC.
      5fd61965
  2. 04 Oct, 2000 1 commit
    • Havoc Pennington's avatar
      clean up trailing whitespace, add extensive tests for tag toggle · 928c0698
      Havoc Pennington authored
      2000-10-03  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/testtextbuffer.c: clean up trailing whitespace,
      	add extensive tests for tag toggle iteration.
      
      	* gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan
      	distance
      
      	* gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
      	optimize case where the tag root is on level 1
      	(gtk_text_line_previous_could_contain_tag): attempt to implement
      	(gtk_text_line_next_could_contain_tag): Abstract out node_compare
      	functionality
      
      	* gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
      	Implement this, though not very efficiently.
      
      	* gtk/gtktextiterprivate.h: reformat
      
      	* gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
      	iterator
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
      	this to properly revalidate the iterators.
      
      	* gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
      	properly at the end of the line (and therefore on empty lines)
      
      	* gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
      	maybe we should return a value...
      928c0698
  3. 02 Oct, 2000 1 commit
    • Havoc Pennington's avatar
      text_window_* weren't static and should have been. Start work on child · 8ebf77d1
      Havoc Pennington authored
      2000-10-02  Havoc Pennington  <hp@pobox.com>
      
              * gtk/gtktextview.c: text_window_* weren't static and should have
      	        been.
      		        Start work on child widgets; not yet complete,
      syncing to
              office computer.
      
      	        * gtk/gtktextchild.h: change this to contain a public interface,
      		starting work on child interfaces.
      		        * gtk/gtktextchildprivate.h: move private interfaces here
      
      			* gtk/Makefile.am: update to reflect gtktextchildprivate.h
      
      			* gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
      			gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c,
      			gtk/gtktextmark.c: copyright notices
      
      			* gtk/gtktextmarkprivate.h: reformat, and put _ in
      front of
              internal functions
      
      	* gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
      	internal function
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
      	Reformatting
      8ebf77d1
  4. 30 Sep, 2000 2 commits
    • Havoc Pennington's avatar
      Handle NULL start/end pointers · 632fda6f
      Havoc Pennington authored
      2000-09-30  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
      NULL start/end pointers
      
      * gtk/gtktextbuffer.c: Write some docs
      (gtk_text_buffer_get_selection_bounds): Allow start/end to be
      NULL, so you can just check whether there's a selection.
      
      * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to
      cleanup_line or segments_changed ourselves, it gets done
      in unlink_segment
      
      * gtk/gtktextmark.h:
      s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
      
      * gtk/gtktextsegment.h: Clean up some indentation and naming mess
      
      * gtk/gtktextmark.c: delete some more old Tk cruft
      
      * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
      mark before removing it, so we can emit MARK_DELETED with a valid
      pointer.
      (gtk_text_buffer_mark_set): hold ref across signal emission
      
      * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
      whining about attempts to delete special marks
      
      * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
      underscore, since it's internal.
      
      * gtk/gtktextbuffer.h: Remove find_string prototype, this is
      now implemented in terms of iterators in gtktextiter.h
      
      * gtk/gtktextbuffer.c (gtk_text_buffer_set_text):
      New function, destructively sets contents of buffer. Also
      a convenient way to clear the buffer by setting text to ""
      
      * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
      multiline string literal
      
      * gtk/testtext.c (text_changed_callback): Redraw line numbers if
      text changes.
      
      * gtk/gtktextiter.c (forward_char): Return FALSE if new location
      is not dereferenceable
      (gtk_text_iter_forward_lines): fix return value
      632fda6f
    • Havoc Pennington's avatar
      fix indentation · 244996ff
      Havoc Pennington authored
      2000-09-29  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
      
              * gtk/gtktextview.c: Implement drag thresholding; change functions
      	that set border window size to have nicer name
      	(gtk_text_view_mark_set_handler):  Fix this to have the
      	right signature.
      
      	* gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
      
      	* gtk/testtext.c: Update with API changes, put line numbers on
      	both sides.
      
      	* gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
      	with this
      
      	* gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
      	pixbuf; delete a big block of #if 0 Tk code
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace
      	insert_pixmap with insert_pixbuf
      244996ff
  5. 25 Sep, 2000 1 commit
    • Havoc Pennington's avatar
      Draw the focus, and leave space to do so. · 9bec105a
      Havoc Pennington authored
      2000-09-25  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextview.c: Draw the focus, and leave space to do so.
      
      	* gtk/gtktexttypes.c: Remove Latin1 conversion stuff
      
      	* gtk/gtktextbtree.c (gtk_text_btree_node_remove_data):
      	Fix a bug when removing node data, we didn't properly
      	re-splice the linked list after removing the data.
      
      	* gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through
      	GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
      
      	* gtk/gtktextbuffer.c (selection_received): fix g_convert usage
      
      	* gtk/gtktextlayout.c (set_para_values): Set tab array
      	for the layout from the GtkTextTag.
      
      	* gtk/gtktexttypes.h: delete tab and search cruft,
      	remove g_convert() in favor of GLib version
      
      	* gtk/gtktexttypes.c: remove tab implementation from here,
      	move to Pango
      
      	* gtk/gtktexttag.h, gtk/gtktexttag.c: Implement
      	tab stuff using new PangoTabArray from Pango
      
      	* gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
      	unused border_width stuff
      9bec105a
  6. 31 Aug, 2000 1 commit
    • Havoc Pennington's avatar
      cache end line, for rapid testing whether an iterator is the end iterator · 41b5d5d2
      Havoc Pennington authored
      2000-08-31  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtktextbtree.c (GtkTextBTree): cache end line,
      for rapid testing whether an iterator is the end iterator
      (gtk_text_btree_new): init end line cache
      (gtk_text_line_is_last): use fast cached line to
      see if we're the last line.
      (get_last_line): use cached line here too, should
      speed up some random unrelated code.
      41b5d5d2
  7. 25 Jul, 2000 1 commit
    • Havoc Pennington's avatar
      update to reflect text widget changes. · a4762fbf
      Havoc Pennington authored
      2000-07-25  Havoc Pennington  <hp@redhat.com>
      
      * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
      widget changes.
      
      * gtk/gtktextview.h: To be consistent with usage of "line"
      throughout the API to mean "newline-terminated thingy", change
      MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
      to MOVEMENT_LINE.
      
      (GtkTextView): Add flags for default editability, and whether to
      show the cursor. Add functions to get/set that. Add
      
      (gtk_text_view_get_iter_location): new function
      
      * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
      gtktextlayout.h
      (g_convert): Add g_convert temporarily, will go in glib in a bit
      
      * gtk/gtktexttagtable.h: include gtktexttag.h, and define
      GtkTextTagTableForeach instead of brokenly using GHFunc.
      Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
      
      * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
      moved to public header.
      
      * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
      "invisible", since "elide" was a bad name.
      (gtk_text_tag_get_priority): Added
      
      (GtkTextStyleValues): put this in public header, along with
      functions to use it.
      
      * gtk/gtktextmarkprivate.h: Include more headers, since we no
      longer include gtktextbtree.h.
      
      * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
      gtk_text_mark_deleted
      
      * gtk/gtktextlayout.h: Don't include the "really private" headers,
      only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
      to make this possible. Now we only need to install
      gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
      (However the Makefile.am isn't changed yet because of the
      logistics of merging gtk-hp-patches piecemeal)
      
      * gtk/gtktextiterprivate.h: include btree header, so it compiles;
      rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
      gtk_text_iter_get_line is now used in the public API for a
      different purpose.
      
      * gtk/gtktextiter.h: Clean up function names to be more
      consistent. Always call char offset "offset" and byte index
      "index". A "line" is always a line number.
      
      (gtk_text_iter_is_last): new function, more efficient than
      the existing way to check
      (gtk_text_iter_is_first): new function, also more efficient
      
      (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
      
      (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from
      gtk_text_iter_forward_char, etc.
      
      (gtk_text_iter_forward_to_tag_toggle): Renamed from
      forward_find_tag_toggle, since this isn't a linear search
      
      (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
      
      (gtk_text_iter_forward_search, gtk_text_iter_backward_search):
      New functions, search for a buffer substring.
      
      * gtk/gtktextbuffer.h: Add fields to store whether a paste is
      interactive and default editable (since we need to store that info
      until we receive the selection data).
      
      Remove all the _at_char and at_line etc. versions of functions;
      only have iterator versions.
      
      Add _interactive() versions of functions, that consider the
      editability of text. (FIXME add interactive flag to the
      insert/delete signals per Darin's suggestion)
      
      (gtk_text_buffer_get_tag_table): new function, demand-creates the
      tag table if necessary
      
      Remove declaration of gtk_text_buffer_get_iter_from_string
      
      (_gtk_text_buffer_get_btree): private/internal function, added.
      
      
      * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
      (gtk_text_line_is_last): new function
      a4762fbf
  8. 20 Jul, 2000 1 commit
    • Tor Lillqvist's avatar
      Fix C++ comment. · 631205dd
      Tor Lillqvist authored
      2000-07-19  Tor Lillqvist  <tml@iki.fi>
      
      * gtk/gtksignal.c: Fix C++ comment.
      
      * gtk/gtkimmulticontext.c
      * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
      don't return value from void functions.
      
      * gtk/gtk.def: Add gtk_rc_style_unref.
      631205dd
  9. 21 Jun, 2000 1 commit
    • Havoc Pennington's avatar
      Use gunichar instead of gint when appropriate in the interfaces · ee089516
      Havoc Pennington authored
      2000-06-21  Havoc Pennington  <hp@redhat.com>
      
      * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
      in the interfaces
      
      * gtk/gtktexttypes.c: Remove UTF functions, use glib
      stuff instead when possible.
      
      * gtk/gtktexttypes.h: Delete some unused constants
      
      * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
      testtextbuffer.c: use glib instead of custom unicode routines
      ee089516
  10. 02 Jun, 2000 2 commits
    • Havoc Pennington's avatar
      Test program to make sure GtkTextBuffer is in working order. · e86329d5
      Havoc Pennington authored
      2000-06-02  Havoc Pennington  <hp@pobox.com>
      
              * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
      	is in working order.
      
      	* gtk/testtext.c: Change to reflect anonymous mark API
      
      	* gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
      
      	* gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
      	field, which was unused.
      
      	* gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
      	saves some typing.
      
      	* gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*
      
      	* gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
      	flag on the insertion point and selection bound
      
      	Throughout, use GtkTextMark instead of GtkTextLineSegment, and
      	make mark-manipulation functions take a GtkTextMark* instead of a
      	mark name.
      
      	* gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to
      	GtkTextMarkBody; will be used to detect attempts to delete
      	the permanent marks (insert and selection bound)
      e86329d5
    • Havoc Pennington's avatar
      Remove all references to offscreen flag which was no longer used. · 9ae724bf
      Havoc Pennington authored
      Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c: Remove all references to
      	offscreen flag which was no longer used.
      
      	* gtk/gtkprivate.h (enum): Remove unused flags and compress.
      
      	* gtk/gtkframe.c (gtk_frame_set_label_widget): Check
      	for non-null label_widget->parent.
      
      	* gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
      	which no longer was used.
      
      	* gdk/gdkpango.c (gdk_pango_context_get_info): make static.
      
      	* gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
      	for null arguments.
      
      	* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
      	check for destroyed windows.
      
      Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimmulticontext.c: Add a finalize method and unref
      	the slave context there.
      
      	* gtk/gtkinvisible.[ch]: Make reference counting behavior
      	identical to GtkWindow.
      
      Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* Makefile.am gdk/gdkpango.c: Copy the la...
      9ae724bf