~ubuntu-branches/ubuntu/maverick/xorg-server/maverick-security

« back to all changes in this revision

Viewing changes to hw/dmx/doc/html/dmxwindow_8h_source.html

  • Committer: Bazaar Package Importer
  • Author(s): Christopher James Halse Rogers
  • Date: 2010-08-05 11:25:14 UTC
  • mfrom: (1.1.35 upstream) (0.1.14 experimental)
  • Revision ID: james.westby@ubuntu.com-20100805112514-q4efdgj3nblevos2
Tags: 2:1.8.99.905-1ubuntu1
* Merge from (unreleased) Debian experimental.  Remaining Ubuntu changes:
  - rules, control:
    + Disable SELinux, libaudit-dev is not in main yet (LP 406226).
      Drop libaudit-dev from build-deps.
  - rules: Enable xcsecurity (LP 247537).
  - local/xvfb-run*: Add correct docs about error codes (LP 328205)
  - rules: Add --with-extra-module-dir to support GL alternatives.
  - control: Xvfb depends on xauth, x11-xkb-utils. (LP 500102)
  - rules, local/64-xorg-xkb.rules: Don't use keyboard-configuration
    until it's available.
  - control: Update some versioned Breaks for Ubuntu versions.
  - debian/patches:
    + 100_rethrow_signals.patch:
      When aborting, re-raise signals for apport
    + 109_fix-swcursor-crash.patch:
      Avoid dereferencing null pointer while reloading cursors during
      resume. (LP 371405)
    + 111_armel-drv-fallbacks.patch:
      Add support for armel driver fallbacks.
    + 121_only_switch_vt_when_active.diff:
      Add a check to prevent the X server from changing the VT when killing
      GDM from the console.
    + 122_xext_fix_card32_overflow_in_xauth.patch:
      Fix server crash when “xauth generate” is called with large timeout.
    + 157_check_null_modes.patch, 162_null_crtc_in_rotation.patch,
      166_nullptr_xinerama_keyrepeat.patch, 167_nullptr_xisbread.patch
      169_mipointer_nullptr_checks.patch,
      172_cwgetbackingpicture_nullptr_check.patch:
      Fix various segfaults in xserver by checking pointers for NULL
      values before dereferencing them.
    + 165_man_xorg_conf_no_device_ident.patch
      Correct man page
    + 168_glibc_trace_to_stderr.patch:
      Report abort traces to stderr instead of terminal
    + 184_virtual_devices_autodetect.patch:
      Use vesa for qemu device, which is not supported by cirrus
    + 187_edid_quirk_hp_nc8430.patch:
      Quirk for another LPL monitor (LP 380009)
    + 188_default_primary_to_first_busid.patch:
      Pick the first device and carry on (LP 459512)
    + 189_xserver_1.5.0_bg_none_root.patch:
      Create a root window with no background.
    + 190_cache-xkbcomp_output_for_fast_start_up.patch:
      Cache keyboard settings.
    + 191-Xorg-add-an-extra-module-path.patch:
      Add support for the alternatives module path.
    + 197_xvfb-randr.patch:
      Adds xrandr support to xvfb. (LP 516123)
    + 198_nohwaccess.patch:
      Adds a -nohwaccess argument to make X not access the hardware
      ports directly.
    + 200_randr-null.patch:
      Clarify a pointer initialization.
* Update changelog entries for 1.8.1.902-1 which became 1.8.99.904-1
* Drop 196_xvfbscreeninit-handling.patch: it's semantically empty, and now 
  doesn't apply.  Merge remaining #include change into 197_xvfb-randr.patch
* New upstream version will start correctly when no outputs are connected,
  as long as the video driver can dynamically resize the framebuffer
  (true for all KMS drivers) (LP: #337889)
* New upstream version fixes crash on non-admin logout with KDE (LP: #569879)
* Refresh 111_armel-drv-fallbacks.patch to fix the build on armel

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
    <link href="doxygen.css" rel="stylesheet" type="text/css">
7
7
  </head>
8
8
  <body>
9
 
<!-- Generated by Doxygen 1.6.2-20100208 -->
 
9
<!-- Generated by Doxygen 1.6.3 -->
10
10
<div class="navigation" id="top">
11
11
  <div class="tabs">
12
12
    <ul>
68
68
<a name="l00049"></a><a class="code" href="struct__dmxWinPriv.html#a852246cf86eff5c476e79915828a976f">00049</a>     Colormap       <a class="code" href="struct__dmxWinPriv.html#a852246cf86eff5c476e79915828a976f">cmap</a>;
69
69
<a name="l00050"></a><a class="code" href="struct__dmxWinPriv.html#a19177a0167fccfd592c7f45c929c2be9">00050</a>     Visual        *<a class="code" href="struct__dmxWinPriv.html#a19177a0167fccfd592c7f45c929c2be9">visual</a>;
70
70
<a name="l00051"></a><a class="code" href="struct__dmxWinPriv.html#af0c3737de0bf15b112b7d9aba3774196">00051</a>     Bool           <a class="code" href="struct__dmxWinPriv.html#af0c3737de0bf15b112b7d9aba3774196">isShaped</a>;
71
 
<a name="l00052"></a>00052 <span class="preprocessor">#ifdef RENDER</span>
72
 
<a name="l00053"></a><a class="code" href="struct__dmxWinPriv.html#aada5c9737655b65fcd384446a5bb8906">00053</a> <span class="preprocessor"></span>    Bool           <a class="code" href="struct__dmxWinPriv.html#aada5c9737655b65fcd384446a5bb8906">hasPict</a>;
73
 
<a name="l00054"></a>00054 <span class="preprocessor">#endif</span>
74
 
<a name="l00055"></a>00055 <span class="preprocessor"></span><span class="preprocessor">#ifdef GLXEXT</span>
75
 
<a name="l00056"></a>00056 <span class="preprocessor"></span>    <span class="keywordtype">void</span>          *swapGroup;
76
 
<a name="l00057"></a>00057     <span class="keywordtype">int</span>            barrier;
77
 
<a name="l00058"></a>00058     void         (*windowDestroyed)(WindowPtr);
78
 
<a name="l00059"></a>00059     void         (*windowUnmapped)(WindowPtr);
79
 
<a name="l00060"></a>00060 <span class="preprocessor">#endif</span>
80
 
<a name="l00061"></a>00061 <span class="preprocessor"></span>} <a class="code" href="struct__dmxWinPriv.html">dmxWinPrivRec</a>, *<a class="code" href="struct__dmxWinPriv.html">dmxWinPrivPtr</a>;
81
 
<a name="l00062"></a>00062 
 
71
<a name="l00052"></a><a class="code" href="struct__dmxWinPriv.html#aada5c9737655b65fcd384446a5bb8906">00052</a>     Bool           <a class="code" href="struct__dmxWinPriv.html#aada5c9737655b65fcd384446a5bb8906">hasPict</a>;
 
72
<a name="l00053"></a>00053 <span class="preprocessor">#ifdef GLXEXT</span>
 
73
<a name="l00054"></a>00054 <span class="preprocessor"></span>    <span class="keywordtype">void</span>          *swapGroup;
 
74
<a name="l00055"></a>00055     <span class="keywordtype">int</span>            barrier;
 
75
<a name="l00056"></a>00056     void         (*windowDestroyed)(WindowPtr);
 
76
<a name="l00057"></a>00057     void         (*windowUnmapped)(WindowPtr);
 
77
<a name="l00058"></a>00058 <span class="preprocessor">#endif</span>
 
78
<a name="l00059"></a>00059 <span class="preprocessor"></span>} <a class="code" href="struct__dmxWinPriv.html">dmxWinPrivRec</a>, *<a class="code" href="struct__dmxWinPriv.html">dmxWinPrivPtr</a>;
 
79
<a name="l00060"></a>00060 
 
80
<a name="l00061"></a>00061 
 
81
<a name="l00062"></a>00062 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#ad1c1a5296c1ef99d4dd829108903b21f">dmxInitWindow</a>(ScreenPtr pScreen);
82
82
<a name="l00063"></a>00063 
83
 
<a name="l00064"></a>00064 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#ad1c1a5296c1ef99d4dd829108903b21f">dmxInitWindow</a>(ScreenPtr pScreen);
 
83
<a name="l00064"></a>00064 <span class="keyword">extern</span> Window <a class="code" href="dmxwindow_8c.html#a5296d023014ce3d69c04557431785923">dmxCreateRootWindow</a>(WindowPtr pWindow);
84
84
<a name="l00065"></a>00065 
85
 
