1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.htmlunit.javascript.host.css;
16
17 import org.htmlunit.css.CssMediaList;
18 import org.htmlunit.cssparser.dom.CSSMediaRuleImpl;
19 import org.htmlunit.cssparser.dom.MediaListImpl;
20 import org.htmlunit.javascript.configuration.JsxClass;
21 import org.htmlunit.javascript.configuration.JsxConstructor;
22 import org.htmlunit.javascript.configuration.JsxGetter;
23
24
25
26
27
28
29
30
31
32 @JsxClass
33 public class CSSMediaRule extends CSSConditionRule {
34
35 private MediaList media_;
36
37
38
39
40 public CSSMediaRule() {
41 super();
42 }
43
44
45
46
47 @JsxConstructor
48 @Override
49 public void jsConstructor() {
50 super.jsConstructor();
51 }
52
53
54
55
56
57
58 protected CSSMediaRule(final CSSStyleSheet stylesheet, final CSSMediaRuleImpl rule) {
59 super(stylesheet, rule);
60 }
61
62
63
64
65
66 @JsxGetter
67 public MediaList getMedia() {
68 if (media_ == null) {
69 final CSSStyleSheet parent = getParentStyleSheet();
70 final MediaListImpl ml = getMediaRule().getMediaList();
71
72 media_ = new MediaList(parent, new CssMediaList(ml));
73 }
74 return media_;
75 }
76
77
78
79
80
81 private CSSMediaRuleImpl getMediaRule() {
82 return (CSSMediaRuleImpl) getRule();
83 }
84 }