pike.git / src / post_modules / GTK2 / source / gtktextiter.pre

version» Context lines:

pike.git/src/post_modules/GTK2/source/gtktextiter.pre:4:   //! A TextIter.      +GTK2.TextBuffer get_buffer()   //! Returns the W(TextBuffer) this iterator is associated with.   {    pgtk2_pop_n_elems(args);    push_gobjectclass(gtk_text_iter_get_buffer((GtkTextIter *)(THIS->obj)),    pgtk2_text_buffer_program);   }    - void destroy() + void _destruct()   {    if (THIS->obj && THIS->owned)    g_free((GtkTextIter *)(THIS->obj)); // Cannot use gtk_text_iter_free except on iters allocated using gtk_text_iter_copy.    THIS->obj=0;    pgtk2_pop_n_elems(args);    push_int(0);   }      int get_offset()   //! Returns the character offset of an iterator.
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:93:   //! iterable non-character elements in the buffer, such as images.   //! Because images are encoded in the slice, byte and character offsets   //! in the returned array will correspond to bytes offsets in the text   //! buffer. Note that 0xFFFC can occur in normal text as well, so it   //! is not a reliable indicator that a pixbuf or widget is in the buffer.   {    pgtk2_verify_inited();    {    gchar *s;    struct object *o1; -  get_all_args("get_slice",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    s=gtk_text_iter_get_slice((GtkTextIter *)(THIS->obj),    (GtkTextIter *)get_pg2object(o1,pgtk2_text_iter_program));    pgtk2_pop_n_elems(args);    PGTK_PUSH_GCHAR(s);    }   }      string get_text(GTK2.TextIter end)   //! Returns text in the given range. If the range contains non-text   //! elements such as images, the character and byte offsets in the   //! returned string will not correspond to character and bytes offsets   //! in the buffer.   {    pgtk2_verify_inited();    {    gchar *s;    struct object *o1; -  get_all_args("get_text",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    s=gtk_text_iter_get_text((GtkTextIter *)(THIS->obj),    (GtkTextIter *)get_pg2object(o1,pgtk2_text_iter_program));    pgtk2_pop_n_elems(args);    PGTK_PUSH_GCHAR(s);    }   }      string get_visible_slice(GTK2.TextIter end)   //! Like get_slice(), but invisible text is not included.   {    pgtk2_verify_inited();    {    gchar *s;    struct object *o1; -  get_all_args("get_visible_slice",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    s=gtk_text_iter_get_visible_slice((GtkTextIter *)(THIS->obj),    (GtkTextIter *)get_pg2object(o1,pgtk2_text_iter_program));    pgtk2_pop_n_elems(args);    PGTK_PUSH_GCHAR(s);    }   }      string get_visible_text(GTK2.TextIter end)   //! Like get_text(), but invisible text is not include.   {    pgtk2_verify_inited();    {    gchar *s;    struct object *o1; -  get_all_args("get_visible_text",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    s=gtk_text_iter_get_visible_text((GtkTextIter *)(THIS->obj),    (GtkTextIter *)get_pg2object(o1,pgtk2_text_iter_program));    pgtk2_pop_n_elems(args);    PGTK_PUSH_GCHAR(s);    }   }      +GDK2.Pixbuf get_pixbuf()   //! If the element at iter is a pixbuf, it is returned.   {
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:201:   //! If a tag is toggled on at this iterator, then some non-empty range   //! of characters following this iter has that tag applied to it. If a   //! tag is toggled off, then some non-empty range following this iter does   //! not have the tag applied to it.   {    pgtk2_verify_inited();    {    GSList *gsl,*gs2;    int i=0;    INT_TYPE toggled_on; -  get_all_args("get_toggled_tags",args,"%i",&toggled_on); +  get_all_args(NULL,args,"%i",&toggled_on);    pgtk2_pop_n_elems(args);    gsl=gs2=gtk_text_iter_get_toggled_tags((GtkTextIter *)THIS->obj,toggled_on);    while (gs2) {    push_gobject(gs2->data);    i++;    gs2=g_slist_next(gs2);    }    f_aggregate(i);    g_slist_free(gsl);    }
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:239:   //! Returns true if tag is toggled on at exactly this point. If tag is   //! omitted, returns true if any tag is toggled on at this point. Note   //! that begins_tag() returns true if this iter is the start of the tagged   //! range; has_tag() tells you whether an iterator is within a tagged range.   {    pgtk2_verify_inited();    {    struct object *o1 = NULL;    int res;    if (args) -  get_all_args("begins_tag",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    res=gtk_text_iter_begins_tag((GtkTextIter *)THIS->obj,    GTK_TEXT_TAG(get_gobject(o1)));    pgtk2_pop_n_elems(args);    PGTK_PUSH_INT(res);    }   }      int ends_tag(?GTK2.TextTag tag)   //! Returns true if tag is toggled off at exactly this point. If tag is   //! omitted, returns true if any tag is toggled off at this point. Not that   //! ends_tag() returns true if this iter it at the end of the tagged range;   //! has_tag() tells you whether an iterator is within a tagged range.   {    pgtk2_verify_inited();    {    struct object *o1 = NULL;    int res;    if (args) -  get_all_args("ends_tag",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    res=gtk_text_iter_ends_tag((GtkTextIter *)THIS->obj,    GTK_TEXT_TAG(get_gobject(o1)));    pgtk2_pop_n_elems(args);    PGTK_PUSH_INT(res);    }   }      int toggles_tag(?GTK2.TextTag tag)   //! This is equivalent to begins_tag()||ends_tag(), i.e it tells you   //! whether a range with tag applied to it beings or ends here.   {    pgtk2_verify_inited();    {    struct object *o1 = NULL;    int res;    if (args) -  get_all_args("toggles_tag",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    res=gtk_text_iter_toggles_tag((GtkTextIter *)THIS->obj,    GTK_TEXT_TAG(get_gobject(o1)));    pgtk2_pop_n_elems(args);    PGTK_PUSH_INT(res);    }   }      int has_tag(GTK2.TextTag tag)   //! Returns true if this iterator is within a range tagged with tag.   {    pgtk2_verify_inited();    {    struct object *o1;    int res; -  get_all_args("has_tag",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    res=gtk_text_iter_has_tag((GtkTextIter *)THIS->obj,    GTK_TEXT_TAG(get_gobject(o1)));    pgtk2_pop_n_elems(args);    PGTK_PUSH_INT(res);    }   }      array get_tags()   //! Returns a list of tags that apply to iter, in ascending order of   //! priority (highest-priority tags are last).
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:335:   //! <p>   //! You don't want to use this function to decide whether text can be   //! inserted here, because for insertion you don't want to know whether   //! the char at iter is inside an editable range, you want to know whether   //! a new characer inserted here would be inside an editable range. Use   //! can_insert() to handle this case.   {    pgtk2_verify_inited();    {    INT_TYPE i; -  get_all_args("editable",args,"%i",&i); +  get_all_args(NULL,args,"%i",&i);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_editable((GtkTextIter *)THIS->obj,i));    }   }      int can_insert(int default_editability)   //! Considering the default editability of the buffer, and tags that   //! affect editability, determines whether text inserted here would be   //! editabled. If text inserted here would be editabled then the user   //! should be allowed to insert text here. insert_interactive() uses this   //! function to decide whether insertions are allowed at a given position.   {    pgtk2_verify_inited();    {    INT_TYPE i; -  get_all_args("can_insert",args,"%i",&i); +  get_all_args(NULL,args,"%i",&i);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_can_insert((GtkTextIter *)THIS->obj,i));    }   }      int starts_word()   //! Determines whether this iter begins a natural-language word. Word   //! breaks are determined by Pango and should be correct for nearly any   //! language (if not, the correct fix would be to the Pango word break   //! algorithms).
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:532:   int forward_chars(int count)   //! Moves count characters if possible (if count would move past the start or   //! end of the buffer, moves to the start or end of the buffer). The return   //! value indicates whether the new position is different from its original   //! position, and dereferenceable (the last iterator in the buffer is not).   //! If count is 0, the function does nothing and returns false.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("forward_chars",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_forward_chars((GtkTextIter *)THIS->obj,count));    }   }      int backward_chars(int count)   //! Moves count characters backward, if possible (if count would mmove past   //! the start or end of the buffer, moves to the start or end of the buffer).   //! The return value indicates whether the iterator moved onto a   //! dereferenceable position; if it didn't move, or moved onto the end   //! iterator, then false is returned. If count is 0, the function does   //! nothing and returns false.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("backward_chars",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_chars((GtkTextIter *)THIS->obj,count));    }   }      int forward_line()   //! Moves to the start of the next line. Returns true if there was a next   //! line to move to, and false if this iter was simply moved to the end   //! of the buffer and is now not dereferenceable, or if it was already at   //! the end of the buffer.
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:592:   //! start or end of the buffer, moves to the start or end of the buffer).   //! The return value indicates whether the iterator moved onto a   //! dereferenceable position; if the iterator didn't move, or moved onto the   //! end iterator, then false is returned. If count is 0, the function does   //! nothing and returns false. If count is negative, moves backward by   //! 0 - count lines.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("forward_lines",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_forward_lines((GtkTextIter *)THIS->obj,count));    }   }      int backward_lines(int count)   //! Moves count lines backward.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("backward_lines",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_lines((GtkTextIter *)THIS->obj,count));    }   }      int forward_word_ends(int count)   //! Calls forward_word_end() up to count times.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("forward_word_ends",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_forward_word_ends((GtkTextIter *)THIS->obj,count));    }   }      int backward_word_starts(int count)   //! Calls backward_word_start() up to count times.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("backward_word_starts",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_word_starts((GtkTextIter *)THIS->obj,count));    }   }      int forward_word_end()   //! Moves forward to the next word end.   {    pgtk2_verify_inited();    pgtk2_pop_n_elems(args);
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:680:    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_cursor_position((GtkTextIter *)THIS->obj));   }      int forward_cursor_positions(int count)   //! Moves up to count cursor positions.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("forward_cursor_positions",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_forward_cursor_positions((GtkTextIter *)THIS->obj,count));    }   }      int backward_cursor_positions(int count)   //! Moves up to count cursor positions.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("backward_cursor_positions",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_cursor_positions((GtkTextIter *)THIS->obj,count));    }   }      int backward_sentence_start()   //! Moves backward to the previous sentence start.   {    pgtk2_verify_inited();    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_sentence_start((GtkTextIter *)THIS->obj));   }      int backward_sentence_starts(int count)   //! Call backward_sentence_start() count times.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("backward_sentence_starts",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_sentence_starts((GtkTextIter *)THIS->obj,count));    }   }      int forward_sentence_end()   //! Moves forward to the next sentence end.   {    pgtk2_verify_inited();    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_forward_sentence_end((GtkTextIter *)THIS->obj));   }      int forward_sentence_ends(int count)   //! Call forward_sentence_ends() count times.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("forward_sentence_ends",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_forward_sentence_ends((GtkTextIter *)THIS->obj,count));    }   }      require gtk24;   int forward_visible_word_ends(int count)   //! Call forward_visible_word_end() count times.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("forward_visible_word_ends",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_forward_visible_word_ends((GtkTextIter *)THIS->obj,count));    }   }      int backward_visible_word_starts(int count)   //! Call backward_visible_word_start() count times   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("backward_visible_word_starts",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_visible_word_starts((GtkTextIter *)THIS->obj,count));    }   }      int forward_visible_word_end()   //! Moves forward to the next visible word end.   {    pgtk2_verify_inited();    pgtk2_pop_n_elems(args);
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:801:    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_visible_cursor_position((GtkTextIter *)THIS->obj));   }      int forward_visible_cursor_positions(int count)   //! Moves up to count visible cursor positions.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("forward_visible_cursor_positions",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_forward_visible_cursor_positions(    (GtkTextIter *)THIS->obj,count));    }   }      int backward_visible_cursor_positions(int count)   //! Moves up to count visible cursor positions.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("backward_visible_cursor_positions",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_visible_cursor_positions(    (GtkTextIter *)THIS->obj,count));    }   }   endrequire;      require gtk28;   int forward_visible_line()   //! Moves to the start of the next visible line. Returns TRUE if there was a
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:860:   //! the start or end of the buffer, moves to the start or end of the buffer).   //! The return value indicates whether the iterator moved onto a   //! dereferenceable position; if the iterator didn't move, or moved onto the   //! end iterator, then FALSE is returned. If count is 0, the function does   //! nothing and returns FALSE. If count is negative, moves backward by   //! 0 - count lines.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("forward_visible_lines",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_forward_visible_lines((GtkTextIter *)THIS->obj,count));    }   }      int backward_visible_lines(int count)   //! Moves count visible lines backward, if possible (if count would move past   //! the start or end of the buffer, moves to the start or end of the buffer).   //! The return value indicates whether the iterator moved onto a   //! dereferenceable position; if the iterator didn't move, or moved onto the   //! end iterator, then FALSE is returned. If count is 0, the function does   //! nothing and returns FALSE. If count is negative, moves forward by 0 -   //! count lines.   {    pgtk2_verify_inited();    {    INT_TYPE count; -  get_all_args("backward_visible_lines",args,"%i",&count); +  get_all_args(NULL,args,"%i",&count);    pgtk2_pop_n_elems(args);    push_int(gtk_text_iter_backward_visible_lines((GtkTextIter *)THIS->obj,count));    }   }   endrequire;      void set_offset(int char_offset)   //! Sets to point to char_offset. char_offset counts from the start of the   //! entire text buffer, starting with 0.   {    pgtk2_verify_inited();    {    INT_TYPE ch; -  get_all_args("set_offset",args,"%i",&ch); +  get_all_args(NULL,args,"%i",&ch);    gtk_text_iter_set_offset((GtkTextIter *)THIS->obj,ch);    }    RETURN_THIS();   }      void set_line(int line_number)   //! Moves the iterator to the start of the line line_number. If line_number   //! is negative or larger than the number of lines in the buffer, moves to   //! the start of the last line in the buffer.   {    pgtk2_verify_inited();    {    INT_TYPE line_number; -  get_all_args("set_line",args,"%i",&line_number); +  get_all_args(NULL,args,"%i",&line_number);    gtk_text_iter_set_line((GtkTextIter *)THIS->obj,line_number);    }    RETURN_THIS();   }      void set_line_offset(int offset)   //! Moves iterator within a line, to a new character (not byte) offset. The   //! given character offset must be less than or equal to the number of   //! characters in the line; if equal, iterator moves to the start of the   //! next line. See set_line_index() if you have a byte index rather than   //! a character offset.   {    pgtk2_verify_inited();    {    INT_TYPE offset; -  get_all_args("set_line_offset",args,"%i",&offset); +  get_all_args(NULL,args,"%i",&offset);    gtk_text_iter_set_line_offset((GtkTextIter *)THIS->obj,offset);    }    RETURN_THIS();   }      void set_line_index(int index)   //! Same as set_line_offset(), but works with a byte index. The given   //! byte index must be at the start of a character, it can't be in the   //! middle of a UTF-8 encoded character.   {    pgtk2_verify_inited();    {    INT_TYPE index; -  get_all_args("set_line_index",args,"%i",&index); +  get_all_args(NULL,args,"%i",&index);    gtk_text_iter_set_line_index((GtkTextIter *)THIS->obj,index);    }    RETURN_THIS();   }      void set_visible_line_index(int index)   //! Same as set_line_index(), but works with visible byte index. The given   //! byte index must be at the start of a character, it can't be in the   //! middle of a UTF-8 encoded character.   {    pgtk2_verify_inited();    {    INT_TYPE index; -  get_all_args("set_visible_line_index",args,"%i",&index); +  get_all_args(NULL,args,"%i",&index);    gtk_text_iter_set_visible_line_index((GtkTextIter *)THIS->obj,index);    }    RETURN_THIS();   }      void set_visible_line_offset(int offset)   //! Like set_line_offset(), but the offset is in visible characters, i.e.   //! text with a tag making it invisible is not counted in the offset.   {    pgtk2_verify_inited();    {    INT_TYPE index; -  get_all_args("set_visible_line_offset",args,"%i",&index); +  get_all_args(NULL,args,"%i",&index);    gtk_text_iter_set_visible_line_offset((GtkTextIter *)THIS->obj,index);    }    RETURN_THIS();   }      void forward_to_end()   //! Moves forward to the "end iterator", which points one past the last   //! valid character in the buffer. get_char() called on the end iterator   //! returns 0, which is convenient for writing loops.   {
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:1004:   //! Moves forward to the next toggle (on or off) of tag, or to the next   //! toggle of any tag if tag is omitted. If no matching tag toggles are   //! found, returns false, otherwise true. Does not return toggles located   //! at this iter, only toggles after. Sets this iter to the location of   //! the toggle, or to the end of the buffer if no toggle is found.   {    pgtk2_verify_inited();    {    struct object *o1=NULL;    int res; -  get_all_args("forward_to_tag_toggle",args,".%o",&o1); +  get_all_args(NULL,args,".%o",&o1);    res=gtk_text_iter_forward_to_tag_toggle((GtkTextIter *)THIS->obj,    GTK_TEXT_TAG(get_gobject(o1)));    pgtk2_pop_n_elems(args);    PGTK_PUSH_INT(res);    }   }      int backward_to_tag_toggle(?GTK2.TextTag tag)   //! Moves backward to the next toggle. See forward_to_tag_toggle().   {    pgtk2_verify_inited();    {    struct object *o1=NULL;    int res; -  get_all_args("backward_to_tag_toggle",args,".%o",&o1); +  get_all_args(NULL,args,".%o",&o1);    res=gtk_text_iter_backward_to_tag_toggle((GtkTextIter *)THIS->obj,    GTK_TEXT_TAG(get_gobject(o1)));    pgtk2_pop_n_elems(args);    PGTK_PUSH_INT(res);    }   }      array forward_search(string str, int flags, ?GTK2.TextIter limit)   //! Searches forward for str. Returns two GTK2.TextIter objects, one   //! pointing to the first character of the match, and the second pointing
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:1051:   {    pgtk2_verify_inited();    {    GtkTextIter *match_start,*match_end,*limit=NULL;    GtkTextBuffer *tb;    const gchar *str;    INT_TYPE flags;    struct object *o1 = NULL;    int res;    -  get_all_args("forward_search",args,"%s%i.%o",&str,&flags,&o1); +  get_all_args(NULL,args,"%s%i.%o",&str,&flags,&o1);       match_start=g_malloc(sizeof(GtkTextIter));    if (match_start==NULL)    SIMPLE_OUT_OF_MEMORY_ERROR("forward_search",sizeof(GtkTextIter));    match_end=g_malloc(sizeof(GtkTextIter));    if (match_end==NULL)    SIMPLE_OUT_OF_MEMORY_ERROR("forward_search",sizeof(GtkTextIter));    tb=gtk_text_iter_get_buffer((GtkTextIter *)THIS->obj);    gtk_text_buffer_get_start_iter(tb,match_start);    gtk_text_buffer_get_end_iter(tb,match_end);
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:1086:   {    pgtk2_verify_inited();    {    GtkTextIter *match_start,*match_end,*limit=NULL;    GtkTextBuffer *tb;    const gchar *str;    INT_TYPE flags;    struct object *o1 = NULL;    int res;    -  get_all_args("backward_search",args,"%s%i.%o",&str,&flags,&o1); +  get_all_args(NULL,args,"%s%i.%o",&str,&flags,&o1);       match_start=g_malloc(sizeof(GtkTextIter));    if (match_start==NULL)    SIMPLE_OUT_OF_MEMORY_ERROR("backward_search",sizeof(GtkTextIter));    match_end=g_malloc(sizeof(GtkTextIter));    if (match_end==NULL)    SIMPLE_OUT_OF_MEMORY_ERROR("backward_search",sizeof(GtkTextIter));    tb=gtk_text_iter_get_buffer((GtkTextIter *)THIS->obj);    gtk_text_buffer_get_start_iter(tb,match_start);    gtk_text_buffer_get_end_iter(tb,match_end);
pike.git/src/post_modules/GTK2/source/gtktextiter.pre:1120:   //! Tests whether two iterators are equal, using the fastest possible   //! mechanism. This function is very fast; you can expect it to perform   //! better than e.g. getting the character offset for each iterator and   //! comparing offsets yourself. Also, it's a bit faster than compare().   {    pgtk2_verify_inited();    {    struct object *o1;    int res;    GtkTextIter *t1,*t2; -  get_all_args("equal",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    t1=(GtkTextIter *)THIS->obj;    t2=(GtkTextIter *)get_pg2object(o1,pgtk2_text_iter_program);    res=gtk_text_iter_equal(t1,t2);    pgtk2_pop_n_elems(args);    push_int(res);    }   }      int compare(GTK2.TextIter rhs)   //! Returns -1 if this iterator is less than rhs, 1 if greater than,   //! and 0 if they're equal. Ordering is in character offset order, i.e.   //! the first character in the buffer is less than the second character   //! in the buffer.   {    pgtk2_verify_inited();    {    struct object *o1;    int res; -  get_all_args("compare",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    res=gtk_text_iter_equal((GtkTextIter *)THIS->obj,    (GtkTextIter *)get_pg2object(o1,pgtk2_text_iter_program));    pgtk2_pop_n_elems(args);    PGTK_PUSH_INT(res);    }   }      int in_range(GTK2.TextIter start, GTK2.TextIter end)   //! Checks whether this iterator falls in the range [start,end). start   //! and end must be in ascending order.   {    pgtk2_verify_inited();    {    struct object *o1,*o2;    int res; -  get_all_args("in_range",args,"%o%o",&o1,&o2); +  get_all_args(NULL,args,"%o%o",&o1,&o2);    res=gtk_text_iter_in_range((GtkTextIter *)THIS->obj,    (GtkTextIter *)get_pg2object(o1,pgtk2_text_iter_program),    (GtkTextIter *)get_pg2object(o2,pgtk2_text_iter_program));    pgtk2_pop_n_elems(args);    PGTK_PUSH_INT(res);    }   }      void order(GTK2.TextIter second)   //! Swaps this iter for second if second comes first in the buffer. That is,   //! ensures that this iterator and second are in sequence. Most text   //! buffer functions that take a range call this automatically on your   //! behalf, so there's no real reason to call it yourself in those cases.   //! There are some exceptions, such as in_range(), that expect a   //! pre-sorted range.   {    pgtk2_verify_inited();    {    struct object *o1; -  get_all_args("order",args,"%o",&o1); +  get_all_args(NULL,args,"%o",&o1);    gtk_text_iter_order((GtkTextIter *)THIS->obj,    (GtkTextIter *)get_pg2object(o1,pgtk2_text_iter_program));    }    RETURN_THIS();   }