Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions rendercanvas/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -676,10 +676,12 @@ def close(self) -> None:
except Exception:
pass
self._canvas_context = None
# Clean events. Should already have happened in loop, but the loop may not be running.
self._events.close()
# Let the subclass clean up.
self._rc_close()
try:
self._rc_close()
finally:
# Clean events. Should already have happened in loop, but the loop may not be running.
self._events.close()

def get_closed(self) -> bool:
"""Get whether the window is closed."""
Expand Down
9 changes: 5 additions & 4 deletions rendercanvas/wx.py
Original file line number Diff line number Diff line change
Expand Up @@ -247,7 +247,8 @@ def on_paint(self, event):
if not self._draw_lock:
self._time_to_paint()
if self._last_image is not None:
dc.DrawBitmap(self._last_image, 0, 0, False)
# dc.DrawBitmap(self._last_image, 0, 0, False)
dc.drawRectangle(0, 0, 10, 10)
else:
event.Skip()
del dc
Expand Down Expand Up @@ -359,9 +360,9 @@ def _rc_close(self):
except RuntimeError:
return # native C++ object is already deleted
if isinstance(parent, WxRenderCanvas):
parent.Hide()
parent.Close()
else:
self.Hide()
self.Close()

def _rc_get_closed(self):
return self._is_closed
Expand All @@ -383,7 +384,7 @@ def _rc_set_cursor(self, cursor):
# %% Turn wx events into rendercanvas events

def _on_resize(self, event: wx.SizeEvent):
self._draw_lock = True
# self._draw_lock = True
self._resize_timer.Start(100, wx.TIMER_ONE_SHOT)

lsize = float(self.Size[0]), float(self.Size[1])
Expand Down
Loading