<a name="l00066"></a>00066 <span class="keyword">extern</span> Window <a class="code" href="dmxwindow_8c.html#a5296d023014ce3d69c04557431785923">dmxCreateRootWindow</a>(WindowPtr pWindow);
86
 
<a name="l00067"></a>00067 
87
 
<a name="l00068"></a>00068 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#ab8f054330062393aa409a31ec692cf0d">dmxGetDefaultWindowAttributes</a>(WindowPtr pWindow,
88
 
<a name="l00069"></a>00069                                           Colormap *cmap,
89
 
<a name="l00070"></a>00070                                           Visual **visual);
90
 
<a name="l00071"></a>00071 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#afefa2121a2898700d285e77730a52c4d">dmxCreateAndRealizeWindow</a>(WindowPtr pWindow, Bool doSync);
91
 
<a name="l00072"></a>00072 
92
 
<a name="l00073"></a>00073 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#aebb0ce7ac51645832a20c7d6a7d21d9c">dmxCreateWindow</a>(WindowPtr pWindow);
93
 
<a name="l00074"></a>00074 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#a25a0aafd36f68137e67a3e6d95b78f53">dmxDestroyWindow</a>(WindowPtr pWindow);
94
 
<a name="l00075"></a>00075 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#adba873c51adf03b8af700c67fc6fba9b">dmxPositionWindow</a>(WindowPtr pWindow, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);
95
 
<a name="l00076"></a>00076 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#ae6f0ba304627ea760df9e9c53f7bbae6">dmxChangeWindowAttributes</a>(WindowPtr pWindow, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> mask);
96
 
<a name="l00077"></a>00077 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#ac75f5d6332a78eeac4e0e185cf326045">dmxRealizeWindow</a>(WindowPtr pWindow);
97
 
<a name="l00078"></a>00078 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#aeab9f468cc2c9374658213ee90a234a0">dmxUnrealizeWindow</a>(WindowPtr pWindow);
98
 
<a name="l00079"></a>00079 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#a21e147f295faee8e53eb162071dc66ad">dmxRestackWindow</a>(WindowPtr pWindow, WindowPtr pOldNextSib);
99
 
<a name="l00080"></a>00080 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#a02a6991e5248012e287fe4be3a985926">dmxWindowExposures</a>(WindowPtr pWindow, RegionPtr prgn,
100
 
<a name="l00081"></a>00081                                RegionPtr other_exposed);
101
 
<a name="l00082"></a>00082 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#ad78bdba42db62285cf174f072a63a81a">dmxCopyWindow</a>(WindowPtr pWindow, DDXPointRec ptOldOrg,
102
 
<a name="l00083"></a>00083                           RegionPtr prgnSrc);
103
 
<a name="l00084"></a>00084 
104
 
<a name="l00085"></a>00085 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#ac3811e381fef200b5cd3207478df66e1">dmxResizeWindow</a>(WindowPtr pWindow, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y,
105
 
<a name="l00086"></a>00086                             <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> w, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> h, WindowPtr pSib);
106
 
<a name="l00087"></a>00087 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#ab07d7010858aa078f26396f420fdea8c">dmxReparentWindow</a>(WindowPtr pWindow, WindowPtr pPriorParent);
 
85
<a name="l00066"></a>00066 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#ab8f054330062393aa409a31ec692cf0d">dmxGetDefaultWindowAttributes</a>(WindowPtr pWindow,
 
86
<a name="l00067"></a>00067                                           Colormap *cmap,
 
87
<a name="l00068"></a>00068                                           Visual **visual);
 
88
<a name="l00069"></a>00069 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#afefa2121a2898700d285e77730a52c4d">dmxCreateAndRealizeWindow</a>(WindowPtr pWindow, Bool doSync);
 
89
<a name="l00070"></a>00070 
 
90
<a name="l00071"></a>00071 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#aebb0ce7ac51645832a20c7d6a7d21d9c">dmxCreateWindow</a>(WindowPtr pWindow);
 
91
<a name="l00072"></a>00072 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#a25a0aafd36f68137e67a3e6d95b78f53">dmxDestroyWindow</a>(WindowPtr pWindow);
 
92
<a name="l00073"></a>00073 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#adba873c51adf03b8af700c67fc6fba9b">dmxPositionWindow</a>(WindowPtr pWindow, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);
 
93
<a name="l00074"></a>00074 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#ae6f0ba304627ea760df9e9c53f7bbae6">dmxChangeWindowAttributes</a>(WindowPtr pWindow, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> mask);
 
