canfestival/test_config/master.od
author Andrey Skvortsov <andrej.skvortzov@gmail.com>
Mon, 13 Aug 2018 18:29:07 +0300
changeset 2284 64bb520009f3
parent 721 ecf4d203c4d4
permissions -rw-r--r--
Fix wxHMI example after upgrading wxGlade

Newer wxGlade generates code to initialize GridSizer's with empty
elements.

...
grid_sizer_1.Add(self.window_1, 1, wx.ALIGN_CENTER, 0)
sizer_2.Add((0, 0), 0, 0, 0)
sizer_2.Add((0, 0), 0, 0, 0)
sizer_2.Add((0, 0), 0, 0, 0)
sizer_2.Add((0, 0), 0, 0, 0)
...

That causes following traceback, if new buttons are added
to already full sizer.

PLCobject : Traceback (most recent call last):

File "./Beremiz_service.py", line 389, in default_evaluator
res = (tocall(*args, **kwargs), None)

File "/tmp/tmpQS8ct2/runtime_0.py", line 540, in _runtime_0_start
wx.MessageBox(_("Please stop PLC to close"))

File "/tmp/tmpQS8ct2/runtime_0.py", line 504, in Init
lambda axis:( MakeButtonFunc(self, sizer, axis+"axisMinus"),

File "/tmp/tmpQS8ct2/runtime_0.py", line 502, in <lambda>
lambda btname: MakeButtonFunc(self, sizer, btname), ActionButtons)

File "/tmp/tmpQS8ct2/runtime_0.py", line 461, in MakeButtonFunc
print sizer, btname

File "/usr/lib/python2.7/dist-packages/wx-3.0-gtk3/wx/_core.py", line 14453, in Add
return _core_.Sizer_Add(*args, **kwargs)

PyAssertionError: C++ assertion "Assert failure" failed at
../src/common/sizer.cpp(1401) in DoInsert(): too many items (11 > 2*5)
in grid sizer (maybe you should omit the number of either rows or
columns?)


Tested with wxGlade version 0.8.3
Closes #41
<?xml version="1.0"?>
<!DOCTYPE PyObject SYSTEM "PyObjects.dtd">
<PyObject module="node" class="Node" id="148584620">
<attr name="Profile" type="dict" id="148589396" >
</attr>
<attr name="Description" type="string" value="" />
<attr name="Dictionary" type="dict" id="148592132" >
  <entry>
    <key type="numeric" value="4096" />
    <val type="numeric" value="302" />
  </entry>
  <entry>
    <key type="numeric" value="4097" />
    <val type="numeric" value="0" />
  </entry>
  <entry>
    <key type="numeric" value="6144" />
    <val type="list" id="148585004" >
      <item type="string" value="{True:&quot;$NODEID+0x%X80&quot;%(base+1),False:0x80000000}[base&lt;4]" />
      <item type="numeric" value="0" />
      <item type="numeric" value="0" />
      <item type="numeric" value="0" />
      <item type="numeric" value="0" />
    </val>
  </entry>
  <entry>
    <key type="numeric" value="5120" />
    <val type="list" id="148586060" >
      <item type="numeric" value="448" />
      <item type="numeric" value="1" />
      <item type="numeric" value="0" />
      <item type="numeric" value="0" />
      <item type="numeric" value="0" />
    </val>
  </entry>
  <entry>
    <key type="numeric" value="4101" />
    <val type="numeric" value="1073741952" />
  </entry>
  <entry>
    <key type="numeric" value="4102" />
    <val type="numeric" value="50000" />
  </entry>
  <entry>
    <key type="numeric" value="8192" />
    <val type="numeric" value="0" />
  </entry>
  <entry>
    <key type="numeric" value="6656" />
    <val type="list" id="148585228" >
      <item type="numeric" value="268501000" />
    </val>
  </entry>
  <entry>
    <key type="numeric" value="5632" />
    <val type="list" id="148585036" >
      <item type="numeric" value="536870920" />
    </val>
  </entry>
  <entry>
    <key type="numeric" value="4120" />
    <val type="list" id="148585292" >
      <item type="numeric" value="0" />
      <item type="numeric" value="0" />
      <item type="numeric" value="0" />
      <item type="numeric" value="0" />
    </val>
  </entry>
  <entry>
    <key type="numeric" value="4118" />
    <val type="list" id="148585100" >
      <item type="numeric" value="4195804" />
    </val>
  </entry>
</attr>
<attr name="SpecificMenu" type="list" id="148584044" >
</attr>
<attr name="ParamsDictionary" type="dict" id="148592268" >
</attr>
<attr name="UserMapping" type="dict" id="148592404" >
  <entry>
    <key type="numeric" value="8192" />
    <val type="dict" id="148592540" >
      <entry>
        <key type="string" value="need" />
        <val type="False" value="" />
      </entry>
      <entry>
        <key type="string" value="values" />
        <val type="list" id="148585868" >
          <item type="dict" id="148592676" >
            <entry>
              <key type="string" value="access" />
              <val type="string" value="rw" />
            </entry>
            <entry>
              <key type="string" value="pdo" />
              <val type="True" value="" />
            </entry>
            <entry>
              <key type="string" value="type" />
              <val type="numeric" value="5" />
            </entry>
            <entry>
              <key type="string" value="name" />
              <val type="string">Read Inputs</val>
            </entry>
          </item>
        </val>
      </entry>
      <entry>
        <key type="string" value="name" />
        <val type="string">Read Inputs</val>
      </entry>
      <entry>
        <key type="string" value="struct" />
        <val type="numeric" value="1" />
      </entry>
    </val>
  </entry>
