]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtktextbtree.h
stylecontext: Do invalidation on first resize container
[~andy/gtk] / gtk / gtktextbtree.h
index 28fe390f0c811e9479d2de2caaad49735eebc3c7..08662188483559283981abf810580d6f29919a2d 100644 (file)
@@ -1,5 +1,29 @@
-#ifndef GTK_TEXT_BTREE_H
-#define GTK_TEXT_BTREE_H
+/* GTK - The GIMP Toolkit
+ * gtktextbtree.h Copyright (C) 2000 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+/*
+ * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
+ * file for a list of people on the GTK+ Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+#ifndef __GTK_TEXT_BTREE_H__
+#define __GTK_TEXT_BTREE_H__
 
 #if 0
 #define DEBUG_VALIDATION_AND_SCROLLING
@@ -18,9 +42,7 @@
 #include <gtk/gtktextsegment.h>
 #include <gtk/gtktextiter.h>
 
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
+G_BEGIN_DECLS
 
 GtkTextBTree  *_gtk_text_btree_new        (GtkTextTagTable *table,
                                            GtkTextBuffer   *buffer);
@@ -68,7 +90,8 @@ void         _gtk_text_btree_remove_view       (GtkTextBTree      *tree,
                                                 gpointer           view_id);
 void         _gtk_text_btree_invalidate_region (GtkTextBTree      *tree,
                                                 const GtkTextIter *start,
-                                                const GtkTextIter *end);
+                                                const GtkTextIter *end,
+                                                gboolean           cursors_only);
 void         _gtk_text_btree_get_view_size     (GtkTextBTree      *tree,
                                                 gpointer           view_id,
                                                 gint              *width,
@@ -175,12 +198,13 @@ void                _gtk_text_btree_place_cursor            (GtkTextBTree
                                                              const GtkTextIter  *where);
 void                _gtk_text_btree_select_range            (GtkTextBTree       *tree,
                                                              const GtkTextIter  *ins,
-                                                            const GtkTextIter 
-*bound);
+                                                            const GtkTextIter  *bound);
 gboolean            _gtk_text_btree_mark_is_insert          (GtkTextBTree       *tree,
                                                              GtkTextMark        *segment);
 gboolean            _gtk_text_btree_mark_is_selection_bound (GtkTextBTree       *tree,
                                                              GtkTextMark        *segment);
+GtkTextMark        *_gtk_text_btree_get_insert             (GtkTextBTree       *tree);
+GtkTextMark        *_gtk_text_btree_get_selection_bound            (GtkTextBTree       *tree);
 GtkTextMark        *_gtk_text_btree_get_mark_by_name        (GtkTextBTree       *tree,
                                                              const gchar        *name);
 GtkTextLine *       _gtk_text_btree_first_could_contain_tag (GtkTextBTree       *tree,
@@ -216,6 +240,9 @@ struct _GtkTextLine {
   GtkTextLineSegment *segments; /* First in ordered list of segments
                                  * that make up the line. */
   GtkTextLineData *views;      /* data stored here by views */
+  guchar dir_strong;                /* BiDi algo dir of line */
+  guchar dir_propagated_back;       /* BiDi algo dir of next line */
+  guchar dir_propagated_forward;    /* BiDi algo dir of prev line */
 };
 
 
@@ -312,9 +339,7 @@ void _gtk_text_btree_release_mark_segment (GtkTextBTree       *tree,
 void _gtk_text_btree_notify_will_remove_tag (GtkTextBTree *tree,
                                              GtkTextTag   *tag);
 
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
+G_END_DECLS
 
 #endif