*** empty log message ***
authorroot <root>
Tue, 3 Jan 2006 02:01:27 +0000 (02:01 +0000)
committerroot <root>
Tue, 3 Jan 2006 02:01:27 +0000 (02:01 +0000)
src/rxvtperl.xs
src/urxvt.pm

index a6d18c3..4bd55e5 100644 (file)
@@ -298,6 +298,7 @@ PROTOTYPES: ENABLE
 BOOT:
 {
 # define set_hookname(sym) av_store (hookname, PP_CONCAT(HOOK_, sym), newSVpv (PP_STRINGIFY(sym), 0))
+# define export_const(name) newCONSTSUB (gv_stashpv ("urxvt", 1), #name, newSViv (name));
   AV *hookname = get_av ("urxvt::HOOKNAME", 1);
   set_hookname (INIT);
   set_hookname (RESET);
@@ -316,7 +317,13 @@ BOOT:
   set_hookname (REFRESH_END);
   set_hookname (KEYBOARD_COMMAND);
 
-  newCONSTSUB (gv_stashpv ("urxvt", 1), "DEFAULT_RSTYLE", newSViv (DEFAULT_RSTYLE));
+  export_const (DEFAULT_RSTYLE);
+  export_const (OVERLAY_RSTYLE);
+  export_const (RS_Bold);
+  export_const (RS_Italic);
+  export_const (RS_Blink);
+  export_const (RS_RVid);
+  export_const (RS_Uline);
 
   sv_setpv (get_sv ("urxvt::LIBDIR", 1), LIBDIR);
 }
@@ -343,6 +350,34 @@ NOW ()
         OUTPUT:
         RETVAL
 
+int
+GET_BASEFG (int rend)
+       CODE:
+        RETVAL = GET_BASEFG (rend);
+       OUTPUT:
+        RETVAL
+
+int
+GET_BASEBG (int rend)
+       CODE:
+        RETVAL = GET_BASEBG (rend);
+       OUTPUT:
+        RETVAL
+
+int
+SET_FGCOLOR (int rend, int color)
+       CODE:
+        RETVAL = SET_FGCOLOR (rend, color);
+       OUTPUT:
+        RETVAL
+
+int
+SET_BGCOLOR (int rend, int color)
+       CODE:
+        RETVAL = SET_BGCOLOR (rend, color);
+       OUTPUT:
+        RETVAL
+
 MODULE = urxvt             PACKAGE = urxvt::term
 
 int
index b3a0f08..620166b 100644 (file)
@@ -61,7 +61,7 @@ overlays or changes.
 
 =item simple-overlay-clock
 
-Displays a digital clock using the built-in overlay (colorful, useless).
+Displays a digital clock using the built-in overlay (colourful, useless).
 
 =back
 
@@ -196,6 +196,48 @@ correct place, e.g. on stderr of the connecting urxvtc client.
 
 Returns the "current time" (as per the event loop).
 
+=head2 RENDITION
+
+Rendition bitsets contain information about colour, font, font styles and
+similar information for each screen cell.
+
+The following "macros" deal with changes in rendition sets. You should
+never just create a bitset, you should always modify an existing one,
+as they contain important information required for correct operation of
+rxvt-unicode.
+
+=over 4
+
+=item $rend = urxvt::DEFAULT_RSTYLE
+
+Returns the default rendition, as used when the terminal is starting up or
+being reset. Useful as a base to start when creating renditions.
+
+=item $rend = urxvt::OVERLAY_RSTYLE
+
+Return the rendition mask used for overlays by default.
+
+=item $rendbit = urxvt::RS_Bold, RS_Italic, RS_Blink, RS_RVid, RS_Uline
+
+Return the bit that enabled bold, italic, blink, reverse-video and
+underline, respectively. To enable such a style, just or it onto the
+bitset.
+
+=item $foreground = urxvt::GET_BASEFG $rend
+
+=item $background = urxvt::GET_BASEBG $rend
+
+Return the foreground/background colour index, respectively.
+
+=item $rend = urxvt::SET_FGCOLOR ($rend, $new_colour)
+
+=item $rend = urxvt::SET_BGCOLOR ($rend, $new_colour)
+
+Replace the foreground/background colour in the rendition mask with the
+specified one.
+
+=back
+
 =cut
 
 package urxvt;
@@ -468,7 +510,7 @@ line C<< -$term->nsaved >>.
 
 If C<$new_text> is specified, it will replace characters in the current
 line, starting at column C<$start_col> (default C<0>), which is useful
-to replace only parts of a line. The font iindex in the rendition will
+to replace only parts of a line. The font index in the rendition will
 automatically be updated.
 
 C<$text> is in a special encoding: tabs and wide characters that use more
@@ -492,7 +534,7 @@ styles and similar information. See also C<< $term->ROW_t >>.
 
 When setting rendition, the font mask will be ignored.
 
-See the section on RENDITION, below.
+See the section on RENDITION, above.
 
 =item $length = $term->ROW_l ($row_number[, $new_length])
 
@@ -513,27 +555,6 @@ C<< $term->ROW_t >> for details.
 
 =back
 
-=head2 RENDITION
-
-Rendition bitsets contain information about colour, font, font styles and
-similar information for each screen cell.
-
-The following "macros" deal with changes in rendition sets. You should
-never just create a bitset, you should always modify an existing one,
-as they contain important information required for correct operation of
-rxvt-unicode.
-
-=over 4
-
-=item $rend = urxvt::DEFAULT_RSTYLE
-
-Returns the default rendition, as used when the terminal is starting up or
-being reset. Useful as a base
-
-=back
-
-=cut
-
 =head2 The C<urxvt::timer> Class
 
 This class implements timer watchers/events. Time is represented as a