Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 1163b30

Browse files
authored
Merge pull request #25155 from devRD/lasso_demo
Fix lasso unresponsive issue by adding a lock release event
2 parents 934951f + 433406e commit 1163b30

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

‎examples/event_handling/lasso_demo.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,10 @@ def __init__(self, ax, data):
5959

6060
ax.add_collection(self.collection)
6161

62-
self.cid = self.canvas.mpl_connect('button_press_event', self.on_press)
62+
self.cid_press = self.canvas.mpl_connect('button_press_event',
63+
self.on_press)
64+
self.cid_release = self.canvas.mpl_connect('button_release_event',
65+
self.on_release)
6366

6467
def callback(self, verts):
6568
facecolors = self.collection.get_facecolors()
@@ -72,7 +75,6 @@ def callback(self, verts):
7275
facecolors[i] = Datum.colorout
7376

7477
self.canvas.draw_idle()
75-
self.canvas.widgetlock.release(self.lasso)
7678
del self.lasso
7779

7880
def on_press(self, event):
@@ -86,6 +88,10 @@ def on_press(self, event):
8688
# acquire a lock on the widget drawing
8789
self.canvas.widgetlock(self.lasso)
8890

91+
def on_release(self, event):
92+
if hasattr(self, 'lasso') and self.canvas.widgetlock.isowner(self.lasso):
93+
self.canvas.widgetlock.release(self.lasso)
94+
8995

9096
if __name__ == '__main__':
9197

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /