title: Turn off PyQt Event Loop While Editing Table
body: <p>I'm developing a GUI with PyQt.  The GUI has a qListWidget, a qTableWidget, and a plot implemented with Mayavi.  The list refers to shapes that are plotted (cylinders and cones for example).  When a shape is selected in the list, I want the shape's properties to be loaded into the table (from a dictionary variable) and the shape to be highlighted in the plot.  I've got the Mayavi plotting working fine.  Also, if the table is edited, I need the shape to be re-plotted, to reflect the new property value (like for a cylinder, if the radius is changed).</p>
  
  <p>So, when a list item is selected -> update the table with the item's properties (from a dictionary variable), highlight the item on the plot</p>
  
  <p>When the table is edited -> update the dictionary variable and re-plot the item</p>
  
  <p>The Problem: when I select a list item and load data into the table, the qTableWidget ItemChanged signal fires every time a cell is updated, which triggers re-plotting the shape numerous times with incomplete data.</p>
  
  <p>Is there a typical means of disabling the GUI event loop while the table is being programmatically updated? (I have experience with Excel VBA, in that context setting Application.EnableEvents=False will prevent triggering a WorksheetChange event every time a cell is programmatically updated.)
  Should I have a "table update in progress" variable to prevent action from being taken while the table is being updated?
  Is there a way to update the Table Widget all at once instead of item by item? (I'll admit I'm intentionally avoiding Model-View framework for the moment, hence the qListWIdget and qTableWidget).</p>
  
  <p>Any suggestions?</p>
  
  <p>I'm a first time poster, but a long time user of StackOverflow, so I just want to say thanks in advance for being such an awesome community!</p>