Advertisement
danfalck

javascript input values to python

Apr 14th, 2012
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.35 KB | None | 0 0
  1. from PyQt4 import QtCore, QtGui, QtWebKit
  2. import WebGui
  3. import Part
  4. import FreeCADGui, FreeCAD
  5.  
  6. html = """
  7. <HTML>
  8. <HEAD>
  9. <TITLE>Test Input</TITLE>
  10. <SCRIPT LANGUAGE="JavaScript">
  11. function testResults (form) {
  12.    var lenVar = form.boxlength.value;
  13.    var widthVar = form.boxwidth.value;
  14.    var heightVar = form.boxheight.value;
  15.    pyObj.newBox(lenVar,widthVar,heightVar);
  16. }</SCRIPT>
  17. </HEAD>
  18. <BODY>
  19. <FORM NAME="myform" ACTION="" METHOD="GET">
  20.  <table> <TR>
  21.      <TH align=right>Box Length:
  22.      <TD><INPUT TYPE="text" NAME="boxlength" VALUE=""><TR>
  23.      <TH align=right>Box Width:
  24.      <TD><INPUT TYPE="text" NAME="boxwidth" VALUE=""><TR>
  25.      <TH align=right>Box Height:
  26.      <TD><INPUT TYPE="text" NAME="boxheight" VALUE=""><TR> </table>
  27. <INPUT TYPE="button" NAME="button" Value="Draw Box" onClick="testResults(this.form)">
  28. </FORM> </BODY> </HTML>
  29. """
  30. class TestClass(QtCore.QObject):
  31.     @QtCore.pyqtSlot(str,str,str)
  32.     def newBox(self, msg1,msg2,msg3):
  33.         l = float(msg1); w= float(msg2);h = float(msg3)
  34.         box1 = Part.makeBox(l,w,h)
  35.         Part.show(box1)
  36.  
  37. myObj = TestClass()
  38. WebGui.openBrowser("http://javascriptBox")
  39. a = QtGui.qApp
  40. mw = a.activeWindow()
  41. v= mw.findChild(QtWebKit.QWebFrame)
  42. v.setHtml(html)
  43. curr1 = v.page()
  44. frame1 = curr1.currentFrame()
  45. frame1.addToJavaScriptWindowObject("pyObj", myObj)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement