src/solaris/classes/sun/java2d/xr/MaskTileManager.java

Print this page

        

*** 52,65 **** XRBackend con; int maskPixmap; int maskPicture; long maskGC; - int lineMaskPixmap; - int lineMaskPicture; - long drawLineGC; - long clearLineGC; public MaskTileManager(XRCompositeManager xrMgr, int parentXid) { tileList = new ArrayList<MaskTile>(); this.xrMgr = xrMgr; this.con = xrMgr.getBackend(); --- 52,61 ----
*** 69,106 **** con.renderRectangle(maskPicture, XRUtils.PictOpClear, new XRColor(Color.black), 0, 0, MASK_SIZE, MASK_SIZE); maskGC = con.createGC(maskPixmap); con.setGCExposures(maskGC, false); - - lineMaskPixmap = con.createPixmap(parentXid, 8, MASK_SIZE, MASK_SIZE); - lineMaskPicture = - con.createPicture(lineMaskPixmap, XRUtils.PictStandardA8); - con.renderRectangle(lineMaskPicture, XRUtils.PictOpClear, - new XRColor(Color.black), 0, 0, MASK_SIZE, MASK_SIZE); - - drawLineGC = con.createGC(lineMaskPixmap); - con.setGCExposures(drawLineGC, false); - con.setGCForeground(drawLineGC, 255); - - clearLineGC = con.createGC(lineMaskPixmap); - con.setGCExposures(clearLineGC, false); - con.setGCForeground(clearLineGC, 0); - } - - /** - * Adds a rectangle to the mask. - */ - public void addRect(int x, int y, int width, int height) { - mainTile.addRect(x, y, width, height); - } - - /** - * Adds a line to the mask. - */ - public void addLine(int x1, int y1, int x2, int y2) { - mainTile.addLine(x1, y1, x2, y2); } /** * Transfers the geometry stored (rectangles, lines) to one or more masks, * and renders the result to the destination surface. --- 65,74 ----
*** 322,327 **** --- 290,302 ---- if (rects.getY(index) < 0) { rects.setHeight(index, rects.getHeight(index) + rects.getY(index)); rects.setY(index, 0); } } + + /** + * @return MainTile to which rectangles are added before composition. + */ + public MaskTile getMainTile() { + return mainTile; + } }