gnu.x11.extension
Class DBE

java.lang.Object
  extended by gnu.x11.extension.Extension
      extended by gnu.x11.extension.DBE
All Implemented Interfaces:
ErrorFactory

public class DBE
extends Extension
implements ErrorFactory

Double Buffer Extension. The specification can be found here (protocol).

Check this for an insightful discusson on the merit of DBE.


Nested Class Summary
 class DBE.BackBuffer
           
static class DBE.ScreenVisualInfo
          DBE screen visual info.
static class DBE.VisualInfo
          DBE visual info.
 
Field Summary
static int BACKGROUND
           
static int CLIENT_MAJOR_VERSION
           
static int CLIENT_MINOR_VERSION
           
static int COPIED
           
static Drawable[] EMPTY
           
static java.lang.String ERROR_STRING
           
static java.lang.String[] MINOR_OPCODE_STRINGS
           
 int server_major_version
           
 int server_minor_version
           
static int UNDEFINED
           
static int UNTOUCHED
           
 
Fields inherited from class gnu.x11.extension.Extension
display, first_error, first_event, major_opcode, name
 
Constructor Summary
DBE(Display display)
           
 
Method Summary
 DBE.BackBuffer allocate(Window window, int swap_action_hint)
           
 void begin_idiom()
           
 Error build(Display display, int code, int seq_no, int bad, int minor_opcode, int major_opcode)
           
 void end_idiom()
           
 java.lang.String more_string()
          Additional information such as client version and server version to display in toString().
 void swap(Window[] windows, int[] actions)
           
 void swap(Window window, int action)
           
 DBE.ScreenVisualInfo[] visual_info(Drawable[] screen_specifiers)
          Get information about which visuals support double buffering.
 
Methods inherited from class gnu.x11.extension.Extension
toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

MINOR_OPCODE_STRINGS

public static final java.lang.String[] MINOR_OPCODE_STRINGS

UNDEFINED

public static final int UNDEFINED
See Also:
Constant Field Values

BACKGROUND

public static final int BACKGROUND
See Also:
Constant Field Values

UNTOUCHED

public static final int UNTOUCHED
See Also:
Constant Field Values

COPIED

public static final int COPIED
See Also:
Constant Field Values

CLIENT_MAJOR_VERSION

public static final int CLIENT_MAJOR_VERSION
See Also:
Constant Field Values

CLIENT_MINOR_VERSION

public static final int CLIENT_MINOR_VERSION
See Also:
Constant Field Values

server_major_version

public int server_major_version

server_minor_version

public int server_minor_version

EMPTY

public static final Drawable[] EMPTY

ERROR_STRING

public static final java.lang.String ERROR_STRING
See Also:
Constant Field Values
Constructor Detail

DBE

public DBE(Display display)
    throws NotFoundException
Throws:
NotFoundException
Method Detail

swap

public void swap(Window[] windows,
                 int[] actions)
Parameters:
actions - array of actions; valid action: UNDEFINED BACKGROUND UNTOUCHED COPIED
See Also:
XdbeSwapBuffers

begin_idiom

public void begin_idiom()
See Also:
XdbeBeginIdiom

end_idiom

public void end_idiom()
See Also:
XdbeEndIdiom

visual_info

public DBE.ScreenVisualInfo[] visual_info(Drawable[] screen_specifiers)
Get information about which visuals support double buffering. There seems to be bug in all servers based on X Consortium sample implementation up to R6.5 (including XFree86 4.0.1 or earlier): the reply length of the reply is incorrect , causing a "read timed out" error.

Parameters:
screen_specifiers - valid: EMPTY
See Also:
XdbeGetVisualInfo

allocate

public DBE.BackBuffer allocate(Window window,
                               int swap_action_hint)
See Also:
XdbeAllocateBackBufferName, DBE.BackBuffer

build

public Error build(Display display,
                   int code,
                   int seq_no,
                   int bad,
                   int minor_opcode,
                   int major_opcode)
Specified by:
build in interface ErrorFactory

swap

public void swap(Window window,
                 int action)
See Also:
swap(Window[], int[])

more_string

public java.lang.String more_string()
Description copied from class: Extension
Additional information such as client version and server version to display in toString().

Overrides:
more_string in class Extension