#!/usr/bin/env python2 import serial import gtk from gtk import gdk class Analyzer: def __init__(self): self.color_bg = gdk.color_parse("#000") self.color_grid = gdk.color_parse("#444") self.color_signal = gdk.color_parse("#FFF") self.win = gtk.Window(gtk.WINDOW_TOPLEVEL) self.win.connect("destroy", self.destroy); self.win.set_title("Analyzer") self.win.set_border_width(4) self.area = gtk.DrawingArea() self.area.set_size_request(640, 480) self.area.connect("expose-event", self.expose) self.win.add(self.area) def run(self): self.win.show_all() gtk.main() def destroy(self, widget, data=None): gtk.main_quit() def expose(self, widget, event): w = widget.window gc = w.new_gc(foreground=self.color_bg) w.draw_rectangle(gc, True, 0, 0, 640, 480) gc.set_foreground(self.color_signal) w.draw_line(gc, 100, 100, 200, 200) w.draw_lines(gc, [(0, 0), (100, 100)]) if __name__ == "__main__": Analyzer().run()