94
<a name="l00075"></a>00075 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#ac75f5d6332a78eeac4e0e185cf326045">dmxRealizeWindow</a>(WindowPtr pWindow);
 
95
<a name="l00076"></a>00076 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#aeab9f468cc2c9374658213ee90a234a0">dmxUnrealizeWindow</a>(WindowPtr pWindow);
 
96
<a name="l00077"></a>00077 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#a21e147f295faee8e53eb162071dc66ad">dmxRestackWindow</a>(WindowPtr pWindow, WindowPtr pOldNextSib);
 
97
<a name="l00078"></a>00078 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#a02a6991e5248012e287fe4be3a985926">dmxWindowExposures</a>(WindowPtr pWindow, RegionPtr prgn,
 
98
<a name="l00079"></a>00079                                RegionPtr other_exposed);
 
99
<a name="l00080"></a>00080 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#ad78bdba42db62285cf174f072a63a81a">dmxCopyWindow</a>(WindowPtr pWindow, DDXPointRec ptOldOrg,
 
100
<a name="l00081"></a>00081                           RegionPtr prgnSrc);
 
101
<a name="l00082"></a>00082 
 
102
<a name="l00083"></a>00083 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#ac3811e381fef200b5cd3207478df66e1">dmxResizeWindow</a>(WindowPtr pWindow, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y,
 
103
<a name="l00084"></a>00084                             <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> w, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> h, WindowPtr pSib);
 
104
<a name="l00085"></a>00085 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#ab07d7010858aa078f26396f420fdea8c">dmxReparentWindow</a>(WindowPtr pWindow, WindowPtr pPriorParent);
 
105
<a name="l00086"></a>00086 
 
106
<a name="l00087"></a>00087 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#a5d63a05eab33981615afdf523a44c697">dmxChangeBorderWidth</a>(WindowPtr pWindow, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> width);
107
107
<a name="l00088"></a>00088 
108
 
<a name="l00089"></a>00089 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#a5d63a05eab33981615afdf523a44c697">dmxChangeBorderWidth</a>(WindowPtr pWindow, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> width);
109
 
<a name="l00090"></a>00090 
110
 
<a name="l00091"></a>00091 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#af96b8583264e78a4c693c6f7ee887067">dmxResizeScreenWindow</a>(ScreenPtr pScreen,
111
 
<a name="l00092"></a>00092                                   <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> w, <span class="keywordtype">int</span> h);
112
 
<a name="l00093"></a>00093 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#a817739d4921329f1cf71f2af6fcacfc2">dmxResizeRootWindow</a>(WindowPtr pRoot,
113
 
<a name="l00094"></a>00094                                 <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> w, <span class="keywordtype">int</span> h);
 
108
<a name="l00089"></a>00089 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#af96b8583264e78a4c693c6f7ee887067">dmxResizeScreenWindow</a>(ScreenPtr pScreen,
 
109
<a name="l00090"></a>00090                                   <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> w, <span class="keywordtype">int</span> h);
 
110
<a name="l00091"></a>00091 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#a817739d4921329f1cf71f2af6fcacfc2">dmxResizeRootWindow</a>(WindowPtr pRoot,
 
111
<a name="l00092"></a>00092                                 <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> w, <span class="keywordtype">int</span> h);
 
112
<a name="l00093"></a>00093 
 
113
<a name="l00094"></a>00094 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#a978ad158f0c814ca10dc965c5f7b74c2">dmxBEDestroyWindow</a>(WindowPtr pWindow);
114
114
<a name="l00095"></a>00095 
115
 
<a name="l00096"></a>00096 <span class="keyword">extern</span> Bool <a class="code" href="dmxwindow_8c.html#a978ad158f0c814ca10dc965c5f7b74c2">dmxBEDestroyWindow</a>(WindowPtr pWindow);
116
 
<a name="l00097"></a>00097 
117
 
<a name="l00098"></a>00098 <span class="comment">/* Support for shape extension */</span>
118
 
<a name="l00099"></a>00099 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#a591148aca36f482e01bd25de677b9689">dmxSetShape</a>(WindowPtr pWindow);
119
 
<a name="l00100"></a>00100 
120
 
<a name="l00102"></a>00102 <span class="keyword">extern</span> DevPrivateKey <a class="code" href="dmxscrinit_8c.html#af6748237525fb596a210d3b3614312ba">dmxWinPrivateKey</a>;
121
 
