Scott Talbert pointed out a simpler replacement for wx.PySimpleApp() is just wx.App(False) - I've attached an updated patch using this instead.
Cheers, Olly
diff -Nru dballe-5.18/debian/changelog dballe-5.18/debian/changelog --- dballe-5.18/debian/changelog 2012-05-16 15:47:29.000000000 -0300 +++ dballe-5.18/debian/changelog 2014-09-12 23:24:04.000000000 -0300 @@ -1,3 +1,11 @@ +dballe (5.18-1.1) unstable; urgency=medium + + * Non-maintainer upload. + * Update for wxPython 3.0 (Closes: #759043): + - New patch: wxpython3.0.patch + + -- Olly Betts <o...@survex.com> Sat, 13 Sep 2014 02:24:01 +0000 + dballe (5.18-1) unstable; urgency=low * New upstream release diff -Nru dballe-5.18/debian/control dballe-5.18/debian/control --- dballe-5.18/debian/control 2012-05-16 15:47:20.000000000 -0300 +++ dballe-5.18/debian/control 2014-09-04 20:48:51.000000000 -0300 @@ -159,7 +159,7 @@ Package: provami Section: misc Architecture: all -Depends: python-dballe, python-wxgtk2.8, ${shlibs:Depends}, ${misc:Depends}, ${python:Depends} +Depends: python-dballe, python-wxgtk3.0, ${shlibs:Depends}, ${misc:Depends}, ${python:Depends} Suggests: python-rpy2 XB-Python-Version: ${python:Versions} Provides: ${python:Provides} diff -Nru dballe-5.18/debian/patches/series dballe-5.18/debian/patches/series --- dballe-5.18/debian/patches/series 1969-12-31 21:00:00.000000000 -0300 +++ dballe-5.18/debian/patches/series 2014-09-04 20:49:09.000000000 -0300 @@ -0,0 +1 @@ +wxpython3.0.patch diff -Nru dballe-5.18/debian/patches/wxpython3.0.patch dballe-5.18/debian/patches/wxpython3.0.patch --- dballe-5.18/debian/patches/wxpython3.0.patch 1969-12-31 21:00:00.000000000 -0300 +++ dballe-5.18/debian/patches/wxpython3.0.patch 2014-09-12 23:23:47.000000000 -0300 @@ -0,0 +1,43 @@ +Description: Update for wxWidgets 3.0 +Author: Olly Betts <o...@survex.com> +Bug-Debian: https://bugs.debian.org/759043 +Forwarded: no +Last-Update: 2014-09-12 + +Index: dballe-5.18/provami/provami/Navigator.py +=================================================================== +--- dballe-5.18.orig/provami/provami/Navigator.py ++++ dballe-5.18/provami/provami/Navigator.py +@@ -237,7 +237,7 @@ class Navigator(wx.Frame, ProgressListen + elif event.GetId() == Navigator.ACTION_EXPORT: + # dlg = wx.FileDialog( + # self, message="Save file as...", defaultDir=os.getcwd(), +-# defaultFile="", style=wx.SAVE ++# defaultFile="", style=wx.FD_SAVE + # ) + wildcards="According to file extension|*|BUFR optimal template (*.bufr)|*.bufr|BUFR generic template (*.bufr)|*.bufr|CREX (*.crex)|*.crex|Comma Separated Values (*.csv)|*.csv" + if Model.HAS_RPY: +@@ -245,8 +245,8 @@ class Navigator(wx.Frame, ProgressListen + + dlg = wx.FileDialog( + self, message="Save file as...", defaultDir=os.getcwd(), +- #defaultFile="", wildcard="According to file extension|*|BUFR optimal template (*.bufr)|*.bufr|BUFR generic template (*.bufr)|*.bufr|CREX (*.crex)|*.crex|Comma Separated Values (*.csv)|*.csv|GNU R data file (*.Rdata)|*.Rdata|Pickled volNd Python objects (*.volnd)|*.volnd", style=wx.SAVE +- defaultFile="", wildcard=wildcards, style=wx.SAVE ++ #defaultFile="", wildcard="According to file extension|*|BUFR optimal template (*.bufr)|*.bufr|BUFR generic template (*.bufr)|*.bufr|CREX (*.crex)|*.crex|Comma Separated Values (*.csv)|*.csv|GNU R data file (*.Rdata)|*.Rdata|Pickled volNd Python objects (*.volnd)|*.volnd", style=wx.FD_SAVE ++ defaultFile="", wildcard=wildcards, style=wx.FD_SAVE + ) + + # Show the dialog and retrieve the user response. If it is the OK response, +Index: dballe-5.18/provami/provami.py +=================================================================== +--- dballe-5.18.orig/provami/provami.py ++++ dballe-5.18/provami/provami.py +@@ -43,7 +43,7 @@ if __name__ == "__main__": + from provami.ProvamiArtProvider import ProvamiArtProvider + from provami.Navigator import Navigator + +- app = wx.PySimpleApp() ++ app = wx.App(False) + db = dballe.DB() + if dballe.DB.is_url(opts.dsn): + db.connect_from_url(opts.dsn)