12.07.2015 Views

Xlib − C Language X Interface

Xlib − C Language X Interface

Xlib − C Language X Interface

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Xlib</strong> − C LibraryX11, Release 6.7 DRAFTprevious screen contents from other windows of the same depth as the window are simply left inplace as long as the contents come from the parent of the window oraninferior of the parent.Otherwise, the initial contents of the exposed regions are undefined. Expose events are then generatedfor the regions, even ifthe background-pixmap is None (see section 10.9).3.2.2. Border AttributeOnly InputOutput windows can have a border. You can set the border of an InputOutput windowbyusing a pixel or a pixmap.The border-pixmap attribute of a window specifies the pixmap to be used for a window’s border.The border-pixel attribute of a window specifies a pixmap of undefined size filled with that pixelbe used for a window’s border. Range checking is not performed on the background pixel; it simplyis truncated to the appropriate number of bits. The border tile origin is always the same as thebackground tile origin.Youcan also set the border-pixmap to a pixmap of any size (some may be faster than others) or toCopyFromParent (default). You can set the border-pixel to any pixel value (no default).If you set a border-pixmap, it overrides the default. The border-pixmap and the window musthave the same depth, or a BadMatch error results. If you set the border-pixmap to Copy-FromParent, the parent window’s border-pixmap is copied. Subsequent changes to the parentwindow’s border attribute do not affect the child window. However, the child window must havethe same depth as the parent window, oraBadMatch error results.The border-pixmap can be freed immediately if no further explicit reference is made to it. If youlater draw into the pixmap used for the border, what happens is undefined because the X implementationis free either to make acopy ofthe pixmap or to use the same pixmap. If you specify aborder-pixel, it overrides either the default border-pixmap or any value you may have set in theborder-pixmap. All pixels in the window’s border will be set to the border-pixel. Setting anewborder, whether by setting border-pixel or by setting border-pixmap, overrides any previous border.Output to a window isalways clipped to the inside of the window. Therefore, graphics operationsnever affect the window border.3.2.3. Gravity AttributesThe bit gravity of a window defines which region of the window should be retained when anInputOutput window isresized. The default value for the bit-gravity attribute is ForgetGravity.The window gravity of a window allows you to define how the InputOutput or InputOnlywindow should be repositioned if its parent is resized. The default value for the win-gravityattribute is NorthWestGravity.If the inside width or height of a window isnot changed and if the window ismoved orits borderis changed, then the contents of the window are not lost but move with the window. Changing theinside width or height of the window causes its contents to be moved orlost (depending on thebit-gravity of the window) and causes children to be reconfigured (depending on their win-gravity).For a change of width and height, the (x, y) pairs are defined:Gravity DirectionCoordinatesNorthWestGravity (0, 0)NorthGravity (Width/2, 0)36

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!