/***************************************************************************
                            QRegion.java -  description
                             -------------------
    begin                : Wed Nov 21 17:05:56 2001
    copyright            : (C) 2000-2001 Lost Highway Ltd. All rights reserved.
    email                : Lost_Highway@tipitina.demon.co.uk
    generated by         : duke@tipitina on Wed Nov 21 17:05:56 2001, using kalyptus 0.9.
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
***************************************************************************/

package org.kde.qt;

import java.util.*;
import java.lang.Error;

/**

 $Id: QRegion.java,v 1.5 2002/03/04 04:15:59 rdale Exp $

 Definition of QRegion class

 Created : 940514

 Copyright (C) 1992-2000 Trolltech AS.  All rights reserved.

 This file is part of the kernel module of the Qt GUI Toolkit.

 This file may be distributed under the terms of the Q Public License
 as defined by Trolltech AS of Norway and appearing in the file
 LICENSE.QPL included in the packaging of this file.

 This file may be distributed and/or modified under the terms of the
 GNU General Public License version 2 as published by the Free Software
 Foundation and appearing in the file LICENSE.GPL included in the
 packaging of this file.

 Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
 licenses may use this file in accordance with the Qt Commercial License
 Agreement provided with the Software.

 This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
 WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

 See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
   information about Qt Commercial License Agreements.
 See http://www.trolltech.com/qpl/ for QPL licensing information.
 See http://www.trolltech.com/gpl/ for GPL licensing information.

 Contact info@trolltech.com if any conditions of this licensing are
 not clear to you.


 @short 
* $Id:  qt/qregion.
*/
public class  QRegion implements QtSupport {
	private long _qt;
	private boolean _allocatedInJavaWorld = true;

	protected QRegion(Class dummy){}

	private native void newQRegion();
	public QRegion() {
		newQRegion();
	}
	private native void newQRegion( int x, int y, int w, int h, int arg1);
	public QRegion( int x, int y, int w, int h, int arg1) {
		newQRegion( x, y, w, h, arg1);
	}
	private native void newQRegion( int x, int y, int w, int h);
	public QRegion( int x, int y, int w, int h) {
		newQRegion( x, y, w, h);
	}
	private native void newQRegion( QRect arg1, int arg2);
	public QRegion( QRect arg1, int arg2) {
		newQRegion( arg1, arg2);
	}
	private native void newQRegion( QRect arg1);
	public QRegion( QRect arg1) {
		newQRegion( arg1);
	}
	private native void newQRegion( QPointArray arg1, boolean winding);
	public QRegion( QPointArray arg1, boolean winding) {
		newQRegion( arg1, winding);
	}
	private native void newQRegion( QPointArray arg1);
	public QRegion( QPointArray arg1) {
		newQRegion( arg1);
	}
	private native void newQRegion( QRegion arg1);
	public QRegion( QRegion arg1) {
		newQRegion( arg1);
	}
	private native void newQRegion( QBitmap arg1);
	public QRegion( QBitmap arg1) {
		newQRegion( arg1);
	}
	protected native void finalize() throws InternalError;
	public native boolean isNull();
	public native boolean isEmpty();
	public native boolean contains( QPoint p);
	public native boolean contains( QRect r);
	public native void translate( int dx, int dy);
	public native QRegion unite( QRegion arg1);
	public native QRegion intersect( QRegion arg1);
	public native QRegion subtract( QRegion arg1);
	public native QRegion eor( QRegion arg1);
	public native QRect boundingRect();
	public native void setRects( QRect arg1, int arg2);
	public native ArrayList rects();
//	public native int handle();
//	public native int handle();
//	public native RgnHandle handle( boolean require_rgn);
//	public native RgnHandle handle();
//	public native int handle();
	public static final int Rectangle = 0;
	public static final int Ellipse = 1;
}
