Skip to content

Commit 5eab2f4

Browse files
hansonrhansonr
authored andcommitted
JSTableUI uses own canvas
1 parent c062412 commit 5eab2f4

File tree

10 files changed

+33
-15
lines changed

10 files changed

+33
-15
lines changed
6.67 MB
Binary file not shown.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
20210213105349
1+
20210227071344
6.8 MB
Binary file not shown.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
20210213105349
1+
20210227071344
3.62 MB
Binary file not shown.

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSComponentUI.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1301,7 +1301,7 @@ public void propertyChange(PropertyChangeEvent e) {
13011301
String prop = e.getPropertyName();
13021302
Object value = e.getNewValue();
13031303
if (prop == "jscanvas") {
1304-
addLocalCanvas();
1304+
addLocalCanvas(false);
13051305
}
13061306
if (domNode == null)
13071307
return;
@@ -1320,8 +1320,8 @@ public void propertyChange(PropertyChangeEvent e) {
13201320
propertyChangedCUI(e, prop);
13211321
}
13221322

1323-
protected void addLocalCanvas() {
1324-
if (jc.秘g != null)
1323+
protected void addLocalCanvas(boolean forceNew) {
1324+
if (jc.秘g != null && !forceNew)
13251325
return;
13261326
jc.秘g = (JSGraphics2D)(Object) Boolean.TRUE;
13271327
setTainted();

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSEditorPaneUI.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ protected void setBorder(String prefix) {
254254
@Override
255255
public void propertyChange(PropertyChangeEvent e) {
256256
String prop = e.getPropertyName();
257-
System.out.println("JSEPUI prop " + prop);
257+
//System.out.println("JSEPUI prop " + prop);
258258
switch(prop) {
259259
case "editorKit":
260260
isHtmlKit = (editor.秘jsHTMLHelper != null);

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSPanelUI.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public DOMNode updateDOMNode() {
3232
}
3333
}
3434
if (isGlassPane) {
35-
addLocalCanvas();
35+
addLocalCanvas(false);
3636
DOMNode.setZ(domNode, 1);
3737
}
3838
isContentPane = (root != null && jc == root.getContentPane());

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSTableUI.java

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@
6363
import javax.swing.JScrollPane;
6464
import javax.swing.JTable;
6565
import javax.swing.JTextField;
66-
import javax.swing.JViewport;
6766
import javax.swing.KeyStroke;
6867
import javax.swing.ListSelectionModel;
6968
import javax.swing.LookAndFeel;
@@ -86,7 +85,6 @@
8685
import sun.swing.DefaultLookup;
8786
import sun.swing.SwingUtilities2;
8887
import sun.swing.UIAction;
89-
import swingjs.JSMouse;
9088
import swingjs.api.js.DOMNode;
9189

9290
/**
@@ -112,6 +110,14 @@ public class JSTableUI extends JSPanelUI {
112110

113111
private boolean isScrolling, justLaidOut;
114112

113+
// private DOMNode canvasNode;
114+
//
115+
// public DOMNode getCanvasNode() {
116+
// return canvasNode;
117+
// }
118+
119+
private DOMNode tableNode;
120+
115121
public void setScrolling() {
116122
// from JSScrollPane
117123
isScrolling = true;
@@ -122,6 +128,11 @@ public JSTableUI() {
122128
isTable = true;
123129
}
124130

131+
public DOMNode getDOMNode() {
132+
return updateDOMNode();
133+
}
134+
135+
125136
@Override
126137
public DOMNode updateDOMNode() {
127138

@@ -135,8 +146,13 @@ public DOMNode updateDOMNode() {
135146

136147
if (domNode == null) {
137148
domNode = newDOMObject("div", id);
149+
tableNode = domNode;
150+
// canvasNode = newDOMObject("canvas", id + "_canvas");
151+
// tableNode = newDOMObject("div", id + "_table");
152+
// domNode.appendChild(canvasNode);
153+
// domNode.appendChild(tableNode);
138154
enableJSKeys(true);
139-
DOMNode.setStyle(domNode, "outline", "none");
155+
DOMNode.setStyle(tableNode, "outline", "none");
140156
// bindJSKeyEvents(domNode, true);
141157
}
142158
if (rebuild) {
@@ -150,12 +166,13 @@ public DOMNode updateDOMNode() {
150166
if (w != oldWidth || h != oldHeight) {
151167
oldWidth = w;
152168
oldHeight = h;
153-
DOMNode.setStyles(domNode, "width", w + "px", "height", h + "px");
169+
DOMNode.setStyles(tableNode, "width", w + "px", "height", h + "px");
170+
// DOMNode.setStyles(canvasNode, "width", w + "px", "height", h + "px");
154171
}
155172
Font font = c.getFont();
156173
if (!font.equals(oldFont)) {
157174
oldFont = font;
158-
setCssFont(domNode, c.getFont());
175+
setCssFont(tableNode, c.getFont());
159176
}
160177
return updateDOMNodeCUI();
161178
}
@@ -337,7 +354,8 @@ protected void addChildrenToDOM(Component[] children, int n) {
337354
}
338355
}
339356

340-
$(domNode).empty();
357+
$(tableNode).empty();
358+
addLocalCanvas(true);
341359
rminy = tmpRect.y;
342360
rmaxy = tmpRect.y + tmpRect.height;
343361
if (tmpRect.height != 0) {
@@ -408,7 +426,7 @@ private DOMNode addElements(int rminx, int rminy, int rmaxx, int rmaxy, int h, i
408426
boolean rowExists = (tr != null);
409427
if (!rowExists) {
410428
tr = DOMNode.createElement("div", rid);
411-
domNode.appendChild(tr);
429+
tableNode.appendChild(tr);
412430
}
413431
DOMNode.setStyle(tr, "height", h + "px");
414432
col = col1;

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSViewportUI.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,12 @@
2929
package swingjs.plaf;
3030

3131
import java.awt.Dimension;
32-
import java.awt.Rectangle;
3332
import java.beans.PropertyChangeListener;
3433

3534
import javax.swing.JComponent;
3635
import javax.swing.JViewport;
3736
import javax.swing.event.ChangeListener;
37+
3838
import swingjs.api.js.DOMNode;
3939

4040
public class JSViewportUI extends JSLightweightUI implements PropertyChangeListener,

0 commit comments

Comments
 (0)