Opened 5 years ago

Closed 5 years ago

#3780 closed defect (fixed)

Python3 + g.gui.animation: Traceback when clicking on the settings button

Reported by: pmav99 Owned by: grass-dev@…
Priority: normal Milestone:
Component: wxGUI Version: svn-trunk
Keywords: Cc:
CPU: Unspecified Platform: Unspecified

Description

On Python 3, clicking on the "settings" button, throws an exception:

/home/feanor/Prog/git/grass-p3/repo/dist.x86_64-pc-linux-gnu/gui/wxpython/animation/dialogs.py:2007: wxPyDeprecationWarning: Call to deprecated item. Use SetToolTip instead.
  "Click and then press key up or down to preview "
Traceback (most recent call last):
  File "/home/feanor/Prog/git/grass-p3/repo/dist.x86_64-pc-linux-gnu/gui/wxpython/animation/frame.py", line 316, in OnPreferences
    dlg = PreferencesDialog(parent=self, giface=self._giface)
  File "/home/feanor/Prog/git/grass-p3/repo/dist.x86_64-pc-linux-gnu/gui/wxpython/animation/dialogs.py", line 1855, in __init__
    self._createTemporalPage(self.notebook)
  File "/home/feanor/Prog/git/grass-p3/repo/dist.x86_64-pc-linux-gnu/gui/wxpython/animation/dialogs.py", line 2016, in _createTemporalPage
    link = wx.HyperlinkCtrl(
AttributeError: module 'wx' has no attribute 'HyperlinkCtrl'

PS. Have *not* tested this on python 2

Change History (3)

comment:1 by veroandreo, 5 years ago

I confirm this error in python 3; works fine with python 2

comment:2 by pmav99, 5 years ago

Just confirmed that this happens on Python2 too. It seems that this is an issue related to wxPython 4+. On my end, both on Python 2 and Python 3:

pip freeze | grep wx
wxPython==4.0.4

It seems that the on wxPython4 they changed the namespace:

Something like this should fix it:

import wx.adv
# ...
    link = wx.adv.HyperlinkCtrl(

but that would break compatibility with wxPython3 (not sure if we still care for that).

comment:3 by annakrat, 5 years ago

Resolution: fixed
Status: newclosed

In 74223:

wxGUI: fix #3780

Note: See TracTickets for help on using tickets.