1.8
- almost total conversion to C++. Except for introducing
new bugs, this should not change much.
+ - fix and re-enable background pixmap and inherit pixmap support.
1.7 Fri Jan 30 16:50:11 CET 2004
- further cleanups.
fi])
echo
-if test x$support_inheritpixmap = xyes; then
- support_inheritpixmap=no
- echo "******* transparency support disabled, does not work"
-fi
-if test x$support_xpm = xyes; then
- support_xpm=no
- echo "******* pixmap support disabled, does not work"
-fi
if test x$support_menubar = xyes; then
support_menubar=no
echo "******* menubar support disabled, does not work"
/*--------------------------------*-C-*---------------------------------*
* File: init.c
*----------------------------------------------------------------------*
- * $Id: init.C,v 1.20 2004-01-31 00:20:21 pcg Exp $
+ * $Id: init.C,v 1.21 2004-01-31 02:14:58 pcg Exp $
*
* All portions of code are copyright by their respective author/s.
* Copyright (c) 1992 John Bovey, University of Kent at Canterbury <jdb@ukc.ac.uk>
xcol[1] = PixColors[Color_scroll];
# ifdef PREFER_24BIT
- xcol[0].set (R, 65535, 65535, 65535);
+ xcol[0].set (this, 65535, 65535, 65535);
/* XFreeColors(Xdisplay, XCMAP, &(xcol[0].pixel), 1, ~0); */
# else
- xcol[0].set (WhitePixel(Xdisplay, Xscreen));
+ xcol[0].set (this, WhitePixel (Xdisplay, Xscreen));
# endif
unsigned short pr1, pg1, pb1, pr0, pg0, pb0;
- xcol[0].get (R, pr0, pg0, pb0);
- xcol[1].get (R, pr1, pg1, pb1);
+ xcol[0].get (this, pr0, pg0, pb0);
+ xcol[1].get (this, pr1, pg1, pb1);
/* bottomShadowColor */
- if (!xcol[2].set (pr1 / 2, pg1 / 2, pb1 / 2))
+ if (!xcol[2].set (this, pr1 / 2, pg1 / 2, pb1 / 2))
xcol[2] = PixColors[Color_Black];
PixColors[Color_bottomShadow] = xcol[2];
/* topShadowColor */
- if (!xcol[1].set ( min (pr0, max (pr0 / 5, pr1) * 7 / 5),
+ if (!xcol[1].set (this,
+ min (pr0, max (pr0 / 5, pr1) * 7 / 5),
min (pg0, max (pg0 / 5, pg1) * 7 / 5),
min (pb0, max (pb0 / 5, pb1) * 7 / 5)))
xcol[1] = PixColors[Color_White];
void init_scrollbar_stuff ();
void drawBevel (Drawable d, int x1, int y1, int w, int h);
int scrollbar_show_next (int update, int last_top, int last_bot, int scrollbar_len);
-# define scrollbar_update scrollbar_show_next // HACK
#endif
#if defined(RXVT_SCROLLBAR)
// scrollbar-rxvt.C
void Draw_button (int x, int y, int state, int dirn);
int scrollbar_show_rxvt (int update, int last_top, int last_bot, int scrollbar_len);
-# define scrollbar_update scrollbar_show_rxvt // HACK
#endif
#if defined(XTERM_SCROLLBAR)
// scrollbar-xterm.C
int scrollbar_show_xterm (int update, int last_top, int last_bot, int scrollbar_len);
-# define scrollbar_update scrollbar_show_xterm // HACK
#endif
// scrollbar.C
short style; /* style: rxvt, xterm, next */
short width; /* scrollbar width */
Window win;
- //int (*update)(int, int, int, int);
+ int (rxvt_term::*update)(int, int, int, int);
void setIdle() { state = 1 ; }
void setMotion() { state = 'm'; }
refresh_type &= ~REFRESH_BOUNDS;
}
-#if defined(XPM_BACKGROUND)
+#ifdef XPM_BACKGROUND
must_clear |= (bgPixmap.pixmap != None);
#endif
-#if defined(TRANSPARENT)
+#ifdef TRANSPARENT
must_clear |= ((Options & Opt_transparent) && am_transparent);
#endif
ocrow = oldcursor.row; /* is there an old outline cursor on screen? */
{
if (must_clear)
{
+ CLEAR_CHARS (xpixel, ypixel, count);
+
for (i = 0; i < count; i++) /* don't draw empty strings */
if (text[i] != ' ')
{
font->draw (xpixel, ypixel, text, count, fore, -1);
- goto nodraw;
+ break;
}
-
- CLEAR_CHARS (xpixel, ypixel, count);
-nodraw: ;
}
else
font->draw (xpixel, ypixel, text, count, fore, Color_bg);
/*--------------------------------*-C-*---------------------------------*
* File: scrollbar.c
*----------------------------------------------------------------------*
- * $Id: scrollbar.C,v 1.8 2004-01-31 00:20:21 pcg Exp $
+ * $Id: scrollbar.C,v 1.9 2004-01-31 02:15:02 pcg Exp $
*
* Copyright (c) 1997,1998 mj olesen <olesen@me.QueensU.CA>
* Copyright (c) 1998 Alfredo K. Kojima <kojima@windowmaker.org>
if (scrollBar.style == R_SB_XTERM) {
scrollBar.beg = R_SCROLLBEG_XTERM;
scrollBar.end = R_SCROLLEND_XTERM;
- //scrollBar.update = rxvt_scrollbar_show_xterm;
+ scrollBar.update = &rxvt_term::scrollbar_show_xterm;
}
#endif
#if defined(NEXT_SCROLLBAR)
if (scrollBar.style == R_SB_NEXT) {
scrollBar.beg = R_SCROLLBEG_NEXT;
scrollBar.end = R_SCROLLEND_NEXT;
- //scrollBar.update = rxvt_scrollbar_show_next;
+ scrollBar.update = &rxvt_term::scrollbar_show_next;
}
#endif
#if defined(RXVT_SCROLLBAR)
if (scrollBar.style == R_SB_RXVT) {
scrollBar.beg = R_SCROLLBEG_RXVT;
scrollBar.end = R_SCROLLEND_RXVT;
- //scrollBar.update = rxvt_scrollbar_show_rxvt;
+ scrollBar.update = &rxvt_term::scrollbar_show_rxvt;
}
#endif
return 0;
}
- ret = scrollbar_update (update, last_top, last_bot, scrollbar_len);
+ ret = (this->*scrollBar.update) (update, last_top, last_bot, scrollbar_len);
last_top = scrollBar.top;
last_bot = scrollBar.bot;
-#define VERSION "1.7"
-#define VSTRING "10700"
+#define VERSION "1.8"
+#define VSTRING "10800"
#define DATE "2004-01-30"
#define LSMDATE "30JAN04"
-#define LIBVERSION "1:7:0"
+#define LIBVERSION "1:8:0"
/*--------------------------------*-C-*---------------------------------*
* File: xpm.c
*----------------------------------------------------------------------*
- * $Id: xpm.C,v 1.5 2004-01-31 00:20:21 pcg Exp $
+ * $Id: xpm.C,v 1.6 2004-01-31 02:15:02 pcg Exp $
*
* All portions of code are copyright by their respective author/s.
* Copyright (c) 1997 Carsten Haitzler <raster@zip.com.au>
* Calculate tiling sizes and increments
* At start, p == 0, incr == xpmwidthheight
*/
-void
+/* INTPROTO */
+static void
rxvt_pixmap_incr(unsigned int *wh, unsigned int *xy, float *incr, float *p, unsigned int widthheight, unsigned int xpmwidthheight)
{
unsigned int cwh, cxy;