aboutsummaryrefslogtreecommitdiff
path: root/contexts/data/lib/closure-library/closure/goog/demos/popup.html
diff options
context:
space:
mode:
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/demos/popup.html')
-rw-r--r--contexts/data/lib/closure-library/closure/goog/demos/popup.html206
1 files changed, 0 insertions, 206 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/demos/popup.html b/contexts/data/lib/closure-library/closure/goog/demos/popup.html
deleted file mode 100644
index 91d286c..0000000
--- a/contexts/data/lib/closure-library/closure/goog/demos/popup.html
+++ /dev/null
@@ -1,206 +0,0 @@
-<!DOCTYPE html>
-<html>
-<!--
-Copyright 2010 The Closure Library Authors. All Rights Reserved.
-
-Use of this source code is governed by the Apache License, Version 2.0.
-See the COPYING file for details.
--->
-<head>
- <title>goog.ui.Popup</title>
- <script src="../base.js"></script>
- <script>
- if (typeof goog == 'undefined') {
- alert('Closure failed to load');
- } else {
- goog.require('goog.events');
- goog.require('goog.events.EventType');
- goog.require('goog.positioning.ClientPosition');
- goog.require('goog.positioning.Corner');
- goog.require('goog.positioning.AnchoredViewportPosition');
- goog.require('goog.ui.Popup');
- }
- </script>
-
- <link rel="stylesheet" href="css/demo.css">
- <style>
- .popup {
- position:absolute;
- background-color:#e0ecff;
- color:black;
- visibility:hidden;
- width:100px;
- height:100px;
- font-size: 80%;
- border:solid red 1px;
- -moz-outline:0;
- outline:0;
- }
- button {
- border: solid black 1px;
- margin-left: 50%;
- }
- label {
- display: block;
- width: 15em;
- }
- #abs-box {
- border: solid black 2px;
- height: 200px;
- width: 200px;
- }
- </style>
-</head>
-<body>
- <h1>goog.ui.Popup</h1>
- <div id='popup' class='popup' tabindex="0"></div>
-
- <p>Positioning relative to an anchor element</p>
- <form>
- <strong>Button Corner</strong>
- <label for="button_corner_tl">
- <input type="radio" id="button_corner_tl" name="button_corner" value="tl">Top Left
- </label>
- <label for="button_corner_tr">
- <input type="radio" id="button_corner_tr" name="button_corner" value="tr">Top Right
- </label>
- <label for="button_corner_bl">
- <input type="radio" id="button_corner_bl" name="button_corner" value="bl" checked="checked">Bottom Left
- </label>
- <label for="button_corner_br">
- <input type="radio" id="button_corner_br" name="button_corner" value="br">Bottom Right
- </label>
- <br>
- <strong>Popup Corner</strong>
- <label for="menu_corner_tl">
- <input type="radio" id="menu_corner_tl" name="menu_corner" value="tl" checked/>Top Left
- </label>
- <label for="menu_corner_tr">
- <input type="radio" id="menu_corner_tr" name="menu_corner" value="tr">Top Right
- </label>
- <label for="menu_corner_bl">
- <input type="radio" id="menu_corner_bl" name="menu_corner" value="bl">Bottom Left
- </label>
- <label for="menu_corner_br">
- <input type="radio" id="menu_corner_br" name="menu_corner" value="br">Bottom Right
- </label>
-
- <br>
- <strong>Margin</strong>
- Top: <input id="margin_top" size=2 value="0">
- Right: <input id="margin_right" size=2 value="0">
- Bottom: <input id="margin_bottom" size=2 value="0">
- Left: <input id="margin_left" size=2 value="0">
-
-
- <br>
- <br>
- <br>
- </form>
-
- <button id="btn" onclick="showPopup()">
- Press me!
- </button>
-
- <br>
- <br>
-
- <h3>Iframe to test cross frame dismissal</h3>
- <iframe src="about:blank"></iframe>
-
- <br>
- <br>
-
- <hr>
- <h3>Positioning at coordinates</h3>
- <div id="abs-box"></div>
-
- <script>
- var popupElt = document.getElementById('popup');
- var popup = new goog.ui.Popup(popupElt);
- popup.setHideOnEscape(true);
- popup.setAutoHide(true);
- var showingBecauseOfBox = false;
-
- goog.events.listen(window, goog.events.EventType.RESIZE, onResize);
- goog.events.listen(document, goog.events.EventType.MOUSEMOVE, onMouseMove);
- // goog.events.listen(absBox, goog.events.EventType.MOUSEOUT,
- // onAbsBoxMouseOut);
-
- function showPopup() {
- var btn = document.getElementById('btn');
- var buttonCorner = toCorner(
- getCheckedValue(document.forms[0].elements['button_corner']));
- var menuCorner = toCorner(
- getCheckedValue(document.forms[0].elements['menu_corner']));
-
- var t = parseInt(document.getElementById('margin_top').value);
- var r = parseInt(document.getElementById('margin_right').value);
- var b = parseInt(document.getElementById('margin_bottom').value);
- var l = parseInt(document.getElementById('margin_left').value);
- var margin = new goog.math.Box(t, r, b, l);
-
- popup.setVisible(false);
- popup.setPinnedCorner(menuCorner);
- popup.setMargin(margin);
- popup.setPosition(new goog.positioning.AnchoredViewportPosition(btn,
- buttonCorner));
- popup.setVisible(true);
- }
-
- function onResize(e) {
- if (popup && popup.isVisible()) {
- popup.reposition();
- }
- }
-
- function onMouseMove(e) {
- var absBox = document.getElementById('abs-box');
-
- var offset = goog.style.getViewportPageOffset(
- goog.dom.getOwnerDocument(absBox));
- var size = goog.style.getSize(absBox);
-
- var boxPagePosition = goog.style.getPageOffset(absBox);
- var boxClientPosition = new goog.math.Coordinate(
- boxPagePosition.x - offset.x,
- boxPagePosition.y - offset.y);
-
- if (e.clientX >= boxClientPosition.x &&
- e.clientX < (boxClientPosition.x + size.width) &&
- e.clientY >= boxClientPosition.y &&
- e.clientY < (boxClientPosition.y + size.height)) {
- popup.setPinnedCorner(goog.positioning.Corner.TOP_LEFT);
- popup.setPosition(new goog.positioning.ClientPosition(
- e.clientX, e.clientY));
- popup.setVisible(true);
- showingBecauseOfBox = true;
- } else if (showingBecauseOfBox) {
- popup.setVisible(false);
- showingBecauseOfBox = false;
- }
- }
-
- function getCheckedValue(radioObj) {
- for (var i = 0; i < radioObj.length; i++) {
- if (radioObj[i].checked) {
- return radioObj[i].value;
- }
- }
- }
-
- function toCorner(val) {
- switch (val) {
- case "tl":
- return goog.positioning.Corner.TOP_LEFT;
- case "tr":
- return goog.positioning.Corner.TOP_RIGHT;
- case "bl":
- return goog.positioning.Corner.BOTTOM_LEFT;
- case "br":
- return goog.positioning.Corner.BOTTOM_RIGHT;
- }
- }
- </script>
-</body>
-</html>