<a name="l00103"></a>00103 
122
 
<a name="l00105"></a><a class="code" href="dmxwindow_8h.html#afbcb941cf0707b8bfbe0ac5889123ea3">00105</a> <span class="preprocessor">#define DMX_GET_WINDOW_PRIV(_pWin) ((dmxWinPrivPtr) \</span>
123
 
<a name="l00106"></a>00106 <span class="preprocessor">    dixLookupPrivate(&amp;(_pWin)-&gt;devPrivates, dmxWinPrivateKey))</span>
124
 
<a name="l00107"></a>00107 <span class="preprocessor"></span>
125
 
<a name="l00108"></a>00108 <span class="comment">/* All of these macros are only used in dmxwindow.c */</span>
126
 
<a name="l00109"></a><a class="code" href="dmxwindow_8h.html#a35b887c43ad7855996b9aab8151fc479">00109</a> <span class="preprocessor">#define DMX_WINDOW_FUNC_PROLOGUE(_pGC)                                  \</span>
127
 
<a name="l00110"></a>00110 <span class="preprocessor">do {                                                                    \</span>
128
 
<a name="l00111"></a>00111 <span class="preprocessor">    dmxGCPrivPtr pGCPriv = DMX_GET_GC_PRIV(_pGC);                       \</span>
129
 
<a name="l00112"></a>00112 <span class="preprocessor">    DMX_UNWRAP(funcs, pGCPriv, (_pGC));                                 \</span>
130
 
<a name="l00113"></a>00113 <span class="preprocessor">    if (pGCPriv-&gt;ops)                                                   \</span>
131
 
<a name="l00114"></a>00114 <span class="preprocessor">        DMX_UNWRAP(ops, pGCPriv, (_pGC));                               \</span>
132
 
<a name="l00115"></a>00115 <span class="preprocessor">} while (0)</span>
133
 
<a name="l00116"></a>00116 <span class="preprocessor"></span>
134
 
<a name="l00117"></a><a class="code" href="dmxwindow_8h.html#a9144b8f0cbe6f869da8a9ddcfbaa5f1b">00117</a> <span class="preprocessor">#define DMX_WINDOW_FUNC_EPILOGUE(_pGC)                                  \</span>
135
 
<a name="l00118"></a>00118 <span class="preprocessor">do {                                                                    \</span>
136
 
<a name="l00119"></a>00119 <span class="preprocessor">    dmxGCPrivPtr pGCPriv = DMX_GET_GC_PRIV(_pGC);                       \</span>
137
 
<a name="l00120"></a>00120 <span class="preprocessor">    DMX_WRAP(funcs, &amp;dmxGCFuncs, pGCPriv, (_pGC));                      \</span>
138
 
<a name="l00121"></a>00121 <span class="preprocessor">    if (pGCPriv-&gt;ops)                                                   \</span>
139
 
<a name="l00122"></a>00122 <span class="preprocessor">        DMX_WRAP(ops, &amp;dmxGCOps, pGCPriv, (_pGC));                      \</span>
140
 
<a name="l00123"></a>00123 <span class="preprocessor">} while (0)</span>
141
 
<a name="l00124"></a>00124 <span class="preprocessor"></span>
142
 
<a name="l00125"></a><a class="code" href="dmxwindow_8h.html#a7eb75e49cc319067cfd50841378f8808">00125</a> <span class="preprocessor">#define DMX_WINDOW_X1(_pWin)                                            \</span>
143
 
<a name="l00126"></a>00126 <span class="preprocessor">    ((_pWin)-&gt;drawable.x - wBorderWidth(_pWin))</span>
144
 
<a name="l00127"></a><a class="code" href="dmxwindow_8h.html#a744e6f0a3bd069a37c77b8bff83bf491">00127</a> <span class="preprocessor"></span><span class="preprocessor">#define DMX_WINDOW_Y1(_pWin)                                            \</span>
145
 
<a name="l00128"></a>00128 <span class="preprocessor">    ((_pWin)-&gt;drawable.y - wBorderWidth(_pWin))</span>
146
 
<a name="l00129"></a><a class="code" href="dmxwindow_8h.html#ad52fe7cfe660be4536aabed92c0108d1">00129</a> <span class="preprocessor"></span><span class="preprocessor">#define DMX_WINDOW_X2(_pWin)                                            \</span>
147
 