</attr>
<attr name="DS302" type="dict" id="148592812" >
  <entry>
    <key type="numeric" value="7968" />
    <val type="dict" id="148592948" >
      <entry>
        <key type="string" value="need" />
        <val type="False" value="" />
      </entry>
      <entry>
        <key type="string" value="values" />
        <val type="list" id="148584684" >
          <item type="dict" id="148593084" >
            <entry>
              <key type="string" value="access" />
              <val type="string" value="ro" />
            </entry>
            <entry>
              <key type="string" value="pdo" />
              <val type="False" value="" />
            </entry>
            <entry>
              <key type="string" value="type" />
              <val type="numeric" value="5" />
            </entry>
            <entry>
              <key type="string" value="name" />
              <val type="string" value="Number of Entries" />
            </entry>
          </item>
          <item type="dict" id="148593220" >
            <entry>
              <key type="string" value="access" />
              <val type="string" value="rw" />
            </entry>
            <entry>
              <key type="string" value="pdo" />
              <val type="False" value="" />
            </entry>
            <entry>
              <key type="string" value="type" />
              <val type="numeric" value="15" />
            </entry>
            <entry>
              <key type="string" value="name" />
              <val type="string" value="Store DCF for node %d[(sub)]" />
            </entry>
            <entry>
              <key type="string" value="nbmax" />
              <val type="numeric" value="127" />
            </entry>
          </item>
        </val>
      </entry>
      <entry>
        <key type="string" value="name" />
        <val type="string" value="Store DCF" />
      </entry>
      <entry>
        <key type="string" value="struct" />
        <val type="numeric" value="7" />
      </entry>
    </val>
  </entry>
  <entry>
    <key type="numeric" value="7969" />
    <val type="dict" id="148593356" >
      <entry>
        <key type="string" value="need" />
        <val type="False" value="" />
      </entry>
      <entry>
        <key type="string" value="values" />
        <val type="list" id="148585516" >
          <item type="dict" id="148593492" >
            <entry>
              <key type="string" value="access" />
              <val type="string" value="ro" />
            </entry>
            <entry>
              <key type="string" value="pdo" />
              <val type="False" value="" />
            </entry>
            <entry>
              <key type="string" value="type" />
              <val type="numeric" value="5" />
            </entry>
            <entry>
              <key type="string" value="name" />
              <val type="string" value="Number of Entries" />
            </entry>
          </item>
          <item type="dict" id="148593628" >
            <entry>
              <key type="string" value="access" />
              <val type="string" value="rw" />
            </entry>
            <entry>
              <key type="string" value="pdo" />
              <val type="False" value="" />
            </entry>
            <entry>
              <key type="string" value="type" />
              <val type="numeric" value="2" />
            </entry>
            <entry>
              <key type="string" value="name" />
              <val type="string" value="Storage Format for Node %d[(sub)]" />
            </entry>
            <entry>
              <key type="string" value="nbmax" />
              <val type="numeric" value="127" />
            </entry>
          </item>
        </val>
      </entry>
      <entry>
        <key type="string" value="name" />
        <val type="string" value="Storage Format" />
      </entry>
      <entry>
        <key type="string" value="struct" />
        <val type="numeric" value="7" />
      </entry>
    </val>
  </entry>
  <entry>
    <key type="numeric" value="7970" />
    <val type="dict" id="148593764" >
      <entry>
        <key type="string" value="need" />
        <val type="False" value="" />
      </entry>
      <entry>
        <key type="string" value="values" />
        <val type="list" id="148594956" >
          <item type="dict" id="148593900" >
            <entry>
              <key type="string" value="access" />
              <val type="string" value="ro" />
            </entry>
            <entry>
              <key type="string" value="pdo" />
              <val type="False" value="" />
            </entry>
            <entry>
              <key type="string" value="type" />
              <val type="numeric" value="5" />
            </entry>
            <entry>
              <key type="string" value="name" />
              <val type="string" value="Number of Entries" />
            </entry>
          </item>
          <item type="dict" id="148594036" >
            <entry>
              <key type="string" value="access" />
              <val type="string" value="rw" />
            </entry>
            <entry>
              <key type="string" value="pdo" />
              <val type="False" value="" />
            </entry>
            <entry>
              <key type="string" value="type" />
              <val type="numeric" value="15" />
            </entry>
            <entry>
              <key type="string" value="name" />
              <val type="string" value="Concise DCF for Node %d[(sub)]" />
            </entry>
            <entry>
              <key type="string" value="nbmax" />
              <val type="numeric" value="127" />
            </entry>
          </item>
        </val>
      </entry>
      <entry>
        <key type="string" value="name" />
        <val type="string" value="Concise DCF" />
      </entry>
      <entry>
        <key type="string" value="struct" />
        <val type="numeric" value="7" />
      </entry>
    </val>
  </entry>
</attr>
<attr name="ProfileName" type="string" value="None" />
<attr name="Type" type="string">master</attr>
<attr name="ID" type="numeric" value="0" />
<attr name="Name" type="string">TestMaster</attr>
</PyObject>