XEmacs 21.2.25 "Hephaestus".
[chise/xemacs-chise.git.1] / src / gutter.h
index d025865..ccb8746 100644 (file)
@@ -25,8 +25,7 @@ Boston, MA 02111-1307, USA.  */
 
 #include "specifier.h"
 
-#define DEVICE_SUPPORTS_GUTTERS_P(d)           \
-  (HAS_DEVMETH_P ((d), output_frame_gutters))
+#define DEVICE_SUPPORTS_GUTTERS_P(d) HAS_DEVMETH_P (d, output_frame_gutters)
 
 DECLARE_SPECIFIER_TYPE (gutter);
 #define XGUTTER_SPECIFIER(x) XSPECIFIER_TYPE (x, gutter)
@@ -40,12 +39,16 @@ DECLARE_SPECIFIER_TYPE (gutter);
 
 enum gutter_pos
 {
-  TOP_GUTTER,
-  BOTTOM_GUTTER,
-  LEFT_GUTTER,
-  RIGHT_GUTTER
+  TOP_GUTTER     = 0,
+  BOTTOM_GUTTER  = 1,
+  LEFT_GUTTER    = 2,
+  RIGHT_GUTTER   = 3
 };
 
+/* Iterate over all possible gutter positions */
+#define GUTTER_POS_LOOP(var) \
+for (var = (enum gutter_pos) 0; var < 4; var = (enum gutter_pos) (var + 1))
+
 extern Lisp_Object Qgutter;
 
 extern Lisp_Object Vgutter_size[4];
@@ -57,6 +60,7 @@ void init_global_gutters (struct device *d);
 void free_frame_gutters (struct frame *f);
 void redraw_exposed_gutters (struct frame *f, int x, int y, int width,
                             int height);
+void reset_gutter_display_lines (struct frame* f);
 
 #define WINDOW_GUTTER_BORDER_WIDTH(w, pos) \
 (NILP ((w)->gutter_border_width[pos]) ? 0 : XINT ((w)->gutter_border_width[pos]))