Changeset 839 for trunk/src/org/expeditee/items
- Timestamp:
- 02/05/14 14:16:00 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/expeditee/items/widgets/JfxBrowser.java
r837 r839 33 33 import javafx.scene.control.ProgressIndicator; 34 34 import javafx.scene.control.TextField; 35 import javafx.scene.effect.BlendMode;36 35 import javafx.scene.input.KeyEvent; 37 36 import javafx.scene.input.MouseButton; 38 37 import javafx.scene.input.MouseEvent; 39 38 import javafx.scene.layout.HBox; 39 import javafx.scene.layout.Pane; 40 40 import javafx.scene.layout.Priority; 41 41 import javafx.scene.layout.StackPane; … … 46 46 47 47 import org.expeditee.gui.DisplayIO; 48 import org.expeditee.gui.FrameGraphics; 48 49 import org.expeditee.gui.FrameMouseActions; 49 50 import org.expeditee.gui.FreeItems; … … 63 64 * @author ngw8 64 65 * @author jts21 66 */ 67 /** 68 * @author ngw8 69 * 65 70 */ 66 71 public class JfxBrowser extends DataFrameWidget { … … 212 217 this._webView.setMaxWidth(Double.MAX_VALUE); 213 218 this._webView.setMaxHeight(Double.MAX_VALUE); 214 HBox.setHgrow(this._webView, Priority.ALWAYS);215 VBox.setVgrow(this._webView, Priority.ALWAYS);216 219 this._webEngine = this._webView.getEngine(); 217 220 218 221 this._urlProgressBar.progressProperty().bind(_webEngine.getLoadWorker().progressProperty()); 219 222 220 vertical.getChildren().addAll(horizontal, this._webView); 223 224 // Pane to hold just the webview. This seems to be the only way to allow the webview to be resized to greater than its parent's 225 // size. This also means that the webview's prefSize must be manually set when the Pane resizes, using the event handlers below 226 Pane browserPane = new Pane(); 227 browserPane.getChildren().add(_webView); 228 229 HBox.setHgrow(browserPane, Priority.ALWAYS); 230 VBox.setVgrow(browserPane, Priority.ALWAYS); 231 232 browserPane.widthProperty().addListener(new ChangeListener<Object>() { 233 234 @Override 235 public void changed(ObservableValue<?> observable, Object oldValue, Object newValue) { 236 JfxBrowser.this._webView.setPrefWidth((Double) newValue); 237 } 238 }); 239 240 browserPane.heightProperty().addListener(new ChangeListener<Object>() { 241 242 @Override 243 public void changed(ObservableValue<?> observable, Object oldValue, Object newValue) { 244 JfxBrowser.this._webView.setPrefHeight((Double) newValue); 245 } 246 }); 247 248 vertical.getChildren().addAll(horizontal, browserPane); 221 249 222 250 this._overlay = new StackPane(); … … 291 319 @Override 292 320 public void handle(ActionEvent e) { 293 321 getFrameNew(); 294 322 } 295 323 }); … … 334 362 public void handle(MouseEvent arg0) { 335 363 JfxBrowser.this._urlField.requestFocus(); 336 364 } 337 365 }); 338 366 … … 774 802 } 775 803 804 /** 805 * Shows/hides a message reading 'Importing page' over the widget 806 * 807 * @param visible 808 */ 776 809 public void setOverlayVisible(final boolean visible) { 777 Platform.runLater(new Runnable() { 778 779 @Override 780 public void run() { 781 JfxBrowser.this._overlay.setVisible(visible); 782 } 783 }); 784 810 this._overlay.setVisible(visible); 811 } 812 813 /** 814 * Sets the size of the webview element of the widget 815 * 816 * @param width 817 * @param height 818 */ 819 public void setWebViewSize(double width, double height) { 820 this._webView.setPrefSize(width, height); 821 } 822 823 /** 824 * Resizes the webview back to the size of its parent element 825 */ 826 public void rebindWebViewSize() { 827 this._webView.getParent().resize(0, 0); 785 828 } 786 829
Note:
See TracChangeset
for help on using the changeset viewer.