From 92aa0c135cd70cbfa3f3c4277726e4de348dc21d 2008-06-07 07:25:06 From: vds Date: 2008-06-07 07:25:06 Subject: [PATCH] editor synchronization --- diff --git a/IPython/Extensions/scitedirector.py b/IPython/Extensions/scitedirector.py new file mode 100644 index 0000000..97dc6cd --- /dev/null +++ b/IPython/Extensions/scitedirector.py @@ -0,0 +1,26 @@ +import win32api +import win32gui +import win32con + +import struct +import array + +def findWindows(): + ret = [] + sdi = win32api.RegisterWindowMessage("SciTEDirectorInterface") + w = win32gui.GetWindow(win32gui.GetDesktopWindow(), win32con.GW_CHILD) + while w: + res = win32gui.SendMessage(w, sdi, 0, 0) + if res == sdi: + ret.append(w) + w = win32gui.GetWindow(w, win32con.GW_HWNDNEXT) + + return ret + +def sendCommand(w, message): + CopyDataStruct = "IIP" + char_buffer = array.array('c', message) + char_buffer_address = char_buffer.buffer_info()[0] + char_buffer_size = char_buffer.buffer_info()[1] + cds = struct.pack(CopyDataStruct, 0, char_buffer_size, char_buffer_address) + win32gui.SendMessage(w, win32con.WM_COPYDATA, 0, cds)