JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / src / swingjs / api / DOMNode.java
1 package swingjs.api;\r
2 \r
3 public abstract class DOMNode {\r
4 \r
5         public abstract void appendChild(DOMNode object);\r
6 \r
7         public abstract boolean hasFocus();\r
8 \r
9         public abstract DOMNode removeChild(DOMNode object);\r
10 \r
11         public abstract DOMNode removeAttribute(String attr);\r
12         \r
13         public abstract void setSelectionRange(int pt0, int pt1);\r
14 \r
15         public static DOMNode createElement(String key, String id) {\r
16                 DOMNode obj = null;\r
17                 /**\r
18                  * \r
19                  * @j2sNative\r
20                  *                                      obj = document.createElement(key); \r
21                  *          obj.id = id;\r
22                  */\r
23                 {\r
24                 }\r
25                 return obj;\r
26         };\r
27 \r
28         public static DOMNode getParent(DOMNode obj) {\r
29                 /**\r
30                  * @j2sNative\r
31                  * \r
32                  *            return obj.parentNode;\r
33                  * \r
34                  */\r
35                 {\r
36                         return null;\r
37                 }\r
38         }\r
39 \r
40         /**\r
41          * remove this object and return its parent\r
42          * @param obj\r
43          * @return parent or null\r
44          */\r
45         public static DOMNode remove(DOMNode obj) {\r
46                 /**\r
47                  * @j2sNative\r
48                  * \r
49                  * try {\r
50                  *   var p = obj.parentNode;\r
51                  *   p.removeNode(obj);\r
52                  * } catch(e) {};\r
53                  * return p;\r
54                  */\r
55                 {\r
56                         return null;\r
57                 }\r
58         }\r
59         \r
60         public static void add(DOMNode parent, DOMNode child) {\r
61                 /**\r
62                  * @j2sNative\r
63                  * \r
64                  * parent && parent.appendChild(child);\r
65                  * \r
66                  */\r
67                 {\r
68                 }\r
69         }\r
70         \r
71         /**\r
72          * note: this works with 'checked' as well\r
73          * \r
74          * @param obj\r
75          * @param attr\r
76          * @return\r
77          */\r
78         public static Object getAttr(DOMNode obj, String attr) {\r
79                 /**\r
80                  * @j2sNative\r
81                  * \r
82                  *       if (obj)return obj[attr];\r
83                  * \r
84                  */\r
85                 {\r
86                         return null;\r
87                 }\r
88         }\r
89 \r
90         public String getStyle(String style) {\r
91                 /**\r
92                  * @j2sNative\r
93                  * \r
94                  *       if (obj)return obj.style[style];\r
95                  * \r
96                  */\r
97                 {\r
98                         return null;\r
99                 }\r
100         }\r
101         public static DOMNode setAttr(DOMNode obj, String attr, Object val) {\r
102                 /**\r
103                  * @j2sNative\r
104                  * \r
105                  *            obj[attr] = (val == "TRUE" ? true : val);\r
106                  * \r
107                  */\r
108                 {\r
109                 }\r
110                 return obj;\r
111         }\r
112 \r
113 \r
114         public static DOMNode setStyles(DOMNode obj, String... attr) {\r
115                 /**\r
116                  * @j2sNative\r
117                  * \r
118                  *            for (var i = 0; i < attr.length;) {\r
119                  * \r
120                  *            //System.out.println(["DOMNode.setStyles ",attr[i],attr[i+1]])\r
121                  *            ;\r
122                  * \r
123                  *            obj.style[attr[i++]] = attr[i++]; }\r
124                  * \r
125                  */\r
126                 {\r
127                 }\r
128                 return obj;\r
129         }\r
130 \r
131         public static DOMNode setSize(DOMNode obj, int width, int height) {\r
132                 return setStyles(obj, "width", width + "px", "height", height + "px");\r
133         }\r
134 \r
135 }\r