watir-webdriver 0.0.1.dev5 → 0.0.1.dev6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (92) hide show
  1. data/Rakefile +13 -19
  2. data/VERSION +1 -1
  3. data/lib/watir-webdriver.rb +3 -1
  4. data/lib/watir-webdriver/base_element.rb +33 -27
  5. data/lib/watir-webdriver/browser.rb +2 -6
  6. data/lib/watir-webdriver/elements/font.rb +12 -0
  7. data/lib/watir-webdriver/elements/generated.rb +1027 -622
  8. data/lib/watir-webdriver/elements/select_list.rb +3 -3
  9. data/lib/watir-webdriver/locators/element_locator.rb +2 -2
  10. data/lib/watir-webdriver/xpath_support.rb +2 -2
  11. data/support/html5/html5.idl +942 -483
  12. data/support/html5/old/html5.idl +962 -0
  13. data/support/html5/{html5_extras.idl → old/html5_extras.idl} +0 -2
  14. data/support/html5/watir_visitor.rb +23 -19
  15. metadata +74 -100
  16. data/spec/watirspec/area_spec.rb +0 -78
  17. data/spec/watirspec/areas_spec.rb +0 -31
  18. data/spec/watirspec/browser_spec.rb +0 -274
  19. data/spec/watirspec/button_spec.rb +0 -242
  20. data/spec/watirspec/buttons_spec.rb +0 -48
  21. data/spec/watirspec/checkbox_spec.rb +0 -272
  22. data/spec/watirspec/checkboxes_spec.rb +0 -32
  23. data/spec/watirspec/dd_spec.rb +0 -123
  24. data/spec/watirspec/dds_spec.rb +0 -31
  25. data/spec/watirspec/div_spec.rb +0 -211
  26. data/spec/watirspec/divs_spec.rb +0 -31
  27. data/spec/watirspec/dl_spec.rb +0 -123
  28. data/spec/watirspec/dls_spec.rb +0 -32
  29. data/spec/watirspec/dt_spec.rb +0 -123
  30. data/spec/watirspec/dts_spec.rb +0 -31
  31. data/spec/watirspec/element_spec.rb +0 -89
  32. data/spec/watirspec/em_spec.rb +0 -97
  33. data/spec/watirspec/ems_spec.rb +0 -32
  34. data/spec/watirspec/filefield_spec.rb +0 -119
  35. data/spec/watirspec/filefields_spec.rb +0 -32
  36. data/spec/watirspec/form_spec.rb +0 -63
  37. data/spec/watirspec/forms_spec.rb +0 -33
  38. data/spec/watirspec/frame_spec.rb +0 -129
  39. data/spec/watirspec/frames_spec.rb +0 -62
  40. data/spec/watirspec/hidden_spec.rb +0 -102
  41. data/spec/watirspec/hiddens_spec.rb +0 -32
  42. data/spec/watirspec/hn_spec.rb +0 -93
  43. data/spec/watirspec/hns_spec.rb +0 -38
  44. data/spec/watirspec/image_spec.rb +0 -207
  45. data/spec/watirspec/images_spec.rb +0 -31
  46. data/spec/watirspec/label_spec.rb +0 -75
  47. data/spec/watirspec/labels_spec.rb +0 -31
  48. data/spec/watirspec/li_spec.rb +0 -112
  49. data/spec/watirspec/lib/guards.rb +0 -59
  50. data/spec/watirspec/lib/server.rb +0 -127
  51. data/spec/watirspec/lib/spec_helper.rb +0 -79
  52. data/spec/watirspec/lib/watirspec.rb +0 -72
  53. data/spec/watirspec/link_spec.rb +0 -168
  54. data/spec/watirspec/links_spec.rb +0 -35
  55. data/spec/watirspec/lis_spec.rb +0 -31
  56. data/spec/watirspec/map_spec.rb +0 -76
  57. data/spec/watirspec/maps_spec.rb +0 -32
  58. data/spec/watirspec/meta_spec.rb +0 -22
  59. data/spec/watirspec/metas_spec.rb +0 -30
  60. data/spec/watirspec/ol_spec.rb +0 -78
  61. data/spec/watirspec/ols_spec.rb +0 -31
  62. data/spec/watirspec/option_spec.rb +0 -173
  63. data/spec/watirspec/p_spec.rb +0 -128
  64. data/spec/watirspec/pre_spec.rb +0 -112
  65. data/spec/watirspec/pres_spec.rb +0 -31
  66. data/spec/watirspec/ps_spec.rb +0 -31
  67. data/spec/watirspec/radio_spec.rb +0 -255
  68. data/spec/watirspec/radios_spec.rb +0 -32
  69. data/spec/watirspec/select_list_spec.rb +0 -318
  70. data/spec/watirspec/select_lists_spec.rb +0 -35
  71. data/spec/watirspec/span_spec.rb +0 -142
  72. data/spec/watirspec/spans_spec.rb +0 -31
  73. data/spec/watirspec/spec_helper.rb +0 -17
  74. data/spec/watirspec/strong_spec.rb +0 -89
  75. data/spec/watirspec/strongs_spec.rb +0 -32
  76. data/spec/watirspec/table_bodies_spec.rb +0 -45
  77. data/spec/watirspec/table_body_spec.rb +0 -98
  78. data/spec/watirspec/table_cell_spec.rb +0 -68
  79. data/spec/watirspec/table_cells_spec.rb +0 -47
  80. data/spec/watirspec/table_footer_spec.rb +0 -85
  81. data/spec/watirspec/table_footers_spec.rb +0 -47
  82. data/spec/watirspec/table_header_spec.rb +0 -85
  83. data/spec/watirspec/table_headers_spec.rb +0 -45
  84. data/spec/watirspec/table_row_spec.rb +0 -87
  85. data/spec/watirspec/table_rows_spec.rb +0 -50
  86. data/spec/watirspec/table_spec.rb +0 -160
  87. data/spec/watirspec/tables_spec.rb +0 -33
  88. data/spec/watirspec/text_field_spec.rb +0 -276
  89. data/spec/watirspec/text_fields_spec.rb +0 -35
  90. data/spec/watirspec/ul_spec.rb +0 -76
  91. data/spec/watirspec/uls_spec.rb +0 -33
  92. data/support/html5/idl_extractor.rb +0 -73
