[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz gzz/client/GraphicsAPI.java gzz/client/awt/...
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] gzz gzz/client/GraphicsAPI.java gzz/client/awt/... |
Date: |
Wed, 11 Dec 2002 01:15:31 -0500 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Tuomas J. Lukka <address@hidden> 02/12/11 01:15:29
Modified files:
gzz/client : GraphicsAPI.java
gzz/client/awt : AWTAPI.java
test/tools : gfx.py
Log message:
Use off-screen rendering in tests: now tests won't fail just because
you happened to put another window on top of the test window.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/client/GraphicsAPI.java.diff?tr1=1.25&tr2=1.26&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/client/awt/AWTAPI.java.diff?tr1=1.15&tr2=1.16&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/test/tools/gfx.py.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
Patches:
Index: gzz/gzz/client/GraphicsAPI.java
diff -u gzz/gzz/client/GraphicsAPI.java:1.25
gzz/gzz/client/GraphicsAPI.java:1.26
--- gzz/gzz/client/GraphicsAPI.java:1.25 Thu Dec 5 04:29:43 2002
+++ gzz/gzz/client/GraphicsAPI.java Wed Dec 11 01:15:29 2002
@@ -81,6 +81,11 @@
*/
public abstract Window createWindow();
+ /** Create an off-screen rendering surface that does not
+ * get corrupted by other windows.
+ */
+ public abstract RenderingSurface createStableOffscreen(int w, int h) ;
+
/** Obtain a text style object for an abstract font at a given
* size. The parameters are as
* in address@hidden java.awt.Font#Font()}
Index: gzz/gzz/client/awt/AWTAPI.java
diff -u gzz/gzz/client/awt/AWTAPI.java:1.15 gzz/gzz/client/awt/AWTAPI.java:1.16
--- gzz/gzz/client/awt/AWTAPI.java:1.15 Tue Nov 12 04:37:56 2002
+++ gzz/gzz/client/awt/AWTAPI.java Wed Dec 11 01:15:29 2002
@@ -46,6 +46,10 @@
public Window createWindow() {
return new FrameScreen(this);
}
+ public Window createStableOffscreen() {
+ // XXX
+ return new FrameScreen(this);
+ }
public TextStyle getTextStyle(String family, int style, int size) {
return new RawTextStyle(new ScalableFont(family, style, size), null);
}
Index: gzz/test/tools/gfx.py
diff -u gzz/test/tools/gfx.py:1.13 gzz/test/tools/gfx.py:1.14
--- gzz/test/tools/gfx.py:1.13 Thu Dec 5 20:16:18 2002
+++ gzz/test/tools/gfx.py Wed Dec 11 01:15:29 2002
@@ -9,10 +9,33 @@
print dir(gzz)
print dir(gzz.client)
-didRender = 0
+_didRender = 0
-win = gzz.client.GraphicsAPI.getInstance().createWindow()
-win.setLocation(0, 0, 500, 500)
+_realwin = gzz.client.GraphicsAPI.getInstance().createWindow()
+_realwin.setLocation(0, 0, 600, 600)
+
+if gzz.client.GraphicsAPI.getInstance().getTypeString() == "gl":
+ win = gzz.client.GraphicsAPI.getInstance().createStableOffscreen(500, 500)
+ from gzz.gfx.gl import GL, GLCache, GLRen
+ _buf = GL.createByteVector(500*500*3)
+ _drawbufvs = _realwin.createVobScene()
+ _drawbufvs.map.put(SolidBgVob(Color(0, 0, 0.2)))
+ _drawbufvs.map.put(GLCache.getCallList("""
+ Disable TEXTURE_2D
+ """))
+ cs = _drawbufvs.translateCS(0, "tr", 0, 501)
+ _drawbufvs.map.put(
+ GLCache.getCallList("""
+ Color 1 1 1 1
+ """)
+ )
+ _drawbufvs.map.put(
+ GLRen.createDrawPixels(
+ 500, 500,
+ "RGB", "UNSIGNED_BYTE", _buf),
+ cs)
+else:
+ win = _realwin
print "GW: ",win
@@ -24,9 +47,15 @@
return win.createVobScene()
def render(vs):
- global didRender
- didRender = 1
+ global _didRender
+ _didRender = 1
win.renderStill(vs, 0)
+ if win != _realwin:
+ _buf.readFromBuffer(win.getRenderingSurface(),
+ "FRONT", 0, 0, 500, 500,
+ "RGB", "UNSIGNED_BYTE")
+ _realwin.renderStill(_drawbufvs, 0)
+
def getAvgColor(x, y, w, h):
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] gzz gzz/client/GraphicsAPI.java gzz/client/awt/...,
Tuomas J. Lukka <=