Commit 33ee61fdfe5e4c96af9817a8c3b75186fe9955c7
1 parent
c49910f8
graph updates
Showing
2 changed files
with
37 additions
and
135 deletions
datalets/graph-datalet/graph-datalet.html
| @@ -31,6 +31,7 @@ | @@ -31,6 +31,7 @@ | ||
| 31 | 31 | ||
| 32 | <link rel="import" href="../base-datalet/base-datalet.html"> | 32 | <link rel="import" href="../base-datalet/base-datalet.html"> |
| 33 | <link rel="import" href="../../bower_components/iron-flex-layout/iron-flex-layout.html"> | 33 | <link rel="import" href="../../bower_components/iron-flex-layout/iron-flex-layout.html"> |
| 34 | +<link rel="import" href="../../bower_components/paper-dialog/paper-dialog.html"> | ||
| 34 | 35 | ||
| 35 | <!-- | 36 | <!-- |
| 36 | `preview-datalet` is a datalet that allow user to preview the content of a web page. It creates a thumbnail of the site using the data-url attribute passed as input. | 37 | `preview-datalet` is a datalet that allow user to preview the content of a web page. It creates a thumbnail of the site using the data-url attribute passed as input. |
| @@ -54,12 +55,23 @@ Example: | @@ -54,12 +55,23 @@ Example: | ||
| 54 | 55 | ||
| 55 | <style is="custom-style"> | 56 | <style is="custom-style"> |
| 56 | 57 | ||
| 58 | + #dialog{ | ||
| 59 | + position: absolute; | ||
| 60 | + padding: 20px; | ||
| 61 | + } | ||
| 62 | + | ||
| 57 | </style> | 63 | </style> |
| 58 | 64 | ||
| 59 | <div style="align-content: center;" id="graph_content"> | 65 | <div style="align-content: center;" id="graph_content"> |
| 60 | <svg id="sbiricuda"></svg> | 66 | <svg id="sbiricuda"></svg> |
| 61 | </div> | 67 | </div> |
| 62 | 68 | ||
| 69 | + <paper-dialog id="dialog"> | ||
| 70 | + <h2 id="dialog_title"></h2> | ||
| 71 | + <paper-dialog-scrollable id="dialog_content"> | ||
| 72 | + </paper-dialog-scrollable> | ||
| 73 | + </paper-dialog> | ||
| 74 | + | ||
| 63 | </template> | 75 | </template> |
| 64 | 76 | ||
| 65 | <script src="static/js/d3.v3.js"></script> | 77 | <script src="static/js/d3.v3.js"></script> |
| @@ -73,6 +85,7 @@ Example: | @@ -73,6 +85,7 @@ Example: | ||
| 73 | height = undefined; | 85 | height = undefined; |
| 74 | svg = undefined; | 86 | svg = undefined; |
| 75 | _this = null; | 87 | _this = null; |
| 88 | + prev_selected_node = null; | ||
| 76 | 89 | ||
| 77 | Polymer({ | 90 | Polymer({ |
| 78 | is : 'graph-datalet', | 91 | is : 'graph-datalet', |
| @@ -137,6 +150,9 @@ Example: | @@ -137,6 +150,9 @@ Example: | ||
| 137 | .on("mouseout", this.mouseout) | 150 | .on("mouseout", this.mouseout) |
| 138 | .on("click", this.active) | 151 | .on("click", this.active) |
| 139 | .append("circle") | 152 | .append("circle") |
| 153 | + .attr("id", function(t){ | ||
| 154 | + return t.id; | ||
| 155 | + }) | ||
| 140 | .attr("class", function (t) { | 156 | .attr("class", function (t) { |
| 141 | return t.fixed ? "" : "drag" | 157 | return t.fixed ? "" : "drag" |
| 142 | }).attr("r", function (t) { | 158 | }).attr("r", function (t) { |
| @@ -200,9 +216,10 @@ Example: | @@ -200,9 +216,10 @@ Example: | ||
| 200 | }, | 216 | }, |
| 201 | mouseover : function (t) { | 217 | mouseover : function (t) { |
| 202 | d3.select(this).selectAll("circle").transition().duration(600).ease("elastic").attr("r", function (t) { | 218 | d3.select(this).selectAll("circle").transition().duration(600).ease("elastic").attr("r", function (t) { |
| 219 | + //return 1 == t.fixed ? 1.4 * t.r : 15 | ||
| 203 | return 1 == t.fixed ? 1.4 * t.r : 15 | 220 | return 1 == t.fixed ? 1.4 * t.r : 15 |
| 204 | }); | 221 | }); |
| 205 | - //$("#sbiricuda").html($("." + t.name.split(" ").join("_").toLowerCase()).html()) | 222 | + |
| 206 | }, | 223 | }, |
| 207 | 224 | ||
| 208 | mouseout : function () { | 225 | mouseout : function () { |
| @@ -212,8 +229,23 @@ Example: | @@ -212,8 +229,23 @@ Example: | ||
| 212 | }, | 229 | }, |
| 213 | 230 | ||
| 214 | active : function (t) { | 231 | active : function (t) { |
| 215 | - /*t.fixed && openModal(t.name)*/ | ||
| 216 | _this.fire('graph-datalet_node-clicked', {node : t}); | 232 | _this.fire('graph-datalet_node-clicked', {node : t}); |
| 233 | + | ||
| 234 | + if(prev_selected_node != null){ | ||
| 235 | + prev_selected_node.style.stroke = prev_selected_node.style.fill; | ||
| 236 | + prev_selected_node.style.fill = ""; | ||
| 237 | + } | ||
| 238 | + | ||
| 239 | + prev_selected_node = document.getElementById("" + t.id); | ||
| 240 | + prev_selected_node.style.fill = prev_selected_node.style.stroke; | ||
| 241 | + prev_selected_node.style.stroke = "#000000"; | ||
| 242 | + | ||
| 243 | + /* _this.$.dialog_title.innerHTML = "Comment"; | ||
| 244 | + _this.$.dialog_content.innerHTML = t.name; | ||
| 245 | + _this.$.dialog.style.top = t.y + "px"; | ||
| 246 | + _this.$.dialog.style.left = t.x + "px"; | ||
| 247 | + | ||
| 248 | + _this.$.dialog.open();*/ | ||
| 217 | }, | 249 | }, |
| 218 | 250 | ||
| 219 | openModal : function(t) { | 251 | openModal : function(t) { |
datalets/graph-datalet/static/css/graphStyle.css
| @@ -37,10 +37,11 @@ g foreignObject { | @@ -37,10 +37,11 @@ g foreignObject { | ||
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | g foreignObject div { | 39 | g foreignObject div { |
| 40 | + font-family: 'Roboto', sans-serif; | ||
| 40 | display: inline-block; | 41 | display: inline-block; |
| 41 | - font-size: 16px; | 42 | + font-size: 12px; |
| 42 | text-decoration: none; | 43 | text-decoration: none; |
| 43 | - padding: 4px | 44 | + padding: 0px |
| 44 | } | 45 | } |
| 45 | 46 | ||
| 46 | g foreignObject a:hover { | 47 | g foreignObject a:hover { |
| @@ -48,37 +49,6 @@ g foreignObject a:hover { | @@ -48,37 +49,6 @@ g foreignObject a:hover { | ||
| 48 | text-decoration: none | 49 | text-decoration: none |
| 49 | } | 50 | } |
| 50 | 51 | ||
| 51 | -.modal-content { | ||
| 52 | - border-radius: 0 | ||
| 53 | -} | ||
| 54 | - | ||
| 55 | -#modal { | ||
| 56 | - text-align: justify | ||
| 57 | -} | ||
| 58 | - | ||
| 59 | -#modal .modal-header { | ||
| 60 | - text-align: center; | ||
| 61 | - font-size: 25px; | ||
| 62 | - color: #fff; | ||
| 63 | - font-weight: 300; | ||
| 64 | - background: #efefef | ||
| 65 | -} | ||
| 66 | - | ||
| 67 | -#modal .modal-title { | ||
| 68 | - font-size: 25px; | ||
| 69 | - color: #fff | ||
| 70 | -} | ||
| 71 | - | ||
| 72 | -.modal-body { | ||
| 73 | - text-align: justify; | ||
| 74 | - padding: 30px | ||
| 75 | -} | ||
| 76 | - | ||
| 77 | -#modal .close { | ||
| 78 | - color: #fff; | ||
| 79 | - opacity: .8 | ||
| 80 | -} | ||
| 81 | - | ||
| 82 | .r { | 52 | .r { |
| 83 | color: #c82528 | 53 | color: #c82528 |
| 84 | } | 54 | } |
| @@ -125,104 +95,4 @@ span.n4 { | @@ -125,104 +95,4 @@ span.n4 { | ||
| 125 | font-size: .8em; | 95 | font-size: .8em; |
| 126 | padding-top: 10px; | 96 | padding-top: 10px; |
| 127 | line-height: 1.3 | 97 | line-height: 1.3 |
| 128 | -} | ||
| 129 | - | ||
| 130 | -.howto { | ||
| 131 | - font-family: arial; | ||
| 132 | - font-size: 19px; | ||
| 133 | - background: #595a5a; | ||
| 134 | - color: #fff; | ||
| 135 | - width: 25px; | ||
| 136 | - height: 25px; | ||
| 137 | - display: block; | ||
| 138 | - text-align: center; | ||
| 139 | - border-radius: 50% | ||
| 140 | -} | ||
| 141 | - | ||
| 142 | -.howto_tooltip { | ||
| 143 | - visibility: hidden; | ||
| 144 | - color: #696969; | ||
| 145 | - border: 1px solid #696969; | ||
| 146 | - background: #fff; | ||
| 147 | - display: inline-block; | ||
| 148 | - width: 150px; | ||
| 149 | - padding: 10px | ||
| 150 | -} | ||
| 151 | - | ||
| 152 | -.modal-footer { | ||
| 153 | - display: none | ||
| 154 | -} | ||
| 155 | - | ||
| 156 | -.modal.fade:not(.in).bottom .modal-dialog { | ||
| 157 | - -webkit-transform: translate3d(0, 25%, 0); | ||
| 158 | - transform: translate3d(0, 25%, 0) | ||
| 159 | -} | ||
| 160 | - | ||
| 161 | -.modal-backdrop { | ||
| 162 | - background-color: #fff | ||
| 163 | -} | ||
| 164 | - | ||
| 165 | -#credits { | ||
| 166 | - position: fixed; | ||
| 167 | - bottom: 10px; | ||
| 168 | - right: 10px; | ||
| 169 | - font-size: 10px | ||
| 170 | -} | ||
| 171 | - | ||
| 172 | -#modal .modal-content.overview .modal-header { | ||
| 173 | - background: #519c76 | ||
| 174 | -} | ||
| 175 | - | ||
| 176 | -#modal .modal-content.cfp .modal-header { | ||
| 177 | - background: #f69a43 | ||
| 178 | -} | ||
| 179 | - | ||
| 180 | -#modal .modal-content.submission .modal-header { | ||
| 181 | - background: #c82528 | ||
| 182 | -} | ||
| 183 | - | ||
| 184 | -#modal .modal-content.organisation .modal-header { | ||
| 185 | - background: #662d91 | ||
| 186 | -} | ||
| 187 | - | ||
| 188 | -.deadlineext { | ||
| 189 | - text-align: center; | ||
| 190 | - width: 100%; | ||
| 191 | - margin-top: -1em; | ||
| 192 | - font-size: 120%; | ||
| 193 | - border: 0 solid #f69a43; | ||
| 194 | - padding: 0 | ||
| 195 | -} | ||
| 196 | - | ||
| 197 | -.deadlineext hr { | ||
| 198 | - border-width: 0; | ||
| 199 | - border-top: 1px solid #f69a43; | ||
| 200 | - margin: 3px | ||
| 201 | -} | ||
| 202 | - | ||
| 203 | -@media print { | ||
| 204 | - #modal.fade { | ||
| 205 | - display: block !important; | ||
| 206 | - opacity: 1; | ||
| 207 | - page-break-before: always | ||
| 208 | - } | ||
| 209 | - | ||
| 210 | - .modal { | ||
| 211 | - position: static | ||
| 212 | - } | ||
| 213 | - | ||
| 214 | - .modal-footer, .modal-header .close { | ||
| 215 | - display: none | ||
| 216 | - } | ||
| 217 | - | ||
| 218 | - .modal-content { | ||
| 219 | - display: block !important; | ||
| 220 | - border: 0; | ||
| 221 | - box-shadow: none; | ||
| 222 | - page-break-inside: avoid | ||
| 223 | - } | ||
| 224 | - | ||
| 225 | - .modal h4, .modal-header { | ||
| 226 | - padding: 0 | ||
| 227 | - } | ||
| 228 | } | 98 | } |
| 229 | \ No newline at end of file | 99 | \ No newline at end of file |