/******************************************************************************* * Copyright (c) 2000, 2008 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.swt.graphics; import org.eclipse.swt.SWT; public final class Region extends Resource { // public Sprite object; public Region () { this(null); } public Region (Device device) { super(device); // object = new Sprite(); // if (object == null) SWT.error(SWT.ERROR_NO_HANDLES); // object.blendMode = BlendMode.LAYER; // object.cacheAsBitmap = true; // init(); } public void add (int[] pointArray) { if (isDisposed()) SWT.error(SWT.ERROR_GRAPHIC_DISPOSED); // if (pointArray == null) SWT.error(SWT.ERROR_NULL_ARGUMENT); // Shape shape = new Shape(); // shape.blendMode = BlendMode.ADD; // Graphics graphics = shape.graphics; // graphics.beginFill(0xFFFFFF, 1); // graphics.moveTo(pointArray[0], pointArray[1]); // for (int i = 2; i < pointArray.length; i += 2) { // graphics.lineTo(pointArray[i], pointArray[i+1]); // } // graphics.lineTo(pointArray[0], pointArray[1]); // object.addChild(shape); } public void add (Rectangle rect) { if (isDisposed()) SWT.error(SWT.ERROR_GRAPHIC_DISPOSED); if (rect == null) SWT.error(SWT.ERROR_NULL_ARGUMENT); add (rect.x, rect.y, rect.width, rect.height); } public void add (int x, int y, int width, int height) { if (isDisposed()) SWT.error(SWT.ERROR_GRAPHIC_DISPOSED); if (width < 0 || height < 0) SWT.error(SWT.ERROR_INVALID_ARGUMENT); // Shape shape = new Shape(); // shape.blendMode = BlendMode.ADD; // Graphics graphics = shape.graphics; // graphics.beginFill(0xFFFFFF, 1); // graphics.drawRect(x, y, width, height); // object.addChild(shape); } public void add (Region region) { } public boolean contains (int x, int y) { return false; } public boolean contains (Point pt) { return false; } void destroy () { // object = null; } public boolean equals (Object object) { if (this == object) return true; if (!(object instanceof Region)) return false; Region rgn = (Region)object; // return object == rgn.object; return super.equals( object ); } public Rectangle getBounds () { // return new Rectangle((int)object.x, (int)object.y, (int)object.width, (int)object.height); return new Rectangle(0,0,10,10); } public int hashCode () { if (isDisposed()) return 0; return super.hashCode(); } public void intersect (Rectangle rect) { } public void intersect (int x, int y, int width, int height) { } public void intersect (Region region) { } public boolean intersects (int x, int y, int width, int height) { return false; } public boolean intersects (Rectangle rect) { return false; } public boolean isDisposed () { // return object == null; return false; } public boolean isEmpty () { if (isDisposed()) SWT.error(SWT.ERROR_GRAPHIC_DISPOSED); // return object.numChildren == 0; return true; } public void subtract (int[] pointArray) { } public void subtract (Rectangle rect) { if (isDisposed()) SWT.error(SWT.ERROR_GRAPHIC_DISPOSED); if (rect == null) SWT.error(SWT.ERROR_NULL_ARGUMENT); subtract (rect.x, rect.y, rect.width, rect.height); } public void subtract (int x, int y, int width, int height) { if (isDisposed()) SWT.error(SWT.ERROR_GRAPHIC_DISPOSED); if (width < 0 || height < 0) SWT.error(SWT.ERROR_INVALID_ARGUMENT); // Shape shape = new Shape(); // shape.blendMode = BlendMode.ERASE; // Graphics graphics = shape.graphics; // graphics.beginFill(0xFFFFFF, 1); // graphics.moveTo(x, y); // graphics.lineTo(x, y + height); // graphics.lineTo(x + width, y + height); // graphics.lineTo(x + width, y); // graphics.lineTo(x, y); // object.addChild(shape); } public void subtract (Region region) { } public void translate (int x, int y) { } public void translate (Point pt) { } public String toString () { if (isDisposed()) return "Region {*DISPOSED*}"; // return "Region {" + object + "}"; return "Region"; } public static Region flex_new (Device device, Object handle) { return null; } }