Chemistry Reference and  Research
           
 
Periodic Table
- standard table
- large table
 
Chemical Elements
- by name
- by symbol
- by atomic number
 
Chemical Properties
 
Chemical Reactions
 
Organic Chemistry
 
Branches of Chemistry
Analytical chemistry
Biochemistry
Computational Chemistry
Electrochemistry
Environmental chemistry
Geochemistry
Inorganic chemistry
Materials science
Medicinal chemistry
Nuclear chemistry
Organic chemistry
Pharmacology
Physical chemistry
Polymer chemistry
Supramolecular Chemistry
Thermochemistry

Pseudo-transparency

Pseudo-transparency is a term used for X Window System clients that simulate the appearance of translucency or transparency by manipulating the same pixmap that has been drawn on the root window, or by instructing the X Server that the Background Pixmap should be inherited from the window's parent.

Purpose

Traditionally, the X Window System has lagged behind other windowing system implementations in adding purely eye candy features, such as window translucency. This has encouraged client developers to develop hacks (cunning workarounds) to overcome this limitation.

This pseudo-transparency, so called as only the background pixmap of the root window is visible (a similar concept to desktop wallpaper) rather than any obscured windows, allows users to make windows look less imposing (such as Terminal emulators, which usually comprise of large chunks of text), and to integrate the appearance of windows with their desktop themes. Additionally, it looks really neat.

Implementation

There are 3 common methods for achieving pseudo-transparency, each with their own benefits and weaknesses.

  • ParentalRelative

The ParentalRelative method uses the XSetWindowBackgroundPixmap() Xlib function to inherit the windows background from the parent window. This is generally the fastest method, but is also very limited as the X Server permits very few operations on the BackgroundPixmap (such as XOR).

  • _XROOTPMAP_ID and ESETROOT_PMAP_ID properties

These properties are used to inform the window where it can find the Pixmap used on the root window, this method uses the most memory, but has the advantage of allowing clients to perform any operation it wishes on the pixmap, such as tinting, shading, etc.

  • XCopyArea

XCopyArea is the most visually pleasing method, but with the significant disadvantage that it is only usable with modal windows where the X Server has been grabbed, such as menus. This method simply uses the XCopyArea() Xlib function to take a screenshot and then uses it as the Background Pixmap.

Future

Pseudo-transparency is only a hack used by developers until the X Servers support transparency, or so-called "True Transparency". X.Org, XDirectFB and others are all developing True Transparency support.

01-04-2007 01:16:19
The contents of this article are licensed from Wikipedia.org under the GNU Free Documentation License. How to see transparent copy