56 provides Window Server clients with functions for setting and getting the |
56 provides Window Server clients with functions for setting and getting the |
57 current display configuration, getting a list of available resolutions and |
57 current display configuration, getting a list of available resolutions and |
58 enabling display change event notifications (<codeph>EEventDisplayChanged</codeph>). |
58 enabling display change event notifications (<codeph>EEventDisplayChanged</codeph>). |
59 The following diagram shows the class hierarchy. </p> <fig id="GUID-F9D95387-151F-5725-8BDD-C44A3D333A97"> |
59 The following diagram shows the class hierarchy. </p> <fig id="GUID-F9D95387-151F-5725-8BDD-C44A3D333A97"> |
60 <title> Display control class diagram </title> |
60 <title> Display control class diagram </title> |
61 <image href="GUID-68E3609C-3429-5B1C-B8D9-C0EBBACEF357_d0e235540_href.png" placement="inline"/> |
61 <image href="GUID-68E3609C-3429-5B1C-B8D9-C0EBBACEF357_d0e241513_href.png" placement="inline"/> |
62 </fig> <p>For a diagram of the <xref href="GUID-7ED11E23-6E13-36D4-BB10-8AE9E745C560.dita"><apiname>TDisplayConfiguration</apiname></xref> class |
62 </fig> <p>For a diagram of the <xref href="GUID-7ED11E23-6E13-36D4-BB10-8AE9E745C560.dita"><apiname>TDisplayConfiguration</apiname></xref> class |
63 hierarchy, see the <xref href="GUID-19C3DA8C-0128-5172-B859-4FD6F6197451.dita">Common |
63 hierarchy, see the <xref href="GUID-19C3DA8C-0128-5172-B859-4FD6F6197451.dita">Common |
64 Graphics Headers Component Overview</xref>. </p> <p>Once you have obtained |
64 Graphics Headers Component Overview</xref>. </p> <p>Once you have obtained |
65 the <xref href="GUID-0C384D35-77DD-318E-AF3E-C9ED5ADD9D11.dita"><apiname>MDisplayControl</apiname></xref> interface, you can call <codeph>GetResolutions()</codeph> on |
65 the <xref href="GUID-0C384D35-77DD-318E-AF3E-C9ED5ADD9D11.dita"><apiname>MDisplayControl</apiname></xref> interface, you can call <codeph>GetResolutions()</codeph> on |
66 it. For example: </p> <codeblock id="GUID-C82D0166-0E29-5F90-8087-800EDDE2D895" xml:space="preserve">// Get available resolutions |
66 it. For example: </p> <codeblock id="GUID-C82D0166-0E29-5F90-8087-800EDDE2D895" xml:space="preserve">// Get available resolutions |
167 knowing the extent of both the application and the full UI area. The application |
167 knowing the extent of both the application and the full UI area. The application |
168 can use the <xref href="GUID-BA6FEFAE-8891-3286-A38F-2EA522D7A27E.dita"><apiname>MDisplayMapping</apiname></xref> interface to get this information, |
168 can use the <xref href="GUID-BA6FEFAE-8891-3286-A38F-2EA522D7A27E.dita"><apiname>MDisplayMapping</apiname></xref> interface to get this information, |
169 so that the virtual keyboard can be drawn within the full UI area but outside |
169 so that the virtual keyboard can be drawn within the full UI area but outside |
170 of the application's extent. </p> <fig id="GUID-55BD49C6-9A51-53A7-A587-29A151FACF6B"> |
170 of the application's extent. </p> <fig id="GUID-55BD49C6-9A51-53A7-A587-29A151FACF6B"> |
171 <title> Display mapping class diagram </title> |
171 <title> Display mapping class diagram </title> |
172 <image href="GUID-7293765E-2B1E-5F0D-B6A8-0E48729DC365_d0e235688_href.png" placement="inline"/> |
172 <image href="GUID-7293765E-2B1E-5F0D-B6A8-0E48729DC365_d0e241661_href.png" placement="inline"/> |
173 </fig> <p> </p> <p>The <xref href="GUID-BA6FEFAE-8891-3286-A38F-2EA522D7A27E.dita"><apiname>MDisplayMapping</apiname></xref> interface is very |
173 </fig> <p> </p> <p>The <xref href="GUID-BA6FEFAE-8891-3286-A38F-2EA522D7A27E.dita"><apiname>MDisplayMapping</apiname></xref> interface is very |
174 flexible. UIDs are used to signify the application UI coordinate space, the |
174 flexible. UIDs are used to signify the application UI coordinate space, the |
175 full UI space, the composition/display coordinate space (which may be a different |
175 full UI space, the composition/display coordinate space (which may be a different |
176 scale to the UI coordinate space) and the Direct Screen Access (DSA) space |
176 scale to the UI coordinate space) and the Direct Screen Access (DSA) space |
177 (which may match the full UI space, or be offset relative to the application |
177 (which may match the full UI space, or be offset relative to the application |
182 composition/display space may enlarge (or sometimes reduce) the rectangle’s |
182 composition/display space may enlarge (or sometimes reduce) the rectangle’s |
183 size. </p> <p>For example, consider the following diagram, in which the outer |
183 size. </p> <p>For example, consider the following diagram, in which the outer |
184 rectangle represents the display area and the inner one represents the application |
184 rectangle represents the display area and the inner one represents the application |
185 space (screen mode). </p> <fig id="GUID-6935A7BE-C651-5582-8E2A-11A18CDD531F"> |
185 space (screen mode). </p> <fig id="GUID-6935A7BE-C651-5582-8E2A-11A18CDD531F"> |
186 <title>Display area and application extent </title> |
186 <title>Display area and application extent </title> |
187 <image href="GUID-09142C26-0AFA-510E-836D-010EE07A1549_d0e235717_href.png" placement="inline"/> |
187 <image href="GUID-09142C26-0AFA-510E-836D-010EE07A1549_d0e241690_href.png" placement="inline"/> |
188 </fig> <p>The display resolution is 1280 x 720, the application size is 176 |
188 </fig> <p>The display resolution is 1280 x 720, the application size is 176 |
189 x 208 and a virtual resolution of 426 x 240 has been introduced, which gives |
189 x 208 and a virtual resolution of 426 x 240 has been introduced, which gives |
190 a scaling factor of three in each direction. All pixels are approximately |
190 a scaling factor of three in each direction. All pixels are approximately |
191 square, for simplicity. The application area has been centered in the display, |
191 square, for simplicity. The application area has been centered in the display, |
192 giving an <i>X</i> offset of (426-176)/2 and a <i>Y</i> offset of (240-208)/2, |
192 giving an <i>X</i> offset of (426-176)/2 and a <i>Y</i> offset of (240-208)/2, |