<a name="l00130"></a>00130 <span class="preprocessor">    ((_pWin)-&gt;drawable.x + wBorderWidth(_pWin) + (_pWin)-&gt;drawable.width) </span>
148
 
<a name="l00131"></a><a class="code" href="dmxwindow_8h.html#a2d0ce76b2c1b06889444d93d5368c0ba">00131</a> <span class="preprocessor"></span><span class="preprocessor">#define DMX_WINDOW_Y2(_pWin)                                            \</span>
149
 
<a name="l00132"></a>00132 <span class="preprocessor">    ((_pWin)-&gt;drawable.y + wBorderWidth(_pWin) + (_pWin)-&gt;drawable.height) </span>
150
 
<a name="l00133"></a>00133 <span class="preprocessor"></span>
151
 
<a name="l00134"></a><a class="code" href="dmxwindow_8h.html#a9d5f07cf04c9e32d918d57d096769a5d">00134</a> <span class="preprocessor">#define DMX_WINDOW_OFFSCREEN(_pWin)                                     \</span>
152
 
<a name="l00135"></a>00135 <span class="preprocessor">    (DMX_WINDOW_X1(_pWin) &gt;= (_pWin)-&gt;drawable.pScreen-&gt;width  ||       \</span>
153
 
<a name="l00136"></a>00136 <span class="preprocessor">     DMX_WINDOW_Y1(_pWin) &gt;= (_pWin)-&gt;drawable.pScreen-&gt;height ||       \</span>
154
 
<a name="l00137"></a>00137 <span class="preprocessor">     DMX_WINDOW_X2(_pWin) &lt;= 0                                 ||       \</span>
155
 
<a name="l00138"></a>00138 <span class="preprocessor">     DMX_WINDOW_Y2(_pWin) &lt;= 0)</span>
156
 
<a name="l00139"></a>00139 <span class="preprocessor"></span>
157
 
<a name="l00140"></a>00140 <span class="preprocessor">#endif </span><span class="comment">/* DMXWINDOW_H */</span>
 
115
<a name="l00096"></a>00096 <span class="comment">/* Support for shape extension */</span>
 
116
<a name="l00097"></a>00097 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="dmxwindow_8c.html#aa14e289855150f41c4f574afea427bb0">dmxSetShape</a>(WindowPtr pWindow, <span class="keywordtype">int</span> kind);
 
117
<a name="l00098"></a>00098 
 
118
<a name="l00100"></a><a class="code" href="dmxwindow_8h.html#afbcb941cf0707b8bfbe0ac5889123ea3">00100</a> <span class="preprocessor">#define DMX_GET_WINDOW_PRIV(_pWin) ((dmxWinPrivPtr) \</span>
 
119
<a name="l00101"></a>00101 <span class="preprocessor">    dixLookupPrivate(&amp;(_pWin)-&gt;devPrivates, dmxWinPrivateKey))</span>
 
120
<a name="l00102"></a>00102 <span class="preprocessor"></span>
 
121
<a name="l00103"></a>00103 <span class="comment">/* All of these macros are only used in dmxwindow.c */</span>
 
122
<a name="l00104"></a><a class="code" href="dmxwindow_8h.html#a35b887c43ad7855996b9aab8151fc479">00104</a> <span class="preprocessor">#define DMX_WINDOW_FUNC_PROLOGUE(_pGC)                                  \</span>
 
123
<a name="l00105"></a>00105 <span class="preprocessor">do {                                                                    \</span>
 
124
<a name="l00106"></a>00106 <span class="preprocessor">    dmxGCPrivPtr pGCPriv = DMX_GET_GC_PRIV(_pGC);                       \</span>
 
125
<a name="l00107"></a>00107 <span class="preprocessor">    DMX_UNWRAP(funcs, pGCPriv, (_pGC));                                 \</span>
 
126
<a name="l00108"></a>00108 <span class="preprocessor">    if (pGCPriv-&gt;ops)                                                   \</span>
 
127
<a name="l00109"></a>00109 <span class="preprocessor">        DMX_UNWRAP(ops, pGCPriv, (_pGC));                               \</span>
 
128
<a name="l00110"></a>00110 <span class="preprocessor">} while (0)</span>
 
129
<a name="l00111"></a>00111 <span class="preprocessor"></span>
 
