Changeset 1600
- Timestamp:
- 07/08/07 23:50:51 (1 year ago)
- Files:
-
- gaphas/trunk/gaphas/canvas.py (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
gaphas/trunk/gaphas/canvas.py
r1586 r1600 12 12 from gaphas import tree 13 13 from gaphas import solver 14 from gaphas.decorators import async, PRIORITY_HIGH_IDLE14 from gaphas.decorators import nonrecursive, async, PRIORITY_HIGH_IDLE 15 15 from state import observed, reversible_method, reversible_pair 16 16 … … 46 46 self._dirty_items = set() 47 47 self._dirty_matrix_items = set() 48 self._in_update = False49 48 50 49 self._registered_views = set() … … 357 356 update job is scheduled as idle job. 358 357 """ 359 if not self._in_update:360 self.update_now() 361 358 self.update_now() 359 360 @nonrecursive 362 361 def update_now(self): 363 362 """ 364 363 Peform an update of the items that requested an update. 365 364 """ 366 self._in_update = True367 368 365 # Order the dirty items, so they are updated bottom to top 369 366 dirty_items = [ item for item in reversed(self._tree.nodes) \ … … 395 392 dirty_matrix_items.update(self._dirty_matrix_items) 396 393 self.update_matrices() 394 395 # Also need to set up the dirty_items list here, since items 396 # may be marked as dirty during maxtrix update or solving. 397 dirty_items = [ item for item in reversed(self._tree.nodes) \ 398 if item in self._dirty_items ] 397 399 398 400 for item in dirty_items: … … 411 413 self._update_views(self._dirty_items, dirty_matrix_items) 412 414 self._dirty_items.clear() 413 self._in_update = False414 415 415 416 def update_matrices(self): … … 470 471 request_resolve(h.x) 471 472 request_resolve(h.y) 472 473 473 474 474 if recursive:
