Basic Python-based Xlib client for testing and building upon.
2008-05-12 Thomas Thurman <tthurman@gnome.org> * tools/xlib.py: Basic Python-based Xlib client for testing and building upon. svn path=/trunk/; revision=3707
This commit is contained in:
parent
b095ecc195
commit
8547d1e8ed
@ -1,3 +1,8 @@
|
||||
2008-05-12 Thomas Thurman <tthurman@gnome.org>
|
||||
|
||||
* tools/xlib.py: Basic Python-based Xlib client for testing
|
||||
and building upon.
|
||||
|
||||
2008-05-09 Elijah Newren <newren gmail com>
|
||||
|
||||
* src/ui/color.[ch]:
|
||||
|
43
tools/xlib.py
Normal file
43
tools/xlib.py
Normal file
@ -0,0 +1,43 @@
|
||||
# Very simple Xlib-based client in Python.
|
||||
# Copyright (c) 2008 Thomas Thurman <tthurman@gnome.org>; GPL 2.0 or later.
|
||||
# Originally based around example code in python-xlib
|
||||
# by Peter Liljenberg <petli@ctrl-c.liu.se>.
|
||||
|
||||
import sys
|
||||
|
||||
from Xlib import X
|
||||
from Xlib.protocol import display
|
||||
from Xlib.protocol.request import *
|
||||
|
||||
display = display.Display()
|
||||
screen = display.info.roots[display.default_screen]
|
||||
window = display.allocate_resource_id()
|
||||
gc = display.allocate_resource_id()
|
||||
|
||||
CreateWindow(display, None,
|
||||
depth = screen.root_depth,
|
||||
wid = window,
|
||||
parent = screen.root,
|
||||
x = 100, y = 100, width = 250, height = 250, border_width = 2,
|
||||
window_class = X.InputOutput, visual = X.CopyFromParent,
|
||||
background_pixel = screen.white_pixel,
|
||||
event_mask = (X.ExposureMask |
|
||||
X.StructureNotifyMask |
|
||||
X.ButtonPressMask |
|
||||
X.ButtonReleaseMask |
|
||||
X.Button1MotionMask),
|
||||
colormap = X.CopyFromParent)
|
||||
|
||||
CreateGC(display, None, gc, window)
|
||||
|
||||
MapWindow(display, None, window)
|
||||
|
||||
while 1:
|
||||
event = display.next_event()
|
||||
|
||||
if event.type == X.DestroyNotify:
|
||||
sys.exit(0)
|
||||
|
||||
print event
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user