MCPcopy Create free account
hub / github.com/mhammond/pywin32 / DoAddScriptlet

Method DoAddScriptlet

com/win32comext/axscript/client/pyscript.py:262–273  ·  view source on GitHub ↗
(self, defaultName, code, itemName, subItemName, eventName, delimiter,sourceContextCookie, startLineNumber)

Source from the content-addressed store, hash-verified

260 return subItemName[0].upper()+subItemName[1:] + "_" + eventName[0].upper()+eventName[1:]
261
262 def DoAddScriptlet(self, defaultName, code, itemName, subItemName, eventName, delimiter,sourceContextCookie, startLineNumber):
263 # Just store the code away - compile when called. (JIT :-)
264 item = self.GetNamedItem(itemName)
265 if itemName==subItemName: # Explicit handlers - eg <SCRIPT LANGUAGE="Python" for="TestForm" Event="onSubmit">
266 subItem = item
267 else:
268 subItem = item.GetCreateSubItem(item, subItemName, None, None)
269 funcName = self.MakeEventMethodName(subItemName, eventName)
270
271 codeBlock = AXScriptCodeBlock("Script Event %s" %funcName, code, sourceContextCookie, startLineNumber, 0)
272 self._AddScriptCodeBlock(codeBlock)
273 subItem.scriptlets[funcName] = codeBlock
274
275 def DoProcessScriptItemEvent(self, item, event, lcid, wFlags, args):
276# trace("ScriptItemEvent", self, item, event, event.name, lcid, wFlags, args)

Callers 1

AddScriptletMethod · 0.80

Calls 5

MakeEventMethodNameMethod · 0.95
GetNamedItemMethod · 0.80
GetCreateSubItemMethod · 0.80
_AddScriptCodeBlockMethod · 0.80
AXScriptCodeBlockClass · 0.70

Tested by

no test coverage detected