int GGI_stubs_drawvline(struct ggi_visual *vis, int x, int y, int h) { LIBGGICLIP_XYH(vis, x, y, h); for (; h > 0; h--, y++) { _ggiDrawPixelNC(vis, x, y); } return 0; }
int GGI_X_drawvline_slave(ggi_visual *vis, int x, int y, int h) { ggi_x_priv *priv; priv = GGIX_PRIV(vis); LIBGGICLIP_XYH(vis, x, y, h); priv->slave->opdraw->drawvline_nc(priv->slave, x, y, h); GGI_X_DIRTY(vis, x, y, 1, h); return 0; }
int GGI_X_putvline_slave(ggi_visual *vis, int x, int y, int h, const void *data) { ggi_x_priv *priv; priv = GGIX_PRIV(vis); /* Use slave's clipping for depth adjustment */ priv->slave->opdraw->putvline(priv->slave, x, y, h, data); LIBGGICLIP_XYH(vis, x, y, h); GGI_X_DIRTY(vis, x, y, 1, h); return 0; }
int GGI_X_drawvline_slave_draw(ggi_visual *vis, int x, int y, int h) { ggi_x_priv *priv; priv = GGIX_PRIV(vis); LIBGGICLIP_XYH(vis, x, y, h); GGI_X_CLEAN(vis, x, y, 1, h); priv->slave->opdraw->drawvline_nc(priv->slave, x, y, h); y = GGI_X_WRITE_Y; GGI_X_LOCK_XLIB(vis); XDrawLine(priv->disp, priv->drawable, priv->gc, x, y, x, y+h-1); GGI_X_MAYBE_SYNC(vis); GGI_X_UNLOCK_XLIB(vis); return 0; }