tests/wiimote/wxglade_hmi@wxglade_hmi/pyfile.xml
author Schlumpf <schlumpf@kr-ll.de>
Mon, 07 Jan 2019 18:32:03 +0100
branchwx3-fix
changeset 2497 e04824ad26e4
parent 1157 72d14a74c643
permissions -rw-r--r--
Fix an exception on wx-3.0-gtk3 in PLCOpenEditor when generating ST files.

On Python2.7 with WX3.0 and GTK3, an assertionError rises on generating a ST file if the name is already set. The first generation works without problems, if you generate the file a second one, PLCOpenEditor tries to open the file
save dialog with the pre entered name from last run. Then the following assertion pops up:

PyAssertionError: C++ assertion "volDummy.empty() && pathDummy.empty()" failed at ./src/common/filename.cpp(568) in Assign(): the file name shouldn't contain the path

This fix reduces the filepath of the ST file the to the filename. Now it works fine.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<PyFile>
  <variables/>
  <globals>
<![CDATA[
from threading import Thread

def OnConnectButton(self, event):
  def OnWiiConnected(mac_addr):
    self.label_2.SetLabel(
      "Wiimote %s connected"%mac_addr 
      if mac_addr else 
      "Wiimote connection failed !")

  def WiiConnected(mac_addr):
    wx.CallAfter(OnWiiConnected,mac_addr)

  Thread(target = Connect_Wiimote, args = (WiiConnected,)).start()
  self.label_2.SetLabel("Press wiimote 1+2")
  event.Skip()

def OnDisconnectButton(self, event):
  Disconnect_Wiimote()
  self.label_2.SetLabel("Wiimote disconnected")
  event.Skip()

]]>
  </globals>
  <init>
<![CDATA[
]]>
  </init>
  <cleanup>
<![CDATA[
]]>
  </cleanup>
  <start>
<![CDATA[
]]>
  </start>
  <stop>
<![CDATA[
]]>
  </stop>
</PyFile>