130
<a name="l00112"></a><a class="code" href="dmxwindow_8h.html#a9144b8f0cbe6f869da8a9ddcfbaa5f1b">00112</a> <span class="preprocessor">#define DMX_WINDOW_FUNC_EPILOGUE(_pGC)                                  \</span>
 
131
<a name="l00113"></a>00113 <span class="preprocessor">do {                                                                    \</span>
 
132
<a name="l00114"></a>00114 <span class="preprocessor">    dmxGCPrivPtr pGCPriv = DMX_GET_GC_PRIV(_pGC);                       \</span>
 
133
<a name="l00115"></a>00115 <span class="preprocessor">    DMX_WRAP(funcs, &amp;dmxGCFuncs, pGCPriv, (_pGC));                      \</span>
 
134
<a name="l00116"></a>00116 <span class="preprocessor">    if (pGCPriv-&gt;ops)                                                   \</span>
 
135
<a name="l00117"></a>00117 <span class="preprocessor">        DMX_WRAP(ops, &amp;dmxGCOps, pGCPriv, (_pGC));                      \</span>
 
136
<a name="l00118"></a>00118 <span class="preprocessor">} while (0)</span>
 
137
<a name="l00119"></a>00119 <span class="preprocessor"></span>
 
138
<a name="l00120"></a><a class="code" href="dmxwindow_8h.html#a7eb75e49cc319067cfd50841378f8808">00120</a> <span class="preprocessor">#define DMX_WINDOW_X1(_pWin)                                            \</span>
 
139
<a name="l00121"></a>00121 <span class="preprocessor">    ((_pWin)-&gt;drawable.x - wBorderWidth(_pWin))</span>
 
140
<a name="l00122"></a><a class="code" href="dmxwindow_8h.html#a744e6f0a3bd069a37c77b8bff83bf491">00122</a> <span class="preprocessor"></span><span class="preprocessor">#define DMX_WINDOW_Y1(_pWin)                                            \</span>
 
141
<a name="l00123"></a>00123 <span class="preprocessor">    ((_pWin)-&gt;drawable.y - wBorderWidth(_pWin))</span>
 
142
<a name="l00124"></a><a class="code" href="dmxwindow_8h.html#ad52fe7cfe660be4536aabed92c0108d1">00124</a> <span class="preprocessor"></span><span class="preprocessor">#define DMX_WINDOW_X2(_pWin)                                            \</span>
 
143
<a name="l00125"></a>00125 <span class="preprocessor">    ((_pWin)-&gt;drawable.x + wBorderWidth(_pWin) + (_pWin)-&gt;drawable.width) </span>
 
144
<a name="l00126"></a><a class="code" href="dmxwindow_8h.html#a2d0ce76b2c1b06889444d93d5368c0ba">00126</a> <span class="preprocessor"></span><span class="preprocessor">#define DMX_WINDOW_Y2(_pWin)                                            \</span>
 
145
<a name="l00127"></a>00127 <span class="preprocessor">    ((_pWin)-&gt;drawable.y + wBorderWidth(_pWin) + (_pWin)-&gt;drawable.height) </span>
 
146
<a name="l00128"></a>00128 <span class="preprocessor"></span>
 
147
<a name="l00129"></a><a class="code" href="dmxwindow_8h.html#a9d5f07cf04c9e32d918d57d096769a5d">00129</a> <span class="preprocessor">#define DMX_WINDOW_OFFSCREEN(_pWin)                                     \</span>
 
148
<a name="l00130"></a>00130 <span class="preprocessor">    (DMX_WINDOW_X1(_pWin) &gt;= (_pWin)-&gt;drawable.pScreen-&gt;width  ||       \</span>
 
149
<a name="l00131"></a>00131 <span class="preprocessor">     DMX_WINDOW_Y1(_pWin) &gt;= (_pWin)-&gt;drawable.pScreen-&gt;height ||       \</span>
 
150
<a name="l00132"></a>00132 <span class="preprocessor">     DMX_WINDOW_X2(_pWin) &lt;= 0                                 ||       \</span>
 
151
<a name="l00133"></a>00133 <span class="preprocessor">     DMX_WINDOW_Y2(_pWin) &lt;= 0)</span>
 
152
<a name="l00134"></a>00134 <span class="preprocessor"></span>
 
153
<a name="l00135"></a>00135 <span class="preprocessor">#endif </span><span class="comment">/* DMXWINDOW_H */</span>
158
154
</pre></div></div>
159
155
    <hr>
160
156
    <address>