[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz ./TODO gzz/view/CellContentView.java gzz/vi...
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] gzz ./TODO gzz/view/CellContentView.java gzz/vi... |
Date: |
Fri, 27 Sep 2002 05:07:56 -0400 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Tuomas J. Lukka <address@hidden> 02/09/27 05:07:56
Modified files:
. : TODO
gzz/view : CellContentView.java CellHBox.java
CellView.java CellVobFactory.java
LinebrokenCellContentView.java RowColView.java
TextCellContentView.java
VobVanishingClient.java
gzz/vob : HBox.java HBroken.java LinebreakingUtil.java
Log message:
Breaking the client a little, fixing the client a little... a horrible
kludge, passing along two coordinate systems AND the coordinates. We need to
figure out a better way but no time now.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/TODO.diff?tr1=1.152&tr2=1.153&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/CellContentView.java.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/CellHBox.java.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/CellView.java.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/CellVobFactory.java.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/LinebrokenCellContentView.java.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/RowColView.java.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/TextCellContentView.java.diff?tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/view/VobVanishingClient.java.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/vob/HBox.java.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/vob/HBroken.java.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/vob/LinebreakingUtil.java.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
Patches:
Index: gzz/TODO
diff -c gzz/TODO:1.152 gzz/TODO:1.153
*** gzz/TODO:1.152 Fri Sep 27 03:08:30 2002
--- gzz/TODO Fri Sep 27 05:07:55 2002
***************
*** 46,67 ****
polygons are diced less.
jvk:
- fix irregularquad to work with new coordsys stuff
tjl:
- distorted multi-page PDF view with xu links
- - buoy edges, distorted
- - clean up the xupdf.py file
- texture performance, look at imagecache
- need to create lower-resolution versions since
BASE_LEVEL doesn't quite suffice
- basic code is there, think about this further
when we have a larger structure where this is a problem.
! - better distortion
! - better function
! - adjustable zoom / area by mouse
- entry / link making bindings
- saving
- text
- larger startup structure
- script the demo, determine in detail all features
required. [ almost done ]
- making a connection
--- 46,67 ----
polygons are diced less.
jvk:
- fix irregularquad to work with new coordsys stuff
+ - *1: use nonlinearity() !!!
tjl:
+ - fix rungl
- distorted multi-page PDF view with xu links
- texture performance, look at imagecache
- need to create lower-resolution versions since
BASE_LEVEL doesn't quite suffice
- basic code is there, think about this further
when we have a larger structure where this is a problem.
! - fix client
- entry / link making bindings
- saving
- text
- larger startup structure
+ - clean up the xupdf.py file
+ - buoy edges, distorted (dep. on *1)
- script the demo, determine in detail all features
required. [ almost done ]
- making a connection
***************
*** 106,111 ****
--- 106,114 ----
+ implementation of frame rate counter magic Vob
- distorted multi-page PDF view with xu links
- mouse clicks on buoys to work
+ - better distortion
+ - better function
+ - adjustable zoom / area by mouse
- limit mousing area to the real area of the paper.
- source coordinates for xu links
***************
*** 390,395 ****
--- 393,399 ----
PUBLICATIONS (approximate planned time order)
tjl, jvk, marke: paper paper
+ tjl, jvk: irregularframe note to graphics tools?
benja, tjl: article about urn-5 to First Monday
tjl, ?: nadir, buoys --> HT03? Basically, the 2002 general demo
tjl, jvk: blobs
Index: gzz/gzz/view/CellContentView.java
diff -c gzz/gzz/view/CellContentView.java:1.2
gzz/gzz/view/CellContentView.java:1.3
*** gzz/gzz/view/CellContentView.java:1.2 Mon Aug 19 10:45:48 2002
--- gzz/gzz/view/CellContentView.java Fri Sep 27 05:07:55 2002
***************
*** 33,40 ****
* with different kinds of boxes.
*/
public interface CellContentView {
! String rcsid = "$Id: CellContentView.java,v 1.2 2002/08/19 14:45:48 tjl Exp
$";
/** Place the contents of one cell into the given coord system.
*/
! void place(Cell c, VobScene sc, int coordsys, ViewContext context, float
scale);
}
--- 33,40 ----
* with different kinds of boxes.
*/
public interface CellContentView {
! String rcsid = "$Id: CellContentView.java,v 1.3 2002/09/27 09:07:55 tjl Exp
$";
/** Place the contents of one cell into the given coord system.
*/
! void place(Cell c, VobScene sc, int coordsys_outside, int coordsys_box,
float x, float y, float w, float h, ViewContext context, float scale);
}
Index: gzz/gzz/view/CellHBox.java
diff -c gzz/gzz/view/CellHBox.java:1.3 gzz/gzz/view/CellHBox.java:1.4
*** gzz/gzz/view/CellHBox.java:1.3 Sat Sep 21 19:02:04 2002
--- gzz/gzz/view/CellHBox.java Fri Sep 27 05:07:56 2002
***************
*** 59,66 ****
return cell;
}
! public void place(VobScene vs, int coordsys, float scale) {
! view.place(cell, vs, coordsys, context, scale);
}
public void setPrev(HBox b) {}
--- 59,68 ----
return cell;
}
! public void place(VobScene vs, int coordsys_out, int coordsys_box,
! float x, float y, float w, float h, float scale) {
! view.place(cell, vs, coordsys_out, coordsys_box,
! x, y, w, h, context, scale);
}
public void setPrev(HBox b) {}
Index: gzz/gzz/view/CellView.java
diff -c gzz/gzz/view/CellView.java:1.2 gzz/gzz/view/CellView.java:1.3
*** gzz/gzz/view/CellView.java:1.2 Sat Sep 21 19:02:04 2002
--- gzz/gzz/view/CellView.java Fri Sep 27 05:07:56 2002
***************
*** 28,34 ****
/** A view showing a single cell.
*/
public interface CellView {
! void place(Cell c, VobScene vs, int coordsys, ViewContext context,
float scale);
/** Get the default size of a cell at a given scale.
--- 28,41 ----
/** A view showing a single cell.
*/
public interface CellView {
!
! /** place a single cell
! */
! void place(Cell c, VobScene vs,
! int coordsys_outside,
! int coordsys_box,
! float x, float y, float w, float h, // for now
! ViewContext context,
float scale);
/** Get the default size of a cell at a given scale.
Index: gzz/gzz/view/CellVobFactory.java
diff -c gzz/gzz/view/CellVobFactory.java:1.12
gzz/gzz/view/CellVobFactory.java:1.13
*** gzz/gzz/view/CellVobFactory.java:1.12 Thu Sep 26 10:36:22 2002
--- gzz/gzz/view/CellVobFactory.java Fri Sep 27 05:07:56 2002
***************
*** 46,52 ****
*/
public class CellVobFactory implements CellView {
! public static final String rcsid = "$Id: CellVobFactory.java,v 1.12
2002/09/26 14:36:22 benja Exp $";
public static boolean dbg = false;
private static void p(String s) { if(dbg) pa(s); }
private static void pa(String s) { System.err.println(s); }
--- 46,52 ----
*/
public class CellVobFactory implements CellView {
! public static final String rcsid = "$Id: CellVobFactory.java,v 1.13
2002/09/27 09:07:56 tjl Exp $";
public static boolean dbg = false;
private static void p(String s) { if(dbg) pa(s); }
private static void pa(String s) { System.err.println(s); }
***************
*** 118,126 ****
static Rectangle rect = new Rectangle();
! public void place(Cell c, VobScene vs, int coordsys,
ViewContext context, float scale) {
! addCellVobs(c, vs, coordsys, null, context, scale);
}
/** Add the vobs that make up a cell into the given coordinate
--- 118,129 ----
static Rectangle rect = new Rectangle();
! public void place(Cell c, VobScene vs, int coordsys_out,
! int coordsys_box,
! float x, float y, float w, float h,
ViewContext context, float scale) {
! addCellVobs(c, vs, coordsys_out, coordsys_box,
! x, y, w, h, null, context, scale);
}
/** Add the vobs that make up a cell into the given coordinate
***************
*** 129,135 ****
* @param v The vobscene to add to
* @param cs The coordinate system index
*/
! public void addCellVobs(final Cell c, final VobScene v, int cs, final Vob
content,
final ViewContext context, final float scale) {
setCenter(context.getAccursed());
if(d_clone == null)
--- 132,141 ----
* @param v The vobscene to add to
* @param cs The coordinate system index
*/
! public void addCellVobs(final Cell c, final VobScene v, final int cs_out,
! final int cs_box,
! final float x, final float y, final float w, final float h,
! final Vob content,
final ViewContext context, final float scale) {
setCenter(context.getAccursed());
if(d_clone == null)
***************
*** 167,197 ****
bg.setBg(new Color(bg.getBg().getRGB() & (int)0xff00ffffL));
*/
! v.map.put(bg, cs);
- Vob.RenderInfo info = v.coords.getRenderInfo(cs);
- info.getExtRect(rect);
- final int content_cs = v.coordsys(cs, CONTENT_KEY, 0, 5, 5,
- rect.width-10, rect.height-10);
if(!(GraphicsAPI.getInstance() instanceof gzz.client.gl.GLAPI)) {
if(content != null)
v.map.put(content, content_cs);
else
! ccv.place(c, v, content_cs, context, scale);
} else {
gzz.gfx.gl.Stencil.drawStenciled(
v,
new Runnable() { public void run() {
! v.map.put(bg, content_cs);
}},
null,
null,
new Runnable() { public void run() {
! if(content != null)
! v.map.put(content, content_cs);
! else
! ccv.place(c, v, content_cs, context, scale);
}},
false
);
--- 173,200 ----
bg.setBg(new Color(bg.getBg().getRGB() & (int)0xff00ffffL));
*/
! v.map.put(bg, cs_box);
if(!(GraphicsAPI.getInstance() instanceof gzz.client.gl.GLAPI)) {
+ Vob.RenderInfo info = v.coords.getRenderInfo(cs_box);
+ info.getExtRect(rect);
+ final int content_cs = v.coordsys(cs_box, CONTENT_KEY, 0, 5, 5,
+ rect.width-10, rect.height-10);
if(content != null)
v.map.put(content, content_cs);
else
! ccv.place(c, v, cs_out, content_cs, x, y, w, h, context, scale);
} else {
gzz.gfx.gl.Stencil.drawStenciled(
v,
new Runnable() { public void run() {
! v.map.put(bg, cs_box);
}},
null,
null,
new Runnable() { public void run() {
! ccv.place(c, v, cs_out, cs_box, x, y, w, h, context, scale);
}},
false
);
Index: gzz/gzz/view/LinebrokenCellContentView.java
diff -c gzz/gzz/view/LinebrokenCellContentView.java:1.5
gzz/gzz/view/LinebrokenCellContentView.java:1.6
*** gzz/gzz/view/LinebrokenCellContentView.java:1.5 Sun Sep 22 15:12:37 2002
--- gzz/gzz/view/LinebrokenCellContentView.java Fri Sep 27 05:07:56 2002
***************
*** 38,44 ****
*/
public class LinebrokenCellContentView implements CellContentView {
! public static final String rcsid = "$Id: LinebrokenCellContentView.java,v 1.5
2002/09/22 19:12:37 benja Exp $";
public static boolean dbg = false;
private static void p(String s) { if(dbg) pa(s); }
private static void pa(String s) { System.err.println(s); }
--- 38,44 ----
*/
public class LinebrokenCellContentView implements CellContentView {
! public static final String rcsid = "$Id: LinebrokenCellContentView.java,v 1.6
2002/09/27 09:07:56 tjl Exp $";
public static boolean dbg = false;
private static void p(String s) { if(dbg) pa(s); }
private static void pa(String s) { System.err.println(s); }
***************
*** 60,71 ****
}
static Rectangle box = new Rectangle();
! public void place(Cell c, VobScene vs, int cs, ViewContext context, float
scale) {
HChain ch = getChain(c, scale);
! vs.coords.getRenderInfo(cs).getExtRect(box);
! if(dbg) pa(""+box);
! HBroken br = breaker.breakLines(ch, box.width, scale);
! br.put(vs, cs);
}
protected HChain getChain(Cell c, float scale) {
--- 60,70 ----
}
static Rectangle box = new Rectangle();
! public void place(Cell c, VobScene vs, int coordsys_outside, int
coordsys_box, float x, float y, float w, float h, ViewContext context, float
scale) {
HChain ch = getChain(c, scale);
! if(dbg) pa(""+w);
! HBroken br = breaker.breakLines(ch, w, scale);
! br.put(vs, coordsys_box);
}
protected HChain getChain(Cell c, float scale) {
Index: gzz/gzz/view/RowColView.java
diff -c gzz/gzz/view/RowColView.java:1.3 gzz/gzz/view/RowColView.java:1.4
*** gzz/gzz/view/RowColView.java:1.3 Wed Sep 25 10:45:43 2002
--- gzz/gzz/view/RowColView.java Fri Sep 27 05:07:56 2002
***************
*** 96,102 ****
for(int i=0; i<n[main]; i++)
for(int j=0; j<n[second]; j++)
if(grid[i][j] != null)
! fact.addCellVobs(grid[i][j], sc, cs[i][j], null, context,
1);
Vob conn[] = new Vob[] {
new SimpleConnection(1, 0, -1, 0),
--- 96,105 ----
for(int i=0; i<n[main]; i++)
for(int j=0; j<n[second]; j++)
if(grid[i][j] != null)
! break; // XXX
! /*
! fact.addCellVobs(grid[i][j], into, sc, cs[i][j], null,
context, 1);
! */
Vob conn[] = new Vob[] {
new SimpleConnection(1, 0, -1, 0),
Index: gzz/gzz/view/TextCellContentView.java
diff -c gzz/gzz/view/TextCellContentView.java:1.10
gzz/gzz/view/TextCellContentView.java:1.11
*** gzz/gzz/view/TextCellContentView.java:1.10 Wed Sep 25 10:45:43 2002
--- gzz/gzz/view/TextCellContentView.java Fri Sep 27 05:07:56 2002
***************
*** 37,43 ****
*/
public class TextCellContentView implements CellContentView {
! public static final String rcsid = "$Id: TextCellContentView.java,v 1.10
2002/09/25 14:45:43 tjl Exp $";
public static boolean dbg = false;
private static void p(String s) { if(dbg) pa(s); }
private static void pa(String s) { System.err.println(s); }
--- 37,43 ----
*/
public class TextCellContentView implements CellContentView {
! public static final String rcsid = "$Id: TextCellContentView.java,v 1.11
2002/09/27 09:07:56 tjl Exp $";
public static boolean dbg = false;
private static void p(String s) { if(dbg) pa(s); }
private static void pa(String s) { System.err.println(s); }
***************
*** 52,58 ****
}
static Rectangle box = new Rectangle();
! public void place(Cell c, VobScene v, int cs, ViewContext context, float
scale) {
String s = c.t();
if (s == null) s = "";
int offs = context.getCursorOffset(c);
--- 52,58 ----
}
static Rectangle box = new Rectangle();
! public void place(Cell c, VobScene v, int cs_out, int cs_box, float x,
float y, float w, float h, ViewContext context, float scale) {
String s = c.t();
if (s == null) s = "";
int offs = context.getCursorOffset(c);
***************
*** 77,95 ****
float left = style.getWidth(s.substring(0, center), scale);
float right = width - left;
! v.coords.getRenderInfo(cs).getExtRect(box);
! float middle = box.width / 2.0f;
float skew;
! if(width < box.width) skew = 0;
else if(left < middle) skew = 0;
! else if(right < middle) skew = (- width + box.width);
else skew = (- left + middle);
Object key = (line < KEY.length) ? KEY[line] : new Integer(line+1);
! int skewedcs = v.coordsys(cs, key, 0, skew, 0, width, box.height);
! placeVob(c, v, skewedcs, brBefore, brAfter, offs, context, scale);
}
protected void placeVob(Cell c, VobScene v, int cs, int start, int end,
--- 77,94 ----
float left = style.getWidth(s.substring(0, center), scale);
float right = width - left;
! float middle = w / 2.0f;
float skew;
! if(width < w) skew = 0;
else if(left < middle) skew = 0;
! else if(right < middle) skew = (- width + w);
else skew = (- left + middle);
Object key = (line < KEY.length) ? KEY[line] : new Integer(line+1);
! // int skewedcs = v.coordsys(cs, key, 0, skew, 0, w, box.height);
! placeVob(c, v, cs_box, brBefore, brAfter, offs, context, scale);
}
protected void placeVob(Cell c, VobScene v, int cs, int start, int end,
Index: gzz/gzz/view/VobVanishingClient.java
diff -c gzz/gzz/view/VobVanishingClient.java:1.8
gzz/gzz/view/VobVanishingClient.java:1.9
*** gzz/gzz/view/VobVanishingClient.java:1.8 Thu Sep 26 10:36:22 2002
--- gzz/gzz/view/VobVanishingClient.java Fri Sep 27 05:07:56 2002
***************
*** 165,172 ****
int depth, float rot) {
Vob v = (Vob)o;
int cs = into.coordsys(intoCS, c, depth, x0, y0, x1-x0, y1-y0);
! if(v != null) ((CellVobFactory)cvf).addCellVobs(c, into, cs, v,
context, fract);
! cvf.place(c, into, cs, context, fract);
}
public void connect(Cell cell1, Cell cell2, int dx, int dy) {
--- 165,175 ----
int depth, float rot) {
Vob v = (Vob)o;
int cs = into.coordsys(intoCS, c, depth, x0, y0, x1-x0, y1-y0);
! if(v != null) ((CellVobFactory)cvf).addCellVobs(c, into,
! intoCS, cs,
! (x0+x1)/2, (y0+y1)/2, (x1-x0)/2, (y1-y0)/2, v, context, fract);
! cvf.place(c, into, intoCS, cs,
! (x0+x1)/2, (y0+y1)/2, (x1-x0)/2, (y1-y0)/2, context, fract);
}
public void connect(Cell cell1, Cell cell2, int dx, int dy) {
Index: gzz/gzz/vob/HBox.java
diff -c gzz/gzz/vob/HBox.java:1.5 gzz/gzz/vob/HBox.java:1.6
*** gzz/gzz/vob/HBox.java:1.5 Sat Sep 21 09:04:56 2002
--- gzz/gzz/vob/HBox.java Fri Sep 27 05:07:56 2002
***************
*** 31,37 ****
*/
public interface HBox {
! String rcsid = "$Id: HBox.java,v 1.5 2002/09/21 13:04:56 benja Exp $";
float getWidth(float scale);
--- 31,37 ----
*/
public interface HBox {
! String rcsid = "$Id: HBox.java,v 1.6 2002/09/27 09:07:56 tjl Exp $";
float getWidth(float scale);
***************
*** 59,65 ****
* }
* </pre>
*/
! void place(VobScene vs, int coordsys, float scale);
/** The key for this HBox. XXX */
Object getKey();
--- 59,66 ----
* }
* </pre>
*/
! void place(VobScene vs, int coordsys_out, int coordsys_box,
! float x, float y, float w, float h, float scale);
/** The key for this HBox. XXX */
Object getKey();
***************
*** 74,80 ****
public float getWidth(float scale) { return 0; }
public float getHeight(float scale) { return 0; }
public float getDepth(float scale) { return 0; }
! public void place(VobScene vs, int cs, float scale) {}
public Object getKey() { return null; }
public void setPrev(HBox b) { }
}
--- 75,82 ----
public float getWidth(float scale) { return 0; }
public float getHeight(float scale) { return 0; }
public float getDepth(float scale) { return 0; }
! public void place(VobScene vs, int coordsys_out, int coordsys_box,
! float x, float y, float w, float h, float scale) { }
public Object getKey() { return null; }
public void setPrev(HBox b) { }
}
***************
*** 86,94 ****
protected float scale = 0;
public float getScale() { return scale; }
! public void place(VobScene vs, int cs, float scale) {
this.scale = scale;
! vs.map.put(this, cs);
}
public Object getKey() { return null; /* XXX */ }
--- 88,97 ----
protected float scale = 0;
public float getScale() { return scale; }
! public void place(VobScene vs, int coordsys_out, int coordsys_box,
! float x, float y, float w, float h, float scale) {
this.scale = scale;
! vs.map.put(this, coordsys_box);
}
public Object getKey() { return null; /* XXX */ }
Index: gzz/gzz/vob/HBroken.java
diff -c gzz/gzz/vob/HBroken.java:1.4 gzz/gzz/vob/HBroken.java:1.5
*** gzz/gzz/vob/HBroken.java:1.4 Wed Sep 25 10:45:43 2002
--- gzz/gzz/vob/HBroken.java Fri Sep 27 05:07:56 2002
***************
*** 76,82 ****
Object key = box.getKey();
int cs = vs.coordsys(coordsys, key, 0, x, y, w, h);
! box.place(vs, cs, scale);
x += w;
}
--- 76,82 ----
Object key = box.getKey();
int cs = vs.coordsys(coordsys, key, 0, x, y, w, h);
! box.place(vs, coordsys, cs, x, y, w, h, scale);
x += w;
}
Index: gzz/gzz/vob/LinebreakingUtil.java
diff -c gzz/gzz/vob/LinebreakingUtil.java:1.6
gzz/gzz/vob/LinebreakingUtil.java:1.7
*** gzz/gzz/vob/LinebreakingUtil.java:1.6 Wed Sep 25 10:45:43 2002
--- gzz/gzz/vob/LinebreakingUtil.java Fri Sep 27 05:07:56 2002
***************
*** 27,33 ****
*/
public class LinebreakingUtil {
! String rcsid = "$Id: LinebreakingUtil.java,v 1.6 2002/09/25 14:45:43 tjl Exp
$";
public static final int GLUE_LENGTH = 0;
public static final int GLUE_STRETCH = 1;
--- 27,33 ----
*/
public class LinebreakingUtil {
! String rcsid = "$Id: LinebreakingUtil.java,v 1.7 2002/09/27 09:07:56 tjl Exp
$";
public static final int GLUE_LENGTH = 0;
public static final int GLUE_STRETCH = 1;
***************
*** 119,125 ****
int boxcs = into.coordsys(cs, boxes[i].getKey(), d,
x + wid, y - curhei, curwid, curhei + curdep);
! boxes[i].place(into, boxcs, scale);
wid += curwid;
}
}
--- 119,125 ----
int boxcs = into.coordsys(cs, boxes[i].getKey(), d,
x + wid, y - curhei, curwid, curhei + curdep);
! boxes[i].place(into, cs, boxcs, x, y, curwid, curhei, scale);
wid += curwid;
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] gzz ./TODO gzz/view/CellContentView.java gzz/vi...,
Tuomas J. Lukka <=