@@ -0,0 +1,962 @@
1
+ // HTMLElement
2
+ interface HTMLElement : Element {
3
+ // DOM tree accessors
4
+ NodeList getElementsByClassName(in DOMString classNames);
5
+
6
+ // dynamic markup insertion
7
+ attribute DOMString innerHTML;
8
+ attribute DOMString outerHTML;
9
+ void insertAdjacentHTML(in DOMString position, in DOMString text);
10
+
11
+ // metadata attributes
12
+ attribute DOMString id;
13
+ attribute DOMString title;
14
+ attribute DOMString lang;
15
+ attribute DOMString dir;
16
+ attribute DOMString className;
17
+ readonly attribute DOMTokenList classList;
18
+ readonly attribute DOMStringMap dataset;
19
+
20
+ // microdata
21
+ attribute boolean itemScope;
22
+ attribute DOMString itemType;
23
+ attribute DOMString itemId;
24
+ attribute DOMString itemRef;
25
+ [PutForwards=value] readonly attribute DOMSettableTokenList itemProp;
26
+ readonly attribute HTMLPropertiesCollection properties;
27
+ attribute any itemValue;
28
+
29
+ // user interaction
30
+ attribute boolean hidden;
31
+ void click();
32
+ void scrollIntoView();
33
+ void scrollIntoView(in boolean top);
34
+ attribute long tabIndex;
35
+ void focus();
36
+ void blur();
37
+ attribute DOMString accessKey;
38
+ readonly attribute DOMString accessKeyLabel;
39
+ attribute boolean draggable;
40
+ attribute DOMString contentEditable;
41
+ readonly attribute boolean isContentEditable;
42
+ attribute HTMLMenuElement contextMenu;
43
+ attribute DOMString spellcheck;
44
+
45
+ // command API
46
+ readonly attribute DOMString commandType;
47
+ readonly attribute DOMString label;
48
+ readonly attribute DOMString icon;
49
+ readonly attribute boolean disabled;
50
+ readonly attribute boolean checked;
51
+
52
+ // styling
53
+ readonly attribute CSSStyleDeclaration style;
54
+
55
+ // event handler IDL attributes
56
+ attribute Function onabort;
57
+ attribute Function onblur;
58
+ attribute Function oncanplay;
59
+ attribute Function oncanplaythrough;
60
+ attribute Function onchange;
61
+ attribute Function onclick;
62
+ attribute Function oncontextmenu;
63
+ attribute Function ondblclick;
64
+ attribute Function ondrag;
65
+ attribute Function ondragend;
66
+ attribute Function ondragenter;
67
+ attribute Function ondragleave;
68
+ attribute Function ondragover;
69
+ attribute Function ondragstart;
70
+ attribute Function ondrop;
71
+ attribute Function ondurationchange;
72
+ attribute Function onemptied;
73
+ attribute Function onended;
74
+ attribute Function onerror;
75
+ attribute Function onfocus;
76
+ attribute Function onformchange;
77
+ attribute Function onforminput;
78
+ attribute Function oninput;
79
+ attribute Function oninvalid;
80
+ attribute Function onkeydown;
81
+ attribute Function onkeypress;
82
+ attribute Function onkeyup;
83
+ attribute Function onload;
84
+ attribute Function onloadeddata;
85
+ attribute Function onloadedmetadata;
86
+ attribute Function onloadstart;
87
+ attribute Function onmousedown;
88
+ attribute Function onmousemove;
89
+ attribute Function onmouseout;
90
+ attribute Function onmouseover;
91
+ attribute Function onmouseup;
92
+ attribute Function onmousewheel;
93
+ attribute Function onpause;
94
+ attribute Function onplay;
95
+ attribute Function onplaying;
96
+ attribute Function onprogress;
97
+ attribute Function onratechange;
98
+ attribute Function onreadystatechange;
99
+ attribute Function onscroll;
100
+ attribute Function onseeked;
101
+ attribute Function onseeking;
102
+ attribute Function onselect;
103
+ attribute Function onshow;
104
+ attribute Function onstalled;
105
+ attribute Function onsubmit;
106
+ attribute Function onsuspend;
107
+ attribute Function ontimeupdate;
108
+ attribute Function onvolumechange;
109
+ attribute Function onwaiting;
110
+ };
111
+
112
+ interface HTMLTableCellElement : HTMLElement {
113
+ attribute unsigned long colSpan;
114
+ attribute unsigned long rowSpan;
115
+ attribute DOMString headers;
116
+ readonly attribute long cellIndex;
117
+ };
118
+
119
+ interface HTMLModElement : HTMLElement {
120
+ attribute DOMString cite;
121
+ attribute DOMString dateTime;
122
+ };
123
+
124
+ // the-meta-element
125
+ [TagName=meta]
126
+ interface HTMLMetaElement : HTMLElement {
127
+ attribute DOMString name;
128
+ attribute DOMString httpEquiv;
129
+ attribute DOMString content;
130
+ };
131
+
132
+ // the-input-element
133
+ [TagName=input]
134
+ interface HTMLInputElement : HTMLElement {
135
+ attribute DOMString accept;
136
+ attribute DOMString alt;
137
+ attribute boolean autocomplete;
138
+ attribute boolean autofocus;
139
+ attribute boolean defaultChecked;
140
+ attribute boolean checked;
141
+ attribute boolean disabled;
142
+ readonly attribute HTMLFormElement form;
143
+ readonly attribute FileList files;
144
+ attribute DOMString formAction;
145
+ attribute DOMString formEnctype;
146
+ attribute DOMString formMethod;
147
+ attribute boolean formNoValidate;
148
+ attribute DOMString formTarget;
149
+ attribute DOMString height;
150
+ attribute boolean indeterminate;
151
+ readonly attribute HTMLElement list;
152
+ attribute DOMString max;
153
+ attribute long maxLength;
154
+ attribute DOMString min;
155
+ attribute boolean multiple;
156
+ attribute DOMString name;
157
+ attribute DOMString pattern;
158
+ attribute DOMString placeholder;
159
+ attribute boolean readOnly;
160
+ attribute boolean required;
161
+ attribute unsigned long size;
162
+ attribute DOMString src;
163
+ attribute DOMString step;
164
+ attribute DOMString type;
165
+ attribute DOMString defaultValue;
166
+ attribute DOMString value;
167
+ attribute Date valueAsDate;
168
+ attribute float valueAsNumber;
169
+ readonly attribute HTMLOptionElement selectedOption;
170
+ attribute DOMString width;
171
+
172
+ void stepUp(in optional long n);
173
+ void stepDown(in optional long n);
174
+
175
+ readonly attribute boolean willValidate;
176
+ readonly attribute ValidityState validity;
177
+ readonly attribute DOMString validationMessage;
178
+ boolean checkValidity();
179
+ void setCustomValidity(in DOMString error);
180
+
181
+ readonly attribute NodeList labels;
182
+
183
+ void select();
184
+ attribute unsigned long selectionStart;
185
+ attribute unsigned long selectionEnd;
186
+ void setSelectionRange(in unsigned long start, in unsigned long end);
187
+ };
188
+
189
+
190
+ // the-th-element
191
+ [TagName=th]
192
+ interface HTMLTableHeaderCellElement : HTMLTableCellElement {
193
+ attribute DOMString scope;
194
+ };
195
+
196
+
197
+ // the-datalist-element
198
+ [TagName=datalist]
199
+ interface HTMLDataListElement : HTMLElement {
200
+ readonly attribute HTMLCollection options;
201
+ };
202
+
203
+
204
+ // the-object-element
205
+ [TagName=object]
206
+ interface HTMLObjectElement : HTMLElement {
207
+ attribute DOMString data;
208
+ attribute DOMString type;
209
+ attribute DOMString name;
210
+ attribute DOMString useMap;
211
+ readonly attribute HTMLFormElement form;
212
+ attribute DOMString width;
213
+ attribute DOMString height;
214
+ readonly attribute Document contentDocument;
215
+ readonly attribute WindowProxy contentWindow;
216
+
217
+ readonly attribute boolean willValidate;
218
+ readonly attribute ValidityState validity;
219
+ readonly attribute DOMString validationMessage;
220
+ boolean checkValidity();
221
+ void setCustomValidity(in DOMString error);
222
+ };
223
+
224
+
225
+ // the-dl-element
226
+ [TagName=dl]
227
+ interface HTMLDListElement : HTMLElement {};
228
+
229
+ // the-li-element
230
+ [TagName=li]
231
+ interface HTMLLIElement : HTMLElement {
232
+ attribute long value;
233
+ };
234
+
235
+
236
+ // the-hr-element
237
+ [TagName=hr]
238
+ interface HTMLHRElement : HTMLElement {};
239
+
240
+
241
+ // the-button-element
242
+ [TagName=button]
243
+ interface HTMLButtonElement : HTMLElement {
244
+ attribute boolean autofocus;
245
+ attribute boolean disabled;
246
+ readonly attribute HTMLFormElement form;
247
+ attribute DOMString formAction;
248
+ attribute DOMString formEnctype;
249
+ attribute DOMString formMethod;
250
+ attribute DOMString formNoValidate;
251
+ attribute DOMString formTarget;
252
+ attribute DOMString name;
253
+ attribute DOMString type;
254
+ attribute DOMString value;
255
+
256
+ readonly attribute boolean willValidate;
257
+ readonly attribute ValidityState validity;
258
+ readonly attribute DOMString validationMessage;
259
+ boolean checkValidity();
260
+ void setCustomValidity(in DOMString error);
261
+
262
+ readonly attribute NodeList labels;
263
+ };
264
+
265
+
266
+ // the-tr-element
267
+ [TagName=tr]
268
+ interface HTMLTableRowElement : HTMLElement {
269
+ readonly attribute long rowIndex;
270
+ readonly attribute long sectionRowIndex;
271
+ readonly attribute HTMLCollection cells;
272
+ HTMLElement insertCell(in optional long index);
273
+ void deleteCell(in long index);
274
+ };
275
+
276
+
277
+ // the-tbody-element
278
+ [TagName=tbody]
279
+ interface HTMLTableSectionElement : HTMLElement {
280
+ readonly attribute HTMLCollection rows;
281
+ HTMLElement insertRow(in optional long index);
282
+ void deleteRow(in long index);
283
+ };
284
+
285
+
286
+ // the-area-element
287
+ [TagName=area]
288
+ interface HTMLAreaElement : HTMLElement {
289
+ attribute DOMString alt;
290
+ attribute DOMString coords;
291
+ attribute DOMString shape;
292
+ stringifier attribute DOMString href;
293
+ attribute DOMString target;
294
+ attribute DOMString ping;
295
+ attribute DOMString rel;
296
+ readonly attribute DOMTokenList relList;
297
+ attribute DOMString media;
298
+ attribute DOMString hreflang;
299
+ attribute DOMString type;
300
+
301
+ // URL decomposition IDL attributes
302
+ attribute DOMString protocol;
303
+ attribute DOMString host;
304
+ attribute DOMString hostname;
305
+ attribute DOMString port;
306
+ attribute DOMString pathname;
307
+ attribute DOMString search;
308
+ attribute DOMString hash;
309
+ };
310
+
311
+
312
+ // the-a-element
313
+ [TagName=a]
314
+ interface HTMLAnchorElement : HTMLElement {
315
+ stringifier attribute DOMString href;
316
+ attribute DOMString target;
317
+ attribute DOMString ping;
318
+ attribute DOMString rel;
319
+ readonly attribute DOMTokenList relList;
320
+ attribute DOMString media;
321
+ attribute DOMString hreflang;
322
+ attribute DOMString type;
323
+
324
+ // URL decomposition IDL attributes
325
+ attribute DOMString protocol;
326
+ attribute DOMString host;
327
+ attribute DOMString hostname;
328
+ attribute DOMString port;
329
+ attribute DOMString pathname;
330
+ attribute DOMString search;
331
+ attribute DOMString hash;
332
+ };
333
+
334
+
335
+ // the-pre-element
336
+ [TagName=pre]
337
+ interface HTMLPreElement : HTMLElement {};
338
+
339
+
340
+ // the-details-element
341
+ [TagName=details]
342
+ interface HTMLDetailsElement : HTMLElement {
343
+ attribute boolean open;
344
+ };
345
+
346
+
347
+ // the-optgroup-element
348
+ [TagName=optgroup]
349
+ interface HTMLOptGroupElement : HTMLElement {
350
+ attribute boolean disabled;
351
+ attribute DOMString label;
352
+ };
353
+
354
+
355
+ // the-colgroup-element
356
+ [TagName=colgroup]
357
+ interface HTMLTableColElement : HTMLElement {
358
+ attribute unsigned long span;
359
+ };
360
+
361
+
362
+ // the-embed-element
363
+ [TagName=embed]
364
+ interface HTMLEmbedElement : HTMLElement {
365
+ attribute DOMString src;
366
+ attribute DOMString type;
367
+ attribute DOMString width;
368
+ attribute DOMString height;
369
+ };
370
+
371
+
372
+ // the-link-element
373
+ [TagName=link]
374
+ interface HTMLLinkElement : HTMLElement {
375
+ attribute boolean disabled;
376
+ attribute DOMString href;
377
+ attribute DOMString rel;
378
+ readonly attribute DOMTokenList relList;
379
+ attribute DOMString media;
380
+ attribute DOMString hreflang;
381
+ attribute DOMString type;
382
+ attribute DOMString sizes;
383
+ };
384
+ HTMLLinkElement implements LinkStyle;
385
+
386
+
387
+ // the-html-element-0
388
+ [TagName=html]
389
+ interface HTMLHtmlElement : HTMLElement {};
390
+
391
+
392
+ // the-option-element
393
+ [TagName=option,
394
+ NamedConstructor=Option(),
395
+ NamedConstructor=Option(in DOMString text),
396
+ NamedConstructor=Option(in DOMString text, in DOMString value),
397
+ NamedConstructor=Option(in DOMString text, in DOMString value, in boolean defaultSelected),
398
+ NamedConstructor=Option(in DOMString text, in DOMString value, in boolean defaultSelected, in boolean selected)]
399
+ interface HTMLOptionElement : HTMLElement {
400
+ attribute boolean disabled;
401
+ readonly attribute HTMLFormElement form;
402
+ attribute DOMString label;
403
+ attribute boolean defaultSelected;
404
+ attribute boolean selected;
405
+ attribute DOMString value;
406
+
407
+ attribute DOMString text;
408
+ readonly attribute long index;
409
+ };
410
+
411
+
412
+ // the-legend-element
413
+ [TagName=legend]
414
+ interface HTMLLegendElement : HTMLElement {
415
+ readonly attribute HTMLFormElement form;
416
+ };
417
+
418
+
419
+ // the-form-element
420
+ [TagName=form,OverrideBuiltins]
421
+ interface HTMLFormElement : HTMLElement {
422
+ attribute DOMString acceptCharset;
423
+ attribute DOMString action;
424
+ attribute boolean autocomplete;
425
+ attribute DOMString enctype;
426
+ attribute DOMString method;
427
+ attribute DOMString name;
428
+ attribute boolean noValidate;
429
+ attribute DOMString target;
430
+
431
+ readonly attribute HTMLFormControlsCollection elements;
432
+ readonly attribute long length;
433
+ caller getter any item(in unsigned long index);
434
+ caller getter any namedItem(in DOMString name);
435
+
436
+ void submit();
437
+ void reset();
438
+ boolean checkValidity();
439
+
440
+ void dispatchFormInput();
441
+ void dispatchFormChange();
442
+ };
443
+
444
+
445
+ // the-param-element
446
+ [TagName=param]
447
+ interface HTMLParamElement : HTMLElement {
448
+ attribute DOMString name;
449
+ attribute DOMString value;
450
+ };
451
+
452
+
453
+ // the-iframe-element
454
+ [TagName=iframe]
455
+ interface HTMLIFrameElement : HTMLElement {
456
+ attribute DOMString src;
457
+ attribute DOMString name;
458
+ attribute DOMString sandbox;
459
+ attribute boolean seamless;
460
+ attribute DOMString width;
461
+ attribute DOMString height;
462
+ readonly attribute Document contentDocument;
463
+ readonly attribute WindowProxy contentWindow;
464
+ };
465
+
466
+
467
+ // the-img-element
468
+ [TagName=img,
469
+ NamedConstructor=Image(),
470
+ NamedConstructor=Image(in unsigned long width),
471
+ NamedConstructor=Image(in unsigned long width, in unsigned long height)]
472
+ interface HTMLImageElement : HTMLElement {
473
+ attribute DOMString alt;
474
+ attribute DOMString src;
475
+ attribute DOMString useMap;
476
+ attribute boolean isMap;
477
+ attribute unsigned long width;
478
+ attribute unsigned long height;
479
+ readonly attribute unsigned long naturalWidth;
480
+ readonly attribute unsigned long naturalHeight;
481
+ readonly attribute boolean complete;
482
+ };
483
+
484
+
485
+ // the-progress-element
486
+ [TagName=progress]
487
+ interface HTMLProgressElement : HTMLElement {
488
+ attribute float value;
489
+ attribute float max;
490
+ readonly attribute float position;
491
+ };
492
+
493
+
494
+ // the-time-element
495
+ [TagName=time]
496
+ interface HTMLTimeElement : HTMLElement {
497
+ attribute DOMString dateTime;
498
+ attribute boolean pubDate;
499
+ readonly attribute Date valueAsDate;
500
+ };
501
+
502
+
503
+ // the-ul-element
504
+ [TagName=ul]
505
+ interface HTMLUListElement : HTMLElement {};
506
+
507
+
508
+ // the-blockquote-element
509
+ [TagName=blockquote]
510
+ interface HTMLQuoteElement : HTMLElement {
511
+ attribute DOMString cite;
512
+ };
513
+
514
+
515
+ // the-style-element
516
+ [TagName=style]
517
+ interface HTMLStyleElement : HTMLElement {
518
+ attribute boolean disabled;
519
+ attribute DOMString media;
520
+ attribute DOMString type;
521
+ attribute boolean scoped;
522
+ };
523
+ HTMLStyleElement implements LinkStyle;
524
+
525
+
526
+ // the-output-element
527
+ [TagName=output]
528
+ interface HTMLOutputElement : HTMLElement {
529
+ attribute DOMString htmlFor;
530
+ readonly attribute HTMLFormElement form;
531
+ attribute DOMString name;
532
+
533
+ readonly attribute DOMString type;
534
+ attribute DOMString defaultValue;
535
+ attribute DOMString value;
536
+
537
+ readonly attribute boolean willValidate;
538
+ readonly attribute ValidityState validity;
539
+ readonly attribute DOMString validationMessage;
540
+ boolean checkValidity();
541
+ void setCustomValidity(in DOMString error);
542
+ };
543
+
544
+
545
+ // the-caption-element
546
+ [TagName=caption]
547
+ interface HTMLTableCaptionElement : HTMLElement {};
548
+
549
+
550
+ // the-table-element
551
+ [TagName=table]
552
+ interface HTMLTableElement : HTMLElement {
553
+ attribute HTMLTableCaptionElement caption;
554
+ HTMLElement createCaption();
555
+ void deleteCaption();
556
+ attribute HTMLTableSectionElement tHead;
557
+ HTMLElement createTHead();
558
+ void deleteTHead();
559
+ attribute HTMLTableSectionElement tFoot;
560
+ HTMLElement createTFoot();
561
+ void deleteTFoot();
562
+ readonly attribute HTMLCollection tBodies;
563
+ HTMLElement createTBody();
564
+ readonly attribute HTMLCollection rows;
565
+ HTMLElement insertRow(in optional long index);
566
+ void deleteRow(in long index);
567
+ attribute DOMString summary;
568
+ };
569
+
570
+
571
+ // the-p-element
572
+ [TagName=p]
573
+ interface HTMLParagraphElement : HTMLElement {};
574
+
575
+
576
+ // the-body-element-0
577
+ [TagName=body]
578
+ interface HTMLBodyElement : HTMLElement {
579
+ attribute Function onafterprint;
580
+ attribute Function onbeforeprint;
581
+ attribute Function onbeforeunload;
582
+ attribute Function onblur;
583
+ attribute Function onerror;
584
+ attribute Function onfocus;
585
+ attribute Function onhashchange;
586
+ attribute Function onload;
587
+ attribute Function onmessage;
588
+ attribute Function onoffline;
589
+ attribute Function ononline;
590
+ attribute Function onpopstate;
591
+ attribute Function onpagehide;
592
+ attribute Function onpageshow;
593
+ attribute Function onredo;
594
+ attribute Function onresize;
595
+ attribute Function onstorage;
596
+ attribute Function onundo;
597
+ attribute Function onunload;
598
+ };
599
+
600
+
601
+ // the-head-element-0
602
+ [TagName=head]
603
+ interface HTMLHeadElement : HTMLElement {};
604
+
605
+
606
+ // the-map-element
607
+ [TagName=map]
608
+ interface HTMLMapElement : HTMLElement {
609
+ attribute DOMString name;
610
+ readonly attribute HTMLCollection areas;
611
+ readonly attribute HTMLCollection images;
612
+ };
613
+
614
+
615
+ // the-div-element
616
+ [TagName=div]
617
+ interface HTMLDivElement : HTMLElement {};
618
+
619
+
620
+ // the-textarea-element
621
+ [TagName=textarea]
622
+ interface HTMLTextAreaElement : HTMLElement {
623
+ attribute boolean autofocus;
624
+ attribute unsigned long cols;
625
+ attribute boolean disabled;
626
+ readonly attribute HTMLFormElement form;
627
+ attribute long maxLength;
628
+ attribute DOMString name;
629
+ attribute DOMString placeholder;
630
+ attribute boolean readOnly;
631
+ attribute boolean required;
632
+ attribute unsigned long rows;
633
+ attribute DOMString wrap;
634
+
635
+ readonly attribute DOMString type;
636
+ attribute DOMString defaultValue;
637
+ attribute DOMString value;
638
+ readonly attribute unsigned long textLength;
639
+
640
+ readonly attribute boolean willValidate;
641
+ readonly attribute ValidityState validity;
642
+ readonly attribute DOMString validationMessage;
643
+ boolean checkValidity();
644
+ void setCustomValidity(in DOMString error);
645
+
646
+ readonly attribute NodeList labels;
647
+
648
+ void select();
649
+ attribute unsigned long selectionStart;
650
+ attribute unsigned long selectionEnd;
651
+ void setSelectionRange(in unsigned long start, in unsigned long end);
652
+ };
653
+
654
+
655
+ // the-td-element
656
+ [TagName=td]
657
+ interface HTMLTableDataCellElement : HTMLTableCellElement {};
658
+
659
+
660
+ // the-canvas-element
661
+ [TagName=canvas]
662
+ interface HTMLCanvasElement : HTMLElement {
663
+ attribute unsigned long width;
664
+ attribute unsigned long height;
665
+
666
+ DOMString toDataURL(in optional DOMString type, in any... args);
667
+
668
+ Object getContext(in DOMString contextId);
669
+ };
670
+
671
+
672
+ // the-br-element
673
+ [TagName=br]
674
+ interface HTMLBRElement : HTMLElement {};
675
+
676
+
677
+ // the-title-element-0
678
+ [TagName=title]
679
+ interface HTMLTitleElement : HTMLElement {
680
+ attribute DOMString text;
681
+ };
682
+
683
+
684
+ // the-meter-element
685
+ [TagName=meter]
686
+ interface HTMLMeterElement : HTMLElement {
687
+ attribute float value;
688
+ attribute float min;
689
+ attribute float max;
690
+ attribute float low;
691
+ attribute float high;
692
+ attribute float optimum;
693
+ };
694
+
695
+
696
+ // the-h1-h2-h3-h4-h5-and-h6-elements
697
+ [TagName=h1]
698
+ interface HTMLHeadingElement : HTMLElement {};
699
+
700
+
701
+ // the-base-element
702
+ [TagName=base]
703
+ interface HTMLBaseElement : HTMLElement {
704
+ attribute DOMString href;
705
+ attribute DOMString target;
706
+ };
707
+
708
+ interface HTMLUnknownElement : HTMLElement { };
709
+
710
+
711
+ // the-select-element
712
+ [TagName=select]
713
+ interface HTMLSelectElement : HTMLElement {
714
+ attribute boolean autofocus;
715
+ attribute boolean disabled;
716
+ readonly attribute HTMLFormElement form;
717
+ attribute boolean multiple;
718
+ attribute DOMString name;
719
+ attribute unsigned long size;
720
+
721
+ readonly attribute DOMString type;
722
+
723
+ readonly attribute HTMLOptionsCollection options;
724
+ attribute unsigned long length;
725
+ caller getter any item(in unsigned long index);
726
+ caller getter any namedItem(in DOMString name);
727
+ void add(in HTMLElement element, in optional HTMLElement before);
728
+ void add(in HTMLElement element, in long before);
729
+ void remove(in long index);
730
+
731
+ readonly attribute HTMLCollection selectedOptions;
732
+ attribute long selectedIndex;
733
+ attribute DOMString value;
734
+
735
+ readonly attribute boolean willValidate;
736
+ readonly attribute ValidityState validity;
737
+ readonly attribute DOMString validationMessage;
738
+ boolean checkValidity();
739
+ void setCustomValidity(in DOMString error);
740
+
741
+ readonly attribute NodeList labels;
742
+ };
743
+
744
+
745
+ // the-label-element
746
+ [TagName=label]
747
+ interface HTMLLabelElement : HTMLElement {
748
+ readonly attribute HTMLFormElement form;
749
+ attribute DOMString htmlFor;
750
+ readonly attribute HTMLElement control;
751
+ };
752
+
753
+
754
+ // the-keygen-element
755
+ [TagName=keygen]
756
+ interface HTMLKeygenElement : HTMLElement {
757
+ attribute boolean autofocus;
758
+ attribute DOMString challenge;
759
+ attribute boolean disabled;
760
+ readonly attribute HTMLFormElement form;
761
+ attribute DOMString keytype;
762
+ attribute DOMString name;
763
+
764
+ readonly attribute DOMString type;
765
+
766
+ readonly attribute boolean willValidate;
767
+ readonly attribute ValidityState validity;
768
+ readonly attribute DOMString validationMessage;
769
+ boolean checkValidity();
770
+ void setCustomValidity(in DOMString error);
771
+
772
+ readonly attribute NodeList labels;
773
+ };
774
+
775
+
776
+ // the-fieldset-element
777
+ [TagName=fieldset]
778
+ interface HTMLFieldSetElement : HTMLElement {
779
+ attribute boolean disabled;
780
+ readonly attribute HTMLFormElement form;
781
+ attribute DOMString name;
782
+
783
+ readonly attribute DOMString type;
784
+
785
+ readonly attribute HTMLFormControlsCollection elements;
786
+
787
+ readonly attribute boolean willValidate;
788
+ readonly attribute ValidityState validity;
789
+ readonly attribute DOMString validationMessage;
790
+ boolean checkValidity();
791
+ void setCustomValidity(in DOMString error);
792
+ };
793
+
794
+
795
+ // the-source-element
796
+ [TagName=source]
797
+ interface HTMLSourceElement : HTMLElement {
798
+ attribute DOMString src;
799
+ attribute DOMString type;
800
+ attribute DOMString media;
801
+ };
802
+
803
+
804
+ // the-span-element
805
+ [TagName=span]
806
+ interface HTMLSpanElement : HTMLElement {};
807
+
808
+
809
+ // the-ol-element
810
+ [TagName=ol]
811
+ interface HTMLOListElement : HTMLElement {
812
+ attribute boolean reversed;
813
+ attribute long start;
814
+ };
815
+
816
+ // extras
817
+
818
+ // the-thead-element
819
+ [TagName=thead]
820
+ interface HTMLTheadElement : HTMLTableSectionElement {};
821
+
822
+ // the-dd-element
823
+ [TagName=dd]
824
+ interface HTMLDdElement : HTMLElement {};
825
+
826
+ // the-address-element
827
+ [TagName=address]
828
+ interface HTMLAddressElement : HTMLElement {};
829
+
830
+ // the-nav-element
831
+ [TagName=nav]
832
+ interface HTMLNavElement : HTMLElement {};
833
+
834
+ // the-tfoot-element
835
+ [TagName=tfoot]
836
+ interface HTMLTFootElement : HTMLTableSectionElement {};
837
+
838
+ // the-sub-and-sup-elements
839
+ [TagName=sub]
840
+ interface HTMLSubElement : HTMLElement {};
841
+ [TagName=sup]
842
+ interface HTMLSupElement : HTMLElement {};
843
+
844
+ // the-bdo-element
845
+ [TagName=bdo]
846
+ interface HTMLBdoElement : HTMLElement {};
847
+
848
+ // the-rp-element
849
+ [TagName=rp]
850
+ interface HTMLRpElement : HTMLElement {};
851
+
852
+ // the-rt-element
853
+ [TagName=rt]
854
+ interface HTMLRtElement : HTMLElement {};
855
+
856
+ // the-mark-element
857
+ [TagName=mark]
858
+ interface HTMLMarkElement : HTMLElement {};
859
+
860
+ // the-kbd-element
861
+ [TagName=kbd]
862
+ interface HTMLKbdElement : HTMLElement {};
863
+
864
+ // the-dfn-element
865
+ [TagName=dfn]
866
+ interface HTMLDfnElement : HTMLElement {};
867
+
868
+ // the-cite-element
869
+ [TagName=cite]
870
+ interface HTMLCiteElement : HTMLElement {};
871
+
872
+ // the-ins-element
873
+ [TagName=ins]
874
+ interface HTMLInsElement : HTMLModElement {};
875
+
876
+ // the-b-element
877
+ [TagName=b]
878
+ interface HTMLBElement : HTMLElement {};
879
+
880
+ // the-noscript-element
881
+ [TagName=noscript]
882
+ interface HTMLNoscriptElement : HTMLElement {};
883
+
884
+ // the-figure-element
885
+ [TagName=figure]
886
+ interface HTMLFigureElement : HTMLElement {};
887
+
888
+ // the-code-element
889
+ [TagName=code]
890
+ interface HTMLCodeElement : HTMLElement {};
891
+
892
+ // the-q-element
893
+ [TagName=q]
894
+ interface HTMLQElement : HTMLQuoteElement {};
895
+
896
+ // the-strong-element
897
+ [TagName=strong]
898
+ interface HTMLStrongElement : HTMLElement {};
899
+
900
+ // the-header-element
901
+ [TagName=header]
902
+ interface HTMLHeaderElement : HTMLElement {};
903
+
904
+ // the-hgroup-element
905
+ [TagName=hgroup]
906
+ interface HTMLHgroupElement : HTMLElement {};
907
+
908
+ // the-aside-element
909
+ [TagName=aside]
910
+ interface HTMLAsideElement : HTMLElement {};
911
+
912
+ // the-samp-element
913
+ [TagName=samp]
914
+ interface HTMLSampElement : HTMLElement {};
915
+
916
+ // the-section-element
917
+ [TagName=section]
918
+ interface HTMLSectionElement : HTMLElement {};
919
+
920
+ // the-dt-element
921
+ [TagName=dt]
922
+ interface HTMLDtElement : HTMLElement {};
923
+
924
+ // the-col-element
925
+ [TagName=col]
926
+ interface HTMLColElement : HTMLTableColElement {};
927
+
928
+ // the-i-element
929
+ [TagName=i]
930
+ interface HTMLIElement : HTMLElement {};
931
+
932
+ // the-var-element
933
+ [TagName=var]
934
+ interface HTMLVarElement : HTMLElement {};
935
+
936
+ // the-abbr-element
937
+ [TagName=abbr]
938
+ interface HTMLAbbrElement : HTMLElement {};
939
+
940
+ // the-small-element
941
+ [TagName=small]
942
+ interface HTMLSmallElement : HTMLElement {};
943
+
944
+ // the-footer-element
945
+ [TagName=footer]
946
+ interface HTMLFooterElement : HTMLElement {};
947
+
948
+ // the-ruby-element
949
+ [TagName=ruby]
950
+ interface HTMLRubyElement : HTMLElement {};
951
+
952
+ // the-article-element
953
+ [TagName=article]
954
+ interface HTMLArticleElement : HTMLElement {};
955
+
956
+ // the-del-element
957
+ [TagName=del]
958
+ interface HTMLDelElement : HTMLModElement {};
959
+
960
+ // the-em-element
961
+ [TagName=em]
962
+ interface HTMLEmElement : HTMLElement {};