Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Steve Barnes
2017-08-06 07:06:58 +01:00
9 changed files with 60 additions and 46 deletions

View File

@@ -13,7 +13,7 @@ wxPython Changelog
-------
* (not yet released)
PyPI: https://pypi.python.org/pypi/wxPython/4.0.0b1
PyPI: https://pypi.python.org/pypi/wxPython/4.0.0b2
Extras: https://extras.wxPython.org/wxPython4/extras/
Changes in this release include the following:
@@ -26,6 +26,9 @@ Changes in this release include the following:
* Add missing wx.VScrolledWindow methods listed in the docs as deprecated but
still present. (#441)
* Fixed copy/paste error in wx.BusyInfo.__exit__ (#449)
4.0.0b1

View File

@@ -3,10 +3,14 @@
# still an easy way to specify what data files (non *.py files) should be
# included in the package dirs.
#
# See cmd_sdist() in build.py for the actual building of the source dist.
#
recursive-include wx **
recursive-include license *.txt
include LICENSE.txt
graft docs
prune docs/sphinx/build
recursive-exclude wx .git
recursive-exclude wx *.pyc

View File

@@ -1766,10 +1766,16 @@ def cmd_sdist(options, args):
getWafCmd()
copyFile('bin/waf-%s' % wafCurrentVersion, os.path.join(PDEST, 'bin'))
# and the REV.txt if there is one
# And the REV.txt if there is one
if os.path.exists('REV.txt'):
copyFile('REV.txt', PDEST)
# Copy the Sphinx source files in the docs tree, excluding the html and
# sphinx/build folders, if present.
shutil.rmtree(opj(PDEST, 'docs'), ignore_errors=True)
shutil.copytree('docs', opj(PDEST, 'docs'),
ignore=shutil.ignore_patterns('html', 'build', '__pycache__', 'cpp'))
# Add some extra stuff to the root folder
cmd_egg_info(options, args, egg_base=PDEST)
copyFile(opj(PDEST, '{}.egg-info/PKG-INFO'.format(baseName)),

View File

@@ -213,7 +213,7 @@ def makeFactory(port, buildType='buildOnly', pyVer='2.7'):
factory = BuildFactory()
# Was the build started from the force build form with a "fullclean"
# property set? If so, clobber the git workspace and start fresh.
# property set? If so, fully clobber the git workspace and start fresh.
cmd = ['bash', '-c',
WithProperties('if [ %(fullclean:-no)s == yes ]; then rm -rf ../Phoenix; echo fully cleaned; fi'),
]
@@ -226,7 +226,7 @@ def makeFactory(port, buildType='buildOnly', pyVer='2.7'):
clean = ''
# Start from a clean build tree for the daily "dist" builds
if buildType in ['dist', 'docs', 'vagrant']:
if buildType in ['dist', 'sdist', 'docs', 'vagrant']:
mode = 'full'
method = 'clobber'
@@ -246,7 +246,7 @@ def makeFactory(port, buildType='buildOnly', pyVer='2.7'):
if buildType == 'sdist':
cmd = 'python -u build.py %s setrev dox touch etg sip build '\
'sdist sdist_demo --upload' % pyVer
'wxlib sdist sdist_demo --upload' % pyVer
elif buildType == 'docs':
cmd = 'python -u build.py %s setrev dox touch etg sip build wxlib ' \

View File

@@ -2478,8 +2478,8 @@ class wxPythonDemo(wx.Frame):
self.mainmenu = None
self.StopDownload()
# if self.tbicon is not None:
# self.tbicon.Destroy()
if self.tbicon is not None:
self.tbicon.Destroy()
config = GetConfig()
config.Write('ExpansionState', str(self.tree.GetExpansionState()))

View File

@@ -1,27 +1,23 @@
def OnOpen(self, event):
if self.contentNotSaved:
if wx.MessageBox("Current content has not been saved! Proceed?", "Please confirm",
wx.ICON_QUESTION | wx.YES_NO, self) == wx.NO:
return
# else: proceed asking to the user the new file to open
openFileDialog = wx.FileDialog(self, "Open XYZ file", "", "",
"XYZ files (*.xyz)|*.xyz", wx.FD_OPEN | wx.FD_FILE_MUST_EXIST)
if openFileDialog.ShowModal() == wx.ID_CANCEL:
return # the user changed idea...
# proceed loading the file chosen by the user
# this can be done with e.g. wxPython input streams:
input_stream = wx.FileInputStream(openFileDialog.GetPath())
if not input_stream.IsOk():
wx.LogError("Cannot open file '%s'."%openFileDialog.GetPath())
return
# otherwise ask the user what new file to open
with wx.FileDialog(self, "Open XYZ file", wildcard="XYZ files (*.xyz)|*.xyz",
style=wx.FD_OPEN | wx.FD_FILE_MUST_EXIST) as fileDialog:
if fileDialog.ShowModal() == wx.ID_CANCEL:
return # the user changed their mind
# Proceed loading the file chosen by the user
pathname = fileDialog.GetPath()
try:
with open(pathname, 'r') as file:
self.doLoadDataOrWhatever(file)
except IOError:
wx.LogError("Cannot open file '%s'." % newfile)

View File

@@ -1,17 +1,17 @@
def OnSaveAs(self, event):
saveFileDialog = wx.FileDialog(self, "Save XYZ file", "", "",
"XYZ files (*.xyz)|*.xyz", wx.FD_SAVE | wx.FD_OVERWRITE_PROMPT)
if saveFileDialog.ShowModal() == wx.ID_CANCEL:
return # the user changed idea...
# save the current contents in the file
# this can be done with e.g. wxPython output streams:
output_stream = wx.FileOutputStream(saveFileDialog.GetPath())
if not output_stream.IsOk():
wx.LogError("Cannot save current contents in file '%s'."%saveFileDialog.GetPath())
return
with wx.FileDialog(self, "Save XYZ file", wildcard="XYZ files (*.xyz)|*.xyz",
style=wx.FD_SAVE | wx.FD_OVERWRITE_PROMPT) as fileDialog:
if fileDialog.ShowModal() == wx.ID_CANCEL:
return # the user changed their mind
# save the current contents in the file
pathname = fileDialog.GetPath()
try:
with open(pathname, 'w') as file:
self.doSaveData(file)
except IOError:
wx.LogError("Cannot save current data in file '%s'." % pathname)

View File

@@ -38,7 +38,7 @@ def run():
# context manager methods
c.addPyMethod('__enter__', '(self)', 'return self')
c.addPyMethod('__exit__', '(self, exc_type, exc_val, exc_tb)', 'self.Destroy()')
c.addPyMethod('__exit__', '(self, exc_type, exc_val, exc_tb)', 'return False')
#-----------------------------------------------------------------

View File

@@ -12,6 +12,11 @@ class busyinfo_Tests(wtc.WidgetTestCase):
del busy
def test_busyinfo2(self):
with wx.BusyInfo('This is a busy info message'):
self.waitFor(250)
#---------------------------------------------------------------------------
if __name__ == '__main__':