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

Appearance settings

Commit aad1619

Browse filesBrowse files
committed
Merge pull request #4544 from ahaldane/deprecate_idle_event
DEP: Deprecate idle_event
2 parents ae5e903 + d631dc1 commit aad1619
Copy full SHA for aad1619

File tree

Expand file treeCollapse file tree

7 files changed

+17
-16
lines changed
Filter options
Expand file treeCollapse file tree

7 files changed

+17
-16
lines changed
+9Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
deprecated idle_event
2+
`````````````````````
3+
4+
The `idle_event` was broken or missing in most backends and causes spurious
5+
warnings in some cases, and its use in creating animations is now obsolete due
6+
to the animations module. Therefore code involving it has been removed from all
7+
but the wx backend (where it partially works), and its use is deprecated. The
8+
animations module may be used instead to create animations.
9+

‎examples/event_handling/idle_and_timeout.py

Copy file name to clipboardExpand all lines: examples/event_handling/idle_and_timeout.py
+2Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
"""
33
Demonstrate/test the idle and timeout API
44
5+
WARNING: idle_event is deprecated. Use the animations module instead.
6+
57
This is only tested on gtk so far and is a prototype implementation
68
"""
79
import numpy as np

‎lib/matplotlib/backend_bases.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backend_bases.py
+6-1Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@
6060
import matplotlib.tight_bbox as tight_bbox
6161
import matplotlib.textpath as textpath
6262
from matplotlib.path import Path
63-
from matplotlib.cbook import mplDeprecation
63+
from matplotlib.cbook import mplDeprecation, warn_deprecated
6464
import matplotlib.backend_tools as tools
6565

6666
try:
@@ -2331,6 +2331,11 @@ def on_press(event):
23312331
cid = canvas.mpl_connect('button_press_event', on_press)
23322332
23332333
"""
2334+
if s == 'idle_event':
2335+
warn_deprecated(1.5,
2336+
"idle_event is only implemented for the wx backend, and will "
2337+
"be removed in matplotlib 2.1. Use the animations module "
2338+
"instead.")
23342339

23352340
return self.callbacks.connect(s, func)
23362341

‎lib/matplotlib/backends/backend_gtk.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backends/backend_gtk.py
-3Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -243,14 +243,11 @@ def __init__(self, figure):
243243
self.set_flags(gtk.CAN_FOCUS)
244244
self._renderer_init()
245245

246-
self._idle_event_id = gobject.idle_add(self.idle_event)
247-
248246
self.last_downclick = {}
249247

250248
def destroy(self):
251249
#gtk.DrawingArea.destroy(self)
252250
self.close_event()
253-
gobject.source_remove(self._idle_event_id)
254251
if self._idle_draw_id != 0:
255252
gobject.source_remove(self._idle_draw_id)
256253

‎lib/matplotlib/backends/backend_gtk3.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backends/backend_gtk3.py
-4Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -210,15 +210,11 @@ def __init__(self, figure):
210210
self.set_double_buffered(True)
211211
self.set_can_focus(True)
212212
self._renderer_init()
213-
self._idle_event_id = GLib.idle_add(self.idle_event)
214213
default_context = GLib.main_context_get_thread_default() or GLib.main_context_default()
215-
self._idle_event_source = default_context.find_source_by_id(self._idle_event_id)
216214

217215
def destroy(self):
218216
#Gtk.DrawingArea.destroy(self)
219217
self.close_event()
220-
if not self._idle_event_source.is_destroyed():
221-
GLib.source_remove(self._idle_event_id)
222218
if self._idle_draw_id != 0:
223219
GLib.source_remove(self._idle_draw_id)
224220

‎lib/matplotlib/backends/backend_qt4.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backends/backend_qt4.py
-2Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,6 @@ def __init__(self, figure):
7373
self.figure = figure
7474
self.setMouseTracking(True)
7575
self._idle = True
76-
# hide until we can test and fix
77-
# self.startTimer(backend_IdleEvent.milliseconds)
7876
w, h = self.get_width_height()
7977
self.resize(w, h)
8078

‎lib/matplotlib/backends/backend_qt5.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backends/backend_qt5.py
-6Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -240,15 +240,9 @@ def __init__(self, figure):
240240
self.figure = figure
241241
self.setMouseTracking(True)
242242
self._idle = True
243-
# hide until we can test and fix
244-
# self.startTimer(backend_IdleEvent.milliseconds)
245243
w, h = self.get_width_height()
246244
self.resize(w, h)
247245

248-
def __timerEvent(self, event):
249-
# hide until we can test and fix
250-
self.mpl_idle_event(event)
251-
252246
def enterEvent(self, event):
253247
FigureCanvasBase.enter_notify_event(self, guiEvent=event)
254248

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.