home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2010 November / maximum-cd-2010-11.iso / DiscContents / calibre-0.7.13.msi / file_2508 (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-08-06  |  3.0 KB  |  104 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4. import win32console
  5. import win32con
  6. import traceback
  7. import time
  8. virtual_keys = { }
  9. for k, v in win32con.__dict__.items():
  10.     if k.startswith('VK_'):
  11.         virtual_keys[v] = k
  12.         continue
  13.  
  14. free_console = True
  15.  
  16. try:
  17.     win32console.AllocConsole()
  18. except win32console.error:
  19.     err_tuple = None
  20.     if err_tuple[0] != 5:
  21.         raise 
  22.     err_tuple[0] != 5
  23.     free_console = False
  24.  
  25. stdout = win32console.GetStdHandle(win32console.STD_OUTPUT_HANDLE)
  26. stdin = win32console.GetStdHandle(win32console.STD_INPUT_HANDLE)
  27. newbuffer = win32console.CreateConsoleScreenBuffer()
  28. newbuffer.SetConsoleActiveScreenBuffer()
  29. newbuffer.SetConsoleTextAttribute(win32console.FOREGROUND_RED | win32console.FOREGROUND_INTENSITY | win32console.BACKGROUND_GREEN | win32console.BACKGROUND_INTENSITY)
  30. newbuffer.WriteConsole('This is a new screen buffer\n')
  31. window_size = newbuffer.GetConsoleScreenBufferInfo()['Window']
  32. coord = win32console.PyCOORDType(X = window_size.Right + 20, Y = window_size.Bottom + 20)
  33. newbuffer.SetConsoleScreenBufferSize(coord)
  34. window_size.Right += 10
  35. window_size.Bottom += 10
  36. newbuffer.SetConsoleWindowInfo(Absolute = True, ConsoleWindow = window_size)
  37. x = win32console.PyINPUT_RECORDType(win32console.KEY_EVENT)
  38. x.Char = u'X'
  39. x.KeyDown = True
  40. x.RepeatCount = 1
  41. x.VirtualKeyCode = 88
  42. x.ControlKeyState = win32con.SHIFT_PRESSED
  43. z = win32console.PyINPUT_RECORDType(win32console.KEY_EVENT)
  44. z.Char = u'Z'
  45. z.KeyDown = True
  46. z.RepeatCount = 1
  47. z.VirtualKeyCode = 90
  48. z.ControlKeyState = win32con.SHIFT_PRESSED
  49. stdin.WriteConsoleInput([
  50.     x,
  51.     z,
  52.     x])
  53. newbuffer.SetConsoleTextAttribute(win32console.FOREGROUND_RED | win32console.FOREGROUND_INTENSITY | win32console.BACKGROUND_GREEN | win32console.BACKGROUND_INTENSITY)
  54. newbuffer.WriteConsole('Press some keys, click some characters with the mouse\n')
  55. newbuffer.SetConsoleTextAttribute(win32console.FOREGROUND_BLUE | win32console.FOREGROUND_INTENSITY | win32console.BACKGROUND_RED | win32console.BACKGROUND_INTENSITY)
  56. newbuffer.WriteConsole('Hit "End" key to quit\n')
  57. breakout = False
  58. while not breakout:
  59.     input_records = stdin.ReadConsoleInput(10)
  60.     for input_record in input_records:
  61.         if input_record.EventType == win32console.KEY_EVENT:
  62.             if input_record.KeyDown:
  63.                 if input_record.VirtualKeyCode == win32con.VK_END:
  64.                     breakout = True
  65.                     break
  66.                 
  67.             
  68.         input_record.KeyDown
  69.         if input_record.EventType == win32console.MOUSE_EVENT:
  70.             if input_record.EventFlags == 0:
  71.                 if input_record.ButtonState != 0:
  72.                     pos = input_record.MousePosition
  73.                     attr = newbuffer.ReadConsoleOutputAttribute(Length = 1, ReadCoord = pos)[0]
  74.                     new_attr = attr
  75.                     if attr & win32console.FOREGROUND_RED:
  76.                         new_attr = new_attr & ~(win32console.FOREGROUND_RED) | win32console.BACKGROUND_RED
  77.                     
  78.                     if attr & win32console.FOREGROUND_GREEN:
  79.                         new_attr = new_attr & ~(win32console.FOREGROUND_GREEN) | win32console.BACKGROUND_GREEN
  80.                     
  81.                     if attr & win32console.BACKGROUND_BLUE:
  82.                         new_attr = new_attr & ~(win32console.BACKGROUND_BLUE) | win32console.FOREGROUND_BLUE
  83.                     
  84.                     if attr & win32console.BACKGROUND_RED:
  85.                         new_attr = new_attr & ~(win32console.BACKGROUND_RED) | win32console.FOREGROUND_RED
  86.                     
  87.                     if attr & win32console.BACKGROUND_GREEN:
  88.                         new_attr = new_attr & ~(win32console.BACKGROUND_GREEN) | win32console.FOREGROUND_GREEN
  89.                     
  90.                     newbuffer.WriteConsoleOutputAttribute((new_attr,), pos)
  91.                 
  92.             
  93.         input_record.EventFlags == 0
  94.         newbuffer.WriteConsole(str(input_record))
  95.     
  96.     time.sleep(0.1)
  97.     continue
  98.     window_size
  99. stdout.SetConsoleActiveScreenBuffer()
  100. newbuffer.Close()
  101. if free_console:
  102.     win32console.FreeConsole()
  103.  
  104.