blob: 983f288349d067383b5e5f1b345819d60ad283a6 [file] [log] [blame]
Simon Hunt195cb382014-11-03 17:50:51 -08001/*
2 * Copyright 2014 Open Networking Laboratory
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17/*
18 ONOS GUI -- Base Framework -- CSS file
19
20 @author Simon Hunt
21 */
22
23html, body {
24 height: 100%;
25}
26
Simon Hunt25248912014-11-04 11:25:48 -080027div.onosView {
28 display: none;
29}
30
31div.onosView.currentView {
32 display: block;
33}
34
35/*
36 * ==============================================================
37 * END OF NEW ONOS.JS file
38 * ==============================================================
39 */
Simon Hunt195cb382014-11-03 17:50:51 -080040
41/*
42 * === DEBUGGING ======
43 */
44svg {
45 /*border: 1px dashed red;*/
46}
47
48svg #bg {
49 opacity: 0.5;
50}
51
52
53/*
54 * Network Graph elements ======================================
55 */
56
57svg .link {
Simon Hunt195cb382014-11-03 17:50:51 -080058 opacity: .7;
Simon Hunt195cb382014-11-03 17:50:51 -080059}
60
61svg .link.host {
Simon Hunt195cb382014-11-03 17:50:51 -080062}
63
64svg g.portLayer rect.port {
65 fill: #ccc;
66}
67
68svg g.portLayer text {
69 font: 8pt sans-serif;
70 pointer-events: none;
71}
72
73svg .node.device rect {
74 stroke-width: 1.5px;
Simon Hunt195cb382014-11-03 17:50:51 -080075}
76
77svg .node.device.fixed rect {
78 stroke-width: 1.5;
79 stroke: #ccc;
80}
81
82svg .node.device.roadm rect {
83 fill: #03c;
84}
85
86svg .node.device.switch rect {
87 fill: #06f;
88}
89
90svg .node.host circle {
91 fill: #c96;
92 stroke: #000;
93}
94
95svg .node text {
96 fill: white;
97 font: 10pt sans-serif;
98 pointer-events: none;
99}
100
101/* for debugging */
102svg .node circle.debug {
103 fill: white;
104 stroke: red;
105}
106svg .node rect.debug {
107 fill: yellow;
108 stroke: red;
109 opacity: 0.35;
110}
111
112
113svg .node.selected rect,
114svg .node.selected circle {
115 filter: url(#blue-glow);
116}
117
118svg .link.inactive,
119svg .port.inactive,
120svg .portText.inactive,
121svg .node.inactive rect,
122svg .node.inactive circle,
123svg .node.inactive text,
124svg .node.inactive image {
125 opacity: .1;
126}
127
128svg .node.inactive.selected rect,
129svg .node.inactive.selected text,
130svg .node.inactive.selected image {
131 opacity: .6;
132}
133
134/*
135 * =============================================================
136 */
137
138/*
139 * Specific structural elements
140 */
141
142/* This is to ensure that the body does not expand to account for the
143 flyout details pane, that is positioned "off screen".
144 */
145body {
146 overflow: hidden;
147}
148
149
150#frame {
151 width: 100%;
152 height: 100%;
153 background-color: #fff;
154}
155
156#flyout {
157 position: absolute;
158 z-index: 100;
159 display: block;
160 top: 10%;
161 width: 280px;
162 right: -300px;
163 opacity: 0;
164 background-color: rgba(255,255,255,0.8);
165
166 padding: 10px;
167 color: black;
168 font-size: 10pt;
169 box-shadow: 2px 2px 16px #777;
170}
171
172#flyout h2 {
173 margin: 8px 4px;
174 color: black;
175 vertical-align: middle;
176}
177
178#flyout h2 img {
179 height: 32px;
180 padding-right: 8px;
181 vertical-align: middle;
182}
183
184#flyout p, table {
185 margin: 4px 4px;
186}
187
188#flyout td.label {
189 font-style: italic;
190 color: #777;
191 padding-right: 12px;
192}
193
194#flyout td.value {
195
196}
197
198#flyout hr {
199 height: 1px;
200 color: #ccc;
201 background-color: #ccc;
202 border: 0;
203}
204