c358393220d64aa983eef26b90a4f869eb6fa5eb
1 /*
2 * Copyright (c) 2004 World Wide Web Consortium,
3 *
4 * (Massachusetts Institute of Technology, European Research Consortium for
5 * Informatics and Mathematics, Keio University). All Rights Reserved. This
6 * work is distributed under the W3C(r) Software License [1] in the hope that
7 * it will be useful, but WITHOUT ANY WARRANTY; without even the implied
8 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
9 *
10 * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
11 */
13 package org.w3c.dom.views;
15 import org.w3c.dom.Node;
17 /**
18 * Presents a flatter model of a visual view.
19 * <p>See also the <a href='http://www.w3.org/TR/2004/NOTE-DOM-Level-3-Views-20040226'>Document Object Model (DOM) Level 3 Views and Formatting
20 Specification</a>.
21 */
22 public interface VisualView {
23 /**
24 * A string identifying the type of fonts on the system so that font name
25 * strings may be properly interpreted.
26 */
27 public String getFontScheme();
29 /**
30 * The width, in horizontal units, of the view.
31 */
32 public int getWidth();
34 /**
35 * The height, in vertical units, of the view.
36 */
37 public int getHeight();
39 /**
40 * The number of horizontal dots per inch in the view, used to interpret
41 * horizontal values.
42 */
43 public int getHorizontalDPI();
45 /**
46 * The number of vertical dots per inch in the view, used to interpret
47 * vertical values.
48 */
49 public int getVerticalDPI();
51 /**
52 * Creates a visual character to match and return information on a single
53 * visual character of the view.
54 * @return The requested <code>VisualCharacter</code>.
55 */
56 public VisualCharacter createVisualCharacter();
58 /**
59 * Creates a visual character run to match and return information on a run
60 * of similar ajdacent visual characters of the view.
61 * <br>This will match the largest character run that meets the specified
62 * criteria, is not contiguously displayed on the view and has
63 * homogeneous display properties.
64 * @return The requested <code>VisualCharacterRun</code>.
65 */
66 public VisualCharacterRun createVisualCharacterRun();
68 /**
69 * Creates a visual frame to match and return information on a frame of
70 * the view.
71 * @return The requested <code>VisualFrame</code>.
72 */
73 public VisualFrame createVisualFrame();
75 /**
76 * Creates a visual image to match and return information on an image of
77 * the view.
78 * @return The requested <code>VisualImage</code>.
79 */
80 public VisualImage createVisualImage();
82 /**
83 * Creates a visual form button to match and return information on a form
84 * button of the view.
85 * @return The requested <code>VisualFormButton</code>.
86 */
87 public VisualFormButton createVisualFormButton();
89 /**
90 * Creates a visual form field to match and return information on a form
91 * field of the view.
92 * @return The requested <code>VisualFormField</code>.
93 */
94 public VisualFormField createVisualFormField();
96 /**
97 * @param boundary
98 * @param offset
99 * @param extend
100 * @param add
101 */
102 public void select(Node boundary,
103 int offset,
104 boolean extend,
105 boolean add);
107 /**
108 * @param segment
109 */
110 public void matchSegment(VisualResource segment);
112 }