| OLD | NEW |
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 part of dartcombatlib; | 5 part of dartcombatlib; |
| 6 | 6 |
| 7 /** Base class for all views. */ | 7 /** Base class for all views. */ |
| 8 class View { | 8 class View { |
| 9 Document doc; | 9 Document doc; |
| 10 View(this.doc) {} | 10 View(this.doc) {} |
| (...skipping 11 matching lines...) Expand all Loading... |
| 22 PlayerState this.state, Element rootNode) | 22 PlayerState this.state, Element rootNode) |
| 23 : super(rootNode.document), _rootNode = rootNode { | 23 : super(rootNode.document), _rootNode = rootNode { |
| 24 render(); | 24 render(); |
| 25 } | 25 } |
| 26 | 26 |
| 27 /** Create an initial visual representation of this view. */ | 27 /** Create an initial visual representation of this view. */ |
| 28 void render() { | 28 void render() { |
| 29 String cell = "<div class='icons water'></div>"; | 29 String cell = "<div class='icons water'></div>"; |
| 30 StringBuffer _cells = new StringBuffer(); | 30 StringBuffer _cells = new StringBuffer(); |
| 31 for (int i = 0 ; i < state.localGrid.cells.length; i++) { | 31 for (int i = 0 ; i < state.localGrid.cells.length; i++) { |
| 32 _cells.add(cell); | 32 _cells.write(cell); |
| 33 } | 33 } |
| 34 String cells = _cells.toString(); | 34 String cells = _cells.toString(); |
| 35 String row = "<div class='hbox'>${cells}</div>"; | 35 String row = "<div class='hbox'>${cells}</div>"; |
| 36 StringBuffer _rows = new StringBuffer(); | 36 StringBuffer _rows = new StringBuffer(); |
| 37 for (int i = 0 ; i < state.localGrid.cells.length; i++) { | 37 for (int i = 0 ; i < state.localGrid.cells.length; i++) { |
| 38 _rows.add(row); | 38 _rows.write(row); |
| 39 } | 39 } |
| 40 String rows = _rows.toString(); | 40 String rows = _rows.toString(); |
| 41 String table = "<div class='vbox'>${rows}</div>"; | 41 String table = "<div class='vbox'>${rows}</div>"; |
| 42 _rootNode.innerHtml = table; | 42 _rootNode.innerHtml = table; |
| 43 | 43 |
| 44 // Attaches listeners onto this view. | 44 // Attaches listeners onto this view. |
| 45 new PlaceBoatView(state, _rootNode).attach(); | 45 new PlaceBoatView(state, _rootNode).attach(); |
| 46 } | 46 } |
| 47 | 47 |
| 48 /** Adds to this view the respresentation of a missed shot. */ | 48 /** Adds to this view the respresentation of a missed shot. */ |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 171 | 171 |
| 172 EnemyGridView( | 172 EnemyGridView( |
| 173 PlayerState this.state, Element rootNode) | 173 PlayerState this.state, Element rootNode) |
| 174 : super(rootNode.document), | 174 : super(rootNode.document), |
| 175 _enemyReady = false, | 175 _enemyReady = false, |
| 176 _rootNode = rootNode { | 176 _rootNode = rootNode { |
| 177 | 177 |
| 178 String cell = "<div class='icons water'></div>"; | 178 String cell = "<div class='icons water'></div>"; |
| 179 StringBuffer _cells = new StringBuffer(); | 179 StringBuffer _cells = new StringBuffer(); |
| 180 for (int i = 0 ; i < state.enemyGrid.cells.length; i++) { | 180 for (int i = 0 ; i < state.enemyGrid.cells.length; i++) { |
| 181 _cells.add(cell); | 181 _cells.write(cell); |
| 182 } | 182 } |
| 183 String cells = _cells.toString(); | 183 String cells = _cells.toString(); |
| 184 String row = "<div class='hbox'>${cells}</div>"; | 184 String row = "<div class='hbox'>${cells}</div>"; |
| 185 StringBuffer _rows = new StringBuffer(); | 185 StringBuffer _rows = new StringBuffer(); |
| 186 for (int i = 0 ; i < state.enemyGrid.cells.length; i++) { | 186 for (int i = 0 ; i < state.enemyGrid.cells.length; i++) { |
| 187 _rows.add(row); | 187 _rows.write(row); |
| 188 } | 188 } |
| 189 String rows = _rows.toString(); | 189 String rows = _rows.toString(); |
| 190 String table = "<div class='vbox'>${rows}</div>"; | 190 String table = "<div class='vbox'>${rows}</div>"; |
| 191 _rootNode.innerHtml = | 191 _rootNode.innerHtml = |
| 192 "${table}<div class='notready'>ENEMY IS NOT READY</div>"; | 192 "${table}<div class='notready'>ENEMY IS NOT READY</div>"; |
| 193 statusBar = new ShootingStatusView(state, doc); | 193 statusBar = new ShootingStatusView(state, doc); |
| 194 _rootNode.nodes.add(statusBar._rootNode); | 194 _rootNode.nodes.add(statusBar._rootNode); |
| 195 _rootNode.onClick.listen((MouseEvent e) { | 195 _rootNode.onClick.listen((MouseEvent e) { |
| 196 handleClick(mouseEvent); | 196 handleClick(mouseEvent); |
| 197 }, false); | 197 }, false); |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 295 node.style.setProperty("left", "${xoffset}px"); | 295 node.style.setProperty("left", "${xoffset}px"); |
| 296 } | 296 } |
| 297 | 297 |
| 298 /** Create a div node with a given class name. */ | 298 /** Create a div node with a given class name. */ |
| 299 static Element createDiv(String className) { | 299 static Element createDiv(String className) { |
| 300 Element node = new Element.tag("div"); | 300 Element node = new Element.tag("div"); |
| 301 node.attributes["class"] = className; | 301 node.attributes["class"] = className; |
| 302 return node; | 302 return node; |
| 303 } | 303 } |
| 304 } | 304 } |
| OLD | NEW |