Add "Generate Program" to toolbar in PLCOpenEditor standalone mode.
Currently you can find the "Generate Program" action only in the file menu,
but this action is very often used in standalone mode, so I added toolbuffon.
<?xml version="1.0"?>
<!DOCTYPE PyObject SYSTEM "PyObjects.dtd">
<PyObject module="node" class="Node" id="157806348">
<attr name="Profile" type="dict" id="157588716" >
</attr>
<attr name="Description" type="string" value="" />
<attr name="Dictionary" type="dict" id="157588580" >
<entry>
<key type="numeric" value="4096" />
<val type="numeric" value="0" />
</entry>
<entry>
<key type="numeric" value="4097" />
<val type="numeric" value="0" />
</entry>
<entry>
<key type="numeric" value="5122" />
<val type="list" id="160478380" >
<item type="string" value="{True:"$NODEID+0x%X00"%(base+2),False:0x80000000}[base<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="5123" />
<val type="list" id="158303244" >
<item type="string" value="{True:"$NODEID+0x%X00"%(base+2),False:0x80000000}[base<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="8192" />
<val type="numeric" value="0" />
</entry>
<entry>
<key type="numeric" value="8193" />
<val type="numeric" value="0" />
</entry>
<entry>
<key type="numeric" value="5634" />
<val type="list" id="158305356" >
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<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="5635" />
<val type="list" id="158305388" >
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<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="6146" />
<val type="list" id="158305420" >
<item type="string" value="{True:"$NODEID+0x%X80"%(base+1),False:0x80000000}[base<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="6658" />
<val type="list" id="158305932" >
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<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="6147" />
<val type="list" id="158305516" >
<item type="string" value="{True:"$NODEID+0x%X80"%(base+1),False:0x80000000}[base<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="4608" />
<val type="list" id="158305068" >
<item type="string" value=""$NODEID+0x600"" />
<item type="string" value=""$NODEID+0x580"" />
</val>
</entry>
<entry>
<key type="numeric" value="4120" />
<val type="list" id="158304940" >
<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="158051500" >
<item type="string" value="{True:"$NODEID+0x%X00"%(base+2),False:0x80000000}[base<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="6659" />
<val type="list" id="158052300" >
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<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="5632" />
<val type="list" id="158049740" >
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<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="5121" />
<val type="list" id="158048716" >
<item type="string" value="{True:"$NODEID+0x%X00"%(base+2),False:0x80000000}[base<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="6144" />
<val type="list" id="158048428" >
<item type="string" value="{True:"$NODEID+0x%X80"%(base+1),False:0x80000000}[base<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="5633" />
<val type="list" id="158052172" >
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<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="6656" />
<val type="list" id="158052204" >
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<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="6145" />
<val type="list" id="158052108" >
<item type="string" value="{True:"$NODEID+0x%X80"%(base+1),False:0x80000000}[base<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="6657" />
<val type="list" id="158048588" >
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
<item type="numeric" value="0" />
</val>
</entry>
</attr>
<attr name="SpecificMenu" type="list" id="158048396" >
</attr>
<attr name="ParamsDictionary" type="dict" id="157588308" >
</attr>
<attr name="UserMapping" type="dict" id="157588852" >
<entry>
<key type="numeric" value="8192" />
<val type="dict" id="157602516" >
<entry>
<key type="string" value="need" />
<val type="False" value="" />
</entry>
<entry>
<key type="string" value="values" />
<val type="list" id="158052332" >
<item type="dict" id="157586676" >
<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="3" />
</entry>
<entry>
<key type="string" value="name" />
<val type="string">OutVar</val>
</entry>
</item>
</val>
</entry>
<entry>
<key type="string" value="name" />
<val type="string">OutVar</val>
</entry>
<entry>
<key type="string" value="struct" />
<val type="numeric" value="1" />
</entry>
</val>
</entry>
<entry>
<key type="numeric" value="8193" />
<val type="dict" id="157535468" >
<entry>
<key type="string" value="need" />
<val type="False" value="" />
</entry>
<entry>
<key type="string" value="values" />
<val type="list" id="158305004" >
<item type="dict" id="158343620" >
<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="3" />
</entry>
<entry>
<key type="string" value="name" />
<val type="string">InVar</val>
</entry>
</item>
</val>
</entry>
<entry>
<key type="string" value="name" />
<val type="string">InVar</val>
</entry>
<entry>
<key type="string" value="struct" />
<val type="numeric" value="1" />
</entry>
</val>
</entry>
</attr>
<attr name="DS302" type="dict" id="158328188" >
</attr>
<attr name="ProfileName" type="string" value="None" />
<attr name="Type" type="string" value="slave" />
<attr name="ID" type="numeric" value="0" />
<attr name="Name" type="string" value="SlaveNode" />
</PyObject>